@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DXI_y_WF.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-ext-wght-normal-CnNj8hVb.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-CUIqqgP9.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-vietnamese-wght-normal-rat7GD3o.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-ext-wght-normal-D6H-S6MW.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-main: "Onest", "SF Pro Text", "Avenir Next", sans-serif;--font-display: "Unbounded", "Avenir Next Condensed", sans-serif;--safe-bottom: env(safe-area-inset-bottom, 0px);--radius: 1rem;--app-max-width: 980px}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,#root{max-width:100%;width:100%;overflow-x:hidden}:root[data-theme=dark]{--bg: #071512;--card: rgba(255, 255, 255, .04);--card-soft: rgba(255, 255, 255, .055);--surface: rgba(255, 255, 255, .04);--surface-hover: rgba(255, 255, 255, .07);--line: rgba(255, 255, 255, .08);--border: var(--line);--text: #eefcf9;--text-secondary: #90ada8;--text-tertiary: #6f8d88;--muted: #90ada8;--accent: #0d9488;--accent-rgb: 13, 148, 136;--accent-text: #ffffff;--primary: #12b3a7;--primary-dim: rgba(18, 179, 167, .14);--primary-border: rgba(97, 229, 217, .2);--primary-text: #ffffff;--streak: #fb7f38;--streak-dim: rgba(249, 115, 22, .16);--danger: #dd5f5b;--danger-rgb: 221, 95, 91;--ok: #7fd8ab;--ok-rgb: 127, 216, 171;--warn: #f4c16d;--missed: #f07f7b;--challenge-default-color: var(--primary);--shell-bg: radial-gradient(circle at 16% 8%, rgba(18, 179, 167, .12), transparent 24%), radial-gradient(circle at 85% 10%, rgba(249, 115, 22, .08), transparent 18%), linear-gradient(180deg, #091c19 0%, #071512 100%);--shell-panel-overlay: linear-gradient(180deg, rgba(255, 255, 255, .025), transparent 16%);--shadow-soft: 0 18px 48px rgba(0, 0, 0, .22);--shadow-card: 0 20px 44px rgba(0, 0, 0, .16);--shadow-elevated: 0 28px 64px rgba(0, 0, 0, .22)}:root[data-theme=light]{--bg: #eef9f7;--card: rgba(255, 255, 255, .88);--card-soft: #f7fffd;--surface: rgba(255, 255, 255, .88);--surface-hover: #ffffff;--line: rgba(19, 78, 74, .11);--border: var(--line);--text: #08221f;--text-secondary: #55716d;--text-tertiary: #7e9692;--muted: #55716d;--accent: #0d9488;--accent-rgb: 13, 148, 136;--accent-text: #ffffff;--primary: #0d9488;--primary-dim: rgba(13, 148, 136, .1);--primary-border: rgba(13, 148, 136, .2);--primary-text: #ffffff;--streak: #f97316;--streak-dim: rgba(249, 115, 22, .12);--danger: #be2c2b;--danger-rgb: 190, 44, 43;--ok: #1e8a47;--ok-rgb: 30, 138, 71;--warn: #a16e19;--missed: #c43c3a;--challenge-default-color: var(--primary);--shell-bg: radial-gradient(circle at 14% 8%, rgba(18, 179, 167, .12), transparent 24%), radial-gradient(circle at 88% 10%, rgba(249, 115, 22, .12), transparent 18%), linear-gradient(180deg, #fbfffe 0%, #eef9f7 100%);--shell-panel-overlay: linear-gradient(180deg, rgba(255, 255, 255, .08), transparent 18%);--shadow-soft: 0 18px 48px rgba(8, 34, 31, .06);--shadow-card: 0 18px 36px rgba(8, 34, 31, .08);--shadow-elevated: 0 28px 64px rgba(8, 34, 31, .12)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-main);color:var(--text);background:var(--shell-bg);line-height:1.5}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:.5rem}button:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}h1,h2,h3,h4,p{margin:0}button,input,select{font:inherit}.ghost-btn,.danger-btn,button{border:1px solid var(--line);background:var(--card-soft);color:var(--text);border-radius:.95rem;padding:.72rem .92rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;line-height:1.15;transition:transform .16s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}button{border-color:transparent;background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));color:var(--primary-text);font-weight:600;box-shadow:0 16px 34px color-mix(in oklab,var(--primary) 18%,transparent)}button:hover:not(:disabled),.ghost-btn:hover:not(:disabled),.danger-btn:hover:not(:disabled){transform:translateY(-1px)}button:focus-visible,.ghost-btn:focus-visible,.danger-btn:focus-visible{outline:2px solid color-mix(in oklab,var(--primary) 58%,white);outline-offset:2px}.ghost-btn{border-color:var(--line);background:color-mix(in oklab,var(--card-soft) 90%,transparent);box-shadow:none}.ghost-btn:hover:not(:disabled){border-color:color-mix(in oklab,var(--primary) 22%,var(--line));background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 10%,transparent),transparent),color-mix(in oklab,var(--card-soft) 92%,transparent);box-shadow:var(--shadow-soft)}button:disabled{opacity:.55;cursor:default;box-shadow:none}.danger-btn{border-color:#be2c2b73;color:var(--danger)}.banner{margin:.4rem 1rem .2rem;padding:.8rem .95rem;border-radius:1rem;border:1px solid var(--line);background:color-mix(in oklab,var(--card) 96%,transparent);box-shadow:var(--shadow-soft);display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.banner.warning{border-color:#f1ba6d59;color:var(--warn)}.banner.success{border-color:#7bcf936b;color:var(--ok)}.screen-wrapper{display:none}.screen-wrapper.active{display:block;min-width:0;animation:screen-tab-enter .2s ease-out both}.screen{display:grid;gap:.95rem;min-width:0}.panel{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.02),transparent),var(--card);border-radius:1.35rem;padding:1rem;display:grid;gap:.8rem;min-width:0;box-shadow:var(--shadow-card)}.empty{text-align:center;color:var(--muted)}.stack{display:grid;gap:.65rem;min-width:0}.templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.5rem}.template-btn{border:1px solid var(--line);background:var(--card-soft);color:var(--text);border-radius:.75rem;padding:.55rem .65rem;text-align:left;display:grid;gap:.2rem}.template-btn:hover:not(:disabled){border-color:color-mix(in oklab,var(--primary) 20%,var(--line));background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 10%,transparent),transparent),color-mix(in oklab,var(--card-soft) 94%,transparent);box-shadow:var(--shadow-soft)}.template-btn strong{font-size:.95rem;line-height:1.2}.screen-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.screen-header-row--top{align-items:flex-start}.screen-header-row h2{font-family:var(--font-display);font-size:1.35rem;line-height:1.08;letter-spacing:-.02em}.screen-header-copy{display:grid;gap:.28rem}.panel-kicker{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.settings-grid{display:grid;gap:.6rem}.section-intro{display:grid;gap:.28rem}.section-note{margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}.section-feedback{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}.section-block{display:grid;gap:.45rem;margin-top:.75rem}.section-summary{margin:0;padding:.82rem .95rem;border-radius:.95rem;border:1px solid var(--line);background:color-mix(in oklab,var(--card-soft) 92%,transparent);color:var(--muted);line-height:1.5}.panel-status{justify-items:center;text-align:center;padding:1.35rem 1rem;color:var(--muted)}.panel-status strong{color:var(--text);font-size:.98rem}.panel-status--loading{background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 5%,transparent),transparent),color-mix(in oklab,var(--card) 96%,transparent)}.kpi-grid-spaced{margin-top:.75rem}.kpi-card-emphasis{margin-top:.5rem}.settings-inline{display:grid;gap:.5rem}.support-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}@media (min-width: 640px){.settings-inline{grid-template-columns:1fr auto;align-items:end}}.switch-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.switch-row input[type=checkbox]{inline-size:1.1rem;block-size:1.1rem;accent-color:var(--primary)}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.toggle-switch{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--line);border-radius:999px;cursor:pointer;transition:background .2s}.toggle-slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.pill{border:1px solid var(--line);padding:.34rem .7rem;border-radius:999px;color:var(--muted);background:color-mix(in oklab,var(--card-soft) 88%,transparent);font-size:.74rem;font-weight:700;letter-spacing:.04em}.muted{color:var(--muted)}.donation-history-list{display:grid;gap:.45rem}.donation-history-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;border:1px solid var(--line);border-radius:1rem;padding:.75rem .8rem;background:color-mix(in oklab,var(--card-soft) 92%,transparent);box-shadow:var(--shadow-card)}.donation-history-main{display:grid;gap:.1rem}.donation-history-main strong{font-size:.96rem}.legal-links{display:grid;gap:.45rem}button.legal-link-btn{border:1px solid var(--line);background:color-mix(in oklab,var(--card-soft) 92%,transparent);color:var(--text);display:flex;align-items:center;justify-content:space-between;text-align:left;padding:.85rem .95rem;border-radius:1rem;box-shadow:var(--shadow-soft)}button.legal-link-btn:hover:not(:disabled){border-color:color-mix(in oklab,var(--primary) 20%,var(--line));background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 9%,transparent),transparent),color-mix(in oklab,var(--card-soft) 94%,transparent)}.progress-bar{width:100%;height:.72rem;border-radius:999px;background:color-mix(in oklab,var(--line) 82%,transparent);overflow:hidden}.progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in oklab,var(--primary) 72%,white),var(--primary));transition:width .5s cubic-bezier(.4,0,.2,1)}label{display:grid;gap:.42rem;color:var(--muted);font-size:.9rem}.panel>h2,.panel>h3,.screen-header-row h3{line-height:1.15;letter-spacing:-.01em}input,select{width:100%;border:1px solid var(--line);border-radius:.95rem;padding:.72rem .8rem;background:color-mix(in oklab,var(--card-soft) 92%,transparent);color:var(--text);box-shadow:inset 0 1px #ffffff0a}input:hover,select:hover{border-color:color-mix(in oklab,var(--primary) 18%,var(--line))}.challenge-card-actions>button,.support-actions>button{min-height:2.5rem}.kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.kpi-card{border:1px solid var(--line);border-radius:1.05rem;padding:.85rem;background:color-mix(in oklab,var(--card-soft) 90%,transparent);box-shadow:var(--shadow-card)}.kpi-card p{color:var(--muted)}.kpi-card strong{display:block;margin-top:.2rem;font-size:1.65rem}.kpi-breakdown-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.kpi-breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.45rem .6rem;background:var(--card-soft);border:1px solid var(--line);border-radius:.6rem;font-size:.88rem}.kpi-breakdown-item strong{font-size:.95rem}.kpi-breakdown-item .muted{margin-left:.4rem}.week-row{border:1px solid var(--line);border-radius:1rem;padding:.7rem;background:color-mix(in oklab,var(--card-soft) 90%,transparent);display:grid;gap:.4rem}.week-row-title{display:grid;gap:.15rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0612109e;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:modal-fade-in .18s ease-out both}.modal-content{width:min(740px,100%);max-height:min(90dvh,900px);overflow:auto;border-radius:1.35rem;border:1px solid var(--line);background:radial-gradient(circle at top right,color-mix(in oklab,var(--primary) 8%,transparent),transparent 24%),color-mix(in oklab,var(--bg) 90%,var(--card));padding:1rem;box-shadow:var(--shadow-elevated);animation:modal-pop-in .22s ease-out both}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;position:sticky;top:0;z-index:1;padding-bottom:.7rem;background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,transparent),color-mix(in oklab,var(--card) 88%,transparent));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.modal-header h3{font-family:var(--font-display);font-size:1.1rem;line-height:1.1;letter-spacing:-.02em}.modal-body{display:grid;gap:.85rem}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.grid-2{display:grid;grid-template-columns:1fr;gap:.6rem}.weekdays-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.day-chip{border:1px solid var(--line);border-radius:.55rem;background:var(--card-soft);color:var(--muted);padding:.35rem .3rem}.day-chip.active{background:var(--primary);color:var(--primary-text)}@media (min-width: 760px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 640px){html{font-size:15px}input,select,textarea{font-size:16px}.bn-label{display:block;font-size:.6rem}.bn-icon{font-size:1rem}}@media (max-width: 480px){.topbar{margin:.5rem .6rem 0;padding:.6rem .7rem}.topbar__title{font-size:1rem}.panel{padding:.75rem}.habit-check{width:2.45rem;height:2.45rem;font-size:1.15rem}.bn-label{display:block;font-size:.58rem}.bn-icon{font-size:.95rem}}@media (max-width: 360px){html{font-size:14px}.topbar__title{font-size:.98rem}}@media (min-width: 361px) and (max-width: 760px){.ach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root,[data-theme=light]{--bg: #eef9f7;--card: rgba(255, 255, 255, .92);--card-soft: #f7fffd;--line: rgba(19, 78, 74, .11);--text: #08221f;--muted: #55716d;--primary: #0d9488;--primary-soft: rgba(13, 148, 136, .1);--primary-border: rgba(13, 148, 136, .28);--primary-text: #ffffff;--streak: #f97316;--streak-soft: rgba(249, 115, 22, .12);--ok: #1e8a47;--ok-soft: rgba(30, 138, 71, .12);--warn: #a16e19;--danger: #be2c2b;--danger-soft: rgba(190, 44, 43, .1);--shell-bg: radial-gradient(circle at 14% 8%, rgba(18, 179, 167, .14), transparent 26%), radial-gradient(circle at 88% 12%, rgba(249, 115, 22, .12), transparent 22%), linear-gradient(180deg, #fbfffe 0%, #eef9f7 100%);--shadow-soft: 0 14px 40px rgba(8, 34, 31, .06);--shadow-card: 0 16px 32px rgba(8, 34, 31, .07);--font-main: "Onest Variable", "Onest", system-ui, sans-serif;--font-display: "Unbounded Variable", "Unbounded", "Avenir Next", sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--radius-sm: .55rem;--radius: .95rem;--radius-lg: 1.2rem;--radius-pill: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--kb-h: 0px}[data-theme=dark]{--bg: #071512;--card: rgba(255, 255, 255, .05);--card-soft: rgba(255, 255, 255, .06);--line: rgba(255, 255, 255, .09);--text: #eefcf9;--muted: #90ada8;--primary: #12b3a7;--primary-soft: rgba(18, 179, 167, .18);--primary-border: rgba(97, 229, 217, .3);--primary-text: #ffffff;--streak: #fb7f38;--streak-soft: rgba(249, 115, 22, .18);--ok: #7fd8ab;--ok-soft: rgba(123, 207, 147, .16);--warn: #f4c16d;--danger: #dd5f5b;--danger-soft: rgba(221, 95, 91, .16);--shell-bg: radial-gradient(circle at 16% 8%, rgba(18, 179, 167, .16), transparent 26%), radial-gradient(circle at 84% 10%, rgba(249, 115, 22, .1), transparent 18%), linear-gradient(180deg, #091c19 0%, #071512 100%);--shadow-soft: 0 18px 48px rgba(0, 0, 0, .3);--shadow-card: 0 20px 44px rgba(0, 0, 0, .22)}body{margin:0;font-family:var(--font-main);background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}.app{min-height:100vh;height:100dvh;background:var(--shell-bg);color:var(--text);font-family:var(--font-main);display:flex;flex-direction:column;overflow:hidden}.app-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.6rem .85rem 1.2rem;display:grid;gap:.7rem;align-content:start}.app-scroll::-webkit-scrollbar{width:0}.app-scroll{scrollbar-width:none}.topbar{flex-shrink:0;margin:.6rem .7rem 0;padding:.7rem .8rem;display:flex;align-items:center;gap:.6rem;border:1px solid var(--line);border-radius:1.1rem;background:color-mix(in oklab,var(--card) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-soft)}.topbar__logo{width:2rem;height:2rem;border-radius:.6rem;background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 65%,white));display:grid;place-items:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0;box-shadow:0 6px 14px color-mix(in oklab,var(--primary) 28%,transparent)}.topbar__logo svg{width:60%;height:60%}.topbar__title{flex:1;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:-.01em;min-width:0}.topbar__sub{display:block;font-family:var(--font-main);font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);line-height:1;margin-bottom:.18rem}.topbar__icon{width:2.1rem;height:2.1rem;border-radius:.7rem;border:1px solid var(--line);background:var(--card-soft);color:var(--muted);display:grid;place-items:center;font-size:1.1rem;cursor:pointer;flex-shrink:0}.bottomnav{flex-shrink:0;margin:0 .5rem calc(1.6rem + env(safe-area-inset-bottom,0px));padding:.32rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.22rem;border:1px solid var(--line);border-radius:1.05rem;background:color-mix(in oklab,var(--card) 96%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);z-index:10}.bn-item{display:grid;justify-items:center;align-content:center;gap:.18rem;padding:.6rem .2rem;border-radius:.75rem;color:var(--muted);cursor:pointer;background:transparent;border:none;font-family:inherit;min-height:48px;box-sizing:border-box}.bn-item.active{color:var(--primary-text);background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));box-shadow:0 10px 22px color-mix(in oklab,var(--primary) 22%,transparent)}.bn-icon{font-size:1.1rem;line-height:1;display:grid;place-items:center}.bn-label{font-size:.6rem;font-weight:700;letter-spacing:.04em}.panel{border:1px solid var(--line);background:var(--card);border-radius:1.2rem;padding:.85rem;display:grid;gap:.55rem;box-shadow:var(--shadow-card)}.panel-hero{background:radial-gradient(circle at top right,var(--streak-soft),transparent 28%),linear-gradient(160deg,var(--primary-soft) 0%,var(--card) 70%)}.panel h2{font-family:var(--font-display);font-size:1.4rem;letter-spacing:-.02em;margin:0;line-height:1.05}.panel h3{font-family:var(--font-display);font-size:1.05rem;letter-spacing:-.01em;margin:0}.panel-kicker{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.muted{color:var(--muted);font-size:.85rem}.tiny{font-size:.74rem;color:var(--muted)}.habit-card{border:1px solid var(--line);border-radius:1.1rem;padding:.7rem;background:var(--card);display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;box-shadow:var(--shadow-card)}.habit-card.done{border-color:var(--primary-border)}.habit-card.with-challenge{border-left:3px solid var(--streak)}.habit-check{width:2.6rem;height:2.6rem;min-width:44px;min-height:44px;border-radius:.95rem;border:2px solid var(--line);background:var(--card-soft);display:grid;place-items:center;font-size:1.1rem;color:var(--muted);flex-shrink:0;cursor:pointer}.habit-check.done{background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));border-color:transparent;color:#fff;box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 28%,transparent)}.habit-body{min-width:0;display:grid;gap:.18rem}.habit-title-row{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.habit-title{font-size:.98rem;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.time-chip{font-size:.66rem;font-weight:700;letter-spacing:.04em;font-family:var(--font-mono);color:var(--muted);border:1px solid var(--line);padding:.18rem .45rem;border-radius:999px;background:var(--card-soft)}.habit-meta{font-size:.78rem;color:var(--muted)}.streak-mini{display:inline-flex;align-items:center;gap:.18rem;font-size:.74rem;font-weight:700;color:var(--streak);padding:.18rem .5rem;border-radius:999px;background:var(--streak-soft);border:1px solid color-mix(in oklab,var(--streak) 24%,transparent)}.bar{height:.5rem;border-radius:999px;background:color-mix(in oklab,var(--line) 90%,transparent);overflow:hidden;margin-top:.3rem}.bar>span{display:block;height:100%;background:linear-gradient(90deg,color-mix(in oklab,var(--primary) 70%,white),var(--primary));border-radius:inherit;transition:width .32s cubic-bezier(.34,1.56,.64,1)}.btn{font-family:inherit;border:none;border-radius:.85rem;padding:.7rem .95rem;font-weight:600;font-size:.92rem;cursor:pointer;background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));color:var(--primary-text);box-shadow:0 12px 24px color-mix(in oklab,var(--primary) 22%,transparent);transition:transform .12s ease}.btn:active{transform:scale(.97)}.btn-ghost{background:var(--card-soft);color:var(--text);border:1px solid var(--line);box-shadow:none}.btn-block{width:100%}.btn-row{display:flex;gap:.4rem}.btn-row>.btn{flex:1}.segmented{display:flex;gap:.25rem;border:1px solid var(--line);background:var(--card-soft);border-radius:.85rem;padding:.22rem}.seg{flex:1;font-family:inherit;font-size:.78rem;font-weight:600;border:none;background:transparent;color:var(--muted);padding:.45rem .5rem;border-radius:.65rem;cursor:pointer}.seg.active{background:var(--card);color:var(--text);box-shadow:var(--shadow-soft)}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem}.stat-tile{border:1px solid var(--line);background:var(--card-soft);border-radius:.95rem;padding:.65rem .7rem;display:grid;gap:.1rem}.stat-tile .v{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;line-height:1}.stat-tile .k{font-size:.7rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.cal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem}.cal-day{aspect-ratio:1;border-radius:.7rem;border:1px solid var(--line);background:var(--card-soft);display:grid;place-items:center;font-size:.78rem;font-weight:600;color:var(--muted);position:relative}.cal-day .dow{position:absolute;top:4px;left:0;right:0;font-size:.55rem;text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);opacity:.7}.cal-day .num{margin-top:.55rem}.cal-day.done{background:var(--ok-soft);border-color:color-mix(in oklab,var(--ok) 40%,transparent);color:var(--ok)}.cal-day.partial{background:#f1ba6d2e;border-color:#f1ba6d8c;color:var(--warn)}.cal-day.missed{background:var(--danger-soft);border-color:color-mix(in oklab,var(--danger) 35%,transparent);color:var(--danger)}.cal-day.today{outline:2px solid var(--primary);outline-offset:2px;color:var(--text)}.ach-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem}.ach-card{border:1px solid var(--line);background:var(--card-soft);border-radius:.95rem;padding:.7rem;display:grid;gap:.4rem;position:relative}.ach-card.unlocked{border-color:color-mix(in oklab,var(--ok) 50%,transparent);background:linear-gradient(160deg,var(--ok-soft),var(--card-soft))}.ach-medal{width:2.2rem;height:2.2rem;border-radius:.7rem;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;font-size:1.1rem}.ach-card.unlocked .ach-medal{background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));color:#fff;border:none}.ach-card .name{font-size:.85rem;font-weight:600;line-height:1.2}.chl-card{border:1px solid var(--line);background:var(--card);border-radius:1.1rem;padding:.8rem;display:grid;gap:.6rem;box-shadow:var(--shadow-card)}.chl-head{display:flex;gap:.6rem;align-items:center}.chl-emoji{width:2.6rem;height:2.6rem;border-radius:.85rem;display:grid;place-items:center;font-size:1.4rem;flex-shrink:0}.chl-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.1}.chl-stats{display:flex;gap:.45rem;flex-wrap:wrap}.chl-pill{font-size:.72rem;font-weight:600;color:var(--muted);border:1px solid var(--line);background:var(--card-soft);padding:.22rem .55rem;border-radius:999px}.onb{display:flex;flex-direction:column;height:100%;padding:1rem .9rem calc(2.4rem + env(safe-area-inset-bottom,0px));gap:.85rem;overflow-y:auto}.onb-progress{display:flex;gap:.3rem;margin-bottom:.4rem}.onb-progress span{flex:1;height:3px;border-radius:999px;background:var(--line)}.onb-progress span.active{background:var(--primary)}.onb-progress span.done{background:color-mix(in oklab,var(--primary) 60%,white)}.onb-icon{width:4rem;height:4rem;border-radius:1.4rem;background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 70%,white));display:grid;place-items:center;color:#fff;font-size:2rem;margin-top:.5rem;box-shadow:0 16px 36px color-mix(in oklab,var(--primary) 28%,transparent)}.onb h1{font-family:var(--font-display);font-size:1.7rem;letter-spacing:-.02em;line-height:1.1;margin:0}.choice-list{display:grid;gap:.5rem}.choice{border:1px solid var(--line);background:var(--card);border-radius:.95rem;padding:.85rem .9rem;display:flex;align-items:center;gap:.6rem;cursor:pointer;font-family:inherit;font-size:.95rem;color:var(--text);text-align:left;width:100%;min-height:44px}.choice.active{border-color:var(--primary);background:linear-gradient(145deg,var(--primary-soft),transparent),var(--card);box-shadow:0 8px 22px color-mix(in oklab,var(--primary) 14%,transparent)}.choice .check{margin-left:auto;width:1.3rem;height:1.3rem;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:#fff;flex-shrink:0}.choice.active .check{background:var(--primary);border-color:var(--primary)}.choice-emoji{font-size:1.5rem;width:2.2rem;text-align:center;flex-shrink:0}.sheet{background:var(--card);border-top-left-radius:1.4rem;border-top-right-radius:1.4rem;border-top:1px solid var(--line);padding:.7rem .85rem calc(2.2rem + env(safe-area-inset-bottom,0px));display:grid;gap:.7rem;position:absolute;inset:auto 0 0 0;box-shadow:0 -20px 40px #0000002e;max-height:90dvh;overflow-y:auto}.sheet-grabber{width:36px;height:4px;background:var(--line);border-radius:999px;margin:0 auto}.field{display:grid;gap:.32rem}.field label{font-size:.74rem;font-weight:600;color:var(--muted);letter-spacing:.02em}.field input,.field select{border:1px solid var(--line);border-radius:.75rem;padding:.7rem .8rem;background:var(--card-soft);color:var(--text);font:inherit;width:100%;box-sizing:border-box}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.weekday{border:1px solid var(--line);border-radius:.55rem;background:var(--card-soft);color:var(--muted);padding:.45rem 0;text-align:center;font-size:.75rem;font-weight:600;cursor:pointer;min-height:44px}.weekday.active{background:var(--primary);color:#fff;border-color:var(--primary)}.push{background:var(--card);border:1px solid var(--line);border-radius:1.1rem;padding:.7rem .8rem;display:grid;grid-template-columns:auto 1fr auto;gap:.55rem;align-items:start;box-shadow:var(--shadow-card)}.push__app{width:2.1rem;height:2.1rem;border-radius:.55rem;background:linear-gradient(145deg,var(--primary),color-mix(in oklab,var(--primary) 65%,white));display:grid;place-items:center;color:#fff;font-weight:700;font-size:.78rem}.push__title{font-size:.82rem;font-weight:700}.push__body{font-size:.8rem;color:var(--muted);line-height:1.3}.push__time{font-size:.68rem;color:var(--muted);white-space:nowrap}.push__actions{grid-column:1 / -1;display:flex;gap:.4rem;margin-top:.3rem}.push__action{flex:1;font-family:inherit;border:1px solid var(--line);background:var(--card-soft);border-radius:.6rem;padding:.45rem;font-size:.78rem;font-weight:600;color:var(--text);cursor:pointer;min-height:44px}.push__action.primary{background:var(--primary);color:#fff;border-color:transparent}.coach-hero{background:radial-gradient(circle at top right,rgba(249,115,22,.18),transparent 30%),linear-gradient(160deg,color-mix(in oklab,var(--primary) 18%,transparent),var(--card) 70%);border:1px solid var(--primary-border);border-radius:1.2rem;padding:.9rem;display:grid;gap:.6rem;box-shadow:var(--shadow-card)}.coach-spark{width:2.4rem;height:2.4rem;border-radius:.8rem;background:linear-gradient(145deg,var(--primary),var(--streak));display:grid;place-items:center;font-size:1.2rem;color:#fff}.coach-bullet{display:grid;grid-template-columns:auto 1fr;gap:.55rem;align-items:start;font-size:.85rem;line-height:1.35}.coach-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--primary);margin-top:.42rem}.habit-stepper{display:flex;gap:.3rem;margin-top:.35rem;align-items:center}.habit-stepper__btn{width:1.9rem;height:1.9rem;min-width:1.9rem;min-height:1.9rem;border-radius:.6rem;border:1px solid var(--line);background:var(--card-soft);color:var(--muted);display:grid;place-items:center;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;flex-shrink:0;transition:transform .12s ease}.habit-stepper__btn:active:not(:disabled){transform:scale(.94)}.habit-stepper__btn:disabled{opacity:.45;cursor:not-allowed}.habit-stepper__btn--primary{background:var(--primary);color:#fff;border-color:transparent;box-shadow:0 6px 14px color-mix(in oklab,var(--primary) 22%,transparent)}.habit-stepper__hint{flex:1;text-align:center;font-size:.78rem;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-numeric-inline{display:grid;grid-template-columns:1fr auto auto;gap:.35rem;margin-top:-.25rem;margin-bottom:.4rem;padding:.55rem .7rem;border:1px solid var(--primary-border);border-radius:.95rem;background:linear-gradient(160deg,var(--primary-soft),var(--card));align-items:center}.habit-numeric-inline input{border:1px solid var(--line);border-radius:.6rem;padding:.55rem .7rem;background:var(--card-soft);color:var(--text);font:inherit;width:100%;box-sizing:border-box;-moz-appearance:textfield}.habit-numeric-inline input::-webkit-outer-spin-button,.habit-numeric-inline input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.habit-numeric-inline .btn{padding:.55rem .7rem;font-size:.85rem}.numeric-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#08221f73;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:80;animation:numeric-backdrop-in .18s ease-out both}@keyframes numeric-backdrop-in{0%{opacity:0}to{opacity:1}}[data-theme=dark] .numeric-backdrop{background:#0009}.numeric-sheet{position:fixed;left:0;right:0;bottom:var(--kb-h);inset-block-end:var(--kb-h);z-index:90;transition:bottom .18s ease;animation:numeric-sheet-in .22s cubic-bezier(.34,1.56,.64,1) both;padding-bottom:calc(env(safe-area-inset-bottom,0px) + .85rem)}@keyframes numeric-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.numeric-sheet__header{display:grid;gap:.25rem;padding:.4rem .2rem .6rem}.numeric-sheet__title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin:0;line-height:1}.numeric-sheet__target{font-family:var(--font-main);font-size:.9rem;font-weight:500;color:var(--muted);margin-left:.4rem}.numeric-sheet input{font-family:var(--font-display);font-size:1.5rem;font-weight:600;text-align:center;letter-spacing:-.01em}.sticky-actions{display:flex;gap:.4rem;margin:.5rem -.85rem 0;padding:.7rem 1rem;background:var(--card);border-top:1px solid var(--line);box-shadow:0 -8px 24px #0000000f}[data-kb-open="1"] .panel-hero{display:none}@keyframes spring-pop{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.spring-pop{animation:spring-pop .28s cubic-bezier(.34,1.56,.64,1)}.habit-challenge-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem .15rem .3rem;border-radius:999px;max-width:100%;margin-top:.25rem;border:1.5px solid var(--primary-border);background:transparent}.habit-challenge-pill-emoji{font-size:.8rem;line-height:1;flex-shrink:0}.habit-challenge-pill-icon{width:1rem;height:1rem;border-radius:.2rem;object-fit:cover;flex-shrink:0}.habit-challenge-pill-title{font-size:.7rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:12rem}.challenge-like-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border:1px solid var(--line);border-radius:999px;background:color-mix(in oklab,var(--card-soft) 88%,transparent);font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,transform .15s ease;color:var(--muted)}.challenge-like-btn:hover:not(:disabled){background:color-mix(in oklab,var(--primary) 8%,transparent);border-color:var(--primary-border);transform:translateY(-1px)}.challenge-like-btn-active{border-color:var(--danger);color:var(--danger);background:rgba(var(--danger-rgb),.08)}.challenge-like-btn:disabled{opacity:.6;cursor:default}.challenge-emoji-bubble{width:2.4rem;height:2.4rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;line-height:1}.challenge-form-icon-row{display:flex;align-items:flex-start;gap:.75rem}.challenge-emoji-preview{width:3.2rem;height:3.2rem;border-radius:.6rem;display:flex;align-items:center;justify-content:center;font-size:1.6rem;flex-shrink:0;line-height:1;transition:background-color .15s ease}.challenge-form-icon-controls{display:flex;flex-direction:column;gap:.5rem;flex:1}.challenge-emoji-presets{display:flex;flex-wrap:wrap;gap:.3rem}.challenge-emoji-btn{width:2rem;height:2rem;border-radius:.35rem;border:1.5px solid transparent;background:var(--card-soft);font-size:1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;line-height:1;padding:0;transition:border-color .1s ease}.challenge-emoji-btn-active{border-color:var(--accent)}.challenge-color-swatches{display:flex;gap:.35rem;flex-wrap:wrap}.challenge-color-swatch{width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:border-color .1s ease,transform .1s ease}.challenge-color-swatch-active{border-color:var(--accent);transform:scale(1.15)}.my-challenge-item{display:flex;flex-direction:column;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.my-challenge-item:last-child{border-bottom:none}.my-challenge-main{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem;padding:.5rem 0}.my-challenge-info{display:flex;flex-direction:column;flex:1;min-width:200px;gap:.4rem}.my-challenge-title{font-weight:600;font-size:1rem;line-height:1.3;color:var(--text);word-break:break-word}.my-challenge-edit{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--card-soft);border-radius:.75rem;border:1px solid var(--line)}.my-challenge-moderation-details{display:grid;grid-template-columns:1fr;gap:1rem;padding:1.5rem;background:var(--card-soft);border-radius:.75rem;border:1px solid var(--line)}@media (min-width: 640px){.my-challenge-moderation-details{grid-template-columns:1fr 1fr}}.moderation-field{display:flex;flex-direction:column;gap:.5rem;line-height:1.4}.moderation-label{font-weight:600;font-size:.95rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.moderation-tasks-list{margin:0;padding-left:1.5rem;list-style:disc;font-size:.95rem}.moderation-tasks-list li{margin:.4rem 0;color:var(--text);line-height:1.4}.moderation-settings-row{display:flex;flex-wrap:wrap;gap:.6rem;grid-column:1 / -1}.moderation-tag{font-size:.9rem;padding:.5rem .75rem;background:var(--primary-dim);border:1px solid var(--primary-border);border-radius:.5rem;white-space:nowrap;color:var(--text);font-weight:500}.moderation-images-row{display:flex;flex-wrap:wrap;gap:1rem;grid-column:1 / -1}.moderation-image-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.moderation-image-preview{width:80px;height:80px;border-radius:.75rem;border:2px solid var(--line);object-fit:cover;background:var(--card)}.challenge-pill-pending{background:#feca57;color:#2c2416;font-weight:600;padding:.4rem .8rem;border-radius:.5rem;font-size:.85rem;white-space:nowrap}.challenge-card-icon{width:2.4rem;height:2.4rem;border-radius:.5rem;object-fit:cover;flex-shrink:0}.challenge-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;text-align:left;padding:.88rem 1rem;border-radius:1.1rem;font-size:.86rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:opacity .15s,transform .15s ease;line-height:1.4;color:var(--text)}.challenge-banner-copy{display:grid;gap:.22rem;min-width:0}.challenge-banner-title{font-weight:700;line-height:1.35}.challenge-banner-meta{color:var(--muted);font-size:.78rem;line-height:1.35}.challenge-banner-active .challenge-banner-meta{color:color-mix(in oklab,var(--text) 78%,var(--muted))}.challenge-banner-pill{flex-shrink:0;padding:.42rem .68rem;border-radius:999px;border:1px solid var(--primary-border);background:color-mix(in oklab,var(--primary) 10%,transparent);color:var(--primary);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.challenge-banner:active{opacity:.8;transform:scale(.99)}.challenge-banner-active{background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 10%,transparent),transparent),color-mix(in oklab,var(--card) 96%,transparent);border-color:var(--primary-border);color:var(--text);box-shadow:var(--shadow-card)}.challenge-banner-eliminated{background:rgba(var(--danger-rgb),.1);border-color:rgba(var(--danger-rgb),.28);color:var(--danger)}.challenge-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-radius:1.25rem;border:1px solid var(--line);background:color-mix(in oklab,var(--card) 96%,transparent);box-shadow:var(--shadow-card);transition:transform .16s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.challenge-card:hover{transform:translateY(-1px);border-color:color-mix(in oklab,var(--primary) 18%,var(--line));box-shadow:0 20px 38px #051c1914}.challenge-card-active{border-color:var(--primary-border);background:linear-gradient(160deg,color-mix(in oklab,var(--primary) 12%,transparent) 0%,transparent 42%),color-mix(in oklab,var(--card) 96%,transparent)}.challenge-card-eliminated{border-color:rgba(var(--danger-rgb),.35);opacity:.85}.challenge-card-completed{border-color:rgba(var(--ok-rgb),.35);background:linear-gradient(160deg,rgba(var(--ok-rgb),.08) 0%,transparent 42%),color-mix(in oklab,var(--card) 96%,transparent)}.challenge-card-abandoned{opacity:.72}.challenge-card-header{display:flex;align-items:center;gap:.6rem;justify-content:space-between;flex-wrap:wrap}.challenge-card-header h4{flex:1;margin:0;font-size:1.02rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;min-width:0}.challenge-meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.84rem;color:var(--muted)}.challenge-streak{font-size:.88rem;color:var(--muted);margin:0}.challenge-tasks-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.challenge-task-item{display:flex;justify-content:space-between;align-items:center;font-size:.86rem;padding:.45rem 0;border-bottom:1px solid var(--line);gap:.5rem}.challenge-task-item:last-child{border-bottom:none}.challenge-card-actions{display:flex;flex-wrap:wrap;gap:.45rem;padding-top:.1rem;align-items:center}.challenge-pill-active{background:color-mix(in oklab,var(--primary) 12%,transparent);color:var(--primary);border-color:var(--primary-border)}.challenge-pill-eliminated{background:rgba(var(--danger-rgb),.1);color:var(--danger);border-color:rgba(var(--danger-rgb),.28)}.challenge-pill-completed{background:rgba(var(--ok-rgb),.1);color:var(--ok);border-color:rgba(var(--ok-rgb),.28)}.challenge-pill-abandoned{background:transparent;color:var(--muted);border-color:var(--line)}.challenge-no-skip-warning{display:flex;flex-direction:column;gap:.58rem;padding:.88rem .95rem;border-radius:.95rem;background:linear-gradient(145deg,rgba(var(--danger-rgb),.12),rgba(var(--danger-rgb),.05)),var(--card-soft);border:1px solid rgba(var(--danger-rgb),.26);box-shadow:var(--shadow-soft)}.warning-text{color:color-mix(in oklab,var(--danger) 92%,var(--text));font-size:.9rem;font-weight:600;line-height:1.45;margin:0}.challenge-confirm-checkbox{display:flex;align-items:flex-start;gap:.5rem;font-size:.88rem;cursor:pointer;line-height:1.4}.challenge-joined{font-weight:600;color:var(--ok);text-align:center;padding:.5rem 0}.challenge-reinstatement-block{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 0}.challenge-status-label{font-weight:600;color:var(--muted)}.moderation-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.moderation-rejection-form{display:flex;flex-direction:column;gap:.75rem;width:100%}.moderation-rejection-form textarea{width:100%;min-height:4rem;resize:vertical}.moderation-rejection-form select{width:100%}.challenge-habits-list{display:flex;flex-direction:column;gap:.6rem;max-height:14rem;overflow-y:auto;padding:.5rem 0;border:1px solid var(--line);border-radius:.6rem;padding:.75rem}.challenge-habit-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.challenge-habit-row:last-child{border-bottom:none}.challenge-habit-row label{display:flex;align-items:center;gap:.6rem;flex:1;cursor:pointer}.challenge-task-goal-input{width:100px;flex-shrink:0;padding:.5rem .75rem;border:1px solid var(--line);border-radius:.5rem;background:var(--card-soft);color:var(--text)}.leaderboard-table{width:100%;border-collapse:collapse;font-size:.88rem}.leaderboard-row td{padding:.45rem .4rem;border-bottom:1px solid var(--line);vertical-align:middle}.leaderboard-row:last-child td{border-bottom:none}.leaderboard-row-me{background:var(--primary-dim);border-radius:.4rem}.leaderboard-row-me td:first-child{border-radius:.4rem 0 0 .4rem}.leaderboard-row-me td:last-child{border-radius:0 .4rem .4rem 0}.leaderboard-rank{color:var(--muted);font-variant-numeric:tabular-nums;width:2rem;text-align:right;padding-right:.75rem!important}.leaderboard-name{flex:1;font-weight:500}.leaderboard-progress{text-align:right;font-variant-numeric:tabular-nums;color:var(--primary);font-weight:600;padding-right:.5rem!important}.leaderboard-me-badge{font-size:.75rem;color:var(--primary);font-weight:400;margin-left:.3rem}.leaderboard-reinstated-badge{font-size:.65rem;color:var(--warn);font-weight:500;margin-left:.25rem;opacity:.8}.reinstatement-btn{color:var(--primary)!important;border-color:var(--primary-border)!important;background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 12%,transparent),transparent),color-mix(in oklab,var(--card-soft) 96%,transparent)!important;box-shadow:none!important}.reinstatement-btn:hover{background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 18%,transparent),transparent),color-mix(in oklab,var(--card-soft) 96%,transparent)!important}.reinstatement-request-card{display:flex;flex-direction:column;gap:.55rem;padding:.95rem;border-radius:1rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.02),transparent),color-mix(in oklab,var(--card-soft) 92%,transparent);box-shadow:var(--shadow-soft)}.reinstatement-request-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.reinstatement-pill-pending{background:var(--warn)!important;color:#1a1a1a!important}.reinstatement-pill-approved{background:var(--ok)!important;color:#1a1a1a!important}.reinstatement-pill-declined{background:var(--danger)!important;color:#fff!important}.reinstatement-decline-reason{font-size:.85rem;color:var(--danger);font-style:italic}.reinstatement-resolve-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--line)}.reinstatement-approve-btn{color:var(--ok)!important;border-color:rgba(var(--ok-rgb),.3)!important}.reinstatement-decline-section{display:flex;flex-direction:column;gap:.4rem}.reinstatement-decline-section textarea{font-size:.85rem;padding:.5rem;border-radius:.5rem;border:1px solid var(--line);background:var(--card);color:var(--text);resize:vertical;min-height:2.5rem}.reinstatement-filter{display:flex;gap:.4rem}.pill-selected{background:var(--primary)!important;color:var(--primary-text)!important}.reinstatement-pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;border-radius:50%;background:var(--warn);color:#1a1a1a;font-size:.7rem;font-weight:700;margin-left:.35rem}.challenge-rules-section{padding:.95rem;border-radius:1rem;border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 6%,transparent),transparent),color-mix(in oklab,var(--card-soft) 94%,transparent)}.challenge-rules-section h4{margin:0 0 .5rem;font-size:.9rem}.challenge-rules-section p{margin:.25rem 0;font-size:.85rem;white-space:pre-wrap}.challenge-search-item{display:flex;flex-direction:column;gap:.42rem;width:100%;text-align:left;padding:.92rem;border-radius:1rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.02),transparent),color-mix(in oklab,var(--card-soft) 92%,transparent);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s ease;color:var(--text);font-size:.9rem;box-shadow:var(--shadow-soft)}.challenge-search-item:hover,.challenge-search-item:focus-visible{background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 12%,transparent),transparent),color-mix(in oklab,var(--card-soft) 94%,transparent);border-color:var(--primary-border);box-shadow:var(--shadow-card);transform:translateY(-1px)}.challenge-search-title{font-weight:700;font-size:.97rem;line-height:1.35}.challenge-search-meta{font-size:.78rem;color:var(--muted);line-height:1.45}.challenge-search-item .muted{line-height:1.45}.challenge-image-upload-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 640px){.challenge-image-upload-row{grid-template-columns:1fr}}.challenge-image-upload-item{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}.challenge-image-upload-item>span{font-weight:500;font-size:.95rem}.challenge-upload-preview{width:80px;height:80px;border-radius:.6rem;object-fit:cover;border:2px solid var(--line);background:var(--card-soft)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:.5rem;background:linear-gradient(90deg,var(--card-soft) 25%,color-mix(in oklab,var(--card-soft) 60%,var(--line)) 50%,var(--card-soft) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--card-soft)}}.skeleton-circle{border-radius:50%;flex-shrink:0}.skeleton-habit-card{border:1px solid var(--line);border-radius:1rem;padding:.75rem;background:var(--card);display:grid;gap:.6rem}.skeleton-habit-main{display:grid;grid-template-columns:2.8rem 1fr 2rem;gap:.65rem;align-items:center}@keyframes checkin-pop{0%{transform:scale(1)}35%{transform:scale(1.28)}60%{transform:scale(.93)}80%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes checkin-ring-expand{0%{box-shadow:0 0 0 0 var(--primary-border);opacity:1}to{box-shadow:0 0 0 14px transparent;opacity:0}}@keyframes card-checkin-flash{0%{background-color:var(--card)}30%{background-color:var(--primary-dim)}to{background-color:var(--card)}}.habit-check.celebrating{animation:checkin-pop .44s cubic-bezier(.34,1.56,.64,1) both;position:relative}.habit-check.celebrating:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;animation:checkin-ring-expand .52s ease-out both;pointer-events:none}.habit-card.celebrating{animation:card-checkin-flash .55s ease-out both}@media (prefers-reduced-motion: reduce){.habit-check.celebrating,.habit-check.celebrating:after,.habit-card.celebrating{animation:none}}@keyframes screen-tab-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.screen-wrapper.active{animation:none}}.image-upload-field{display:flex;flex-direction:column;gap:.4rem}.image-upload-label{font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.image-upload-row{display:flex;align-items:center;gap:.75rem}.image-upload-preview{width:52px;height:52px;border-radius:.5rem;border:2px dashed var(--border);background:var(--card-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;color:var(--text-tertiary);font-size:1.4rem}.image-upload-preview-filled{border-style:solid;border-color:var(--primary-border)}.image-upload-preview img{width:100%;height:100%;object-fit:cover}.image-upload-placeholder{font-size:1.6rem;color:var(--text-tertiary);line-height:1}.image-upload-controls{display:flex;flex-direction:column;gap:.3rem}.image-upload-hint{font-size:.78rem;margin:0;line-height:1.4}.image-upload-error{font-size:.82rem;color:var(--danger);margin:0}.danger-text{color:var(--danger)!important}.challenge-ach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.challenge-ach-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.7rem .5rem;background:var(--card-soft);border:1.5px solid var(--line);border-radius:1rem;cursor:pointer;text-align:center;transition:transform .15s,border-color .2s;-webkit-tap-highlight-color:transparent}.challenge-ach-card:active{transform:scale(.94)}.challenge-ach-card-unlocked{border-color:var(--primary-border);background:var(--primary-dim)}.challenge-ach-card-locked{opacity:.45;filter:grayscale(80%)}.challenge-ach-badge{width:52px;height:52px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dim));position:relative}.challenge-ach-badge img{width:100%;height:100%;object-fit:cover}.challenge-ach-badge-default{font-size:1.6rem;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.challenge-ach-card-unlocked .challenge-ach-badge{box-shadow:0 0 0 3px var(--primary-border)}.challenge-ach-title{font-size:.72rem;font-weight:600;line-height:1.3;margin:0;color:var(--text);word-break:break-word}.challenge-ach-meta{font-size:.66rem;margin:0;line-height:1.2}.achievement-detail{display:flex;flex-direction:column;align-items:center;gap:1rem;padding-bottom:.5rem}.achievement-detail-badge{width:110px;height:110px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-dim));box-shadow:0 6px 20px var(--primary-border);position:relative}.achievement-detail-badge img{width:100%;height:100%;object-fit:cover}.achievement-detail-badge-default{font-size:3.2rem;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.achievement-detail-alias-row{display:flex;flex-direction:column;align-items:center;gap:.15rem}.achievement-detail-alias{font-size:1rem;font-weight:700;color:var(--primary)}.achievement-detail-meta{width:100%;display:flex;flex-direction:column}.achievement-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;padding:.5rem 0;border-bottom:1px solid var(--line);gap:.5rem}.achievement-detail-row:last-child{border-bottom:none}.achievement-detail-row strong{text-align:right}.achievement-detail-unlocked-at{font-size:.82rem;margin:0}@keyframes reinforcement-slide-in{0%{transform:translateY(-1rem);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes reinforcement-slide-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(-1rem);opacity:0}}@keyframes milestone-badge-pulse{0%{transform:scale(.75) translateY(-.5rem);opacity:0}60%{transform:scale(1.1) translateY(0);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.reinforcement-toast{position:fixed;top:5.2rem;left:50%;transform:translate(-50%);z-index:200;width:min(460px,calc(100% - 2rem));padding:.85rem 1rem;border-radius:1.2rem;border:1px solid var(--primary-border);background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 8%,transparent),transparent),color-mix(in oklab,var(--card) 96%,transparent);box-shadow:var(--shadow-elevated);display:flex;align-items:center;gap:.6rem;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:reinforcement-slide-in .32s cubic-bezier(.34,1.56,.64,1) both}.reinforcement-toast--exit{animation:reinforcement-slide-out .3s ease-in both}.reinforcement-toast__body{flex:1;display:flex;flex-direction:column;gap:.2rem;min-width:0}.reinforcement-toast__text{font-size:.94rem;font-weight:600;color:var(--text);line-height:1.45}.reinforcement-toast__streak{display:inline-flex;align-items:center;gap:.3rem;font-size:.76rem;color:var(--streak);font-weight:700;background:var(--streak-dim);border-radius:999px;padding:.28rem .55rem}.reinforcement-toast__freeze{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;color:var(--muted);background:color-mix(in oklab,var(--card-soft) 92%,transparent);border-radius:999px;padding:.28rem .55rem}.reinforcement-toast__actions{display:flex;gap:.3rem;flex-shrink:0}.reinforcement-toast__btn{width:2.3rem;height:2.3rem;border-radius:.85rem;border:1px solid var(--line);background:color-mix(in oklab,var(--card-soft) 88%,transparent);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.reinforcement-toast__btn:hover:not(:disabled){background:var(--primary-dim);border-color:var(--primary-border);color:var(--primary)}.reinforcement-toast__btn--active{background:var(--primary-dim);border-color:var(--primary);color:var(--primary)}.reinforcement-toast__btn:disabled{cursor:default;opacity:.5}.fireworks{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10001;pointer-events:none;overflow:hidden}.fireworks__particle{position:absolute;border-radius:50%;opacity:0;animation:firework-burst 1.2s ease-out forwards;will-change:transform,opacity}@keyframes firework-burst{0%{transform:rotate(var(--fw-angle)) translateY(0) scale(0);opacity:0}10%{opacity:1;transform:rotate(var(--fw-angle)) translateY(0) scale(1.2)}30%{opacity:1;transform:rotate(var(--fw-angle)) translateY(calc(var(--fw-dist) * .4)) scale(1)}to{transform:rotate(var(--fw-angle)) translateY(var(--fw-dist)) scale(0);opacity:0}}.milestone-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#060709b8;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:reinforcement-slide-in .35s ease-out both}.milestone-overlay__card{width:min(380px,100%);border-radius:1.2rem;border:1.5px solid var(--primary-border);background:var(--card);padding:1.8rem 1.4rem 1.2rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}.milestone-overlay__icon{width:4.5rem;height:4.5rem;border-radius:50%;background:var(--primary-dim);border:2px solid var(--primary-border);display:flex;align-items:center;justify-content:center;color:var(--primary)}.milestone-overlay__title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--primary);margin:0}.milestone-overlay__badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .85rem;border-radius:999px;background:var(--streak-dim);color:var(--streak);font-size:.92rem;font-weight:700;animation:milestone-badge-pulse .5s cubic-bezier(.34,1.56,.64,1) both}.milestone-overlay__text{font-size:1rem;color:var(--text);line-height:1.4;margin:0}.milestone-overlay__streak{display:flex;align-items:center;gap:.35rem;font-size:.88rem;color:var(--streak);font-weight:600}.milestone-overlay__actions{display:flex;gap:.5rem;margin-top:.25rem}.milestone-overlay__close{margin-top:.5rem;padding:.5rem 2rem;border-radius:.75rem;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:.88rem;cursor:pointer;transition:background .15s}.milestone-overlay__close:hover{background:var(--card-soft)}@media (prefers-reduced-motion: reduce){.reinforcement-toast,.reinforcement-toast--exit,.milestone-overlay{animation:none}.fireworks{display:none}}.reinforcement-tone-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));gap:.4rem}.reinforcement-tone-chip{padding:.45rem .3rem;border-radius:.65rem;border:1.5px solid var(--line);background:var(--card-soft);color:var(--muted);font-size:.82rem;font-weight:500;text-align:center;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.reinforcement-tone-chip:hover{border-color:var(--primary-border)}.reinforcement-tone-chip.active{background:var(--primary-dim);border-color:var(--primary);color:var(--primary);font-weight:600}.coach-paywall,.coach-plan-card{background:var(--card);border:1px solid var(--primary-border);border-radius:16px;padding:16px;animation:coachFadeIn .25s ease-out}@keyframes coachFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.coach-paywall,.coach-plan-card{animation-duration:1ms}}.coach-paywall-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.coach-icon{color:var(--primary);flex-shrink:0}.coach-paywall-title{font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--text);margin:0}.coach-paywall-subtitle{font-size:14px;color:var(--muted);margin:0 0 12px}.coach-features-list{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:8px}.coach-features-list li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text)}.coach-check-icon{color:var(--ok);flex-shrink:0}.coach-cta-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:14px 20px;background:var(--primary);color:var(--primary-text);border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .15s}.coach-cta-btn:disabled{cursor:not-allowed}.coach-spinner{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.coach-error-text{color:var(--danger);font-size:13px;margin:8px 0 0;text-align:center}.coach-plan-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.coach-plan-header-left{display:flex;align-items:center;gap:8px}.coach-section-label{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--text)}.coach-badge-active{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok);font-size:11px;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:20px}.coach-onboarding-title{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--text);margin:0 0 4px}.coach-onboarding-subtitle{font-size:14px;color:var(--muted);margin:0 0 16px}.coach-skeleton{display:flex;flex-direction:column;gap:10px;min-height:180px;padding:8px 0}.coach-skeleton-line{height:14px;border-radius:6px;background:var(--card-soft);animation:pulse 1.5s ease-in-out infinite}.coach-skeleton-line.w-70{width:70%}.coach-skeleton-line.w-90{width:90%}.coach-skeleton-line.w-50{width:50%}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.coach-error-block{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 0}.coach-retry-btn{background:var(--card-soft);border:1px solid var(--line);color:var(--text);padding:8px 16px;border-radius:8px;font-size:14px;cursor:pointer}.coach-plan-title-text{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--text);margin:0}.coach-plan-separator{height:1px;background:var(--line);margin:10px 0}.coach-plan-text-wrapper{margin-bottom:12px}.coach-plan-text.collapsed{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.coach-plan-text.expanded{overflow:visible}.coach-plan-text p{font-size:14px;color:var(--text);line-height:1.5;margin:0}.coach-expand-btn{background:none;border:none;color:var(--primary);font-size:13px;font-weight:500;cursor:pointer;padding:2px 0}.coach-habits-section{margin-bottom:12px}.coach-habits-label{font-size:12px;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-weight:600}.coach-habits-scroll{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.coach-habits-scroll::-webkit-scrollbar{display:none}.coach-habit-pill{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;background:var(--primary-dim);border:1px solid var(--primary-border);border-radius:20px;padding:6px 14px;min-height:44px;font-size:14px;color:var(--text);cursor:pointer;white-space:nowrap}.coach-habits-empty{font-size:13px;color:var(--muted);margin:0}.coach-talk-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 16px;background:var(--card-soft);border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--text);cursor:pointer}.coach-talk-btn svg{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.coach-section-skeleton{min-height:180px;background:var(--card-soft);border-radius:16px;animation:pulse 1.5s ease-in-out infinite}.coach-weekly-card{background:var(--card);border:1px solid var(--primary-border);border-radius:16px;padding:16px;animation:coachFadeIn .25s ease-out}.coach-weekly-week-badge{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px}.coach-weekly-kpis{display:flex;gap:8px;margin-bottom:12px}.coach-weekly-kpi{flex:1;display:flex;flex-direction:column;align-items:center;background:var(--card-soft);border-radius:10px;padding:10px 6px;gap:2px}.coach-weekly-kpi-value{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text)}.coach-weekly-kpi-label{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:500}.coach-weekly-delta{font-size:11px;font-weight:600}.coach-weekly-delta.positive{color:var(--ok)}.coach-weekly-delta.negative{color:var(--danger)}.coach-weekly-summary-wrapper,.coach-weekly-section{margin-bottom:12px}.coach-weekly-section-label{font-size:12px;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-weight:600}.coach-weekly-highlights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.coach-weekly-highlights-list li{font-size:13px;color:var(--text);line-height:1.4}.coach-weekly-highlights-list li strong{font-weight:600}.coach-weekly-suggestions-list{display:flex;flex-direction:column;gap:8px}.coach-weekly-suggestion-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;color:var(--text);line-height:1.4}.coach-suggestion-chip{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:6px;flex-shrink:0}.coach-suggestion-chip--increase{background:color-mix(in srgb,#f59e0b 15%,transparent);color:#d97706}.coach-suggestion-chip--decrease{background:color-mix(in srgb,#eab308 15%,transparent);color:#ca8a04}.coach-suggestion-chip--add{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}.coach-suggestion-chip--remove{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger)}.coach-suggestion-chip--keep{background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.coach-suggestion-habit{font-weight:600}.coach-suggestion-reason{color:var(--muted)}
