@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url(demo/archivo-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url(demo/archivo-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:900;font-display:swap;src:url(demo/big-shoulders-display-900.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(demo/jetbrains-mono-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(demo/jetbrains-mono-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--asphalt:#0B0B0E;--asphalt-2:#101015;--surface:#15151A;--surface-2:#1C1C22;--line:#2A2A30;--line-2:#3A3A42;--bone:#F2EFE6;--mute:#7A7A82;--hi-vis:#EFFF00;--brand:#0F92D0;--brand-d:#0C7AAE;--f-display:'Big Shoulders Display',sans-serif;--f-mono:'JetBrains Mono',ui-monospace,monospace;--f-body:'Archivo',system-ui,sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{color-scheme:dark}
body{font-family:var(--f-body);background:var(--asphalt);background-image:radial-gradient(900px 500px at 50% -10%,rgba(15,146,208,.10),transparent 70%),linear-gradient(var(--asphalt),var(--asphalt-2));background-attachment:fixed;color:var(--bone);min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:32px 20px 48px;-webkit-font-smoothing:antialiased}
.wrap{width:100%;max-width:860px}
.top{display:flex;justify-content:center;margin-bottom:36px}
.top a{display:inline-flex}
.top img{height:34px;width:auto;display:block}
.head{text-align:center;margin-bottom:28px}
.kicker{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--hi-vis);margin-bottom:14px}
h1{font-family:var(--f-display);font-weight:900;font-size:clamp(2.6rem,8vw,4.2rem);line-height:.92;letter-spacing:.01em;text-transform:uppercase}
.blurb{margin:16px auto 0;max-width:500px;color:var(--mute);font-size:1rem;line-height:1.55}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 24px 60px -28px rgba(0,0,0,.7)}
.card__bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface-2);font-family:var(--f-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.card__bar .tz{margin-left:auto}
.dot{width:8px;height:8px;border-radius:50%;background:var(--hi-vis);box-shadow:0 0 10px rgba(239,255,0,.6)}
.card__body{padding:24px}
.step{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:0 0 12px}
.step+.step,.times+.step,.fields+.step{margin-top:24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.days label{flex:0 0 auto;min-width:76px;padding:10px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--surface-2);text-align:center;cursor:pointer;line-height:1.15}
.days label b{display:block;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-weight:500}
.days label span{display:block;font-family:var(--f-display);font-weight:900;font-size:1.7rem}
.days label small{display:block;font-family:var(--f-mono);font-size:.62rem;color:var(--mute)}
.days label:hover{border-color:var(--brand)}
.panel{display:none;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.times label{display:block;padding:11px 8px;border:1px solid var(--line-2);border-radius:10px;text-align:center;font-family:var(--f-mono);font-size:.85rem;cursor:pointer;background:var(--asphalt-2)}
.times label:hover{border-color:var(--brand)}
.times input:checked+label{background:var(--hi-vis);border-color:var(--hi-vis);color:var(--asphalt);font-weight:500}
.times input:focus-visible+label,.days input:focus-visible+label{outline:2px solid var(--brand);outline-offset:2px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fields label{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.fields input{display:block;width:100%;margin-top:6px;padding:12px 14px;border-radius:10px;border:1px solid var(--line-2);background:var(--asphalt-2);color:var(--bone);font:1rem var(--f-body)}
.fields input:focus{outline:none;border-color:var(--brand)}
.hp{position:absolute;left:-9999px}
.go{display:block;width:100%;margin-top:22px;padding:15px 20px;border:0;border-radius:10px;background:var(--hi-vis);color:var(--asphalt);font-family:var(--f-display);font-weight:900;font-size:1.35rem;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.go:hover{filter:brightness(.92)}
.fine{margin-top:12px;font-family:var(--f-mono);font-size:.72rem;color:var(--mute);text-align:center}
.error{margin-bottom:18px;padding:12px 14px;border:1px solid #6b2a2a;border-radius:10px;background:#2a1414;color:#ffb4b4;font-size:.95rem}
.empty{color:var(--mute);line-height:1.6}
.empty a,.fallback a,.done a.text{color:var(--brand);text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:1px}
.tzform{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:18px;font-family:var(--f-mono);font-size:.72rem;color:var(--mute)}
.tzform select{background:var(--asphalt-2);color:var(--bone);border:1px solid var(--line-2);border-radius:8px;padding:6px 8px;font:inherit}
.tzform button{background:none;border:1px solid var(--line-2);border-radius:8px;color:var(--bone);padding:6px 10px;font:inherit;cursor:pointer}
.done{text-align:center;padding:12px 0}
.done h2{font-family:var(--f-display);font-weight:900;font-size:2.2rem;text-transform:uppercase;margin-bottom:10px}
.done p{color:var(--mute);line-height:1.6;margin-top:8px}
.done .when{color:var(--bone);font-size:1.15rem}
.done .meet{display:inline-block;margin-top:18px;padding:13px 26px;border-radius:10px;background:var(--hi-vis);color:var(--asphalt);font-family:var(--f-display);font-weight:900;font-size:1.2rem;text-transform:uppercase;text-decoration:none}
.fallback{text-align:center;margin-top:22px;font-family:var(--f-mono);font-size:.82rem;color:var(--mute)}
.fallback a:hover{color:var(--bone);border-color:var(--brand)}
.foot{margin-top:40px;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;color:var(--mute);text-align:center}
@media (max-width:640px){.card__body{padding:18px}.fields{grid-template-columns:1fr}.card__bar .tz{display:none}}
.cal:has(#d0:checked) #p0,.cal:has(#d1:checked) #p1,.cal:has(#d2:checked) #p2,.cal:has(#d3:checked) #p3,.cal:has(#d4:checked) #p4,.cal:has(#d5:checked) #p5,.cal:has(#d6:checked) #p6,.cal:has(#d7:checked) #p7,.cal:has(#d8:checked) #p8,.cal:has(#d9:checked) #p9,.cal:has(#d10:checked) #p10,.cal:has(#d11:checked) #p11,.cal:has(#d12:checked) #p12,.cal:has(#d13:checked) #p13,.cal:has(#d14:checked) #p14,.cal:has(#d15:checked) #p15,.cal:has(#d16:checked) #p16,.cal:has(#d17:checked) #p17,.cal:has(#d18:checked) #p18,.cal:has(#d19:checked) #p19,.cal:has(#d20:checked) #p20,.cal:has(#d21:checked) #p21,.cal:has(#d22:checked) #p22,.cal:has(#d23:checked) #p23,.cal:has(#d24:checked) #p24,.cal:has(#d25:checked) #p25,.cal:has(#d26:checked) #p26,.cal:has(#d27:checked) #p27,.cal:has(#d28:checked) #p28,.cal:has(#d29:checked) #p29,.cal:has(#d30:checked) #p30,.cal:has(#d31:checked) #p31,.cal:has(#d32:checked) #p32,.cal:has(#d33:checked) #p33,.cal:has(#d34:checked) #p34,.cal:has(#d35:checked) #p35,.cal:has(#d36:checked) #p36,.cal:has(#d37:checked) #p37,.cal:has(#d38:checked) #p38,.cal:has(#d39:checked) #p39,.cal:has(#d40:checked) #p40,.cal:has(#d41:checked) #p41,.cal:has(#d42:checked) #p42,.cal:has(#d43:checked) #p43,.cal:has(#d44:checked) #p44{display:grid}
.days input:checked+label{border-color:var(--hi-vis);box-shadow:inset 0 0 0 1px var(--hi-vis)}
.days input:checked+label span{color:var(--hi-vis)}
