@import url("https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600&display=swap");:root{--bg:#f4f6ef;--panel:#fff;--panel-muted:#f0f4e8;--text:#1b1f16;--text-muted:#57614a;--border:#d6ddc7;--accent:#1f6f52;--accent-strong:#16563f;--accent-soft:#dceee5;--danger:#b23a34;--shadow:0 10px 30px rgba(31,58,39,.12)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(1200px 450px at 10% -10%,#d7eecb 0,transparent 60%),radial-gradient(900px 400px at 85% 0,#cde8e7 0,transparent 65%),var(--bg);color:var(--text)}body{font-family:Space Grotesk,Segoe UI,sans-serif;line-height:1.4}h1,h2,h3{font-family:Sora,Segoe UI,sans-serif;letter-spacing:-.02em;margin-top:0}a{color:inherit;text-decoration:none}main{width:min(1100px,100% - 2rem);margin:1.5rem auto 2rem}section{background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}input,select,textarea{border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:1px}button{border:1px solid var(--accent);background:var(--accent);color:#f7fff9;font-weight:600;border-radius:10px;padding:.55rem .95rem;cursor:pointer;transition:transform .12s ease,background .14s ease,border-color .14s ease}button:hover{background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}p{color:var(--text-muted)}.app-intro{background:linear-gradient(130deg,#164633,#205e47 60%,#2f7a5d);color:#effff7;border-radius:14px;padding:.7rem 1.1rem;margin-bottom:.9rem;box-shadow:0 12px 28px rgba(20,56,41,.22)}.app-intro__brand{min-width:0}.app-intro h1{margin:0;font-size:1.15rem}.app-intro h1,.app-intro p{color:#effff7}.stack{display:grid;grid-gap:1rem;gap:1rem}.auth-shell .auth-pitch,.auth-shell form{width:min(100%,420px)}.competition-row button{min-height:44px}.draft-board{--d-bg:#0b0e16;--d-bg-2:#0f131e;--d-panel:#151a24;--d-panel-2:#1d2431;--d-border:hsla(0,0%,100%,.08);--d-text:#f4f7fc;--d-muted:#8b96ab;--d-soft:#5c6a80;--d-accent:#19d3a8;--d-onclock:#f7b733;--d-queue:#e14fd0;--d-watch:#4b8bf5;--d-danger:#e0524f;--tile-w:96px;background:var(--d-bg);color:var(--d-text);border-radius:18px;border:1px solid var(--d-border);box-shadow:0 20px 50px rgba(0,0,0,.5);font-family:Sora,Segoe UI,sans-serif;overflow:hidden}.draft-board *{box-sizing:border-box}.draft-board__header{display:flex;align-items:center;gap:.8rem;padding:.9rem 1.1rem;background:var(--d-bg-2);border-bottom:1px solid var(--d-border)}.draft-board__back{background:none;border:none;color:var(--d-muted);font-size:1.3rem;cursor:pointer;line-height:1}.draft-board__title{margin:0;font-size:1.05rem;font-weight:700}.draft-board__meta{color:var(--d-muted);font-size:.8rem;margin-top:.1rem}.draft-board__nextpick{color:var(--d-accent);font-weight:700}.draft-board__actions{margin-left:auto;display:flex;gap:.4rem;align-items:center}.draft-board__icon-btn{background:var(--d-panel-2);border:1px solid var(--d-border);color:var(--d-text);width:34px;height:34px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.draft-board__switch{background:var(--d-accent);border:none;color:#04241c;font-weight:700;border-radius:999px;padding:.35rem .8rem;font-size:.78rem;cursor:pointer}.draft-board__timerbar{height:3px;background:var(--d-panel-2)}.draft-board__timerbar-fill{height:100%;background:var(--d-onclock);transition:width 1s linear}.draft-board__banner{display:flex;gap:.5rem;align-items:center;margin:.7rem 1.1rem 0;background:rgba(25,211,168,.12);border:1px solid rgba(25,211,168,.35);color:var(--d-accent);border-radius:10px;padding:.45rem .7rem;font-size:.8rem;font-weight:600}.draft-board__timer{margin-left:auto;background:var(--d-onclock);color:#20170a;font-weight:700;border-radius:999px;padding:.25rem .6rem;font-size:.78rem;white-space:nowrap}.draft-board__timer--low{background:var(--d-danger);color:#fff;animation:live-pulse 1s ease-in-out infinite}.draft-board__teams{display:flex;gap:.5rem;padding:.7rem 1.1rem;overflow-x:auto;background:var(--d-bg-2);border-bottom:1px solid var(--d-border)}.draft-board__team{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:64px}.draft-board__team.is-you .draft-board__team-avatar{box-shadow:0 0 0 3px var(--d-accent)}.draft-board__team.is-clock .draft-board__team-avatar{box-shadow:0 0 0 3px var(--d-onclock)}.draft-board__team-avatar{width:42px;height:42px;border-radius:999px;overflow:hidden;background:var(--d-panel-2);border:1px solid var(--d-border);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.draft-board__team-avatar img{object-fit:cover;width:100%;height:100%}.draft-board__team-name{font-size:.6rem;color:var(--d-soft);max-width:64px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draft-board__team-flag{font-size:.55rem;font-weight:700;color:var(--d-accent);letter-spacing:.02em}.draft-board__gridwrap{overflow:auto;padding:1rem 1.1rem;background:var(--d-bg)}.draft-board__grid{display:grid;grid-gap:6px;gap:6px;min-width:max-content}.draft-board__round-label{color:var(--d-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.03em;padding:.1rem .2rem}.draft-board__tile{position:relative;width:var(--tile-w,96px);height:92px;border-radius:10px;padding:.4rem .45rem;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border:1px solid var(--d-border);background:var(--d-panel)}.draft-board__tab-dot{display:inline-block;width:6px;height:6px;border-radius:999px;background:var(--d-queue);margin-left:.3rem;vertical-align:middle}.app-skip-link{position:absolute;left:-9999px;top:0;z-index:500}.app-skip-link:focus{left:.5rem;top:.5rem;background:var(--panel);border:1px solid var(--accent);color:var(--text);padding:.5rem .8rem;border-radius:8px;box-shadow:var(--shadow)}@media (max-width:640px){.draft-board{--tile-w:74px}}.draft-board__tile--filled{border:none;color:#08121c;font-weight:700}.draft-board__tile--empty{background:var(--d-panel);color:var(--d-soft);align-items:center;justify-content:center}.draft-board__tile--clock{box-shadow:0 0 0 3px var(--d-onclock),0 0 24px rgba(247,183,51,.55);animation:draft-clock-pulse 1.6s ease-in-out infinite}.draft-board__tile--last{outline:3px solid var(--d-queue);outline-offset:1px}.draft-board__tile--mine{border-left:3px solid var(--d-accent)}.draft-board__listview{display:grid;grid-gap:2px;gap:2px;padding:.6rem 1.1rem 1rem}.draft-board__listrow{display:flex;align-items:center;gap:.5rem;padding:.25rem .4rem;border-radius:8px;font-size:.8rem}.draft-board__listrow:hover{background:var(--d-panel-2)}.draft-board__tile-snake{position:absolute;bottom:.25rem;right:.35rem;font-size:.6rem;opacity:.85}.draft-board__ticker{display:flex;gap:.4rem;align-items:center;padding:.5rem 1.1rem;background:var(--d-bg-2);border-bottom:1px solid var(--d-border);overflow-x:auto}.draft-board__ticker-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:var(--d-soft);font-weight:700;flex:0 0 auto}.draft-board__ticker-chip{flex:0 0 auto;font-size:.72rem;background:var(--d-panel-2);border:1px solid var(--d-border);border-radius:999px;padding:.15rem .5rem;color:var(--d-text);white-space:nowrap}.draft-board__ticker-arrow{color:var(--d-accent)}.draft-board__ticker-round{color:var(--d-soft);margin-left:.2rem}.draft-board__banner--done{background:rgba(25,211,168,.14);border-color:rgba(25,211,168,.45)}.draft-board--bigscreen{position:fixed;inset:0;z-index:300;overflow:auto;border-radius:0}.draft-board--bigscreen .draft-board__toolbar{display:none}.draft-board__recap{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:.6rem;gap:.6rem;padding:.6rem 1.1rem 1rem}.draft-board__recap-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1.1rem 0}.draft-board__recap-team{background:var(--d-panel);border:1px solid var(--d-border);border-radius:10px;padding:.55rem .65rem;display:grid;grid-gap:.35rem;gap:.35rem;font-size:.8rem}.draft-board__recap-positions{display:flex;gap:.35rem;flex-wrap:wrap}.draft-board__modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.draft-board__modal{background:var(--d-panel);border:1px solid var(--d-border);border-radius:14px;padding:1rem;width:min(92vw,360px);display:grid;grid-gap:.6rem;gap:.6rem;color:var(--d-text);box-shadow:0 24px 60px rgba(0,0,0,.55)}.draft-board__modal-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.draft-board__modal-stats{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.85rem;color:var(--d-muted)}.draft-board__formbars{display:flex;align-items:flex-end;gap:3px;height:30px;margin-top:.15rem}.draft-board__formbar{flex:1 1;background:var(--d-accent);border-radius:2px 2px 0 0;opacity:.85}@keyframes draft-clock-pulse{0%,to{box-shadow:0 0 0 3px var(--d-onclock),0 0 18px rgba(247,183,51,.4)}50%{box-shadow:0 0 0 3px var(--d-onclock),0 0 30px rgba(247,183,51,.7)}}.draft-board__tile-pos{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.draft-board__tile-name{font-size:.76rem;line-height:1.1}.draft-board__tile-pick{font-size:.6rem;opacity:.85}.draft-board__tile-logo{position:absolute;top:.35rem;right:.4rem;font-size:.58rem;font-weight:800;opacity:.8}.draft-board__btn{background:var(--d-accent);border:none;color:#04241c;font-weight:700;border-radius:9px;padding:.4rem .7rem;font-size:.76rem;cursor:pointer}.draft-board__btn:disabled{opacity:.45;cursor:not-allowed}.draft-board__btn-ghost{background:var(--d-panel-2);border:1px solid var(--d-border);color:var(--d-muted);font-weight:600;border-radius:9px;padding:.35rem .6rem;font-size:.74rem;cursor:pointer}.draft-board__toolbar{display:grid;grid-template-columns:minmax(300px,1.4fr) minmax(220px,1fr) minmax(220px,1fr);grid-gap:1rem;gap:1rem;padding:1rem 1.1rem;border-top:1px solid var(--d-border);background:var(--d-bg-2)}.draft-board__panel{background:var(--d-panel);border:1px solid var(--d-border);border-radius:12px;padding:.8rem}.draft-board__panel h4{margin:0 0 .6rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.02em;color:var(--d-muted)}.draft-board__search{width:100%;background:var(--d-panel-2);border:1px solid var(--d-border);color:var(--d-text);border-radius:9px;padding:.4rem .6rem;margin-bottom:.6rem;font:inherit}.draft-board__search::placeholder{color:var(--d-soft)}.draft-board__filter{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.6rem}.draft-board__chip{border:1px solid var(--d-border);background:var(--d-panel-2);color:var(--d-muted);border-radius:999px;padding:.2rem .55rem;font-size:.72rem;cursor:pointer;display:inline-flex;gap:.3rem;align-items:center}.draft-board__chip.is-active{background:var(--d-accent);color:#04241c;border-color:var(--d-accent);font-weight:700}.draft-board__posdot{width:8px;height:8px;border-radius:999px;display:inline-block}.draft-board__playerlist{max-height:320px;overflow:auto;display:grid;grid-gap:2px;gap:2px}.draft-board__player{display:grid;grid-template-columns:1.2rem 1.6fr auto auto auto auto auto auto;grid-gap:.5rem;gap:.5rem;align-items:center;padding:.3rem .4rem;border-radius:8px;font-size:.8rem}.draft-board__player.is-queued{background:rgba(225,79,208,.12)}.draft-board__player--drafted{opacity:.7}.draft-board__legend{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:.6rem}.draft-board__legend-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;color:var(--d-soft)}.draft-board__rating{color:var(--d-soft);font-size:.72rem;min-width:2.2rem;text-align:right}.draft-board__chatlist{max-height:260px;overflow:auto;display:grid;grid-gap:.4rem;gap:.4rem;align-content:start}.draft-board__chatmsg{max-width:85%;background:var(--d-panel-2);border:1px solid var(--d-border);border-radius:10px;padding:.35rem .55rem;font-size:.76rem;justify-self:start}.draft-board__chatmsg.is-me{justify-self:end;background:var(--d-accent);border-color:var(--d-accent);color:#04241c}.draft-board__chatmsg-author{font-size:.6rem;opacity:.8;margin-bottom:.1rem;font-weight:700}.draft-board__chatmsg.is-me .draft-board__chatmsg-author{opacity:.7}.draft-board__chatmsg-time{margin-left:.35rem;font-weight:400;opacity:.7}.app-rail__badge{margin-left:auto;background:var(--accent);color:#fff;border-radius:999px;font-size:.62rem;font-weight:700;padding:.05rem .4rem;min-width:1.15rem;text-align:center}.draft-board__queue-empty{color:var(--d-soft);font-size:.8rem;text-align:center;padding:1rem 0}.draft-board__queue-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .4rem;border-radius:8px;font-size:.8rem}.draft-board__queue-item:hover{background:var(--d-panel-2)}.draft-board__toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--d-muted);cursor:pointer;margin-bottom:.6rem}.draft-board__tabs{display:flex;gap:.4rem;margin-bottom:.6rem}.draft-board__tab{border:1px solid var(--d-border);background:var(--d-panel-2);color:var(--d-muted);border-radius:8px;padding:.3rem .7rem;font-size:.78rem;cursor:pointer}.draft-board__tab.is-active{background:var(--d-accent);color:#04241c;border-color:var(--d-accent);font-weight:700}.draft-board__rostergrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));grid-gap:.5rem;gap:.5rem}.draft-board__roster-tile{background:var(--d-panel-2);border:1px solid var(--d-border);border-radius:9px;padding:.4rem;font-size:.72rem;text-align:center}.draft-board__empty-note{color:var(--d-soft);font-size:.78rem}@media (max-width:900px){.draft-board__toolbar{grid-template-columns:1fr}}@media (max-width:720px){main{width:min(100% - 1rem,1100px);margin-top:1rem}section{border-radius:14px}.app-intro{padding:1rem .9rem;border-radius:16px;flex-direction:column;align-items:stretch}.app-intro h1{font-size:1.05rem}button,input,select,textarea{font-size:16px}.competition-row{flex-direction:column}.competition-row>*{width:100%}}html[data-theme=dark]{--bg:#0b0e16;--panel:#141822;--panel-muted:#10141d;--text:#edf2f8;--text-muted:#aeb9cf;--border:hsla(0,0%,100%,.1);--accent:#1f9e80;--accent-strong:#18bd98;--accent-soft:#14282b;--danger:#e0524f;--shadow:0 16px 40px rgba(0,0,0,.5)}html[data-theme=dark] body{background:radial-gradient(1200px 450px at 10% -10%,#12202a 0,transparent 60%),radial-gradient(900px 400px at 85% 0,#0f1e28 0,transparent 65%),var(--bg);color:var(--text)}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{background:#10141d;color:var(--text);border-color:var(--border)}html[data-theme=dark] .app-intro{background:linear-gradient(130deg,#0e2530,#123443 60%,#164b57);box-shadow:0 18px 40px rgba(0,0,0,.45)}html[data-theme=dark] button:disabled{color:var(--text-muted)}.dash-shell{display:grid;grid-template-columns:232px minmax(0,1fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.app-rail{position:-webkit-sticky;position:sticky;top:1rem;display:flex;flex-direction:column;gap:.15rem;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:.55rem;box-shadow:var(--shadow);align-self:start}.app-rail__brand{display:flex;align-items:center;gap:.6rem;font-family:Sora,sans-serif;font-weight:700;color:var(--text);font-size:1.02rem;letter-spacing:-.02em;padding:.85rem .7rem;overflow:hidden;white-space:nowrap}.app-rail__logo{flex:0 0 auto;width:78px;height:78px;border-radius:12px;object-fit:cover;border:1px solid var(--border);box-shadow:0 4px 12px rgba(0,0,0,.18)}.app-rail__brand-name{color:var(--text)}.app-rail__group{display:flex;flex-direction:column;gap:2px;padding-top:.4rem;border-top:1px solid var(--border);margin-top:.4rem}.app-rail__label{font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:.1rem .6rem .25rem;opacity:.9}.app-rail__item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .6rem;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-weight:600;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-rail__item:hover{background:var(--panel-muted);color:var(--text)}.app-rail__item.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.app-rail__icon{width:1.1rem;text-align:center;flex:0 0 auto}.app-rail__league{font-size:.78rem;font-weight:700;color:var(--text);padding:.1rem .6rem .35rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.35rem}.app-rail__live{background:var(--danger);color:#fff;font-size:.55rem;font-weight:700;border-radius:999px;padding:.05rem .4rem;flex:0 0 auto;animation:live-pulse 1.6s ease-in-out infinite}.competition-card-placeholder{width:100%;height:96px;border-radius:8px;margin-bottom:.55rem;background:linear-gradient(135deg,var(--accent-soft),var(--panel-muted));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;color:var(--accent);border:1px solid var(--border);overflow:hidden}.competition-card-placeholder__icon{font-size:1.5rem;line-height:1}.competition-card-placeholder__label{font-size:.72rem;font-weight:700;color:var(--text-muted);max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standings-you{background:var(--accent);color:#fff;font-size:.6rem;padding:.05rem .4rem}.competition-owner-tag,.standings-you{margin-left:.4rem;font-weight:700;border-radius:999px;vertical-align:middle}.competition-owner-tag{background:var(--accent-soft);color:var(--accent);font-size:.62rem;padding:.1rem .45rem}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.65}}@media (prefers-reduced-motion:reduce){.app-rail__live,.draft-board__tile--clock,.draft-board__timer--low{animation:none}}.app-rail__footer{display:flex;flex-direction:column;gap:.4rem;padding-top:.55rem;border-top:1px solid var(--border);margin-top:.5rem}.app-rail__mode{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-muted)}.app-rail__mode select{flex:1 1;min-width:0;font-size:.8rem}.app-rail__link,.app-rail__logout{width:100%;text-align:center;padding:.5rem .7rem;border-radius:9px;font-weight:600;cursor:pointer;font-size:.85rem}.app-rail__link{background:var(--panel-muted);text-decoration:none}.app-rail__link,.app-rail__logout{border:1px solid var(--border);color:var(--text)}.app-rail__logout{background:transparent}.app-rail__logout:hover{color:var(--danger);border-color:var(--danger)}.app-main{min-width:0;display:grid;grid-gap:1.25rem;gap:1.25rem}.draft-room-view{position:fixed;inset:0;z-index:120;display:flex;flex-direction:column;background:var(--d-bg,#0e1622);overflow:hidden}.draft-room__chrome{display:flex;gap:.9rem;padding:.7rem 1rem;border-bottom:1px solid var(--border);flex:0 0 auto}.draft-room__back,.draft-room__chrome{align-items:center;background:var(--panel)}.draft-room__back{display:inline-flex;gap:.35rem;padding:.45rem .75rem;border:1px solid var(--border);border-radius:9px;color:var(--text);font-weight:600;cursor:pointer;white-space:nowrap}.draft-room__back:hover{background:var(--panel-muted)}.draft-room__title{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.draft-room__title-name{font-family:Sora,sans-serif;font-weight:700;font-size:1.05rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-room__title-sub{font-size:.78rem;color:var(--text-muted)}.draft-room__status{display:inline-block;padding:.08rem .45rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted)}.draft-room__status--live{color:var(--d-accent,#34d399);border-color:color-mix(in srgb,var(--d-accent,#34d399) 45%,transparent)}.draft-room__body{flex:1 1 auto;min-height:0;overflow:auto;padding:1rem}.draft-room__body>section{border:none;border-radius:0;padding:0}.draft-room__toolbar{justify-content:space-between;padding:.55rem .75rem;margin-bottom:.75rem;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--panel) 80%,transparent)}.draft-room__toolbar,.draft-room__toolbar-main{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.draft-room__toolbar-main{font-size:.85rem;color:var(--text-muted)}.draft-room__countdown{color:var(--accent);font-weight:600}.draft-room__lockout{color:var(--text-muted)}.draft-room__anthem{color:var(--accent)}.draft-room__toolbar-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.draft-room__control{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--text-muted)}.draft-room__toolbar-actions button{padding:.4rem .7rem}.app-crumb{display:flex;align-items:baseline;gap:.5rem;padding:.15rem .2rem 0;font-size:.9rem;color:var(--text-muted)}.app-crumb strong{color:var(--text);font-size:1rem}.app-crumb__sep{color:var(--text-muted)}@media (max-width:900px){.dash-shell{grid-template-columns:1fr}.app-rail{position:static}}.app-bottomnav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--panel);border-top:1px solid var(--border);padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgba(0,0,0,.25)}.app-bottomnav__item{display:flex;flex-direction:column;align-items:center;gap:.15rem;flex:1 1;background:transparent;border:none;color:var(--text-muted);font-size:.62rem;font-weight:600;cursor:pointer;padding:.3rem .15rem;border-radius:10px;min-width:0;position:relative}.app-bottomnav__item.is-active{color:var(--accent)}.app-bottomnav__icon{font-size:1.1rem;line-height:1}.app-bottomnav__badge{position:absolute;top:.1rem;right:calc(50% - 1.05rem);background:var(--danger);color:#fff;border-radius:999px;font-size:.58rem;font-weight:700;padding:.02rem .32rem;line-height:1.2}@media (max-width:900px){.app-bottomnav{display:flex}main{padding-bottom:4.5rem}}.auth-shell{align-items:center}.auth-card{width:min(100%,420px);background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:1.5rem 1.6rem;display:grid;grid-gap:1rem;gap:1rem}.auth-tabs{display:flex;gap:.5rem}.auth-tabs button{flex:1 1}.auth-form{display:grid;grid-gap:.75rem;gap:.75rem;width:100%}.auth-form label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.85rem;color:var(--text-muted);font-weight:600}.auth-form input{width:100%;padding:.55rem .7rem}.auth-error{color:var(--danger);font-size:.88rem}.auth-link{background:transparent;border:none;color:var(--accent);text-align:left;padding:0;cursor:pointer;font-weight:600}[role=button]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}