/* Client report pages (A4, liquid glass). Every class starts with r- so the app's own styles never leak in. */
@font-face{font-family:"DM Sans Report";font-weight:300;src:url(../report/fonts/dm-text-300.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report";font-weight:400;src:url(../report/fonts/dm-text-400.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report";font-weight:500;src:url(../report/fonts/dm-text-500.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report";font-weight:600;src:url(../report/fonts/dm-text-600.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report";font-weight:700;src:url(../report/fonts/dm-text-700.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Prop";font-weight:300;src:url(../report/fonts/dm-prop-300.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Prop";font-weight:400;src:url(../report/fonts/dm-prop-400.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Prop";font-weight:500;src:url(../report/fonts/dm-prop-500.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Prop";font-weight:600;src:url(../report/fonts/dm-prop-600.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Prop";font-weight:700;src:url(../report/fonts/dm-prop-700.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Display";font-weight:300;src:url(../report/fonts/dm-display-300.woff2) format("woff2")}
@font-face{font-family:"DM Sans Report Display";font-weight:700;src:url(../report/fonts/dm-display-700.woff2) format("woff2")}

.rpt{--r-ink:#141413;--r-ink2:rgba(20,20,19,.66);--r-ink3:rgba(20,20,19,.45);--r-hair:rgba(20,20,19,.11);
  font-family:"DM Sans Report Prop",-apple-system,"Helvetica Neue",Arial,sans-serif;font-feature-settings:"kern" 1;color:var(--r-ink);
  -webkit-font-smoothing:antialiased;font-size:12.5px;line-height:1.4;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.rpt *{box-sizing:border-box;margin:0;padding:0}
.r-page{position:relative;width:794px;height:1123px;overflow:hidden;background:#eee 0 0/794px 1123px no-repeat}
.r-body{position:absolute;left:26px;right:26px;top:28px;bottom:66px;display:flex;flex-direction:column;gap:12px}
.rpt h1{font-family:"DM Sans Report Display","DM Sans Report Prop",sans-serif;font-size:42px;line-height:1.04;letter-spacing:-.022em;font-weight:700}
.rpt h1.r-coverh{font-size:58px;font-weight:300;letter-spacing:-.03em;line-height:1}
.rpt h2{font-size:17px;letter-spacing:-.01em;font-weight:600}
.rpt table{font-family:"DM Sans Report","DM Sans Report Prop",sans-serif;border-collapse:collapse;width:100%}
.r-glass{position:relative;border-radius:26px;background:rgba(255,255,255,.62);
  box-shadow:0 22px 48px -16px rgba(40,40,70,.30),0 3px 10px rgba(40,40,70,.08),inset 0 1.5px 1px rgba(255,255,255,.95),inset 0 -1px 1px rgba(255,255,255,.45),inset 1px 0 1px rgba(255,255,255,.5)}
.r-glass::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.25px;pointer-events:none;
  background:linear-gradient(135deg,#fff 0%,rgba(255,255,255,.28) 32%,rgba(255,255,255,.08) 58%,rgba(255,255,255,.75) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.r-glass::after{content:"";position:absolute;left:0;right:0;top:0;height:46%;max-height:120px;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;pointer-events:none;
  background:radial-gradient(120% 90% at 18% -12%,rgba(255,255,255,.55),rgba(255,255,255,0) 62%)}
.r-glass>*{position:relative;z-index:1}
.r-pill{border-radius:999px}
.r-pad{padding:18px 20px}
.r-eyebrow{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:var(--r-ink2)}
.r-sub{font-size:14px;margin-top:5px;color:var(--r-ink)}
.r-small{font-size:10px;color:var(--r-ink2);line-height:1.45}
.r-foot{position:absolute!important;left:26px;right:26px;bottom:18px;height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-size:10.5px;color:var(--r-ink2)}
.r-foot img{height:12px;display:block}
.r-foot b{color:var(--r-ink);font-weight:600}
.r-dot{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:7px;vertical-align:3px}
.r-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}
.r-kv td{padding:10px 0;border-top:.75px solid var(--r-hair);font-size:12.8px}
.r-kv tr:first-child td{border-top:0}
.r-kv td.k{color:var(--r-ink2)}
.r-kv td.v{text-align:right;font-weight:600;width:120px;white-space:nowrap}
.r-kv.r-tight td{padding:6px 0}
.r-note+.r-note{margin-top:10px;padding-top:10px;border-top:.75px solid var(--r-hair)}
.r-note b{display:block;font-size:13px;font-weight:600;margin-bottom:2px;color:var(--r-ink)}
.r-note{font-size:11.6px;color:var(--r-ink2);line-height:1.45}
.r-tile .k{font-size:11px;color:var(--r-ink2)}
.r-tile .v{font-size:20px;font-weight:700;letter-spacing:-.015em;margin-top:2px}
.r-tile .s{font-size:10.8px;color:var(--r-ink2);margin-top:2px}

/* preview: pages scaled to fit; print: real size, one per sheet */
.rpt-stack{display:flex;flex-direction:column;align-items:center;gap:18px}
.rpt-scaler{transform-origin:0 0}
.rpt-frame{overflow:hidden;border-radius:6px;box-shadow:0 12px 30px -12px rgba(13,40,24,.35)}
@page{size:A4;margin:0}
@media print{
  html,body{background:#fff!important;margin:0!important;padding:0!important}
  body>*:not(.app){display:none!important}
  .app{display:block!important;padding:0!important;margin:0!important;max-width:none!important}
  .app>*:not(.main),.main>*:not(.view.on),.view.on>*:not(.tl),.tl>*:not(.tl-preview),.tl-preview>*:not(.rpt-stack){display:none!important}
  .main,.view.on,.tl,.tl-preview{display:block!important;padding:0!important;margin:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;height:auto!important;position:static!important}
  .rpt-stack{display:block!important;gap:0!important}
  .rpt-frame{width:auto!important;height:auto!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
  .rpt-scaler{transform:none!important}
  .r-page{break-after:page;page-break-after:always;width:210mm;height:297mm}
  .rpt-frame:last-child .r-page{break-after:auto;page-break-after:auto}
}
