/* ══════════════════════════════════════════════════════════════
   MMSx Supplement Engine v4.2 — screen UI
   Mobile-first. TrainersEye: #0A0A0A / #FFC107 / Barlow.
   ══════════════════════════════════════════════════════════════ */
:root, [data-theme="dark"]{
  --bg:#080808; --card:#121212; --card2:#181818; --line:rgba(255,255,255,.07);
  --amber:#FFC107; --amber-dim:rgba(255,193,7,.14); --amber-ink:#FFC107;
  --A:#22C55E; --B:#3B82F6; --C:#F97316; --D:#6B7280; --X:#EF4444;
  --txt:#F2F2F2; --mut:#8A8A8A; --dim:#5A5A5A;
  --hero1:#1a1408; --hero2:#131313; --hero3:#0e0e0e;
  --navbg:rgba(8,8,8,.94); --shadow:rgba(0,0,0,.5);
}
[data-theme="light"]{
  --bg:#F4F5F7; --card:#FFFFFF; --card2:#F7F8FA; --line:rgba(10,10,10,.09);
  --amber:#B7791F; --amber-dim:rgba(183,121,31,.11); --amber-ink:#8A5A12;
  --A:#15803D; --B:#1D4ED8; --C:#C2410C; --D:#4B5563; --X:#B91C1C;
  --txt:#14161A; --mut:#5C6470; --dim:#8A929E;
  --hero1:#FFF8E7; --hero2:#FFFFFF; --hero3:#FAFBFC;
  --navbg:rgba(255,255,255,.94); --shadow:rgba(10,20,40,.1);
}
html{transition:background-color .2s ease}
body{transition:background-color .2s ease,color .2s ease}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{background:var(--bg);-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--txt);font-family:'Barlow',system-ui,sans-serif;
  min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:200;background:var(--navbg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);padding:11px 14px;
  display:flex;align-items:center;justify-content:space-between;gap:10px}
