@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/barlow-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/barlow-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/barlow-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/barlow-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/barlow-condensed-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/barlow-condensed-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/barlow-condensed-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/barlow-condensed-latin-800-normal.woff2') format('woff2');}

:root{
  --bg:#EDF2F5;--surface:#FFFFFF;--surface-2:#F4F7F9;--text:#14263A;--muted:#5A6A7B;--line:#D3DCE3;
  --accent:#1F5F99;--accent-ink:#FFFFFF;--red:#C62F3A;--yellow:#E8A90E;--yellow-ink:#1B1B1B;--da:#44546A;--da-o:#ED7D31;
  --ok:#1E7A4C;--warn:#B4441C;
  --cond:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--sans:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){--bg:#0C1826;--surface:#13243A;--surface-2:#182C45;--text:#E6EEF4;--muted:#93A4B5;--line:#24394F;--accent:#5FA3E0;--accent-ink:#081521;color-scheme:dark;}
}
:root[data-theme="dark"]{--bg:#0C1826;--surface:#13243A;--surface-2:#182C45;--text:#E6EEF4;--muted:#93A4B5;--line:#24394F;--accent:#5FA3E0;--accent-ink:#081521;color-scheme:dark;}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);}
html{scroll-padding-top:env(safe-area-inset-top,0px);}
*,*::before,*::after{box-sizing:inherit;}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.45;}
button,input,select{font:inherit;color:inherit;}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;}
img,svg{max-width:100%;}
.lg{display:block;}.lg-d{display:none !important;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .lg-l{display:none !important;}:root:not([data-theme="light"]) .lg-d{display:block !important;}}
:root[data-theme="dark"] .lg-l{display:none !important;}:root[data-theme="dark"] .lg-d{display:block !important;}

/* App bar */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface);}
.appbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border-bottom:1px solid var(--line);}
.appbar-in{max-width:1400px;margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:14px;}
.brand .sep{width:1px;height:28px;background:var(--line);}
.tabs{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap;}
.tab{border:0;background:transparent;padding:8px 14px;border-radius:8px;font-weight:600;cursor:pointer;color:var(--muted);}
.tab:hover{background:var(--surface-2);color:var(--text);}
.tab[aria-current="page"]{background:var(--accent);color:var(--accent-ink);}
main{max-width:1400px;margin:0 auto;padding:24px 20px 60px;}
.lede{color:var(--muted);margin:0 0 16px;max-width:75ch;}
h2.view-title{font-family:var(--cond);font-size:34px;font-weight:700;margin:0 0 4px;letter-spacing:.2px;}

/* Generic */
.btn{border:1px solid var(--line);background:var(--surface);padding:9px 14px;border-radius:8px;font-weight:600;cursor:pointer;}
.btn:hover{background:var(--surface-2);}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);}
.btn.danger{color:var(--warn);}
.btn.confirm{background:var(--warn);border-color:var(--warn);color:#fff;}
.btn:disabled{opacity:.45;cursor:not-allowed;}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;}
.panel h3{font-family:var(--cond);font-size:24px;font-weight:700;margin:0 0 12px;}
.muted{color:var(--muted);}
.small{font-size:14px;}
label.f{display:grid;gap:4px;font-size:14px;font-weight:600;color:var(--muted);}
label.f input,label.f select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);font-weight:500;color:var(--text);}
.scroll-x{overflow-x:auto;}
table.t{border-collapse:collapse;width:100%;font-size:15px;}
table.t th,table.t td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line);white-space:nowrap;}
table.t th{font-size:13px;color:var(--muted);font-weight:600;}
table.t td.num,table.t th.num{text-align:right;font-variant-numeric:tabular-nums;}

/* Stage (groot scherm) */
.stage-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:#071a31;}
.stage{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:0 0;background:#0B2340;color:#EAF3F8;font-family:var(--sans);
  display:grid;grid-template-rows:150px 1fr 56px;padding:0 56px;overflow:hidden;}
