/* Internship Studio — report styles (A4 print via Paged.js + on-screen preview).
   Four themes switch with a class; content never changes. */

.rp { --c1:#1f3a68; --c2:#c7902f; --light:#eef3fa; --rule:#c9d3e3; --ink:#15171c; --muted:#5b6270;
  font-family: var(--rp-font, "NotoSerif", serif); font-size: 12pt; line-height: 1.62; color: var(--ink);
  -webkit-print-color-adjust: exact; print-color-adjust: exact; text-rendering: optimizeLegibility; }
.rp.theme-gradient { --c1:#4b33c9; --c2:#159f9f; --light:#f1efff; --rule:#d9d3fb; }
.rp.theme-corporate { --c1:#0f766e; --c2:#334155; --light:#ecf7f5; --rule:#cfe3df; }
.rp.theme-minimal { --c1:#111111; --c2:#8a8a8a; --light:#f4f4f4; --rule:#d8d8d8; }
.rp.theme-emerald { --c1:#065f46; --c2:#c8961e; --light:#ecfdf5; --rule:#bfe3d3; }

/* ---------- page setup ---------- */
@page { size: A4; margin: 22mm 18mm 20mm 25mm; }
@page cover { margin: 12mm; }
@page full { margin: 0; }
@page plain { margin: 16mm 18mm 16mm 20mm; }
/* Paged.js matches these against the source content, so no ancestor selectors here. */
section.pg { break-before: page; }
section.pg.k-cover { page: cover; break-before: auto; }
section.pg.k-full { page: full; }
section.pg.k-letter { page: plain; }
.pagedjs_margin-content .mb { font-family: var(--rp-font); font-size: 8.5pt; color: #6b7280; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 85mm; }
.pagedjs_margin-content .mb.pno { font-size: 9.5pt; color: #333; }
.pagedjs_margin-top-left .mb, .pagedjs_margin-top-right .mb { border-bottom: .5pt solid #d0d5dd; padding-bottom: 1mm; }

/* ---------- typography ---------- */
.rp h1, .rp h2, .rp h3 { line-height: 1.3; break-after: avoid; color: var(--c1); }
.rp h1.sec-title { font-size: 19pt; margin: 0 0 12pt; padding-bottom: 6pt; border-bottom: 1.6pt solid var(--c1); }
.rp.theme-academic h1.sec-title { border-bottom: 1.2pt solid var(--c1); box-shadow: 0 2.4pt 0 -1.4pt var(--c2); }
.rp.theme-gradient h1.sec-title { border: 0; padding-bottom: 8pt; background: linear-gradient(90deg, var(--c1), var(--c2)) left bottom / 60mm 3pt no-repeat; }
.rp.theme-corporate h1.sec-title { border: 0; border-left: 5pt solid var(--c1); padding: 2pt 0 2pt 9pt; background: var(--light); }
.rp.theme-emerald h1.sec-title { border: 0; padding: 0 0 7pt; background: linear-gradient(90deg, #065f46, #10b981) left bottom / 100% 1.6pt no-repeat, linear-gradient(90deg, #c8961e, #f2c14e) left calc(100% - 3.4pt) / 38mm 1.4pt no-repeat; }
.rp.theme-emerald thead th { background: #065f46; color: #fff; }
.rp.theme-emerald .stat-card { border-top-color: #059669; background: linear-gradient(180deg, #f6fffb, #fff); }
.rp.theme-minimal h1.sec-title { font-weight: 400; letter-spacing: .02em; border-bottom: .6pt solid #999; }
.rp h1.center, .rp h2.center { text-align: center; border: 0; background: none; box-shadow: none; padding-left: 0; }
.rp h2 { font-size: 14pt; margin: 14pt 0 6pt; }
.rp h3 { font-size: 12.5pt; margin: 12pt 0 4pt; }
.rp p { margin: 0 0 8pt; text-align: justify; orphans: 2; widows: 2; }
.rp[dir="rtl"] p { text-align: right; }
.rp p.note { font-style: italic; color: var(--muted); border-left: 2pt solid var(--rule); padding-left: 8pt; }
.rp p.center { text-align: center; } .rp p.strong { font-weight: 700; } .rp p.caps { text-transform: uppercase; letter-spacing: .04em; font-weight: 700; }
.rp p.subject { font-weight: 700; text-align: center; margin: 10pt 0; }
.rp ul, .rp ol { margin: 0 0 10pt; padding-inline-start: 18pt; } .rp li { margin-bottom: 3pt; }

/* ---------- quote ---------- */
.rp figure.quote { margin: 4pt 0 16pt; padding: 10pt 14pt; background: var(--light); border-inline-start: 3pt solid var(--c2); break-inside: avoid; }
.rp figure.quote blockquote { margin: 0; font-style: italic; font-size: 12.5pt; }
.rp figure.quote figcaption { text-align: end; font-size: 10pt; color: var(--muted); margin-top: 4pt; }
.rp .quote-orig { font-size: 9.5pt; color: var(--muted); margin-top: 2pt; }

/* ---------- tables & figures ---------- */
.rp figure { margin: 8pt 0 14pt; }
.rp figure.tbl figcaption, .rp figure.chart figcaption, .rp .photo-fig figcaption, .rp .gallery figcaption { font-size: 9.5pt; color: var(--muted); text-align: center; margin: 4pt 0; }
.rp figure.tbl figcaption { text-align: start; }
.rp table { width: 100%; border-collapse: collapse; font-size: 10.5pt; }
.rp th, .rp td { border: .6pt solid var(--rule); padding: 4pt 6pt; vertical-align: top; text-align: start; }
.rp thead th { background: var(--light); color: var(--c1); font-weight: 700; }
.rp tr { break-inside: avoid; }
.rp .dense table, .rp figure.dense table { font-size: 9.5pt; }
.rp .dense td, .rp .dense th { padding: 3pt 4pt; }
.rp table.kv { width: auto; margin: 4pt auto 6pt; font-size: 11pt; }
.rp section.k-cover table.kv th, .rp section.k-cover table.kv td { padding: 2.5pt 6pt; }
.rp table.kv th { background: none; color: var(--ink); font-weight: 700; padding-inline-end: 14pt; border: .6pt solid var(--rule); }
.rp table.kv td { min-width: 70mm; }
.rp figure.chart svg { display: block; width: 100%; height: auto; max-height: 150mm; }
.rp .photo-fig img { display: block; max-width: 100%; max-height: 110mm; margin: 0 auto; border-radius: 3pt; }
.rp .gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 8pt 12pt; }
.rp .gallery figure { margin: 0; break-inside: avoid; }
.rp .gallery img { width: 100%; height: 62mm; object-fit: cover; border-radius: 3pt; display: block; }

/* ---------- TOC ---------- */
.rp .toc-table td.toc-no { width: 14mm; text-align: center; }
.rp .toc-table td.toc-pg, .rp .toc-table th:last-child { width: 22mm; text-align: center; }
.rp .toc-table tbody tr:nth-child(even) td { background: #fafbfd; }

/* ---------- visuals ---------- */
.rp .stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8pt; margin: 6pt 0 14pt; }
.rp .stat-card { border: .8pt solid var(--rule); border-top: 3pt solid var(--c1); border-radius: 4pt; padding: 8pt 10pt; break-inside: avoid; }
.rp .stat-v { font-size: 13pt; font-weight: 700; color: var(--c1); line-height: 1.25; }
.rp .stat-l { font-size: 9.5pt; color: var(--muted); }
.rp .tool-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6pt; }
.rp .tool-card { border: .8pt solid var(--rule); border-radius: 4pt; padding: 6pt 8pt; display: flex; flex-direction: column; break-inside: avoid; }
.rp .tool-card span { font-size: 9.5pt; color: var(--muted); }

/* ---------- signatures, letters ---------- */
.rp .placedate { display: flex; justify-content: space-between; margin-top: 18pt; font-size: 11pt; }
.rp .sigs { display: grid; grid-auto-flow: column; gap: 16pt; margin-top: 34pt; break-inside: avoid; }
.rp .sigs.n1 { justify-content: end; }
.rp .sig { text-align: center; min-width: 45mm; }
.rp .sig-rule { border-top: .8pt solid #333; margin-bottom: 3pt; }
.rp .sig-name { font-weight: 700; font-size: 10.5pt; min-height: 1em; }
.rp .sig-label { font-size: 9.5pt; color: var(--muted); }
.rp .logos { display: flex; justify-content: center; gap: 16mm; margin-bottom: 6mm; }
.rp .logos img.logo { height: 26mm; width: auto; object-fit: contain; }
.rp .logos.small img.logo { height: 16mm; }
.rp .letterhead { display: flex; align-items: center; gap: 10pt; border-bottom: 2pt solid var(--c1); padding-bottom: 8pt; margin-bottom: 12pt; }
.rp .lh-logo { height: 20mm; width: auto; }
.rp .lh-name { font-size: 16pt; font-weight: 700; color: var(--c1); }
.rp .lh-line { font-size: 9.5pt; color: var(--muted); }
.rp .row2 { display: flex; justify-content: space-between; margin-bottom: 10pt; font-size: 11pt; }
.rp .lines { margin: 0 0 10pt; }
.rp .signblock { margin: 16pt 0 12pt auto; width: 70mm; text-align: center; break-inside: avoid; }
.rp .sign-imgs { position: relative; height: 22mm; display: flex; justify-content: center; align-items: flex-end; }
.rp .sig-img { max-height: 18mm; max-width: 55mm; }
.rp .stamp-img { position: absolute; right: -6mm; bottom: -2mm; max-height: 24mm; opacity: .9; }
.rp .sig-space { height: 18mm; }
.rp .sig-line { font-size: 10.5pt; }
.rp .legend { font-size: 9.5pt; border-top: .6pt solid var(--rule); padding-top: 6pt; margin-top: 10pt; }
.rp section.bordered { border: 2.2pt double var(--c1); padding: 10mm 12mm; min-height: 255mm; box-sizing: border-box; }
.rp .blank-lines div { border-bottom: .6pt solid #999; height: 9mm; }
.rp .refs li { margin-bottom: 5pt; word-break: break-word; }

/* ---------- uploaded documents: one image per full A4 page ---------- */
.fullpage { width: 210mm; height: 296.5mm; break-after: page; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.fullpage:last-child { break-after: auto; }
.fullpage img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* ---------- cover ---------- */
.rp section.k-cover { text-align: center; height: 265mm; box-sizing: border-box; padding: 10mm 12mm; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; }
.rp.theme-academic section.k-cover { border: 3pt double var(--c1); outline: 1pt solid var(--c2); outline-offset: -7pt; }
.rp.theme-gradient section.k-cover { border-top: 18mm solid transparent; border-image: linear-gradient(90deg, var(--c1), var(--c2)) 1; background: linear-gradient(180deg, #fff 70%, var(--light)); }
.rp.theme-corporate section.k-cover { border-left: 12mm solid var(--c1); text-align: left; padding-left: 14mm; }
.rp.theme-corporate section.k-cover .logos { justify-content: flex-start; }
.rp.theme-corporate section.k-cover table.kv { margin-left: 0; }
.rp.theme-emerald section.k-cover { border: 1.4pt solid #065f46; outline: 4pt solid #ecfdf5; outline-offset: -8pt; background: linear-gradient(180deg, #ecfdf5 0, #fff 30%, #fff 80%, #f7fbf9 100%); border-top: 10mm solid #065f46; }
.rp.theme-emerald h1.cover-title { color: #065f46; }
.rp.theme-emerald .c-label { color: #b7861a; }
.rp.theme-minimal section.k-cover { border-top: 1pt solid #111; border-bottom: 1pt solid #111; }
.rp h1.cover-title { font-size: 26pt; margin: 0 0 2mm; color: var(--c1); border: 0; letter-spacing: .01em; }
.rp .c-sub { text-align: inherit; font-size: 11pt; color: var(--muted); margin: 0; }
.rp .c-degree { font-size: 15pt; font-weight: 700; text-align: inherit; margin: 1mm 0; }
.rp .c-year, .rp .c-small { font-size: 10.5pt; text-align: inherit; color: var(--muted); margin: 0; }
.rp .c-label { text-align: inherit; font-size: 9.5pt; text-transform: uppercase; letter-spacing: .12em; color: var(--c2); margin: 3mm 0 .5mm; font-weight: 700; }
.rp .c-org { font-size: 17pt; font-weight: 700; color: var(--c1); text-align: inherit; margin: 0; }
.rp .c-guide { text-align: inherit; margin: 0; font-size: 11.5pt; }
.rp .c-college { font-size: 14pt; font-weight: 700; text-align: inherit; margin: 0; }

/* ---------- on-screen (non-paged) preview ---------- */
.rp.screen { font-size: 11pt; }
.rp.screen section.pg { background: #fff; max-width: 820px; margin: 0 auto 18px; padding: 28px 30px; border-radius: 10px; box-shadow: 0 1px 3px rgba(20,24,40,.08), 0 8px 24px rgba(20,24,40,.06); }
.rp.screen section.k-cover { min-height: 0; height: auto; }
.rp.screen .fullpage { width: auto; height: auto; }
.rp.screen section.bordered { min-height: 0; }
.rp.screen .fullpage img { max-width: 100%; }
.rp.screen .upload-chip { padding: 12px; background: #f4f6fa; border-radius: 8px; }
@media (max-width: 640px) {
  .rp.screen section.pg { padding: 18px 16px; }
  .rp.screen .stats-grid, .rp.screen .tool-cards { grid-template-columns: 1fr 1fr; }
  .rp.screen .gallery { grid-template-columns: 1fr; }
  .rp.screen table { font-size: 9.5pt; }
  .rp.screen .sigs { grid-auto-flow: row; }
}

/* Quick Mode placeholders: red, easy to spot and replace */
span.ph { color: #dc2626 !important; font-weight: 600; }

/* =========================================================================
   v1.2 editorial design (inspired by the proposal layout): numbered chapter
   heads with taglines, accent sub-headings, KPI strips, card grids, callouts,
   inline infographics, closing quotation and a graphic cover.
   ========================================================================= */
.rp thead th { background: var(--c1); color: #fff; font-weight: 700; }
.rp .chap-head { display: flex; align-items: flex-start; gap: 5mm; margin: 0 0 12pt; padding-bottom: 7pt; border-bottom: 1pt solid var(--rule); break-after: avoid; }
.rp .chap-no { font-size: 34pt; line-height: .95; font-weight: 700; color: var(--c2); min-width: 12mm; font-family: "NotoSerif", serif; }
.rp h1.sec-title.chap { border: 0; background: none; box-shadow: none; padding: 0; margin: 0; font-size: 20pt; }
.rp .chap-tag { margin: 3pt 0 0; font-size: 10.5pt; color: var(--muted); text-align: start; }
.rp h2 { font-size: 13.5pt; padding-inline-start: 7pt; border-inline-start: 3pt solid var(--c2); }
.rp h2.center, .rp h2.vis-h { border: 0; padding: 0; }
.rp h2.vis-h { font-size: 9.5pt; letter-spacing: .14em; text-transform: uppercase; color: var(--c1); margin: 16pt 0 5pt; }
.rp .kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6pt; margin: 12pt 0; break-inside: avoid; }
.rp .kpi { border: .8pt solid var(--rule); border-top: 3pt solid var(--c1); border-radius: 4pt; padding: 7pt 9pt; background: linear-gradient(180deg, var(--light), #fff); }
.rp .kpi b { display: block; font-size: 20pt; line-height: 1.1; color: var(--c1); }
.rp .kpi span { font-size: 9pt; color: var(--muted); }
.rp .cardgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 7pt; margin: 6pt 0 12pt; }
.rp .cardgrid.n3 { grid-template-columns: 1fr 1fr 1fr; }
.rp .cg { border: .8pt solid var(--rule); border-inline-start: 3pt solid var(--c1); border-radius: 4pt; padding: 7pt 9pt; break-inside: avoid; background: #fff; }
.rp .cg-n { display: block; font-size: 8.5pt; font-weight: 700; color: var(--c2); letter-spacing: .08em; }
.rp .cg b { display: block; color: var(--c1); font-size: 11pt; line-height: 1.3; }
.rp .cg p { margin: 3pt 0 0; font-size: 10pt; line-height: 1.45; text-align: start; }
.rp .callout { display: flex; gap: 8pt; align-items: flex-start; margin: 8pt 0 12pt; padding: 9pt 12pt; background: var(--light); border-inline-start: 3pt solid var(--c2); border-radius: 0 4pt 4pt 0; break-inside: avoid; }
.rp .callout .co-ico { color: var(--c2); font-size: 13pt; line-height: 1.3; }
.rp .callout p { margin: 0; font-size: 11.5pt; }
.rp figure.quote.closing { margin: 18pt 8mm 0; text-align: center; background: none; border: 0; border-top: .8pt solid var(--rule); border-bottom: .8pt solid var(--rule); padding: 10pt 6pt; }
.rp figure.quote.closing figcaption { text-align: center; }
.rp figure.chart { break-inside: avoid; }
.rp .tool-cards { margin: 4pt 0 12pt; }
.rp .tool-card { border-top: 3pt solid var(--c2); }
.rp .tool-card b { color: var(--c1); }
/* cover */
.rp section.k-cover { background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420'%3E%3Cg fill='none'%3E%3Ccircle cx='420' cy='420' r='400' stroke='%23c8961e' stroke-width='2.2'/%3E%3Ccircle cx='420' cy='420' r='360' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='320' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='280' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='240' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='200' stroke='%23e6e9ef' stroke-width='1.2'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right -40mm bottom -40mm; background-size: 150mm 150mm; }
.rp.theme-emerald section.k-cover { background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420'%3E%3Cg fill='none'%3E%3Ccircle cx='420' cy='420' r='400' stroke='%23c8961e' stroke-width='2.2'/%3E%3Ccircle cx='420' cy='420' r='360' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='320' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='280' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='240' stroke='%23d9dee7' stroke-width='1.4'/%3E%3Ccircle cx='420' cy='420' r='200' stroke='%23e6e9ef' stroke-width='1.2'/%3E%3C/g%3E%3C/svg%3E") no-repeat right -40mm bottom -40mm / 150mm 150mm, linear-gradient(180deg, #ecfdf5 0, #fff 30%, #fff 80%, #f7fbf9 100%); }
.rp .c-local { font-size: 17pt; font-weight: 700; color: var(--c1); margin: 0 0 2mm; text-align: inherit; }
.rp .c-chips { display: flex; justify-content: center; gap: 6pt; flex-wrap: wrap; margin: 2mm 0 0; }
.rp.theme-corporate .c-chips { justify-content: flex-start; }
.rp .c-chips span { font-size: 9pt; padding: 2pt 9pt; border-radius: 99pt; border: .8pt solid var(--c2); color: var(--c1); background: #fff; font-weight: 700; }
.rp.screen .kpis { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 640px) { .rp.screen .cardgrid, .rp.screen .cardgrid.n3 { grid-template-columns: 1fr; } }
/* Paged.js break rules must not use ancestor selectors */
h1, h2, h3, header.chap-head, h2.vis-h { break-after: avoid; }
figure.chart, figure.quote, aside.callout, div.kpis, div.cg, div.tool-card, tr, div.stat-card { break-inside: avoid; }

/* ===== v1.3 graphic cover (editorial, like a professional proposal) ===== */
.rp section.k-cover.cv2 { text-align: left; border: 0; outline: 0; padding: 12mm 14mm 10mm 18mm; background: #fff url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600' viewBox='0 0 600 600'%3E%3Cg fill='none'%3E%3Ccircle cx='600' cy='600' r='560' stroke='%23c8961e' stroke-width='2.6'/%3E%3Ccircle cx='600' cy='600' r='500' stroke='%23dfe3ea' stroke-width='1.6'/%3E%3Ccircle cx='600' cy='600' r='440' stroke='%23dfe3ea' stroke-width='1.6'/%3E%3Ccircle cx='600' cy='600' r='380' stroke='%23dfe3ea' stroke-width='1.6'/%3E%3Ccircle cx='600' cy='600' r='320' stroke='%23e7eaf0' stroke-width='1.4'/%3E%3Ccircle cx='600' cy='600' r='260' stroke='%23eceff3' stroke-width='1.4'/%3E%3C/g%3E%3C/svg%3E") no-repeat right -50mm bottom -50mm / 150mm 150mm; box-shadow: inset 5mm 0 0 var(--c1); }
.rp .cv { display: flex; flex-direction: column; height: 100%; }
.rp .cv-top { display: flex; align-items: center; gap: 6mm; }
.rp .cv-logos { display: flex; gap: 4mm; }
.rp .cv-logo { height: 22mm; width: auto; object-fit: contain; }
.rp .cv-logobox { width: 24mm; height: 16mm; border: .8pt dashed #c9ced8; border-radius: 3pt; display: grid; place-items: center; font-size: 7pt; color: #9aa3ae; text-align: center; }
.rp .cv-inst { font-family: "NotoSerif", serif; font-size: 15pt; font-weight: 700; color: var(--c1); line-height: 1.25; }
.rp .cv-mid { margin-top: 30mm; }
.rp .cv-eyebrow { font-family: "NotoSans", sans-serif; font-size: 9pt; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--c2); margin-bottom: 4mm; }
.rp .cv-pills { display: flex; gap: 2.5mm; flex-wrap: wrap; margin-bottom: 5mm; }
.rp .cv-pill { font-family: "NotoSans", sans-serif; font-size: 8.5pt; font-weight: 700; padding: 1.4mm 4mm; border-radius: 99pt; border: .9pt solid var(--c2); color: #6b4e0f; background: #fff8e6; }
.rp .cv-pill.fill { background: var(--c1); border-color: var(--c1); color: #fff; }
.rp h1.cv-title { font-family: "NotoSerif", serif; font-size: 34pt; line-height: 1.05; margin: 0; color: var(--c1); border: 0; background: none; padding: 0; }
.rp .cv-local { font-size: 17pt; font-weight: 700; color: var(--c1); margin-top: 2mm; opacity: .9; }
.rp .cv-at { margin-top: 6mm; font-family: "NotoSans", sans-serif; font-size: 8.5pt; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); display: flex; align-items: center; gap: 3mm; }
.rp .cv-orglogo { height: 10mm; width: auto; }
.rp .cv-org { font-family: "NotoSerif", serif; font-size: 20pt; font-weight: 700; color: #1f2937; line-height: 1.2; margin-top: 1.5mm; }
.rp .cv-orgline { font-size: 10pt; color: var(--muted); margin-top: 1mm; }
.rp .cv-rule { width: 22mm; height: 2.2pt; background: var(--c2); margin: 7mm 0 6mm; }
.rp .cv-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5mm 10mm; max-width: 150mm; }
.rp .cv-k { font-family: "NotoSans", sans-serif; font-size: 7.5pt; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #8a93a0; }
.rp .cv-v { font-size: 11pt; color: #111827; margin-top: .8mm; line-height: 1.35; }
.rp .cv-bottom { margin-top: auto; max-width: 108mm; border-top: .8pt solid #e3e7ee; padding-top: 5mm; }
.rp .cv-to { font-family: "NotoSerif", serif; font-size: 15pt; font-weight: 700; color: var(--c1); margin-top: 1.5mm; }
.rp .cv-toline { font-size: 10pt; color: #374151; }
.rp .cv-sub { font-size: 8.5pt; color: var(--muted); margin-top: 3mm; }
.rp .cv-foot { font-family: "NotoSans", sans-serif; font-size: 7.5pt; color: #9aa3ae; margin-top: 3mm; letter-spacing: .04em; }
.rp.screen section.k-cover.cv2 { min-height: 900px; }
/* ===== Version tags and the journal-style letter (Version - 2) ===== */
.rp .vtag { position: relative; float: right; margin: -2mm 0 2mm 4mm; font-family: "NotoSans", sans-serif; font-size: 8pt; font-weight: 700; letter-spacing: .08em; color: #fff; background: var(--c2); padding: 1mm 3.5mm; border-radius: 99pt; }
.rp .lh2 { display: flex; align-items: center; gap: 6mm; padding-bottom: 3mm; margin-bottom: 7mm; border-bottom: 3pt double #9f1d20; clear: both; }
.rp .lh2-logo { height: 26mm; width: auto; }
.rp .lh2-seal { width: 24mm; height: 24mm; border-radius: 50%; background: radial-gradient(circle, #fff 55%, #9f1d20 56%, #9f1d20 60%, #fff 61%); border: 2pt solid #9f1d20; display: grid; place-items: center; font: 700 22pt "NotoSerif", serif; color: #9f1d20; flex: none; }
.rp .lh2-txt { flex: 1; text-align: right; }
.rp .lh2-name { font-family: "NotoSans", sans-serif; font-size: 22pt; font-weight: 800; color: #9f1d20; line-height: 1.05; letter-spacing: .01em; text-transform: uppercase; }
.rp .lh2-line { font-family: "NotoSans", sans-serif; font-size: 9pt; font-weight: 700; color: #1f2d6b; }
.rp p.rp.v2 { font-family: "NotoSans", sans-serif; font-size: 11pt; margin: 0 0 4mm; text-align: left; }
.rp p.rp.v2.tight { margin-bottom: .8mm; }
.rp p.rp.v2.center { text-align: center; } .rp p.rp.v2.right { text-align: right; } .rp p.rp.v2.just { text-align: justify; line-height: 1.7; }
.rp p.rp.v2.lh { line-height: 2; } .rp p.rp.v2.sp { margin-top: 8mm; } .rp p.rp.v2.uhead { margin: 5mm 0; }
.rp p.rp span.b { font-weight: 700; } .rp p.rp span.u { text-decoration: underline; }
