:root{--ground:#e9edf2;--panel:#fff;--panel-2:#f3f5f9;--ink:#161b24;--ink-soft:#3a4351;--muted:#6b7585;--faint:#98a1b0;--line:#d9dee6;--line-strong:#c3cad4;--ember:#ea580c;--ember-deep:#c2410c;--ember-glow:rgba(234,88,12,.16);--ice:#1490b4;--ice-soft:rgba(20,144,180,.14);--good:#2f9e44;--good-soft:rgba(47,158,68,.14)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0d1017;--panel:#161b24;--panel-2:#1d2431;--ink:#eef1f6;--ink-soft:#c4ccd8;--muted:#8b94a4;--faint:#5e6879;--line:#262e3b;--line-strong:#333d4d;--ember:#fb7332;--ember-deep:#ea580c;--ember-glow:rgba(251,115,50,.2);--ice:#35b6d8;--ice-soft:rgba(53,182,216,.16);--good:#51cf66;--good-soft:rgba(81,207,102,.16)}}:root[data-theme=dark]{--ground:#0d1017;--panel:#161b24;--panel-2:#1d2431;--ink:#eef1f6;--ink-soft:#c4ccd8;--muted:#8b94a4;--faint:#5e6879;--line:#262e3b;--line-strong:#333d4d;--ember:#fb7332;--ember-deep:#ea580c;--ember-glow:rgba(251,115,50,.2);--ice:#35b6d8;--ice-soft:rgba(53,182,216,.16);--good:#51cf66;--good-soft:rgba(81,207,102,.16)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:radial-gradient(900px 500px at 80% -10%,var(--ember-glow),transparent 60%),var(--ground);color:var(--ink);font-family:IBM Plex Sans,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}.app,body{min-height:100dvh}.app{max-width:460px;margin:0 auto;padding:24px 18px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.brand-row{display:flex;align-items:center;gap:10px;margin-bottom:18px}.brand-mark{width:38px;height:38px;border-radius:11px;flex:none;background:linear-gradient(150deg,var(--ember),var(--ember-deep));display:grid;place-items:center;box-shadow:0 8px 18px -8px var(--ember)}.brand-mark svg{width:22px;height:22px}.brand-row b{font-family:Archivo,sans-serif;font-weight:800;font-size:18px;letter-spacing:-.01em}.brand-row .who{margin-left:auto;font-family:IBM Plex Mono,monospace}.brand-row .who,.linkbtn{font-size:12px;color:var(--muted)}.linkbtn{background:none;border:0;cursor:pointer;text-decoration:underline;padding:0}h1{font-family:Archivo,sans-serif;font-weight:800;letter-spacing:-.02em;font-size:26px;margin:0 0 4px}.sub{color:var(--muted);font-size:14px;margin:0 0 18px}.card{background:linear-gradient(165deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:20px;padding:22px 20px}label{display:block;font-size:12px;color:var(--muted);font-weight:600;margin:12px 0 6px}input,select{width:100%;padding:13px 14px;border:1px solid var(--line-strong);border-radius:12px;background:var(--panel);color:var(--ink);font-size:15px;font-family:inherit}input:focus,select:focus{outline:2px solid var(--ember);outline-offset:1px;border-color:var(--ember)}.btn{width:100%;padding:14px;border:0;border-radius:13px;cursor:pointer;margin-top:16px;background:linear-gradient(150deg,var(--ember),var(--ember-deep));color:#fff;font-family:Archivo,sans-serif;font-weight:700;font-size:16px;box-shadow:0 12px 24px -12px var(--ember);transition:transform .15s ease,opacity .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:default;transform:none}.btn.ghost{background:none;color:var(--ink);border:1px solid var(--line-strong);box-shadow:none}.btn.done{background:var(--good);box-shadow:none}.err{color:#d64545;margin-top:10px;min-height:18px}.err,.toggle{font-size:13px}.toggle{text-align:center;margin-top:14px;color:var(--muted)}.toggle button{color:var(--ember);background:none;border:0;cursor:pointer;font-weight:600}.dash-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.day{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.1em}.flame{display:inline-flex;align-items:center;gap:6px;font-family:Archivo,sans-serif;font-weight:800;color:var(--ember);font-size:17px}.flame svg{width:18px;height:18px}.focus{display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:8px}.focus .tag{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.focus .name{font-family:Archivo,sans-serif;font-weight:700;font-size:22px;margin:8px 0 2px}.focus .meta{color:var(--muted);font-size:13px}.ring{width:150px;height:150px;margin:20px 0 8px;position:relative}.ring svg{transform:rotate(-90deg);width:100%;height:100%}.ring .center{position:absolute;inset:0;display:grid;place-items:center;text-align:center}.ring .center b{font-family:Archivo,sans-serif;font-weight:800;font-size:30px;line-height:1}.ring .center small{display:block;font-size:10px;color:var(--muted);letter-spacing:.08em;margin-top:4px}.freeze-chip,.ring .center small{font-family:IBM Plex Mono,monospace}.freeze-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;margin-top:14px;color:var(--ice);background:var(--ice-soft);padding:5px 11px;border-radius:999px}.microcopy{font-size:12px;color:var(--muted);margin:14px 0 0}.microcopy b{color:var(--ember-deep)}.spacer{flex:1 1}.footnote{text-align:center;color:var(--faint);font-size:11px;font-family:IBM Plex Mono,monospace;margin-top:22px}.center-screen{flex:1 1;display:grid;place-items:center;color:var(--muted)}.tabbar{position:-webkit-sticky;position:sticky;bottom:0;margin:18px -18px calc(-24px - env(safe-area-inset-bottom));display:flex;justify-content:space-around;align-items:center;padding:10px 8px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel)}.tabbar button{background:none;border:0;cursor:pointer;color:var(--faint);display:grid;place-items:center;grid-gap:3px;gap:3px;font-size:10px;font-family:IBM Plex Mono,monospace}.tabbar button svg{width:22px;height:22px}.tabbar button.on{color:var(--ember)}.tabcontent{flex:1 1;display:flex;flex-direction:column;padding-bottom:84px}.section-title{font-family:Archivo,sans-serif;font-weight:800;font-size:22px;margin:4px 0 14px}.rows{flex-direction:column;gap:10px}.row,.rows{display:flex}.row{align-items:center;gap:12px;padding:13px 14px;border-radius:15px;border:1px solid var(--line);background:var(--panel)}.row .ic{width:36px;height:36px;border-radius:11px;flex:none;display:grid;place-items:center;background:var(--panel-2);color:var(--ink-soft)}.row .tx{flex:1 1;min-width:0}.tx-btn{background:none;border:0;padding:0;text-align:left;cursor:pointer;color:inherit;font-family:inherit}.tx-btn small{text-decoration:none}.tx-btn:hover b{color:var(--ember)}.row .tx b{font-size:14px;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .tx small{font-size:11px;color:var(--muted);font-family:IBM Plex Mono,monospace}.row .mini-flame{font-family:Archivo,sans-serif;font-weight:700;font-size:12px;color:var(--ember)}.pill{font-size:10px;font-weight:600;padding:5px 10px;border-radius:999px;font-family:IBM Plex Mono,monospace;white-space:nowrap;border:0;cursor:default}.pill.done{color:var(--good);background:var(--good-soft)}.pill.froze{color:var(--ice);background:var(--ice-soft)}.pill.pend{color:var(--ember);background:var(--ember-glow);cursor:pointer}.pill.rest{color:var(--faint);background:var(--panel-2)}.add-fab{margin-top:16px;width:100%;padding:13px;border-radius:13px;cursor:pointer;border:1px dashed var(--line-strong);background:none;color:var(--muted);font-family:IBM Plex Sans,sans-serif;font-size:14px;font-weight:600}.add-fab:hover{border-color:var(--ember);color:var(--ember)}.stats{display:flex;gap:10px;margin:4px 0 6px}.stat{flex:1 1;border:1px solid var(--line);border-radius:14px;padding:12px 10px;text-align:center;background:var(--panel)}.stat b{font-family:Archivo,sans-serif;font-weight:800;font-size:22px;display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat.ember b{color:var(--ember)}.stat.ice b{color:var(--ice)}.stat small{font-size:9.5px;color:var(--muted);letter-spacing:.05em}.heat-title,.stat small{font-family:IBM Plex Mono,monospace;text-transform:uppercase}.heat-title{font-size:10px;letter-spacing:.12em;color:var(--faint);margin:18px 0 9px}.heat{display:grid;grid-template-columns:repeat(13,1fr);grid-gap:4px;gap:4px}.heat i{aspect-ratio:1;border-radius:3px;background:var(--panel-2);border:1px solid var(--line)}.heat i.done{background:var(--ember);border-color:transparent}.heat i.partial{background:color-mix(in srgb,var(--ember) 50%,var(--panel-2));border-color:transparent}.heat i.missed{background:color-mix(in srgb,#d64545 30%,var(--panel-2));border-color:transparent}.heat i.froze{background:var(--ice);border-color:transparent}.heat-legend{display:flex;align-items:center;gap:6px;justify-content:flex-end;margin-top:10px;font-size:9px;color:var(--muted);font-family:IBM Plex Mono,monospace}.heat-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}.picker{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:8px}.picker button{white-space:nowrap;padding:8px 13px;border-radius:999px;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink-soft);font-size:12px;cursor:pointer;font-weight:600}.picker button.on{background:var(--ember);color:#fff;border-color:var(--ember)}.today-top{margin-bottom:4px}.today-top .hello{font-family:Archivo,sans-serif;font-weight:800;font-size:26px;letter-spacing:-.02em}.today-top .date{color:var(--muted);font-size:13px;margin-top:2px}.summary{display:flex;align-items:center;gap:14px;margin:14px 0 18px;background:linear-gradient(165deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:16px 18px}.summary .ring2{width:58px;height:58px;position:relative;flex:none}.summary .ring2 svg{transform:rotate(-90deg);width:100%;height:100%}.summary .ring2 span{position:absolute;inset:0;display:grid;place-items:center;font-family:Archivo,sans-serif;font-weight:800;font-size:15px}.summary .s-txt b{font-family:Archivo,sans-serif;font-weight:700;font-size:16px;display:block}.summary .s-txt small{color:var(--muted);font-size:12.5px}.group-title{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:18px 4px 8px}.hlist{display:flex;flex-direction:column;gap:9px}.hrow{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:var(--panel)}.hrow.is-done{opacity:.62}.hicon{width:42px;height:42px;border-radius:12px;flex:none;display:grid;place-items:center;font-size:20px}.hbody{flex:1 1;min-width:0;text-align:left;background:none;border:0;padding:0;cursor:pointer;color:inherit;font-family:inherit}.hbody b{font-size:15px;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbody small{font-size:12px;color:var(--muted);font-family:IBM Plex Mono,monospace}.hbody .st{color:var(--ember);font-weight:700}.hbody:hover b{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.check{width:34px;height:34px;border-radius:50%;flex:none;cursor:pointer;border:2px solid var(--line-strong);background:transparent;display:grid;place-items:center;transition:transform .12s ease}.check:hover{transform:scale(1.08)}.check svg{width:18px;height:18px;color:#fff;opacity:0}.check.done svg{opacity:1}.check.rest{border-style:dashed;cursor:default}.check.frozen{border-color:var(--ice)}.empty-today{text-align:center;color:var(--muted);padding:40px 0}.empty-today .big{font-size:40px;margin-bottom:8px}.pick-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.pick-emoji{width:40px;height:40px;border-radius:11px;border:1px solid var(--line-strong);background:var(--panel);font-size:20px;cursor:pointer;display:grid;place-items:center}.pick-emoji.on{border-color:var(--ember);box-shadow:0 0 0 2px var(--ember-glow)}.pick-color{width:32px;height:32px;border-radius:50%;cursor:pointer;border:2px solid transparent}.pick-color.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--panel),0 0 0 4px currentColor}.preview-chip{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;font-size:22px;margin-top:8px}.trend-svg{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:6px}.rate-row{display:flex;gap:8px;margin:4px 0}.rate-row .rc{flex:1 1;text-align:center;border:1px solid var(--line);border-radius:13px;padding:11px 6px;background:var(--panel)}.rate-row .rc b{font-family:Archivo,sans-serif;font-weight:800;font-size:19px;display:block}.rate-row .rc small{color:var(--muted)}.rate-row .rc small,.trend-cap{font-size:10px;font-family:IBM Plex Mono,monospace}.trend-cap{display:flex;justify-content:space-between;color:var(--faint);margin-top:5px}.seg2{display:flex;gap:4px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:14px}.seg2 button{flex:1 1;border:0;background:none;padding:9px;border-radius:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);font-family:inherit}.seg2 button.on{background:var(--panel);color:var(--ember);box-shadow:0 1px 3px rgba(0,0,0,.08)}.ov-note{font-size:12px;color:var(--muted);margin:-2px 2px 12px}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px;margin:6px 0 8px}.stat-grid .stat{border-radius:15px}.stat .cap{display:flex;align-items:center;justify-content:center;gap:5px}.block-title{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:22px 4px 10px}.recap{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:15px;border:1px solid var(--line);background:linear-gradient(165deg,var(--panel-2),var(--panel))}.recap .num{font-family:Archivo,sans-serif;font-weight:800;font-size:26px}.recap .rl{flex:1 1}.recap .rl b{font-size:14px}.recap .rl small{display:block;color:var(--muted);font-size:12px}.trend{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;padding:4px 9px;border-radius:999px}.trend.up{color:var(--good);background:var(--good-soft)}.trend.down{color:#d64545;background:rgba(214,69,69,.14)}.trend.flat{color:var(--muted);background:var(--panel-2)}.wbars{display:flex;gap:7px;align-items:flex-end}.wbar{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:6px}.wbar .track{width:100%;height:76px;border-radius:7px;background:var(--panel-2);display:flex;align-items:flex-end;overflow:hidden;border:1px solid var(--line)}.wbar .fill{width:100%;border-radius:6px 6px 0 0;min-height:3px;transition:none}.wbar .lbl{color:var(--muted)}.wbar .lbl,.wbar .pc{font-size:10px;font-family:IBM Plex Mono,monospace}.wbar .pc{color:var(--faint)}.wbar.best .lbl{color:var(--ember);font-weight:700}.best-day{font-size:12.5px;color:var(--muted);margin-top:10px}.best-day b{color:var(--ember)}.hy-wrap{overflow-x:auto;padding-bottom:6px}.hy{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-gap:3px;gap:3px}.hy .hc{width:11px;height:11px;border-radius:2px;background:var(--panel-2);border:1px solid var(--line)}.hy .hc.partial{opacity:.55;border-color:transparent}.hy .hc.missed{background:color-mix(in srgb,#d64545 32%,var(--panel-2));border-color:transparent}.hy .hc.froze{background:var(--ice);border-color:transparent}.hy-legend{display:flex;align-items:center;gap:6px;justify-content:flex-end;margin-top:8px;font-size:9px;color:var(--muted);font-family:IBM Plex Mono,monospace}.hy-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}.feed-card,.hy-legend i{border:1px solid var(--line)}.feed-card{border-radius:16px;padding:14px;background:var(--panel);margin-bottom:10px}.feed-head{display:flex;align-items:center;gap:10px}.feed-av{width:36px;height:36px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:16px;background:var(--ember-glow);color:var(--ember-deep);font-family:Archivo,sans-serif;font-weight:800}.feed-head .fu{flex:1 1;min-width:0}.feed-head .fu b{font-size:13.5px;display:block}.feed-head .fu small{font-size:11px;color:var(--faint);font-family:IBM Plex Mono,monospace}.feed-body{display:flex;align-items:center;gap:10px;margin:12px 0;padding:12px;border-radius:12px;background:var(--panel-2)}.feed-body .fi{font-size:26px}.feed-body .ft{font-family:Archivo,sans-serif;font-weight:700;font-size:15px}.react-row{display:flex;gap:8px}.react-btn{border:1px solid var(--line-strong);background:var(--panel);border-radius:999px;padding:6px 12px;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-family:inherit;color:var(--ink)}.react-btn.on{border-color:var(--ember);background:var(--ember-glow)}.react-btn .rc{font-size:12px;font-weight:700;color:var(--muted);font-family:IBM Plex Mono,monospace}.cmt-toggle{background:none;border:0;color:var(--muted);font-size:12.5px;cursor:pointer;margin-top:10px;padding:0}.cmt-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}.cmt{font-size:13px}.cmt b{color:var(--ink)}.cmt .ch{color:var(--faint);font-size:11px;font-family:IBM Plex Mono,monospace;margin-left:4px}.cmt-input{display:flex;gap:8px;margin-top:10px}.cmt-input input{flex:1 1;padding:9px 12px}.cmt-input button{border:0;background:var(--ember);color:#fff;border-radius:10px;padding:0 14px;font-weight:700;cursor:pointer}.handle-box{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--ember-glow);border:1px solid var(--ember);margin-bottom:12px}.handle-box .hh{font-family:Archivo,sans-serif;font-weight:800;font-size:16px;color:var(--ember-deep);flex:1 1}.frow{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:8px}.frow .fu{flex:1 1;min-width:0}.frow .fu b{font-size:13.5px;display:block}.frow .fu small{font-size:11px;color:var(--faint);font-family:IBM Plex Mono,monospace}.frow .fbtn{border:0;border-radius:9px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}.frow .fbtn.acc{background:var(--good);color:#fff}.frow .fbtn.dec{background:var(--panel-2);color:var(--muted)}.fmood{font-size:20px;flex:none}.unread-badge{background:var(--ember);color:#fff;font-size:10px;font-weight:800;border-radius:999px;min-width:18px;height:18px;display:inline-grid;place-items:center;padding:0 5px;font-family:IBM Plex Mono,monospace}.chat-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.chat-head button{border:1px solid var(--line-strong);background:var(--panel);border-radius:8px;width:34px;height:34px;cursor:pointer;color:var(--ink);font-size:16px}.chat-head b{font-family:Archivo,sans-serif;font-weight:700;font-size:17px}.chat-head small{color:var(--faint);font-size:11px;font-family:IBM Plex Mono,monospace}.chat-msgs{display:flex;flex-direction:column;gap:8px;min-height:240px}.bubble{max-width:78%;padding:10px 13px;border-radius:16px;font-size:14px;line-height:1.4;word-break:break-word}.bubble.them{align-self:flex-start;background:var(--panel-2);border:1px solid var(--line);border-bottom-left-radius:5px}.bubble.me{align-self:flex-end;background:linear-gradient(150deg,var(--ember),var(--ember-deep));color:#fff;border-bottom-right-radius:5px}.chat-empty{text-align:center;color:var(--faint);font-size:13px;padding:30px 0}.chat-input{display:flex;gap:8px;margin-top:14px;position:-webkit-sticky;position:sticky;bottom:0}.chat-input input{flex:1 1;padding:11px 14px}.chat-input button{border:0;background:var(--ember);color:#fff;border-radius:12px;padding:0 16px;font-weight:700;cursor:pointer}.mood-card{padding:14px;border-radius:16px;border:1px solid var(--line);background:var(--panel);margin:14px 0 4px}.mood-card .ml{font-size:13px;color:var(--muted);display:block;margin-bottom:10px}.mood-faces{display:flex;gap:6px;justify-content:space-between}.mood-face{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;border:0;background:none;cursor:pointer;padding:0;font-family:inherit}.mood-face .fc{width:44px;height:44px;border-radius:50%;border:2px solid var(--line);background:var(--panel-2);font-size:23px;display:grid;place-items:center;transition:transform .12s ease}.mood-face .fl{font-size:10px;color:var(--faint);font-family:IBM Plex Mono,monospace}.mood-face.on .fc{transform:scale(1.12)}.mood-face.on .fl{color:var(--ink);font-weight:700}.mood-note-toggle{background:none;border:0;color:var(--muted);font-size:12px;cursor:pointer;margin-top:10px;text-decoration:underline;padding:0}.mood-note-saved{color:var(--good);font-size:12px;margin-top:8px}.mood-avg{display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(165deg,var(--panel-2),var(--panel))}.mood-avg .big-face{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:34px;flex:none}.mood-avg .ma b{font-family:Archivo,sans-serif;font-weight:800;font-size:22px}.mood-avg .ma small{display:block;color:var(--muted);font-size:12px}.mdist{display:flex;flex-direction:column;gap:7px}.mdist .mrow{display:flex;align-items:center;gap:10px}.mdist .mrow .em{font-size:18px;width:24px;text-align:center}.mdist .mrow .bar{flex:1 1;height:10px;border-radius:999px;background:var(--panel-2);overflow:hidden}.mdist .mrow .bar i{display:block;height:100%;border-radius:999px}.mdist .mrow .ct{font-size:11px;color:var(--muted);font-family:IBM Plex Mono,monospace;width:26px;text-align:right}.pixels{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-gap:3px;gap:3px}.pixels i{width:11px;height:11px;border-radius:2px;background:var(--panel-2);border:1px solid var(--line)}.mjournal{display:flex;flex-direction:column;gap:8px}.mj-item{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:11px 13px;background:var(--panel)}.mj-item .mem{font-size:22px;flex:none}.mj-item .mtx{flex:1 1;min-width:0}.mj-item .mtx .md{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--faint);text-transform:uppercase}.mj-item .mtx .mn{font-size:13px;color:var(--ink-soft);margin-top:3px;line-height:1.45}.note-wrap{margin-top:12px;width:100%}.note-wrap textarea{min-height:44px}.note-view{font-size:12.5px;color:var(--muted);margin-top:8px;font-style:italic}.note-dot{font-size:11px;margin-left:4px}.polar-tag{padding:2px 7px;border-radius:6px;background:var(--panel-2);color:var(--muted)}.cue,.polar-tag{font-size:10px;font-weight:700;font-family:IBM Plex Mono,monospace}.cue{color:var(--ember);margin-left:6px}.timer-overlay{position:fixed;inset:0;z-index:60;background:var(--ground);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;text-align:center}.timer-overlay .tname{font-family:Archivo,sans-serif;font-weight:700;font-size:20px}.timer-ring{width:220px;height:220px;position:relative}.timer-ring svg{transform:rotate(-90deg);width:100%;height:100%}.timer-ring .tt{position:absolute;inset:0;display:grid;place-items:center;font-family:Archivo,sans-serif;font-weight:800;font-size:46px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timer-launch{width:30px;height:30px;border-radius:50%;border:2px solid var(--line-strong);background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--ember);flex:none}.timer-box{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px;width:100%}.timer-time{font-family:Archivo,sans-serif;font-weight:800;font-size:40px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timer-ctrls{display:flex;gap:10px}.timer-ctrls button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);border-radius:10px;padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.yr-hero{text-align:center;padding:22px 16px;border-radius:18px;background:linear-gradient(150deg,var(--ember),var(--ember-deep));color:#fff;margin-bottom:12px}.yr-hero .big{font-family:Archivo,sans-serif;font-weight:800;font-size:44px;line-height:1}.yr-hero .lbl{font-size:13px;opacity:.9;margin-top:4px}.yr-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.yr-cell{border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--panel);text-align:center}.yr-cell b{font-family:Archivo,sans-serif;font-weight:800;font-size:22px;display:block}.yr-cell small{font-size:11px;color:var(--muted)}.cal-head{display:flex;align-items:center;justify-content:space-between;margin:8px 0}.cal-head button{border:1px solid var(--line-strong);background:var(--panel);border-radius:8px;width:30px;height:30px;cursor:pointer;color:var(--ink)}.cal-head b{font-family:Archivo,sans-serif;font-size:15px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px}.cal-dow{text-align:center;font-size:10px;color:var(--faint);font-family:IBM Plex Mono,monospace;padding-bottom:2px}.cal-cell{aspect-ratio:1;border-radius:9px;display:grid;place-items:center;font-size:12px;position:relative;border:1px solid var(--line);color:var(--muted)}.cal-cell.empty{border:0}.cal-cell.done{color:#fff;border-color:transparent}.cal-cell.missed{background:color-mix(in srgb,#d64545 22%,var(--panel-2));border-color:transparent}.cal-cell.froze{background:var(--ice);color:#fff;border-color:transparent}.cal-cell .nd{position:absolute;bottom:3px;width:4px;height:4px;border-radius:50%;background:currentColor}.corr{display:flex;gap:10px;margin-top:4px}.corr .c{flex:1 1;border:1px solid var(--line);border-radius:14px;padding:12px;text-align:center;background:var(--panel)}.corr .c b{font-family:Archivo,sans-serif;font-weight:800;font-size:22px;display:block}.corr .c small{font-size:11px;color:var(--muted)}.set-block{margin-bottom:18px}.set-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:0 4px 8px}.seg3{display:flex;gap:4px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:4px}.seg3 button{flex:1 1;border:0;background:none;padding:10px;border-radius:9px;cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);font-family:inherit}.seg3 button.on{background:var(--panel);color:var(--ember);box-shadow:0 1px 3px rgba(0,0,0,.08)}.accent-row{display:flex;gap:10px;flex-wrap:wrap}.brand-mark.clickable{cursor:pointer;border:0;padding:0}.set-field{margin-top:4px}.about{text-align:center;color:var(--faint);font-size:11px;font-family:IBM Plex Mono,monospace;margin-top:8px}.tpl-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.tpl-item{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:14px;border:1px solid var(--line);background:var(--panel);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit}.tpl-item.on{border-color:var(--ember);box-shadow:0 0 0 2px var(--ember-glow)}.tpl-item .hicon{width:38px;height:38px;border-radius:11px}.tpl-item .tt{flex:1 1;min-width:0}.tpl-item .tt b{font-size:14px;display:block}.tpl-item .tt small{font-size:11px;color:var(--muted);font-family:IBM Plex Mono,monospace}.tpl-item .tsel{width:24px;height:24px;border-radius:50%;border:2px solid var(--line-strong);display:grid;place-items:center;flex:none;color:#fff}.tpl-item.on .tsel{background:var(--ember);border-color:var(--ember)}.tpl-item .tsel svg{width:14px;height:14px;opacity:0}.tpl-item.on .tsel svg{opacity:1}.commit-btn{position:relative;overflow:hidden;width:100%;padding:15px;border:0;border-radius:14px;cursor:pointer;margin-top:16px;background:linear-gradient(150deg,var(--ember),var(--ember-deep));color:#fff;font-family:Archivo,sans-serif;font-weight:700;font-size:16px;box-shadow:0 12px 26px -12px var(--ember);touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.commit-btn:disabled{opacity:.5}.commit-btn .cfill{position:absolute;inset:0;background:hsla(0,0%,100%,.28);width:0}.commit-btn.holding .cfill{width:100%;transition:width 1.2s linear}.commit-btn .clabel{position:relative;z-index:1}.commit-hint{text-align:center;font-size:11.5px;color:var(--muted);margin-top:8px}.tpl-quick{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin:6px 0 4px}.tpl-quick button{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink-soft);font-size:12px;cursor:pointer;font-family:inherit}.level-card{display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;margin-bottom:8px;background:linear-gradient(150deg,var(--ember),var(--ember-deep));color:#fff;box-shadow:0 14px 30px -16px var(--ember)}.level-badge{width:60px;height:60px;border-radius:16px;flex:none;display:grid;place-items:center;background:hsla(0,0%,100%,.18);font-family:Archivo,sans-serif;font-weight:800;font-size:24px}.level-badge small{display:block;font-size:9px;font-weight:600;letter-spacing:.1em;opacity:.85}.level-info{flex:1 1}.level-info b{font-family:Archivo,sans-serif;font-weight:800;font-size:18px}.level-info .xpbar{height:8px;border-radius:999px;background:hsla(0,0%,100%,.25);margin-top:8px;overflow:hidden}.level-info .xpbar i{display:block;height:100%;background:#fff;border-radius:999px}.level-info small{font-size:11.5px;opacity:.9;display:block;margin-top:6px;font-family:IBM Plex Mono,monospace}.award-summary{text-align:center;color:var(--muted);font-size:13px;margin:14px 0 12px}.award-summary b{color:var(--ember);font-family:Archivo,sans-serif}.badge-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.badge{border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--panel);display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;position:relative}.badge.locked{opacity:.55}.badge .bic{font-size:30px;filter:none}.badge.locked .bic{filter:grayscale(1)}.badge b{font-size:13px}.badge .bd{font-size:11px;color:var(--muted);line-height:1.35}.badge .bprog{width:100%;height:5px;border-radius:999px;background:var(--panel-2);overflow:hidden;margin-top:4px}.badge .bprog i{display:block;height:100%;background:var(--ember);border-radius:999px}.badge .check-tick{position:absolute;top:8px;right:8px;color:var(--good);font-size:13px}textarea{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;background:var(--panel);color:var(--ink);font-size:14px;font-family:inherit;resize:vertical;min-height:64px}textarea:focus{outline:2px solid var(--ember);outline-offset:1px;border-color:var(--ember)}.reflect-head{display:flex;align-items:center;justify-content:space-between;margin:26px 0 12px}.reflect-head .t{font-family:Archivo,sans-serif;font-weight:700;font-size:17px}.reflect-head .w{font-size:11px;color:var(--faint);font-family:IBM Plex Mono,monospace}.saved-tag{font-size:12px;color:var(--good);font-weight:600}.past-list{display:flex;flex-direction:column;gap:8px;margin-top:2px}.past-item{border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:var(--panel)}.past-item .pw{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.06em;color:var(--faint);text-transform:uppercase}.past-item .pq{font-size:13px;margin-top:5px;line-height:1.5;color:var(--ink-soft)}.past-item .pq .k{color:var(--muted);font-weight:600}.past-empty{color:var(--faint);font-size:12.5px;padding:4px 2px}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.pane{flex:1 1;display:flex;flex-direction:column}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}button{transition:transform .1s ease,opacity .15s ease}.card,input,select,textarea{transition:border-color .15s ease,box-shadow .15s ease}.check{transition:background .22s ease,border-color .22s ease,transform .12s ease}.feed-card,.frow,.hrow,.tpl-item{transition:border-color .15s ease,box-shadow .15s ease}@media (prefers-reduced-motion:no-preference){.pane{animation:fadeUp .26s ease both}button:active{transform:scale(.96)}.btn:active,.commit-btn:active,.primary:active{transform:scale(.985)}.check:active,.mood-face:active .fc,.pick-emoji:active,.react-btn:active{transform:scale(.9)}.frow:active,.hrow:active,.tpl-item:active{transform:scale(.995)}}body{font-size:15.5px;letter-spacing:-.005em}.section-title{margin:2px 0 14px}.card{border-radius:18px}.feed-head .fu b,.frow .fu b,.hbody b{letter-spacing:-.01em}