.nav-l{display:flex;align-items:center;gap:9px;min-width:0}
.nav-ico{width:34px;height:34px;background:linear-gradient(135deg,#FFD54F,#FFA000);
  border-radius:9px;display:flex;align-items:center;justify-content:center;
  font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:13px;color:#000;flex-shrink:0;
  box-shadow:0 2px 10px rgba(255,193,7,.28)}
.nav-nm{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:.82rem;
  letter-spacing:.045em;text-transform:uppercase;line-height:1.15;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-sb{font-size:.55rem;color:var(--dim);letter-spacing:.07em;text-transform:uppercase;margin-top:1px}
.nav-tag{font-size:.56rem;font-weight:800;color:var(--amber);background:var(--amber-dim);
  border:1px solid rgba(255,193,7,.3);border-radius:999px;padding:4px 9px;
  white-space:nowrap;letter-spacing:.05em;text-transform:uppercase;flex-shrink:0}

.wrap{max-width:600px;margin:0 auto;padding:14px 14px 100px}

/* ── HERO ── */
.hero{position:relative;overflow:hidden;border-radius:20px;padding:26px 20px 22px;
  margin-bottom:14px;background:linear-gradient(155deg,var(--hero1) 0%,var(--hero2) 45%,var(--hero3) 100%);
  border:1px solid rgba(255,193,7,.16)}
.hero::before{content:'';position:absolute;top:-90px;right:-70px;width:280px;height:280px;
  background:radial-gradient(circle,rgba(255,193,7,.16),transparent 68%);pointer-events:none}
.hero::after{content:'';position:absolute;left:0;top:0;width:100%;height:2px;
  background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.55}
.hero-pill{position:relative;display:inline-flex;align-items:center;gap:6px;
  font-family:'Barlow Condensed',sans-serif;font-size:.6rem;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;color:var(--amber);background:var(--amber-dim);
  border:1px solid rgba(255,193,7,.28);border-radius:999px;padding:5px 12px;margin-bottom:14px}
.hero h1{position:relative;font-family:'Barlow Condensed',sans-serif;font-weight:900;
  font-size:clamp(1.85rem,8.5vw,2.7rem);text-transform:uppercase;line-height:.94;
  margin-bottom:11px;letter-spacing:-.01em}
.hero h1 span{background:linear-gradient(100deg,#FFD54F,#FFA000);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-desc{position:relative;font-size:.8rem;color:var(--mut);line-height:1.62;margin-bottom:18px}
.hero-stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.hs{text-align:center;background:rgba(255,255,255,.035);border:1px solid var(--line);
  border-radius:12px;padding:11px 4px}
.hs-n{font-family:'Barlow Condensed',sans-serif;font-size:1.4rem;font-weight:900;
  color:var(--amber);line-height:1}
.hs-l{font-size:.5rem;font-weight:800;color:var(--dim);letter-spacing:.07em;
  text-transform:uppercase;margin-top:4px}

/* ── CARDS / STEPS ── */
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:17px;margin-bottom:12px}
.card.safety{border-color:rgba(239,68,68,.22);
  background:linear-gradient(165deg,rgba(239,68,68,.055),var(--card) 55%)}
.card-ttl{font-family:'Barlow Condensed',sans-serif;font-size:.63rem;font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;color:var(--amber);
  display:flex;align-items:center;gap:8px;margin-bottom:5px}
.card-ttl::before{content:'';width:3px;height:13px;background:var(--amber);
  border-radius:2px;flex-shrink:0}
.card.safety .card-ttl{color:#F87171}
.card.safety .card-ttl::before{background:#F87171}
.card-sub{font-size:.71rem;color:var(--mut);line-height:1.55;margin-bottom:14px}

.fg1{display:flex;flex-direction:column;gap:11px}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.fld label{font-size:.6rem;font-weight:800;color:var(--dim);letter-spacing:.08em;text-transform:uppercase}
select,input[type=number],input[type=text],textarea{width:100%;background:var(--card2);
  border:1px solid var(--line);color:var(--txt);border-radius:11px;
  padding:12px 13px;font:600 16px/1.2 'Barlow',sans-serif;outline:none;appearance:none;
  -webkit-appearance:none;transition:border-color .16s,box-shadow .16s}
select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M0 0l5.5 7L11 0z' fill='%23777'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;padding-right:32px}
select:focus,input:focus,textarea:focus{border-color:var(--amber);box-shadow:0 0 0 3px rgba(255,193,7,.13)}
textarea{resize:vertical;min-height:62px;font-size:15px;line-height:1.5}

/* ── TOGGLES ── */
.toggles{display:flex;flex-direction:column;gap:8px}
.tg{background:var(--card2);border:1px solid rgba(255,255,255,.07);border-radius:12px;
  padding:12px 13px;cursor:pointer;transition:all .16s;user-select:none;
  display:flex;align-items:flex-start;gap:11px}
.tg:active{transform:scale(.985)}
.tg.on{background:linear-gradient(135deg,rgba(239,68,68,.13),rgba(239,68,68,.05));
  border-color:rgba(239,68,68,.42)}
.tg-box{width:20px;height:20px;border:2px solid var(--dim);border-radius:6px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;transition:all .16s;margin-top:1px}
.tg.on .tg-box{background:#EF4444;border-color:#EF4444}
.tg-box::after{content:'✓';font-size:12px;color:#fff;font-weight:900;display:none;line-height:1}
.tg.on .tg-box::after{display:block}
.tg-nm{font-size:.84rem;font-weight:700;color:var(--txt);opacity:.82;line-height:1.25}
.tg.on .tg-nm{color:#FCA5A5}
.tg-hint{font-size:.66rem;color:var(--dim);margin-top:3px;line-height:1.45}

/* ── MED CHIPS ── */
.medlist{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.medchip{background:var(--card2);border:1px solid var(--line);border-radius:999px;
  padding:8px 13px;font-size:.75rem;font-weight:600;color:var(--mut);cursor:pointer;
  transition:all .15s;user-select:none}
.medchip:active{transform:scale(.96)}
.medchip.on{background:var(--amber-dim);border-color:rgba(255,193,7,.45);color:var(--amber);font-weight:700}

/* ── CTA ── */
.gen-btn{width:100%;padding:17px;background:linear-gradient(100deg,#FFD54F,#FFA000);
  color:#000;border:none;border-radius:15px;font-family:'Barlow Condensed',sans-serif;
  font-weight:900;font-size:1.06rem;letter-spacing:.09em;text-transform:uppercase;
  cursor:pointer;box-shadow:0 6px 26px rgba(255,193,7,.3);transition:all .2s;
  margin-top:4px;display:flex;align-items:center;justify-content:center;gap:9px}
.gen-btn:active{transform:scale(.98);box-shadow:0 3px 14px rgba(255,193,7,.24)}

/* ── LOADING ── */
#loadBlock{display:none;text-align:center;padding:62px 20px}
.spin{width:46px;height:46px;border:3px solid rgba(255,255,255,.09);border-top-color:var(--amber);
  border-radius:50%;animation:spin .68s linear infinite;margin:0 auto 20px}
@keyframes spin{to{transform:rotate(360deg)}}
.load-t{font-family:'Barlow Condensed',sans-serif;font-size:1.14rem;font-weight:900;
  text-transform:uppercase;color:var(--amber);letter-spacing:.05em}
.load-s{font-size:.77rem;color:var(--mut);margin-top:7px}
.load-bar{width:210px;height:4px;background:var(--card2);border-radius:4px;margin:16px auto 0;overflow:hidden}
.load-fill{height:100%;background:linear-gradient(90deg,#FFD54F,#FFA000);border-radius:4px;
  width:0;transition:width .4s ease}

/* ── RESULT BAR ── */
.pdf-bar{display:none;background:linear-gradient(135deg,rgba(255,193,7,.09),var(--card));
  border:1px solid rgba(255,193,7,.28);border-radius:16px;padding:15px 16px;margin-bottom:12px;
  align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pdf-bar.show{display:flex}
.pdf-info strong{color:var(--amber);font-size:.86rem;font-weight:800}
.pdf-info p{font-size:.69rem;color:var(--mut);margin-top:3px;line-height:1.45}
.pdf-btns{display:flex;gap:8px}
.btn-print{display:flex;align-items:center;gap:6px;padding:12px 19px;
  background:linear-gradient(100deg,#FFD54F,#FFA000);color:#000;border:none;border-radius:11px;
  font:800 13px 'Barlow',sans-serif;cursor:pointer;white-space:nowrap}
.btn-print:active{transform:scale(.97)}
.btn-reset{background:transparent;border:1px solid rgba(255,255,255,.11);color:var(--mut);
  border-radius:11px;padding:12px 15px;font:700 13px 'Barlow',sans-serif;cursor:pointer}

/* ── REPORT SECTIONS ── */
#cardDoc{display:none}
#screenReport{display:none}
#screenReport.show{display:block}
.rsec{background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:17px;margin-bottom:12px}
.rsec-lbl{font-family:'Barlow Condensed',sans-serif;font-size:.6rem;font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;color:var(--amber);
  display:flex;align-items:center;gap:8px;margin-bottom:10px}
.rsec-lbl::before{content:'';width:3px;height:12px;background:var(--amber);border-radius:2px}
.rsec-h{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1.16rem;
  text-transform:uppercase;color:var(--txt);margin-bottom:5px;letter-spacing:-.005em}

.sum-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:14px}
.sum-pill{background:var(--card2);border:1px solid var(--line);border-radius:12px;
  padding:12px 4px;text-align:center}
.sum-n{font-family:'Barlow Condensed',sans-serif;font-size:1.55rem;font-weight:900;
  color:var(--amber);line-height:1}
.sum-l{font-size:.5rem;font-weight:800;color:var(--dim);letter-spacing:.07em;
  text-transform:uppercase;margin-top:4px}

/* ── SUPPLEMENT CARDS ── */
.scards{display:flex;flex-direction:column;gap:10px}
.scard{background:var(--card2);border-radius:13px;padding:14px;position:relative;
  overflow:hidden;border:1px solid var(--line)}
.scard::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ac,#666)}
.scard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin-bottom:7px}
.scard-name{font-weight:800;font-size:.93rem;color:var(--txt);line-height:1.25}
.scard-cat{font-size:.58rem;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.gpill{font-size:.58rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;
  padding:4px 9px;border-radius:999px;flex-shrink:0;white-space:nowrap}
.g-A{background:rgba(34,197,94,.16);color:#86EFAC;border:1px solid rgba(34,197,94,.28)}
.g-B{background:rgba(59,130,246,.16);color:#93C5FD;border:1px solid rgba(59,130,246,.28)}
.g-C{background:rgba(249,115,22,.16);color:#FDBA74;border:1px solid rgba(249,115,22,.28)}
.scard-use{font-size:.74rem;color:var(--amber);font-weight:700;margin-bottom:6px;line-height:1.4}
.scard-sum{font-size:.77rem;color:var(--mut);line-height:1.55;margin-bottom:9px}
.scard-meta{border-top:1px solid var(--line);padding-top:9px;display:flex;flex-direction:column;gap:5px}
.smr{display:flex;gap:8px;font-size:.72rem}
.smk{color:var(--amber);font-weight:800;min-width:48px;flex-shrink:0;font-size:.62rem;
  text-transform:uppercase;letter-spacing:.05em;padding-top:1px}
.smv{color:var(--mut);line-height:1.5}
.lowconf{font-size:.65rem;color:#FDBA74;background:rgba(249,115,22,.09);
  border:1px solid rgba(249,115,22,.2);border-radius:8px;padding:7px 10px;margin-top:8px;line-height:1.45}

/* ── NOTICES ── */
.notice{background:linear-gradient(135deg,rgba(239,68,68,.1),rgba(239,68,68,.03));
  border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:13px 14px;margin-bottom:9px}
.notice.mod{background:linear-gradient(135deg,rgba(249,115,22,.09),rgba(249,115,22,.03));
  border-color:rgba(249,115,22,.26)}
.notice-h{font-family:'Barlow Condensed',sans-serif;font-size:.6rem;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase;color:#F87171;margin-bottom:6px}
.notice.mod .notice-h{color:#FB923C}
.notice-b{font-size:.76rem;color:#FCA5A5;line-height:1.58}
.notice.mod .notice-b{color:#FDBA74}
.notice-m{font-size:.71rem;color:var(--mut);margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.07)}

.supp-item{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.75rem}
.supp-item:last-child{border-bottom:none}
.supp-nm{font-weight:800;color:var(--txt);opacity:.75;min-width:112px;flex-shrink:0}
.supp-rs{color:var(--dim);line-height:1.5}

/* ── TIMING GRID ── */
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tcol{background:var(--card2);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.tcol-h{background:linear-gradient(100deg,rgba(255,193,7,.13),rgba(255,193,7,.04));
  padding:8px 12px;font-family:'Barlow Condensed',sans-serif;font-size:.58rem;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--amber);border-bottom:1px solid var(--line)}
.tcol-b{padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.titem{background:var(--bg);border-radius:8px;padding:8px 10px}
.titem-n{font-size:.72rem;font-weight:700;color:var(--txt);opacity:.9;line-height:1.3}
.titem-d{font-size:.6rem;color:var(--dim);margin-top:2px;line-height:1.35}
.tempty{font-size:.66rem;color:var(--dim);opacity:.6;font-style:italic}

/* ── PROTOCOL TABLE ── */
.wtable{width:100%;border-collapse:collapse}
.wtable th{font-family:'Barlow Condensed',sans-serif;font-size:.58rem;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--amber);padding:9px 10px;
  text-align:left;border-bottom:2px solid rgba(255,193,7,.22)}
.wtable td{padding:10px;border-bottom:1px solid rgba(255,255,255,.05);color:#8E8E8E;
  vertical-align:top;font-size:.71rem;line-height:1.5}
.wk-n{font-family:'Barlow Condensed',sans-serif;font-weight:900;color:var(--amber);font-size:.95rem}
.wk-p{font-weight:800;color:var(--txt);opacity:.9;font-size:.72rem;margin-bottom:4px}
.pph{display:inline-block;padding:3px 8px;border-radius:999px;font-size:.54rem;
  font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.ph-load{background:rgba(59,130,246,.16);color:#93C5FD}
.ph-build{background:rgba(34,197,94,.16);color:#86EFAC}
.ph-peak{background:rgba(255,193,7,.16);color:var(--amber)}
.ph-eval{background:rgba(249,115,22,.16);color:#FDBA74}

.disc{background:linear-gradient(135deg,rgba(239,68,68,.06),transparent);
  border:1px solid rgba(239,68,68,.2);border-radius:12px;padding:15px 16px}
.disc h4{font-family:'Barlow Condensed',sans-serif;font-size:.62rem;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase;color:#F87171;margin-bottom:9px}
.disc p{font-size:.73rem;color:var(--mut);line-height:1.68;margin-bottom:6px}

.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(24px);
  background:var(--card2);border:1px solid rgba(255,193,7,.32);color:var(--txt);
  padding:12px 22px;border-radius:999px;font-size:.78rem;font-weight:700;z-index:999;
  opacity:0;transition:all .26s;pointer-events:none;max-width:90vw;text-align:center;
  box-shadow:0 8px 32px var(--shadow)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

#printDoc{display:none}

@media(min-width:560px){
  .wrap{padding:20px 20px 100px}
  .tgrid{grid-template-columns:repeat(4,1fr)}
  .hero{padding:32px 28px 26px}
}



/* ── THEME TOGGLE ── */
.nav-r{display:flex;align-items:center;gap:8px;flex-shrink:0}
.theme-btn{width:32px;height:32px;border-radius:9px;border:1px solid var(--line);
  background:var(--card2);color:var(--amber);font-size:14px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:all .16s;padding:0;line-height:1}
.theme-btn:active{transform:scale(.92)}

/* ── SECOND CTA ── */
.btn-card{display:flex;align-items:center;gap:6px;padding:12px 17px;background:transparent;
  color:var(--amber);border:1.5px solid var(--amber);border-radius:11px;
  font:800 13px 'Barlow',sans-serif;cursor:pointer;white-space:nowrap}
.btn-card:active{transform:scale(.97)}

/* ── COLOUR ACCENTS PER STEP ── */
.card:nth-of-type(1){border-top:2px solid var(--amber)}
.card.safety{border-top:2px solid var(--X)}
.rsec:nth-of-type(1){border-top:2px solid var(--amber)}

/* light-mode contrast repairs */
[data-theme="light"] .hero{border-color:rgba(183,121,31,.26)}
[data-theme="light"] .hero::before{background:radial-gradient(circle,rgba(183,121,31,.12),transparent 68%)}
[data-theme="light"] .hero h1 span{background:linear-gradient(100deg,#B7791F,#8A5A12);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
[data-theme="light"] .nav-ico,[data-theme="light"] .gen-btn,[data-theme="light"] .btn-print{
  background:linear-gradient(100deg,#F0B429,#C77C0E);color:#1A1200}
[data-theme="light"] .hs,[data-theme="light"] .sum-pill{background:var(--card2)}
[data-theme="light"] .tg.on{background:linear-gradient(135deg,rgba(185,28,28,.1),rgba(185,28,28,.03));
  border-color:rgba(185,28,28,.35)}
[data-theme="light"] .tg.on .tg-nm{color:#991B1B}
[data-theme="light"] .g-A{background:#DCFCE7;color:#14532D;border-color:#86EFAC}
[data-theme="light"] .g-B{background:#DBEAFE;color:#1E3A8A;border-color:#93C5FD}
[data-theme="light"] .g-C{background:#FEF3C7;color:#78350F;border-color:#FCD34D}
[data-theme="light"] .notice{background:#FEF2F2;border-color:#FECACA}
[data-theme="light"] .notice-b{color:#7F1D1D}
[data-theme="light"] .notice.mod{background:#FFF7ED;border-color:#FED7AA}
[data-theme="light"] .notice.mod .notice-b{color:#7C2D12}
[data-theme="light"] .disc{background:#FEF2F2;border-color:#FECACA}
[data-theme="light"] .tcol-h{background:linear-gradient(100deg,rgba(183,121,31,.12),rgba(183,121,31,.04))}
[data-theme="light"] .gen-btn{box-shadow:0 6px 22px rgba(183,121,31,.24)}
[data-theme="light"] .ph-load{background:#DBEAFE;color:#1D4ED8}
[data-theme="light"] .ph-build{background:#DCFCE7;color:#15803D}
[data-theme="light"] .ph-peak{background:#FEF3C7;color:#854D0E}
[data-theme="light"] .ph-eval{background:#FFEDD5;color:#9A3412}
@media print{
/* ── OUTPUT MODE ── body.mode-card prints the A5 card, otherwise the report ── */
#cardDoc{display:none}
body.mode-card #printDoc{display:none!important}
body.mode-card #cardDoc{display:block!important}

.card-pg{position:relative;width:148mm;height:210mm;max-height:210mm;overflow:hidden;
  background:#fff!important;padding:9mm;page-break-after:auto;
  display:flex;flex-direction:column}
.cd-top{display:flex!important;align-items:flex-start;justify-content:space-between;
  padding-bottom:3.5mm;border-bottom:.8mm solid #FFC107!important;margin-bottom:4mm}
.cd-brand{display:flex!important;align-items:center;gap:2.5mm}
.cd-ico{width:9mm;height:9mm;background:#0A0A0A!important;border-radius:1.8mm;
  display:flex;align-items:center;justify-content:center;
  font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:8pt;color:#FFC107!important}
.cd-t{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11pt;
  text-transform:uppercase;letter-spacing:.04em;color:#0A0A0A!important;line-height:1.1}
.cd-s{font-size:5pt;color:#8A8A8A!important;letter-spacing:.09em;text-transform:uppercase;margin-top:.5mm}
.cd-meta{text-align:right;font-size:6pt;color:#5A5A5A!important;line-height:1.5}
.cd-meta strong{color:#0A0A0A!important;font-size:7.5pt;font-weight:800}
.cd-grid{flex:1;display:grid!important;grid-template-columns:1fr 1fr;gap:3.5mm;align-content:start}
.cd-blk{border:.35mm solid #E5E7EB!important;border-radius:1.5mm;overflow:hidden;page-break-inside:avoid}
.cd-h{background:#0A0A0A!important;color:#FFC107!important;font-family:'Barlow Condensed',sans-serif;
  font-size:5.6pt;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:1.8mm 2.5mm}
.cd-i{padding:1.8mm 2.5mm;border-bottom:1px solid #F3F4F6}
.cd-i:last-child{border-bottom:none}
.cd-n{display:block;font-size:7pt;font-weight:800;color:#0A0A0A!important;line-height:1.25}
.cd-d{display:block;font-size:5.6pt;color:#7A7A7A!important;margin-top:.5mm;line-height:1.35}
.cd-warn{background:#FEF2F2!important;border-left:.7mm solid #DC2626!important;
  border-radius:0 1.2mm 1.2mm 0;padding:2.2mm 3mm;margin-top:3.5mm;
  font-size:6pt;color:#7F1D1D!important;line-height:1.5}
.cd-warn strong{color:#991B1B!important;font-weight:800}
.cd-foot{display:flex!important;align-items:flex-end;justify-content:space-between;gap:4mm;
  margin-top:4mm;padding-top:3mm;border-top:1px solid #E5E7EB}
.cd-bc{text-align:center;flex:0 0 52mm}
.cd-bc svg{width:100%;height:7mm}
.cd-id{font-family:'SF Mono',Menlo,monospace;font-size:5.6pt;font-weight:700;
  color:#0A0A0A!important;letter-spacing:.04em;margin-top:1mm}
.cd-legal{flex:1;font-size:4.8pt;color:#9A9A9A!important;line-height:1.5;text-align:right}
@page card{size:A5 portrait;margin:0}
*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
html,body{background:#fff!important;margin:0;padding:0;font-family:'Barlow',Helvetica,sans-serif}
.nav,.wrap,#screenReport,.pdf-bar,.toast{display:none!important}
#printDoc{display:block!important}
@page{size:A4 portrait;margin:0}

.pg{position:relative;width:210mm;height:297mm;max-height:297mm;overflow:hidden;
  page-break-after:always;page-break-inside:avoid;break-inside:avoid;background:#fff!important}
.pg:last-child{page-break-after:auto;page-break-after:avoid}
/* Nothing inside a page may create its own break — that is what turned
   5 pages into 10. */
.pg *{page-break-before:avoid!important;break-before:avoid!important}
.pg-body{position:absolute;top:23mm;bottom:10mm;left:10mm;right:10mm;
  overflow:hidden!important;max-height:264mm}
/* Long tables truncate at the page edge rather than spilling to a new sheet. */
.clin-tbl,.p-wtbl{table-layout:fixed;width:100%}
.clin-tbl td,.p-wtbl td{overflow:hidden}
.reg{max-height:none}

/* ── HEADER: dark bar, gold rule ── */
.pg-hdr{position:absolute;top:0;left:0;right:0;height:21mm;background:#0A0A0A!important;
  padding:0 10mm;display:flex;align-items:center;justify-content:space-between}
.pg-hdr::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1.2mm;
  background:linear-gradient(90deg,#FFC107,#FFA000 55%,#0A0A0A)!important}
.pg-hdr-l{display:flex;align-items:center;gap:3mm}
.pg-hdr-ico{width:9.5mm;height:9.5mm;background:#FFC107!important;border-radius:2mm;
  display:flex;align-items:center;justify-content:center;
  font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:9pt;color:#000!important}
.pg-hdr-nm{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:10.5pt;
  text-transform:uppercase;letter-spacing:.05em;color:#fff!important;line-height:1.1}
.pg-hdr-sb{font-size:5.2pt;color:#FFC107!important;letter-spacing:.09em;text-transform:uppercase;margin-top:.6mm}
.pg-hdr-r{text-align:right}
.pg-hdr-r p{font-size:6.2pt;color:#C8C8C8!important;margin-bottom:.4mm;line-height:1.3}
.pg-hdr-r strong{color:#fff!important;font-size:7pt}
.pg-hdr-pn{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-size:6.5pt;
  font-weight:800;color:#0A0A0A!important;background:#FFC107!important;
  padding:.5mm 2mm;border-radius:1mm;letter-spacing:.05em}

.pg-ftr{position:absolute;bottom:0;left:0;right:0;height:9mm;background:#FAFAFA!important;
  border-top:1px solid #E5E7EB!important;padding:0 10mm;display:flex;align-items:center;
  justify-content:space-between}
.pg-ftr p{font-size:5pt;color:#9A9A9A!important}
.pg-ftr .docid{font-family:'SF Mono',Menlo,Consolas,monospace;font-size:5pt;
  color:#6B6B6B!important;letter-spacing:.04em}
.pg-body{position:absolute;top:23mm;bottom:10mm;left:10mm;right:10mm;overflow:hidden}

/* ── SECTION LABEL ── */
.pl{font-family:'Barlow Condensed',sans-serif;font-size:7pt;font-weight:900;letter-spacing:.12em;
  text-transform:uppercase;color:#0A0A0A!important;margin:4mm 0 2.5mm;
  padding-bottom:1mm;border-bottom:.6mm solid #FFC107!important;display:flex;
  align-items:center;justify-content:space-between}
.pl:first-child{margin-top:0}
.pl span{font-size:6pt;font-weight:700;color:#9A9A9A!important;letter-spacing:.05em;text-transform:none}

/* ── DOC CONTROL ── */
.doc-control{display:flex!important;gap:5mm;border:.5mm solid #0A0A0A!important;
  border-radius:1.5mm;padding:3.5mm;margin-bottom:4mm;background:#fff!important;page-break-inside:avoid}
.dc-left{flex:0 0 58mm;text-align:center;border-right:1px solid #E5E7EB;padding-right:3.5mm}
.dc-barcode svg{width:100%;height:10mm}
.dc-id{font-family:'SF Mono',Menlo,monospace;font-size:8pt;font-weight:700;
  letter-spacing:.05em;color:#0A0A0A!important;margin-top:1.5mm}
.dc-idlabel{font-size:5pt;color:#9A9A9A!important;margin-top:.8mm;letter-spacing:.04em}
.dc-right{flex:1}
.dc-tbl{width:100%;border-collapse:collapse;font-size:6.3pt}
.dc-tbl th{text-align:left;width:23mm;padding:.9mm 2mm .9mm 0;color:#8A8A8A!important;
  font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:5.2pt;
  vertical-align:top;border-bottom:1px solid #F3F4F6}
.dc-tbl td{padding:.9mm 0;color:#1A1A1A!important;vertical-align:top;border-bottom:1px solid #F3F4F6}

/* ── SUMMARY TILES ── */
.p-sum{display:flex!important;gap:2.5mm;margin-bottom:4mm}
.p-sum-c{flex:1;background:#FFFDF5!important;border:.4mm solid #FFE08A!important;
  border-radius:1.5mm;padding:3mm 1.5mm;text-align:center}
.p-sum-c:nth-child(1){background:#F0FDF4!important;border-color:#BBF7D0!important}
.p-sum-c:nth-child(4){background:#FEF2F2!important;border-color:#FECACA!important}
.p-sum-n{font-family:'Barlow Condensed',sans-serif;font-size:15pt;font-weight:900;
  color:#B8860B!important;line-height:1}
.p-sum-c:nth-child(1) .p-sum-n{color:#15803D!important}
.p-sum-c:nth-child(4) .p-sum-n{color:#B91C1C!important}
.p-sum-l{font-size:5pt;font-weight:800;color:#7A7A7A!important;text-transform:uppercase;
  letter-spacing:.06em;margin-top:1mm}

.p-prof{background:#F9FAFB!important;border-left:.8mm solid #FFC107!important;
  border-radius:0 1.5mm 1.5mm 0;padding:3mm 3.5mm;font-size:6.4pt;color:#3A3A3A!important;
  line-height:1.75;margin-bottom:4mm}
.p-prof strong{color:#0A0A0A!important;font-weight:800}

/* ── EVIDENCE TABLE ── */
.clin-tbl{width:100%;border-collapse:collapse;font-size:6.3pt;margin-bottom:4mm}
.clin-tbl thead th{background:#0A0A0A!important;color:#FFC107!important;
  font-family:'Barlow Condensed',sans-serif;font-size:5.6pt;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;padding:2mm;text-align:left}
.clin-tbl td{padding:1.9mm 2mm;border-bottom:1px solid #EDEDED;vertical-align:top;
  color:#2A2A2A!important;line-height:1.45}
.clin-tbl tr:nth-child(even) td{background:#FBFBFB!important}
.clin-tbl .g{font-weight:900;text-align:center;width:7mm;font-size:7pt}
.g-A{background:#DCFCE7!important;color:#14532D!important}
.g-B{background:#DBEAFE!important;color:#1E3A8A!important}
.g-C{background:#FEF3C7!important;color:#78350F!important}
.g-D{background:#F3F4F6!important;color:#4B5563!important}
.g-X{background:#FEE2E2!important;color:#7F1D1D!important}

/* ── REGISTERS ── */
.reg{border:.4mm solid #E5E7EB!important;border-radius:1.5mm;margin-bottom:3.5mm;
  page-break-inside:avoid;overflow:hidden}
.reg-h{background:#F7F7F7!important;border-bottom:.4mm solid #E5E7EB!important;padding:2mm 3mm;
  font-family:'Barlow Condensed',sans-serif;font-size:6.4pt;font-weight:900;letter-spacing:.1em;
  text-transform:uppercase;color:#0A0A0A!important}
.reg-h.crit{background:#FEF2F2!important;color:#991B1B!important;border-color:#FECACA!important}
.reg-b{padding:2.5mm 3mm}
.reg-r{display:flex;gap:3mm;padding:1.5mm 0;border-bottom:1px solid #F5F5F5;font-size:6.3pt}
.reg-r:last-child{border-bottom:none}
.reg-k{flex:0 0 32mm;font-weight:800;color:#0A0A0A!important}
.reg-v{flex:1;color:#3A3A3A!important;line-height:1.5}
.sev{display:inline-block;padding:.4mm 1.6mm;border-radius:1mm;font-size:5pt;font-weight:900;
  text-transform:uppercase;margin-right:1.5mm;letter-spacing:.05em}
.sev-major{background:#FEE2E2!important;color:#991B1B!important}
.sev-moderate{background:#FFEDD5!important;color:#9A3412!important}
.sev-minor{background:#F3F4F6!important;color:#4B5563!important}

/* ── TIMING ── */
.p-timing{display:flex!important;gap:2.5mm;margin-bottom:4mm}
.pt-c{flex:1;border:.4mm solid #E5E7EB!important;border-radius:1.5mm;overflow:hidden;background:#fff!important}
.pt-h{background:#0A0A0A!important;color:#FFC107!important;font-family:'Barlow Condensed',sans-serif;
  font-size:5.4pt;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:1.8mm 2.5mm}
.pt-b{padding:2mm 2.5mm}
.pt-i{border-bottom:1px solid #F5F5F5;padding:1.5mm 0}
.pt-i:last-child{border-bottom:none}
.pt-in{font-size:6.3pt;font-weight:800;color:#0A0A0A!important;line-height:1.3}
.pt-id{font-size:5.4pt;color:#7A7A7A!important;margin-top:.4mm;line-height:1.35}
.pt-e{font-size:5.4pt;color:#C0C0C0!important;font-style:italic}

/* ── PROTOCOL ── */
.p-wtbl{width:100%;border-collapse:collapse;font-size:6pt;margin-bottom:4mm}
.p-wtbl th{background:#0A0A0A!important;color:#FFC107!important;font-family:'Barlow Condensed',sans-serif;
  font-size:5.4pt;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:2mm;text-align:left}
.p-wtbl td{padding:1.9mm 2mm;border-bottom:1px solid #F0F0F0;vertical-align:top;
  color:#2A2A2A!important;line-height:1.45}
.p-wtbl tr:nth-child(even) td{background:#FBFBFB!important}
.pwn{font-family:'Barlow Condensed',sans-serif;font-weight:900;color:#B8860B!important;font-size:9pt}
.pwp{font-weight:800;font-size:6.2pt;color:#0A0A0A!important;display:block;margin-bottom:.8mm}
.ppill{display:inline-block;padding:.4mm 1.8mm;border-radius:1mm;font-size:4.8pt;
  font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.pp-load{background:#DBEAFE!important;color:#1D4ED8!important}
.pp-build{background:#DCFCE7!important;color:#15803D!important}
.pp-peak{background:#FEF9C3!important;color:#854D0E!important}
.pp-eval{background:#FFEDD5!important;color:#9A3412!important}

.p-evref{background:#F9FAFB!important;border:.4mm solid #E5E7EB!important;border-radius:1.5mm;
  padding:2.5mm 3mm;font-size:5.9pt;color:#3A3A3A!important;line-height:1.65;margin-bottom:3mm}
.p-supp{font-size:5.7pt;color:#5A5A5A!important;line-height:1.55}
.p-supp-r{padding:1mm 0;border-bottom:1px solid #F5F5F5}

.p-notice{background:#FEF2F2!important;border-left:.7mm solid #DC2626!important;
  border-radius:0 1.5mm 1.5mm 0;padding:2.2mm 3mm;margin-bottom:2mm}
.p-notice.mod{background:#FFF7ED!important;border-left-color:#EA580C!important}
.p-notice-h{font-size:5.4pt;font-weight:900;text-transform:uppercase;letter-spacing:.07em;
  color:#991B1B!important;margin-bottom:.8mm}
.p-notice.mod .p-notice-h{color:#9A3412!important}
.p-notice-b{font-size:6.1pt;color:#4A1515!important;line-height:1.55}
.p-notice.mod .p-notice-b{color:#5A2A10!important}

/* ── DISCLAIMER + SIGNATURE ── */
.p-disc{background:#FFFBFB!important;border:.4mm solid #FECACA!important;border-radius:1.5mm;padding:3.5mm 4mm}
.p-disc h4{font-family:'Barlow Condensed',sans-serif;font-size:6.2pt;font-weight:900;
  letter-spacing:.09em;text-transform:uppercase;color:#B91C1C!important;margin-bottom:2mm}
.p-disc p{font-size:5.6pt;color:#3A3A3A!important;line-height:1.62;margin-bottom:1.4mm}
.p-disc strong{color:#0A0A0A!important;font-weight:800}

.sig-block{border:.5mm solid #0A0A0A!important;border-radius:1.5mm;padding:4mm;
  margin-top:4mm;background:#fff!important;page-break-inside:avoid}
.sig-h{font-family:'Barlow Condensed',sans-serif;font-size:8pt;font-weight:900;letter-spacing:.09em;
  text-transform:uppercase;color:#0A0A0A!important;margin-bottom:2mm;
  padding-bottom:1.5mm;border-bottom:.5mm solid #FFC107!important}
.sig-note{font-size:6pt;color:#4A4A4A!important;line-height:1.55;margin-bottom:4mm}
.sig-tbl{width:100%;border-collapse:separate;border-spacing:5mm 4mm}
.sig-cell{width:50%;vertical-align:bottom}
.sig-line{border-bottom:.4mm solid #0A0A0A!important;height:8mm}
.sig-lbl{font-size:5.2pt;color:#8A8A8A!important;text-transform:uppercase;letter-spacing:.06em;padding-top:1mm}
.sig-foot{display:flex;justify-content:space-between;font-size:5.2pt;color:#9A9A9A!important;
  border-top:1px solid #E5E7EB;padding-top:1.8mm;margin-top:2mm}

.two-col{display:flex!important;gap:5mm}
.two-col>div{flex:1}
.ev-r{display:flex!important;align-items:center;gap:2.5mm;margin-bottom:1.5mm}
.ev-lbl{font-size:5.8pt;font-weight:800;color:#2A2A2A!important;min-width:16mm}
.ev-track{flex:1;height:2.6mm;background:#F3F4F6!important;border-radius:1.3mm;overflow:hidden}
.ev-fill{height:100%;border-radius:1.3mm}
.ev-cnt{font-size:5.4pt;color:#7A7A7A!important;min-width:5mm;text-align:right;font-weight:700}
}
