.jr{box-sizing:border-box;position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;overflow-y:auto;max-width:460px;margin:0 auto;padding:18px 16px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;color:var(--text);font-family:var(--font-ui)}.jr-head{display:flex;align-items:center;gap:14px}.jr-ic,.jr-ph{width:46px;height:46px;flex:none}.jr-ic{box-sizing:border-box;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:inherit;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.jr-ic svg{width:19px;height:19px}.jr-pb{flex:1;display:flex;gap:5px}.jr-pb i{flex:1;height:4px;border-radius:2px;background:var(--panel-3)}.jr-pb i.on{background:var(--pill)}.jr-skip,.jr-link{min-height:44px;border:0;background:none;color:var(--muted);font:inherit;font-size:14.5px;cursor:pointer;padding:0 6px}.jr-skip{width:46px;padding:0}.jr-link{align-self:center}.jr-body{flex:1;display:flex;flex-direction:column;gap:14px;padding-top:28px}.jr-h1{font-size:29px;font-weight:400;line-height:1.12;letter-spacing:-.01em;margin:0}.jr-p{font-size:14.5px;line-height:1.4;color:var(--text-2);margin:-6px 0 6px}.jr-c{text-align:center}.jr-stack{display:flex;flex-direction:column;gap:8px}.jr-row{display:flex;align-items:center;gap:10px}.jr-between{justify-content:space-between}.jr-grow{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left}.jr-grow b{font-weight:500;font-size:15.5px}.jr-grow small,.jr-small{font-size:12.5px;color:var(--muted)}.jr-opt,.jr-habit,.jr-plan,.jr-tile,.jr-chip,.jr-in{font:inherit;color:inherit;box-sizing:border-box;border:1px solid var(--border);background:var(--panel)}.jr-opt{min-height:56px;border-radius:28px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font-size:15.5px;cursor:pointer}.jr-opt.on,.jr-tile.on,.jr-chip.on,.jr-plan.on{background:var(--pill);color:var(--pill-ink);border-color:transparent;font-weight:500}.jr-rd{width:20px;height:20px;flex:none;box-sizing:border-box;border-radius:50%;border:1.5px solid currentColor;opacity:.7}.on>.jr-rd{border-width:6px;opacity:1}.jr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.jr-tile{min-height:82px;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:14px;cursor:pointer;padding:6px 4px}.jr-e{font-size:22px;line-height:1}.jr-time{font-size:20px;font-weight:400}.jr-habit{min-height:62px;border-radius:24px;display:flex;align-items:center;gap:10px;padding:0 12px;cursor:pointer;text-align:left}.jr-habit.on{background:var(--done-bg);border-color:var(--done-line);color:var(--done-ink)}.jr-ch{width:42px;height:42px;flex:none;border-radius:50%;background:var(--panel-3);display:flex;align-items:center;justify-content:center;font-size:20px}.jr-ck{width:26px;height:26px;flex:none;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--muted);display:flex;align-items:center;justify-content:center;color:transparent}.jr-habit.on .jr-ck{background:var(--done-btn);border-color:transparent;color:var(--done-btn-ink)}.jr-ck svg{width:15px;height:15px}.jr-card{border-radius:24px;background:var(--panel);border:1px solid var(--border);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.jr-note{margin:0;font-size:14px;line-height:1.4;color:var(--text-2)}.jr-lab{font-weight:500;font-size:16px}.jr-lbl{font-size:13.5px;color:var(--muted);margin:6px 0 -6px 4px}.jr-in{height:56px;border-radius:28px;padding:0 20px;font-size:15.5px;width:100%}.jr-in::placeholder{color:var(--text-faint)}.jr-chips{display:flex;flex-wrap:wrap;gap:8px}.jr-chip{min-height:44px;border-radius:22px;padding:0 16px;font-size:14.5px;cursor:pointer;display:inline-flex;align-items:center}.jr-seg button{min-height:44px}.jr-week{display:flex;justify-content:space-between}.jr-dc{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.jr-d{width:38px;height:38px;box-sizing:border-box;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center}.jr-d svg{width:16px;height:16px}.jr-d.d{background:var(--accent);border-color:transparent;color:var(--accent-ink)}.jr-d.g{background:var(--grace);border-color:transparent;color:var(--grace-ink)}.jr-d.t{border:1.5px solid var(--text)}.jr-dot{width:12px;height:12px;flex:none;border-radius:50%;background:var(--grace)}.jr-app{width:38px;height:38px;flex:none;border-radius:10px;background:var(--pill);color:var(--pill-ink);display:flex;align-items:center;justify-content:center;font-weight:600}.jr-ring{width:40px;height:40px;flex:none}.jr-chat{padding:18px 14px}.jr-bub{max-width:300px;padding:12px 14px 9px;border-radius:20px 20px 20px 6px;background:var(--pill);color:var(--pill-ink);font-size:15.5px;line-height:1.3}.jr-bub small{display:block;font-size:12px;opacity:.66;margin-bottom:3px}.jr-bub em{display:block;font-style:normal;text-align:right;font-size:12px;opacity:.66;margin-top:3px}.jr-sig{padding:18px}.jr-sig p{margin:0;font-size:17px;line-height:1.35}.jr-line{height:58px;border-bottom:1.5px dashed var(--muted);display:flex;align-items:flex-end;padding-bottom:4px}.jr-hand{font-family:Caveat,Bradley Hand,cursive;font-size:38px;line-height:1}.jr-badge{align-self:flex-start;height:26px;display:inline-flex;align-items:center;padding:0 11px;border-radius:13px;background:var(--pill);color:var(--pill-ink);font-size:13px;font-weight:500}.jr-perks{list-style:none;margin:-4px 0 0;padding:0;display:flex;flex-direction:column}.jr-perks li{display:flex;align-items:center;gap:11px;min-height:38px;font-size:14.5px}.jr-ok{width:22px;height:22px;flex:none;border-radius:50%;background:var(--accent-dim);color:var(--accent);display:flex;align-items:center;justify-content:center}.jr-ok svg{width:13px;height:13px}.jr-plan{min-height:66px;border-radius:24px;padding:0 18px;display:flex;align-items:center;gap:10px;cursor:pointer}.jr-plan small{color:inherit;opacity:.72}.jr-price{font-size:17px;font-weight:500}.jr-list{gap:0;padding:4px 16px}.jr-list .jr-row{min-height:44px;font-size:15px}.jr-foot{display:flex;flex-direction:column;gap:4px;padding-top:18px}.jr-btn{height:56px;box-sizing:border-box;border-radius:28px;border:1px solid var(--border);background:var(--panel);color:inherit;font:inherit;font-size:15.5px;cursor:pointer;width:100%;position:relative;overflow:hidden}.jr-btn.pri{background:var(--pill);color:var(--pill-ink);border-color:transparent;font-weight:500}.jr-btn:disabled{opacity:.6}.jr-hold{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.jr-hold i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);opacity:.45;transition:width 0s}.jr-hold.holding i{width:100%;transition:width .7s linear}.jr-hold span{position:relative}.jr-opt:focus-visible,.jr-tile:focus-visible,.jr-habit:focus-visible,.jr-plan:focus-visible,.jr-chip:focus-visible,.jr-btn:focus-visible,.jr-ic:focus-visible,.jr-skip:focus-visible,.jr-link:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media(prefers-reduced-motion:reduce){.jr-hold.holding i{transition:none}}.aj-filters{flex-wrap:wrap;gap:8px}.aj-filters .seg button{min-height:36px;padding:0 12px;white-space:nowrap}.aj-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.aj-table{display:flex;flex-direction:column;gap:6px;overflow-x:auto;margin:10px 0 6px}.aj-tr{display:grid;min-width:760px;grid-template-columns:minmax(0,2.4fr) 56px minmax(0,.7fr) minmax(0,.8fr) minmax(0,1.1fr) minmax(0,.8fr) minmax(0,.9fr) minmax(0,1.7fr);align-items:center;column-gap:10px;min-height:52px;box-sizing:border-box;padding:0 14px;border-radius:22px;background:var(--panel);border:1px solid var(--border);font-size:14px}.aj-tr>span{text-align:right;white-space:nowrap}.aj-tr>span:first-child{text-align:left}.aj-th{min-height:26px;background:none;border-color:transparent;font-size:12.5px;color:var(--muted)}.aj-tr.sel{background:var(--panel-3)}.aj-tr.off{color:var(--muted)}.aj-name{border:0;background:none;color:inherit;font:inherit;cursor:pointer;padding:0;min-height:44px;display:inline-flex;align-items:center;gap:8px}.aj-name b{font-weight:500}.aj-chip{font-size:11.5px;padding:2px 8px;border-radius:10px;background:var(--grace-dim);color:var(--grace)}.aj-sw input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.aj-detail{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.aj-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.aj-q{margin-bottom:12px}.aj-skip{color:var(--muted);font-size:12px}:root{color-scheme:dark;--bg: #0b0d12;--panel: #12151d;--panel-2: #171b24;--panel-3: #1e2330;--border: #232834;--border-strong: #303646;--hairline: #1c2029;--text: #eef0f6;--text-2: #a8b0c2;--muted: #8e96ab;--text-faint: #5b6375;--accent: #34d399;--accent-ink: #04231a;--accent-dim: rgba(52, 211, 153, .12);--accent-ghost: rgba(52, 211, 153, .055);--accent-border: rgba(52, 211, 153, .38);--accent-2: #0ea5e9;--ok: var(--accent);--ok-dim: var(--accent-dim);--ok-ink: var(--accent-ink);--grace: #fbbf24;--grace-dim: rgba(251, 191, 36, .12);--grace-ink: #231806;--miss: #f87171;--miss-dim: rgba(248, 113, 113, .11);--miss-ink: #2a0f0f;--warn: var(--grace);--warn-dim: var(--grace-dim);--danger: var(--miss);--danger-dim: var(--miss-dim);--ring-track: rgba(255, 255, 255, .07);--shadow-0: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .24);--shadow-2: 0 12px 32px -8px rgba(0, 0, 0, .5), 0 2px 6px rgba(0, 0, 0, .3);--shadow: var(--shadow-1);--focus-ring: 0 0 0 3px rgba(52, 211, 153, .32);--focus-color: var(--accent);--bg-glow: radial-gradient(1100px 520px at 50% -15%, rgba(255, 255, 255, .028), transparent 70%);--grad: linear-gradient(135deg, #34d399, #10b981);--t-micro: .6875rem;--t-caption: .75rem;--t-small: .8125rem;--t-body: .9375rem;--t-lead: 1.0625rem;--t-title: 1.3125rem;--t-display: 1.75rem;--t-hero: 2.5rem;--w-regular: 400;--w-medium: 500;--w-semibold: 600;--w-bold: 700;--lh-tight: 1.15;--lh-snug: 1.3;--lh-normal: 1.5;--ls-tight: -.02em;--ls-snug: -.01em;--ls-wide: .08em;--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-num: "Space Grotesk", "Inter", system-ui, sans-serif;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--r-1: 6px;--r-2: 10px;--r-3: 14px;--r-4: 20px;--r-pill: 999px;--radius: var(--r-4);--radius-s: var(--r-2);--w-phone: 560px;--w-read: 680px;--w-list: 640px;--w-max: 1320px;--rail-w: 232px;--ctx-w: 348px;--gutter: var(--s-5);--col-count: 72px;--row-h: 56px;--tap: 44px;--e-out: cubic-bezier(.22, 1, .36, 1);--e-spring: cubic-bezier(.22, 1.4, .36, 1);--d-1: .12s;--d-2: .22s;--d-3: .38s;font-size:16px}:root[data-theme=light]{color-scheme:light;--bg: #f4f6f9;--panel: #ffffff;--panel-2: #eef1f6;--panel-3: #e5e9f0;--border: #e2e6ee;--border-strong: #cdd4e0;--hairline: #ebeef4;--text: #101521;--text-2: #4a5568;--muted: #6b7488;--text-faint: #99a1b3;--accent: #047857;--accent-ink: #ffffff;--accent-dim: #e4f5ed;--accent-ghost: #f1faf6;--accent-border: #a7d9c4;--accent-2: #0284c7;--grace: #a3560a;--grace-dim: #fdf3e0;--grace-ink: #ffffff;--miss: #c72222;--miss-dim: #fdeaea;--miss-ink: #ffffff;--ring-track: #e2e6ee;--shadow-0: none;--shadow-1: 0 1px 2px rgba(16, 24, 40, .06);--shadow-2: 0 12px 32px -8px rgba(16, 24, 40, .16), 0 2px 6px rgba(16, 24, 40, .06);--focus-ring: 0 0 0 3px rgba(4, 120, 87, .24);--bg-glow: none;--grad: linear-gradient(135deg, #059669, #047857)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);background-image:var(--bg-glow);color:var(--text);font-family:var(--font-ui);font-size:var(--t-body);line-height:var(--lh-normal);font-weight:var(--w-regular);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color var(--d-2),color var(--d-2)}h1,h2,h3,.logo,.streak,.ring-pct,.goal-nums,.limit-used,.stat-val,.hcount,.wnum,.year-label,.stat-card .num,.pro-plans,.tour-logo{font-family:var(--font-num);letter-spacing:var(--ls-snug);line-height:var(--lh-snug)}h1{font-size:var(--t-title);font-weight:var(--w-bold)}h2{font-size:var(--t-lead);font-weight:var(--w-semibold)}h3{font-size:var(--t-body);font-weight:var(--w-semibold)}.hcount,.streak,.ring-pct,.goal-nums,.limit-used,.stat-val,.wnum,.year-label,.stat-card .num,.merge-counts,.feed-streak,.hist-streak,.src-num,.day-num,.todo-remind-val,.scrub-bubble,.pro-plans{font-variant-numeric:tabular-nums}a{color:var(--accent);text-decoration-color:var(--accent-border);text-underline-offset:3px}a:hover{color:var(--text);text-decoration-color:var(--border-strong)}:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px;border-radius:var(--r-1)}.cat-header,.flabel-web,.loc-head{font-size:var(--t-micro);font-weight:var(--w-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--muted)}.cat-header{margin:var(--s-5) var(--s-2) var(--s-2)}.hint{color:var(--muted);font-size:var(--t-small);line-height:var(--lh-normal)}.hint.big{font-size:var(--t-body);text-align:center;padding:var(--s-7) var(--s-3)}.msg{margin:var(--s-3) 0;color:var(--grace)}.msg.error{color:var(--miss)}#root{max-width:var(--w-phone);margin:0 auto;padding:var(--s-4) var(--s-4) var(--s-8)}.center{display:grid;place-items:center;min-height:70vh;color:var(--muted)}header{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-1) 0 var(--s-2)}header .logo{font-size:var(--t-title)}header .today{flex:1;min-width:0;color:var(--muted);font-size:var(--t-small)}main{display:flex;flex-direction:column;gap:var(--s-4)}footer{padding:var(--s-6) 0 0;text-align:center}.app-shell{display:contents}.bottomnav{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;justify-content:center;gap:var(--s-1);padding:var(--s-2) var(--s-3) calc(var(--s-2) + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--border)}@supports (backdrop-filter: blur(1px)){.bottomnav{background:color-mix(in srgb,var(--panel) 82%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4)}}.bnav{position:relative;flex:1;max-width:96px;display:flex;flex-direction:column;align-items:center;gap:var(--s-1);min-height:var(--tap);background:none;border:none;box-shadow:none;border-radius:var(--r-2);color:var(--muted);padding:var(--s-2) var(--s-1) var(--s-1);font-size:var(--t-micro);font-weight:var(--w-medium);transition:color var(--d-1)}.bnav:hover{color:var(--text);background:none;filter:none}.bnav:active{transform:none}.bnav svg{display:block}.bnav-label{font-size:var(--t-micro);letter-spacing:.01em;white-space:nowrap}.bnav.on{color:var(--text)}.bnav.on .bnav-label{font-weight:var(--w-semibold)}.bnav.on:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);width:20px;height:2px;border-radius:0 0 2px 2px;background:var(--text)}.bottomnav.is-rail{position:sticky;top:0;bottom:auto;left:auto;right:auto;width:var(--rail-w);height:100vh;height:100dvh;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:var(--s-1);padding:var(--s-5) var(--s-3);border-top:none;border-right:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:none;backdrop-filter:none}.bottomnav.is-rail .bnav{flex:none;max-width:none;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--s-3);padding:var(--s-3);border-radius:var(--r-2);transition:background var(--d-1),color var(--d-1)}.bottomnav.is-rail .bnav-label{font-size:var(--t-body);letter-spacing:0}.bottomnav.is-rail .bnav:hover{background:var(--panel-3)}.bottomnav.is-rail .bnav.on{background:var(--panel-2);color:var(--text)}.bottomnav.is-rail .bnav.on:before{display:none}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-4);display:flex;flex-direction:column;gap:var(--s-3);box-shadow:var(--shadow-0);transition:border-color var(--d-1)}.card:hover{border-color:var(--border-strong)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3)}.section-title,.sect-title{font-size:var(--t-lead);font-weight:var(--w-semibold);letter-spacing:var(--ls-snug)}.row{display:flex;gap:var(--s-2);align-items:center}.hero{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-4);border-radius:var(--r-3);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-1)}.hero-text{flex:1;min-width:0}.hero-text h2{font-size:var(--t-lead);font-weight:var(--w-semibold);letter-spacing:var(--ls-snug)}.hero-text p{color:var(--text-2);font-size:var(--t-small);margin-top:var(--s-1);line-height:var(--lh-normal)}.ring-wrap{position:relative;width:116px;height:116px;flex:none}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.ring-pct{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--ls-tight)}.ring-pct em{font-style:normal;font-size:var(--t-body);color:var(--muted);font-weight:var(--w-medium)}.ring-emoji{font-size:var(--t-display)}.ring-wrap.sm{width:44px;height:44px}.ring-wrap.sm .ring-pct{font-size:var(--t-caption)}.ring-wrap.sm .ring-pct em{font-size:var(--t-micro)}.ring-wrap.sm .ring-emoji{font-size:var(--t-body)}.wstrip-wrap{display:flex;flex-direction:column;gap:var(--s-2)}.wstrip-head{display:flex;justify-content:space-between;align-items:center;padding:0 var(--s-1)}.wstrip{display:flex;gap:var(--s-1);padding:var(--s-2) var(--s-1);background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-0)}.wnav{flex:none;width:28px;min-height:var(--tap);background:none;border:none;box-shadow:none;color:var(--muted);font-size:var(--t-lead);font-weight:var(--w-medium);padding:0;border-radius:var(--r-1)}.wnav:hover{filter:none;color:var(--text);background:var(--panel-3)}.wnav:disabled{opacity:.28;cursor:default}.wnav:disabled:hover{background:none;color:var(--muted)}.wday{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--s-1);min-height:var(--tap);padding:var(--s-2) 0 var(--s-1);border-radius:var(--r-2);color:var(--muted);border:1px solid transparent;background:none;box-shadow:none;font-weight:var(--w-regular);transition:background var(--d-1),color var(--d-1)}.wday:hover{filter:none;background:var(--panel-3)}.wday:active{transform:none}.wday.sel{background:var(--panel-3);border-color:var(--border-strong);color:var(--text)}.wday.sel:hover{background:var(--panel-3)}.wday.today .wnum{color:var(--text)}.wday.today:after{content:"";width:3px;height:3px;border-radius:50%;background:var(--text);margin-top:-2px}.wday.future{color:var(--text-faint);cursor:default}.wday.future:hover{background:none}.wdow{font-size:var(--t-micro);font-weight:var(--w-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide)}.wnum{font-size:var(--t-body);font-weight:var(--w-bold);font-family:var(--font-num)}.wdot{width:5px;height:5px;border-radius:50%;background:transparent}.wdot.full{background:var(--ok)}.wdot.part{background:var(--grace)}.wdot.zero{background:var(--miss)}input,select,textarea{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-2);padding:var(--s-3) var(--s-3);font-size:var(--t-body);font-family:inherit;line-height:var(--lh-snug);width:100%;min-height:var(--tap);transition:border-color var(--d-1),box-shadow var(--d-1)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-border);box-shadow:var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--text-faint)}textarea{resize:vertical;min-height:72px}button{background:var(--grad);color:var(--accent-ink);border:none;border-radius:var(--r-2);padding:var(--s-3) var(--s-4);min-height:var(--tap);font-size:var(--t-body);font-weight:var(--w-semibold);font-family:inherit;cursor:pointer;box-shadow:var(--shadow-0);transition:filter var(--d-1),transform 90ms var(--e-spring),box-shadow var(--d-1)}button:hover{filter:brightness(1.06)}button:active{transform:scale(.975)}button:disabled{opacity:.42;cursor:not-allowed;filter:none}button.btn-secondary,.act,.ghost-btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);box-shadow:none;font-weight:var(--w-medium)}button.btn-secondary:hover,.act:hover,.ghost-btn:hover{filter:none;background:var(--panel-3);border-color:var(--border-strong)}.act{flex:1}.act.done.active{background:var(--ok-dim);border-color:var(--accent-border);color:var(--ok)}.act.rest.active{background:var(--grace-dim);border-color:var(--grace);color:var(--grace)}.act.skip.active{background:var(--miss-dim);border-color:var(--miss);color:var(--miss)}.act.start{background:var(--accent);color:var(--accent-ink);border-color:transparent}.act.stop{background:var(--grace);color:var(--grace-ink);border-color:transparent}.actions{display:flex;gap:var(--s-2)}button.link{background:none;border:none;box-shadow:none;color:var(--muted);padding:var(--s-1) var(--s-2);min-height:auto;font-size:var(--t-small);font-weight:var(--w-regular);text-decoration:underline;text-underline-offset:3px}button.link:hover{filter:none;color:var(--text)}button.link.danger{color:var(--miss)}.link.subtle{color:var(--muted);font-size:var(--t-small);align-self:flex-start}.icon-btn{background:none;border:none;box-shadow:none;color:var(--muted);cursor:pointer;display:grid;place-items:center;min-width:var(--tap);min-height:var(--tap);margin:calc(var(--s-2) * -1) calc(var(--s-1) * -1);padding:0;border-radius:var(--r-2)}.icon-btn:hover{filter:none;background:var(--panel-3);color:var(--text)}.icon-btn.danger:hover{color:var(--miss);background:var(--miss-dim)}.theme-btn,.avatar-btn{background:none;border:none;box-shadow:none;padding:0;flex:none;border-radius:50%;width:var(--tap);height:var(--tap);display:grid;place-items:center;color:var(--muted);cursor:pointer;transition:color var(--d-1),background var(--d-1)}.theme-btn:hover{color:var(--text);background:var(--panel-2);filter:none;transform:none}.avatar-btn:hover{filter:none}.avatar-btn.on .header-avatar{border-color:var(--border-strong);box-shadow:none}.seg{display:flex;gap:var(--s-1)}.seg button{flex:1;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);font-size:var(--t-small);font-weight:var(--w-medium);padding:var(--s-3) var(--s-1);box-shadow:none}.seg button.on{background:var(--panel-3);color:var(--text);border-color:var(--border-strong);font-weight:var(--w-semibold)}.seg.small button{padding:var(--s-1) var(--s-3);font-size:var(--t-caption);min-height:32px}.days{display:flex;gap:var(--s-1)}.day{flex:1;padding:var(--s-3) 0;min-height:var(--tap);background:var(--panel-2);border:1px solid var(--border);color:var(--muted);font-size:var(--t-small);font-weight:var(--w-medium);box-shadow:none}.day.on{background:var(--ok-dim);color:var(--ok);border-color:var(--accent-border)}.badge,.feed-badge,.hist-chip,.guide-badge,.test-chip{border-radius:var(--r-pill);font-size:var(--t-caption);font-weight:var(--w-medium);white-space:nowrap}.badge{background:var(--panel-2);color:var(--muted);padding:var(--s-1) var(--s-3);border:1px solid var(--border)}.toggle{flex:none;width:46px;height:28px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--panel-2);position:relative;cursor:pointer;padding:0;min-height:auto;box-shadow:none;transition:background var(--d-2),border-color var(--d-2)}.toggle .knob{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--muted);transition:transform var(--d-2) var(--e-out),background var(--d-2)}.toggle.on{background:var(--ok);border-color:transparent}.toggle.on .knob{transform:translate(18px);background:var(--accent-ink)}.toggle-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3)}.add-btn{background:none;border:1px dashed var(--border-strong);color:var(--muted);border-radius:var(--r-3);padding:var(--s-4);font-weight:var(--w-medium);box-shadow:none}.add-btn:hover{border-color:var(--accent-border);color:var(--accent);filter:none;background:var(--accent-ghost)}.add-btn.small{padding:var(--s-3);font-size:var(--t-small)}.hlist{display:flex;flex-direction:column;gap:0}.hlist .cat-header{margin:var(--s-5) var(--s-2) var(--s-2)}.hcard{background:var(--panel);border:1px solid var(--border);border-top-color:var(--hairline);border-radius:0;box-shadow:var(--shadow-0);overflow:hidden;transition:background var(--d-1)}.hlist>.hcard:first-child,.cat-header+.hcard{border-top-color:var(--border);border-top-left-radius:var(--r-3);border-top-right-radius:var(--r-3)}.hlist>.hcard:last-child,.hcard:has(+.cat-header){border-bottom-left-radius:var(--r-3);border-bottom-right-radius:var(--r-3)}.hcard:hover{border-color:var(--border);background:var(--panel-3)}.hcard:has(.hdetail){border-color:var(--border);box-shadow:var(--shadow-1)}.hrow{position:relative;display:flex;align-items:center;gap:var(--s-3);min-height:var(--row-h);padding:var(--s-2) var(--s-3)}.hfill{position:absolute;inset:0 auto 0 0;width:0%;pointer-events:none;background:var(--accent-ghost);border-right:2px solid var(--accent-border);transition:width var(--d-3) var(--e-out)}.f-ok .hfill{background:var(--accent-ghost);border-right-color:var(--accent-border)}.f-warn .hfill{background:var(--grace-dim);border-right-color:var(--grace)}.f-bad .hfill{background:var(--miss-dim);border-right-color:var(--miss)}.hfill[style*="width: 0%"]{border-right-width:0}.hrow-main{position:relative;flex:1;min-width:0;display:flex;align-items:center;gap:var(--s-3);background:none;border:none;box-shadow:none;border-radius:0;padding:var(--s-1) 0;min-height:auto;color:var(--text);text-align:left;font-weight:var(--w-regular)}.hrow-main:hover{filter:none}.hrow-main:active{transform:none}.hrow-emoji{width:32px;height:32px;flex:none;border-radius:var(--r-2);background:var(--panel-2);border:1px solid var(--hairline);display:grid;place-items:center;font-size:var(--t-body);transition:background var(--d-2),border-color var(--d-2)}.hrow-emoji.limit{background:var(--panel-2);border-color:var(--hairline)}.hrow-text{min-width:0;display:flex;flex-direction:column;gap:1px}.hrow-name{display:block;font-size:var(--t-body);font-weight:var(--w-semibold);letter-spacing:var(--ls-snug);line-height:var(--lh-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hrow-sub{display:block;font-size:var(--t-small);color:var(--text-2);line-height:var(--lh-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hrow-ctrl{position:relative;flex:none;display:flex;align-items:center;gap:var(--s-3)}.hcount{min-width:var(--col-count);text-align:right;font-family:var(--font-num);font-size:var(--t-small);font-weight:var(--w-semibold);color:var(--muted);white-space:nowrap;transition:color var(--d-2)}.hcount.ok,.hcount.run{color:var(--ok)}.hcount.over{color:var(--miss)}.ck{width:var(--tap);height:var(--tap);flex:none;min-height:var(--tap);padding:0;border:none;background:none;box-shadow:none;display:grid;place-items:center;border-radius:50%;color:var(--muted);font-size:var(--t-small);font-weight:var(--w-bold);position:relative;transition:color var(--d-1)}.ck:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;border:1.5px solid var(--border-strong);background:var(--panel-2);transition:background var(--d-2) var(--e-out),border-color var(--d-2),transform var(--d-2) var(--e-spring)}.ck>*,.ck{z-index:0}.ck:before{z-index:-1}.ck:hover:before{border-color:var(--muted)}.ck:active:before{transform:scale(.9)}.ck.on{color:var(--accent-ink)}.ck.on:before{background:var(--accent);border-color:transparent;animation:ck-land var(--d-3) var(--e-spring)}.ck.rest{color:var(--grace)}.ck.rest:before{background:var(--grace-dim);border-color:var(--grace)}.ck.skip{color:var(--miss)}.ck.skip:before{background:var(--miss-dim);border-color:var(--miss)}.ck.play,.ck.plus{color:var(--text);font-size:var(--t-lead)}.ck.play:before,.ck.plus:before{background:var(--panel-3);border-color:var(--border-strong)}.ck.play:hover,.ck.plus:hover{color:var(--accent)}.ck.stop{color:var(--grace-ink)}.ck.stop:before{background:var(--grace);border-color:transparent}.ck.plus1{color:var(--miss);font-size:var(--t-caption)}.ck.plus1:before{background:var(--miss-dim);border-color:var(--miss)}@keyframes ck-land{0%{transform:scale(.68)}55%{transform:scale(1.14)}to{transform:scale(1)}}.hcard.is-done .hrow-name{color:var(--text-2);font-weight:var(--w-medium)}.hcard.is-done .hrow-emoji{background:var(--accent-ghost);border-color:var(--accent-border)}.hcard.is-done .hfill{width:0!important;border-right-width:0}.hcard.is-over .hcount{color:var(--miss);font-weight:var(--w-bold)}.hcard.is-over .hrow-sub{color:var(--miss)}.hcard.is-off .hrow-name{color:var(--muted);font-weight:var(--w-medium)}.hcard.is-off .hrow-sub{color:var(--text-faint)}.hcard.is-off .hrow-emoji{background:transparent;border-color:var(--hairline);opacity:.65}.hcard.is-off .hcount{color:var(--text-faint)}.scrub-bubble{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:6;pointer-events:none;background:var(--text);color:var(--bg);font-weight:var(--w-bold);font-size:var(--t-caption);border-radius:var(--r-pill);padding:var(--s-1) var(--s-3);white-space:nowrap;box-shadow:var(--shadow-1);max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis}.hrow-ctrl.is-scrubbing{visibility:hidden}.hdetail{border-top:1px solid var(--hairline);padding:var(--s-3);display:flex;flex-direction:column;gap:var(--s-3);background:var(--panel-2)}.hdetail .act{padding:var(--s-2) var(--s-3);font-size:var(--t-small);min-height:38px}.hdetail .week .cell{padding:var(--s-2) 0}.hdetail .cell.selcell{outline:2px solid var(--focus-color);outline-offset:-2px}.week{display:flex;gap:var(--s-1)}.cell{flex:1;text-align:center;padding:var(--s-2) 0;border-radius:var(--r-1);font-size:var(--t-micro);font-weight:var(--w-medium);background:var(--panel-2);color:var(--muted);border:1px solid transparent;transition:background var(--d-1),color var(--d-1)}.cell.ok{background:var(--ok-dim);color:var(--ok);border-color:var(--accent-border)}.cell.partial{background:var(--grace-dim);color:var(--grace);border-color:var(--grace)}.cell.miss{background:var(--miss-dim);color:var(--miss)}.cell.open{border-style:dashed;border-color:var(--border-strong);background:none}.cell.dim{background:none;color:var(--text-faint)}.dots{display:flex;gap:var(--s-2);align-items:center}.dot{width:22px;height:22px;border-radius:50%;background:var(--panel-2);border:1.5px solid var(--border);transition:background var(--d-2) var(--e-out),border-color var(--d-2)}.dot.full{background:var(--ok);border-color:transparent;animation:ck-land var(--d-3) var(--e-spring)}.dots .label{color:var(--muted);font-size:var(--t-small);margin-left:var(--s-1)}.limit-line{display:flex;align-items:center;gap:var(--s-3);justify-content:space-between}.limit-used{font-size:var(--t-body);font-weight:var(--w-semibold)}.limit-used.over{color:var(--miss);font-weight:var(--w-bold)}.limit-used.ok{color:var(--ok)}.streak{font-size:var(--t-title);font-weight:var(--w-bold);color:var(--text);white-space:nowrap}.streak small{font-size:var(--t-caption);color:var(--muted);font-weight:var(--w-medium);margin-left:var(--s-1)}.streak.clean{color:var(--text)}.emoji-chip{width:44px;height:44px;flex:none;border-radius:var(--r-2);background:var(--panel-2);border:1px solid var(--hairline);display:grid;place-items:center;font-size:var(--t-lead)}.emoji-chip.limit{background:var(--panel-2);border-color:var(--hairline)}.habit-title{display:flex;align-items:center;gap:var(--s-3);min-width:0}.habit-name{font-size:var(--t-lead);font-weight:var(--w-semibold);letter-spacing:var(--ls-snug)}.kind-tag{display:block;font-family:var(--font-ui);font-size:var(--t-caption);color:var(--muted);font-weight:var(--w-regular);margin-top:2px}.nn-star{color:var(--grace);flex:none;margin-right:var(--s-1);vertical-align:-1px}.hrow-name .nn-star{display:inline-block}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);text-align:center;padding:var(--s-8) var(--s-4);border:none;background:none}.empty-state .empty-title{font-family:var(--font-num);font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--text)}.empty-state .hint{max-width:28ch;font-size:var(--t-body)}.empty-state button{margin-top:var(--s-3)}.empty-stakes{display:flex;flex-direction:column;align-items:stretch;gap:var(--s-4);text-align:left;max-width:520px;margin-inline:auto;padding:var(--s-5);background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-1)}.empty-stakes .empty-eyebrow{font-size:var(--t-micro);font-weight:var(--w-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--muted)}.empty-stakes .empty-title{font-family:var(--font-num);font-size:var(--t-title);font-weight:var(--w-bold);letter-spacing:var(--ls-snug);line-height:var(--lh-snug);color:var(--text);margin-top:calc(var(--s-2) * -1)}.empty-steps{display:flex;flex-direction:column;gap:var(--s-3)}.empty-step{display:flex;gap:var(--s-3);align-items:flex-start}.empty-step-n{flex:none;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--panel-2);display:grid;place-items:center;font-family:var(--font-num);font-size:var(--t-micro);font-weight:var(--w-bold);color:var(--text-2);margin-top:1px}.empty-step p{font-size:var(--t-body);line-height:var(--lh-normal);color:var(--text-2)}.empty-note{display:flex;align-items:flex-start;gap:var(--s-3);padding:var(--s-3);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-2);font-size:var(--t-small);line-height:var(--lh-normal);color:var(--muted)}.empty-note:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--grace);margin-top:7px}.empty-actions{display:flex;gap:var(--s-3)}.empty-actions>*{flex:1}@media(min-width:744px){.empty-stakes{padding:var(--s-6);gap:var(--s-5)}.empty-stakes .empty-title{font-size:var(--t-display);letter-spacing:var(--ls-tight)}}.auth-wrap{text-align:center;padding-top:clamp(var(--s-4),8vh,12vh);padding-bottom:var(--s-7)}@media(max-height:760px){.auth-wrap{padding-top:var(--s-4)}.auth-wrap .tagline{margin:var(--s-2) 0 var(--s-4)}}.logo,.tour-logo{font-family:var(--font-num);font-size:var(--t-hero);font-weight:var(--w-bold);letter-spacing:var(--ls-tight);color:var(--text);background:none;-webkit-background-clip:initial;background-clip:initial}.logo .logo-dot{color:var(--accent)}.tour-logo{font-size:var(--t-title);align-self:center}.tagline{color:var(--text-2);margin:var(--s-3) 0 var(--s-6);font-size:var(--t-body)}.auth-form{display:flex;flex-direction:column;gap:var(--s-3);max-width:340px;margin:0 auto}.auth-divider{display:flex;align-items:center;gap:var(--s-3);color:var(--muted);font-size:var(--t-small);margin:var(--s-1) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.social-btn{display:flex;align-items:center;justify-content:center;gap:var(--s-2)}.auth-banner{background:var(--ok-dim);color:var(--ok);border:1px solid var(--accent-border);border-radius:var(--r-2);padding:var(--s-3);font-size:var(--t-small);font-weight:var(--w-semibold);max-width:460px;margin:0 auto var(--s-4)}.hmodal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding:var(--s-6) var(--s-4) var(--s-4);overflow-y:auto}@supports (backdrop-filter: blur(1px)){.hmodal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.hmodal-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-4);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-4);box-shadow:var(--shadow-2);animation:hmodal-in var(--d-2) var(--e-out)}@keyframes hmodal-in{0%{transform:translateY(12px) scale(.985);opacity:0}to{transform:none;opacity:1}}.hmodal-head{display:flex;align-items:center;gap:var(--s-3)}.hmodal-title{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.hmodal-title .hrow-name{font-size:var(--t-lead)}.hrow-emoji.big{width:48px;height:48px;font-size:var(--t-title);border-radius:var(--r-2)}.close-x{font-size:var(--t-lead);padding:var(--s-2);text-decoration:none}.hmodal-ring{position:relative;align-self:center;margin:var(--s-1) 0;color:var(--ok)}.hmodal-panel.f-warn .hmodal-ring{color:var(--grace)}.hmodal-panel.f-bad .hmodal-ring{color:var(--miss)}.hmodal-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:var(--t-lead);font-weight:var(--w-bold)}.exact-add{display:flex;flex-direction:column;gap:var(--s-2);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-2);padding:var(--s-3)}.exact-add .row{display:flex;gap:var(--s-2);align-items:center}.exact-add button{min-width:48px;font-weight:var(--w-bold);font-size:var(--t-lead)}.exact-add button.on{border-color:var(--accent-border);color:var(--accent);background:var(--ok-dim)}.exact-add input{flex:1;min-width:0}.card-foot{display:flex;justify-content:space-between;align-items:center}.note-link{text-align:left;align-self:flex-start}.edit-form,.add-form,.support-form,.account-form{display:flex;flex-direction:column;gap:var(--s-3)}.account-form{flex-direction:row}.add-form .row{display:flex;gap:var(--s-2);align-items:center}.emoji-in{width:64px;text-align:center;flex:none}.unit-in{width:96px;flex:none}.grace,.inline-label{display:flex;gap:var(--s-3);align-items:center;color:var(--muted);font-size:var(--t-small);flex-wrap:wrap}.grace select,.inline-label select,.inline-label input{width:auto}.inline-label input[type=number]{width:80px}.field{display:flex;flex-direction:column;gap:var(--s-1);flex:1 1 0;min-width:0}.field>input,.field>select{width:100%}.fhint{color:var(--muted);font-size:var(--t-caption);line-height:var(--lh-snug)}.grace-note{text-align:left;font-size:var(--t-small);line-height:var(--lh-normal);color:var(--text-2);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-2);padding:var(--s-3)}.history{display:flex;flex-direction:column;gap:var(--s-4)}.heatmap-year{display:flex;gap:2px;width:100%}.heatmap-year .hm-col{flex:1;min-width:0}.heatmap-year .hm{width:100%;aspect-ratio:1;height:auto;border-radius:2px;cursor:default}.hm-col{display:flex;flex-direction:column;gap:2px}.hm{width:18px;height:18px;border-radius:var(--r-1);border:none;padding:0;min-height:auto;background:var(--panel-2);box-shadow:none}.hm.kept{background:var(--ok)}.hm.rest{background:var(--grace)}.hm.skip{background:var(--miss)}.hm.miss{background:var(--miss-dim)}.hm.partial{background:var(--grace-dim)}.hm.open{background:var(--panel-2);border:1px dashed var(--border-strong)}.hm.off{background:var(--panel-2);opacity:.45}.hm.future,.hm.before{background:transparent;border:1px solid var(--hairline)}.hm.before{opacity:.6}.hm.pad{background:transparent;border:none}.hm.selected{outline:2px solid var(--focus-color);outline-offset:1px}.year-nav{display:flex;align-items:center;justify-content:center;gap:var(--s-2)}.year-nav .wnav{width:36px;height:36px;font-size:var(--t-lead)}.year-label{font-size:var(--t-lead);font-weight:var(--w-bold);min-width:72px;text-align:center}.legend{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap;font-size:var(--t-caption);color:var(--muted)}.legend .hm{width:12px;height:12px}.hist-chips{display:flex;gap:var(--s-2);overflow-x:auto;padding-bottom:var(--s-1);scrollbar-width:none}.hist-chips::-webkit-scrollbar{display:none}.hist-chip{flex:none;display:inline-flex;align-items:center;gap:var(--s-2);background:var(--panel-2);border:1px solid var(--border);color:var(--muted);padding:var(--s-2) var(--s-3);font-weight:var(--w-medium);box-shadow:none;min-height:40px}.hist-chip:hover{filter:none;color:var(--text);background:var(--panel-3)}.hist-chip.on{background:var(--panel-3);border-color:var(--border-strong);color:var(--text);font-weight:var(--w-semibold)}.hc-emoji{font-size:var(--t-body)}.hc-name{max-width:130px;overflow:hidden;text-overflow:ellipsis}.hist-streak{color:var(--text);font-weight:var(--w-bold);font-size:var(--t-small)}.hist-sum{display:flex;align-items:baseline;gap:var(--s-4);color:var(--muted);font-size:var(--t-small)}.hist-sum strong{color:var(--text);font-size:var(--t-body)}.hist-rate{margin-left:auto}.hist-rate strong{color:var(--ok)}.day-editor{border-top:1px solid var(--hairline);padding-top:var(--s-3);display:flex;flex-direction:column;gap:var(--s-3)}.day-editor-head{display:flex;justify-content:space-between;align-items:center}.bulk-bar{display:flex;gap:var(--s-2);align-items:center;border-top:1px solid var(--hairline);padding-top:var(--s-3);flex-wrap:wrap}.bulk-bar .count{font-size:var(--t-small);color:var(--muted);flex:none}.stats{display:flex;flex-direction:column;gap:var(--s-4)}.streak-pair{display:flex;gap:var(--s-4);white-space:nowrap;align-items:baseline}.streak-pair .best{color:var(--muted);font-size:var(--t-body)}.stat-row{display:grid;grid-template-columns:96px 1fr 112px;gap:var(--s-3);align-items:center}.stat-label{color:var(--muted);font-size:var(--t-small)}.bar{height:8px;background:var(--panel-2);border-radius:var(--r-pill);overflow:hidden}.fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width var(--d-3) var(--e-out)}.stat-val{font-size:var(--t-small);text-align:right;font-weight:var(--w-semibold)}.stat-val em{color:var(--muted);font-style:normal;font-size:var(--t-caption);font-weight:var(--w-regular)}.trend-wrap{display:flex;flex-direction:column;gap:var(--s-2)}.trend{display:flex;gap:var(--s-2);align-items:flex-end}.trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--s-1)}.trend-bar{width:100%;height:48px;background:var(--panel-2);border-radius:var(--r-1);display:flex;align-items:flex-end;overflow:hidden}.trend-fill{width:100%;background:var(--accent);border-radius:var(--r-1) var(--r-1) 0 0;transition:height var(--d-3) var(--e-out)}.trend-label{font-size:var(--t-micro);color:var(--muted);text-transform:capitalize}.goals{display:flex;flex-direction:column;gap:var(--s-4)}.goal-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-2)}.goal-nums{color:var(--text);font-size:var(--t-lead);font-weight:var(--w-bold);white-space:nowrap}.goal-nums em{font-style:normal;color:var(--muted);font-size:var(--t-small);font-weight:var(--w-medium)}.goal-bar{height:10px;background:var(--panel-2);border-radius:var(--r-pill);overflow:hidden;position:relative}.goal-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width var(--d-3) var(--e-out)}.goal-marker{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text-faint);border-radius:2px}.pace{font-size:var(--t-small);color:var(--muted)}.pace.ahead{color:var(--ok)}.pace.behind{color:var(--grace)}.pace.done{color:var(--ok);font-weight:var(--w-semibold)}.goal-foot{display:flex;justify-content:space-between;align-items:center}.goal-count{display:flex;flex-direction:column;gap:var(--s-1)}.goal-count .seg button{white-space:normal;text-align:center}.goal-step{min-width:56px;min-height:var(--tap);padding:var(--s-2) var(--s-4);font-size:var(--t-body);flex:none}.friends,.partners{display:flex;flex-direction:column;gap:var(--s-3)}.friends h2,.partners h2{font-size:var(--t-lead)}.feed-list{display:flex;flex-direction:column;gap:var(--s-2)}.feed-card{display:flex;align-items:center;gap:var(--s-3);background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-3) var(--s-4);position:relative;transition:border-color var(--d-1),background var(--d-1)}.feed-card:hover{border-color:var(--border-strong);background:var(--panel-3)}.feed-avatar{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);color:var(--text-2);font-weight:var(--w-semibold);font-size:var(--t-body);overflow:hidden}.feed-avatar.big{width:64px;height:64px;font-size:var(--t-title);margin:0 auto}.feed-avatar img{width:100%;height:100%;object-fit:cover}.feed-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.feed-name-row{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.feed-name{font-size:var(--t-body);font-weight:var(--w-semibold);letter-spacing:var(--ls-snug);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-badge{background:var(--panel-2);color:var(--muted);border:1px solid var(--border);padding:2px var(--s-2)}.feed-badge.partner{background:var(--grace-dim);color:var(--grace);border-color:var(--grace)}.feed-handle,.feed-locked{color:var(--muted);font-size:var(--t-caption)}.friend-note{font-size:var(--t-small)}.feed-stats{display:flex;align-items:baseline;gap:var(--s-3);color:var(--muted);font-size:var(--t-small)}.feed-streak{font-weight:var(--w-bold);color:var(--text)}.feed-updated{font-size:var(--t-caption)}.feed-ring,.feed-action{flex:none}.feed-action{display:flex;align-items:center;gap:var(--s-2)}.feed-friend{display:flex;flex-direction:column;align-items:flex-end}.feed-rel{color:var(--muted);font-size:var(--t-small);font-weight:var(--w-semibold);white-space:nowrap;padding:0 var(--s-2)}.feed-friend .link.subtle{align-self:flex-end}.feed-remove{position:absolute;top:var(--s-2);right:var(--s-2);background:none;border:none;box-shadow:none;color:var(--muted);font-size:var(--t-body);line-height:1;cursor:pointer;padding:var(--s-1);min-height:auto}.feed-remove:hover{color:var(--text);filter:none}.partner-row{display:flex;justify-content:space-between;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-3) var(--s-4);gap:var(--s-2);flex-wrap:wrap;box-shadow:var(--shadow-0)}.partner-actions{display:flex;align-items:center;gap:var(--s-2)}.user-search{width:100%}.fbtn{background:var(--panel-2);color:var(--muted);box-shadow:none;padding:var(--s-2) var(--s-3);font-size:var(--t-small);font-weight:var(--w-semibold);border:1px solid var(--border);min-height:38px}.fbtn:hover{filter:none;color:var(--text);background:var(--panel-3)}.fbtn.on{background:var(--panel-3);border-color:var(--border-strong);color:var(--text)}.fbtn.ghost{background:transparent}.fbtn.ghost:hover{border-color:var(--accent-border);color:var(--accent)}.filter-row{display:flex;gap:var(--s-2);flex-wrap:wrap}.load-more{align-self:center}.public-card-wrap{max-width:460px;margin:var(--s-4) auto 0;width:100%}.sec-head{display:flex;align-items:center;gap:var(--s-3)}.sec-head h2{flex:1;font-size:var(--t-lead)}.link-card{text-align:left;gap:var(--s-2)}.invite-line{width:100%;display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}.invite-url{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--t-small);color:var(--text-2);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-1);padding:var(--s-1) var(--s-2);-webkit-user-select:all;user-select:all}.wallpaper-setup{display:flex;flex-direction:column;gap:var(--s-3)}.wallpaper-setup h3{margin-top:var(--s-2)}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:1 1 auto}.wallpaper-preview{display:flex;justify-content:center}.wallpaper-preview img{width:196px;height:426px;border-radius:22px;border:1px solid var(--border);background:var(--panel-2);object-fit:cover}.steps{margin:0;padding-left:var(--s-5);display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--t-small);line-height:var(--lh-normal)}.invite-head{font-size:var(--t-title);letter-spacing:var(--ls-snug);margin:var(--s-4) auto var(--s-2);max-width:480px;line-height:var(--lh-snug)}.invite-card{max-width:460px;margin:var(--s-4) auto 0;text-align:left;display:flex;flex-direction:column;gap:var(--s-3)}.invite-guide{margin:0 0 2px var(--s-4);display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--t-small);color:var(--muted);line-height:var(--lh-normal)}.guide-toggle{text-align:left;font-size:var(--t-small)}.guide-list{display:flex;flex-direction:column;gap:var(--s-2)}.guide-item{text-align:left;justify-content:flex-start}.todos{display:flex;flex-direction:column;gap:var(--s-4)}.todo-row{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-1) 0;min-height:var(--tap)}.todo-row.is-guide{background:var(--accent-ghost);border-radius:var(--r-2);padding:var(--s-2);margin:0 calc(var(--s-2) * -1)}.todo-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--s-1);align-items:flex-start}.todo-title{font-size:var(--t-body);line-height:var(--lh-snug);color:var(--text)}.todo-title.done{color:var(--muted);text-decoration:line-through}.todo-rolled{font-size:var(--t-caption);line-height:var(--lh-snug);color:var(--muted)}.todo-title.as-button{background:none;border:none;box-shadow:none;padding:0;min-height:auto;font:inherit;font-size:var(--t-body);text-align:left;cursor:pointer}.todo-title.as-button:hover{filter:none;color:var(--accent)}.todo-check{width:26px;height:26px;flex:none;border-radius:var(--r-1);border:1.5px solid var(--border-strong);background:var(--panel-2);color:var(--accent-ink);font-size:var(--t-small);font-weight:var(--w-bold);padding:0;min-height:auto;box-shadow:none;display:grid;place-items:center;transition:background var(--d-2) var(--e-out),border-color var(--d-2)}.todo-check.done{background:var(--accent);border-color:transparent;animation:ck-land var(--d-3) var(--e-spring)}.todo-actions{flex:none;display:flex;align-items:center;gap:var(--s-1)}.todo-remind,.todo-day{position:relative;display:inline-flex;align-items:center;gap:var(--s-1);border:1px solid var(--border);border-radius:var(--r-1);padding:var(--s-2);color:var(--muted);white-space:nowrap;transition:color var(--d-1),border-color var(--d-1),background var(--d-1)}.todo-remind.on{color:var(--accent);border-color:var(--accent-border);background:var(--ok-dim)}.todo-remind:hover,.todo-day:hover{color:var(--text);background:var(--panel-3)}.todo-remind-val{font-size:var(--t-caption);font-weight:var(--w-semibold)}.todo-day{border-radius:var(--r-pill);padding:2px var(--s-2);font-size:var(--t-caption);font-weight:var(--w-semibold);color:var(--text-2)}.todo-remind select,.todo-day select{position:absolute;inset:calc(var(--s-2) * -1);width:auto;height:auto;min-height:var(--tap);opacity:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;font-size:16px}.todo-remind:focus-within,.todo-day:focus-within{outline:2px solid var(--focus-color);outline-offset:2px}.when-row{display:flex;gap:var(--s-2);align-items:stretch}.when-row>button:last-child{flex:none}.when-btn{flex:1;min-width:0;display:inline-flex;align-items:center;gap:var(--s-2);background:var(--panel-2);color:var(--text);border:1px solid var(--border);box-shadow:none;font-weight:var(--w-medium);justify-content:flex-start}.when-btn svg{color:var(--accent);flex:none}.when-btn-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-when{display:inline-flex;align-items:center;gap:var(--s-1);min-height:0;padding:2px var(--s-2);border-radius:var(--r-pill);background:none;box-shadow:none;border:1px solid var(--border);font-size:var(--t-caption);font-weight:var(--w-semibold);color:var(--muted);white-space:nowrap}.todo-when.on{color:var(--accent);border-color:var(--accent-border)}.todo-when:hover{color:var(--text);background:var(--panel-3);filter:none}.when-picker{gap:var(--s-3)}.when-title{margin:0;font-size:var(--t-lead)}.when-picker button{box-shadow:none}.when-quick{display:flex;flex-wrap:wrap;gap:var(--s-2)}.when-quick button,.when-months button,.when-chip{background:var(--panel-2);color:var(--text);border:1px solid var(--border);min-height:34px;padding:var(--s-1) var(--s-3);font-size:var(--t-small);font-weight:var(--w-semibold)}.when-quick button.on,.when-months button.on,.when-chip.on{background:var(--ok-dim);color:var(--accent);border-color:var(--accent-border)}.when-nav{display:flex;align-items:center;gap:var(--s-2)}.when-nav>button{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:0;width:38px;min-height:38px;font-size:18px}.when-nav .when-month{flex:1;width:auto;border:none;background:none;font-weight:var(--w-bold);font-size:var(--t-body)}.when-months{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2)}.when-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;justify-items:center}.when-dow{font-size:var(--t-caption);color:var(--muted);font-weight:var(--w-semibold);padding-bottom:2px}.when-day{width:38px;height:38px;min-height:0;padding:0;border-radius:50%;background:none;color:var(--text);border:1.5px solid transparent;font-weight:var(--w-medium)}.when-day.today{border-color:var(--accent);font-weight:var(--w-bold)}.when-day.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:var(--w-bold)}.when-day:hover:not(:disabled):not(.on){background:var(--panel-3);filter:none}.when-time-head{display:flex;align-items:center;justify-content:space-between}.when-label{font-size:var(--t-caption);font-weight:var(--w-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.when-hours{display:flex;gap:var(--s-2);overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.when-hours .when-chip{flex:none}.when-minutes{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--s-2)}.when-actions{display:flex;gap:var(--s-2)}.when-actions button{flex:1}.when-actions .ghost{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}.vac-pick,.vac-on{display:flex;flex-direction:column;gap:var(--s-3)}.vac-grid{max-width:320px}.when-day.vac-in{background:var(--ok-dim);color:var(--text);border-radius:var(--r-2)}.vac-picked{margin:0;font-weight:var(--w-semibold);font-size:var(--t-small)}.vac-habits{display:flex;flex-direction:column;gap:var(--s-2)}.vac-chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}.vac-chips .when-chip{box-shadow:none}.vac-range{margin:0;font-weight:var(--w-bold)}.vac-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-1) var(--s-3);margin:0 16px 12px;padding:var(--s-3) var(--s-4);background:var(--panel);border:1px solid var(--accent-border);border-radius:var(--r-3);font-size:var(--t-small);line-height:var(--lh-normal)}.vac-banner-text{flex:1 1 220px}.vac-banner .msg{flex-basis:100%;margin:0}.guide-badge{display:inline-flex;align-items:center;gap:var(--s-1);font-size:var(--t-micro);font-weight:var(--w-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;background:none;border:1px solid var(--border-strong);color:var(--muted);padding:3px var(--s-2);box-shadow:none;cursor:pointer;min-height:auto}.guide-badge:hover{filter:none;background:var(--panel-3);color:var(--text)}.card.sect{padding:0;gap:0;overflow:hidden}.sect-head{display:flex;align-items:center;gap:var(--s-3);width:100%;background:none;border:none;box-shadow:none;border-radius:0;padding:var(--s-4);text-align:left;cursor:pointer;color:var(--text);min-height:56px}.sect-head:hover{filter:none;background:var(--panel-3)}.sect-summary{color:var(--muted);font-size:var(--t-small);max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sect-chev{color:var(--muted);display:grid;place-items:center;transition:transform var(--d-2) var(--e-out)}.sect-chev.open{transform:rotate(90deg)}.sect-body{display:flex;flex-direction:column;gap:var(--s-4);padding:0 var(--s-4) var(--s-4);animation:sect-in var(--d-2) var(--e-out)}@keyframes sect-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.sect-body h3{font-size:var(--t-body)}.sect-body .row{align-items:flex-end}.card.ident{gap:var(--s-3)}.ident-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ident-handle{color:var(--text-2);font-size:var(--t-small);font-weight:var(--w-semibold)}.ident-row{align-items:center;justify-content:space-between}.ident-prov{display:inline-flex;align-items:center;gap:var(--s-2);font-size:var(--t-body);color:var(--text)}.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid var(--border)}.avatar.placeholder{display:grid;place-items:center;background:var(--panel-2);font-size:var(--t-lead);color:var(--text-2)}.header-avatar{width:32px;height:32px;flex:none}.header-avatar.placeholder{font-size:var(--t-small)}.avatar-row{padding-bottom:var(--s-1)}.upload-label{color:var(--muted);font-size:var(--t-small);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.onb-avatar{display:flex;flex-direction:column;align-items:center;gap:var(--s-2)}.onb-avatar .avatar{width:64px;height:64px;font-size:var(--t-title)}.backdate summary{color:var(--muted);font-size:var(--t-small);cursor:pointer}.backdate input[type=date]{width:auto}.section-divider{border:none;border-top:1px solid var(--border);margin:var(--s-5) 0 var(--s-1)}.pro-card{border-color:var(--accent-border)}.pro-plans{font-weight:var(--w-bold);font-size:var(--t-body)}.pro-card .badge{align-self:flex-start}.loc-picker{display:flex;flex-direction:column;gap:var(--s-2)}.combo{position:relative}.combo-list{position:absolute;top:calc(100% + var(--s-1));left:0;right:0;z-index:30;max-height:230px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-2);box-shadow:var(--shadow-2)}.combo-item{display:block;width:100%;text-align:left;padding:var(--s-3);background:none;border:none;box-shadow:none;border-radius:0;color:var(--text);font-size:var(--t-body);cursor:pointer;min-height:var(--tap)}.combo-item:hover{background:var(--panel-3);filter:none}.loc-grid{display:grid;grid-template-columns:1fr;gap:var(--s-4)}.danger-zone{border-color:var(--miss-dim)}.danger-zone .section-title{color:var(--miss)}.btn-danger,.danger-btn{background:var(--miss-dim);border:1px solid var(--miss);color:var(--miss);font-weight:var(--w-semibold);box-shadow:none}.btn-danger:hover:not(:disabled),.danger-btn:hover:not(:disabled){filter:none;background:color-mix(in srgb,var(--miss) 18%,transparent)}.merge-title{text-align:center;font-size:var(--t-title);margin-top:var(--s-2)}.merge-hint{max-width:360px;margin:var(--s-2) auto var(--s-4);text-align:center}.merge-card{max-width:380px;margin:0 auto;display:flex;flex-direction:column;gap:var(--s-3)}.merge-counts{font-weight:var(--w-bold)}.merge-account{display:flex;flex-direction:column;gap:var(--s-1);width:100%;padding:var(--s-3);text-align:left;background:transparent;color:inherit;border:1px solid var(--border);border-radius:var(--r-2);box-shadow:none}.merge-account.is-kept{border-color:var(--accent-border);background:var(--ok-dim)}.merge-account:not(.is-kept) .merge-account-state{color:var(--miss)}.merge-account-head{display:flex;justify-content:space-between;gap:var(--s-2);min-width:0}.merge-account-head strong{min-width:0;overflow-wrap:anywhere}.merge-account-state{flex:none;font-weight:var(--w-semibold)}.merge-account .merge-counts{font-weight:400}.merge-notes{margin:0;padding-left:var(--s-4);display:flex;flex-direction:column;gap:var(--s-1);text-align:left;overflow-wrap:anywhere}.merge-offer{margin-top:var(--s-2);display:flex;flex-direction:column;gap:var(--s-2);border-color:var(--grace)}.spot-dim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:68;background:#000000a8}.spot-hole{position:fixed;z-index:68;border-radius:var(--r-3);box-shadow:0 0 0 9999px #000000a8;outline:2px solid var(--accent);outline-offset:3px;pointer-events:none}.spot-catch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:69;background:transparent}.spot-tip,.tour-card{position:fixed;left:50%;transform:translate(-50%);z-index:70;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-4);box-shadow:var(--shadow-2);max-width:380px;width:calc(100% - var(--s-6));padding:var(--s-5);text-align:center;display:flex;flex-direction:column;gap:var(--s-3)}.tour-card{position:static;transform:none;max-width:380px;width:100%}.spot-tip h2,.tour-card h2{font-size:var(--t-lead);letter-spacing:var(--ls-snug)}.spot-tip p,.tour-card p{color:var(--text-2);font-size:var(--t-small);line-height:var(--lh-normal)}.tour-svg{color:var(--accent);align-self:center;display:flex}.tour-dots{display:flex;gap:var(--s-2);justify-content:center}.tdot{width:6px;height:6px;border-radius:50%;background:var(--border-strong)}.tdot.on{background:var(--text)}.tour-nav{display:flex;justify-content:space-between;align-items:center;margin-top:var(--s-1)}.tour-nav .act{padding:var(--s-2) var(--s-3);font-size:var(--t-small);flex:none}.admin{display:flex;flex-direction:column;gap:var(--s-4)}.admin>.card-head h2{font-size:var(--t-title)}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-2)}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-0);padding:var(--s-4);display:flex;flex-direction:column;gap:2px}.stat-card .num{font-size:var(--t-display);font-weight:var(--w-bold);letter-spacing:var(--ls-tight)}.stat-card .num.bad{color:var(--miss)}.stat-card .lbl{color:var(--muted);font-size:var(--t-small)}.src-list{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-3)}.src-row{display:flex;align-items:center;gap:var(--s-3);font-size:var(--t-small)}.src-name{width:110px;flex:none;color:var(--text-2)}.src-bar{flex:1;height:8px;background:var(--panel-2);border-radius:var(--r-pill);overflow:hidden;display:block}.src-fill{display:block;height:100%;background:var(--accent);border-radius:var(--r-pill)}.src-num{width:44px;text-align:right;font-weight:var(--w-semibold)}.admin-table-wrap{overflow-x:auto;margin-top:var(--s-3)}.admin-table{width:100%;border-collapse:collapse;font-size:var(--t-small)}.admin-table th{text-align:left;color:var(--muted);font-weight:var(--w-semibold);padding:var(--s-2);border-bottom:1px solid var(--border);white-space:nowrap;font-size:var(--t-micro);text-transform:uppercase;letter-spacing:var(--ls-wide)}.admin-table td{padding:var(--s-2);border-bottom:1px solid var(--hairline);white-space:nowrap}.admin-table td.empty{text-align:center;color:var(--muted);padding:var(--s-5) var(--s-2)}.admin-pager{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);margin-top:var(--s-3)}.admin-entry h3{font-size:var(--t-body)}.admin-toggle{display:flex;align-items:center;gap:var(--s-2);font-size:var(--t-small);color:var(--muted)}.day-chart{display:flex;gap:2px;align-items:flex-end;height:96px;margin-top:var(--s-3);padding-bottom:var(--s-4);position:relative}.day-col{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}.day-bar{display:block;width:100%;min-height:2px;background:var(--accent);border-radius:var(--r-1) var(--r-1) 0 0}.day-col .day-bar[style*="height: 0%"]{background:var(--panel-2)}.day-num{font-size:var(--t-micro);color:var(--text-2);font-weight:var(--w-semibold);margin-bottom:2px}.day-lbl{position:absolute;bottom:calc(var(--s-4) * -1);left:50%;transform:translate(-50%);font-size:var(--t-micro);color:var(--muted);white-space:nowrap}.test-chip{box-shadow:none;min-width:var(--tap)}.test-chip.on{background:var(--grace-dim);color:var(--grace);font-weight:var(--w-bold)}.row-test td{opacity:.55}.err-list{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-3)}.err-row{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-2);padding:var(--s-3)}.err-row.fatal{border-color:var(--miss)}.err-row.slim{padding:var(--s-2) var(--s-3)}.err-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap}.err-ctx{font-size:var(--t-caption);font-weight:var(--w-bold);color:var(--text-2)}.err-n{font-size:var(--t-caption);color:var(--muted);white-space:nowrap}.err-msg{font-size:var(--t-small);margin-top:var(--s-1);word-break:break-word;font-family:ui-monospace,monospace}.crash-card{max-width:420px;display:flex;flex-direction:column;gap:var(--s-3);text-align:center}.crash-card .row{justify-content:center}.offline-msg{border-color:var(--grace);color:var(--grace)}.swap-left{align-self:flex-start}.swap-paywall{border-color:var(--accent-border);gap:var(--s-3)}.swap-paywall h3{font-size:var(--t-body)}.measure-block{display:flex;flex-direction:column;gap:var(--s-2)}.journal{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-4)}.journal-head{display:flex;align-items:baseline;justify-content:space-between}.journal-head h3{font-size:var(--t-body)}.nn-toggle{cursor:pointer}.nn-toggle input{width:auto;min-height:auto}.consent-check{display:flex;align-items:flex-start;gap:var(--s-2);text-align:left;font-size:var(--t-small);color:var(--muted);line-height:1.45}.consent-check input{margin-top:3px;flex:none}.auth-form .onb-err{margin:0;font-size:var(--t-small);line-height:1.4}.auth-form .onb-err.at-field{margin-top:calc(-1 * var(--s-1));text-align:left}@media(hover:hover)and (pointer:fine){:root{--row-h: 48px}.hcard:hover .hrow-name{color:var(--text)}}@media(max-width:1023px){.today-context{display:contents}.today-context>.journal{order:10}}@media(min-width:744px){#root{max-width:var(--w-read);padding:var(--s-5) var(--s-5) var(--s-8)}main{gap:var(--s-5)}header{padding:var(--s-2) 0 var(--s-4)}header .logo{font-size:var(--t-display)}header .today{font-size:var(--t-body)}.hero{padding:var(--s-5);gap:var(--s-5)}.hero-text h2{font-size:var(--t-title)}.hero-text p{font-size:var(--t-body)}.ring-wrap{width:132px;height:132px}.admin-grid{grid-template-columns:repeat(4,1fr);gap:var(--s-3)}.loc-grid{grid-template-columns:1fr 1fr}.goals{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4);align-items:start}.goals>.hint.big,.goals>.add-form{grid-column:1 / -1}.feed-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3);align-items:start}.hm{width:22px;height:22px}}@media(min-width:1024px){body{min-height:100dvh}.app{padding-left:var(--rail-w)}.bottomnav:before{content:"Pact.";font-family:var(--font-num);font-size:var(--t-title);font-weight:var(--w-bold);letter-spacing:var(--ls-tight);color:var(--text);padding:var(--s-2) var(--s-3) var(--s-5)}header .logo{display:none}header .today{font-size:var(--t-title);font-family:var(--font-num);color:var(--text);letter-spacing:var(--ls-snug)}.bottomnav{position:fixed;top:0;bottom:0;left:0;right:auto;width:var(--rail-w);height:100dvh;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:var(--s-1);padding:var(--s-5) var(--s-3);border-top:none;border-right:1px solid var(--border);background:var(--panel);-webkit-backdrop-filter:none;backdrop-filter:none}.bnav{flex:none;max-width:none;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--s-3);padding:var(--s-3);border-radius:var(--r-2);transition:background var(--d-1),color var(--d-1)}.bnav-label{font-size:var(--t-body);letter-spacing:0}.bnav:hover{background:var(--panel-3)}.bnav.on{background:var(--panel-2);color:var(--text)}.bnav.on:before{display:none}#root{max-width:none;width:100%;padding:var(--s-6) var(--gutter) var(--s-7)}main:has(>.today-context){display:grid;grid-template-columns:minmax(0,1fr) var(--ctx-w);grid-template-areas:"list context" "add  context";grid-template-rows:auto 1fr;align-items:start;gap:var(--s-4) var(--s-6);max-width:var(--w-max);margin-inline:auto;width:100%}.today-context{grid-area:context;display:flex;flex-direction:column;gap:var(--s-4);position:sticky;top:var(--s-6)}.today-context .journal{margin-top:0}.today-context .ring-wrap,.today-context .ring-wrap.sm{width:148px!important;height:148px!important}.today-context .ring-wrap svg{width:100%;height:100%}.today-context .ring-wrap.sm .ring-pct{font-size:var(--t-display)}.today-context .ring-wrap.sm .ring-pct em{font-size:var(--t-small)}.today-context .ring-wrap.sm .ring-emoji{font-size:var(--t-display)}.today-context .ring-wrap{order:-1}.today-context .hero{flex-direction:column;text-align:center;gap:var(--s-4)}.today-context .hero-text{flex:none}main:has(>.today-context)>.hlist{grid-area:list;max-width:var(--w-list)}main:has(>.today-context)>[data-tour=add]{grid-area:add;max-width:var(--w-list)}main:has(>.today-context)>.hint.big{grid-area:list}main:has(>.today-context):has(.empty-stakes){grid-template-columns:minmax(0,1fr);grid-template-areas:"list"}main:has(>.today-context):has(.empty-stakes)>.today-context{display:none}main{max-width:var(--w-max);margin-inline:auto;width:100%}.history{max-width:var(--w-max)}.hist-chips{flex-wrap:wrap;overflow-x:visible;padding-bottom:0}.hist-sum{gap:var(--s-6);font-size:var(--t-body)}.hist-sum strong{font-size:var(--t-lead)}.heatmap-year,.heatmap-year .hm-col{gap:3px}.legend{gap:var(--s-3)}.history>.card{padding:var(--s-5)}.goals{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--s-4);align-items:start;max-width:var(--w-max)}.goals>.hint.big,.goals>.add-form{grid-column:1 / -1}.goals>.add-form{max-width:620px}.goals>.card{padding:var(--s-5)}.goal-bar{height:12px}.goal-nums{font-size:var(--t-title)}main:has(>.friends){display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--s-4) var(--s-6);align-items:start}main:has(>.friends)>.friends{grid-column:1}main:has(>.friends)>.partners{grid-column:2;position:sticky;top:var(--s-6)}main:has(>.friends)>.section-divider{display:none}.feed-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--s-3);align-items:start}main:has(>.card.sect){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4) var(--s-6);align-items:start}main:has(>.card.sect)>*{grid-column:1 / -1}main:has(>.card.sect)>.card.sect{grid-column:auto}main:has(>.card.sect)>.card.ident{max-width:var(--w-read)}.sect-summary{max-width:55%}.account-form{max-width:480px}.todos{max-width:var(--w-read)}.stats,.admin{max-width:var(--w-max)}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:var(--s-4);align-items:start}.stats>.sec-head,.stats>.cat-header{grid-column:1 / -1}.trend-bar{height:64px}.hm{width:100%}.hmodal{align-items:center;padding:var(--s-6)}.hmodal-panel{max-width:560px}}@media(min-width:1280px){:root{--gutter: var(--s-6);--ctx-w: 380px}#root{padding:var(--s-7) var(--gutter) var(--s-8)}.admin-grid{grid-template-columns:repeat(4,1fr)}.stat-row{grid-template-columns:160px 1fr 120px}.today-context .ring-wrap{width:168px;height:168px}.friends{grid-template-columns:minmax(0,1fr) 360px}}@media(min-width:1600px){:root{--rail-w: 264px}#root{padding-left:var(--s-8);padding-right:var(--s-8)}main,.history,.stats,.admin{max-width:var(--w-max);margin-inline:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}.tour-icon{font-size:2.6rem}.invite-row{position:relative}.btn-plus1{background:var(--miss);color:#fff;box-shadow:var(--shadow-1);min-width:86px}.cat-nudge{align-items:center;gap:var(--s-2)}.cat-nudge .src-name{flex:1;min-width:0}.cat-nudge input[type=time]{width:116px;flex:none}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--grace);flex:none;margin-left:-4px;animation:sync-pulse 1.4s ease-in-out infinite}@keyframes sync-pulse{0%,to{opacity:.35}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.sync-dot{animation:none;opacity:.8}}.sync-dot.failed{background:var(--miss);animation:none;opacity:1}.feed-more{position:absolute;top:4px;right:4px}.feed-more-btn{background:none;border:none;box-shadow:none;min-height:auto;width:32px;height:32px;padding:0;border-radius:50%;display:grid;place-items:center;color:var(--muted);cursor:pointer}.feed-more-btn:hover,.feed-more-btn[aria-expanded=true]{color:var(--text);background:var(--panel-2);filter:none}.feed-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:150px;display:flex;flex-direction:column;padding:var(--s-1);background:var(--sheet, var(--panel));border:1px solid var(--border-strong);border-radius:var(--r-3);box-shadow:0 12px 28px -12px #00000080}.feed-menu button{background:none;border:none;box-shadow:none;text-align:left;min-height:40px;padding:0 var(--s-3);border-radius:var(--r-2);color:var(--text);font-size:var(--t-small);cursor:pointer}.feed-menu button:hover{background:var(--panel-2);filter:none}.feed-menu button.danger{color:var(--danger)}.ct-fr .feed-more{position:relative;top:auto;right:auto;align-self:center}.blocked-row{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) 0}.blocked-row .feed-avatar{flex:none;width:32px;height:32px;font-size:var(--t-small)}.blocked-row>div{flex:1;min-width:0}.blocked-row strong{display:block;font-size:var(--t-small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-row small{color:var(--muted);font-size:var(--t-caption)}.ct-fr:has(.feed-more){grid-template-columns:minmax(0,1fr) 62px 66px 44px 32px}.admin-reports .report-row{display:flex;gap:var(--s-3);padding:var(--s-3) 0;border-top:1px solid var(--border)}.admin-reports .report-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.admin-reports .report-note-text{margin:4px 0;font-size:var(--t-small);white-space:pre-wrap}.admin-reports .report-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-2)}.fbtn.danger{color:var(--danger);border-color:var(--danger)}.msg.field-msg{margin:calc(-1 * var(--s-1)) 0 var(--s-1);font-size:var(--t-small)}.wait-title{display:flex;align-items:center;gap:var(--s-2);margin:0;font-size:var(--t-title, 20px);font-weight:var(--w-bold, 600);color:var(--text)}.wait-title svg{color:var(--ok);flex:none}:root{--bg: #0b0c0e;--panel: rgba(255, 255, 255, .055);--panel-2: rgba(255, 255, 255, .08);--panel-3: rgba(255, 255, 255, .115);--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .2);--hairline: rgba(255, 255, 255, .07);--text: #f4f4f1;--text-2: rgba(244, 244, 241, .74);--muted: rgba(244, 244, 241, .64);--text-faint: rgba(244, 244, 241, .42);--accent: #86e3bd;--accent-ink: #07241a;--accent-dim: rgba(134, 227, 189, .16);--accent-ghost: rgba(134, 227, 189, .13);--accent-border: rgba(134, 227, 189, .32);--accent-2: #86e3bd;--grace: #f5c469;--grace-dim: rgba(245, 196, 105, .14);--grace-ink: #2a1c05;--miss: #ff9485;--miss-dim: rgba(255, 148, 133, .13);--miss-ink: #2c0f0b;--ring-track: rgba(255, 255, 255, .1);--grad: #f4f4f1;--focus-ring: 0 0 0 3px rgba(134, 227, 189, .3);--bg-glow: none;--pill: #f4f4f1;--pill-ink: #111113;--sheet: #19191c;--dim: rgba(0, 0, 0, .58);--nav-bg: rgba(22, 22, 24, .8);--nav-ink: rgba(244, 244, 241, .72);--nav-pill: #f4f4f1;--nav-pill-ink: #111113;--rail-bg: rgba(255, 255, 255, .07);--rail-on: rgba(255, 255, 255, .15);--rail-on-ink: #f4f4f1;--shell: rgba(255, 255, 255, .035);--shell-line: rgba(255, 255, 255, .14);--done-bg: rgba(134, 227, 189, .16);--done-line: rgba(134, 227, 189, .32);--done-ink: #f4f4f1;--done-btn: #86e3bd;--done-btn-ink: #07241a;--atmos: linear-gradient(118deg, transparent 50%, rgba(255, 255, 255, .05) 57%, rgba(255, 255, 255, .085) 65%, rgba(255, 255, 255, .03) 73%, transparent 80%), radial-gradient(95% 55% at 8% 100%, rgba(196, 116, 52, .3), transparent 70%), radial-gradient(70% 45% at 100% 0%, rgba(120, 130, 150, .14), transparent 70%);--font-ui: "Outfit", system-ui, -apple-system, sans-serif;--font-num: "Outfit", system-ui, -apple-system, sans-serif;--w-semibold: 500;--w-bold: 600;--t-body: .97rem;--r-1: 8px;--r-2: 22px;--r-3: 24px;--r-4: 32px;--ls-snug: 0;--ls-tight: -.01em;--row-h: 68px;--rail-w: 94px}:root[data-theme=light]{--bg: #d9d7d2;--panel: #f6f6f3;--panel-2: #ececea;--panel-3: #e2e2de;--border: rgba(0, 0, 0, .06);--border-strong: rgba(0, 0, 0, .18);--hairline: rgba(0, 0, 0, .06);--text: #131314;--text-2: rgba(19, 19, 20, .74);--muted: rgba(19, 19, 20, .66);--text-faint: rgba(19, 19, 20, .42);--accent: #131314;--accent-ink: #fafaf7;--accent-dim: rgba(19, 19, 20, .08);--accent-ghost: rgba(19, 19, 20, .08);--accent-border: rgba(19, 19, 20, .24);--accent-2: #131314;--grace: #94570a;--grace-dim: #f7ecd9;--grace-ink: #ffffff;--miss: #b92c1a;--miss-dim: #fbe6e2;--miss-ink: #ffffff;--ring-track: rgba(0, 0, 0, .09);--grad: #131314;--focus-ring: 0 0 0 3px rgba(19, 19, 20, .2);--focus-color: #131314;--pill: #131314;--pill-ink: #fafaf7;--sheet: #fbfbf9;--dim: rgba(40, 38, 34, .42);--nav-bg: #131314;--nav-ink: rgba(250, 250, 247, .74);--nav-pill: #fafaf7;--nav-pill-ink: #131314;--rail-bg: #131314;--rail-on: #fafaf7;--rail-on-ink: #131314;--shell: #fbfbf9;--shell-line: rgba(255, 255, 255, .7);--done-bg: #131314;--done-line: transparent;--done-ink: #fafaf7;--done-btn: #fafaf7;--done-btn-ink: #131314;--atmos: linear-gradient(118deg, transparent 48%, rgba(255, 255, 255, .55) 58%, rgba(255, 255, 255, .72) 66%, transparent 79%)}:root[data-theme=evening]{color-scheme:dark;--bg: #1e120d;--panel: rgba(255, 232, 208, .085);--panel-2: rgba(255, 232, 208, .13);--panel-3: rgba(255, 232, 208, .18);--border: rgba(255, 228, 200, .16);--border-strong: rgba(255, 228, 200, .28);--hairline: rgba(255, 228, 200, .1);--text: #fcf4ea;--text-2: rgba(252, 244, 234, .78);--muted: rgba(252, 244, 234, .68);--text-faint: rgba(252, 244, 234, .45);--accent: #b7d1c5;--accent-ink: #16241e;--accent-dim: rgba(185, 212, 200, .2);--accent-ghost: rgba(185, 212, 200, .2);--accent-border: rgba(185, 212, 200, .4);--accent-2: #b7d1c5;--grace: #ffd08a;--grace-dim: rgba(255, 208, 138, .16);--grace-ink: #2b1a11;--miss: #ffa08f;--miss-dim: rgba(255, 160, 143, .15);--miss-ink: #2b1a11;--ring-track: rgba(255, 232, 208, .15);--grad: #fcf4ea;--focus-ring: 0 0 0 3px rgba(185, 212, 200, .34);--focus-color: #b7d1c5;--pill: #fcf4ea;--pill-ink: #2b1a11;--sheet: #2e1c14;--dim: rgba(20, 10, 6, .6);--nav-bg: rgba(46, 27, 18, .78);--nav-ink: rgba(252, 244, 234, .76);--nav-pill: #fcf4ea;--nav-pill-ink: #2b1a11;--rail-bg: rgba(255, 232, 208, .11);--rail-on: rgba(255, 232, 208, .22);--rail-on-ink: #fcf4ea;--shell: rgba(255, 232, 208, .05);--shell-line: rgba(255, 228, 200, .2);--done-bg: #b7d1c5;--done-line: transparent;--done-ink: #16241e;--done-btn: #16241e;--done-btn-ink: #dcece4;--atmos: radial-gradient(85% 50% at 88% 6%, rgba(226, 138, 74, .58), transparent 70%), radial-gradient(60% 40% at 28% 56%, rgba(150, 160, 70, .22), transparent 70%), radial-gradient(105% 60% at 0% 100%, rgba(128, 60, 30, .62), transparent 70%), linear-gradient(180deg, #3a2217, #1e120d)}body{background-image:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--atmos);pointer-events:none}h1,h2,h3{font-weight:500}a{text-decoration-color:currentColor}#root{padding:var(--s-4) var(--s-4) 112px}main{gap:10px}footer{padding:var(--s-5) 0 0}header{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s-3);row-gap:2px;align-items:center;padding:var(--s-1) 0 14px}header .logo{grid-column:1;grid-row:1;font-size:29px;font-weight:400;line-height:1.12}header .today{grid-column:1;grid-row:2;font-size:13.5px;color:var(--text-2)}header .theme-btn{display:none}header .avatar-btn{grid-column:2;grid-row:1 / span 2;width:46px;height:46px}.header-avatar{width:46px;height:46px;border:1px solid var(--border);background:var(--panel-2);color:var(--text)}.msg{margin:0 0 10px}.offline-msg{padding:12px 16px;border:1px solid var(--border);border-radius:var(--r-3);background:var(--panel);color:var(--text)}.bottomnav{left:var(--s-4);right:var(--s-4);bottom:calc(var(--s-4) + env(safe-area-inset-bottom,0px));height:60px;padding:0 6px;gap:0;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:30px;background:var(--nav-bg);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}body:has([data-tour=add]>.add-btn) .bottomnav{right:86px}.bnav{flex:none;max-width:none;min-width:44px;height:48px;min-height:48px;flex-direction:row;justify-content:center;gap:6px;padding:0;border-radius:24px;color:var(--nav-ink)}.bnav:hover{color:var(--nav-ink)}.bnav.on{background:var(--nav-pill);color:var(--nav-pill-ink);padding:0 13px}.bnav.on:hover{color:var(--nav-pill-ink)}.bnav.on:before{display:none}.bnav-label{font-size:14px}.bnav.on .bnav-label{font-weight:500}.bnav:not(.on) .bnav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.bnav-badge{position:absolute;top:5px;left:calc(50% + 3px);z-index:1;min-width:17px;height:17px;padding:0 4px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--accent);color:var(--accent-ink);font:700 10.5px/1 var(--font-ui);letter-spacing:0;font-variant-numeric:tabular-nums;pointer-events:none}:root[data-theme=light] .bnav-badge{background:var(--nav-pill);color:var(--nav-pill-ink)}.bnav.on .bnav-badge{left:24px;background:var(--nav-pill-ink);color:var(--nav-pill)}.app:not(.skin) .bnav.on:has(.bnav-badge){gap:14px}[data-tour=add]>.add-btn{position:fixed;z-index:41;right:var(--s-4);bottom:calc(var(--s-4) + env(safe-area-inset-bottom,0px));width:60px;height:60px;padding:0;font-size:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--nav-bg);color:var(--nav-pill);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}[data-tour=add]>.add-btn:before{content:"+";font-size:28px;font-weight:300;line-height:1}[data-tour=add]>.add-btn:hover{background:var(--nav-bg);color:var(--nav-pill);border-color:var(--border)}.card{border-radius:var(--r-3);padding:14px;gap:10px}.card:hover{border-color:var(--border)}.section-title,.sect-title{font-weight:500}.hero{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;align-items:stretch;padding:0;background:none;border:none;box-shadow:none;border-radius:0}.hero .ring-wrap{order:-1;width:150px!important;height:150px!important;padding:9px;border:1px solid var(--border);border-radius:26px;background:var(--panel)}.hero .ring-wrap svg{width:100%;height:100%;display:block}.hero-text{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:14px 16px;border:1px solid var(--border);border-radius:26px;background:var(--panel)}.hero-text h2{font-size:17px;font-weight:500}.hero-text p{margin:0;font-size:16px;line-height:1.3;color:var(--text)}.ring-pct{font-size:32px;font-weight:500}.ring-pct em{font-size:16px;font-weight:400}.ring-wrap.sm .ring-pct{font-size:12px;font-weight:500}.ring-wrap.sm .ring-pct em{font-size:11px}.wstrip{gap:2px;padding:5px;border-radius:27px;background:var(--panel)}.wnav{width:26px;border-radius:50%}.wday{min-height:52px;padding:5px 0 3px;gap:1px;border-radius:22px;color:var(--text-2)}.wday.sel,.wday.sel:hover{background:var(--pill);color:var(--pill-ink);border-color:transparent}.wday.sel .wnum,.wday.today.sel .wnum{color:var(--pill-ink)}.wday.today:after{background:currentColor}.wdow{font-size:10.5px;font-weight:400;letter-spacing:.02em;text-transform:none}.wnum{font-size:16px;font-weight:500}.wday.future{color:var(--text-faint)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select{min-height:52px;padding:0 18px;border-radius:26px;background:var(--panel)}textarea{padding:14px 18px;border-radius:22px;background:var(--panel)}input::placeholder,textarea::placeholder{color:var(--muted)}button{min-height:48px;padding:0 20px;border-radius:26px;font-weight:500}button:hover{filter:none;opacity:.92}button.btn-secondary,.act,.ghost-btn{background:var(--panel);border-color:var(--border);font-weight:400}button.btn-secondary:hover,.act:hover,.ghost-btn:hover{background:var(--panel-3);opacity:1}.act.start{background:var(--pill);color:var(--pill-ink)}.act.stop{background:var(--grace);color:var(--grace-ink)}.act.done.active{background:var(--done-bg);color:var(--done-ink);border-color:var(--done-line)}button.link{padding:var(--s-1) var(--s-2);min-height:32px}.icon-btn{border-radius:50%}.seg{gap:4px;padding:4px;border-radius:26px;background:var(--panel-2)}.seg button{min-height:44px;padding:0 8px;border:none;border-radius:22px;background:none;color:var(--text);font-size:14.5px;font-weight:400}.seg button.on{background:var(--pill);color:var(--pill-ink);font-weight:500}.seg.small button{min-height:36px;padding:0 12px}.days{justify-content:space-between}.day{flex:0 1 44px;aspect-ratio:1;min-height:0;padding:0;border-radius:50%;background:transparent;color:var(--text-2);font-weight:500}.day.on{background:var(--pill);color:var(--pill-ink);border-color:transparent}.toggle{width:50px;height:30px;border:none;background:var(--panel-3)}.toggle .knob{top:3px;left:3px;width:24px;height:24px;background:var(--text-2)}.toggle.on{background:var(--pill)}.toggle.on .knob{transform:translate(20px);background:var(--pill-ink)}.badge,.feed-badge,.hist-chip,.guide-badge,.test-chip{font-weight:400}.add-btn{border-radius:var(--r-3);border-style:solid}.add-btn:hover{color:var(--text);background:var(--panel-3);border-color:var(--border-strong)}.hlist{gap:8px}.hlist .cat-header{margin:var(--s-3) var(--s-2) 0}.cat-header,.flabel-web,.loc-head{font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-2)}.hcard,.hlist>.hcard:first-child,.cat-header+.hcard,.hlist>.hcard:last-child,.hcard:has(+.cat-header){border:1px solid var(--border);border-radius:var(--r-3)}.hcard{background:var(--panel)}.hcard:hover{background:var(--panel-2)}.hrow{min-height:68px;gap:10px;padding:0 11px 0 12px}.hrow-main{gap:10px;padding:0}.hfill,.f-ok .hfill{background:var(--accent-ghost);border-right:none}.f-warn .hfill{background:var(--grace-dim);border-right:none}.f-bad .hfill{background:var(--miss-dim);border-right:none}.hrow-emoji{width:42px;height:42px;border:none;border-radius:50%;background:var(--panel-2);font-size:20px}.hrow-emoji.limit{border:none}.hrow-name{font-size:15.5px;font-weight:500}.hrow-sub{font-size:12.5px}.hrow-ctrl{gap:8px}.hcount{min-width:0;font-size:14px;font-weight:400;color:var(--text-2)}.hcount.ok,.hcount.run{color:inherit}.ck{font-size:15px;font-weight:500}.ck:before{top:0;right:0;bottom:0;left:0;border:1px solid var(--border);background:transparent}.ck.on{color:var(--done-btn-ink)}.ck.on:before{background:var(--done-btn);border-color:transparent}.ck.play,.ck.plus{color:inherit}.ck.play:before,.ck.plus:before{background:transparent;border-color:var(--border)}.ck.play:hover,.ck.plus:hover{color:inherit}.ck.stop{color:var(--pill-ink)}.ck.stop:before{background:var(--pill)}.ck.plus1:before{background:transparent}.hcard.is-done{background:var(--done-bg);border-color:var(--done-line);color:var(--done-ink)}.hcard.is-done:hover{background:var(--done-bg)}.hcard.is-done .hrow-main,.hcard.is-done .hrow-name,.hcard.is-done .hcount{color:inherit}.hcard.is-done .hrow-sub{color:inherit;opacity:.8}.hcard.is-done .hrow-emoji{background:#80808033;border:none}.hcard.is-off .hrow-emoji{border:none}.hdetail{background:var(--sheet)}:root[data-layout=tiles] .hlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}:root[data-layout=tiles] .hlist .cat-header{grid-column:1 / -1}:root[data-layout=tiles] .hrow{position:relative;min-height:136px;flex-direction:column;align-items:stretch;gap:2px;padding:11px 11px 11px 12px}:root[data-layout=tiles] .hrow-main{flex:1;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:8px}:root[data-layout=tiles] .hrow-text{width:100%}:root[data-layout=tiles] .hrow-ctrl{position:static}:root[data-layout=tiles] .hrow .ck{position:absolute;top:11px;right:11px}:root[data-layout=tiles] .hrow .hcount{display:block;min-height:17px;text-align:left;font-size:12.5px}.hmodal{background:var(--dim)}.hmodal-panel{background:var(--sheet);border-radius:var(--r-4)}.spot-tip,.tour-card{background:var(--sheet);border-radius:30px}.combo-list{background:var(--sheet);border-radius:22px}.spot-dim{background:var(--dim)}.spot-hole{outline-color:var(--pill);box-shadow:0 0 0 9999px var(--dim)}.exact-add,.grace-note,.empty-note{border-radius:var(--r-3);background:var(--panel)}.hmodal-panel.f-ok .hmodal-ring{color:var(--accent)}.auth-wrap .logo{position:relative;width:124px;height:124px;margin:26px auto 24px;display:grid;place-items:center;border-radius:50%;background:var(--pill);color:var(--pill-ink);font-size:34px;font-weight:500;box-shadow:0 0 0 12px var(--panel-2)}.auth-wrap .logo:after{content:"";position:absolute;top:-26px;right:-26px;bottom:-26px;left:-26px;border-radius:50%;background:conic-gradient(from 225deg,var(--accent) 0deg 190deg,var(--ring-track) 190deg 270deg,transparent 270deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px))}.tagline{font-size:17px;color:var(--text)}.auth-form{max-width:380px;gap:var(--s-2)}.auth-banner{background:var(--panel);color:var(--text);border-color:var(--border)}.hist-chip{min-height:44px;border-radius:22px;background:var(--panel);color:var(--text)}.hist-chip.on,.hist-chip.on:hover{background:var(--pill);color:var(--pill-ink);border-color:transparent}.year-nav .wnav{width:44px;height:44px}.year-label{font-weight:500}.hist-rate strong{color:var(--text)}.heatmap-year .hm{border-radius:3px}.stat-row{position:relative;display:grid;grid-template-columns:auto 1fr;gap:var(--s-2);height:44px;padding:0 15px;align-items:center}.stat-row .bar{position:absolute;top:0;right:0;bottom:0;left:0;height:auto;border:1px solid var(--border);border-radius:22px;background:var(--panel)}.stat-row .fill{border-radius:0;background:var(--accent-ghost)}.stat-row .stat-label{position:relative;color:var(--text);font-size:14.5px}.stat-row .stat-val{position:relative;grid-column:2;font-weight:400;font-size:14.5px}.trend-bar{height:76px;border-radius:12px;background:var(--panel)}.trend-fill{border-radius:12px}.goal-nums{font-weight:500}.goal-bar{height:12px}.goal-step{width:46px;min-width:46px;height:46px;min-height:46px;padding:0;border-radius:50%}.feed-card,.partner-row{border-radius:var(--r-3)}.feed-card:hover{background:var(--panel-2);border-color:var(--border)}.feed-avatar{width:46px;height:46px}.feed-badge{border:none;background:var(--panel-2);color:var(--text)}.feed-badge.partner{background:var(--pill);color:var(--pill-ink)}.fbtn{min-height:44px;border-radius:22px;background:var(--panel);color:var(--text);font-weight:400}.fbtn.on{background:var(--pill);color:var(--pill-ink);border-color:transparent}.todo-check{width:28px;height:28px;border-radius:50%;background:transparent;border-color:var(--text-2)}.todo-check.done{background:var(--done-btn);color:var(--done-btn-ink)}.todo-row.is-guide{border-radius:18px}.todo-remind,.todo-day{border-radius:16px}.todo-remind.on{background:var(--panel-2);color:var(--text);border-color:transparent}.todo-when{padding:4px 11px;border:none;background:var(--panel-2);color:var(--text);font-weight:400}.todo-when.on{color:var(--text)}.when-btn{min-height:52px;background:var(--panel)}.when-btn svg{color:var(--text-2)}.when-quick button,.when-months button,.when-chip{min-height:44px;border-radius:22px;background:var(--panel);font-weight:400}.when-quick button.on,.when-months button.on,.when-chip.on{background:var(--pill);color:var(--pill-ink);border-color:transparent}.when-nav>button{width:44px;min-height:44px;border-radius:50%;background:var(--panel)}.when-day{width:40px;height:40px}.when-day.today{border-color:var(--text-2)}.when-day.on{background:var(--pill);color:var(--pill-ink);border-color:transparent}.when-actions .ghost{background:var(--panel)}.card.sect{padding:0}.sect-head{min-height:60px;padding:0 var(--s-4);border-radius:var(--r-3)}.sect-body{padding:0 14px 14px}.look-card{gap:12px}.look-themes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.look-theme{display:block;min-height:0;padding:0;border:none;border-radius:0;background:none;color:var(--text);font-size:13.5px;font-weight:400;text-align:center}.look-theme:hover{opacity:1}.look-prev{display:block;height:72px;margin-bottom:5px;border:1px solid var(--border);border-radius:18px}.look-theme.on .look-prev{box-shadow:0 0 0 2px var(--pill)}.look-prev.dark{background:linear-gradient(118deg,transparent 45%,rgba(255,255,255,.14) 62%,transparent 80%),radial-gradient(90% 80% at 0% 100%,rgba(196,116,52,.5),transparent 70%),#0b0c0e}.look-prev.evening{background:radial-gradient(90% 90% at 90% 0%,rgba(226,138,74,.85),transparent 70%),linear-gradient(180deg,#4a2c1d,#1e120d)}.look-prev.light{background:linear-gradient(118deg,transparent 40%,#ffffff 62%,transparent 84%),#d9d7d2}@media(min-width:744px)and (max-width:1023px){.bottomnav{left:50%;right:auto;transform:translate(-50%);width:340px}body:has([data-tour=add]>.add-btn) .bottomnav{right:auto}}@media(min-width:1024px){#root{padding:14px 14px 14px 94px}.app{padding:14px 18px 18px;min-height:calc(100dvh - 28px);border:1px solid var(--shell-line);border-radius:34px;background:var(--shell);box-shadow:0 30px 80px -30px #0000008c}header .logo{display:block;font-size:32px}header .today{font-size:14px;font-family:var(--font-ui);color:var(--text-2)}.bottomnav{top:50%;bottom:auto;left:14px;right:auto;transform:translateY(-50%);width:66px;height:auto;padding:10px 0;gap:6px;flex-direction:column;align-items:center;justify-content:flex-start;border:1px solid var(--shell-line);border-right:1px solid var(--shell-line);border-radius:33px;background:var(--rail-bg)}body:has([data-tour=add]>.add-btn) .bottomnav{right:auto}.bottomnav:before{display:none}.bnav{width:46px;height:46px;min-width:46px;padding:0;justify-content:center;border-radius:50%;color:var(--nav-ink)}.bnav:hover{background:var(--rail-on);color:var(--rail-on-ink)}.bnav.on,.bnav.on:hover{padding:0;background:var(--rail-on);color:var(--rail-on-ink)}.bnav .bnav-label,.bnav.on .bnav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.bnav.on .bnav-badge{left:calc(50% + 3px);background:var(--accent);color:var(--accent-ink)}:root[data-theme=light] .bnav.on .bnav-badge{background:var(--rail-on-ink);color:var(--rail-on)}[data-tour=add]>.add-btn{position:static;width:100%;height:auto;min-height:56px;padding:0 20px;font-size:var(--t-body);border-radius:var(--r-3);background:var(--panel);color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none}[data-tour=add]>.add-btn:before{content:none}.hero{grid-template-columns:minmax(0,1fr)}.today-context .hero{display:grid;text-align:left;gap:10px}.today-context .ring-wrap,.today-context .ring-wrap.sm{width:100%!important;height:250px!important;padding:14px}.today-context .ring-wrap .ring-pct{font-size:46px}.today-context .ring-wrap .ring-pct em{font-size:20px}main:has(>.today-context){gap:10px 14px}main:has(>.today-context)>.hlist,main:has(>.today-context)>[data-tour=add]{max-width:none}main:has(>.card.sect){gap:10px 14px}main:has(>.friends){gap:10px 14px}.todos{max-width:none}}@media(max-width:1023px){main:has(>.friends)>.partners{order:-1}main:has(>.friends)>.section-divider{display:none}}.sect-head>:first-child{flex:1;min-width:0}.sect-summary{max-width:55%}.hmodal-ring svg{display:block;width:250px;height:250px}.hmodal-ring-center>*{width:128px;height:128px;min-width:0;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--pill);color:var(--pill-ink);box-shadow:0 0 0 12px var(--panel-2);font-size:22px;font-weight:500}.hmodal-panel .hcount.ok,.hmodal-panel .hcount.run{color:var(--pill-ink)}.week{justify-content:space-between;gap:4px}.cell{flex:0 1 42px;aspect-ratio:1;display:grid;place-items:center;padding:0;border-radius:50%;font-size:13.5px}.cell.ok{background:var(--accent);color:var(--accent-ink);border-color:transparent}.now-bar{position:fixed;z-index:42;left:var(--s-4);right:var(--s-4);bottom:calc(86px + env(safe-area-inset-bottom,0px));height:60px;display:flex;align-items:center;gap:10px;padding:0 7px 0 10px;border:1px solid var(--border);border-radius:30px;background:var(--nav-bg);color:var(--nav-ink);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.now-emoji{width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:50%;background:#8080803d;font-size:20px}.now-text{flex:1;min-width:0;display:flex;flex-direction:column;font-size:13px;font-variant-numeric:tabular-nums}.now-text b{font-size:14.5px;font-weight:500;color:var(--nav-pill);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.now-stop{width:44px;height:44px;min-height:44px;padding:0;flex:none;border-radius:50%;background:var(--nav-pill);color:var(--nav-pill-ink)}@media(min-width:744px){.now-bar{left:auto;right:var(--s-5);bottom:var(--s-5);width:320px}}.goals>.card:has(.goal-dial){display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:14px;row-gap:6px;align-items:center}.goals>.card:has(.goal-dial)>*{grid-column:2}.goals>.card:has(.goal-dial)>.goal-dial{grid-column:1;grid-row:1 / span 3}.goals>.card:has(.goal-dial)>.goal-foot,.goals>.card:has(.goal-dial)>.backdate{grid-column:1 / -1}.goal-dial{position:relative;width:92px;height:92px;display:grid;place-items:center;font-size:20px;font-weight:500}.goal-dial:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from 225deg,var(--accent) 0 calc(var(--p) * 2.7deg),var(--ring-track) 0 270deg,transparent 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 7px),#000 calc(100% - 6px));mask:radial-gradient(farthest-side,transparent calc(100% - 7px),#000 calc(100% - 6px))}.goal-bar{height:6px}.goal-foot{gap:var(--s-2);flex-wrap:wrap}.hcard.is-done .ck.play,.hcard.is-done .ck.plus{color:var(--done-ink)}.hcard.is-done .ck.play:before,.hcard.is-done .ck.plus:before{border-color:currentColor;opacity:.4}.hero{grid-template-rows:1fr auto}.hero .ring-wrap{grid-row:1 / span 2}.hero-streak{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:22px;background:var(--panel)}.hero-streak b{font-size:27px;font-weight:500;line-height:1}.hero-streak span{min-width:0;font-size:12.5px;line-height:1.2;color:var(--text-2);text-align:right}.hmodal-head{order:-3}.hmodal-ring{order:-2}.dial-actions{order:-1;position:relative;z-index:1;justify-content:space-between;margin-top:-84px;padding:0 2px;pointer-events:none}.dial-actions .act{flex:0 0 60px;width:60px;height:60px;min-height:60px;padding:0;border-radius:50%;font-size:0;pointer-events:auto}.dial-actions .act:before{content:"+";font-size:26px;font-weight:300}.dial-actions .act.minus{order:-1}.dial-actions .act.minus:before{content:"−"}.dial-actions:not(:has(.minus)){justify-content:flex-end}.stakes-card{display:none}@media(min-width:1024px){.hero .ring-wrap{grid-row:auto}.stakes-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px 12px;border:1px solid var(--border);border-radius:26px;background:var(--panel)}.stakes-bubble{padding:12px 14px 9px;border-radius:20px 20px 20px 6px;background:var(--pill);color:var(--pill-ink);font-size:15.5px;line-height:1.28}.stakes-bubble small,.stakes-bubble em{display:block;font-size:12px;font-style:normal;opacity:.66}.stakes-bubble small{margin-bottom:3px}.stakes-bubble em{text-align:right;margin-top:3px}.stakes-arc{position:relative;margin-top:6px}.stakes-arc svg{display:block;width:100%;height:auto}.stakes-left{position:absolute;left:0;right:0;bottom:0;text-align:center}.stakes-left b{display:block;font-size:30px;font-weight:500;line-height:1.1}.stakes-left span{font-size:13.5px;color:var(--text-2)}}:root[data-theme=contract]{--ink: #17171a;--ink2: rgba(23, 23, 26, .68);--rule: rgba(23, 23, 26, .17);--pen: #1c3fb0;--red: #b92c1a;--paper: #f6f3ea;--paper-2: #f2eee3;--bg: var(--paper);--panel: transparent;--panel-2: rgba(23, 23, 26, .05);--panel-3: rgba(23, 23, 26, .09);--border: var(--rule);--border-strong: var(--ink);--hairline: var(--rule);--text: var(--ink);--text-2: var(--ink2);--muted: var(--ink2);--text-faint: rgba(23, 23, 26, .5);--accent: var(--pen);--accent-ink: var(--paper);--accent-dim: rgba(28, 63, 176, .1);--accent-ghost: rgba(28, 63, 176, .08);--accent-border: rgba(28, 63, 176, .32);--accent-2: var(--pen);--grace: #8a6a1c;--grace-dim: rgba(138, 106, 28, .12);--grace-ink: var(--paper);--miss: var(--red);--miss-dim: rgba(185, 44, 26, .1);--miss-ink: var(--paper);--ring-track: rgba(23, 23, 26, .14);--grad: var(--ink);--focus-ring: 0 0 0 2px var(--pen);--bg-glow: none;--pill: var(--ink);--pill-ink: var(--paper);--sheet: var(--paper);--dim: rgba(23, 23, 26, .42);--nav-bg: transparent;--nav-ink: var(--ink2);--nav-pill: transparent;--nav-pill-ink: var(--ink);--rail-bg: transparent;--rail-on: transparent;--rail-on-ink: var(--ink);--shell: transparent;--shell-line: var(--rule);--done-bg: transparent;--done-line: var(--rule);--done-ink: var(--ink);--done-btn: var(--ink);--done-btn-ink: var(--paper);--atmos: none;--font-ui: "Newsreader", Georgia, serif;--font-num: "Newsreader", Georgia, serif;--r-1: 0;--r-2: 0;--r-3: 0;--r-4: 0;color-scheme:light;font-variant-numeric:lining-nums}:root[data-theme=contract] body{background:var(--paper);color:var(--ink);font-family:var(--font-ui)}:root[data-theme=contract] body:before,:root[data-theme=contract] body:after{display:none}.skin-contract.app{display:flex;flex-direction:column;box-sizing:border-box;width:100%;max-width:560px;margin:0 auto;padding:8px 22px 110px;background:none}.skin-contract main{padding:0;gap:0;display:block}.skin-contract footer{display:none}.skin-contract .bottomnav{order:-1;position:static;inset:auto;width:auto;height:auto;display:flex;justify-content:space-between;gap:0;padding:0;margin:0;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transform:none}.skin-contract .bnav,.skin-contract .bnav.on{position:relative;flex:none;width:auto;min-width:0;height:44px;padding:0 3px;border-radius:0;background:none;color:var(--ink2);font:400 15.5px var(--font-ui)}.skin-contract .bnav svg{display:none}.skin-contract .bnav .bnav-label,.skin-contract .bnav:not(.on) .bnav-label,.skin-contract .bnav.on .bnav-label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;white-space:nowrap;font:inherit;opacity:1}.skin-contract .bnav:hover{background:none;color:var(--ink)}.skin-contract .bnav.on{color:var(--ink);font-weight:500}.skin-contract .bnav.on:after{content:"";position:absolute;left:3px;right:3px;bottom:-1px;height:3px;background:var(--ink)}.skin-contract.app:has(.ct-head .ct-back) .bottomnav{display:none}.ct-head{display:block;padding:0;margin:0}.ct-kick{font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin-top:20px}.ct-head h1,.ct-over h1{font:300 38px/1.06 var(--font-ui);letter-spacing:-.015em;margin:8px 0 0;color:var(--ink)}.ct-par{font-size:16px;line-height:1.35;margin:10px 0 0;color:var(--ink2)}.ct-dayrow{display:flex;align-items:center;margin-top:6px;min-height:44px}.ct-dayrow button{min-height:44px;min-width:30px;border:0;background:none;color:var(--ink2);font:400 21px var(--font-ui);padding:0;cursor:pointer;box-shadow:none}.ct-dayrow button:disabled{opacity:.3}.ct-dayrow i{flex:1}.ct-dayrow .ct-acc{font-size:15.5px;color:var(--pen);font-weight:500;letter-spacing:0;text-transform:none}.ct-back{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:16px}.ct-back button{min-height:44px;border:0;background:none;color:var(--pen);font:500 16px var(--font-ui);padding:0;box-shadow:none;cursor:pointer}.ct-list{margin-top:14px;border-top:1px solid var(--rule);display:block}.ct-list .cat-header{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin:16px 0 0;padding:0 0 6px;border-bottom:1px solid var(--ink)}.cl{display:grid;grid-template-columns:minmax(0,1fr) 60px;align-items:center;min-height:57px;border-bottom:1px solid var(--rule)}.cl.live{background:#1c3fb012}.cl-main{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;min-height:56px;width:100%;border:0;background:none;color:inherit;padding:0;text-align:left;font:inherit;cursor:pointer;box-shadow:none}.cl-no{font-size:13.5px;color:var(--ink2);font-style:italic}.cl-mid{display:flex;align-items:baseline;gap:6px;min-width:0}.cl-nm{font-size:18.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62%}.cl-nm sup{font-size:12px;line-height:0;margin-left:1px}.cl-lead{position:relative;flex:1;min-width:8px;height:2px;border-bottom:2px dotted var(--rule)}.cl-lead i{position:absolute;left:0;top:0;height:2px;background:var(--pen);transition:width .25s ease}.cl-amt{font-size:13.5px;color:var(--ink2);white-space:nowrap}.cl-amt .hcount{font:inherit;color:inherit;background:none;padding:0}.cl-amt .hcount.over{color:var(--red)}.cl-amt .hcount.run{color:var(--pen)}.cl-sig{position:relative;display:block;height:34px;margin-left:12px;border-bottom:1px solid var(--ink);text-align:center}.cl-sig .ck{position:absolute;top:-10px;right:0;bottom:-1px;left:0;width:auto;height:auto;min-width:0;border:0;border-radius:0;background:none;color:var(--ink2);font:400 16px var(--font-ui);box-shadow:none;padding:0;transform:none}.cl-sig .ck.on,.cl-sig:has(b) .ck{color:transparent}.cl-sig .ck.rest,.cl-sig .ck.skip{color:var(--ink2)}.cl-sig b{position:absolute;left:0;right:0;bottom:-3px;font:600 29px/1 Caveat,cursive;color:var(--pen);transform:rotate(-7deg);pointer-events:none;animation:ctink .32s ease-out}.cl-sig em{position:absolute;left:0;right:0;bottom:1px;font:italic 400 14px/1 var(--font-ui);color:var(--red);pointer-events:none}@keyframes ctink{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@media(prefers-reduced-motion:reduce){.cl-sig b{animation:none}}.ct-blk{display:grid;grid-template-columns:30px minmax(0,1fr) 60px;align-items:center;height:57px;border-bottom:1px solid var(--rule);color:var(--ink2);font-size:17px;font-style:italic}.ct-blk .cl-sig{margin-left:12px}.ct-foot{position:relative;margin-top:14px;display:flex;flex-direction:column;gap:6px}.ct-tally{display:flex;justify-content:space-between;align-items:baseline;font-size:16px}.ct-tally span{font-size:13px;color:var(--ink2);font-style:italic}.ct-wit{display:flex;align-items:flex-end;gap:10px;font-size:14.5px;color:var(--ink2)}.ct-wit b{font:500 27px/1 Caveat,cursive;color:var(--ink);min-width:74px;padding:0 6px 1px;border-bottom:1px solid var(--ink)}.ct-actions{display:flex;justify-content:space-between;margin-top:6px}.ct-add{min-height:44px;margin-left:-3px;padding:0 3px;border:0;background:none;color:var(--pen);font:500 16px var(--font-ui);cursor:pointer;box-shadow:none}.ct-stamp{position:absolute;right:0;bottom:-46px;box-sizing:border-box;padding:7px 15px 6px;border:3px solid var(--red);border-radius:9px;color:var(--red);font-size:30px;font-weight:600;letter-spacing:.09em;line-height:1;transform:rotate(-11deg);text-align:center;background:#f6f3ead1;pointer-events:none}.ct-stamp small{display:block;font-size:10.5px;font-weight:500;letter-spacing:.11em;margin-top:3px}.ct-over{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;overflow-y:auto;background:var(--paper);color:var(--ink);font-family:var(--font-ui)}.ct-over-in{box-sizing:border-box;width:100%;max-width:560px;min-height:100%;margin:0 auto;padding:14px 22px 28px;display:flex;flex-direction:column}.ct-law{font-size:27px;font-weight:300;line-height:1.2;letter-spacing:-.01em;margin:14px 0 0}.ct-t{margin-top:18px;border-top:1px solid var(--ink)}.ct-r{display:flex;align-items:baseline;gap:6px;height:42px;padding-top:12px;box-sizing:border-box;font-size:16px;border-bottom:1px solid var(--rule)}.ct-r span{color:var(--ink2)}.ct-r i{flex:1}.ct-r b{font-weight:500}.ct-sub{font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin:22px 0 8px}.ct-marks{display:grid;grid-template-columns:repeat(15,1fr);gap:4px 0;font:500 21px/22px Caveat,cursive;color:var(--pen);text-align:center}.ct-marks .x{color:var(--red)}.ct-marks .g{color:var(--ink2)}.ct-btn{min-height:54px;box-sizing:border-box;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 17px var(--font-ui);width:100%;cursor:pointer;margin-top:12px;flex:none;box-shadow:none}.ct-detail{display:flex;flex-direction:column;gap:10px;margin-top:18px}.ct-detail .actions,.ct-detail .dial-actions{display:flex;gap:8px}.ct-detail .act{flex:1;min-height:46px;border:1px solid var(--rule);border-radius:0;background:none;color:var(--ink);font:400 16px var(--font-ui);box-shadow:none}.ct-detail .act.active,.ct-detail .act.done.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.ct-detail .act.rest.active{background:var(--ink2);border-color:var(--ink2)}.ct-detail .act.skip.active{background:var(--red);border-color:var(--red)}.ct-detail .card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.ct-detail .dots .dot{border-radius:0;background:var(--rule)}.ct-detail .dots .dot.full{background:var(--pen)}.ct-hint{font-size:14px;font-style:italic;color:var(--ink2);margin:8px 0 0}.ct-sec{display:flex;justify-content:space-between;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin-top:20px;padding-bottom:6px;border-bottom:1px solid var(--ink)}.ct-e{padding:9px 0;border-bottom:1px solid var(--rule);font-size:15.5px;line-height:1.3;white-space:pre-wrap}.ct-e span{display:block;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}.ct-over .card.journal{flex:1;display:flex;flex-direction:column;min-height:260px;padding:0;border:0;background:none;box-shadow:none}.ct-over .journal-head{display:flex;justify-content:space-between;align-items:baseline}.ct-over .journal-head h3{font:300 38px/1.06 var(--font-ui);margin:8px 0 0;letter-spacing:-.015em}.ct-over .journal textarea{flex:1;min-height:240px;margin-top:14px;padding:0 2px;border:0;border-radius:0;color:var(--ink);resize:none;box-shadow:none;outline:none;font:400 19px/34px var(--font-ui);background:repeating-linear-gradient(180deg,transparent 0 33px,var(--rule) 33px 34px)}.ct-seg{display:flex;gap:18px;margin-top:14px;border-bottom:1px solid var(--rule)}.ct-seg button{min-height:44px;border:0;background:none;padding:0;color:var(--ink2);font:400 16px var(--font-ui);cursor:pointer;box-shadow:none}.ct-seg .on{color:var(--ink);font-weight:500;box-shadow:inset 0 -3px var(--ink)}.ct-blank{font-size:25px;font-weight:300;line-height:1.7;margin:16px 0 0}.ct-fill{box-sizing:border-box;height:38px;margin:0 2px;padding:0 5px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;color:var(--pen);font:400 25px var(--font-ui);text-align:center;outline:none;box-shadow:none;vertical-align:baseline;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ct-fill::placeholder{color:var(--text-faint);font-style:italic}.ct-fill:focus{border-bottom-width:2px}select.ct-fill{padding-right:5px}.ct-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:14px}.ct-days button{height:44px;border:1px solid var(--rule);border-radius:0;background:none;color:var(--ink2);font:400 15px var(--font-ui);padding:0;box-shadow:none}.ct-days .on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.ct-line{box-sizing:border-box;width:100%;height:48px;margin-top:12px;padding:0 2px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;color:var(--ink);font:400 17px var(--font-ui);outline:none;box-shadow:none}.ct-tog{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin-top:12px;border-bottom:1px solid var(--rule);font-size:16.5px}.ct-tog input{width:24px;height:24px;margin:0;accent-color:var(--ink)}.ct-sign{display:flex;align-items:flex-end;gap:10px;font-size:14px;color:var(--ink2);margin:auto 0 0;padding-top:18px}.ct-sign b{min-width:120px;font:600 34px/1 Caveat,cursive;color:var(--pen);padding:0 8px;border-bottom:1px solid var(--ink)}.ct-run{position:fixed;left:0;right:0;bottom:0;z-index:50;box-sizing:border-box;padding:12px 22px calc(18px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--ink);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;color:var(--ink);font-family:var(--font-ui)}.ct-run small{grid-column:1 / 3;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.ct-run b{font-weight:300;font-size:46px;line-height:1;font-variant-numeric:tabular-nums lining-nums}.ct-run b span{font-size:18px;color:var(--ink2);margin-left:6px}.ct-run button{min-height:54px;padding:0 18px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 16px var(--font-ui)}.skin-contract .todos{display:flex;flex-direction:column;margin-top:4px}.skin-contract .todos .card{padding:0;margin:0;border:0;background:none;box-shadow:none}.skin-contract .todos .card-head{display:flex;justify-content:space-between;margin-top:20px;padding-bottom:6px;border-bottom:1px solid var(--ink)}.skin-contract .todos .habit-name{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.skin-contract .todo-row{min-height:48px;padding:4px 0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none}.skin-contract .todo-check{width:20px;height:20px;border:1.5px solid var(--ink);border-radius:0;background:none;color:var(--pen);font:600 26px/14px Caveat,cursive;box-shadow:none}.skin-contract .todo-check.done{background:none;border-color:var(--ink);color:var(--pen)}.skin-contract .todo-title{font-size:17.5px}.skin-contract .todo-title.done{color:var(--ink2);text-decoration:line-through;text-decoration-color:var(--pen)}.skin-contract .todo-when{font-size:13.5px;color:var(--ink2);background:none;border:0;padding:0}.skin-contract .todos .add-form{order:9;margin-top:18px;display:flex;flex-direction:column;gap:6px}.skin-contract .todos .add-form>input{height:48px;padding:0 2px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;font:italic 400 17px var(--font-ui);box-shadow:none}.skin-contract .when-row{display:flex;justify-content:space-between;gap:10px}.skin-contract .when-btn{min-height:44px;padding:0;border:0;background:none;color:var(--pen);font:500 15.5px var(--font-ui);box-shadow:none}.skin-contract .when-row>button:last-child,.skin-contract .add-form>.row>button:not(.link){min-height:44px;padding:0 18px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 16px var(--font-ui);box-shadow:none}:root[data-theme=contract] .hmodal{background:var(--dim)}:root[data-theme=contract] .hmodal-panel{background:var(--paper);border-radius:0;border-top:3px double var(--ink);box-shadow:none;color:var(--ink)}:root[data-theme=contract] .when-title{font:300 30px/1.08 var(--font-ui);letter-spacing:-.01em}:root[data-theme=contract] .when-picker button{border-radius:0;font-family:var(--font-ui);box-shadow:none}:root[data-theme=contract] .when-picker .on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.skin-contract main:has(.partners){display:flex;flex-direction:column}.skin-contract .partners{order:-1;margin-top:14px}.skin-contract .section-divider,.skin-contract .partners h2{display:none}.skin-contract .partner-row{display:block;padding:12px 0 14px;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);border-radius:0;background:none}.skin-contract .partner-row strong{display:block;font:500 46px/1 Caveat,cursive}.skin-contract .partner-row .badge{background:none;border:0;padding:0;color:var(--ink2);font:italic 400 14px var(--font-ui)}.skin-contract .partner-actions{display:flex;align-items:center;gap:14px;margin-top:4px}.skin-contract .partners .ct-par{margin-top:6px;font-size:15.5px}.skin-contract .partners .add-btn{min-height:44px;padding:0;border:0;background:none;color:var(--pen);font:500 16px var(--font-ui);text-align:left;box-shadow:none}.skin-contract .swap-left{display:none}.skin-contract .friends{margin-top:18px}.skin-contract .sec-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--ink)}.skin-contract .sec-head h2{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin:0}.skin-contract .fbtn{min-height:44px;padding:0 3px;border:0;border-radius:0;background:none;color:var(--pen);font:500 16px var(--font-ui);box-shadow:none}.skin-contract .fbtn.ghost{color:var(--ink2)}.skin-contract .feed-list{display:block}.ct-fr{display:grid;grid-template-columns:minmax(0,1fr) 62px 66px 44px;align-items:center;min-height:54px;border-bottom:1px solid var(--rule);font-size:17.5px}.ct-fr>div{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-fr>div i{display:block;font-style:normal;font-size:13px;color:var(--ink2)}.ct-fr>span{font-size:14px;color:var(--ink2);text-align:right}.ct-fr>b{font:600 23px/1 Caveat,cursive;color:var(--pen);text-align:right;transform:rotate(-6deg)}.skin-contract .user-search{width:100%;box-sizing:border-box;height:48px;margin-top:6px;padding:0 2px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;font:400 17px var(--font-ui);box-shadow:none}.skin-contract .loc-head{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.skin-contract .empty-state{padding:10px 0 0;text-align:left;background:none;border:0}.skin-contract .hint.big{font-size:16px;font-style:normal;text-align:left;color:var(--ink2);padding:0}.skin-contract .goals{counter-reset:annex;margin-top:10px;border-top:1px solid var(--ink);display:block}.skin-contract .goals>.card{position:relative;counter-increment:annex;display:block;padding:16px 0;margin:0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none;box-shadow:none}.skin-contract .goals>.card:before{content:var(--annex) " " counter(annex,upper-alpha);display:block;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.skin-contract .goals>.add-form:before{display:none}.skin-contract .goal-dial{display:none}.skin-contract .goal-head{display:block}.skin-contract .goal-head .habit-name{font:300 25px/1.1 var(--font-ui)}.skin-contract .goal-nums{display:block;font-size:14.5px;color:var(--ink2);margin-top:2px}.skin-contract .goal-nums em{font-style:normal}.skin-contract .goal-bar{position:relative;height:2px;margin:16px 0 9px;border-radius:0;background:var(--rule);overflow:visible}.skin-contract .goal-fill{height:2px;border-radius:0;background:var(--pen)}.skin-contract .goal-marker{top:-5px;width:1px;height:12px;border-radius:0;background:var(--ink)}.skin-contract .pace{font-size:14.5px;color:var(--ink2);background:none;padding:0}.skin-contract .goal-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:6px}.skin-contract .goal-step{min-height:44px;min-width:44px;padding:0 8px;border:1px solid var(--ink);border-radius:0;background:none;color:var(--ink);font:400 16px var(--font-ui);box-shadow:none}.skin-contract .backdate summary{min-height:44px;display:flex;align-items:center;color:var(--pen);font-size:15px}.skin-contract .goals>.add-btn{min-height:44px;padding:0;border:0;background:none;color:var(--pen);font:500 16px var(--font-ui);text-align:left;box-shadow:none}.ct-history{display:block}.ct-wide-only{display:none}.ct-wide-only .cc{height:54px}.ct-wide-only .ct-yr h2{font-size:26px}.ct-yr{display:flex;align-items:baseline;gap:8px;margin-top:8px}.ct-yr h2{flex:1;font:300 38px/1 var(--font-ui);letter-spacing:-.015em;margin:0;text-transform:capitalize}.ct-yr span{font-size:15px;color:var(--ink2)}.ct-yr button{min-width:30px;min-height:44px;border:0;background:none;color:var(--ink2);font:400 21px var(--font-ui);padding:0;box-shadow:none}.ct-yr button:disabled{opacity:.3}.ct-cal{display:grid;grid-template-columns:repeat(7,1fr);margin-top:14px;border-top:1px solid var(--ink);border-left:1px solid var(--rule)}.ch{height:26px;line-height:26px;box-sizing:border-box;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center;font-size:12px;font-style:italic;color:var(--ink2)}.cc{position:relative;height:62px;box-sizing:border-box;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:3px 0 0 5px;font-size:12px;color:var(--ink2)}.cc b{position:absolute;left:0;right:0;bottom:5px;text-align:center;font:600 22px/1 Caveat,cursive;color:var(--pen);transform:rotate(-6deg)}.cc.m b{color:var(--red);transform:none}.cc.g b{color:var(--ink2);transform:none}.ct-key{font-size:13.5px;color:var(--ink2);margin-top:9px;font-style:italic}.ct-hab{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:12px}.ct-hab button{min-height:44px;border:0;background:none;padding:0;color:var(--ink2);font:400 16px var(--font-ui);box-shadow:none}.ct-hab .on{color:var(--ink);font-weight:500;box-shadow:inset 0 -2px var(--ink)}.ct-big{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.ct-big div{font-size:14px;color:var(--ink2)}.ct-big b{display:block;font-weight:300;font-size:46px;line-height:1.1;color:var(--ink)}.skin-contract main .cat-header{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin:24px 0 0;padding-bottom:6px;border-bottom:1px solid var(--ink)}.skin-contract .stats .card,.skin-contract main>.card{padding:12px 0;margin:0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none;box-shadow:none}.skin-contract .card{box-shadow:none}.skin-contract .look-card,.skin-contract .profile-card,.skin-contract .card.sect{padding:0;margin:0;border:0;border-radius:0;background:none}.skin-contract .look-card{margin-top:16px}.skin-contract .section-title{font:400 12.5px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.skin-contract .card.sect{border-bottom:1px solid var(--rule)}.skin-contract .sect-head{min-height:46px;padding:0;background:none;border:0;color:var(--ink);font:400 16px var(--font-ui);box-shadow:none}.skin-contract .sect-title{font:inherit}.skin-contract .sect-summary{font-size:14.5px;color:var(--ink2)}.skin-contract .sect-body{padding:4px 0 14px}.skin-contract .sect-body input:not([type=checkbox]):not([type=file]),.skin-contract .sect-body select,.skin-contract .sect-body textarea{border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;color:var(--pen);font:400 16px var(--font-ui);box-shadow:none}.skin-contract .sect-body button:not(.link){border:1px solid var(--ink);border-radius:0;background:none;color:var(--ink);font:400 15.5px var(--font-ui);box-shadow:none}.ct-over .edit-form,.skin-contract .add-form{background:none;border:0;padding:0;box-shadow:none}.ct-over .edit-form{display:flex;flex-direction:column;gap:10px;margin-top:12px}.ct-over .edit-form input:not([type=checkbox]),.ct-over .edit-form select,.skin-contract .add-form input:not([type=checkbox]),.skin-contract .add-form select{min-height:44px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:none;color:var(--pen);font:400 17px var(--font-ui);box-shadow:none}.ct-over .seg,.skin-contract .seg{display:flex;gap:18px;padding:0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none}.ct-over .seg button,.skin-contract .seg button{flex:none;min-height:44px;padding:0;border:0;border-radius:0;background:none;color:var(--ink2);font:400 16px var(--font-ui);box-shadow:none}.ct-over .seg button.on,.skin-contract .seg button.on{color:var(--ink);font-weight:500;box-shadow:inset 0 -3px var(--ink)}.ct-over .days .day,.skin-contract .days .day{border-radius:0;border:1px solid var(--rule);background:none;color:var(--ink2);box-shadow:none;font-family:var(--font-ui)}.ct-over .days .day.on,.skin-contract .days .day.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.ct-over .edit-form>.row>button:not(.link){flex:1;min-height:54px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 17px var(--font-ui);box-shadow:none}.ct-over .link,.skin-contract .link{color:var(--pen);font-family:var(--font-ui)}.ct-over .link.danger,.skin-contract .link.danger{color:var(--red)}.ct-over .hint,.skin-contract .hint{color:var(--ink2);font-family:var(--font-ui)}.ct-over input.emoji-in{width:54px;text-align:center}.skin-contract .msg{margin:10px 0 0;padding:6px 0;border:0;border-top:1px solid var(--red);border-bottom:1px solid var(--red);border-radius:0;background:none;color:var(--red);font:400 14.5px/1.25 var(--font-ui)}.skin-contract .msg.offline-msg{border-color:var(--rule);color:var(--ink2)}.pro-sheet{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:70;box-sizing:border-box;max-width:460px;margin:0 auto;padding:16px;border-radius:30px;background:#19191c;color:#f4f4f1;font-family:Outfit,system-ui,sans-serif;box-shadow:0 0 0 1px #ffffff1f,0 18px 40px -14px #0009}.pro-sheet h2{font:400 21px Outfit,system-ui,sans-serif;margin:0}.pro-sheet p{font:400 14.5px/1.38 Outfit,system-ui,sans-serif;color:#f4f4f1b8;margin:6px 0 0}.pro-sheet-row{display:flex;gap:8px;margin-top:14px}.pro-sheet-row button{flex:1;min-height:54px;box-sizing:border-box;border:0;border-radius:27px;background:#f4f4f1;color:#111113;font:500 15.5px Outfit,sans-serif;cursor:pointer}.pro-sheet-row button.ghost{background:#ffffff1a;color:#f4f4f1}.pro-sheet-row.stack{flex-direction:column;gap:6px}.pro-sheet-row button.plain{min-height:44px;background:none;color:#f4f4f1b8}.look-themes{grid-template-columns:repeat(4,minmax(0,1fr))}.look-prev{position:relative}.look-prev.contract{background:repeating-linear-gradient(180deg,#f6f3ea 0,#f6f3ea 10px,#cfc9ba 10px,#cfc9ba 11px)}.look-lock{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;background:#000000b8;color:#fff;display:flex;align-items:center;justify-content:center}.skin-contract button,.ct-over button,.ct-run button{border-radius:0}:root[data-theme=contract] input,:root[data-theme=contract] select,:root[data-theme=contract] textarea{border-radius:0;box-shadow:none}:root[data-theme=contract] input:focus,:root[data-theme=contract] select:focus,:root[data-theme=contract] textarea:focus{box-shadow:none;outline:none}:root[data-theme=contract] input[type=checkbox]{accent-color:var(--ink)}.cl-sig .ck:before{display:none}.cl-sig .ck,.cl-sig .ck:hover{background:none;border:0;box-shadow:none}.cl-sig .ck.plus1{color:var(--ink2);font-size:14px}.cl-sig .ck.stop{color:var(--pen)}.ct-fill{display:inline-block;min-height:0}select.ct-fill{width:auto;min-width:46px}.ct-blank input.ct-fill{border:0;border-bottom:1px solid var(--ink);background:none;color:var(--pen)}.ct-line,.ct-over .ct-line{border:0;border-bottom:1px solid var(--ink);background:none}.ct-detail .dial-actions{position:static;inset:auto;margin:0;transform:none}.ct-detail .exact-add{padding:0;border:0;background:none}.ct-detail .exact-add button{min-width:48px;min-height:48px;border:1px solid var(--ink);background:none;color:var(--ink);box-shadow:none}.ct-detail .exact-add button:disabled{opacity:.4}.ct-detail .exact-add input{min-height:44px;border:0;border-bottom:1px solid var(--ink);background:none;color:var(--pen);font:400 17px var(--font-ui)}.ct-detail .note-link{min-height:44px}.skin-contract .look-prev{border-radius:0}.skin-contract .look-theme.on .look-prev{box-shadow:0 0 0 2px var(--pen)}.skin-contract .avatar{border-radius:0}.skin-contract .stat-row{grid-template-columns:90px minmax(0,1fr) 112px;min-height:42px;padding:0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none}.skin-contract .stat-row:before,.skin-contract .stat-row:after{display:none}.skin-contract .stat-row .bar{position:static;height:2px;border-radius:0;background:var(--rule);overflow:hidden}.skin-contract .stat-row .bar>*{border-radius:0;background:var(--pen)}.skin-contract .stat-label{font-size:16px;color:var(--ink2)}.skin-contract .stat-val{font-size:15px;font-weight:500;color:var(--ink)}.skin-contract .trend-bar{height:72px;border-radius:0;background:none;border-bottom:1px solid var(--ink)}.skin-contract .trend-fill{border-radius:0;background:var(--pen)}.skin-contract .trend-wrap .stat-label{font-size:12.5px;letter-spacing:.09em;text-transform:uppercase}.skin-contract .danger-zone button{border:1px solid var(--red);background:none;color:var(--red)}.skin-contract .stat-row .stat-val{grid-column:3;position:static}.skin-contract .stat-row .stat-label{position:static}.ct-detail .dial-actions .act{position:static;width:auto;height:auto;min-height:46px;border-radius:0}.ct-detail .dial-actions .act:before{display:none}.skin-contract .pro-sheet-row button{border-radius:27px}.skin-contract .stat-row .bar .fill{display:block;height:2px;background:var(--pen)}.ct-over .ct-fill,.ct-over .ct-line,.ct-over input,.ct-over select{border-radius:0!important}@media(min-width:1024px){.skin-contract.app{max-width:1180px;padding:18px 40px 40px}.skin-contract .bottomnav{position:static;left:auto;top:auto;bottom:auto;flex-direction:row;max-width:520px}.skin-contract .bnav,.skin-contract .bnav.on{width:auto;height:44px;border-radius:0;background:none}.skin-contract.app{border:0;border-radius:0;box-shadow:none}.skin-contract main.ct-today{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px;margin-top:0}.ct-wide-only{display:block;margin-top:8px}.ct-today .ct-left{min-width:0}.ct-today .ct-right{min-width:0;align-self:start;position:sticky;top:18px;padding-left:40px;border-left:1px solid var(--rule);min-height:420px;display:flex;flex-direction:column}.ct-today .ct-actions{margin-top:auto;padding-top:24px}.ct-stamp{bottom:-60px}.ct-history{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px}.ct-wide-only .ct-history{display:block}.ct-history .ct-page-b{padding-left:40px;border-left:1px solid var(--rule)}.skin-contract .todos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px;align-items:start}.skin-contract .todos .add-form{grid-column:1 / -1}.skin-contract main:has(.partners){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px;align-items:start}.skin-contract .partners{grid-area:1 / 1!important}.skin-contract .friends{grid-area:1 / 2!important;margin-top:14px;padding-left:40px;border-left:1px solid var(--rule)}.skin-contract .goals{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px}.skin-contract main:has(>.card.sect){display:block;column-count:2;column-gap:96px}.skin-contract main:has(>.card.sect)>*{break-inside:avoid}}.report-reasons{display:flex;flex-direction:column;gap:6px;margin-top:12px}.report-reasons label{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border-radius:22px;background:#ffffff12;font:400 15px Outfit,system-ui,sans-serif;cursor:pointer}.report-reasons label.on{background:#ffffff2e}.report-reasons input,.report-block input{accent-color:#f4f4f1;margin:0}.report-note{width:100%;box-sizing:border-box;margin-top:10px;padding:10px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:#ffffff0d;color:#f4f4f1;font:400 14.5px/1.35 Outfit,system-ui,sans-serif;resize:vertical}.report-block{display:flex;align-items:center;gap:10px;margin-top:10px;font:400 14.5px Outfit,system-ui,sans-serif;color:#f4f4f1d9;cursor:pointer}.pro-sheet-row button:disabled{opacity:.45;cursor:default}:root[data-theme=board] .report-reasons label,:root[data-theme=board] .report-note{border-radius:0!important}.report-reasons input[type=radio],.report-block input[type=checkbox]{width:18px;height:18px;min-height:0;flex:none;padding:0;border:0;background:none;box-shadow:none}.report-reasons input[type=radio]:focus-visible,.report-block input[type=checkbox]:focus-visible{outline:2px solid #f4f4f1;outline-offset:2px}.report-reasons label span,.report-block span{flex:1;text-align:left}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:71;background:#00000080}.pro-sheet.confirm-sheet{z-index:72}.confirm-sheet p:first-child{margin-top:0;color:#f4f4f1;font-size:16px}.pro-sheet-row button.danger{background:#e5484d;color:#fff}:root[data-theme=thread]{--ink: #f4f0fb;--ink2: rgba(244, 240, 251, .72);--rule: rgba(255, 255, 255, .1);--pen: #c9f24d;--red: #ff9a85;--paper: #140f1f;--sign-font: var(--font-ui);--bub: #261d39;--bub2: #33274d;--lime: #c9f24d;--limeink: #1b2305;--coral: #ff9a85;--amber: #ffcf70;--bg: #140f1f;--panel: #261d39;--panel-2: #33274d;--panel-3: #3d2f5c;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .24);--hairline: rgba(255, 255, 255, .1);--text: #f4f0fb;--text-2: rgba(244, 240, 251, .74);--muted: rgba(244, 240, 251, .72);--text-faint: rgba(244, 240, 251, .46);--accent: #c9f24d;--accent-ink: #1b2305;--accent-dim: rgba(201, 242, 77, .16);--accent-ghost: rgba(201, 242, 77, .12);--accent-border: rgba(201, 242, 77, .32);--accent-2: #c9f24d;--grace: #ffcf70;--grace-dim: rgba(255, 207, 112, .14);--grace-ink: #2a1c05;--miss: #ff9a85;--miss-dim: rgba(255, 154, 133, .13);--miss-ink: #2c0f0b;--ring-track: rgba(255, 255, 255, .1);--grad: #f4f0fb;--focus-ring: 0 0 0 3px rgba(201, 242, 77, .3);--pill: #c9f24d;--pill-ink: #1b2305;--sheet: #1d1630;--dim: rgba(9, 6, 16, .62);--nav-bg: transparent;--nav-ink: rgba(244, 240, 251, .72);--nav-pill: #33274d;--nav-pill-ink: #f4f0fb;--rail-bg: transparent;--rail-on: #33274d;--rail-on-ink: #f4f0fb;--shell: transparent;--shell-line: rgba(255, 255, 255, .1);--done-bg: #261d39;--done-line: rgba(255, 255, 255, .1);--done-ink: #f4f0fb;--done-btn: #c9f24d;--done-btn-ink: #1b2305;--atmos: none;--font-ui: "Bricolage Grotesque", system-ui, sans-serif;--font-num: "Bricolage Grotesque", system-ui, sans-serif;color-scheme:dark}:root[data-theme=dayline]{--ink: #eef1f7;--ink2: rgba(238, 241, 247, .72);--rule: rgba(255, 255, 255, .1);--pen: #ffc06b;--red: #ff9485;--paper: #0e1320;--sign-font: var(--font-ui);--tile: rgba(255, 255, 255, .065);--tile2: rgba(255, 255, 255, .12);--sun: #ffc06b;--dusk: #9a8dff;--bg: #0e1320;--panel: rgba(255, 255, 255, .065);--panel-2: rgba(255, 255, 255, .09);--panel-3: rgba(255, 255, 255, .13);--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .22);--hairline: rgba(255, 255, 255, .08);--text: #eef1f7;--text-2: rgba(238, 241, 247, .74);--muted: rgba(238, 241, 247, .72);--text-faint: rgba(238, 241, 247, .44);--accent: #ffc06b;--accent-ink: #17110a;--accent-dim: rgba(255, 192, 107, .16);--accent-ghost: rgba(255, 192, 107, .12);--accent-border: rgba(255, 192, 107, .32);--accent-2: #ffc06b;--grace: #ffe2a8;--grace-dim: rgba(255, 226, 168, .14);--grace-ink: #2a1c05;--miss: #ff9485;--miss-dim: rgba(255, 148, 133, .13);--miss-ink: #2c0f0b;--ring-track: rgba(255, 255, 255, .1);--grad: #eef1f7;--focus-ring: 0 0 0 3px rgba(255, 192, 107, .3);--pill: #eef1f7;--pill-ink: #0e1320;--sheet: #171d2e;--dim: rgba(5, 7, 14, .62);--nav-bg: #0e1320;--nav-ink: rgba(238, 241, 247, .72);--nav-pill: transparent;--nav-pill-ink: #ffc06b;--rail-bg: transparent;--rail-on: transparent;--rail-on-ink: #ffc06b;--shell: transparent;--shell-line: rgba(255, 255, 255, .1);--done-bg: transparent;--done-line: transparent;--done-ink: #eef1f7;--done-btn: #ffc06b;--done-btn-ink: #17110a;--atmos: none;--font-ui: "Manrope", system-ui, sans-serif;--font-num: "Manrope", system-ui, sans-serif;color-scheme:dark}:root[data-theme=board]{--ink: #f2efe6;--ink2: rgba(242, 239, 230, .68);--rule: rgba(242, 239, 230, .14);--pen: #ffb224;--red: #ff7a5c;--paper: #0b0b0a;--sign-font: var(--font-ui);--cell: rgba(242, 239, 230, .09);--amb: #ffb224;--ambink: #241600;--bg: #0b0b0a;--panel: transparent;--panel-2: rgba(242, 239, 230, .06);--panel-3: rgba(242, 239, 230, .1);--border: rgba(242, 239, 230, .14);--border-strong: rgba(242, 239, 230, .34);--hairline: rgba(242, 239, 230, .14);--text: #f2efe6;--text-2: rgba(242, 239, 230, .72);--muted: rgba(242, 239, 230, .68);--text-faint: rgba(242, 239, 230, .44);--accent: #ffb224;--accent-ink: #241600;--accent-dim: rgba(255, 178, 36, .14);--accent-ghost: rgba(255, 178, 36, .1);--accent-border: rgba(255, 178, 36, .5);--accent-2: #ffb224;--grace: #ffd27a;--grace-dim: rgba(255, 210, 122, .14);--grace-ink: #241600;--miss: #ff7a5c;--miss-dim: rgba(255, 122, 92, .13);--miss-ink: #2c0f0b;--ring-track: rgba(242, 239, 230, .12);--grad: #f2efe6;--focus-ring: 0 0 0 2px #ffb224;--pill: #ffb224;--pill-ink: #241600;--sheet: #0b0b0a;--dim: rgba(0, 0, 0, .62);--nav-bg: transparent;--nav-ink: rgba(242, 239, 230, .68);--nav-pill: #ffb224;--nav-pill-ink: #241600;--rail-bg: transparent;--rail-on: #ffb224;--rail-on-ink: #241600;--shell: transparent;--shell-line: rgba(242, 239, 230, .14);--done-bg: transparent;--done-line: rgba(242, 239, 230, .14);--done-ink: #f2efe6;--done-btn: #ffb224;--done-btn-ink: #241600;--atmos: none;--font-ui: "IBM Plex Mono", ui-monospace, monospace;--font-num: "IBM Plex Mono", ui-monospace, monospace;--r-1: 0;--r-2: 0;--r-3: 0;--r-4: 0;color-scheme:dark}:root[data-theme=thread] body,:root[data-theme=dayline] body,:root[data-theme=board] body{background:var(--paper);color:var(--ink);font-family:var(--font-ui)}:root[data-theme=thread] body:before,:root[data-theme=dayline] body:before,:root[data-theme=board] body:before,:root[data-theme=thread] body:after,:root[data-theme=dayline] body:after,:root[data-theme=board] body:after{display:none}:root[data-theme=board] *,:root[data-theme=board] *:before,:root[data-theme=board] *:after{border-radius:0!important}:root[data-theme=board] .pro-sheet,:root[data-theme=board] .pro-sheet button{border-radius:0!important}.skin-thread.app,.skin-dayline.app,.skin-board.app{display:flex;flex-direction:column;box-sizing:border-box;width:100%;max-width:560px;margin:0 auto;padding:8px 16px 110px;background:none;border:0;box-shadow:none}.skin-thread main,.skin-dayline main,.skin-board main{padding:0}.skin-thread footer,.skin-dayline footer,.skin-board footer{display:none}.sk-head{order:-2;display:flex;align-items:center;gap:11px;min-height:58px;padding:6px 0;margin:0}.sk-t{flex:1;min-width:0}.sk-t h1{margin:0;color:var(--ink);font:600 18.5px/1.15 var(--font-ui)}.sk-t p{margin:1px 0 0;font-size:13.5px;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-me{width:46px;height:46px;flex:none;padding:0;overflow:hidden;border:0;border-radius:50%;background:var(--panel);color:var(--ink);font:600 16px var(--font-ui);box-shadow:none}.sk-me img{width:100%;height:100%;object-fit:cover}.sk-arrows{display:inline-flex;flex:none}.sk-arrows button{width:36px;height:44px;border:0;background:none;padding:0;color:var(--ink2);font:400 22px var(--font-ui);box-shadow:none}.sk-arrows button:disabled{opacity:.3}.skin .ct-add,.skin-thread .add-btn,.skin-dayline .add-btn,.skin-board .add-btn{font-family:var(--font-ui)}.ct-marks{font-family:var(--sign-font, "Caveat"),cursive}.skin-thread .bottomnav,.skin-board .bottomnav{order:-1;position:static;inset:auto;transform:none;width:auto;height:auto;margin:0;padding:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}body:has(.skin) .bottomnav{right:0!important}.skin .bnav svg{display:none}.skin-dayline .bnav svg{display:block}.skin .bnav .bnav-label,.skin .bnav:not(.on) .bnav-label,.skin .bnav.on .bnav-label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;white-space:nowrap;opacity:1;font:inherit}.skin [data-tour=add]>.add-btn{color:var(--ink);background:var(--panel);z-index:auto;-webkit-backdrop-filter:none;backdrop-filter:none;position:static;width:100%;height:auto;min-height:50px;margin:0;border-radius:var(--r-3);font-size:15.5px}.skin [data-tour=add]>.add-btn:before{display:none}.skin .feed-handle{display:none}.skin-thread .sk-me{background:var(--bub)}.skin-thread .sk-head{position:sticky;top:0;z-index:6;background:var(--paper)}.skin-thread .bottomnav{position:sticky!important;top:58px;z-index:6;background:var(--paper)!important}.fr-bot{width:46px;height:46px;flex:none;border-radius:50%;background:#3b2b5e;display:flex;align-items:center;justify-content:center;font-size:25px}.skin-thread .bottomnav{display:flex;justify-content:space-between;gap:2px;padding:2px 0 6px;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none}.skin-thread .bnav,.skin-thread .bnav.on{width:auto;min-width:0;height:44px;padding:0 8px;border-radius:22px;color:var(--ink2);font:500 14.5px var(--font-ui)}.skin-thread .bnav.on{background:var(--bub2);color:var(--ink)}.fr-thread{display:flex;flex-direction:column;min-height:calc(100dvh - 150px);padding-bottom:8px}.fr-in{display:flex;flex-direction:column;gap:6px;padding:14px 0 6px}.fr-thread>.fr-in:first-child{margin-top:auto}.fr-cur{padding-top:0}.skin-thread .m{max-width:84%;box-sizing:border-box;padding:10px 14px;border-radius:20px 20px 20px 6px;background:var(--bub);color:var(--ink);font:400 16.5px/1.27 var(--font-ui);align-self:flex-start;text-align:left}.skin-thread button.m{border:0;box-shadow:none;cursor:pointer}.skin-thread .m.me{align-self:flex-end;background:var(--lime);color:var(--limeink);border-radius:20px 20px 6px;font-weight:600;margin-bottom:8px}.skin-thread .m.end{background:var(--lime);color:var(--limeink);font-weight:600}.skin-thread .m.wide{max-width:100%;width:100%}.fr-rep b{display:block;font-weight:600;font-size:13.5px;color:var(--ink2);margin-bottom:2px}.fr-dots{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.fr-dots i{width:14px;height:14px;border-radius:50%;background:var(--lime)}.fr-dots i.x{background:var(--coral)}.fr-c{box-sizing:border-box;width:100%;padding:4px 14px;border-radius:20px 20px 20px 6px;background:var(--bub)}.fr-ck{display:flex;align-items:center;gap:10px;min-height:48px;font-size:16px;border-bottom:1px solid var(--rule)}.fr-ck:last-child{border-bottom:0}.fr-ck em{margin-left:auto;font-style:normal;font-size:13.5px;color:var(--ink2)}.fr-nm{min-height:44px;flex:0 1 auto;min-width:0;border:0;background:none;padding:0;color:var(--ink);font:500 16px var(--font-ui);text-align:left;box-shadow:none}.fr-slip{min-height:44px;padding:0 12px;border:0;border-radius:22px;background:var(--bub2);color:var(--coral);font:600 13.5px var(--font-ui);box-shadow:none}.fr-left{display:flex;align-items:center;gap:4px;min-height:42px;font-size:13.5px;color:var(--ink2)}.fr-left span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fr-left button{min-height:42px;border:0;background:none;color:var(--lime);font:600 14px var(--font-ui);padding:0 8px;white-space:nowrap;box-shadow:none}.fr-dock{position:sticky;bottom:0;z-index:5;padding-bottom:8px;background:var(--paper)}.fr-bar{display:flex;gap:8px}.fr-bar button{flex:1;min-height:54px;box-sizing:border-box;border-radius:27px;border:0;background:var(--bub);color:var(--ink);font:500 15.5px var(--font-ui);white-space:nowrap;padding:0 8px;box-shadow:none}.fr-bar button.pri{background:var(--lime);color:var(--limeink);font-weight:600}.fr-add{margin-top:8px}.skin-dayline .sk-head{min-height:74px}.skin-dayline .sk-t h1{font-size:30px;line-height:1.1;letter-spacing:-.02em}.skin-dayline .sk-me{background:var(--tile2)}.skin-dayline .bottomnav{z-index:40;position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:76px;margin:0;display:flex;justify-content:center;gap:0;padding:6px 6px 8px;box-sizing:border-box;border:0;border-top:1px solid var(--rule);border-radius:0;background:var(--paper);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transform:none}.skin-dayline .bnav,.skin-dayline .bnav.on{flex:1;max-width:110px;width:auto;min-width:0;height:auto;padding:0;border-radius:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--ink2);font:600 11.5px var(--font-ui)}.skin-dayline .bnav.on{color:var(--sun)}.zi-tl{display:flex;flex-direction:column;padding:6px 0 10px}.zsec{margin:0 0 4px 72px;font-size:13px;font-weight:700;color:var(--ink2)}.zr{display:grid;grid-template-columns:46px 26px minmax(0,1fr);align-items:stretch;min-height:70px}.zt{align-self:center;font-size:13px;font-weight:600;color:var(--ink2);font-variant-numeric:tabular-nums}.zp{position:relative;display:block}.zp:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:4px;background:var(--c, #9fb0d6);opacity:.34}.zr.past .zp:before{opacity:1}.zn{position:absolute;left:3px;top:50%;width:20px;height:20px;margin-top:-10px;box-sizing:border-box;border-radius:50%;background:var(--paper);border:3px solid var(--c, #9fb0d6)}.zr.on .zn{background:var(--c, #9fb0d6)}.zb{align-self:center;display:flex;align-items:center;gap:8px;box-sizing:border-box;min-height:58px;margin-left:6px;padding:5px 8px 5px 12px;border-radius:18px;background:var(--tile)}.zr.on .zb{background:none;padding-left:4px}.zr.live .zb{background:#ffc06b29;box-shadow:inset 0 0 0 1.5px var(--sun)}.zm-btn{flex:1;min-width:0;min-height:48px;display:flex;align-items:center;gap:10px;border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;box-shadow:none}.ze{font-size:21px;flex:none}.zm{min-width:0;font-size:15.5px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zm i{display:block;font-style:normal;font-weight:500;font-size:13px;color:var(--ink2);margin-top:1px;overflow:hidden;text-overflow:ellipsis}.zr.on .zm{color:var(--ink2);font-weight:500}.zb .hcount{font-size:13.5px;white-space:nowrap}.znow{display:grid;grid-template-columns:46px 26px minmax(0,1fr);align-items:center;height:44px}.znow .zt{color:var(--sun)}.znow .zp{height:100%}.znow .zp:before{background:linear-gradient(180deg,#ffe2a8 50%,#ff9c6e 50%);opacity:1}.zd{position:absolute;left:1px;top:50%;width:24px;height:4px;margin-top:-2px;border-radius:2px;background:var(--sun)}.zl{display:flex;align-items:center;gap:8px;margin-left:6px;font-size:14px;font-weight:600;color:var(--sun);white-space:nowrap}.zl:after{content:"";flex:1;height:1px;background:var(--sun);opacity:.4}.zend{display:grid;grid-template-columns:46px 26px minmax(0,1fr);align-items:stretch;min-height:88px}.zend .zt{color:var(--dusk)}.zend .zp:before{background:var(--dusk);bottom:50%;opacity:.34}.zend .zn{left:-1px;width:28px;height:28px;margin-top:-14px;border-radius:9px;transform:rotate(45deg);border:0;background:var(--dusk)}.zend .zb{display:block;min-height:0;margin-top:7px;margin-bottom:7px;background:#9a8dff33;font-size:15.5px;font-weight:600;line-height:1.25;padding:10px 13px}.zend .zb i{display:block;font-style:normal;font-weight:500;font-size:13px;color:var(--ink2);margin-top:2px}.zhint{font-size:13.5px;line-height:1.35;color:var(--ink2);margin:6px 4px 0}.zact{display:flex;flex-direction:column;gap:8px;margin-top:12px}.zbtn{min-height:50px;border:0;border-radius:25px;background:var(--tile);color:inherit;font:600 15px var(--font-ui);box-shadow:none}.zhist{padding-top:6px}.zw-head{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;color:var(--ink2)}.zw-head button{width:44px;height:44px;border:0;background:none;color:var(--ink2);font:400 22px var(--font-ui);box-shadow:none}.zw-head button:disabled{opacity:.3}.zw{margin-top:6px;padding:14px 12px 12px;border-radius:22px;background:var(--tile)}.zwg{display:grid;grid-template-columns:44px repeat(7,minmax(0,1fr));align-items:center}.zwd{text-align:center;font-size:13px;font-weight:600;color:var(--ink2);height:30px;line-height:30px}.zwd.on{color:#17110a;background:var(--sun);border-radius:15px}.zwt{font-size:12.5px;font-weight:600;color:var(--ink2);font-variant-numeric:tabular-nums}.zwc{position:relative;height:38px;display:flex;align-items:center;justify-content:center}.zwc:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--rule)}.zwc i{position:relative;width:16px;height:16px;box-sizing:border-box;border-radius:50%;background:var(--c, #ffc06b)}.zwc i.o{background:var(--paper);border:2px solid var(--tile2)}.zwc i.n{width:5px;height:5px;background:var(--tile2)}.zwc i.x{background:var(--paper);display:flex;align-items:center;justify-content:center}.zwc i.x:before{content:"×";font:700 21px/16px var(--font-ui);font-style:normal;color:#ff9485}.zwc i.g{background:var(--paper);border:3px solid var(--sun)}.zk{display:flex;gap:14px;font-size:13px;color:var(--ink2);padding:10px 4px 0;flex-wrap:wrap}.zk span{display:flex;align-items:center;gap:5px}.zk i{width:11px;height:11px;box-sizing:border-box;border-radius:50%;background:var(--sun)}.zk i.x{background:none;display:flex;align-items:center;justify-content:center}.zk i.x:before{content:"×";font:700 17px/11px var(--font-ui);font-style:normal;color:#ff9485}.zk i.g{background:none;border:2px solid var(--sun)}.zk i.o{background:none;border:2px solid var(--tile2)}.z2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 0}.z2 div{box-sizing:border-box;padding:12px 14px;border-radius:20px;background:var(--tile);font-size:13.5px;color:var(--ink2)}.z2 b{display:block;font-size:28px;font-weight:600;color:var(--ink);line-height:1.1;margin-bottom:2px}.skin-board .sk-head{min-height:44px;padding:4px 0;font-size:13.5px}.skin-board .sk-head>b{font-weight:600;letter-spacing:.06em}.skin-board .sk-head>span:not(.sk-arrows){flex:1;text-align:right;color:var(--ink2)}.skin-board .sk-me{width:44px;height:44px;box-sizing:border-box;border:1px solid var(--rule);background:none;font-size:14px}.skin-board .bottomnav{display:flex;gap:0;margin-top:6px;padding:0;border:1px solid var(--rule);background:none}.skin-board .bnav,.skin-board .bnav.on{flex:1 1 auto;width:auto;min-width:0;height:44px;padding:0 2px;border-right:1px solid var(--rule);background:none;color:var(--ink2);font:500 12px var(--font-ui);text-transform:uppercase}.skin-board .bnav:last-child{border-right:0}.skin-board .bnav.on{background:var(--amb);color:var(--ambink);font-weight:600}.tb-today,.tb-hist{display:flex;flex-direction:column}.tb-st{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px;border:1px solid var(--rule)}.tb-st>div{padding:8px 0 7px 9px;border-right:1px solid var(--rule);font-size:11.5px;color:var(--ink2)}.tb-st>div:last-child{border-right:0}.tb-st b{display:block;font-size:22px;font-weight:500;color:var(--ink);line-height:1.15}.tb-yr{display:flex;align-items:center;justify-content:space-between;padding:0 2px!important}.tb-yr b{font-size:16px}.tb-yr button{width:26px;height:44px;border:0;background:none;color:var(--ink2);font:500 18px var(--font-ui);padding:0;box-shadow:none}.tb-yr button:disabled{opacity:.3}.tb-g{display:grid;grid-template-columns:minmax(0,1fr) 24px 24px 46px 24px 24px 24px 24px;grid-auto-rows:minmax(52px,auto);grid-template-rows:34px;margin-top:8px}.tb-g:has(.tb-hd.on:nth-of-type(2)){grid-template-columns:minmax(0,1fr) 46px 24px 24px 24px 24px 24px 24px}.tb-hd{display:flex;align-items:center;justify-content:center;min-height:34px;padding:0;border:0;border-bottom:1px solid var(--rule);background:none;color:var(--ink2);font:400 12px var(--font-ui);box-shadow:none}.tb-hd.l{justify-content:flex-start}.tb-hd.on{background:var(--amb);color:var(--ambink);font-weight:600}.tb-n{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0;border:0;border-bottom:1px solid var(--rule);background:none;color:var(--ink);font:500 13.5px/1.2 var(--font-ui);text-align:left;white-space:nowrap;overflow:hidden;box-shadow:none}.tb-n span{max-width:100%;overflow:hidden;text-overflow:ellipsis}.tb-n i{font-style:normal;font-weight:400;font-size:12px;color:var(--ink2)}.tb-n sup{font-size:10px;line-height:0;color:var(--amb)}.tb-c{display:flex;align-items:center;justify-content:center;padding:0;min-width:0;border:0;border-bottom:1px solid var(--rule);background:none;box-shadow:none}.tb-c i{width:17px;height:17px;box-sizing:border-box;display:block}.tb-c.k i{background:var(--amb)}.tb-c.g i{background:repeating-linear-gradient(135deg,var(--amb) 0 2px,transparent 2px 5px);box-shadow:inset 0 0 0 1px var(--amb)}.tb-c.x i{background:var(--red)}.tb-c.o i{width:4px;height:4px;background:var(--ink2)}.tb-c.f i{background:var(--cell)}.tb-d{position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--rule);background:#ffb2241a}.tb-box{position:relative;display:block;width:30px;height:30px;box-sizing:border-box;border:2px solid var(--amb);overflow:hidden}.tb-box i{position:absolute;left:0;right:0;bottom:0;background:var(--amb)}.tb-d .ck{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto;min-width:0;border:0;background:none;color:var(--ink);font:600 13px var(--font-ui);padding:0;box-shadow:none;transform:none}.tb-d .ck:before{display:none}.tb-d .ck.on,.tb-d.full .ck{color:var(--ambink)}.tb-d .ck.plus1{color:var(--amb);font-size:12px}.tb-d .ck.stop{color:var(--amb)}.tb-ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;font-size:12.5px;color:var(--ink2);line-height:1.3}.tb-ft>div:first-child{flex:1;min-width:0}.tb-ft b{display:block;font-size:19px;font-weight:500;color:var(--amb);font-variant-numeric:tabular-nums}.tb-j{min-height:48px;padding:0 10px;border:1px solid var(--amb);background:none;color:var(--amb);font:600 12.5px var(--font-ui);box-shadow:none}.tb-ft [data-tour=add]>.add-btn{width:auto;min-height:48px;padding:0 10px;border:0;background:var(--amb);color:var(--ambink);font:600 12.5px var(--font-ui)}.tb-void{display:flex;flex-direction:column;justify-content:center;min-height:240px;font-size:13.5px;line-height:1.45;color:var(--ink2)}.tb-void b{display:block;font-size:22px;font-weight:500;color:var(--ink);margin-bottom:6px}.tb-sub{display:flex;justify-content:space-between;font-size:12px;color:var(--ink2);margin:14px 0 7px}.tb-y{display:grid;grid-template-columns:30px repeat(31,minmax(0,1fr));gap:2px;align-items:center;font-size:10.5px;color:var(--ink2)}.tb-y i{display:block;height:13px;background:var(--cell)}.tb-y i.k{background:var(--amb)}.tb-y i.g{background:#ffb2246b}.tb-y i.x{background:var(--red)}.tb-y i.n{background:none}.tb-rates{border-top:1px solid var(--rule)}.tb-r{display:grid;grid-template-columns:minmax(0,1fr) 92px 42px;align-items:center;gap:8px;min-height:40px;border-bottom:1px solid var(--rule);font-size:13px}.tb-r span{min-width:0;white-space:nowrap;overflow:hidden}.tb-bar{display:block;height:9px;background:var(--cell)}.tb-bar i{display:block;height:9px;background:var(--amb)}.tb-r b{font-weight:500;text-align:right}.skin-board .ct-fr{display:grid;grid-template-columns:minmax(0,1fr) 62px 66px 44px;align-items:center;min-height:54px;border-bottom:1px solid var(--rule);font-size:14px}.skin-board .ct-fr>b{font:600 13px var(--font-ui);color:var(--amb);transform:none}.skin-board .card{box-shadow:none}.skin-board .goal-dial{display:none}.skin-board .goal-head{display:flex;justify-content:space-between;gap:10px}.skin-board .goal-head .habit-name{font-weight:500;font-size:14px}.skin-board .goal-bar{height:12px;background:var(--cell)}.skin-board .goal-fill{background:var(--amb)}.skin-board .goal-marker{top:-3px;bottom:-3px;width:2px;background:var(--ink)}.skin-board .hint.big{font-size:13.5px}.look-prev.thread{background:linear-gradient(#3a2c56,#3a2c56) 8px 10px / 38px 12px no-repeat,linear-gradient(#c9f24d,#c9f24d) right 8px top 30px / 28px 12px no-repeat,#140f1f}.look-prev.dayline{background:linear-gradient(180deg,#ffcf87,#ff9c6e 55%,#9a8dff) 16px 0 / 4px 100% no-repeat,#0e1320}.look-prev.board{background:repeating-linear-gradient(180deg,transparent 0 9px,#0b0b0a 9px 13px),repeating-linear-gradient(90deg,#ffb224 0,#ffb224 9px,#0b0b0a 9px,#0b0b0a 13px)}.skin .bnav-badge,.skin .bnav.on .bnav-badge{left:auto;background:var(--accent);color:var(--accent-ink)}.skin-contract .bnav-badge,.skin-contract .bnav.on .bnav-badge{top:3px;right:-17px}.skin-thread .bnav-badge,.skin-thread .bnav.on .bnav-badge{top:-1px;right:-5px}.skin-board .bnav-badge,.skin-board .bnav.on .bnav-badge{top:3px;right:3px;min-width:15px;height:15px;padding:0 3px;font-size:9.5px}.skin-board .bnav.on .bnav-badge{background:var(--ambink);color:var(--amb)}.skin-dayline .bnav-badge,.skin-dayline .bnav.on .bnav-badge{top:-1px;left:calc(50% + 5px);right:auto}@media(min-width:1024px){.skin-thread.app,.skin-dayline.app,.skin-board.app{max-width:1040px;padding:14px 24px 40px}.skin-thread .bottomnav,.skin-board .bottomnav{position:static;left:auto;top:auto;bottom:auto;flex-direction:row}.skin-thread .bottomnav{top:58px}.skin .bnav,.skin .bnav.on{width:auto}.skin-dayline .bottomnav{position:fixed;left:0;right:0;bottom:0;top:auto;flex-direction:row;width:auto}.skin-dayline .bnav,.skin-dayline .bnav.on{width:auto;height:auto;border-radius:0;background:none}.skin .bnav .bnav-label,.skin .bnav.on .bnav-label{position:static;width:auto;height:auto;clip:auto;clip-path:none;opacity:1}.tb-g{grid-template-columns:minmax(0,1fr) repeat(7,56px)!important}.tb-2{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:20px}.skin-board .tb-y i{height:22px}.fr-thread{max-width:720px;margin:0 auto;width:100%}}
