/* ───────────── A4 report (screen preview, PDF capture & print) ───────────── */
.a4-page{position:relative;width:794px;height:1122px;overflow:hidden;background:#fff;color:var(--ink);font-family:var(--font);box-shadow:0 10px 30px rgba(8,46,36,.18);border-radius:3px}
.a4-page::before{content:'';position:absolute;left:14px;top:14px;right:14px;bottom:14px;border:1px solid rgba(201,123,31,.22);border-radius:10px;pointer-events:none}
.rp-head{position:relative;height:100px;padding:0 36px;display:flex;align-items:center;gap:16px;color:#fff;overflow:hidden;background:var(--rp-head-grad)}
.rp-head.big{height:114px}
.rp-head-glow{position:absolute;right:-40px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.28),rgba(255,255,255,0) 66%)}
.rp-head::after{content:'';position:absolute;left:46%;bottom:-150px;width:260px;height:260px;border-radius:50%;border:1.5px solid rgba(255,255,255,.2);box-shadow:0 0 0 20px rgba(255,255,255,.05),0 0 0 40px rgba(255,255,255,.035)}
.rp-head>*:not(.rp-head-glow){position:relative;z-index:1}
.rp-logo{border-radius:15px;border:2px solid rgba(255,255,255,.65);flex:none}
.rp-head-t{flex:1;min-width:0}
.rp-brand{font:600 11px var(--font);letter-spacing:.18em;text-transform:uppercase;opacity:.92}
.rp-title{font:700 25px/1.15 var(--serif);margin-top:3px}
.rp-sub{font-size:11.5px;opacity:.92;margin-top:4px}
.rp-head-r{text-align:right;font-size:11px;line-height:1.6;font-weight:500;opacity:.95;flex:none}
.rp-body{padding:18px 36px 0}
.rp-person{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 18px;padding:13px 20px;border-radius:16px;background:var(--rp-person-grad);border:1px solid var(--rp-line)}
.rp-field.w2{grid-column:span 2}.rp-field.w3{grid-column:span 3}
.rp-field span{display:block;font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--saffron-700)}
.rp-field b{display:block;font-size:14.5px;font-weight:600;margin-top:2px;color:var(--ink)}
.rp-h2{display:flex;align-items:center;gap:10px;font:700 17px var(--serif);color:var(--maroon-800);margin:18px 0 9px}
.rp-h2 i{width:5px;height:20px;border-radius:3px;background:var(--rp-bar)}
.rp-h2 small{margin-left:auto;font:500 11px var(--font);color:var(--ink-3)}
.rp-charts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.rp-chart{margin:0}
.rp-chart figcaption{text-align:center;font-size:11.5px;color:var(--ink-2);margin-top:7px}
.rp-chart figcaption b{color:var(--maroon-800)}
.sic-small{border-width:2px;border-radius:12px;box-shadow:none}
.sic-small .sic-cell{padding:3px 2px}
.sic-small .sic-sign{font-size:6.5px}
.sic-small .sic-cell.is-asc::after{border-width:12px 12px 0 0}
.sic-small .sic-cell.is-asc .sic-sign{padding-left:8px}
.sic-small .sic-planets{gap:2px}
.sic-small .sic-pl{font-size:9.5px;padding:2px 3px;border-radius:5px}
.sic-small .sic-title{font-size:21px}
.sic-small .sic-sub{font-size:8px;margin-top:3px}
.rp-dz{display:grid;grid-template-columns:40px 200px 1fr 84px;align-items:center;gap:12px;padding:8px 12px;margin-bottom:7px;border:1px solid var(--sand-200);border-radius:14px;background:#fff}
.rp-dz-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}
.rp-dz-name b{display:block;font-size:15px;font-weight:700}
.rp-dz-name span{display:block;font-size:10.5px;color:var(--ink-2);margin-top:1px}
.rp-dz-name em{display:block;font-style:normal;font-size:10.5px;color:var(--ink-3)}
.rp-bar{position:relative;height:24px;border-radius:999px;background:var(--sand-200);overflow:hidden}
.rp-bar-fill{height:100%;border-radius:999px}
.rp-bar-val{position:absolute;right:11px;top:0;line-height:24px;font:700 12.5px var(--font);color:var(--ink)}
.rp-chip{display:inline-block;padding:5px 12px;border-radius:999px;font-size:11.5px;font-weight:700;text-align:center;white-space:nowrap}
.rp-dz .rp-chip{justify-self:end}
.rp-scale{display:flex;justify-content:center;gap:20px;margin-top:9px;font-size:10.5px;color:var(--ink-2)}
.rp-scale i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}
.rp-foot{position:absolute;left:0;right:0;bottom:0;padding:10px 36px 18px;border-top:1px solid var(--sand-200);background:#FFFDF8}
.rp-disc{font-size:8.8px;line-height:1.5;color:var(--ink-3);text-align:center}
.rp-disc b{color:var(--ink-2);font-weight:700}
.rp-foot-row{display:flex;justify-content:space-between;margin-top:7px;font-size:9.5px;font-weight:600;color:var(--ink-2)}

/* page 2 — chakra */
.rp-chakra-body{display:grid;grid-template-columns:370px 1fr;gap:22px;align-items:stretch;padding-top:18px}
.rp-fig{background:#fff;border-radius:20px;padding:12px 0;border:1px solid var(--rp-line);display:flex;align-items:center;justify-content:center}
.rp-fig .cf{width:350px}
.rp-ck-list{display:grid;gap:var(--ck-gap,7px)}
.rp-ck{display:flex;gap:10px;align-items:flex-start;padding:var(--ck-pad,8px) 10px;border:1px solid var(--sand-200);border-radius:12px}
.rp-ck-n{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font:700 11.5px var(--font)}
.rp-ck-main{flex:1;min-width:0}
.rp-ck-top{display:flex;align-items:baseline;gap:5px}
.rp-ck-top b{font-size:12.5px}.rp-ck-top small{font-size:10px;color:var(--ink-3)}
.rp-ck-pct{margin-left:auto;font:700 13px var(--font)}
.rp-ck-bar{height:6px;border-radius:999px;background:var(--sand-200);margin:5px 0 4px;overflow:hidden}.rp-ck-bar i{display:block;height:100%;border-radius:999px}
.rp-ck-rem{font-size:var(--rem-fs,9px);line-height:var(--rem-lh,1.4);color:var(--ink-2)}
.rp-ck-foot{padding-top:14px}
.rp-note{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:var(--high-bg);color:#7A2C18;font-size:11.5px;font-weight:600}
.rp-legend{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:10px;padding:10px 14px;border-radius:12px;background:var(--cream-50);border:1px solid var(--sand-200);font-size:10.5px;color:var(--ink-2)}
.rp-legend b{width:100%;font-size:10.5px;color:var(--maroon-800)}

/* page 3 — key indicators */
.rp-kd{border:1px solid var(--sand-200);border-radius:14px;padding:9px 12px;margin-bottom:9px;background:#fff}
.rp-kd-head{display:flex;align-items:center;gap:9px;margin-bottom:4px}
.rp-kd-head b{font:700 14.5px var(--serif);color:var(--maroon-800)}
.rp-kd-head .rp-chip{margin-left:auto;padding:3px 10px;font-size:10.5px}
.rp-kd-ic{width:26px;height:26px;border-radius:9px;display:grid;place-items:center}
.rp-kd-row{display:grid;grid-template-columns:76px 1fr;gap:8px;padding:5px 0;border-top:1px dashed var(--sand-200);align-items:start}
.rp-kd-tag{font-size:10px;font-weight:700;color:var(--saffron-700);padding-top:3px}
.rp-kd-chips{display:flex;flex-wrap:wrap;gap:4px}
.rp-rule{font-size:9px;line-height:1.25;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--high-bg);color:var(--high)}
.rp-none{font-size:9.5px;color:var(--ink-3);font-style:italic;padding-top:3px}
.rp-more{font-size:9px;font-weight:600;color:var(--ink-2);padding:3px 4px}

/* PDF stage: pages are captured at their true size, no shadow/radius */
.pdf-stage .a4-page{box-shadow:none;border-radius:0}

/* ───────────── PRINT ───────────── */
@page{size:A4;margin:0}
@media print{
  html,body{background:#fff!important;margin:0!important}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body.printing #app,body.printing .toasts,body.printing .boot,body.printing .sheet-backdrop,body.printing .gen-overlay,body.printing .offline-bar{display:none!important}
  body.printing #print-root{display:block!important}
  body.printing .a4-page{width:210mm;height:296.4mm;box-shadow:none;border-radius:0;margin:0;break-after:page;page-break-after:always}
  body.printing .a4-page:last-child{break-after:auto;page-break-after:auto}
}

/* SAMPLE watermark (only on the public sample report) */
.rp-watermark{position:absolute;left:0;right:0;top:46%;text-align:center;transform:translateY(-50%) rotate(-28deg);font:700 170px/1 var(--serif);letter-spacing:.06em;color:rgba(201,123,31,.07);pointer-events:none;z-index:5;user-select:none}
