@font-face{font-family:Oswald;font-weight:700;font-display:swap;src:url(fonts/oswald-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Oswald;font-weight:700;font-display:swap;src:url(fonts/oswald-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(fonts/inter-cyrillic-500-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(fonts/inter-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-weight:700;font-display:swap;src:url(fonts/inter-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-weight:700;font-display:swap;src:url(fonts/inter-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--bg:#10120e;--card:#1b1e18;--line:#2a2e25;--ink:#f4f1e8;--mut:#8f9486;--disp:Oswald,"Arial Narrow",Impact,sans-serif;
--push:#c8f060;--pull:#5ab0ff;--dips:#c79bff;--beer:#f2b43c;--bad:#ff7a6b}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.4 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
#app{max-width:560px;margin:0 auto;padding:16px 16px 110px}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
h2{font:700 14px var(--disp);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin:30px 0 10px}
.hero{padding:22px 0 4px}
.hero .over{font:700 13px var(--disp);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.hero .row1{display:flex;align-items:flex-end;gap:12px;margin-top:2px}
.hero .big{font:700 clamp(120px,42vw,200px)/.82 var(--disp);color:var(--push);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hero .big.dead{color:#4a4f44}
.hero .unit{font:700 26px/1 var(--disp);text-transform:uppercase;padding-bottom:10px;color:var(--ink)}
.hero .unit small{display:block;font-size:15px;color:var(--mut);letter-spacing:.1em;margin-top:4px}
.hero .sub{color:var(--mut);margin-top:12px;max-width:34ch}
.goal{margin-top:16px}.goal .gl{display:flex;justify-content:space-between;font-size:13px;color:var(--mut)}.goal .gl b{color:var(--ink)}
.bar{height:6px;background:var(--card);border-radius:3px;margin-top:6px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--push);border-radius:3px}
.medals{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.medals span{font:700 14px var(--disp);letter-spacing:.04em;padding:6px 12px;border-radius:999px;border:1.5px solid var(--line);color:#5d6354}
.medals span.on{background:var(--push);border-color:var(--push);color:#14170f}
.week{display:flex;align-items:flex-end;gap:5px;height:84px;margin-top:22px}
.week div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;position:relative}
.week i{width:100%;border-radius:5px 5px 2px 2px;background:var(--card);min-height:4px}
.week .on i{background:var(--push)}
.week .today i{background:var(--ink)}
.week .on.today i{background:var(--push);outline:2px solid var(--ink);outline-offset:2px}
.week em{font:700 10px var(--disp);color:var(--mut);margin-top:5px;font-style:normal;letter-spacing:.04em}
.week .b em::before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:var(--beer);margin:0 auto 3px}
.daynav{display:flex;align-items:center;justify-content:space-between;margin:28px 0 8px}
.daynav button{width:44px;height:44px;border-radius:50%;background:var(--card);font-size:20px}
.daynav button:disabled{opacity:.25}
.daynav span{font:700 20px var(--disp);text-transform:uppercase;letter-spacing:.04em}
.main{background:var(--push);color:#14170f;border-radius:24px;padding:20px 18px 18px;margin-top:6px}
.main .top{display:flex;justify-content:space-between;align-items:flex-start}
.main .name{font:700 15px var(--disp);letter-spacing:.14em;text-transform:uppercase}
.main .num{font:700 76px/.9 var(--disp);font-variant-numeric:tabular-nums}
.main .hint{font-size:13px;opacity:.7;margin-top:2px}
.main .btns{margin-top:16px;gap:10px}
.main .btns button{background:#14170f;color:var(--push);min-height:60px;border-radius:16px;font:700 24px var(--disp)}
.main .btns button:active{background:#2b3318}
.main .btns .own{background:transparent;border:2px solid #14170f;color:#14170f;font:700 15px Inter,sans-serif;flex:0 0 auto;padding:0 16px}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.mini{background:var(--card);border-radius:20px;padding:14px 12px 12px;display:flex;flex-direction:column}
.mini .name{font:700 12px var(--disp);letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.mini .num{font:700 40px/1 var(--disp);margin:6px 0 2px;font-variant-numeric:tabular-nums}
.mini .num small{font:500 12px Inter,sans-serif;color:var(--mut);margin-left:3px}
.mini .hint{font-size:11px;color:var(--mut);min-height:14px}
.mini .btns{flex-direction:column;gap:6px;margin-top:10px}
.mini .btns button{min-height:42px;background:#262a21;border-radius:12px;font-weight:700}
.mini .btns button:active{background:var(--c);color:#14170f}
.mini .btns .own{background:none;color:var(--mut);font-size:12px;min-height:30px;padding:0}
.btns{display:flex;gap:8px}.btns button{flex:1}
.beerline{color:var(--mut);font-size:12px;margin-top:8px;text-align:center}
.legend{display:flex;justify-content:flex-end;color:var(--mut);font-size:12px;margin-top:8px}
#toast{position:fixed;left:16px;right:16px;bottom:84px;max-width:528px;margin:0 auto;background:var(--ink);color:#111;border-radius:14px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700}
#toast button{font-weight:700;text-decoration:underline}
nav#tabs{position:fixed;left:0;right:0;bottom:0;display:flex;background:#0d0f0b;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
nav#tabs button{flex:1;padding:16px 0;color:var(--mut);font:700 15px var(--disp);letter-spacing:.1em;text-transform:uppercase}
nav#tabs button.on{color:var(--ink);box-shadow:inset 0 3px 0 var(--push)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}
.chips button{padding:8px 14px;border-radius:20px;background:var(--card);color:var(--mut);font-weight:600;font-size:14px}
.chips button.on{background:var(--ink);color:#111}
.panel{background:var(--card);border-radius:18px;padding:14px;margin-top:8px}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{background:var(--card);border-radius:14px;padding:14px}
.tile b{display:block;font:700 34px/1.1 var(--disp);font-variant-numeric:tabular-nums}
.tile span{color:var(--mut);font-size:13px}
svg text{fill:var(--mut);font-size:10px;font-family:inherit}
table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
th,td{padding:8px 4px;text-align:right;border-bottom:1px solid var(--line)}
th:first-child,td:first-child{text-align:left}th{color:var(--mut);font-weight:600;font-size:12px}
.fun{margin-top:10px;padding:14px;border-radius:14px;background:var(--card);color:var(--mut);font-size:15px}
.fun b{color:var(--ink)}
.day{margin-top:16px}.day h3{margin:0 0 6px;font-size:15px}
.row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--card);border-radius:12px;margin-bottom:6px}
.row i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.row .t{flex:1}.row .v{font-weight:800;font-variant-numeric:tabular-nums}
.row button{color:var(--mut);padding:6px 8px}
.sheet textarea,.sheet select,.sheet input{width:100%;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit}
.sheet textarea{min-height:160px}
.primary{width:100%;min-height:50px;border-radius:14px;background:var(--push);color:#111;font-weight:800;margin-top:10px}
.ghost{width:100%;min-height:46px;border-radius:14px;background:var(--card);margin-top:10px;font-weight:600}
.err{color:var(--bad);margin-top:8px}
.center{text-align:center;padding:60px 10px;color:var(--mut)}
.robanner{background:var(--card);color:var(--mut);border-radius:10px;padding:8px 12px;font-size:13px;margin-bottom:4px}
body.ro .btns,body.ro .row button,body.ro [data-import]{display:none}