.stage::after{content:"";position:absolute;right:-260px;bottom:-260px;width:760px;height:760px;border-radius:50%;
  background:radial-gradient(circle,transparent 0 60px,rgba(255,255,255,.035) 60px 120px,transparent 120px 200px,rgba(255,255,255,.035) 200px 300px,transparent 300px 380px,rgba(255,255,255,.03) 380px);pointer-events:none;}
.st-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;position:relative;z-index:1;}
.st-head .r{justify-self:end;}
.st-title{text-align:center;}
.st-title h1{font-family:var(--cond);font-size:66px;line-height:1;margin:0;font-weight:800;letter-spacing:.5px;}
.st-title p{margin:8px 0 0;font-size:28px;color:#9DB7CB;font-weight:500;}
.st-body{display:grid;grid-template-columns:1fr 500px;gap:32px;padding:6px 0 22px;min-height:0;position:relative;z-index:1;}
.lanes{display:grid;gap:20px;min-height:0;}
.lane{background:#12355F;border-radius:14px;padding:16px 26px 18px;display:grid;grid-template-rows:auto 1fr;min-height:0;overflow:hidden;position:relative;}
.lane.done{background:#10304F;}
.lane-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;}
.lane-no{font-family:var(--cond);font-size:30px;font-weight:700;color:#9DB7CB;}
.lane-no b{color:#EAF3F8;font-weight:700;}
.lane-label{font-family:var(--cond);font-size:26px;font-weight:600;color:#F5C54B;margin-left:14px;}
.timer{font-family:var(--cond);font-size:44px;font-weight:700;font-variant-numeric:tabular-nums;}
.timer.low{color:#F5C54B;}
.timer.over{color:#FF8A8A;}
.badge{font-family:var(--cond);font-size:24px;font-weight:600;padding:2px 12px;border-radius:6px;background:rgba(255,255,255,.1);color:#CFE0EC;}
.badge.live{background:#1E7A4C;color:#fff;}
.sb{display:grid;grid-template-columns:44px minmax(0,1fr) auto 130px;column-gap:18px;row-gap:8px;align-content:center;align-items:center;}
.sb .hd{font-size:17px;color:#7F9BB2;text-align:center;font-variant-numeric:tabular-nums;}
.sb .ends{display:flex;gap:6px;}
.sb .ends .hd{width:46px;}
.cell{width:46px;height:46px;border-radius:7px;border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;font-family:var(--cond);font-size:28px;font-weight:700;color:transparent;}
.cell.red{background:var(--red);border-color:var(--red);color:#fff;}
.cell.yellow{background:#F0B323;border-color:#F0B323;color:#1b1b1b;}
.cell.blank{color:#6F8CA4;}
.cell.zero{color:#47647D;border-color:rgba(255,255,255,.08);}
.tname{font-family:var(--cond);font-size:46px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.total{font-family:var(--cond);font-size:100px;font-weight:800;line-height:.9;text-align:right;font-variant-numeric:tabular-nums;}
.trow-win .tname::after{content:"  wint";font-size:.55em;color:#7CD6A3;font-weight:600;}
.next{font-size:20px;color:#7F9BB2;margin-top:6px;}
.lane-idle{display:grid;place-items:center;font-family:var(--cond);font-size:36px;color:#5E7C95;}
.dense .lane{padding:12px 20px 14px;}
.dense .lane-no{font-size:24px;}
.dense .lane-label{font-size:22px;}
.dense .timer{font-size:34px;}
.dense .badge{font-size:20px;}
.dense .sb{grid-template-columns:34px minmax(0,1fr) auto 84px;column-gap:12px;row-gap:6px;}
.dense .tname{font-size:30px;}
.dense .total{font-size:64px;}
.dense .cell{width:30px;height:30px;font-size:19px;border-radius:5px;}
.dense .sb .ends{gap:4px;}
.dense .sb .ends .hd{width:30px;font-size:14px;}
.dense .next{font-size:16px;}
.stand{background:#0F2D52;border-radius:14px;padding:22px 24px;display:flex;flex-direction:column;min-height:0;}
.stand h2{font-family:var(--cond);font-size:34px;margin:0 0 4px;font-weight:700;}
.stand .sub{font-size:19px;color:#7F9BB2;margin-bottom:12px;}
.stand table{width:100%;border-collapse:collapse;font-size:25px;}
.stand.compact table{font-size:19px;}
.stand th{font-size:17px;color:#7F9BB2;font-weight:600;text-align:right;padding:4px 6px;}
.stand th:nth-child(2){text-align:left;}
.stand td{padding:7px 6px;border-top:1px solid rgba(255,255,255,.08);text-align:right;font-variant-numeric:tabular-nums;}
.stand.compact td{padding:4px 6px;}
.stand td.nm{text-align:left;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;}
.stand td.pos{color:#7F9BB2;width:34px;}
.stand td.pts{font-family:var(--cond);font-weight:800;font-size:1.25em;color:#F5C54B;}
.stand tr.top td.pos{color:#F5C54B;}
.st-foot{display:flex;justify-content:space-between;align-items:center;color:#7F9BB2;font-size:20px;position:relative;z-index:1;}
.st-foot .live-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:#3BC37C;margin-right:10px;vertical-align:1px;}
@media (prefers-reduced-motion:no-preference){.st-foot .live-dot{animation:pulse 2s ease-in-out infinite;}@keyframes pulse{50%{opacity:.35}}}

/* Kiosk */
body.kiosk .appbar{display:none;}
body.kiosk main{max-width:none;padding:0;}
body.kiosk .display-extra{display:none;}
body.kiosk .stage-wrap{position:fixed;inset:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px) 0;aspect-ratio:auto;border-radius:0;z-index:20;}
.kiosk-exit{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;opacity:.15;}
.kiosk-exit:hover,.kiosk-exit:focus-visible{opacity:1;}
.display-extra{margin-top:14px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;}

/* Invoer */
.invoer-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start;}
@media (max-width:900px){.invoer-grid{grid-template-columns:1fr;}}
.phone{width:100%;max-width:400px;justify-self:center;border:10px solid #1C2A39;border-radius:38px;background:var(--surface);overflow:hidden;box-shadow:0 18px 50px rgba(10,30,50,.18);}
.ph-top{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 10px;border-bottom:1px solid var(--line);}
.ph-body{padding:16px;display:grid;gap:14px;}
.ph-meta{font-size:14px;color:var(--muted);font-weight:600;}
.score2{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;}
.score2 > div{padding:12px 14px;}
.score2 .a{background:var(--red);color:#fff;}
.score2 .b{background:#F0B323;color:#1b1b1b;text-align:right;}
.score2 .n{font-family:var(--cond);font-size:20px;font-weight:600;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.score2 .s{font-family:var(--cond);font-size:54px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;}
.ph-timer{display:flex;justify-content:space-between;align-items:center;background:var(--surface-2);border-radius:10px;padding:8px 12px;}
.ph-timer .tm{font-family:var(--cond);font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;}
.ph-timer .tm.over{color:var(--warn);}
.q{font-weight:700;font-size:15px;margin:0 0 8px;}
.pick{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.pick .wide{grid-column:1 / -1;}
.pbtn{border:2px solid var(--line);background:var(--surface);border-radius:10px;padding:14px 10px;font-weight:700;cursor:pointer;font-size:16px;line-height:1.15;}
.pbtn.red[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:#fff;}
.pbtn.yellow[aria-pressed="true"]{background:#F0B323;border-color:#F0B323;color:#1b1b1b;}
.pbtn.gray[aria-pressed="true"]{background:var(--text);border-color:var(--text);color:var(--surface);}
.pbtn .dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:0;}
.stones{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;}
.stones .pbtn{padding:12px 0;font-family:var(--cond);font-size:24px;}
.stones .pbtn[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);}
.big{width:100%;padding:15px;font-size:17px;border-radius:10px;}
.endlist{display:flex;flex-wrap:wrap;gap:6px;}
.chip{font-size:13px;font-weight:700;padding:4px 8px;border-radius:6px;background:var(--surface-2);border:1px solid var(--line);}
.chip.red{background:var(--red);border-color:var(--red);color:#fff;}
.chip.yellow{background:#F0B323;border-color:#F0B323;color:#1b1b1b;}
.banner{border-radius:10px;padding:12px 14px;font-weight:600;background:var(--surface-2);border:1px solid var(--line);}
.banner.ok{border-color:var(--ok);}
.side-notes{display:grid;gap:16px;}
.side-notes ul{margin:0;padding-left:20px;}
.side-notes li{margin:4px 0;}

/* Beheer */
.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
@media (max-width:900px){.admin-grid{grid-template-columns:1fr;}}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.fgrid .full{grid-column:1 / -1;}
.teamlist{display:grid;gap:6px;max-height:420px;overflow:auto;}
.teamrow{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;}
.teamrow input{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);}
.teamrow .ix{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;}
.rounds{display:grid;gap:8px;}
.rnd{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;}
.rnd.cur{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);}
.st{font-size:13px;font-weight:700;padding:2px 8px;border-radius:5px;background:var(--surface-2);}
.st.ok{color:var(--ok);}
.st.live{color:var(--accent);}
.note{font-size:14px;color:var(--muted);margin:10px 0 0;}
.pin{font-family:var(--cond);font-size:22px;font-weight:700;letter-spacing:2px;font-variant-numeric:tabular-nums;}
.log{max-height:260px;overflow:auto;}

/* Einduitslag / print */
.doc{background:#fff;color:#1A2633;max-width:820px;margin:0 auto;padding:44px 52px;border-radius:6px;box-shadow:0 10px 40px rgba(10,30,50,.12);}
.doc-head{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #44546A;padding-bottom:16px;}
.doc h1{font-family:var(--cond);font-size:40px;margin:22px 0 2px;font-weight:800;color:#1A2633;}
.doc .meta{color:#5A6A7B;margin:0 0 22px;}
.doc h2{font-family:var(--cond);font-size:24px;margin:28px 0 8px;color:#44546A;}
.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 10px;}
.podium div{border:1px solid #D3DCE3;border-radius:8px;padding:12px 14px;}
.podium .p{font-family:var(--cond);font-size:30px;font-weight:800;color:#ED7D31;line-height:1;}
.podium .n{font-weight:700;margin-top:4px;}
.doc table{border-collapse:collapse;width:100%;font-size:14px;}
.doc th,.doc td{padding:6px 8px;border-bottom:1px solid #E1E7EC;text-align:left;}
.doc th{color:#5A6A7B;font-size:12px;font-weight:600;}
.doc td.num,.doc th.num{text-align:right;font-variant-numeric:tabular-nums;}
.doc .ends{color:#5A6A7B;font-size:12px;}
.doc-foot{margin-top:30px;padding-top:12px;border-top:1px solid #D3DCE3;font-size:12px;color:#5A6A7B;display:flex;justify-content:space-between;gap:16px;}
.doc-actions{max-width:820px;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
@page{size:A4;margin:14mm;}
@media print{
  body{background:#fff;}
  body::before,.appbar,.doc-actions,.no-print{display:none !important;}
  main{padding:0;max-width:none;}
  .doc{box-shadow:none;padding:0;max-width:none;}
  .doc h2{break-after:avoid;}
  .doc table{break-inside:auto;}
  .doc tr{break-inside:avoid;}
}


.pinput{font-family:var(--cond) !important;font-size:34px !important;letter-spacing:10px;text-align:center;}
.ph-user{display:flex;justify-content:space-between;align-items:center;background:var(--surface-2);padding:8px 16px;font-weight:700;font-size:14px;border-bottom:1px solid var(--line);}
.linkbtn{border:0;background:none;color:var(--accent);font-weight:700;cursor:pointer;padding:4px 2px;}
.err{color:var(--warn);font-weight:600;font-size:14px;margin:0;}
.ph-h{font-family:var(--cond);font-size:28px;margin:0;font-weight:700;}
.evs{display:grid;gap:8px;}
.ev{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:10px;}
.ev.live{border-color:var(--ok);box-shadow:inset 3px 0 0 var(--ok);}
.ev .d{font-weight:700;line-height:1.25;}
.ev .d small{display:block;color:var(--muted);font-weight:500;}
.ev .nm{font-weight:700;}
.ev .info{font-size:14px;color:var(--muted);}
@media (max-width:700px){.ev{grid-template-columns:1fr;}}
.agenda-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;align-items:start;}
@media (max-width:1000px){.agenda-grid{grid-template-columns:1fr;}}
.stack{display:grid;gap:20px;}
.empty{color:var(--muted);padding:6px 0;margin:0;}
.idle{display:grid;place-items:center;text-align:center;align-content:center;gap:14px;position:relative;z-index:1;}
.idle .k{font-size:36px;color:#9DB7CB;}
.idle h2{font-family:var(--cond);font-size:124px;margin:0;font-weight:800;line-height:1;}
.idle .w{font-size:50px;color:#F5C54B;font-family:var(--cond);font-weight:600;}
.idle .m{font-size:30px;color:#9DB7CB;}
.ed-head{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:18px;}
.ed-head label{min-width:320px;}
.hof td:first-child{font-weight:700;}
.rowmode .lane{grid-template-columns:190px minmax(0,1fr);grid-template-rows:none;align-items:stretch;column-gap:30px;padding:18px 30px;}
.rowmode .lane-top{flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;border-right:1px solid rgba(255,255,255,.12);padding-right:24px;}
.rowmode .lane-no{font-size:26px;line-height:1;}
.rowmode .lane-no b{display:block;font-size:84px;line-height:.9;margin-top:4px;}
.rowmode .lane-label{display:block;margin:10px 0 0;}
.rowmode .lane-top > div:last-child,.rowmode .lane-top > .timer,.rowmode .lane-top > .badge{align-self:flex-start;}
.rowmode .lane > div:last-child{display:flex;flex-direction:column;justify-content:center;min-height:0;}
.rowmode .total{font-size:88px;}
.rowmode .tname{font-size:46px;}
.rowmode .cell{width:42px;height:42px;font-size:26px;}
.rowmode .sb .ends{gap:5px;}.rowmode .sb .ends .hd{width:42px;}
.rowmode .sb{column-gap:16px;}
.ad-stage.img{padding:0;display:block;}
.ad-stage.img::after{display:none;}
.ad-img{width:100%;height:100%;object-fit:contain;display:block;}
.ad-txt{display:grid;align-content:center;justify-items:center;text-align:center;gap:30px;padding:0 120px;position:relative;z-index:1;}
.ad-txt h2{font-family:var(--cond);font-size:124px;font-weight:800;line-height:1;margin:0;}
.ad-txt p{font-size:46px;margin:0;opacity:.9;max-width:1500px;line-height:1.25;}
.spbar{display:flex;align-items:center;gap:16px;}
.sp-l{color:#7F9BB2;font-size:18px;}
.sp-logo{background:#fff;border-radius:8px;padding:4px 12px;display:flex;align-items:center;height:44px;}
.sp-logo img{height:34px;width:auto;max-width:220px;object-fit:contain;display:block;}
.sp-logo.light{border:1px solid var(--line);}
.sp-n{color:#EAF3F8;font-weight:600;font-size:22px;}
.ad-thumb{width:192px;aspect-ratio:16/9;overflow:hidden;position:relative;border-radius:6px;flex:none;background:#0B2340;}
.ad-thumb.big{width:100%;max-width:480px;}
.ad-thumb-in{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:0 0;}
.ad-thumb .ad-thumb-in{transform:scale(.1);}
.ad-thumb.big .ad-thumb-in{transform:scale(var(--s,.25));}
.adrow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line);}
.adrow:first-child{border-top:0;}
.adrow.off .ad-thumb{opacity:.4;}
.adrow .nm{font-weight:700;}
.adrow .row .btn{padding:5px 9px;font-size:13px;}
.chk{display:flex;gap:10px;align-items:flex-start;font-weight:600;cursor:pointer;}
.chk input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent);}
.chk small{display:block;font-weight:500;color:var(--muted);}
/* menu */
.appbar{box-shadow:0 1px 0 var(--line),0 6px 18px rgba(15,40,70,.05);border-bottom:0;}
.appbar-in{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:0 20px;min-height:66px;}
.brand{gap:12px;}
.tabs{margin:0;justify-self:center;display:flex;align-items:stretch;gap:2px;flex-wrap:nowrap;align-self:stretch;}
.navgrp{display:flex;align-items:stretch;gap:2px;}
.tab{position:relative;display:flex;align-items:center;gap:8px;padding:0 13px;border-radius:0;background:transparent;color:var(--muted);font-weight:600;font-size:15px;white-space:nowrap;}
.tab svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.tab:hover{background:transparent;color:var(--text);}
.tab:hover::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--line);}
.tab[aria-current="page"]{background:transparent;color:var(--accent);}
.tab[aria-current="page"]::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--accent);}
.tab:focus-visible{outline-offset:-3px;border-radius:8px;}
.lockic{display:none;width:13px !important;height:13px !important;opacity:.55;margin-left:-3px;}
.nav-admin.locked .lockic{display:block;}
.navsep{width:1px;height:26px;background:var(--line);margin:0 10px;align-self:center;}
.who{justify-self:end;gap:10px;}
.who .av{width:32px;height:32px;border-radius:50%;background:var(--da);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700;flex:none;}
.who .nm{display:grid;line-height:1.15;}
.who .nm small{font-size:12px;}
.who .out{display:flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 10px;font-weight:600;font-size:13px;cursor:pointer;color:var(--muted);}
.who .out:hover{color:var(--text);background:var(--surface-2);}
.who .out svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.appbar-in{grid-template-columns:max-content minmax(0,1fr) max-content;max-width:1680px;}
.brand,.brand img,.brand svg{flex:none;}
.who .nm{white-space:nowrap;}
.who .out svg{min-width:15px;}
@media (max-width:1599px){.who .nm{display:none;}.who .out{padding:7px;}.who .out .ot{display:none;}}
@media (max-width:1400px){.tab .tl{display:none;}.tab{padding:0 14px;}.tab svg{width:21px;height:21px;}.who .nm{display:none;}}
@media (max-width:760px){
  .appbar-in{grid-template-columns:1fr auto;gap:8px 12px;padding:8px 14px 0;min-height:0;}
  .brand img{height:30px !important;}
  .tabs{grid-column:1 / -1;grid-row:2;justify-self:stretch;overflow-x:auto;scrollbar-width:none;min-height:54px;}
  .tabs::-webkit-scrollbar{display:none;}
  .tab{flex-direction:column;gap:3px;padding:6px 10px;font-size:11.5px;}
  .tab .tl{display:block;}
  .navsep{margin:0 4px;}
}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:20px;}
.card{background:#fff;color:#1A2633;border:1px solid #CBD5DD;border-radius:10px;aspect-ratio:182/126;padding:20px 26px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;gap:6px 24px;}
.card .lg-row{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;}
.card .bn{font-family:var(--cond);font-weight:800;font-size:88px;line-height:.95;color:#0B446D;align-self:center;}
.card .bn small{display:block;font-size:22px;font-weight:600;color:#5A6A7B;letter-spacing:.3px;}
.card .qr{align-self:center;width:190px;height:190px;}
.card .qr img,.card .qr canvas{width:190px !important;height:190px !important;display:block;}
.card .tx{grid-column:1 / -1;font-size:14px;line-height:1.35;color:#3A4A5A;}
.card .tx b{color:#1A2633;}
.card .url{font-size:10.5px;color:#7A8A99;word-break:break-all;}
.qr-missing{width:190px;height:190px;border:2px dashed #CBD5DD;display:grid;place-items:center;text-align:center;font-size:13px;color:#7A8A99;padding:10px;}
@media print{
  .cards{display:block;}
  .card{width:182mm;height:126mm;aspect-ratio:auto;margin:0 auto 10mm;break-inside:avoid;border:1px dashed #9AA9B5;border-radius:0;}
  .card:nth-child(2n){break-after:page;}
  .card .bn{font-size:44mm;}
  .card .qr,.card .qr img,.card .qr canvas{width:62mm !important;height:62mm !important;}
  .card .tx{font-size:11pt;}
}
.help h3{font-family:var(--cond);font-size:20px;margin:20px 0 6px;color:#1A2633;}
.help p{margin:8px 0;line-height:1.5;}
.help ol,.help ul{padding-left:24px;margin:8px 0;}
.help li{margin:4px 0;line-height:1.45;}

.help table{margin:10px 0;}
.help td{vertical-align:top;white-space:normal;}
.help .hpart + .hpart{margin-top:34px;padding-top:6px;border-top:2px solid #E1E7EC;}
@media print{.help .hpart + .hpart{border-top:0;break-before:page;}}
.podium-st{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:26px;padding:6px 0 24px;position:relative;z-index:1;min-height:0;}
.pods{display:grid;grid-template-columns:repeat(3,430px);justify-content:center;align-items:end;gap:30px;min-height:0;}
.pod{display:flex;flex-direction:column;justify-content:flex-end;text-align:center;height:100%;}
.pn{font-family:var(--cond);font-size:52px;font-weight:700;line-height:1.05;padding:0 10px 18px;}
.p1 .pn{font-size:66px;color:#F5C54B;}
.pb{border-radius:16px 16px 0 0;display:flex;justify-content:center;padding-top:22px;transform-origin:bottom;}
.pb span{font-family:var(--cond);font-weight:800;font-size:150px;line-height:1;color:#0B2340;}
.p1 .pb{height:470px;background:#F5C54B;}
.p2 .pb{height:350px;background:#C9D6E2;}
.p3 .pb{height:260px;background:#D9935A;}
.rest{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 36px;font-size:30px;color:#CFE0EC;}
.rest b{color:#7F9BB2;font-family:var(--cond);margin-right:8px;}
@media (prefers-reduced-motion:no-preference){
  .pb{animation:rise .9s cubic-bezier(.2,.8,.2,1) both;}
  .p2 .pb{animation-delay:.35s;}.p1 .pb{animation-delay:.7s;}
  .pn{animation:fadein .6s ease-out both;animation-delay:1.5s;}
  .rest{animation:fadein .6s ease-out both;animation-delay:1.9s;}
  @keyframes rise{from{transform:scaleY(0);}to{transform:scaleY(1);}}
  @keyframes fadein{from{opacity:0;transform:translateY(10px);}}
}
.who{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:600;}
.who small{color:var(--muted);font-weight:500;}
.login-card{max-width:440px;margin:30px auto;display:grid;gap:12px;}
.login-card h3{margin:0;}
.users td{vertical-align:middle;}
.users select{padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);}
.chip-ok{color:var(--ok);font-weight:700;font-size:13px;}
.chip-off{color:var(--warn);font-weight:700;font-size:13px;}
.users .btn{padding:6px 10px;font-size:14px;}
.xdense .lane{padding:8px 16px 10px;}
.xdense .lane-no{font-size:20px;}.xdense .lane-label{font-size:18px;}
.xdense .timer{font-size:26px;}.xdense .badge{font-size:16px;}
.xdense .sb{grid-template-columns:26px minmax(0,1fr) auto 64px;row-gap:3px;column-gap:10px;}
.xdense .tname{font-size:24px;}.xdense .total{font-size:44px;}
.xdense .cell{width:24px;height:24px;font-size:15px;border-radius:4px;}
.xdense .sb .ends{gap:3px;}.xdense .sb .ends .hd{width:24px;font-size:12px;}
.xdense .next{display:none;}
.pages i{display:inline-block;width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.22);margin-left:10px;vertical-align:1px;}
.pages i.on{background:#F5C54B;}
@media (prefers-reduced-motion:no-preference){.lanes.turn{animation:turn .5s ease-out;}@keyframes turn{from{opacity:0;transform:translateY(14px);}}}

.card .qr svg{width:100%;height:100%;display:block;}
.err-banner{border-color:var(--warn);color:var(--warn);margin-bottom:16px;}
