/* pr-report-visual-panel.css — enqueue on report pages.
   Fonts: DM Serif Display + Figtree (already loaded site-wide). */

.psr-panel{--navy:#0B1C3D;--navy-2:#12294f;--navy-line:#22375f;--gold:#C4973A;--gold-soft:#E4C77E;
  --ink:#0B1C3D;--paper:#FBFAF7;--paper-2:#F2EEE4;--muted:#6A7488;--grid:#E6E1D6;
  max-width:1040px;margin:0 auto;background:var(--paper);border:1px solid var(--grid);
  box-shadow:0 24px 60px -30px rgba(11,28,61,.45);overflow:hidden;
  font-family:'Figtree',system-ui,sans-serif;color:var(--ink);}
.psr-panel *{box-sizing:border-box;}

.psr-head{background:var(--navy);color:#fff;padding:26px 34px 24px;position:relative;
  background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.05) 1px,transparent 0);background-size:18px 18px;}
.psr-head::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;
  background:linear-gradient(90deg,var(--gold) 0%,var(--gold-soft) 40%,transparent 75%);}
.psr-head .eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft);font-weight:700;margin-bottom:8px;}
.psr-head h1{font-family:'DM Serif Display',serif;font-size:34px;line-height:1.05;font-weight:400;margin:0;}
.psr-head .meta{margin-top:12px;font-size:12px;color:#B9C4D8;display:flex;gap:20px;flex-wrap:wrap;}
.psr-head .meta b{color:#fff;font-weight:600;}

.psr-glance{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;background:var(--navy-2);color:#fff;}
.psr-glance .g-cell{padding:20px 26px;border-right:1px solid var(--navy-line);}
.psr-glance .g-cell:last-child{border-right:none;}
.psr-glance .lab{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#94A2BE;font-weight:700;margin-bottom:8px;}
.psr-glance .val{font-family:'DM Serif Display',serif;font-size:26px;line-height:1;}
.psr-glance .val.sm{font-size:20px;}
.psr-glance .val small{font-size:13px;color:var(--gold-soft);font-family:'Figtree';font-weight:600;}
.psr-glance .sub{font-size:11.5px;color:#B9C4D8;margin-top:6px;}
.psr-glance .g-cell.hero .val{color:var(--gold-soft);font-size:30px;}

.psr-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--grid);}
.psr-grid .card{background:var(--paper);padding:26px 30px 30px;}
.psr-grid .card.full{grid-column:1 / -1;}
.psr-grid .card h2{font-family:'DM Serif Display',serif;font-size:19px;font-weight:400;margin:0 0 3px;}
.psr-grid .kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:16px;}
.psr-grid .kicker::before{content:"";display:inline-block;width:16px;height:2px;background:var(--gold);vertical-align:middle;margin-right:8px;transform:translateY(-2px);}
.psr-grid .foot-note{font-size:11px;color:var(--muted);margin-top:14px;line-height:1.5;}

.psr-panel .leg{display:flex;flex-direction:column;gap:11px;margin-top:4px;}
.psr-panel .leg-row{display:flex;align-items:center;font-size:13.5px;}
.psr-panel .swatch{width:12px;height:12px;border-radius:2px;margin-right:10px;flex:none;}
.psr-panel .leg-name{font-weight:600;}
.psr-panel .leg-pct{margin-left:auto;font-family:'DM Serif Display',serif;font-size:16px;}

.psr-panel .appbar{margin-top:6px;}
.psr-panel .appbar .row{margin-bottom:16px;}
.psr-panel .appbar .top{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:6px;}
.psr-panel .appbar .top b{font-weight:600;}
.psr-panel .appbar .top span{font-family:'DM Serif Display',serif;}
.psr-panel .track{height:12px;background:var(--paper-2);border-radius:2px;overflow:hidden;}
.psr-panel .fill{height:100%;border-radius:2px;}

.psr-panel .tree{display:grid;grid-template-columns:auto 1fr;gap:14px 22px;align-items:start;margin-top:4px;}
.psr-panel .axis-lab{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--gold);padding-top:7px;white-space:nowrap;}
.psr-panel .chips{display:flex;flex-wrap:wrap;gap:8px;}
.psr-panel .chip{background:var(--navy);color:#fff;font-size:12.5px;font-weight:500;padding:6px 13px;border-radius:2px;}
.psr-panel .chip.alt{background:#fff;color:var(--navy);border:1px solid var(--navy-line);}
.psr-panel .chip .lead{color:var(--gold-soft);font-weight:700;}

.psr-panel .droc{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--grid);border:1px solid var(--grid);margin-top:2px;}
.psr-panel .droc .q{background:var(--paper);padding:18px 20px;}
.psr-panel .droc .qh{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.psr-panel .droc .dot{width:9px;height:9px;border-radius:50%;flex:none;}
.psr-panel .droc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.psr-panel .droc li{font-size:13px;line-height:1.45;padding-left:14px;position:relative;color:#2b3a55;}
.psr-panel .droc li::before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:1px;background:var(--gold);}

.psr-foot{background:var(--navy);color:#B9C4D8;font-size:11.5px;padding:14px 34px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.psr-foot b{color:#fff;}
.psr-foot .gold{color:var(--gold-soft);}

@media(max-width:760px){
  .psr-glance{grid-template-columns:1fr 1fr;}
  .psr-glance .g-cell{border-bottom:1px solid var(--navy-line);}
  .psr-grid{grid-template-columns:1fr;}
  .psr-panel .droc{grid-template-columns:1fr;}
  .psr-head h1{font-size:27px;}
}
