@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;900&family=Barlow:wght@400;500;600&display=swap');
:root{--teal:#17a2b8;--wave:#1de9b6;--gold:#f5c518;--green:#2dc653;--warn:#ff9f1c;--purple:#a78bfa;--bg:#0d1b2a;--hero-start:#0a3d5c;--surf-1:rgba(255,255,255,0.04);--surf-2:rgba(255,255,255,0.07);--surf-3:rgba(255,255,255,0.03);--surf-4:rgba(255,255,255,0.05);--surf-wave:rgba(29,233,182,0.06);--surf-teal:rgba(23,162,184,0.12);--surf-green:rgba(45,198,83,0.10);--surf-warn:rgba(255,159,28,0.10);--surf-goal:rgba(123,156,173,0.07);--bord-dim:rgba(255,255,255,0.06);--bord-mid:rgba(255,255,255,0.08);--bord-wave-1:rgba(29,233,182,0.25);--bord-wave-2:rgba(29,233,182,0.3);--bord-wave-3:rgba(29,233,182,0.2);--bord-teal:rgba(23,162,184,0.2);--bord-green:rgba(45,198,83,0.3);--bord-warn:rgba(255,159,28,0.3);--bord-goal:rgba(123,156,173,0.18);--txt-primary:#f0f8ff;--txt-secondary:#7b9cad;--txt-light:#d6ecf3;--dropdown-bg:#0d2135;--select-opt-bg:#112233;--shadow-sticky:0 2px 12px rgba(0,0,0,0.4);--shadow-card:none;--slate:var(--txt-secondary);}
@media(prefers-color-scheme:light){:root{--teal:#0d8fa5;--wave:#0aaa88;--gold:#9a7200;--green:#167a2e;--warn:#b85f00;--purple:#6040c8;--bg:#f0f7fc;--hero-start:#b8d8ea;--surf-1:rgba(0,0,0,0.04);--surf-2:rgba(0,0,0,0.06);--surf-3:rgba(0,0,0,0.03);--surf-4:rgba(0,0,0,0.05);--surf-wave:rgba(10,170,136,0.07);--surf-teal:rgba(13,143,165,0.10);--surf-green:rgba(22,122,46,0.08);--surf-warn:rgba(184,95,0,0.08);--surf-goal:rgba(74,106,122,0.07);--bord-dim:rgba(0,0,0,0.07);--bord-mid:rgba(0,0,0,0.10);--bord-wave-1:rgba(10,170,136,0.30);--bord-wave-2:rgba(10,170,136,0.35);--bord-wave-3:rgba(10,170,136,0.25);--bord-teal:rgba(13,143,165,0.20);--bord-green:rgba(22,122,46,0.30);--bord-warn:rgba(184,95,0,0.30);--bord-goal:rgba(74,106,122,0.20);--txt-primary:#0d1b2a;--txt-secondary:#4a6a7a;--txt-light:#1e3a4a;--dropdown-bg:#f0f7fc;--select-opt-bg:#e0eef8;--shadow-sticky:0 2px 12px rgba(0,0,0,0.12);--shadow-card:0 1px 4px rgba(0,0,0,0.08);--slate:var(--txt-secondary);}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:0.01ms!important;animation-duration:0.01ms!important;}}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--txt-primary);font-family:'Barlow',sans-serif;min-height:100dvh;}
.page-wrap{max-width:640px;margin:0 auto;background:var(--bg);}
.hero{position:relative;background:linear-gradient(160deg,var(--hero-start) 0%,var(--bg) 60%);padding:28px 20px 56px;text-align:center;overflow:hidden;transition:padding 0.3s ease;}
.hero::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:36px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 36'%3E%3Cpath d='M0,18 C200,36 400,0 600,18 C800,36 1000,0 1200,18 L1200,36 L0,36 Z' fill='%230d1b2a'/%3E%3C/svg%3E") no-repeat bottom/cover;}
@media(prefers-color-scheme:light){.hero::after{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 36'%3E%3Cpath d='M0,18 C200,36 400,0 600,18 C800,36 1000,0 1200,18 L1200,36 L0,36 Z' fill='%23f0f7fc'/%3E%3C/svg%3E") no-repeat bottom/cover;}}
.hero.collapsed{padding:14px 20px 28px;}.hero.collapsed .logo-row{margin-bottom:6px;}.hero.collapsed .hero-sub{display:none;}
.hero-venue{font-size:14px;color:var(--txt-secondary);margin-top:4px;letter-spacing:0.5px;}
.logo-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px;}
.hero-title{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(28px,6vw,42px);text-transform:uppercase;color:var(--txt-primary);line-height:1;}
.hero-title span{color:var(--wave);}
.hero-sub{font-size:13px;color:var(--txt-secondary);margin-top:5px;letter-spacing:1px;text-transform:uppercase;}
.selector{margin:18px 16px 0;background:var(--surf-4);border:1px solid var(--bord-wave-1);border-radius:12px;padding:14px 16px;box-shadow:var(--shadow-card);}
.sel-label{font-size:13px;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt-secondary);margin-bottom:7px;}
select{width:100%;background:var(--surf-2);border:1px solid var(--bord-wave-2);border-radius:8px;color:var(--txt-primary);font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700;padding:10px 14px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231de9b6' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer;touch-action:manipulation;}
select option{background:var(--select-opt-bg);color:var(--txt-primary);}
select:focus{outline:2px solid var(--wave);outline-offset:2px;border-color:var(--wave);}
.sel-meta{margin-top:8px;font-size:14px;color:var(--txt-secondary);display:none;}
.sel-meta span{color:var(--txt-light);}.fav-btn{background:none;border:none;cursor:pointer;font-size:14px;font-weight:600;line-height:1;padding:0 0 0 10px;color:var(--txt-secondary);vertical-align:middle;touch-action:manipulation;transition:color 0.15s;}.fav-btn:focus-visible{outline:2px solid var(--wave);outline-offset:2px;}
.countdown{display:none;text-align:center;padding:10px 16px 12px;border-bottom:1px solid var(--bord-wave-3);}
.cd-label{font-size:14px;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt-secondary);margin-bottom:4px;}
.cd-event{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:700;color:var(--wave);margin-bottom:4px;}
.cd-timer{font-family:'Barlow Condensed',sans-serif;font-size:34px;font-weight:900;color:var(--gold);letter-spacing:2px;line-height:1;}
.cd-timer.done{color:var(--green);font-size:20px;}
.tabs-sticky{position:sticky;top:0;z-index:100;background:var(--bg);padding:10px 16px 0;}
.tabs{display:flex;gap:5px;}
.tab{flex:1;min-height:44px;padding:9px 3px;text-align:center;cursor:pointer;user-select:none;touch-action:manipulation;background:var(--surf-1);border:1px solid var(--bord-mid);border-radius:8px 8px 0 0;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:0.5px;color:var(--txt-secondary);transition:background 0.15s,border-color 0.15s,color 0.15s;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.tab.active{background:var(--surf-teal);border-color:var(--teal);color:var(--teal);}
.tab:focus-visible{outline:2px solid var(--wave);outline-offset:2px;}
.tab small{font-size:11px;color:var(--txt-secondary);display:block;font-weight:400;margin-top:1px;}
.tab.active small{color:var(--teal);opacity:0.8;}
.panel{display:none;padding:0 16px 28px;background:var(--surf-1);border:1px solid var(--bord-dim);border-top:none;border-radius:0 0 12px 12px;margin:0 16px;padding-bottom:calc(28px + env(safe-area-inset-bottom));}
.panel.active{display:block;}
.main-ui{display:none;}.main-ui.active{display:block;}
.day-hdr{padding:13px 0 9px;font-size:13px;text-transform:uppercase;letter-spacing:2px;color:var(--txt-secondary);border-bottom:1px solid var(--bord-dim);margin-bottom:12px;}
.sess-hdr{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);margin:16px 0 9px;display:flex;align-items:center;gap:8px;}
.sess-hdr::after{content:'';flex:1;height:1px;background:var(--bord-teal);}
.day-section-hdr{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);margin:14px 0 7px;display:flex;align-items:center;gap:8px;}
.day-section-hdr::after{content:'';flex:1;height:1px;background:var(--bord-teal);}
.dayplan{background:var(--surf-3);border:1px solid var(--bord-dim);border-radius:10px;padding:13px 15px;margin-bottom:14px;box-shadow:var(--shadow-card);}
.dayplan-title{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--teal);margin-bottom:9px;display:flex;align-items:center;gap:8px;}
.dayplan-title::after{content:'';flex:1;height:1px;background:var(--bord-teal);}
.shirt{display:inline-block;padding:4px 12px;border-radius:20px;margin-bottom:9px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;}
.tl-row{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--bord-dim);}
.tl-row:last-child{border-bottom:none;}
.tl-time{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;color:var(--gold);white-space:nowrap;min-width:72px;}
.tl-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0;}
.tl-body{font-size:16px;color:var(--txt-light);line-height:1.5;}
.tl-body strong{color:var(--txt-primary);}
.tl-body em{color:var(--txt-secondary);font-style:normal;font-size:13px;}
.tl-warn{margin-top:8px;font-size:14px;color:var(--txt-secondary);line-height:1.5;border-top:1px solid var(--bord-dim);padding-top:8px;}
.tl-warn strong{color:var(--teal);}
.ecard{background:var(--surf-1);border:1px solid var(--bord-mid);border-radius:10px;padding:14px 15px;margin-bottom:10px;position:relative;overflow:hidden;box-shadow:var(--shadow-card);}
.ecard::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:10px 0 0 10px;}
.etop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px;}
.einfo{flex:1;}
.enum{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:600;color:var(--txt-secondary);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:3px;}
.ename{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:700;color:var(--txt-primary);line-height:1.1;}
.field-rank-line{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;color:var(--txt-secondary);text-transform:uppercase;letter-spacing:0.5px;margin-top:3px;}
.seed-chip{background:var(--surf-2);border-radius:6px;padding:6px 12px;font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:700;color:var(--gold);white-space:nowrap;flex-shrink:0;}
.seed-chip.nt{color:var(--txt-secondary);font-size:18px;padding-top:9px;}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:0;}
.stat-sub-label{font-size:11px;color:var(--txt-secondary);margin-top:2px;text-transform:uppercase;letter-spacing:0.5px;}
.stat{background:var(--surf-3);border-radius:6px;padding:10px 12px;}
.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:0.7px;color:var(--txt-secondary);margin-bottom:3px;}
.stat-val{font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:700;color:var(--txt-light);line-height:1;}
.stat-val.hi{color:var(--wave);}.stat-val.go{color:var(--green);}.stat-val.wa{color:var(--warn);}.stat-val.dim{color:var(--txt-secondary);font-size:20px;}
.note{background:var(--surf-3);border:1px solid var(--bord-dim);border-radius:8px;padding:11px 13px;font-size:14px;color:var(--txt-light);line-height:1.6;margin-top:10px;}
.note strong{color:var(--teal);}
.bests-row{margin-top:6px;border-top:1px solid var(--bord-dim);padding-top:6px;grid-template-columns:1fr 1fr!important;}
.bests-row .stat{background:var(--surf-wave);border:1px solid var(--bord-wave-3);display:flex;align-items:center;justify-content:space-between;gap:8px;}
.bests-row .stat-left{display:flex;flex-direction:column;}
.bests-row .stat-label{color:var(--teal);}
.bests-row .stat-val{color:var(--wave);}
.bests-row .stat-year{font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:700;color:var(--teal);opacity:0.45;flex-shrink:0;}
.hist{margin-top:8px;border-top:1px solid var(--bord-dim);padding-top:6px;}
.hist-sum{list-style:none;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--txt-secondary);cursor:pointer;user-select:none;padding:3px 0;display:flex;align-items:center;gap:6px;}
.hist-sum::marker,.hist-sum::-webkit-details-marker{display:none;}
details[open] .hist-sum{color:var(--teal);}
.hist-tbl{width:100%;border-collapse:collapse;margin-top:7px;font-size:13px;}
.hist-tbl th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:0.8px;color:var(--txt-secondary);padding:4px 6px;border-bottom:1px solid var(--bord-dim);}
.hist-tbl td{padding:5px 6px;border-bottom:1px solid var(--bord-dim);color:var(--txt-light);vertical-align:top;}
.hist-tbl tr:last-child td{border-bottom:none;}
.ht-time{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;color:var(--wave);white-space:nowrap;}
.ht-course{color:var(--txt-secondary);font-size:12px;white-space:nowrap;}
.ht-meet{font-size:12px;color:var(--txt-secondary);}
.tml-sess-hdr{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt-secondary);margin:12px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--bord-dim);}
.tml-row{display:grid;grid-template-columns:34px 1fr 52px 64px;align-items:center;gap:6px;padding:6px 0;border-bottom:1px solid var(--bord-dim);font-size:14px;}
.tml-row:last-child{border-bottom:none;}
.tml-row.mine{background:var(--surf-wave);border:1px solid var(--bord-wave-1);border-radius:7px;padding:7px 8px;margin:3px -8px;grid-template-columns:34px 1fr 52px 64px;}
.tml-num{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;color:var(--txt-secondary);text-align:right;}
.tml-row.mine .tml-num{color:var(--wave);}
.tml-name{color:var(--txt-light);font-size:14px;line-height:1.3;}
.tml-row.mine .tml-name{color:var(--txt-primary);font-weight:600;}
.tml-you{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--wave);background:rgba(29,233,182,0.12);border-radius:3px;padding:1px 5px;margin-left:4px;vertical-align:middle;}
.tml-heats{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;color:var(--txt-secondary);text-align:right;white-space:nowrap;}
.tml-row.mine .tml-heats{color:var(--gold);}
.tml-time{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;color:var(--txt-secondary);text-align:right;white-space:nowrap;}
.tml-row.mine .tml-time{color:var(--gold);}
.tml-note{font-size:13px;color:var(--txt-secondary);margin:4px 0 10px;padding:6px 10px;background:var(--surf-3);border-radius:6px;line-height:1.5;}
.tml-note strong{color:var(--txt-light);}
.arm-string-box{background:var(--surf-wave);border:1px solid var(--bord-wave-1);border-radius:12px;padding:14px 16px;margin-bottom:14px;}
.arm-string-label{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt-secondary);margin-bottom:7px;}
.arm-string{font-family:'Barlow Condensed',sans-serif;font-size:19px;font-weight:900;color:var(--txt-primary);line-height:1.7;letter-spacing:0.5px;}
.arm-copy-btn{margin-top:10px;background:var(--surf-wave);border:1px solid var(--bord-wave-2);border-radius:8px;padding:10px 18px;color:var(--wave);font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;touch-action:manipulation;min-height:44px;}
.arm-card{background:var(--surf-1);border:1px solid var(--bord-mid);border-radius:12px;padding:14px;margin-bottom:9px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-card);}
.arm-ev{flex-shrink:0;text-align:center;min-width:52px;}
.arm-ev-num{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--txt-secondary);}
.arm-ev-name{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:700;color:var(--txt-light);}
.arm-ev-time{font-size:12px;color:var(--txt-secondary);margin-top:1px;}
.arm-hl{flex:1;display:flex;gap:10px;justify-content:center;align-items:center;}
.arm-num-block{text-align:center;}
.arm-num-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--txt-secondary);margin-bottom:1px;}
.arm-heat{font-family:'Barlow Condensed',sans-serif;font-size:52px;font-weight:900;color:var(--gold);line-height:1;}
.arm-lane{font-family:'Barlow Condensed',sans-serif;font-size:52px;font-weight:900;color:var(--wave);line-height:1;}
.arm-divider{width:1px;background:var(--bord-mid);align-self:stretch;margin:6px 0;}
.arm-code-col{text-align:right;flex-shrink:0;}
.arm-code{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:900;color:var(--txt-primary);letter-spacing:0.5px;}
.arm-tbd{font-size:10px;color:var(--warn);margin-top:3px;}
.no-events{padding:24px 0;text-align:center;color:var(--txt-secondary);font-size:13px;}
.footer{text-align:center;padding:20px 16px;padding-bottom:calc(20px + env(safe-area-inset-bottom));font-size:12px;color:var(--txt-secondary);letter-spacing:0.5px;}
@media(min-width:600px){.tab{font-size:14px;}.tab small{font-size:12px;}.tabs-sticky{padding:12px 20px 0;}.selector{margin:20px 20px 0;}.countdown{margin:12px 20px 0;}.panel{margin:0 20px;padding:0 20px calc(28px + env(safe-area-inset-bottom));}.ecard{padding:16px 18px;}.arm-card{padding:16px 18px;}}
/* ── team branding: --team is set from meet_config.json teams[code].accent ── */
:root{--team:var(--teal);}
.hero{background:linear-gradient(160deg,color-mix(in srgb,var(--team) 28%,var(--hero-start)) 0%,var(--bg) 60%);}
.logo-team{height:58px;width:auto;border-radius:8px;object-fit:cover;box-shadow:0 0 16px color-mix(in srgb,var(--team) 50%,transparent);flex-shrink:0;}
.logo-text{height:58px;min-width:58px;padding:0 14px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:24px;letter-spacing:1px;color:var(--team);border:2px solid var(--team);background:color-mix(in srgb,var(--team) 12%,transparent);}
.hero-team{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--team);margin-bottom:4px;}
.shirt{background:color-mix(in srgb,var(--team) 15%,transparent);color:var(--txt-primary);border:1px solid color-mix(in srgb,var(--team) 40%,transparent);}
.sel-empty{font-size:15px;color:var(--txt-light);line-height:1.5;}
.sel-empty strong{color:var(--txt-primary);}
.info-note{background:var(--surf-3);border:1px solid var(--bord-dim);border-radius:10px;padding:12px 15px;margin:14px 0;font-size:14px;color:var(--txt-light);line-height:1.6;}
.info-note strong{color:var(--teal);}
.skip-day{padding:24px 0;text-align:center;color:var(--txt-secondary);font-size:14px;line-height:1.6;}
.ag-tag{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:600;color:var(--txt-secondary);text-transform:uppercase;letter-spacing:0.5px;margin-left:6px;}
.arm-tbd-banner{background:rgba(255,159,28,0.07);border:1px solid var(--bord-warn);border-radius:9px;padding:11px 14px;margin-bottom:12px;font-size:13px;color:var(--warn);}
.team-grid{display:grid;gap:12px;margin:22px 16px;}
.team-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;background:var(--surf-1);border:1px solid var(--bord-mid);text-decoration:none;color:var(--txt-primary);box-shadow:var(--shadow-card);}
.team-card:hover,.team-card:focus-visible{border-color:var(--wave);outline:none;}
.team-card .tc-name{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:700;}
.team-card .tc-sub{font-size:13px;color:var(--txt-secondary);}
.footer a{color:var(--txt-secondary);}
.bmc{margin:0 auto 14px;text-align:center;}.bmc-line{font-size:13px;color:var(--txt-secondary);margin-bottom:8px;letter-spacing:0;}.bmc-btn{display:inline-block;background:#ffdd00;color:#0d1b2a !important;text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:16px;letter-spacing:0.3px;padding:8px 18px;border-radius:999px;box-shadow:0 1px 3px rgba(0,0,0,0.25);}.bmc-btn:hover,.bmc-btn:focus-visible{background:#ffe633;}.footer-meta{line-height:1.8;}
