:root{--bg:#faf7f2;--surface:#fff;--text:#2d2a26;--text-muted:#8a8378;--border:#e7e1d8;--accent:#d9713c;--accent-contrast:#fff;--danger:#c0392b;--radius:16px;--shadow:0 4px 16px #0000000f;--appbar-h:52px;--tabbar-h:56px;--radius-sm:12px;--radius-lg:20px;--hairline:#00000012;--bar-bg:#faf7f2d1;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--font-scale:1;font:16px/1.5 var(--sans);font-size:calc(16px * var(--font-scale));--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#1c1b19;--surface:#262420;--text:#eee9e1;--text-muted:#a89f8f;--border:#3a362f;--accent:#e08a57;--accent-contrast:#1c1b19;--danger:#e2867a;--shadow:0 4px 16px #0000004d;--hairline:#ffffff14;--bar-bg:#1c1b19d1}}:root[data-theme=dark]{--bg:#1c1b19;--surface:#262420;--text:#eee9e1;--text-muted:#a89f8f;--border:#3a362f;--accent:#e08a57;--accent-contrast:#1c1b19;--danger:#e2867a;--shadow:0 4px 16px #0000004d;--hairline:#ffffff14;--bar-bg:#1c1b19d1}:root[data-accent=blue]{--accent:#3182f6;--accent-contrast:#fff}:root[data-accent=mint]{--accent:#12b886;--accent-contrast:#fff}:root[data-accent=violet]{--accent:#7c5cfc;--accent-contrast:#fff}:root[data-accent=rose]{--accent:#ff5c8a;--accent-contrast:#fff}*{box-sizing:border-box}html{overscroll-behavior-y:none}body{background:var(--bg);overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;margin:0}button,label,h1,h2,h3,.badge,.tab-label,.item-text,.stat-label{-webkit-user-select:none;user-select:none}button{-webkit-touch-callout:none;transition:transform 80ms,opacity .12s,background-color .12s}button:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){button{transition:none}button:active{transform:none}}button,input,select,textarea{font:inherit;color:inherit}:root[data-font=small]{--font-scale:.88}:root[data-font=large]{--font-scale:1.15}:root[data-font=xlarge]{--font-scale:1.3}.app{max-width:560px;padding:16px max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));padding-top:calc(var(--appbar-h) + env(safe-area-inset-top) + 12px);padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 20px);margin:0 auto}.appbar{z-index:70;height:calc(var(--appbar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));background:var(--bar-bg);-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid #0000;align-items:center;gap:9px;transition:border-color .2s;display:flex;position:fixed;top:0;left:0;right:0}.appbar-inner{align-items:center;gap:9px;width:100%;max-width:560px;margin:0 auto;display:flex}.appbar.scrolled{border-bottom-color:var(--border)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.appbar{background:var(--bg)}}.title{font-size:calc(17px * var(--font-scale));letter-spacing:-.3px;margin:0;font-weight:700}.appbar-progress{font-size:calc(12px * var(--font-scale));color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);white-space:nowrap;opacity:0;pointer-events:none;border-radius:999px;margin-left:auto;padding:4px 10px;font-weight:700;transition:opacity .2s,transform .2s;transform:translateY(-4px)}.appbar-progress.shown{opacity:1;transform:translateY(0)}.logo{flex-shrink:0}.pull-hint{top:calc(var(--appbar-h) + env(safe-area-inset-top));z-index:60;background:var(--bg);height:40px;font-size:calc(13px * var(--font-scale));color:var(--text-muted);pointer-events:none;justify-content:center;align-items:center;font-weight:700;display:flex;position:fixed;left:0;right:0}.pull-hint.armed{color:var(--accent)}.settings-hint code{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.appbar-btn{width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:0;display:flex}.appbar-progress+.appbar-btn{margin-left:6px}.appbar-btn.active{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.logo-bg{fill:var(--accent)}.logo-beak-upper{fill:var(--accent-contrast)}.logo-beak-lower{fill:var(--accent-contrast);opacity:.65}.logo-nostril{fill:var(--accent)}.swatch-row{flex-wrap:wrap;gap:6px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;padding:0}.swatch-sm{width:18px;height:18px}.swatch.active{border-color:var(--text)}.new-deadline{align-items:center;gap:4px;display:inline-flex}.toggle{background:var(--border);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;justify-content:flex-start;width:48px;height:28px;padding:3px;display:flex}.toggle.on{background:var(--accent);justify-content:flex-end}.toggle-knob{background:var(--surface);border-radius:50%;width:22px;height:22px;box-shadow:0 1px 3px #00000040}.settings-sub{font-size:calc(12px * var(--font-scale));color:var(--text-muted);display:block}.item.celebrating{animation:.4s pop}.celebrate-pop{font-size:calc(22px * var(--font-scale));pointer-events:none;animation:1s ease-out forwards float-up;position:absolute;top:8px;left:44px}@keyframes pop{0%{transform:scale(1)}35%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes float-up{0%{opacity:0;transform:translateY(0)scale(.6)}25%{opacity:1;transform:translateY(-10px)scale(1.15)}to{opacity:0;transform:translateY(-38px)scale(1)}}@media (prefers-reduced-motion:reduce){.item.celebrating,.celebrate-pop{animation:none}.celebrate-pop{display:none}}.undo-banner,.update-banner{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 84px);z-index:90;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;width:calc(100% - 32px);max-width:420px;padding:12px 14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.update-banner{z-index:100}.undo-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:calc(14px * var(--font-scale));overflow:hidden}.update-actions{flex-shrink:0;gap:6px;display:flex}.pinned-panel{background:color-mix(in srgb, var(--accent) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:var(--radius);margin-bottom:14px;padding:14px}.pinned-heading{font-size:calc(13px * var(--font-scale));color:var(--accent);margin-bottom:8px;font-weight:700}.pinned-hint{font-size:calc(13px * var(--font-scale));color:var(--text-muted);margin:0}.pinned-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pinned-item{align-items:center;gap:8px;display:flex}.pinned-text{overflow-wrap:break-word;flex:1;min-width:0;font-weight:600}.pinned-text.completed{color:var(--text-muted);font-weight:400;text-decoration:line-through}.dday{font-size:calc(12px * var(--font-scale));background:var(--border);color:var(--text);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 8px;font-weight:700}.dday.overdue{background:var(--danger);color:#fff}.star-btn{font-size:calc(18px * var(--font-scale));cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:4px;line-height:1}.star-btn.active{color:var(--accent)}.item-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.deadline-field{flex-basis:100%;align-items:center;gap:8px;display:flex}.deadline-label{font-size:calc(13px * var(--font-scale));color:var(--text-muted);white-space:nowrap}.tab-bar{z-index:80;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--bar-bg);-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tab-bar{background:var(--bg)}}.tab-bar-inner{max-width:560px;height:var(--tabbar-h);margin:0 auto;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 4px;font-weight:500;display:flex}.tab-btn:active{opacity:.5;transform:none}.tab-btn.active{color:var(--accent);font-weight:700}.tab-icon{line-height:1;display:flex}.tab-icon svg{width:24px;height:24px;display:block}.tab-btn.active .tab-icon svg{stroke-width:2.1px}.tab-label{font-size:calc(11px * var(--font-scale));letter-spacing:-.2px}.tab-panel{animation:.16s panel-in}@keyframes panel-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.tab-panel{animation:none}}.filter-label{font-size:calc(12px * var(--font-scale));color:var(--text-muted);align-self:center;min-width:52px;font-weight:700}.status-btn{border-radius:8px}.category-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:2px 2px 10px;display:flex}.category-title{font-size:calc(26px * var(--font-scale));letter-spacing:-.5px;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-weight:800;display:inline-flex}.category-title-pencil{font-size:calc(15px * var(--font-scale));opacity:.45}.category-title:hover .category-title-pencil{opacity:1}.category-header-count{font-size:calc(13px * var(--font-scale));color:var(--text-muted);white-space:nowrap}.category-header-edit{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.segmented{border:1px solid var(--border);border-radius:999px;flex-shrink:0;display:flex;overflow:hidden}.segment{background:var(--surface);color:var(--text-muted);font-size:calc(14px * var(--font-scale));cursor:pointer;white-space:nowrap;border:none;padding:7px 14px;font-weight:600}.segment.active{background:var(--accent);color:var(--accent-contrast)}.stat-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px;display:grid}@media (width>=480px){.stat-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);font:inherit;color:inherit;border:1px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;display:flex}button.stat-card{cursor:pointer}button.stat-card:hover{border-color:var(--accent)}.stat-value{font-size:calc(24px * var(--font-scale));color:var(--accent);font-weight:800;line-height:1}.stat-value.warn,strong.warn{color:var(--danger)}.stat-label{font-size:calc(12px * var(--font-scale));color:var(--text-muted);text-align:center}.insight-row{font-size:calc(14px * var(--font-scale));width:100%;color:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:0;font-family:inherit;display:flex}.insight-row.clickable{cursor:pointer}.insight-row.clickable:hover strong{text-decoration:underline}.mini-list{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.mini-item{font-size:calc(14px * var(--font-scale));background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.mini-text{overflow-wrap:break-word;min-width:0}.settings-section{margin-bottom:22px}.settings-title{font-size:calc(12px * var(--font-scale));letter-spacing:.3px;color:var(--text-muted);margin:0 0 8px 4px;font-weight:700}.settings-section>.settings-row,.settings-section>.stats-panel,.settings-section>.category-list,.settings-section>.grass-scroll,.settings-section>.trend,.settings-section>.country-grid{background:var(--surface);border-radius:var(--radius);margin-top:0;padding:12px 14px}.settings-section>.settings-row{border-radius:0}.settings-section>.settings-title+.settings-row{border-radius:var(--radius) var(--radius) 0 0}.settings-section>.settings-row:last-child{border-radius:0 0 var(--radius) var(--radius)}.settings-section>.settings-title+.settings-row:last-child{border-radius:var(--radius)}.settings-section>.settings-row+.settings-row{border-top:1px solid var(--hairline)}.settings-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.settings-section .mini-item,.settings-section .category-item{box-shadow:none;background:0 0;border-radius:0;padding:10px 0}.settings-section .mini-item+.mini-item,.settings-section .category-item+.category-item{border-top:1px solid var(--hairline)}.settings-hint{font-size:calc(13px * var(--font-scale));color:var(--text-muted);margin:0 0 10px}.category-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.category-item{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.category-count{font-size:calc(13px * var(--font-scale));color:var(--text-muted);flex:1}.color-row{flex-basis:100%;gap:5px;display:flex}.progress{margin-bottom:14px}.progress-label{font-size:calc(13px * var(--font-scale));color:var(--text-muted);justify-content:space-between;margin-bottom:6px;display:flex}.progress-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .2s}.stats-toggle{color:var(--text-muted);font-size:calc(13px * var(--font-scale));cursor:pointer;background:0 0;border:none;padding:0}.stats-panel{flex-direction:column;gap:8px;margin-top:12px;display:flex}.stats-row{width:100%;font:inherit;color:inherit;background:0 0;border:none;align-items:center;gap:8px;padding:0;display:flex}button.stats-row{cursor:pointer}button.stats-row:hover .badge{outline:1px solid}.stats-track{background:var(--border);border-radius:999px;flex:1;height:6px;overflow:hidden}.stats-fill{border-radius:999px;height:100%}.stats-count{font-size:calc(12px * var(--font-scale));color:var(--text-muted);text-align:right;min-width:36px}.fab{right:max(16px, env(safe-area-inset-right));bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 16px);z-index:75;background:var(--accent);width:56px;height:56px;color:var(--accent-contrast);cursor:pointer;box-shadow:0 6px 20px color-mix(in srgb, var(--accent) 45%, transparent);border:none;border-radius:50%;font-size:28px;font-weight:300;line-height:1;position:fixed}@media (width>=592px){.fab{right:calc(50% - 264px)}}.fab:active{transform:scale(.92)}.sheet-backdrop{z-index:110;background:#0006;justify-content:center;align-items:flex-end;animation:.18s sheet-fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:560px;max-height:85vh;padding:8px 16px calc(20px + env(safe-area-inset-bottom));animation:.24s cubic-bezier(.32,.72,0,1) sheet-up;overflow-y:auto}.sheet-grip{background:var(--border);border-radius:999px;width:36px;height:4px;margin:0 auto 12px}.sheet-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-title{font-size:calc(17px * var(--font-scale));margin:0;font-weight:700}.sheet-close{background:var(--border);width:30px;height:30px;color:var(--text-muted);font-size:calc(14px * var(--font-scale));cursor:pointer;border:none;border-radius:50%;flex-shrink:0;line-height:1}.sheet-form{flex-direction:column;gap:12px;display:flex}.sheet-field{flex-direction:column;gap:6px;display:flex}.sheet-label{font-size:calc(12px * var(--font-scale));color:var(--text-muted);font-weight:700}.sheet-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;font-size:calc(16px * var(--font-scale));padding:13px 14px}.sheet-input:focus{border-color:var(--accent);outline:none}.sheet-chips{flex-wrap:wrap;gap:6px;display:flex}.sheet-submit{border-radius:var(--radius-sm);background:var(--accent);width:100%;min-height:50px;color:var(--accent-contrast);font-size:calc(16px * var(--font-scale));cursor:pointer;border:none;padding:14px;font-weight:700}.sheet-submit:disabled{opacity:.4;cursor:default}.sheet-submit:disabled:active{transform:none}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}}.tip-line{font-size:calc(13px * var(--font-scale));color:var(--text-muted);margin:10px 0 0;animation:.4s tip-fade}@keyframes tip-fade{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tip-line{animation:none}}.toolbar-row{gap:8px;margin-bottom:10px;display:flex}.toolbar-row .text-input{border-radius:999px;padding-left:16px}.toolbar-row .category-select{border-radius:999px}.visually-hidden{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.import-label{justify-content:center;align-items:center;display:inline-flex;position:relative}@media (width<=480px){.toolbar-row{flex-wrap:wrap}.toolbar-row .category-select,.toolbar-row .btn{flex:1}}.text-input,.category-select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:calc(16px * var(--font-scale));min-height:42px;padding:10px 14px}.text-input:focus,.category-select:focus,.note-input:focus{border-color:var(--accent);outline:none}.text-input{flex:1;min-width:0}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;min-height:40px;padding:8px 16px;font-weight:600}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--text-muted)}.btn-danger{background:var(--surface);border-color:var(--border);color:var(--danger)}.btn-danger:hover{border-color:var(--danger)}.btn-sm{font-size:calc(14px * var(--font-scale));padding:6px 12px}.filter-group{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.filter-row{flex-wrap:wrap;gap:6px;display:flex}.filter-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:calc(14px * var(--font-scale));cursor:pointer;border-radius:999px;padding:6px 14px}.filter-btn:hover{border-color:var(--text-muted)}.filter-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.category-chips{scrollbar-width:none;gap:6px;margin-bottom:12px;padding-bottom:2px;display:flex;position:relative;overflow-x:auto}.category-chips::-webkit-scrollbar{display:none}.category-chips .filter-btn{white-space:nowrap;flex:none;align-items:center;gap:6px;display:inline-flex}.chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.filter-btn.active .chip-dot{box-shadow:0 0 0 1.5px var(--accent-contrast)}.chip-count{font-size:calc(12px * var(--font-scale));opacity:.7}.done-divider{border-bottom:1px solid var(--hairline)}.done-divider-btn{background:color-mix(in srgb, var(--text) 3%, var(--surface));width:100%;font:inherit;font-size:calc(13px * var(--font-scale));color:var(--text-muted);cursor:pointer;text-align:left;border:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-weight:700;display:flex}.done-divider-btn:active{background:color-mix(in srgb, var(--text) 7%, var(--surface));transform:none}.done-divider-chevron{font-weight:400}.done-divider:last-child .done-divider-btn{border-radius:0 0 var(--radius) var(--radius)}.done-divider:first-child .done-divider-btn{border-radius:var(--radius) var(--radius) 0 0}.done-divider:last-child{border-bottom:none}.list{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.empty-message{color:var(--text-muted);text-align:center;padding:24px 0}.item{background:var(--surface);border:none;border-bottom:1px solid var(--hairline);position:relative}.item-swipe{z-index:1;background:var(--surface);border-radius:inherit;touch-action:pan-y;flex-direction:column;gap:10px;padding:13px 14px;display:flex;position:relative}.item.swiping{overflow:hidden}.swipe-bg{z-index:0;border-radius:inherit;color:#fff;font-size:calc(13px * var(--font-scale));justify-content:space-between;align-items:center;padding:0 18px;font-weight:700;display:flex;position:absolute;inset:0}.swipe-bg.to-done{background:var(--accent)}.swipe-bg.to-delete{background:var(--danger)}.item:first-child{border-radius:var(--radius) var(--radius) 0 0}.item:last-child{border-radius:0 0 var(--radius) var(--radius);border-bottom:none}.item:only-child{border-radius:var(--radius)}.item-swipe:active{background:color-mix(in srgb, var(--text) 4%, var(--surface))}.item.completed{opacity:.55}.item-main{align-items:center;gap:10px;display:flex}.item-text-group{flex-direction:column;flex:1;gap:5px;min-width:5em;display:flex}.item-text{font-size:calc(15px * var(--font-scale));line-height:1.4}.item-date{font-size:calc(12px * var(--font-scale));color:var(--text-muted)}.note-input{border:1px solid var(--border);background:var(--bg);width:100%;font-size:calc(14px * var(--font-scale));resize:vertical;border-radius:8px;padding:8px 10px}.has-note{color:var(--accent);border-color:var(--accent)}.drag-handle{font-size:calc(18px * var(--font-scale));color:var(--text-muted);cursor:grab;touch-action:manipulation;background:0 0;border:none;flex-shrink:0;margin:0;padding:4px;line-height:1}.drag-handle:disabled{opacity:.25;cursor:not-allowed}.item-checkbox{appearance:none;border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;width:24px;height:24px;margin:0;transition:background-color .15s,border-color .15s;position:relative}.item-checkbox:checked{background:var(--accent);border-color:var(--accent)}.item-checkbox:checked:after{content:"";border:solid var(--accent-contrast);border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:3px;left:7px;transform:rotate(45deg)}.item-checkbox:active{transform:scale(.9)}.badge{font-size:calc(12px * var(--font-scale));white-space:nowrap;border:none;border-radius:999px;flex-shrink:0;padding:4px 10px;font-weight:700}.item-text{overflow-wrap:break-word}.item-flag{margin-right:6px;text-decoration:none;display:inline-block}.item-text.completed{text-decoration:line-through}.item-actions{flex-shrink:0;gap:4px;display:flex}.edit-row{flex-wrap:wrap;gap:8px;width:100%;display:flex}.country-grid{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.country-chip{border:1px solid var(--border);background:var(--surface);max-width:100%;color:inherit;font:inherit;font-size:calc(14px * var(--font-scale));cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.country-chip.wish{opacity:.55}.country-chip.active{border-color:var(--accent);color:var(--accent)}.country-flag{font-size:calc(18px * var(--font-scale));line-height:1}.country-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.country-count{font-size:calc(12px * var(--font-scale));color:var(--text-muted)}.country-chip.active .country-count{color:inherit}.country-wish-label{margin:16px 0 0}.mini-text.done{color:var(--text-muted)}.backup-banner{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:var(--radius);font-size:calc(14px * var(--font-scale));flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;line-height:1.45;display:flex}.backup-banner-text{overflow-wrap:break-word;flex:auto;min-width:0}.idea-picker{margin-top:10px}.idea-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);margin-top:10px;padding:12px}.idea-list{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.idea-chip{background:var(--surface);border:1px solid var(--border);width:100%;color:inherit;font:inherit;font-size:calc(14px * var(--font-scale));text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:9px 12px;display:flex}.idea-chip:hover{border-color:var(--accent)}.idea-plus{color:var(--accent);flex-shrink:0;font-weight:700}.idea-text{overflow-wrap:break-word;min-width:0}.item-date-btn{font:inherit;font-size:calc(12px * var(--font-scale));color:var(--text-muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.item-date-btn:hover{color:var(--accent)}.completed-date-edit{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.completed-date-edit .text-input{width:auto;max-width:160px}:root[data-density=compact] .item-swipe{gap:6px;padding:8px 12px}:root[data-density=compact] .item-main{gap:7px}:root[data-density=compact] .badge{padding:2px 7px}:root[data-density=compact] .btn-sm{padding:4px 8px}:root[data-density=compact] .drag-handle:disabled{display:none}:root[data-density=compact] .pinned-panel{margin-bottom:12px;padding:10px}:root[data-density=compact] .pinned-list{gap:5px}:root[data-density=compact] .progress{margin-bottom:12px}.progress-ring{justify-content:center;align-items:center;display:flex;position:relative}.progress-ring svg{display:block}.ring-bg{stroke:var(--border)}.ring-fill{stroke:var(--accent);transition:stroke-dashoffset .3s}.progress-ring-label{flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute}.progress-ring-percent{font-size:calc(24px * var(--font-scale));font-weight:700}.progress-ring-count{font-size:calc(12px * var(--font-scale));color:var(--text-muted)}.pinned-heading-btn{width:100%;font:inherit;font-size:calc(13px * var(--font-scale));color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:0;font-weight:700;display:flex}.pinned-heading-btn.collapsed{margin-bottom:0}.pinned-chevron{font-size:calc(11px * var(--font-scale));color:var(--text-muted);flex-shrink:0}.pinned-summary{color:var(--text-muted);font-weight:400}.settings-row-stack{flex-direction:column;align-items:stretch;gap:8px}.settings-row-stack .segmented{width:100%}.settings-row-stack .segment{text-align:center;flex:1;padding:8px 4px}.grass-scroll{margin-top:12px;padding-bottom:4px;overflow-x:auto}.grass{min-width:min-content;display:inline-block}.grass-months,.grass-weeks{gap:3px;display:flex}.grass-months{margin-bottom:4px}.grass-month{width:11px;font-size:calc(9px * var(--font-scale));color:var(--text-muted);white-space:nowrap;flex-shrink:0}.grass-week{flex-direction:column;gap:3px;display:flex}.grass-cell{background:var(--border);border-radius:2px;flex-shrink:0;width:11px;height:11px}.grass-cell.future{background:0 0}.grass-cell.level-1{background:var(--accent);opacity:.3}.grass-cell.level-2{background:var(--accent);opacity:.55}.grass-cell.level-3{background:var(--accent);opacity:.8}.grass-cell.level-4{background:var(--accent)}.grass-legend{font-size:calc(11px * var(--font-scale));color:var(--text-muted);align-items:center;gap:4px;margin-top:8px;display:flex}.trend{align-items:flex-end;gap:4px;margin-top:12px;display:flex}.trend-col{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;display:flex}.trend-count{font-size:calc(10px * var(--font-scale));color:var(--text-muted);height:calc(13px * var(--font-scale))}.trend-bar-track{background:var(--border);border-radius:4px;align-items:flex-end;width:100%;height:70px;display:flex;overflow:hidden}.trend-bar{background:var(--accent);opacity:.55;border-radius:4px 4px 0 0;width:100%;min-height:2px;transition:height .2s}.trend-bar.best{opacity:1}.trend-label{font-size:calc(10px * var(--font-scale));color:var(--text-muted)}.warn-banner{background:color-mix(in srgb, var(--danger) 9%, var(--surface));border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.repeat{flex-direction:column;gap:6px;display:flex}.repeat-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.repeat-count{font-size:calc(13px * var(--font-scale));color:var(--accent);font-weight:700}.repeat-streak{font-size:calc(12px * var(--font-scale));color:var(--text-muted);margin-right:auto}.repeat-track{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.repeat-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .2s}.goal-input{flex:none;max-width:110px}.steps{flex-direction:column;gap:8px;display:flex}.step-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.step-item{background:var(--bg);font-size:calc(14px * var(--font-scale));border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.step-text{overflow-wrap:break-word;flex:1;min-width:0}.step-text.done{color:var(--text-muted);text-decoration:line-through}.step-add{gap:6px;display:flex}.cost-input{flex:none;max-width:160px}.reorder-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.reorder-hint{font-size:calc(12px * var(--font-scale));color:var(--text-muted)}.more-btn{color:var(--text-muted);font:inherit;font-size:calc(16px * var(--font-scale));cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:4px 8px;line-height:1}.more-btn.active{background:var(--border);color:var(--text)}.item .item-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;width:100%;padding-top:8px}.filter-summary{background:var(--surface);border:1px dashed var(--border);font-size:calc(13px * var(--font-scale));color:var(--text-muted);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;padding:8px 12px;display:flex}.idea-topics{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.story-head{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.story-head-text{min-width:0;font-size:calc(14px * var(--font-scale));flex-direction:column;flex:1;display:flex}.story-qa{flex-direction:column;gap:10px;margin-top:12px;display:flex}.story-item{background:var(--bg);border-radius:10px;padding:10px 12px}.story-q{font-size:calc(13px * var(--font-scale));color:var(--accent);margin:0 0 4px;font-weight:700}.story-a{font-size:calc(14px * var(--font-scale));margin:0;line-height:1.5}.story-subtitle{font-size:calc(14px * var(--font-scale));color:var(--text-muted);margin:20px 0 0}.story-acronym{text-align:center;font-size:calc(20px * var(--font-scale));letter-spacing:.5px;color:var(--text-muted);margin:14px 0 0}.story-acronym em{color:var(--accent);font-style:normal;font-weight:800}.reflection{background:var(--bg);border:1px dashed var(--accent);border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.reflection-label{font-size:calc(13px * var(--font-scale));color:var(--accent);font-weight:700}.reflection-row{flex-wrap:wrap;gap:6px;display:flex}.empty-start{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:28px 20px}.empty-start-title{font-size:calc(16px * var(--font-scale));margin:0 0 8px;font-weight:700}.empty-start-body{font-size:calc(14px * var(--font-scale));color:var(--text-muted);margin:0 0 10px;line-height:1.6}.toolbar-row .text-input{flex:55%;min-width:0}.toolbar-row .category-select{flex:0 auto;min-width:0}.filter-toggle-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}
