/* Additions for the session database and report. Same tokens, same flat look: thin blue lines, no shadows. */
.hdrbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.whoami{font-size:13px;color:var(--on-band-muted)}
.weeknav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.weeknav .lbl{font-weight:600;color:var(--on-band)}
.warn{background:#FFF7E6;border:1px solid #F0C36D;color:#5C3D00;border-radius:4px;padding:8px 12px;font-size:13px;margin-top:10px}
.d.nr{border-color:#98A2B3;border-style:dashed;color:var(--muted)} .d.nr i{color:#667085}
.d.unpl{border-color:var(--mod);border-style:dashed} .d.unpl i{color:var(--mod)}
.d.none{border-color:var(--rule);color:var(--muted)}
.legend .nr i{color:var(--l-plan)} .legend .unpl i{color:var(--mod)}
.badge{display:inline-block;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:99px;border:1px solid var(--rule);color:var(--muted);background:var(--bg);white-space:nowrap}
.badge.met{background:#E8F5EE;border-color:#2f7d4f;color:#1f5c38}
.badge.not-met{background:#FBEAE8;border-color:#b4382f;color:#8a2a23}
.badge.incomplete{background:#FFF4DE;border-color:#b7791f;color:#7a5113}
.badge.no-data,.badge.no-record,.badge.cannot-combine{background:#F2F4F7;border-color:#98A2B3;color:#475467}
.badge.unplanned{background:#FFF4DE;border-color:#b7791f;color:#7a5113}
.badge.done{background:#E8F5EE;border-color:#2f7d4f;color:#1f5c38}
.badge.upcoming{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.badge.draft{background:#FFF4DE;border-color:#b7791f;color:#7a5113;font-size:13px}
.badge.final{background:#E8F5EE;border-color:#2f7d4f;color:#1f5c38;font-size:13px}
.badge.corr{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.blocklabel{display:inline-block;font-family:var(--f-display);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:4px;margin-bottom:8px}
.blocklabel.measured{background:var(--accent);color:#fff}
.blocklabel.coach{background:#1F2430;color:#fff}
.coachbox{border-left:4px solid #1F2430}
.measbox{border-left:4px solid var(--accent)}
.mt{margin-top:16px}
.small{font-size:12.5px}
.muted{color:var(--muted)}
.right{text-align:right}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.between{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:10px}
.form label,.fl{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
input[type=text],input[type=number],input[type=date],select,.sheet input,.sheet select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:8px 10px;min-width:0}
.panel input,.panel select{font:inherit}
.hist{font-size:12.5px;color:var(--muted);margin:4px 0 0;padding-left:16px}
.sesscard{border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:4px;padding:10px 12px;margin-top:10px}
.sesscard .top{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-weight:600}
.kvs{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13.5px;margin-top:6px}
.kvs span{color:var(--muted)}
tr.click{cursor:pointer} tr.click:hover td{background:var(--accent-soft)}
.pagehead{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:16px;margin-top:16px;color:var(--ink)}
.pagehead .sub{color:var(--muted)}
.cards2{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.stat{border:1px solid var(--line);border-radius:6px;padding:12px;background:var(--surface)}
.stat .big{font-weight:600;font-size:24px}
.repath{break-before:page;page-break-before:always}
.report .panel + .panel{margin-top:16px}
.exrows .exrow{display:grid;grid-template-columns:2.2fr .7fr 1fr 1.2fr;gap:6px;margin-top:6px}
#toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:#1F2430;color:#fff;padding:10px 16px;border-radius:6px;font-size:14px;z-index:60;display:none;max-width:90vw}
#toast.show{display:block}
#toast.err{background:#8a2a23}
.login{max-width:560px;margin:40px auto}
.acct{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:12px 14px;margin-top:8px;color:var(--ink)}
.preview-ok td:first-child{border-left:3px solid #2f7d4f}
.preview-bad td:first-child{border-left:3px solid #b4382f}
.preview-fix td:first-child{border-left:3px solid #b7791f}
.preview-same td:first-child{border-left:3px solid #98A2B3}
.chart{width:100%;height:auto}
@media (max-width:760px){
  .exrows .exrow{grid-template-columns:1fr 1fr}
  .hdrbar{width:100%}
}
@media print{
  @page{size:landscape;margin:12mm}
  body{background:#fff!important;background-image:none!important;padding:0;color:#000;font-size:11.5px}
  .noprint,#layer,#layer2,#toast{display:none!important}
  header.top::before{display:none}
  header.top h1,header.top .sub,.pagehead,.pagehead .sub{color:#000!important}
  .panel{break-inside:auto}
  tr,.stat{break-inside:avoid}
  .mt{margin-top:8px}
  .scroll{overflow:visible}
  table{font-size:10.5px}
  .draftmark{position:fixed;top:40%;left:0;right:0;text-align:center;font-size:110px;font-weight:800;color:rgba(183,121,31,.12);transform:rotate(-20deg);z-index:-1}
}
@media screen{.draftmark{display:none}}
.weekbar .weeknav .lbl{color:var(--wk-fg)}
.weekbar .weeknav .btn{padding:4px 10px}
.report .weeknav .lbl,.pagehead + .row .lbl{color:var(--on-page)}
.hdrbar .whoami{color:var(--on-page-muted)}
header.top .hdrbar{flex-basis:100%;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
header.top .hdrbar .whoami{margin-left:auto}
header.top .weeknav .lbl{color:var(--on-band)}
.panel .weeknav .lbl{color:var(--ink)}

/* ---------- flair: same layout and data, more presence ---------- */
/* board cards: big faint jersey number, accent edge, filled stage pill */
.card{position:relative;overflow:hidden;border-left:5px solid var(--accent)}
.card > *{position:relative}
.card .cjersey{position:absolute;right:10px;top:-10px;font-family:var(--f-display);font-weight:800;font-size:84px;line-height:1;color:var(--accent);opacity:.06;pointer-events:none}
.card .avatar{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--accent)}
.stage,.meet .stagechip{background:var(--accent);border-color:var(--accent);color:#FFFFFF;font-weight:600}
.d.done{background:color-mix(in srgb,var(--done) 9%,var(--surface))}
.d.done,.d.mod,.d.plan,.d.nr,.d.unpl{border-top-width:3px}

/* meeting view */
.meet .mhero{position:relative;display:flex;gap:28px;align-items:center;margin-top:20px;flex-wrap:wrap}
.meet .mjersey{position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--f-display);font-weight:800;font-size:clamp(140px,22vw,300px);line-height:.8;color:var(--on-page);opacity:.07;pointer-events:none}
.meet .avatar{box-shadow:0 0 0 4px var(--page),0 0 0 8px var(--on-page)}
.meet .mchips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.meet .mchip{font-size:clamp(15px,1.6vw,20px);font-weight:600;padding:6px 14px;border-radius:99px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}
.meet .mchip.num{font-variant-numeric:tabular-nums}
.meet .mbox{box-shadow:inset 0 5px 0 var(--accent)}
.meet .mdots{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.meet .mdot{font-size:13px;font-weight:700;padding:4px 10px;border-radius:99px;border:2px solid var(--rule);color:var(--muted);background:var(--surface)}
.meet .mdot.done{background:var(--done);border-color:var(--done);color:#FFFFFF}
.meet .mdot.plan{border-color:var(--accent);color:var(--accent)}
.meet .mdot.nr{border-style:dashed}
.meet .mdot.unpl{border-color:var(--mod);color:var(--mod);border-style:dashed}
.meet .mtile{--bar:var(--accent);box-shadow:inset 0 6px 0 var(--bar);padding-top:20px}
.meet .mtile.ev-met{--bar:var(--done)}
.meet .mtile.ev-not-met{--bar:var(--miss)}
.meet .mtile.ev-incomplete{--bar:var(--mod)}
.meet .mtile.ev-no-data,.meet .mtile.ev-cannot-combine{--bar:var(--plan)}
.meet .mtiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.meet .mtile{max-width:440px}
.meet .mchip.stagechip{background:#00274D;border-color:#00274D;color:#FFFFFF}
.meet .mgoalrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 6px}
.meet .mgoal{font-size:14px;color:var(--muted);font-weight:500}
.gbar{position:relative;height:10px;border-radius:99px;background:var(--bg);border:1px solid var(--line);margin-top:10px;overflow:hidden}
.gbar .gzone{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--done) 22%,transparent)}
.gbar .gfill{position:absolute;left:0;top:2px;bottom:2px;border-radius:99px;background:var(--accent)}
.ev-met .gbar .gfill{background:var(--done)}
.ev-not-met .gbar .gfill{background:var(--miss)}
.ev-incomplete .gbar .gfill{background:var(--mod)}
.meet .strip .d{border-top-width:4px}
@media (max-width:700px){.card .cjersey{font-size:72px}.meet .mjersey{display:none}.meet .mchip{font-size:14px}}
@media print{.card .cjersey,.meet .mjersey{display:none}}
