:root{--display: "Nexover", "Archivo", system-ui, sans-serif;--body: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--ink: #12211b;--ink-2: #5a6b61;--ink-3: #8a9990;--paper: #e7ebe1;--card: #fcfdf8;--line: #cfd7c7;--line-2: #e2e7da;--oli: #1e6b4c;--oli-fixed: #1e6b4c;--lari: #b7386f;--lari-fixed: #b7386f;--flag: #e0a013;--warn: #b4531c;--r: 14px;--pad: 18px}@font-face{font-family:Nexover;src:local("Nexover"),local("Nexover Regular"),local("Nexover Demo"),url(/fonts/Nexover.woff2) format("woff2"),url(/fonts/Nexover.otf) format("opentype");font-weight:400 800;font-display:swap}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:#0e1713;color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.frame{max-width:430px;margin:0 auto;min-height:100vh;background:var(--paper);padding:0 0 104px;position:relative;overflow-x:hidden}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin:0}.num{font-family:var(--display);font-stretch:125%;font-weight:700;line-height:.92;font-variant-numeric:tabular-nums;letter-spacing:-.015em}h2.sec{font-family:var(--display);font-stretch:125%;font-weight:700;font-size:21px;letter-spacing:-.01em;margin:26px 0 12px}.top{display:flex;align-items:center;justify-content:space-between;padding:14px var(--pad) 10px;position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line-2)}.brand{display:flex;align-items:center;gap:9px}.mark{display:grid;grid-template-columns:repeat(3,5px);gap:2px}.mark i{width:5px;height:5px;border-radius:1.5px;background:var(--line);display:block}.mark i.f{background:var(--oli)}.wm{display:block;font-family:var(--display);font-stretch:125%;font-weight:700;font-size:15px;letter-spacing:-.02em;line-height:1.05}.wm em{display:block;font-style:normal;font-weight:700;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin-top:2px}.switch{display:flex;background:var(--line-2);border-radius:99px;padding:3px;gap:2px}.switch button{border:0;background:none;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2);padding:6px 13px;border-radius:99px;font-family:var(--body)}.switch button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #12211b24}main{padding:0 var(--pad)}.card{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r);padding:16px;margin-bottom:12px}.card.flag{border-left:4px solid var(--flag)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.hero{padding-top:18px}.count{display:flex;align-items:flex-end;gap:14px;margin:8px 0 2px}.count .num{font-size:64px}.count .unit{padding-bottom:7px}.count .unit b{display:block;font-size:15px;font-weight:700;line-height:1.1}.count .unit small{display:block;font-size:12.5px;color:var(--ink-2);font-weight:600}.weeks{display:flex;gap:3px;margin:14px 0 4px;flex-wrap:wrap}.weeks i{height:9px;width:14px;border-radius:2px;background:var(--line);display:block}.weeks i.left{background:var(--line-2);border:1px solid var(--line)}.rail{margin-top:16px}.railbar{position:relative;height:10px;border-radius:99px;background:var(--line-2);overflow:hidden}.railbar b{position:absolute;left:0;top:0;bottom:0;border-radius:99px;display:block}.railends{display:flex;justify-content:space-between;margin-top:7px}.railends span{font-size:11.5px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}.chip{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:5px 9px;border-radius:99px;border:1px solid var(--line);color:var(--ink-2);background:var(--card)}.chip.good{color:var(--oli);border-color:var(--oli)}.chip.warn{color:var(--warn);border-color:var(--warn)}.chip.hot{color:var(--flag);border-color:var(--flag)}.habit{display:flex;align-items:center;gap:13px;padding:12px 0;border-bottom:1px solid var(--line-2)}.habit:last-child{border-bottom:0;padding-bottom:2px}.tick{width:30px;height:30px;flex:0 0 30px;border-radius:9px;border:1.5px solid var(--line);background:transparent;cursor:pointer;display:grid;place-items:center;padding:0;transition:transform .12s ease}.tick svg{width:15px;height:15px;opacity:0;transform:scale(.5);transition:all .16s cubic-bezier(.3,1.4,.5,1)}.tick.done svg{opacity:1;transform:scale(1)}.tick:active{transform:scale(.9)}.name{flex:1;min-width:0}.name b{display:block;font-weight:700;font-size:14.5px}.name small{display:block;font-size:12px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}.gridwrap{margin-top:12px}.dow{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:5px}.dow span{font-size:10px;font-weight:700;color:var(--ink-3);text-align:center;letter-spacing:.02em}.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.blk{aspect-ratio:1 / 1;border-radius:6px;background:var(--line-2);position:relative;display:grid;place-items:center;font-size:10.5px;font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums;border:1.5px solid transparent;padding:0;font-family:var(--body);cursor:default}button.blk{cursor:pointer}.blk.empty{background:transparent;border-color:transparent}.blk.fill{color:#ffffffeb}.blk.miss{background:transparent;border:1.5px dotted var(--line)}.blk.future{background:transparent;border:1px solid var(--line-2);color:var(--line)}.blk.prot{background:transparent;border-style:solid}.blk.pend{background:transparent;border-style:dashed;opacity:.7}.blk.today{outline:2px solid var(--ink);outline-offset:2px}.blk.jl{border-top-left-radius:2px;border-bottom-left-radius:2px}.blk.jr{border-top-right-radius:2px;border-bottom-right-radius:2px}.key{display:flex;gap:12px;flex-wrap:wrap;margin-top:11px}.key span{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.key i{width:11px;height:11px;border-radius:3px;display:block;border:1.5px solid var(--line)}.chart{width:100%;height:auto;display:block;margin:6px 0 2px}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}.legend span{font-size:10.5px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:6px}.legend i{width:14px;height:0;border-top:2px solid var(--ink-3);display:block}.legend i.solid{border-color:var(--oli)}.legend i.dash{border-top-style:dashed}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line-2);border-radius:var(--r);overflow:hidden}.stats div{background:var(--card);padding:14px 10px;text-align:center}.stats .num{font-size:30px;display:block;margin-bottom:5px}.stats small{font-size:9.5px;font-weight:700;color:var(--ink-3);letter-spacing:.09em;text-transform:uppercase}label.f{display:block;margin-bottom:12px}label.f .eyebrow{margin-bottom:5px;display:block}input[type=text],input[type=number],input[type=email],input[type=password],input[type=date],select,textarea{width:100%;font-family:var(--body);font-size:15px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink)}textarea{resize:vertical;min-height:64px}input[type=range]{width:100%;accent-color:var(--oli)}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn{width:100%;border:0;border-radius:11px;padding:13px;cursor:pointer;background:var(--ink);color:var(--card);font-family:var(--body);font-weight:700;font-size:15px}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;border:1.5px dashed var(--line);color:var(--ink-2)}.btn.small{padding:10px;font-size:13.5px}.pair{display:flex;gap:8px;margin-top:12px}.pair .btn{flex:1}.result{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-2);border-radius:var(--r);overflow:hidden;margin:14px 0 10px}.result div{background:var(--card);padding:14px 8px;text-align:center}.result div.hero{background:var(--ink);grid-column:1 / -1;padding:20px 8px}.result div.hero .num{font-size:52px;color:var(--card)}.result div.hero small{color:#fcfdf899}.result .num{font-size:28px;display:block;margin-bottom:6px}.result small{font-size:9.5px;font-weight:700;color:var(--ink-3);letter-spacing:.09em;text-transform:uppercase}.note{font-size:12.5px;color:var(--ink-2);margin:0}.lb{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line-2)}.lb:last-of-type{border-bottom:0}.lb .rank{font-family:var(--display);font-stretch:125%;font-weight:700;font-size:20px;color:var(--ink-3);width:20px}.lb .who{flex:1;min-width:0}.lb .who b{display:block;font-weight:700;font-size:14.5px}.bar{height:8px;border-radius:99px;background:var(--line-2);overflow:hidden;margin-top:6px}.bar b{display:block;height:100%;border-radius:99px}.lb .pc{font-family:var(--display);font-stretch:125%;font-weight:700;font-size:26px;font-variant-numeric:tabular-nums}.tally{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line-2)}.tally div{text-align:center}.tally .num{font-size:32px;display:block}.tally small{display:block;font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin-top:4px}.tally em{font-style:normal;font-size:11px;font-weight:700;color:var(--ink-3);letter-spacing:.1em}.reasons{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 12px}.reasons button{border:1px solid var(--line);background:transparent;border-radius:99px;padding:7px 12px;font-family:var(--body);font-size:12px;font-weight:700;color:var(--ink-2);cursor:pointer}.reasons button.on{background:var(--ink);border-color:var(--ink);color:var(--card)}.hide{display:none}.opt{width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:13px 14px;margin-bottom:8px;cursor:pointer;font-family:var(--body)}.opt b{display:block;font-weight:700;font-size:14.5px}.opt small{display:block;font-size:12px;color:var(--ink-2);margin-top:2px}.partner{display:flex;align-items:center;gap:12px}.dots{display:flex;gap:4px}.dots i{width:11px;height:11px;border-radius:3px;background:var(--line-2);display:block}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(430px,100%);display:grid;grid-template-columns:repeat(5,1fr);background:var(--card);border-top:1px solid var(--line);padding:9px 4px calc(9px + env(safe-area-inset-bottom));z-index:30}.tabbar button,.tabbar a{border:0;background:none;cursor:pointer;padding:5px 1px;display:grid;gap:4px;justify-items:center;color:var(--ink-3);font-family:var(--body);font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;position:relative}.tabbar button.on,.tabbar a.on{color:var(--ink)}.tabbar .ic{display:grid;grid-template-columns:repeat(2,5px);gap:2px}.tabbar .ic i{width:5px;height:5px;border-radius:1.5px;background:currentColor;opacity:.35;display:block}.tabbar button.on .ic i,.tabbar a.on .ic i{opacity:1}.dot{position:absolute;top:2px;margin-left:22px;width:7px;height:7px;border-radius:50%;background:var(--flag)}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:4px}.muted{color:var(--ink-2)}.center{text-align:center}.stack>*+*{margin-top:12px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
