@layer reset,legacy,base,layout,components,views,themes,animations,accessibility,utilities;@layer legacy{:root{--bg: #0a0a0c;--surface: #101014;--surface2: #16161a;--border: #1c1c22;--border2: #24242c;--text: #ebebef;--text-bright: #f4f4f8;--muted: #9898a4;--dim: #5c5c6a;--faint: #3a3a44;--accent: #2dd4bf;--toast-shadow: rgba(0, 0, 0, .5);--surface-0: #101014;--surface-1: #16161a;--surface-2: #1c1c22;--surface-3: #24242c;--text-primary: #ebebef;--text-secondary: #9898a4;--text-tertiary: #5c5c6a;--text-ghost: #3a3a44;--accent-hover: #5eead4;--accent-dim: rgba(45, 212, 191, .12);--accent-ring: rgba(45, 212, 191, .3);--accent-gradient: linear-gradient(135deg, #2dd4bf, #06b6d4);--success: #34d399;--success-dim: rgba(52, 211, 153, .1);--success-ring: rgba(52, 211, 153, .3);--success-gradient: linear-gradient(135deg, #34d399, #6ee7b7);--warning: #fbbf24;--warning-dim: rgba(251, 191, 36, .1);--warning-ring: rgba(251, 191, 36, .3);--warning-gradient: linear-gradient(135deg, #fbbf24, #fcd34d);--danger: #f87171;--danger-dim: rgba(248, 113, 113, .1);--danger-ring: rgba(248, 113, 113, .3);--danger-gradient: linear-gradient(135deg, #f87171, #fca5a5);--c-success: var(--success);--c-success-dim: var(--success-dim);--c-success-ring: var(--success-ring);--c-warning: var(--warning);--c-warning-dim: var(--warning-dim);--c-warning-ring: var(--warning-ring);--c-danger: var(--danger);--c-danger-dim: var(--danger-dim);--c-danger-ring: var(--danger-ring);--c-info: #38bdf8;--c-info-dim: rgba(56, 189, 248, .1);--c-info-ring: rgba(56, 189, 248, .3);--c-purple: #a78bfa;--c-purple-dim: rgba(167, 139, 250, .12);--c-purple-ring: rgba(167, 139, 250, .3);--c-orange: #fb923c;--c-orange-dim: rgba(251, 146, 60, .12);--c-orange-ring: rgba(251, 146, 60, .3);--cat-1: #818cf8;--cat-2: #fb923c;--cat-3: #34d399;--cat-4: #f472b6;--cat-5: #38bdf8;--cat-6: #a78bfa;--cat-7: #fbbf24;--cat-8: #4ade80;--sp-1: 4px;--sp-2: 6px;--sp-3: 8px;--sp-4: 12px;--sp-5: 16px;--sp-6: 24px;--sp-7: 32px;--sp-8: 48px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--t-xs: 9px;--t-sm: 11px;--t-md: 13px;--t-lg: 16px;--t-xl: 20px;--t-2xl: 24px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-pill: 9999px;--sh-sm: 0 2px 8px rgba(0,0,0,.3);--sh-md: 0 4px 20px rgba(0,0,0,.4);--sh-lg: 0 8px 40px rgba(0,0,0,.5);--sh-glow: 0 0 24px rgba(45, 212, 191, .2);--card-0: var(--surface-0);--card-1: var(--surface-1);--card-2: var(--surface-2);--glass-bg: rgba(16, 16, 20, .72);--glass-border: rgba(255, 255, 255, .06);--glass-blur: blur(20px) saturate(180%);--noise-opacity: .03;--ease-snap: cubic-bezier(.2, 0, 0, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--ease-dramatic: cubic-bezier(.16, 1, .3, 1);--dur-instant: 80ms;--dur-fast: .15s;--dur-normal: .25s;--dur-slow: .4s;--dur-dramatic: .6s}[data-theme=light]{--bg: #f7f4ee;--surface: #efebe3;--surface2: #e8e2d8;--border: #dfd8ca;--border2: #d4ccbc;--text: #1c1917;--text-bright: #0f0d0c;--muted: #57534e;--dim: #a8a29e;--faint: #d6d3d1;--accent: #0d9488;--toast-shadow: rgba(0, 0, 0, .12);--surface-0: #efebe3;--surface-1: #e8e2d8;--surface-2: #dfd8ca;--surface-3: #d4ccbc;--text-primary: #1c1917;--text-secondary: #57534e;--text-tertiary: #a8a29e;--text-ghost: #d6d3d1;--accent-hover: #0f766e;--accent-dim: rgba(13, 148, 136, .08);--accent-ring: rgba(13, 148, 136, .25);--accent-gradient: linear-gradient(135deg, #0d9488, #14b8a6);--success: #059669;--success-dim: rgba(5, 150, 105, .1);--success-ring: rgba(5, 150, 105, .25);--success-gradient: linear-gradient(135deg, #059669, #34d399);--warning: #d97706;--warning-dim: rgba(217, 119, 6, .1);--warning-ring: rgba(217, 119, 6, .25);--warning-gradient: linear-gradient(135deg, #d97706, #fbbf24);--danger: #dc2626;--danger-dim: rgba(220, 38, 38, .1);--danger-ring: rgba(220, 38, 38, .25);--danger-gradient: linear-gradient(135deg, #dc2626, #f87171);--c-success: var(--success);--c-success-dim: var(--success-dim);--c-success-ring: var(--success-ring);--c-warning: var(--warning);--c-warning-dim: var(--warning-dim);--c-warning-ring: var(--warning-ring);--c-danger: var(--danger);--c-danger-dim: var(--danger-dim);--c-danger-ring: var(--danger-ring);--c-info: #0284c7;--c-info-dim: rgba(2, 132, 199, .1);--c-info-ring: rgba(2, 132, 199, .25);--c-purple: #7c3aed;--c-purple-dim: rgba(124, 58, 237, .1);--c-purple-ring: rgba(124, 58, 237, .25);--c-orange: #ea580c;--c-orange-dim: rgba(234, 88, 12, .1);--c-orange-ring: rgba(234, 88, 12, .25);--cat-1: #6366f1;--cat-2: #ea580c;--cat-3: #059669;--cat-4: #db2777;--cat-5: #0284c7;--cat-6: #7c3aed;--cat-7: #d97706;--cat-8: #16a34a;--sh-sm: 0 2px 8px rgba(0,0,0,.07);--sh-md: 0 4px 20px rgba(0,0,0,.09);--sh-lg: 0 8px 40px rgba(0,0,0,.12);--sh-glow: 0 0 24px rgba(13, 148, 136, .16);--glass-bg: rgba(239, 235, 227, .82);--glass-border: rgba(0, 0, 0, .06);--glass-blur: blur(20px) saturate(140%);--noise-opacity: .04}[data-theme=light] .tab.active{background:var(--text-bright);color:var(--bg)}[data-theme=light] .tab .tab-progress{background:#007a9944}[data-theme=light] .tab.active .tab-progress{background:#faf6ed33}[data-theme=light] .item{background:var(--surface)!important;border-color:var(--border)!important}[data-theme=light] .item.done .item-check{border-color:var(--accent);background:#007a9922}[data-theme=light] .item.done .item-check:after{color:var(--accent)}[data-theme=light] .item.done .item-text:after{color:var(--accent)}[data-theme=light] .info{background:var(--surface)!important;border-color:var(--border)!important}[data-theme=light] .sync-dot.connected{background:#2e8b57;box-shadow:0 0 6px #2e8b5744}.theme-toggle{background:none;border:1px solid var(--border2);border-radius:6px;padding:4px 8px;cursor:pointer;font-size:14px;line-height:1;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);color:var(--muted);vertical-align:middle}.theme-toggle:hover{border-color:var(--accent);color:var(--text)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:JetBrains Mono,SF Mono,Fira Code,monospace;padding:0;min-height:100vh;overflow-x:hidden;-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--faint);border-radius:2px}.app{max-width:680px;margin:0 auto;padding:20px 16px 100px}.header{padding:16px 0 20px}.header-sub{font-size:10px;letter-spacing:3px;color:var(--dim);text-transform:uppercase;margin-bottom:6px}.header h1{font-size:24px;font-weight:700;letter-spacing:-1px;color:var(--text-bright);margin-bottom:2px}.header-tag{font-size:12px;color:var(--muted)}.weekly-progress{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:8px;padding:8px 12px;background:var(--surface);border-radius:8px;border:1px solid var(--border)}.weekly-label{color:var(--dim);letter-spacing:1px;text-transform:uppercase;font-size:10px}.weekly-val{color:var(--text);font-weight:500}.weekly-bar{flex:1;height:3px;background:var(--border);border-radius:2px;margin:0 12px;overflow:hidden}.weekly-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#00e676);background-size:200% 100%;border-radius:2px;transition:width .5s cubic-bezier(.34,1.56,.64,1)}.progress-wrap{margin-bottom:24px}.progress-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:6px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#00e676,var(--accent));background-size:200% 100%;border-radius:2px;transition:width .65s cubic-bezier(.34,1.56,.64,1);animation:progress-shimmer 3s linear infinite}@keyframes progress-shimmer{0%{background-position:0% 0}to{background-position:200% 0}}.progress-text{font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.tabs{display:flex;gap:4px;margin-bottom:24px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.tabs[role=tablist]{outline:2px solid transparent}.tab{flex:1 0 auto;padding:10px 12px;font-size:12px;font-weight:400;font-family:inherit;background:var(--surface2);color:var(--muted);border:1px solid var(--border2);border-radius:8px;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);letter-spacing:.5px;position:relative}.tab.active{font-weight:600;background:var(--text-bright);color:var(--bg);border-color:transparent}.tab.today:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent)}.tab .tab-progress{position:absolute;bottom:0;left:0;height:2px;border-radius:0 0 8px 8px;background:#00d2ff44;transition:width .3s}.tab.active .tab-progress{background:#09090b33}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.day-header{margin-bottom:20px}.day-name{font-size:20px;font-weight:600;color:var(--text-bright);margin-bottom:6px}.day-meta{display:flex;gap:12px;font-size:11px;color:var(--muted);flex-wrap:wrap;align-items:center}.day-meta .val{color:var(--text)}.day-meta .home{color:var(--accent)}.day-meta .flag{color:#ff9100}.sections{display:flex;flex-direction:column;gap:22px;margin-bottom:32px}.section-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--dim);margin-bottom:8px;padding-left:2px;transition:color .3s}.items{display:flex;flex-direction:column;gap:4px}.section-group{transition:opacity .3s;animation:sectionAppear .3s ease-out backwards}.section-group:nth-child(1){animation-delay:0ms}.section-group:nth-child(2){animation-delay:55ms}.section-group:nth-child(3){animation-delay:.11s}.section-group:nth-child(4){animation-delay:165ms}.section-group:nth-child(5){animation-delay:.22s}.section-group:nth-child(6){animation-delay:275ms}.section-past{opacity:.45}.section-past .item:not(.done){opacity:.7}.section-current>.section-label{color:var(--accent)}.section-current>.section-label:after{content:" now";font-size:9px;color:#00d2ff88;letter-spacing:1px;font-weight:400}.item{display:flex;flex-wrap:wrap;align-items:flex-start;border-radius:var(--r-md);overflow:hidden;transition:opacity .25s,box-shadow .18s ease,transform .15s;cursor:pointer;-webkit-user-select:none;user-select:none;outline:2px solid transparent}.item:hover{box-shadow:var(--sh-sm)}.item:active{transform:scale(.985)}.item:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:var(--r-md)}.item.done{opacity:.55}.item.done .item-text{text-decoration:line-through}.item-bar{width:3px;flex-shrink:0;align-self:stretch}.item-body{padding:10px 12px;flex:1;display:flex;align-items:flex-start;gap:10px}.item-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--faint);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:border-color .2s,background .2s,transform .2s;background:transparent}.item.done .item-check{border-color:var(--accent);background:var(--accent-dim)}.item.done .item-check:after{content:"✓";font-size:11px;color:var(--accent)}.item-info{flex:1;min-width:0}.item-text{font-size:13px;font-weight:500;line-height:1.4}.item-hint{font-size:11px;color:var(--muted);margin-top:2px;line-height:1.4}.item-cat{font-size:8px;letter-spacing:1px;text-transform:uppercase;margin-top:3px;opacity:.8}.item.skip{opacity:.55}.item.skip .item-text{text-decoration:line-through;color:var(--danger)!important}.skipped-banner{background:#e9456012;border:1px solid #e9456030;border-radius:10px;padding:10px 14px;margin-bottom:12px}.skipped-banner-header{font-size:11px;font-weight:600;color:#e94560;letter-spacing:.5px;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:6px}.skipped-banner-count{background:#e9456033;padding:1px 6px;border-radius:4px;font-size:10px}.skipped-banner-list{display:flex;flex-direction:column;gap:3px}.skipped-banner-item{font-size:11px;color:#e9456099;text-decoration:line-through;padding:2px 0}.skipped-banner-item .sbi-cat{font-size:8px;text-transform:uppercase;letter-spacing:.5px;opacity:.7;margin-left:6px;text-decoration:none;display:inline-block}.item.skip .item-check{border-color:var(--danger);background:var(--danger-dim)}.item.skip .item-check:after{content:"u2716";font-size:10px;color:var(--danger)}.item.progress .item-check{border-color:var(--warning);background:var(--warning-dim)}.item.progress .item-check:after{content:"▶";font-size:9px;color:var(--warning);animation:progressPulse 1.5s infinite}.item.progress .item-text:after{content:"active";font-size:7px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--c-warning);background:var(--c-warning-dim);border:1px solid var(--c-warning-ring);border-radius:var(--r-pill);padding:1px 5px;margin-left:6px;vertical-align:middle;text-decoration:none;display:inline-block;line-height:1.5}.item.blocked{opacity:.75}.item.blocked .item-check{border-color:var(--c-orange, #ff6d00);background:var(--c-orange-dim, #ff6d0022)}.item.blocked .item-check:after{content:"⛔";font-size:10px;color:var(--c-orange, #ff6d00)}.item.blocked .item-text:after{content:"blocked";font-size:7px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--c-orange);background:var(--c-orange-dim);border:1px solid var(--c-orange-ring);border-radius:var(--r-pill);padding:1px 5px;margin-left:6px;vertical-align:middle;text-decoration:none;display:inline-block;line-height:1.5}.item.skip .item-text:after{content:"skipped";font-size:7px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--c-danger);background:var(--c-danger-dim);border:1px solid var(--c-danger-ring);border-radius:var(--r-pill);padding:1px 5px;margin-left:6px;vertical-align:middle;text-decoration:none;display:inline-block;line-height:1.5}.item.done .item-text:after{content:"done";font-size:7px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--c-success);background:var(--c-success-dim);border:1px solid var(--c-success-ring);border-radius:var(--r-pill);padding:1px 5px;margin-left:6px;vertical-align:middle;text-decoration:none;display:inline-block;line-height:1.5}@keyframes progressPulse{0%,to{opacity:1}50%{opacity:.3}}.item.deferred-out{display:none}.lock-btn{background:none;border:1px solid var(--border2);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:12px;color:var(--muted);font-family:inherit;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.lock-btn:hover{border-color:var(--accent);color:var(--text)}.lock-btn.locked{background:#ffab0018;border-color:#ffab0044;color:#ffab00}.day-locked-overlay{pointer-events:none;opacity:.6}.day-locked-overlay .item-swipe-wrap{pointer-events:none}.item-swipe-wrap{position:relative;overflow:hidden;border-radius:10px;margin-bottom:0}.swipe-bg{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 18px;font-size:12px;font-weight:600;letter-spacing:.5px;pointer-events:none;opacity:0;transition:opacity .15s}.swipe-bg-right{left:0;right:50%;background:linear-gradient(90deg,#00d2ff33,transparent);color:var(--accent);justify-content:flex-start}.swipe-bg-left{right:0;left:50%;background:linear-gradient(-90deg,#e9456033,transparent);color:#e94560;justify-content:flex-end}.swipe-bg.visible{opacity:1}.item-swipe-inner{position:relative;z-index:1;transition:transform .15s ease-out;touch-action:pan-y}@keyframes taskPop{0%{transform:scale(.97);opacity:.5}to{transform:scale(1);opacity:1}}@keyframes taskComplete{0%{transform:scale(1)}25%{transform:scale(1.025)}50%{transform:scale(.99)}to{transform:scale(1)}}.item-actions-btn{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--dim);cursor:pointer;border-radius:4px;transition:color .15s;margin-left:auto;align-self:center}.item-actions-btn:hover{color:var(--text)}.item-action-bar{display:none;gap:2px;padding:6px 12px 8px;flex-wrap:wrap;width:100%}.item-action-bar.open{display:flex}.action-menu{display:flex;flex-wrap:wrap;gap:4px;padding:6px 12px 10px;width:100%;animation:action-menu-in .18s ease-out}@keyframes action-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(max-width:767px){.action-menu{position:fixed;bottom:0;left:0;right:0;z-index:500;padding:4px 14px calc(14px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--border);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:0 -8px 40px #0006;animation:sheet-up .28s cubic-bezier(.34,1.4,.64,1);gap:6px}.action-menu:before{content:"";display:block;width:36px;height:4px;background:var(--faint);border-radius:var(--r-pill);margin:0 auto 10px;flex-basis:100%;flex-shrink:0}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.action-btn{flex:1 1 calc(50% - 3px);text-align:center;padding:10px 8px!important;font-size:11px!important;justify-content:center}}.action-btn{font-family:inherit;font-size:10px;letter-spacing:.3px;padding:5px 11px;border-radius:var(--r-pill);border:1px solid var(--border2);background:var(--surface2);color:var(--muted);cursor:pointer;transition:background .14s,color .14s,border-color .14s,transform .1s;white-space:nowrap}.action-btn:hover{color:var(--text);border-color:var(--c-info);background:var(--c-info-dim)}.action-btn:active{transform:scale(.92)}.action-btn.skip{color:var(--c-danger);border-color:var(--c-danger-ring)}.action-btn.skip:hover{background:var(--c-danger-dim)}.action-btn.progress{color:var(--c-warning);border-color:var(--c-warning-ring)}.action-btn.progress:hover{background:var(--c-warning-dim)}.action-btn.blocked{color:var(--c-orange);border-color:var(--c-orange-ring)}.action-btn.blocked:hover{background:var(--c-orange-dim)}.action-btn.defer{color:var(--c-info);border-color:var(--c-info-ring)}.action-btn.defer:hover{background:var(--c-info-dim)}.action-btn.danger{color:var(--c-danger);border-color:var(--c-danger-ring)}.action-btn.danger:hover{background:var(--c-danger-dim)}.defer-picker{display:none;gap:3px;padding:4px 12px 8px;flex-wrap:wrap}.defer-picker.open{display:flex}.defer-day-btn{font-family:inherit;font-size:10px;padding:4px 8px;border-radius:4px;border:1px solid var(--border2);background:var(--surface2);color:var(--accent);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.defer-day-btn:hover{background:#00d2ff15}.item.done .item-note,.item.skip .item-note{opacity:1}.item-note{font-size:11px;color:#d4a0ff;margin-top:3px;line-height:1.5;padding:4px 8px;background:#b44aff15;border-radius:4px;border:1px solid #b44aff25}[data-theme=light] .item-note{color:#7b2cbf;background:#b44aff12;border-color:#b44aff20}.note-input:focus{border-color:#d4a0ff}.deferred-section{margin-bottom:16px}.deferred-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#00d2ff88;margin-bottom:8px;padding-left:2px}.deferred-from{font-size:9px;color:#00d2ff88;letter-spacing:.5px;margin-top:2px}.note-icon{font-size:10px;margin-left:4px;opacity:.6}@keyframes checkPop{0%{transform:scale(1)}40%{transform:scale(.96)}to{transform:scale(1)}}.item.just-toggled{animation:checkPop .25s ease}.panel{background:var(--surface);border-radius:12px;border:1px solid var(--border);margin-bottom:16px;overflow:hidden}.panel-header{padding:14px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;outline:2px solid transparent}.panel-header:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:12px}.panel-title{font-size:13px;font-weight:600;color:var(--text-bright);letter-spacing:.5px}.panel-arrow{font-size:12px;color:var(--muted);transition:transform .2s}.panel-header.open .panel-arrow{transform:rotate(180deg)}.panel-content{padding:0 16px 16px;display:none}.panel-content.open{display:block}.overview-row{display:flex;gap:8px;margin-bottom:8px;align-items:baseline;flex-wrap:wrap}.overview-day{width:30px;font-size:11px;font-weight:600;flex-shrink:0}.overview-tag{font-size:9px;padding:2px 5px;border-radius:4px;flex-shrink:0;white-space:nowrap}.overview-desc{font-size:11px;color:var(--muted);line-height:1.4}.info{padding:14px;border-radius:10px;font-size:11px;line-height:1.7;margin-bottom:12px}.info strong{color:#abc}.info p{margin-top:6px}.info p:first-child{margin-top:0}.streak-chart{display:flex;align-items:flex-end;gap:3px;height:36px;padding:4px 0}.streak-bar{flex:1;background:var(--faint);border-radius:2px;min-height:3px;transition:height .3s;position:relative}.streak-bar.current{background:var(--accent)}.streak-bar-label{position:absolute;bottom:-14px;left:50%;transform:translate(-50%);font-size:8px;color:var(--dim);white-space:nowrap}.streak-bar.current .streak-bar-label{color:var(--accent)}.streak-empty{font-size:11px;color:var(--dim);padding:8px 0}.data-controls{display:flex;gap:8px}.data-btn{font-family:inherit;font-size:11px;color:var(--muted);background:var(--surface2);border:1px solid var(--border2);border-radius:6px;padding:8px 14px;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);letter-spacing:.5px;flex:1}.data-btn:hover{color:var(--text);border-color:#00d2ff44}.data-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sync-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-left:8px;vertical-align:middle;position:relative;top:-1px}.sync-dot.connected{background:#00e676;box-shadow:0 0 6px #00e67644}.sync-dot.syncing{background:#ffab00;animation:syncPulse 1.2s infinite}.sync-dot.offline{background:var(--faint)}.sync-dot.hidden{display:none}@keyframes syncPulse{0%,to{opacity:1}50%{opacity:.3}}.sync-input{width:100%;font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:6px;padding:8px 10px;resize:vertical;min-height:80px;margin-bottom:8px;line-height:1.5}.sync-input:focus{outline:2px solid transparent;border-color:var(--accent)}.sync-input::placeholder{color:var(--faint)}.sync-msg{font-size:11px;margin-top:8px;line-height:1.4}.sync-msg.ok{color:#00e676}.sync-msg.err{color:#e94560}.sync-msg.wait{color:#ffab00}.sync-info{font-size:10px;color:var(--dim);line-height:1.6;margin-bottom:10px}.reset-wrap{text-align:center;padding:20px 0}.reset-btn{font-family:inherit;font-size:11px;color:var(--dim);background:none;border:1px solid var(--border2);border-radius:6px;padding:6px 14px;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);letter-spacing:.5px}.reset-btn:hover{color:#e94560;border-color:#e9456044}.reset-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toast{position:fixed;bottom:-70px;left:50%;transform:translate(-50%);background:var(--surface2);border:1px solid var(--border2);border-radius:10px;padding:10px 16px 10px 20px;font-family:inherit;font-size:12px;color:var(--text);display:flex;align-items:center;gap:12px;z-index:100;transition:bottom .3s ease;box-shadow:0 4px 24px var(--toast-shadow);white-space:nowrap;max-width:90vw;overflow:hidden}.toast.show{bottom:28px;animation:toastIn .35s cubic-bezier(.34,1.56,.64,1)}.toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:10px 0 0 10px;opacity:0}.toast.toast--success:before{background:var(--success);opacity:1}.toast.toast--warning:before{background:var(--warning);opacity:1}.toast.toast--error:before{background:var(--danger);opacity:1}.toast.toast--info:before{background:var(--accent);opacity:1}@keyframes toastIn{0%{transform:translate(-50%) translateY(20px) scale(.9);opacity:0}to{transform:translate(-50%) translateY(0) scale(1);opacity:1}}.toast-undo{font-family:inherit;font-size:11px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;padding:2px 8px;border-radius:4px}.toast-undo:hover{background:#00d2ff15}.editor-section{margin-bottom:12px;border:1px solid var(--border);border-radius:8px;padding:8px 10px}.editor-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.editor-section-actions{display:flex;gap:4px;flex-shrink:0}.editor-section-rename-row{display:flex;align-items:center;gap:4px;margin-bottom:6px}.editor-section-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--dim)}.editor-item{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;margin-bottom:4px;font-size:11px;color:var(--text)}.editor-item-reorder{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.editor-reorder-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:10px;padding:0 2px;line-height:1.2}.editor-reorder-btn:disabled{opacity:.2;cursor:default}.editor-reorder-btn:not(:disabled):hover{color:var(--accent)}.editor-item-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-item-cat{font-size:9px;color:var(--muted);text-transform:uppercase}.editor-remove-btn{background:none;border:none;color:#e94560;cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.editor-add-row{display:flex;gap:4px;margin-top:6px}.editor-input{flex:1;font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:4px;padding:5px 8px}.editor-input:focus{outline:2px solid transparent;border-color:var(--accent)}.editor-select{font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:4px;padding:5px 6px;width:70px}.editor-add-btn{font-family:inherit;font-size:10px;background:var(--surface2);color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:5px 10px;cursor:pointer;white-space:nowrap}.editor-add-btn:hover{background:#00d2ff15}.view-toggle{display:flex;gap:4px;margin-bottom:16px}.view-btn{flex:1;font-family:inherit;font-size:11px;padding:8px 12px;border-radius:8px;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);letter-spacing:.5px}.view-btn.active{background:var(--text-bright);color:var(--bg);border-color:transparent;font-weight:600}.week-view{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.week-day-block{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.week-day-header{padding:10px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);cursor:pointer}.week-day-header:hover{background:var(--surface2)}.week-day-name{font-size:14px;font-weight:600;color:var(--text-bright)}.week-day-name.is-today{color:var(--accent)}.week-day-meta{font-size:10px;color:var(--muted)}.week-day-progress{font-size:11px;color:var(--muted);font-weight:500}.week-day-progress .pct{color:var(--accent);font-weight:600}.week-day-tasks{padding:8px 10px}.week-task{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;cursor:pointer;transition:opacity .15s;font-size:12px}.week-task:hover{background:var(--surface2)}.week-task.done{opacity:.35;text-decoration:line-through}.week-task.skip{opacity:.25;text-decoration:line-through;color:#e94560}.week-task.progress{color:#ffab00}.week-task.blocked{color:#ff6d00}.week-task-check{width:14px;height:14px;border-radius:4px;border:1.5px solid var(--faint);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px}.week-task.done .week-task-check{border-color:var(--accent);background:#00d2ff22;color:var(--accent)}.week-task.skip .week-task-check{border-color:#e94560;background:#e9456022;color:#e94560}.week-task.progress .week-task-check{border-color:#ffab00;background:#ffab0022;color:#ffab00}.week-task.blocked .week-task-check{border-color:#ff6d00;background:#ff6d0022;color:#ff6d00}.week-task-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-task-cat{font-size:8px;letter-spacing:.5px;text-transform:uppercase;color:var(--dim);flex-shrink:0}.week-section-label{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--dim);padding:6px 6px 2px}@media(max-width:768px){.app{padding:16px 14px 100px}.header h1{font-size:22px}.overview-row{flex-direction:column;gap:4px}.overview-day{width:auto}}@media(max-width:400px){.app{padding:12px 12px 100px}.header h1{font-size:20px}.item-text{font-size:12px}.tab{padding:8px 10px;font-size:11px}}@media(max-width:600px){.tabs{gap:3px}.tab{padding:8px 10px;font-size:11px}.day-name{font-size:18px}.item-body{padding:8px 10px}.weekly-progress{flex-wrap:wrap;gap:6px}}.offline-banner{display:none;align-items:center;justify-content:center;gap:8px;padding:8px 14px;margin-bottom:12px;background:#e9456018;border:1px solid #e9456030;border-radius:8px;font-size:11px;color:#e94560;letter-spacing:.5px;animation:taskPop .3s ease-out;max-width:680px;margin-left:auto;margin-right:auto}.offline-banner.show{display:flex}.offline-dot{width:6px;height:6px;border-radius:50%;background:#e94560;flex-shrink:0;animation:progressPulse 1.5s infinite}.fab{position:fixed;bottom:24px;right:20px;width:52px;height:52px;border-radius:16px;background:var(--accent);color:#09090b;border:none;font-size:26px;font-weight:700;cursor:pointer;z-index:90;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #00d2ff59;transition:transform .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}.fab:active{transform:scale(.9)}.fab.open{transform:rotate(45deg);border-radius:50%}.fab-panel{position:fixed;bottom:86px;right:20px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;z-index:89;width:min(320px,calc(100vw - 40px));box-shadow:0 8px 32px #00000080;animation:fabSlideUp .25s ease-out}@keyframes fabSlideUp{0%{opacity:0;transform:translateY(16px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-panel input,.fab-panel select{width:100%;font-family:inherit;font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:8px;padding:10px 12px;margin-bottom:8px;outline:2px solid transparent}.fab-panel input:focus,.fab-panel select:focus{border-color:var(--accent)}.fab-panel select{padding:8px 10px}.fab-panel-row{display:flex;gap:6px}.fab-add-btn{width:100%;font-family:inherit;font-size:12px;font-weight:600;padding:10px;border-radius:8px;border:none;background:var(--accent);color:#09090b;cursor:pointer;transition:opacity .15s}.fab-add-btn:active{opacity:.7}.cat-filter-bar{display:flex;gap:4px;margin-bottom:12px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.cat-filter-btn{font-family:inherit;font-size:9px;letter-spacing:.5px;padding:4px 10px;border-radius:20px;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);-webkit-tap-highlight-color:transparent}.cat-filter-btn.active{font-weight:600}.cat-filter-btn:active{transform:scale(.95)}.subject-streaks{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px;margin-top:10px}.subject-streak-card{background:var(--surface2);border-radius:8px;padding:8px 10px;border:1px solid var(--border)}.subject-streak-label{font-size:9px;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-weight:600}.subject-streak-bar{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:3px}.subject-streak-fill{height:100%;border-radius:2px;transition:width .4s ease}.subject-streak-val{font-size:10px;color:var(--muted)}.section-done-btn{font-family:inherit;font-size:9px;letter-spacing:.5px;padding:3px 8px;border-radius:4px;border:1px solid var(--border2);background:transparent;color:var(--dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);margin-left:8px;vertical-align:middle}.section-done-btn:hover{color:var(--accent);border-color:var(--accent)}.section-done-btn:active{transform:scale(.95)}.swipe-indicator{position:absolute;top:50%;transform:translateY(-50%);font-size:18px;opacity:0;transition:opacity .1s,transform .1s;pointer-events:none;z-index:5}.swipe-indicator-right{left:14px}.swipe-indicator-left{right:14px}.swipe-indicator.active{opacity:1;animation:swipeReady .2s ease-out}@keyframes swipeReady{0%{transform:translateY(-50%) scale(.3);opacity:0}40%{transform:translateY(-50%) scale(1.4);opacity:1}60%{transform:translateY(-50%) scale(.85)}80%{transform:translateY(-50%) scale(1.1)}to{transform:translateY(-50%) scale(1)}}.week-day-tasks.collapsed{display:none}.week-day-collapse-arrow{font-size:10px;color:var(--muted);transition:transform .2s;margin-left:8px}.week-day-collapse-arrow.open{transform:rotate(180deg)}@keyframes celebrationPop{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.06)}70%{transform:scale(.97)}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes confettiDrift{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}60%{opacity:.8}to{transform:translateY(80px) rotate(900deg) scale(.3);opacity:0}}@keyframes confettiSpray{0%{transform:translate(0) rotate(0) scale(0);opacity:0}15%{opacity:1;transform:translate(var(--spray-x),var(--spray-y)) rotate(180deg) scale(1)}to{transform:translate(var(--spray-x),calc(var(--spray-y) + 60px)) rotate(720deg) scale(.2);opacity:0}}.day-complete-banner{text-align:center;padding:16px;background:linear-gradient(135deg,#00d2ff12,#00e67612);border:1px solid #00d2ff30;border-radius:12px;margin-bottom:16px;animation:celebrationPop .4s ease-out;position:relative;overflow:hidden}.day-complete-text{font-size:14px;font-weight:600;background:linear-gradient(90deg,var(--accent),#00e676,var(--accent));background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}.day-complete-sub{font-size:11px;color:var(--muted);margin-top:4px}.confetti-particle{position:absolute;border-radius:2px;animation:confettiSpray 1.8s cubic-bezier(.25,.46,.45,.94) forwards;pointer-events:none}.item.deferred-in-highlight{border-left:3px solid var(--accent)!important}.deferred-badge{display:inline-block;font-size:8px;letter-spacing:.5px;padding:1px 6px;border-radius:3px;background:#00d2ff18;color:var(--accent);text-transform:uppercase;font-weight:600;margin-left:6px;animation:celebrationPop .3s ease-out}.note-input{width:100%;font-family:inherit;font-size:11px;background:var(--bg);color:var(--text);border:1px solid #b44aff44;border-radius:8px;padding:8px 10px;margin:6px 12px 8px;resize:vertical;min-height:60px;max-height:150px;outline:2px solid transparent;line-height:1.5}.past-week-nav{display:flex;gap:6px;margin-bottom:10px;overflow-x:auto;padding-bottom:4px}.past-week-btn{font-family:inherit;font-size:10px;padding:5px 10px;border-radius:6px;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.past-week-btn.active{background:var(--accent);color:#09090b;border-color:var(--accent);font-weight:600}.skip-debt-banner{background:#ff610012;border:1px solid #ff610030;border-radius:10px;padding:10px 14px;margin-bottom:12px;animation:celebrationPop .3s ease-out}.skip-debt-header{font-size:11px;font-weight:600;color:#ff6100;letter-spacing:.5px;text-transform:uppercase;margin-bottom:6px}.skip-debt-item{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#ff6100aa;padding:2px 0}.skip-debt-count{font-weight:600;color:#ff6100}@keyframes slideInLeft{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes bounceCheck{0%{transform:scale(0) rotate(-8deg);opacity:0}35%{transform:scale(1.45) rotate(4deg);opacity:1}55%{transform:scale(.82) rotate(-2deg)}75%{transform:scale(1.14)}90%{transform:scale(.96)}to{transform:scale(1)}}@keyframes shakeX{0%,to{transform:translate(0)}15%{transform:translate(-5px)}30%{transform:translate(5px)}45%{transform:translate(-3px)}60%{transform:translate(3px)}75%{transform:translate(-1px)}}@keyframes completionGlow{0%{box-shadow:0 0 0 transparent}50%{box-shadow:0 0 16px #00d2ff4d}to{box-shadow:0 0 0 transparent}}@keyframes skipFade{0%{opacity:1;transform:translate(0)}30%{opacity:.6;transform:translate(8px)}to{opacity:.5;transform:translate(0)}}@keyframes sectionAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.item.just-completed{animation:completionGlow .7s ease-out}.item.just-completed .item-check{animation:bounceCheck .5s cubic-bezier(.34,1.56,.64,1)}.item.just-completed:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 20%,rgba(0,210,255,.18) 45%,rgba(0,230,118,.12) 55%,transparent 80%);background-size:300% 100%;animation:sparkle-sweep .65s ease-out forwards;pointer-events:none}@keyframes sparkle-sweep{0%{background-position:120% 0;opacity:1}to{background-position:-40% 0;opacity:0}}.item.just-skipped{animation:shakeX .4s ease-out}.day-transition-left{animation:slideInLeft .25s ease-out}.day-transition-right{animation:slideInRight .25s ease-out}.item-swipe-wrap{transition:margin .2s}.haptic-press{transition:transform .1s}.haptic-press:active{transform:scale(.95)}.data-btn,.tab,.view-btn{overflow:hidden;position:relative}@keyframes ripple-out{0%{transform:scale(0);opacity:.35}to{transform:scale(4);opacity:0}}.ripple-dot{position:absolute;border-radius:50%;width:40px;height:40px;margin:-20px;background:var(--accent);pointer-events:none;animation:ripple-out .45s ease-out forwards}.item-filtered-out{opacity:.15!important;transform:scale(.98);transition:opacity .3s,transform .3s}.week-task.filtered-out{opacity:.1!important}.meal-card{background:linear-gradient(135deg,#1a1408,#0f1a0f);border:1px solid #ff910030;border-radius:12px;padding:12px 14px;margin-bottom:16px;transition:border-color .3s,background .3s,transform .3s}[data-theme=light] .meal-card{background:linear-gradient(135deg,#f5edd8,#edf5e8);border-color:#ff910040}.meal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.meal-card-title{font-size:11px;font-weight:600;color:#ff9100;letter-spacing:1px;text-transform:uppercase}.meal-card-refresh{font-size:10px;color:var(--dim);cursor:pointer;background:none;border:1px solid var(--border2);border-radius:4px;padding:2px 8px;font-family:inherit;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.meal-card-refresh:hover{color:#ff9100;border-color:#ff910044}.meal-items{display:flex;flex-direction:column;gap:3px}.meal-item{font-size:12px;color:var(--text);padding:3px 0;display:flex;align-items:center;gap:6px}.meal-item-dot{width:4px;height:4px;border-radius:50%;background:#ff9100;flex-shrink:0}.meal-type-label{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#ff910088;margin-top:6px;margin-bottom:2px}.meal-type-label:first-child{margin-top:0}.meal-empty{font-size:11px;color:var(--dim);font-style:italic}.meal-paste-area{width:100%;font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid #ff910033;border-radius:8px;padding:8px 10px;resize:vertical;min-height:80px;max-height:200px;margin:8px 0;outline:2px solid transparent;line-height:1.5}.meal-paste-area:focus{border-color:#ff9100}.meal-paste-area::placeholder{color:var(--faint)}.meal-status{font-size:9px;color:var(--dim);margin-top:4px}.meal-status.ok{color:#00e676}.meal-status.err{color:#e94560}.meal-status.wait{color:#ffab00}.confirm-overlay{position:fixed;inset:0;background:#0009;z-index:200;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px 24px;max-width:min(340px,90vw);animation:celebrationPop .25s ease-out;box-shadow:0 16px 48px #0006}.confirm-msg{font-size:13px;color:var(--text-bright);margin-bottom:16px;line-height:1.5}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.confirm-btn{font-family:inherit;font-size:12px;font-weight:500;padding:8px 16px;border-radius:8px;border:1px solid var(--border2);background:var(--surface2);color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.confirm-btn:active{transform:scale(.95)}.confirm-btn.danger{background:#e9456018;border-color:#e9456044;color:#e94560}.confirm-btn.danger:hover{background:#e9456030}.focus-toggle{font-family:inherit;font-size:10px;padding:4px 10px;border-radius:6px;border:1px solid var(--border2);background:transparent;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);letter-spacing:.3px}.focus-toggle.active{background:var(--accent);color:#09090b;border-color:var(--accent);font-weight:600}.focus-toggle:active{transform:scale(.95)}.search-bar{position:relative;margin-bottom:12px}.search-input{width:100%;font-family:inherit;font-size:12px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:10px 14px 10px 34px;outline:2px solid transparent;transition:border-color .15s}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--dim)}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--dim);pointer-events:none}.search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--dim);cursor:pointer;background:none;border:none;padding:2px 4px;line-height:1}.search-clear:hover{color:var(--text)}.fontsize-btn{background:none;border:1px solid var(--border2);border-radius:6px;padding:3px 7px;cursor:pointer;font-size:12px;line-height:1;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);color:var(--muted);vertical-align:middle}.fontsize-btn:hover{border-color:var(--accent);color:var(--text)}.shortcuts-overlay{position:fixed;inset:0;background:#0009;z-index:200;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.shortcuts-box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px 24px;max-width:min(380px,90vw);max-height:80vh;overflow-y:auto;animation:celebrationPop .25s ease-out;box-shadow:0 16px 48px #0006}.shortcuts-title{font-size:14px;font-weight:600;color:var(--text-bright);margin-bottom:14px}.shortcut-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:12px;border-bottom:1px solid var(--border)}.shortcut-row:last-child{border-bottom:none}.shortcut-key{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--surface2);border:1px solid var(--border2);color:var(--accent);letter-spacing:.5px}.shortcut-desc{color:var(--muted)}.sw-update-banner{display:none;position:fixed;top:0;left:0;right:0;z-index:300;background:var(--accent);color:#09090b;text-align:center;padding:10px 16px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;animation:slideDown .3s ease-out}.sw-update-banner.show{display:block}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.est-badge{font-size:9px;color:var(--dim);margin-left:6px;opacity:.7}.item.done .est-badge,.item.skip .est-badge{display:none}.est-remaining{font-size:10px;color:var(--dim);margin-left:8px}.app.font-large,.app.font-large .item-text{font-size:15px}.app.font-large .item-hint,.app.font-large .tab{font-size:13px}.app.font-large .section-label{font-size:12px}.app.font-large .panel-title{font-size:15px}.ctx-menu{position:fixed;z-index:250;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:4px 0;min-width:160px;box-shadow:0 12px 40px #00000080;animation:celebrationPop .15s ease-out}.ctx-item{display:flex;align-items:center;gap:8px;padding:8px 14px;font-family:inherit;font-size:12px;color:var(--text);cursor:pointer;transition:background .1s;border:none;background:none;width:100%;text-align:left}.ctx-item:hover{background:var(--surface2)}.ctx-item:active{transform:scale(.98)}.ctx-item .ctx-icon{font-size:13px;width:18px;text-align:center;flex-shrink:0}.ctx-item.danger{color:#e94560}.ctx-item.accent{color:var(--accent)}.ctx-item.warn{color:#ffab00}.ctx-sep{height:1px;background:var(--border);margin:4px 8px}.commute-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:12px;border-radius:10px;font-size:12px;font-weight:500;animation:taskPop .3s ease-out}.commute-banner.green{background:#00e67612;border:1px solid #00e67630;color:#00e676}.commute-banner.orange{background:#ffab0012;border:1px solid #ffab0030;color:#ffab00}.commute-banner.red{background:#e9456012;border:1px solid #e9456030;color:#e94560}.commute-icon{font-size:16px}.commute-time{font-weight:700;font-size:14px}.deadline-card{background:linear-gradient(135deg,#1a0a1a,#0a1a28);border:1px solid #b44aff20;border-radius:12px;padding:12px 14px;margin-bottom:12px}[data-theme=light] .deadline-card{background:linear-gradient(135deg,#f0e8f5,#e8f0f5);border-color:#b44aff30}.deadline-card-title{font-size:11px;font-weight:600;color:#b44aff;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}.deadline-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border);font-size:12px}.deadline-item:last-child{border-bottom:none}.deadline-name{color:var(--text);font-weight:500}.deadline-days{font-weight:700;padding:2px 8px;border-radius:4px;font-size:11px}.deadline-days.urgent{background:#e9456022;color:#e94560}.deadline-days.soon{background:#ffab0022;color:#ffab00}.deadline-days.ok{background:#00e67622;color:#00e676}.deadline-google{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border2));background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent);text-decoration:none;font-size:10px;font-weight:800}.deadline-add{font-family:inherit;font-size:10px;color:var(--dim);background:none;border:1px dashed var(--border2);border-radius:6px;padding:5px 10px;cursor:pointer;width:100%;margin-top:6px;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth)}.deadline-add:hover{color:#b44aff;border-color:#b44aff44}.deadline-form{display:flex;gap:4px;margin-top:6px}.deadline-form input,.deadline-form select{font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:4px;padding:5px 8px}.deadline-form input{flex:1}.ical-import-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:8px}@media(max-width:520px){.ical-import-row{grid-template-columns:1fr}}.badge-grid{display:none}.scratchpad-fab{position:fixed;bottom:84px;left:20px;width:40px;height:40px;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:18px;cursor:pointer;z-index:88;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000004d;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-bounce),box-shadow var(--dur-fast) var(--ease-smooth)}.scratchpad-fab:hover{color:var(--accent);border-color:var(--accent)}.scratchpad-panel{position:fixed;bottom:130px;left:20px;width:min(320px,calc(100vw - 40px));background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;z-index:89;box-shadow:0 8px 32px #00000080;animation:fabSlideUp .25s ease-out}.scratchpad-area{width:100%;min-height:120px;max-height:200px;font-family:inherit;font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:8px;padding:10px;resize:vertical;outline:2px solid transparent;line-height:1.6}.scratchpad-area:focus{border-color:var(--accent)}.scratchpad-header{font-size:11px;font-weight:600;color:var(--muted);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.scratchpad-panel--markdown{width:min(720px,calc(100vw - 40px));min-height:min(560px,calc(100vh - 190px));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 38%),var(--surface);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}.markdown-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:6px;background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-bottom:8px}.markdown-tool-btn{min-width:26px;height:24px;padding:0 7px;font-family:inherit;font-size:10px;font-weight:700;color:var(--muted);background:var(--surface2);border:1px solid var(--border2);border-radius:6px;cursor:pointer;transition:transform .1s,color .15s,border-color .15s,background .15s}.markdown-tool-btn:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border2));background:color-mix(in srgb,var(--accent) 9%,var(--surface2))}.markdown-tool-btn:active{transform:scale(.94)}.markdown-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:stretch;min-height:420px}.scratchpad-area--markdown{min-height:420px;max-height:none;resize:none;box-sizing:border-box}.markdown-preview{min-height:120px;overflow:auto;padding:12px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent 110px),var(--bg);border:1px solid var(--border2);border-radius:8px;color:var(--text);line-height:1.65;font-size:12px}.markdown-empty{color:var(--dim);font-size:11px;line-height:1.6}.markdown-body h1,.markdown-body h2,.markdown-body h3{color:var(--text-bright);line-height:1.25;margin:0 0 8px;letter-spacing:0}.markdown-body h1{font-size:18px}.markdown-body h2{font-size:15px}.markdown-body h3{font-size:13px}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body pre{margin:0 0 10px}.markdown-body ul,.markdown-body ol{padding-left:18px}.markdown-body li{margin:4px 0}.markdown-body a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}.markdown-body code{color:var(--c-warning);background:color-mix(in srgb,var(--c-warning) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--c-warning) 18%,transparent);border-radius:5px;padding:1px 5px;font-size:.92em}.markdown-body pre{overflow:auto;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.markdown-body pre code{padding:0;border:0;background:none;color:var(--text)}.markdown-body blockquote{padding:6px 10px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--muted);border-radius:0 8px 8px 0}.markdown-body .md-task{list-style:none;margin-left:-18px;display:flex;align-items:flex-start;gap:7px}.markdown-body .md-task.done{color:var(--muted);text-decoration:line-through}.md-check{width:14px;height:14px;border-radius:4px;border:1px solid var(--border2);color:var(--c-success);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:2px;font-size:10px;line-height:1}@media(max-width:720px){.scratchpad-panel--markdown{left:10px;right:10px;width:auto;bottom:calc(86px + env(safe-area-inset-bottom,0px));min-height:min(620px,calc(100vh - 130px))}.markdown-workbench{grid-template-columns:1fr;min-height:0}.scratchpad-area--markdown{min-height:220px}.scratchpad-preview{max-height:220px}}.item-links{display:flex;gap:4px;margin-top:3px;flex-wrap:wrap}.item-link{font-size:9px;color:var(--accent);text-decoration:none;padding:1px 6px;border-radius:3px;background:var(--accent-dim);border:1px solid var(--accent-ring);transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth)}.item-link:hover{background:#00d2ff22}.link-add-btn{font-size:9px;color:var(--dim);cursor:pointer;padding:1px 6px;border-radius:3px;background:none;border:1px dashed var(--border2);font-family:inherit}.grade-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border);font-size:12px}.grade-row:last-child{border-bottom:none}.grade-subject{color:var(--text);font-weight:500}.grade-score{font-weight:700;font-variant-numeric:tabular-nums}.grade-bar{flex:1;height:4px;background:var(--border);border-radius:2px;margin:0 10px;overflow:hidden}.grade-fill{height:100%;border-radius:2px;transition:width .3s}.grade-form{display:flex;gap:4px;margin-top:8px}.grade-form input,.grade-form select{font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:4px;padding:5px 8px}.grade-form input[type=number]{width:50px}.grade-avg{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:8px}.sleep-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:11px}.sleep-day{width:30px;font-weight:600;color:var(--muted)}.sleep-planned{color:var(--dim)}.sleep-actual{font-weight:600}.sleep-diff{font-size:10px;padding:1px 6px;border-radius:3px}.sleep-diff.late{background:#e9456018;color:#e94560}.sleep-diff.ontime{background:#00e67618;color:#00e676}.sleep-input{font-family:inherit;font-size:10px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:4px;padding:4px 6px;width:55px}.summary-card{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:8px}.summary-stat{display:flex;justify-content:space-between;padding:3px 0;font-size:11px}.summary-label{color:var(--muted)}.summary-value{color:var(--text);font-weight:600}.summary-value.good{color:#00e676}.summary-value.warn{color:#ffab00}.summary-value.bad{color:#e94560}.settings-section{margin-bottom:14px}.settings-section-label{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--dim);margin-bottom:8px;font-weight:600}.settings-row{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.settings-row:last-child{margin-bottom:0}.settings-row>label{font-size:10px;color:var(--muted)}.settings-input{width:100%;font-family:inherit;font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:6px;padding:7px 10px;outline:2px solid transparent;transition:border-color .15s;box-sizing:border-box}.settings-input:focus{border-color:var(--accent)}select.settings-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2371717a'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}.settings-save-note{font-size:10px;color:var(--dim);text-align:center;margin-top:6px}.cat-list-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.cat-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.cat-row-key{font-size:10px;color:var(--dim);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-row-badge{font-size:9px;padding:2px 6px;border-radius:4px;border:1px solid;font-weight:600;white-space:nowrap;flex-shrink:0}.cat-row-est{font-size:10px;color:var(--dim);width:28px;text-align:right;flex-shrink:0}.cat-row-btn{font-size:10px;color:var(--muted);background:none;border:1px solid var(--border2);border-radius:4px;padding:3px 8px;cursor:pointer;font-family:inherit;flex-shrink:0;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth)}.cat-row-btn:hover{color:var(--accent);border-color:var(--accent)}.cat-row-btn.danger:hover{color:#e94560;border-color:#e94560}.cat-edit-row{padding:12px;background:var(--surface);border:1px solid;border-radius:8px}input[type=color].settings-input{padding:3px 4px;height:34px;cursor:pointer}.hub-layout{display:flex;min-height:100vh}.main-area{flex:1;min-width:0}#sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:18px 16px 16px;border-bottom:1px solid var(--border);min-height:70px}.sidebar-brand-icon{font-size:22px;flex-shrink:0}.sidebar-brand-text{min-width:0}.sidebar-brand-name{font-size:13px;font-weight:700;color:var(--text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-brand-sub{font-size:9px;color:var(--dim);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{flex:1;padding:8px 0;display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 16px;text-decoration:none;color:var(--muted);font-size:12px;font-weight:500;border-left:2px solid transparent;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);white-space:nowrap;font-family:inherit}.sidebar-link:hover{color:var(--text);background:var(--surface2)}.sidebar-link.active{color:var(--accent);border-left-color:var(--accent);font-weight:600}.sidebar-link-icon{font-size:14px;width:18px;text-align:center;flex-shrink:0}.sidebar-link-label{flex:1}.sidebar-footer{padding:10px 12px;border-top:1px solid var(--border);display:flex;align-items:center;gap:4px}#bottom-tabs{position:fixed;bottom:0;left:0;right:0;height:calc(60px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--glass-border);box-shadow:0 -1px 0 var(--border),0 -8px 32px #0000002e;z-index:200;display:none}.btab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--dim);font-family:inherit;gap:3px;-webkit-tap-highlight-color:transparent;padding:8px 0 4px;transition:color .18s;position:relative;outline:2px solid transparent;border:none;background:none;cursor:pointer}.btab:active{transform:scale(.88);transition:transform .08s}.btab.active{color:var(--accent)}.btab.active .btab-icon{animation:btab-pop .32s cubic-bezier(.34,1.56,.64,1)}.btab.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:22px;height:3px;border-radius:0 0 var(--r-pill) var(--r-pill);background:var(--accent);animation:btab-pill .25s cubic-bezier(.34,1.56,.64,1)}@keyframes btab-pop{0%{transform:scale(1)}45%{transform:scale(1.28) translateY(-2px)}70%{transform:scale(.92)}to{transform:scale(1)}}@keyframes btab-pill{0%{width:0;opacity:0}to{width:22px;opacity:1}}.btab-icon{font-size:20px;line-height:1;display:block}.btab-label{font-size:8px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;line-height:1}@media(max-width:767px){#sidebar{display:none!important}#bottom-tabs{display:flex!important}.app{padding-bottom:var(--app-pad-bottom)}.toast.show,.fab{bottom:calc(72px + env(safe-area-inset-bottom,0px))}.fab-panel{bottom:calc(134px + env(safe-area-inset-bottom,0px))}}.view-page{padding-bottom:40px}.view-page-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.view-page-title{font-size:20px;font-weight:700;color:var(--text-bright);margin-bottom:4px}.view-page-sub{font-size:11px;color:var(--muted)}.briefing-card{position:relative;background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--r-xl);padding:var(--sp-6) var(--sp-6) var(--sp-5);margin-bottom:var(--sp-5);overflow:hidden;animation:briefing-in .44s cubic-bezier(.34,1.3,.64,1) backwards}.briefing-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--c-info),var(--c-purple),var(--c-success))}@keyframes briefing-in{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}.briefing-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-3)}.briefing-greeting{font-size:var(--t-sm);color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.briefing-forecast{font-size:var(--t-sm);font-weight:600;display:flex;align-items:center;gap:4px}.briefing-headline{font-size:var(--t-xl);font-weight:700;color:var(--text-bright);line-height:1.25;margin-bottom:var(--sp-5)}.briefing-stats{display:flex;gap:var(--sp-5);flex-wrap:wrap;margin-bottom:var(--sp-4)}.briefing-stat{display:flex;flex-direction:column;gap:2px}.briefing-stat-val{font-size:var(--t-lg);font-weight:700;color:var(--text-bright);line-height:1}.briefing-stat-label{font-size:var(--t-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.briefing-progress-bar{height:3px;background:var(--border);border-radius:var(--r-pill);overflow:hidden;margin-bottom:var(--sp-5)}.briefing-progress-fill{height:100%;background:linear-gradient(90deg,var(--c-info),var(--c-success));border-radius:var(--r-pill);transition:width .6s cubic-bezier(.34,1.3,.64,1)}.briefing-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.briefing-btn{font-family:inherit;font-size:var(--t-sm);font-weight:600;background:#ffffff0f;color:var(--text);border:1px solid var(--glass-border);border-radius:var(--r-pill);padding:6px 14px;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s}.briefing-btn:hover{background:#ffffff1c;transform:translateY(-1px);box-shadow:var(--sh-sm)}.briefing-btn:active{transform:scale(.96)}.briefing-btn--primary{background:var(--c-info-dim);color:var(--c-info);border-color:var(--c-info-ring)}.briefing-btn--primary:hover{background:#00d2ff33;box-shadow:0 0 16px var(--c-info-ring)}[data-theme=light] .briefing-card{background:#ffffffb8}[data-theme=light] .briefing-btn{background:#0000000a;border-color:#0000001a}[data-theme=light] .briefing-btn:hover{background:#00000012}.home-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(max-width:480px){.home-grid{grid-template-columns:1fr}}.home-grid>.home-card{animation:card-in .38s cubic-bezier(.34,1.4,.64,1) backwards}.home-grid>.home-card:nth-child(1){animation-delay:30ms}.home-grid>.home-card:nth-child(2){animation-delay:70ms}.home-grid>.home-card:nth-child(3){animation-delay:.11s}.home-grid>.home-card:nth-child(4){animation-delay:.15s}.home-grid>.home-card:nth-child(5){animation-delay:.19s}.home-grid>.home-card:nth-child(6){animation-delay:.23s}.home-grid>.home-card:nth-child(7){animation-delay:.27s}.home-grid>.home-card:nth-child(8){animation-delay:.31s}.home-grid>.home-card:nth-child(9){animation-delay:.35s}.home-grid>.home-card:nth-child(10){animation-delay:.39s}@keyframes card-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.home-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--r-lg);padding:14px;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease,border-color .18s ease}.home-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08) 50%,transparent);pointer-events:none}.home-card[data-action=navigate],.home-card[data-action=toggleScratchpad],.home-card[style*="cursor:pointer"],.home-card[data-action=openPlanner]{cursor:pointer}.home-card[data-action=navigate]:hover,.home-card[data-action=toggleScratchpad]:hover,.home-card[data-action=openPlanner]:hover{transform:translateY(-3px) scale(1.01);box-shadow:var(--sh-glow),var(--sh-md);border-color:#00d2ff2e}.home-card[data-action=navigate]:active,.home-card[data-action=toggleScratchpad]:active,.home-card[data-action=openPlanner]:active{transform:scale(.97);transition-duration:.08s}.home-card--wide{grid-column:span 2}@media(max-width:480px){.home-card--wide{grid-column:span 1}}.home-card-label{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:1.6px;color:var(--dim);font-weight:600;margin-bottom:10px}.home-card-big{font-size:14px;font-weight:700;color:var(--text-bright);margin-bottom:4px;line-height:1.3}.home-card-sub{font-size:10px;color:var(--muted);margin-bottom:2px}.home-card-empty{font-size:var(--t-sm);color:var(--dim);font-style:italic}.home-card-hint{font-size:var(--t-xs);color:var(--dim);margin-top:4px;opacity:.8}.home-card-progress-row{display:flex;align-items:center;gap:14px}.home-card-progress-info{flex:1}.progress-ring{flex-shrink:0}.home-dl-item{display:flex;align-items:center;gap:8px;font-size:11px;padding:3px 0}.home-dl-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.home-dl-name{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-meal-type{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--dim);margin-top:6px;margin-bottom:2px}.home-meal-type:first-of-type{margin-top:0}.home-meal-items{font-size:11px;color:var(--text)}.home-spark{display:flex;align-items:flex-end;gap:4px;height:40px;margin-bottom:8px}.home-spark-bar{flex:1;min-width:6px;border-radius:2px;transition:height .3s}.home-scratch-line{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1px 0}.ideal-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.ideal-compare-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px;text-align:center}.ideal-compare-day{font-size:11px;font-weight:700;letter-spacing:1px;margin-bottom:8px}.ideal-compare-row{display:flex;align-items:center;gap:6px;margin-bottom:8px}.ideal-compare-col{flex:1;text-align:center}.ideal-compare-label{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.ideal-compare-val{font-size:13px;font-weight:600;color:var(--text)}.ideal-compare-sep{width:1px;height:24px;background:var(--border);flex-shrink:0}.ideal-compare-bar{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:4px}.ideal-compare-fill{height:100%;border-radius:2px;transition:width .5s}.ideal-compare-pct{font-size:11px;font-weight:600}.tab-ideal-dot{display:inline-block;width:5px;height:5px;border-radius:50%;margin-left:4px;vertical-align:middle;flex-shrink:0}@keyframes viewFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.view-page,.app>div:first-child{animation:viewFadeIn .18s ease-out}.view-section .view-section-header{cursor:default}.view-section .view-section-header:hover{background:none!important}.view-section .panel-arrow{display:none}.day-empty-state{text-align:center;padding:48px 24px;background:var(--glass-bg);border:1px dashed rgba(255,255,255,.1);border-radius:var(--r-xl);margin:16px 0;animation:empty-in .38s cubic-bezier(.34,1.2,.64,1) backwards}[data-theme=light] .day-empty-state{background:#fff9}.day-empty-icon{font-size:40px;margin-bottom:var(--sp-4);display:block;animation:empty-icon-float 3s ease-in-out infinite}.day-empty-title{font-size:var(--t-lg);font-weight:700;color:var(--text-bright);margin-bottom:var(--sp-2)}.day-empty-sub{font-size:var(--t-sm);color:var(--muted);margin-bottom:var(--sp-5);line-height:1.7;max-width:260px;margin-left:auto;margin-right:auto}.day-empty-actions{display:flex;gap:var(--sp-3);justify-content:center;flex-wrap:wrap}.review-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:28px;padding:0 8px}.review-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.review-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;background:var(--surface);border:2px solid var(--border2);color:var(--dim);transition:border-color .2s,background .2s,color .2s}.review-step.active .review-step-dot{background:var(--accent);border-color:var(--accent);color:#09090b}.review-step.done .review-step-dot{background:#00e676;border-color:#00e676;color:#09090b}.review-step-label{font-size:9px;color:var(--dim);font-weight:500}.review-step.active .review-step-label{color:var(--accent)}.review-step.done .review-step-label{color:#00e676}.review-step-line{flex:1;height:2px;background:var(--border);min-width:16px;max-width:48px;margin:0 4px 16px;transition:background .2s}.review-step-line.done{background:#00e676}.review-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.review-section-title{font-size:13px;font-weight:700;color:var(--text-bright);margin-bottom:16px}.review-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}@media(max-width:480px){.review-stat-grid{grid-template-columns:repeat(2,1fr)}}.review-stat-card{text-align:center;padding:12px 8px;background:var(--bg);border:1px solid var(--border);border-radius:8px}.review-stat-val{font-size:18px;font-weight:700;color:var(--text-bright);margin-bottom:2px}.review-stat-label{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px}.review-trend{display:flex;align-items:flex-end;gap:6px;height:56px;padding:4px 0}.review-trend-bar{flex:1;min-width:12px;border-radius:3px;position:relative;transition:height .3s}.review-trend-label{position:absolute;top:-14px;left:50%;transform:translate(-50%);font-size:8px;color:var(--dim);white-space:nowrap}.review-day-row{display:flex;align-items:center;gap:10px;padding:6px 0}.review-day-name{font-size:11px;font-weight:600;width:36px;flex-shrink:0}.review-day-bar-wrap{flex:1;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.review-day-bar{height:100%;border-radius:3px;transition:width .5s}.review-day-stat{font-size:10px;color:var(--muted);width:70px;text-align:right;flex-shrink:0}.review-subsection{margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}.review-subsection-title{font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px}.review-task-row{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:11px}.review-task-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.review-task-text{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-task-day{color:var(--dim);font-size:9px;flex-shrink:0}.review-subject-row{display:flex;align-items:center;gap:8px;padding:6px 0}.review-subject-swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.review-subject-name{font-size:11px;color:var(--text);width:70px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-subject-pct{font-size:10px;font-weight:600;width:80px;text-align:right;flex-shrink:0}.review-suggestion{font-size:11px;color:var(--muted);padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;margin-bottom:6px;line-height:1.5}.review-field{margin-bottom:16px}.review-field:last-child{margin-bottom:0}.review-field-label{font-size:11px;font-weight:600;color:var(--text);margin-bottom:6px;display:block}.review-textarea{width:100%;font-family:inherit;font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--border2);border-radius:8px;padding:10px 12px;min-height:60px;resize:vertical;outline:2px solid transparent;transition:border-color .15s;box-sizing:border-box}.review-textarea:focus{border-color:var(--accent)}.review-textarea-lg{min-height:100px}.review-nav{display:flex;justify-content:space-between;margin-top:20px}.review-saved-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-bottom:10px;text-align:left}.review-saved-label{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.review-saved-text{font-size:12px;color:var(--text);line-height:1.6;white-space:pre-wrap}.gsearch-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);z-index:200;display:flex;justify-content:center;align-items:flex-start;padding-top:min(18vh,120px);animation:gsearch-in .18s cubic-bezier(.34,1.3,.64,1)}@keyframes gsearch-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}.gsearch-box{width:min(580px,92vw);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--r-xl);box-shadow:var(--sh-lg),0 0 0 1px #ffffff0a;overflow:hidden}[data-theme=light] .gsearch-box{background:#ffffffe0}.gsearch-input-row{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--glass-border)}.gsearch-icon{font-size:16px;flex-shrink:0;opacity:.5}.gsearch-input{flex:1;font-family:inherit;font-size:var(--t-md);background:none;border:none;outline:2px solid transparent;color:var(--text-bright)}.gsearch-input::placeholder{color:var(--muted)}.gsearch-kbd{font-family:inherit;font-size:var(--t-xs);padding:2px 6px;background:#ffffff0f;border:1px solid var(--glass-border);border-radius:var(--r-sm);color:var(--muted)}.gsearch-results{max-height:380px;overflow-y:auto;padding:6px 0}.gsearch-result{display:flex;align-items:center;gap:10px;padding:8px 16px;cursor:pointer;transition:background .1s}.gsearch-result:hover,.gsearch-result.active{background:#ffffff0f}[data-theme=light] .gsearch-result:hover,[data-theme=light] .gsearch-result.active{background:#0000000d}.gsearch-result-icon{width:20px;text-align:center;font-size:12px;flex-shrink:0}.gsearch-result-body{flex:1;min-width:0}.gsearch-result-text{font-size:12px;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gsearch-result-sub{font-size:10px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gsearch-result-type{font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:var(--dim);flex-shrink:0;padding:2px 6px;background:var(--bg);border-radius:4px}.gsearch-empty{text-align:center;padding:20px 16px;font-size:var(--t-sm);color:var(--muted);line-height:1.6}.gsearch-empty kbd{font-family:inherit;background:#ffffff14;border:1px solid var(--glass-border);border-radius:4px;padding:1px 5px;font-size:var(--t-xs)}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;font-size:8px;font-weight:700;background:#ffab00;color:#09090b;border-radius:7px;position:absolute;top:-4px;right:-6px;line-height:1}.inbox-capture-row{display:flex;gap:8px;margin-bottom:20px}.inbox-capture-input{flex:1;font-family:inherit;font-size:13px;background:var(--surface);color:var(--text);border:1px solid var(--border2);border-radius:8px;padding:10px 14px;outline:2px solid transparent;transition:border-color .15s}.inbox-capture-input:focus{border-color:var(--accent)}.inbox-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.inbox-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:10px;transition:border-color .15s}.inbox-item:hover{border-color:var(--border2)}.inbox-item-main{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px}.inbox-item-text{font-size:13px;font-weight:500;color:var(--text);line-height:1.4;flex:1}.inbox-item-time{font-size:10px;color:var(--dim);flex-shrink:0;margin-top:2px}.inbox-item-actions{display:flex;gap:12px;flex-wrap:wrap}.inbox-triage-group{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.inbox-day-select,.inbox-date-input{font-size:10px;padding:4px 6px}.inbox-empty{text-align:center;padding:56px 24px 48px;animation:empty-in .4s cubic-bezier(.34,1.2,.64,1) backwards}@keyframes empty-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.inbox-empty-icon{font-size:48px;margin-bottom:var(--sp-4);display:block;filter:grayscale(.3);animation:empty-icon-float 3s ease-in-out infinite}@keyframes empty-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.inbox-empty-title{font-size:var(--t-lg);font-weight:700;color:var(--text-bright);margin-bottom:var(--sp-2)}.inbox-empty-sub{font-size:var(--t-sm);color:var(--muted);line-height:1.7;max-width:280px;margin:0 auto}.inbox-empty-sub kbd{font-family:inherit;background:var(--surface);border:1px solid var(--border2);border-radius:var(--r-sm);padding:1px 5px;font-size:var(--t-xs)}.habits-today-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.habit-check-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 10px;min-width:72px;background:var(--surface);border:2px solid var(--border);border-radius:10px;cursor:pointer;font-family:inherit;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);position:relative}.habit-check-btn:hover{border-color:var(--habit-color, var(--accent))}.habit-check-btn.done{background:color-mix(in srgb,var(--habit-color, #00d2ff) 15%,var(--surface));border-color:var(--habit-color, var(--accent))}.habit-check-icon{font-size:20px}.habit-check-name{font-size:9px;color:var(--dim);font-weight:500;text-align:center;max-width:68px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-check-mark{position:absolute;top:4px;right:6px;font-size:9px;font-weight:700;color:var(--habit-color, var(--accent))}.habits-add-section{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:20px}.habits-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.habit-preset-btn{font-family:inherit;font-size:11px;padding:5px 10px;border-radius:20px;border:1px solid;background:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.habit-preset-btn:hover{opacity:.8}.habits-custom-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.habit-streak-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:10px}.habit-streak-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.habit-streak-icon{font-size:16px;flex-shrink:0}.habit-streak-name{font-size:13px;font-weight:600;color:var(--text);flex:1}.habit-streak-stats{font-size:10px;color:var(--dim)}.habit-mini-grid{display:flex;flex-wrap:wrap;gap:3px}.habit-grid-cell{width:10px;height:10px;border-radius:2px;background:var(--border);transition:background .1s}.habit-mini-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.habit-mini-pill{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:14px;background:var(--border);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);border:2px solid transparent}.habit-mini-pill.done{background:color-mix(in srgb,var(--habit-color, #00d2ff) 25%,var(--surface));border-color:var(--habit-color, var(--accent))}.habits-streak-list{margin-top:8px}.planner-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:150;display:flex;justify-content:center;align-items:center;padding:16px;animation:fadeIn .15s ease-out}.planner-box{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;width:min(500px,100%);max-height:80vh;overflow-y:auto;box-shadow:0 16px 48px #00000080}.planner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.planner-title{font-size:15px;font-weight:700;color:var(--text-bright)}.planner-close{font-family:inherit;font-size:14px;background:none;border:none;color:var(--dim);cursor:pointer;padding:4px 8px}.planner-steps{display:flex;align-items:center;gap:4px;margin-bottom:20px}.planner-step-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;background:var(--bg);border:2px solid var(--border2);color:var(--dim);flex-shrink:0}.planner-step-dot.active{background:var(--accent);border-color:var(--accent);color:#09090b}.planner-step-dot.done{background:#00e676;border-color:#00e676;color:#09090b}.planner-step-line{flex:1;height:2px;background:var(--border);transition:background .2s}.planner-step-line.done{background:#00e676}.planner-step-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:12px}.planner-empty{font-size:12px;color:var(--dim);padding:16px 0;text-align:center}.planner-inbox-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.planner-inbox-item:last-child{border-bottom:none}.planner-item-text{font-size:12px;color:var(--text);flex:1}.planner-item-btns{display:flex;gap:4px;flex-shrink:0}.planner-task-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.planner-task-row:last-child{border-bottom:none}.planner-mustdo-btn{font-family:inherit;font-size:14px;width:28px;height:28px;border-radius:6px;border:1px solid var(--border2);background:none;color:var(--dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap);flex-shrink:0}.planner-mustdo-btn.active{background:#ffab0022;border-color:#ffab00;color:#ffab00}.planner-task-text{font-size:12px;color:var(--text);flex:1}.planner-save-row{margin-top:12px}.planner-nav{display:flex;justify-content:space-between;margin-top:20px;padding-top:12px;border-top:1px solid var(--border)}.time-tracker-bar{position:fixed;bottom:84px;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid #00d2ff44;border-radius:30px;padding:8px 16px;display:flex;align-items:center;gap:10px;z-index:80;box-shadow:0 4px 20px #00d2ff26;animation:fabSlideUp .2s ease-out;font-family:inherit}@media(min-width:769px){.time-tracker-bar{bottom:20px}}.tt-icon{font-size:14px}.tt-time{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent);min-width:45px}.tt-task{font-size:11px;color:var(--muted);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-stop{font-family:inherit;font-size:10px;padding:4px 10px;border-radius:20px;border:1px solid #e9456033;background:#e9456011;color:#e94560;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.tt-stop:hover{background:#e9456022}.theme-preset-grid{display:flex;flex-wrap:wrap;gap:6px}.theme-preset-btn{font-family:inherit;font-size:11px;padding:5px 12px;border-radius:20px;border:1px solid var(--border2);background:var(--bg);color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.theme-preset-btn:hover{border-color:var(--accent);color:var(--text)}.theme-preset-btn.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg));font-weight:600}.accent-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s;padding:0}.accent-swatch:hover{transform:scale(1.2);border-color:#fff}.grades-add-form{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:20px}.grades-form-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.grade-cat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:10px}.grade-cat-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.grade-cat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.grade-cat-name{font-size:13px;font-weight:600;color:var(--text);flex:1}.grade-cat-avg{font-size:12px;font-weight:700}.grade-items{display:flex;flex-direction:column;gap:6px}.grade-item{display:flex;align-items:center;gap:8px;font-size:11px;padding:4px 0}.grade-item-name{flex:1;color:var(--text);font-weight:500}.grade-item-type{color:var(--dim);min-width:50px}.grade-item-date{color:var(--dim);min-width:78px}.grade-item-score{font-weight:600;min-width:80px;text-align:right}.matrix-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}@media(max-width:520px){.matrix-grid{grid-template-columns:1fr}}.matrix-quadrant{border:1px solid;border-radius:10px;padding:14px}.matrix-q-header{display:flex;align-items:baseline;gap:6px;margin-bottom:10px;flex-wrap:wrap}.matrix-q-label{font-size:13px;font-weight:700}.matrix-q-sub{font-size:9px;color:var(--dim);flex:1}.matrix-q-count{font-size:16px;font-weight:700}.matrix-q-tasks{display:flex;flex-direction:column;gap:5px}.matrix-q-empty{font-size:10px;color:var(--dim);padding:4px 0}.matrix-task-item{display:flex;align-items:center;gap:6px;font-size:11px}.matrix-task-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.matrix-task-text{flex:1;color:var(--text)}.matrix-task-day{font-size:9px;color:var(--dim)}.lecture-note-preview{font-size:10px;color:var(--muted);padding:4px 0 0 36px;cursor:pointer;line-height:1.4}.lecture-note-preview:hover{color:var(--accent)}.lecture-note-preview-text{font-style:italic}.lecture-notes-editor{margin:8px 0 8px 36px;border:1px solid var(--border2);border-radius:8px;overflow:hidden;background:var(--surface)}.lecture-markdown-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;border-top:1px solid var(--border)}.lecture-notes-textarea{display:block;width:100%;min-height:80px;font-family:inherit;font-size:11px;background:var(--surface);color:var(--text);border:none;padding:10px 12px;resize:vertical;outline:2px solid transparent;box-sizing:border-box;line-height:1.6}.lecture-notes-textarea--markdown{min-height:180px;border-right:1px solid var(--border);resize:vertical}.lecture-markdown-preview{border:none;border-radius:0;min-height:180px;max-height:320px;background:var(--bg)}.lecture-notes-actions{display:flex;gap:6px;padding:6px 10px;border-top:1px solid var(--border);background:var(--surface)}@media(max-width:640px){.lecture-markdown-grid{grid-template-columns:1fr}.lecture-notes-textarea--markdown{border-right:0;border-bottom:1px solid var(--border)}}[draggable=true]{cursor:grab}[draggable=true]:active{cursor:grabbing;opacity:.7}.drop-zone{min-height:4px;transition:background .1s;border-radius:6px}.drop-zone-active{background:color-mix(in srgb,var(--accent) 8%,transparent)!important;outline:2px dashed var(--accent);outline-offset:2px}.item-blocked-label{font-size:9px;color:#e94560;margin-top:2px;font-weight:500}.item-recurring-badge{font-size:9px;color:var(--dim);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1px 5px;margin-left:4px}.calendar-grid-header,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-day-header{text-align:center;font-size:10px;font-weight:600;color:var(--dim);padding:4px 0;text-transform:uppercase}.cal-cell{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 6px 4px;min-height:48px;cursor:pointer;position:relative;transition:border-color .15s;overflow:hidden}.cal-cell:hover{border-color:var(--accent)}.cal-cell.today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.cal-cell-date{font-size:11px;font-weight:600;color:var(--muted);margin-bottom:4px}.cal-cell.today .cal-cell-date{color:var(--accent)}.cal-month-label{font-size:9px;color:var(--dim)}.cal-cell-bar{height:3px;border-radius:2px;margin-bottom:2px;transition:width .3s}.cal-cell-check{font-size:9px;color:#00e676;font-weight:700}.cal-cell-dots{display:flex;gap:2px;flex-wrap:wrap;margin-top:2px}.cal-dl-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#e94560;flex-shrink:0}.calendar-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;font-size:10px;color:var(--dim)}.cal-legend-item{display:flex;align-items:center;gap:4px}.cal-legend-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.analytics-alert{border:1px solid;border-radius:10px;padding:12px 14px;font-size:12px;font-weight:500;margin-bottom:12px;line-height:1.5}.analytics-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:12px}.analytics-card-title{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.analytics-stats-row{display:flex;gap:16px;flex-wrap:wrap}.analytics-stat{text-align:center;min-width:60px}.analytics-stat-val{font-size:18px;font-weight:700;color:var(--text-bright)}.analytics-stat-label{font-size:9px;color:var(--dim)}.hourly-chart{display:flex;gap:2px;height:48px;align-items:flex-end}.hourly-bar-wrap{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.hourly-bar{width:100%;background:var(--accent);border-radius:2px 2px 0 0;opacity:.6;min-height:2px}.hourly-label{font-size:7px;color:var(--dim);margin-top:2px}.difficulty-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px}.difficulty-cat{flex:1;font-weight:500}.difficulty-stars{color:var(--accent);letter-spacing:1px;font-size:10px}.difficulty-score{font-size:10px;color:var(--dim);min-width:30px;text-align:right}.goal-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.goal-item:last-child{border-bottom:none}.goal-icon{font-size:14px;flex-shrink:0}.goal-info{flex:1;min-width:0}.goal-label{font-size:11px;font-weight:500;color:var(--text);margin-bottom:4px}.goal-bar-wrap{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.goal-bar{height:100%;border-radius:2px;transition:width .3s}.goal-stat{font-size:10px;font-weight:600;min-width:50px;text-align:right}.focus-overlay{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;animation:focus-in .32s cubic-bezier(.34,1.2,.64,1)}@keyframes focus-in{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px)}}.focus-overlay-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 70% at 50% 40%,rgba(0,100,140,.22) 0%,transparent 70%),radial-gradient(ellipse 60% 60% at 20% 80%,rgba(100,0,200,.14) 0%,transparent 65%),#0a0a0d;z-index:0}.focus-overlay-inner{position:relative;z-index:1;text-align:center;max-width:420px;width:100%;padding:var(--sp-7) var(--sp-6);display:flex;flex-direction:column;align-items:center;gap:var(--sp-5)}.focus-overlay-label{font-size:var(--t-xs);font-weight:700;color:var(--c-info);letter-spacing:.2em;text-transform:uppercase}.focus-ring-wrap{position:relative;width:200px;height:200px;flex-shrink:0}.focus-ring-svg{display:block}.focus-ring-fill{transition:stroke-dashoffset 1s linear;filter:drop-shadow(0 0 8px var(--c-info))}.focus-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.focus-overlay-timer{font-size:44px;font-weight:700;color:var(--text-bright);font-family:JetBrains Mono,monospace;letter-spacing:2px;line-height:1}.focus-ring-label{font-size:var(--t-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.focus-overlay-task{font-size:var(--t-lg);font-weight:600;color:var(--text-bright);line-height:1.4;max-width:340px;padding:0 var(--sp-4)}.focus-pomos{font-size:18px;letter-spacing:2px;min-height:24px}.focus-capture-row{display:flex;gap:var(--sp-2);width:100%}.focus-capture-input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-pill);color:var(--text);font-family:inherit;font-size:var(--t-sm);padding:8px 16px;outline:2px solid transparent;transition:border-color .15s,box-shadow .15s}.focus-capture-input::placeholder{color:var(--muted)}.focus-capture-input:focus{border-color:var(--c-info-ring);box-shadow:0 0 0 2px var(--c-info-ring)}.focus-capture-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-pill);color:var(--text);font-size:var(--t-md);padding:8px 14px;cursor:pointer;transition:background .15s}.focus-capture-btn:hover{background:#ffffff1f}.focus-overlay-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap;justify-content:center}.focus-action-btn{font-family:inherit;font-size:var(--t-sm);font-weight:600;background:#ffffff0f;color:var(--text);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-pill);padding:10px 24px;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s}.focus-action-btn:hover{background:#ffffff1f;transform:translateY(-1px)}.focus-action-btn:active{transform:scale(.96)}.focus-action-btn--done{background:var(--c-success-dim);color:var(--c-success);border-color:var(--c-success-ring)}.focus-action-btn--done:hover{background:#00e67633;box-shadow:0 0 16px var(--c-success-ring)}.energy-selector{display:flex;gap:6px;margin:8px 0}.energy-btn{font-size:20px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.energy-btn:hover{background:var(--border);transform:scale(1.15)}.blocker-picker{max-height:200px;overflow-y:auto}.blocker-picker .defer-day-btn.active{background:#e9456011}.recurring-section{border-left:2px solid #00d2ff44}.recurring-task{opacity:.85}.recurring-task .item-text:after{content:" 🔁";font-size:9px}.habit-check-row{display:flex;align-items:center;gap:4px}.habit-freeze-btn{font-size:12px;padding:4px 6px;background:var(--surface);border:1px solid #00bcd433;border-radius:6px;cursor:pointer;opacity:.6;transition:opacity .15s}.habit-freeze-btn:hover{opacity:1}.habit-streak-badge{font-size:10px;color:#ff9100;font-weight:600}.habit-check-btn.frozen{background:#00bcd411!important;border-color:#00bcd4!important}.matrix-task-interactive:hover{background:var(--surface)}.matrix-task-day{cursor:pointer;font-size:9px;color:var(--accent)}.matrix-task-day:hover{text-decoration:underline}.gsearch-actions{display:flex;gap:4px;margin-right:6px;flex-shrink:0}.gsearch-action-btn{font-size:11px;padding:2px 8px;background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;color:var(--text);transition:border-color .1s,color .1s,background .1s}.gsearch-action-btn:hover{border-color:var(--accent);color:var(--accent)}.grade-predictor{margin-top:10px}.home-card-accent{border:1px solid var(--accent)33;background:var(--accent)08}.week-day.drop-zone-active{outline:2px dashed var(--accent);outline-offset:-2px}::view-transition-old(root){animation:vt-fade-out var(--dur-normal) var(--ease-dramatic)}::view-transition-new(root){animation:vt-fade-in var(--dur-normal) var(--ease-dramatic)}@keyframes vt-fade-out{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(.98) translateY(4px);filter:blur(1px)}}@keyframes vt-fade-in{0%{opacity:0;transform:scale(.97) translateY(10px);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}:root[data-nav-dir=forward] ::view-transition-old(root){animation:vt-slide-out-left var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=forward] ::view-transition-new(root){animation:vt-slide-in-right var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=back] ::view-transition-old(root){animation:vt-slide-out-right var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=back] ::view-transition-new(root){animation:vt-slide-in-left var(--dur-normal) var(--ease-dramatic)}@keyframes vt-slide-out-left{0%{opacity:1;transform:translate(0);filter:blur(0)}to{opacity:0;transform:translate(-8%) scale(.97);filter:blur(2px)}}@keyframes vt-slide-in-right{0%{opacity:0;transform:translate(12%) scale(.97);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes vt-slide-out-right{0%{opacity:1;transform:translate(0);filter:blur(0)}to{opacity:0;transform:translate(8%) scale(.97);filter:blur(2px)}}@keyframes vt-slide-in-left{0%{opacity:0;transform:translate(-12%) scale(.97);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.dashboard-edit-handle{cursor:grab;color:var(--dim);font-size:14px;padding:4px}.fc-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;min-height:180px;padding:28px 24px;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;transition:transform .15s,box-shadow .15s;position:relative}.fc-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.fc-card-side{width:100%;text-align:center}.fc-card-label{font-size:10px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:14px}.fc-card-text{font-size:18px;font-weight:600;color:var(--text-bright);line-height:1.4;word-break:break-word}.fc-card--flipped{background:var(--surface);border-color:var(--accent)}.fc-tap-hint{font-size:10px;color:var(--dim);margin-top:14px;opacity:.7}.pomodoro-bar{position:fixed;bottom:calc(var(--tab-height, 60px) + 4px);left:0;right:0;background:var(--surface);border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;padding:8px 16px;z-index:900;font-size:13px;overflow:hidden}.pomodoro-bar .tt-icon{font-size:14px}.pomodoro-bar .tt-time{font-weight:700;color:var(--text-bright);min-width:44px}.pomodoro-bar .tt-task{flex:1;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pomodoro-bar .tt-stop{font-family:inherit;font-size:11px;font-weight:600;background:none;border:1px solid var(--border);border-radius:8px;padding:4px 10px;cursor:pointer;color:var(--text)}.heatmap-legend{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--dim);margin-top:8px}.heatmap-cell{width:20px;height:20px;border-radius:3px;cursor:default;transition:transform .1s}.heatmap-cell:hover{transform:scale(1.3)}.report-auto-row{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:11px;color:var(--muted);cursor:pointer}.report-auto-row input{accent-color:var(--accent)}.achievement-hero{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--accent) 28%,var(--border))!important;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 13%,transparent),transparent 42%),linear-gradient(180deg,var(--surface),var(--bg))}.achievement-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 10%,transparent) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,transparent 82%);mask-image:linear-gradient(90deg,transparent,#000 18%,transparent 82%);opacity:.38}.achievement-hero-top{position:relative;display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.achievement-xp-line{font-size:10px;color:var(--muted);margin-top:3px}.achievement-shields{font-size:13px;font-weight:800;color:var(--text-bright);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border2));border-radius:8px;padding:6px 9px;background:color-mix(in srgb,var(--accent) 9%,var(--bg))}.achievement-xp-track,.challenge-meter{height:6px;background:var(--border);border-radius:8px;overflow:hidden}.achievement-xp-fill,.challenge-meter-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--c-success));transition:width .55s cubic-bezier(.34,1.3,.64,1)}.achievement-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.achievement-card{background:color-mix(in srgb,var(--surface2) 76%,transparent);border:1px solid var(--border);border-radius:8px;padding:12px;min-width:0}.achievement-card-kicker{font-size:9px;color:var(--dim);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}.achievement-card-title{font-size:13px;font-weight:800;color:var(--text-bright);margin-bottom:5px}.achievement-card-copy{color:var(--muted);font-size:11px;line-height:1.5;min-height:34px}.challenge-meter{margin:10px 0 8px;height:5px}.challenge-row,.personal-best-row,.achievement-event{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted)}.personal-best-row,.achievement-event{padding:5px 0;border-bottom:1px solid var(--border)}.personal-best-row:last-child,.achievement-event:last-child{border-bottom:0}.personal-best-row strong,.achievement-event strong{color:var(--text);font-size:10px;text-align:right}.challenge-claimed{color:var(--c-success);border:1px solid var(--c-success-ring);background:var(--c-success-dim);border-radius:8px;padding:3px 8px;font-size:9px;text-transform:uppercase;letter-spacing:.6px}.achievement-empty{font-size:11px;color:var(--dim);line-height:1.6}.achievement-panel{overflow:hidden}.achievement-badge-strip{display:flex;flex-wrap:wrap;gap:8px}.badge-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:var(--bg);border-radius:10px;border:1px solid var(--border);min-width:60px;text-align:center;transition:transform .15s}.badge-card:hover{transform:scale(1.08)}.badge-icon{font-size:24px}.badge-name{font-size:9px;font-weight:600;color:var(--text)}.badge-ago{font-size:8px;color:var(--dim)}.achievement-celebration{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at center,color-mix(in srgb,var(--accent) 24%,transparent),transparent 52%);animation:achievementFade 1.65s ease-out forwards}.achievement-celebration-card{border:1px solid color-mix(in srgb,var(--accent) 45%,white);background:color-mix(in srgb,var(--surface) 88%,black);border-radius:8px;padding:22px 26px;text-align:center;box-shadow:0 24px 80px #0000007a,0 0 40px color-mix(in srgb,var(--accent) 24%,transparent);animation:achievementPop .58s cubic-bezier(.34,1.56,.64,1)}.achievement-celebration-title{font-size:18px;font-weight:900;color:var(--text-bright);margin-bottom:5px}.achievement-celebration-sub{font-size:11px;color:var(--muted)}@keyframes achievementPop{0%{transform:translateY(18px) scale(.92);opacity:0}to{transform:none;opacity:1}}@keyframes achievementFade{0%,70%{opacity:1}to{opacity:0}}@media(max-width:760px){.achievement-grid{grid-template-columns:1fr}}#conflict-modal-overlay{animation:fadeIn .2s ease}.nav-overflow-drawer{position:fixed;bottom:calc(var(--tab-height, 60px) + 8px);left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:8px 4px 12px;z-index:800;min-width:280px;max-width:380px;box-shadow:0 -4px 24px #0006;animation:slideInFromBottom .18s ease}@keyframes slideInFromBottom{0%{transform:translate(-50%) translateY(16px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.nav-overflow-header{display:flex;align-items:center;justify-content:space-between;padding:4px 16px 10px;border-bottom:1px solid var(--border);margin-bottom:8px}.nav-overflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:0 8px}.nav-overflow-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:10px;text-decoration:none;color:var(--text);font-family:inherit;font-size:10px;transition:background .12s}.nav-overflow-item:hover{background:var(--bg)}.nav-overflow-item.active{color:var(--accent)}.gpa-ring-wrap{display:flex;align-items:center;justify-content:center;padding:24px}}@layer base{:root{--font-display: "DM Serif Display", Georgia, "Times New Roman", serif;--font-ui: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Iowan Old Style", "Charter", Georgia, serif;--font-reading: "Iowan Old Style", "Charter", Georgia, serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", "Cascadia Code", monospace;--t-xs: .6875rem;--t-sm: .8125rem;--t-md: .9375rem;--t-lg: 1.125rem;--t-xl: 1.375rem;--t-2xl: 1.75rem;--t-3xl: 2.375rem;--line-display: 1.15;--line-ui: 1.3;--line-body: 1.62;--ls-tight: -.02em;--ls-normal: 0;--ls-wide: .04em;--ls-wider: .08em;--ls-widest: .12em;--render-surface-min: 180px;color-scheme:dark;--bg: #0b0c0a;--surface: #11120f;--surface2: #171916;--border: #2d3029;--border2: #414638;--text: #ecebe3;--text-bright: #fbfaf2;--muted: #aaa99f;--dim: #8d8e83;--faint: #3c3f35;--surface-0: #11120f;--surface-1: #171916;--surface-2: #20231e;--surface-3: #292d25;--text-primary: #ecebe3;--text-secondary: #aaa99f;--text-tertiary: #8d8e83;--text-ghost: #51554a;--accent: #39c6a0;--accent-hover: #62d6b7;--accent-dim: rgba(57, 198, 160, .13);--accent-ring: rgba(57, 198, 160, .32);--accent-contrast: #06110d;--accent-gradient: linear-gradient(135deg, #39c6a0, #8fcf63);--success: #79c267;--success-dim: rgba(121, 194, 103, .12);--success-ring: rgba(121, 194, 103, .28);--warning: #e7b84d;--warning-dim: rgba(231, 184, 77, .12);--warning-ring: rgba(231, 184, 77, .3);--danger: #e36f62;--danger-dim: rgba(227, 111, 98, .12);--danger-ring: rgba(227, 111, 98, .3);--c-success: var(--success);--c-success-dim: var(--success-dim);--c-success-ring: var(--success-ring);--c-warning: var(--warning);--c-warning-dim: var(--warning-dim);--c-warning-ring: var(--warning-ring);--c-danger: var(--danger);--c-danger-dim: var(--danger-dim);--c-danger-ring: var(--danger-ring);--c-info: #78b7c5;--c-info-dim: rgba(120, 183, 197, .12);--c-info-ring: rgba(120, 183, 197, .3);--c-purple: #b9aa78;--c-purple-dim: rgba(185, 170, 120, .12);--c-purple-ring: rgba(185, 170, 120, .3);--c-orange: #dc9557;--c-orange-dim: rgba(220, 149, 87, .12);--c-orange-ring: rgba(220, 149, 87, .3);--cat-1: #818cf8;--cat-2: #fb923c;--cat-3: #34d399;--cat-4: #f472b6;--cat-5: #38bdf8;--cat-6: #a78bfa;--cat-7: #fbbf24;--cat-8: #4ade80;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--r-sm: 4px;--r-md: 8px;--r-lg: 8px;--r-xl: 8px;--r-pill: 8px;--sh-sm: 0 1px 0 rgba(255, 255, 255, .04), 0 8px 20px rgba(0, 0, 0, .2);--sh-md: 0 1px 0 rgba(255, 255, 255, .05), 0 14px 34px rgba(0, 0, 0, .28);--sh-lg: 0 1px 0 rgba(255, 255, 255, .06), 0 22px 56px rgba(0, 0, 0, .36);--sh-glow: 0 0 24px rgba(57, 198, 160, .16);--glass-bg: rgba(17, 18, 15, .84);--glass-border: rgba(236, 235, 227, .12);--glass-blur: blur(18px) saturate(140%);--noise-opacity: .024;--toast-shadow: rgba(0, 0, 0, .5);--command-grid: color-mix(in srgb, var(--text-primary) 4%, transparent);--command-rail: color-mix(in srgb, var(--accent) 42%, var(--border));--bottom-chrome-height: 66px;--app-max-width: 1220px;--app-pad-x: clamp(24px, 4vw, 56px);--app-pad-top: 24px;--app-pad-bottom: 80px;--ease-snap: cubic-bezier(.2, 0, 0, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.2, .64, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1);--ease-dramatic: cubic-bezier(.16, 1, .3, 1);--dur-instant: 80ms;--dur-fast: .15s;--dur-normal: .24s;--dur-slow: .36s;--dur-dramatic: .52s}[data-theme=light]{color-scheme:light;--bg: #f6f7f3;--surface: #ffffff;--surface2: #eef0eb;--border: #d5dbcf;--border2: #b8c2b2;--text: #191b17;--text-bright: #090a08;--muted: #54594d;--dim: #697062;--faint: #c1cabb;--surface-0: #ffffff;--surface-1: #eef0eb;--surface-2: #e2e6dd;--surface-3: #d5dbcf;--text-primary: #191b17;--text-secondary: #54594d;--text-tertiary: #697062;--text-ghost: #a5b09d;--accent: #087f6d;--accent-hover: #056c5c;--accent-dim: rgba(8, 127, 109, .1);--accent-ring: rgba(8, 127, 109, .28);--accent-contrast: #f7fbf7;--accent-gradient: linear-gradient(135deg, #087f6d, #5f8d22);--success: #4d8f31;--success-dim: rgba(77, 143, 49, .11);--success-ring: rgba(77, 143, 49, .26);--warning: #9a6614;--warning-dim: rgba(154, 102, 20, .12);--warning-ring: rgba(154, 102, 20, .28);--danger: #a84238;--danger-dim: rgba(168, 66, 56, .11);--danger-ring: rgba(168, 66, 56, .26);--c-info: #307b8d;--c-info-dim: rgba(48, 123, 141, .1);--c-info-ring: rgba(48, 123, 141, .24);--c-purple: #776835;--c-purple-dim: rgba(119, 104, 53, .12);--c-purple-ring: rgba(119, 104, 53, .26);--c-orange: #a15e20;--c-orange-dim: rgba(161, 94, 32, .12);--c-orange-ring: rgba(161, 94, 32, .26);--cat-1: #6366f1;--cat-2: #c45313;--cat-3: #057a57;--cat-4: #b92367;--cat-5: #02779f;--cat-6: #6d32c8;--cat-7: #a55f0f;--cat-8: #16863e;--sh-sm: 0 1px 0 rgba(255, 255, 255, .65), 0 6px 18px rgba(25, 27, 23, .08);--sh-md: 0 1px 0 rgba(255, 255, 255, .7), 0 12px 30px rgba(25, 27, 23, .1);--sh-lg: 0 1px 0 rgba(255, 255, 255, .72), 0 18px 46px rgba(25, 27, 23, .13);--sh-glow: 0 0 24px rgba(8, 127, 109, .14);--glass-bg: rgba(255, 255, 255, .88);--glass-border: rgba(25, 27, 23, .12);--glass-blur: blur(18px) saturate(130%);--noise-opacity: .018;--toast-shadow: rgba(25, 27, 23, .14);--command-grid: color-mix(in srgb, var(--text-primary) 6%, transparent)}.app.font-large{--t-xs: .8125rem;--t-sm: .9375rem;--t-md: 1.0625rem;--t-lg: 1.25rem;--t-xl: 1.5625rem;--t-2xl: 1.9375rem}body{font-family:var(--font-ui);font-size:var(--t-md);line-height:var(--line-ui);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"liga" 1}input,textarea,select,button{font-family:inherit}.view-page-title,.panel-title,h1{font-family:var(--font-display);font-weight:400;line-height:var(--line-display);letter-spacing:var(--ls-tight)}h2,h3,h4{font-family:var(--font-ui);font-weight:760;line-height:var(--line-ui);letter-spacing:0}.body-text,.info p,.item-hint,.item-note,.markdown-body,.markdown-preview,.review-saved-text,.review-textarea,.lecture-notes-textarea,.scratchpad-area,.sync-info,.home-card-hint,.goal-label,.meal-card,.deadline-name{font-family:var(--font-body);line-height:var(--line-body);letter-spacing:0}.markdown-body,.markdown-preview,.review-saved-text,.review-textarea,.lecture-notes-textarea,.scratchpad-area{font-size:var(--t-sm)}.header-title,.home-card-label,.home-card-big,.analytics-card-title,.badge-name,.item-cat,.btab-label,.tab,.data-btn,.view-btn,.settings-section-label,.settings-row label,.sidebar-link,.nav-group-label,.section-label,.view-page-sub{font-family:var(--font-ui)}.item-est,.stat-num,.timer-display,.pomodoro-time,.gpa-num,.week-num,.progress-text,.header-tag,.cal-date-num,.heatmap-val,.grade-val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.app.font-large .body-text,.app.font-large .markdown-body,.app.font-large .markdown-preview,.app.font-large .review-textarea,.app.font-large .lecture-notes-textarea,.app.font-large .scratchpad-area,.app.font-large .info p,.app.font-large .item-hint{font-size:var(--t-md);line-height:1.68}}@layer layout{.app{min-height:var(--render-surface-min);width:min(100%,var(--app-max-width));max-width:var(--app-max-width);box-sizing:border-box;margin:0 auto;padding:var(--app-pad-top) var(--app-pad-x) var(--app-pad-bottom);contain:layout style}.app.is-rendering{cursor:progress}.view-page{content-visibility:auto;contain-intrinsic-size:720px}.panel,.home-card,.analytics-card,.item{contain:layout paint}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;top:10px;left:10px;z-index:10000;transform:translateY(-140%);background:var(--text-bright);color:var(--bg);border:2px solid var(--accent);border-radius:8px;padding:9px 12px;font-family:var(--font-ui);font-size:12px;font-weight:800;text-decoration:none;transition:transform .15s ease}.skip-link:focus{transform:translateY(0)}.hub-layout{display:flex;min-height:100dvh;background:linear-gradient(90deg,color-mix(in srgb,var(--surface-1) 80%,transparent) 0 1px,transparent 1px 100%),var(--bg)}.main-area{flex:1;min-width:0}#sidebar{width:248px;flex:0 0 248px;background:color-mix(in srgb,var(--surface-1) 92%,transparent);border-right:1px solid var(--glass-border);box-shadow:1px 0 color-mix(in srgb,var(--accent) 12%,transparent);display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;overflow-x:hidden;overflow-y:auto;transition:width var(--dur-normal) var(--ease-dramatic),flex-basis var(--dur-normal) var(--ease-dramatic),background var(--dur-fast) var(--ease-smooth);view-transition-name:none}#sidebar.is-collapsed{width:76px;flex-basis:76px}.sidebar-brand{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:var(--space-3);min-height:76px;padding:var(--space-4);border-bottom:1px solid var(--glass-border)}.sidebar-brand-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);font-size:18px}.sidebar-brand-text{min-width:0;transition:opacity var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.sidebar-brand-name{color:var(--text-primary);font-size:var(--t-sm);font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-brand-sub{color:var(--text-tertiary);font-size:var(--t-xs);line-height:1.3;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-collapse-btn{justify-self:end;width:32px;height:32px;border-radius:8px;border-color:var(--glass-border);background:var(--surface-0);color:var(--text-secondary)}.sidebar-collapse-btn:hover{color:var(--accent);background:var(--accent-dim)}.sidebar-nav{flex:1;padding:var(--space-3) var(--space-2);display:flex;flex-direction:column;gap:var(--space-4)}.nav-group{display:flex;flex-direction:column;gap:3px}.nav-group-label{color:var(--text-tertiary);font-size:var(--t-xs);font-weight:700;letter-spacing:0;line-height:1;padding:var(--space-2) var(--space-3) var(--space-1);text-transform:uppercase;transition:opacity var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.sidebar-link{min-height:40px;display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-3);border:1px solid transparent;border-left:0;border-radius:8px;color:var(--text-secondary);font-size:var(--t-sm);font-weight:650;line-height:1;text-decoration:none;white-space:nowrap;overflow:hidden}.sidebar-link:hover{color:var(--text-primary);background:var(--surface-2);border-color:var(--glass-border)}.sidebar-link.active,.sidebar-link[aria-current=page]{color:var(--accent);background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.sidebar-link-icon{position:relative;width:22px;min-width:22px;display:grid;place-items:center;font-size:15px;line-height:1}.sidebar-link-label{min-width:0;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.sidebar-footer{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--glass-border)}.sidebar-footer-btn{min-width:0;height:34px;padding:0 var(--space-2);border-radius:8px;gap:var(--space-1)}.sidebar-footer-label{font-size:var(--t-xs);line-height:1}#sidebar.is-collapsed .sidebar-brand{grid-template-columns:1fr;justify-items:center;gap:var(--space-2)}#sidebar.is-collapsed .sidebar-brand-text,#sidebar.is-collapsed .nav-group-label,#sidebar.is-collapsed .sidebar-link-label,#sidebar.is-collapsed .sidebar-footer-label{opacity:0;transform:translate(-6px);pointer-events:none;width:0}#sidebar.is-collapsed .sidebar-brand-text,#sidebar.is-collapsed .nav-group-label{height:0;overflow:hidden;padding:0}#sidebar.is-collapsed .sidebar-collapse-btn{justify-self:center}#sidebar.is-collapsed .sidebar-nav{align-items:center;padding-inline:var(--space-2);gap:var(--space-3)}#sidebar.is-collapsed .nav-group{width:100%;align-items:center}#sidebar.is-collapsed .sidebar-link{width:44px;justify-content:center;padding:0}#sidebar.is-collapsed .sidebar-footer{grid-template-columns:1fr}.app{view-transition-name:main-content}#bottom-tabs{--tab-count: 1;--active-tab: 0;view-transition-name:none}#bottom-tabs.btab-count-1{--tab-count: 1}#bottom-tabs.btab-count-2{--tab-count: 2}#bottom-tabs.btab-count-3{--tab-count: 3}#bottom-tabs.btab-count-4{--tab-count: 4}#bottom-tabs.btab-count-5{--tab-count: 5}#bottom-tabs.btab-count-6{--tab-count: 6}#bottom-tabs.btab-count-7{--tab-count: 7}#bottom-tabs.btab-active-0{--active-tab: 0}#bottom-tabs.btab-active-1{--active-tab: 1}#bottom-tabs.btab-active-2{--active-tab: 2}#bottom-tabs.btab-active-3{--active-tab: 3}#bottom-tabs.btab-active-4{--active-tab: 4}#bottom-tabs.btab-active-5{--active-tab: 5}#bottom-tabs.btab-active-6{--active-tab: 6}.btab{isolation:isolate}.btab-icon{position:relative}.btab-indicator{display:none}.nav-overflow-title{color:var(--text-tertiary);font-size:var(--t-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}.nav-overflow-icon{position:relative;font-size:20px;line-height:1}.nav-overflow-label{font-size:var(--t-xs);line-height:1.1;margin-top:3px}.nav-overflow-footer{border-top:1px solid var(--border);padding:var(--space-3) var(--space-4)}.nav-overflow-customize{width:100%;font-size:var(--t-xs);color:var(--text-tertiary);border-color:var(--border)}@media(max-width:767px){:root{--app-pad-x: 14px;--app-pad-top: calc(14px + env(safe-area-inset-top, 0px)) ;--app-pad-bottom: calc(var(--bottom-chrome-height) + 44px + env(safe-area-inset-bottom, 0px))}#sidebar{display:none!important}#bottom-tabs{position:fixed;left:0;right:0;bottom:0;height:calc(var(--bottom-chrome-height) + env(safe-area-inset-bottom,0px));padding:6px 8px max(7px,env(safe-area-inset-bottom,0px));display:flex!important;gap:0;background:color-mix(in srgb,var(--glass-bg) 92%,var(--surface-1));backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-left:0;border-right:0;border-bottom:0;border-radius:8px 8px 0 0;box-shadow:0 -8px 24px #0000003d;z-index:200}.btab-indicator{display:block;position:absolute;left:6px;top:6px;bottom:6px;width:calc((100% - 12px) / var(--tab-count));border-radius:8px;background:color-mix(in srgb,var(--surface-2) 86%,var(--accent) 14%);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);transform:translate(calc(var(--active-tab) * 100%));transition:transform var(--dur-normal) var(--ease-dramatic);pointer-events:none}.btab{flex:1 1 0;min-width:0;min-height:52px;padding:4px 0 3px;position:relative;z-index:1;border-radius:8px;color:var(--text-tertiary)}.btab-icon{font-size:18px;line-height:1}.btab.active{color:var(--accent)}.btab.active:before{display:none}.btab.active:after{content:"";position:absolute;left:50%;bottom:5px;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-dim);transform:translate(-50%)}.btab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:700;letter-spacing:0;line-height:1}.nav-overflow-drawer{--sheet-max: 60dvh;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));transform:none;max-width:none;max-height:min(var(--sheet-max),620px);overflow-y:auto;border-radius:16px;background:color-mix(in srgb,var(--glass-bg) 94%,var(--surface-1));backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 -20px 70px #0006;touch-action:pan-y;will-change:transform;transition:max-height var(--dur-normal) var(--ease-dramatic),transform var(--dur-normal) var(--ease-spring),opacity var(--dur-fast) var(--ease-smooth)}.nav-overflow-drawer[data-snap=peek]{--sheet-max: 30dvh}.nav-overflow-drawer[data-snap=comfortable]{--sheet-max: 60dvh}.nav-overflow-drawer[data-snap=full]{--sheet-max: 90dvh}.nav-overflow-drawer:before{content:"";display:block;width:40px;height:4px;margin:2px auto 10px;border-radius:8px;background:var(--surface-3)}.nav-overflow-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.nav-overflow-item{min-height:64px;border-radius:8px}}.nav-customizer-overlay{position:fixed;inset:0;z-index:8000;display:flex;align-items:flex-end;justify-content:center;padding:0 var(--space-3) env(safe-area-inset-bottom,0);background:#0009}.nav-customizer-sheet{width:min(100%,480px);padding:var(--space-5);border:1px solid var(--border);border-bottom:0;border-radius:16px 16px 0 0;background:var(--surface);box-shadow:0 -24px 80px #0006}.nav-customizer-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.nav-customizer-title{color:var(--text-bright);font-size:var(--t-sm);font-weight:700}.nav-customizer-label{margin-bottom:var(--space-2);color:var(--dim);font-size:var(--t-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}.nav-customizer-pills{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.nav-chip{padding:6px 12px;font-size:var(--t-xs)}.nav-chip--pinned{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,transparent)}.nav-customizer-help{margin-top:var(--space-1);color:var(--dim);font-size:var(--t-xs);line-height:1.45}}@layer components{.app-skeleton{display:grid;gap:14px;padding:20px 16px 100px}.skeleton-card,.skeleton-line,.skeleton-pill{position:relative;overflow:hidden;background:color-mix(in srgb,var(--surface2) 74%,var(--bg));border:1px solid var(--border)}.skeleton-card:after,.skeleton-line:after,.skeleton-pill:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text-bright) 7%,transparent),transparent);animation:skeleton-sweep 1.25s ease-in-out infinite}.skeleton-card{min-height:108px;border-radius:8px}.skeleton-card.tall{min-height:180px}.skeleton-line{height:12px;border-radius:6px}.skeleton-line.short{width:42%}.skeleton-line.medium{width:68%}.skeleton-line.long{width:90%}.skeleton-pill{width:64px;height:24px;border-radius:8px}.skeleton-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.view-skeleton{display:grid;gap:12px;animation:skeleton-fade .16s ease-out}.view-skeleton-header{display:grid;gap:8px;margin-bottom:8px}@media(max-width:480px){.skeleton-grid{grid-template-columns:1fr}}}@layer components{.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.5em 1em;font-family:var(--font-ui);font-size:var(--t-sm);font-weight:600;letter-spacing:.02em;border:none;border-radius:var(--r-pill);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:transform var(--dur-instant) var(--ease-snap),background var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth)}.btn:hover{transform:translateY(-1px);box-shadow:var(--sh-sm)}.btn:active{transform:translateY(1px) scale(.98);box-shadow:none;transition-duration:var(--dur-instant)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent-gradient);color:#0a0a0c}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--accent);color:var(--text-primary);background:var(--accent-dim)}.btn-danger{background:var(--danger-dim);color:var(--danger);border:1px solid var(--danger-ring)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-icon{padding:.4em;border-radius:var(--r-md);background:transparent;color:var(--text-tertiary);border:1px solid transparent;position:relative}.btn-icon:hover{background:var(--surface-2);color:var(--text-primary);border-color:var(--border)}.btn-icon[aria-label]:after{content:attr(aria-label);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) scale(.9);background:var(--surface-3);color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:500;padding:4px 8px;border-radius:var(--r-sm);border:1px solid var(--border);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth);z-index:100}.btn-icon[aria-label]:hover:after{opacity:1;transform:translate(-50%) scale(1)}.segmented-control,.seg-control{display:inline-flex;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-lg);padding:3px;gap:2px}.segmented-control .seg-btn,.seg-control .seg-btn{padding:5px 12px;font-family:var(--font-ui);font-size:var(--t-sm);font-weight:500;border-radius:calc(var(--r-lg) - 4px);background:transparent;color:var(--text-secondary);border:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.segmented-control .seg-btn.active,.segmented-control .seg-btn[aria-pressed=true],.seg-control .seg-btn.active,.seg-control .seg-btn[aria-pressed=true]{background:var(--accent-gradient);color:#0a0a0c;box-shadow:var(--sh-sm);font-weight:600}.segmented-control .seg-btn:hover:not(.active),.seg-control .seg-btn:hover:not(.active){background:var(--surface-2);color:var(--text-primary)}.segmented-control .seg-btn:active,.seg-control .seg-btn:active{transform:scale(.95);transition-duration:var(--dur-instant)}.seg-control .seg-btn--focus.active{background:linear-gradient(135deg,var(--c-purple, #a78bfa),var(--accent))}.view-mode-seg{width:100%}.view-mode-seg .seg-btn{flex:1;text-align:center}}@layer components{.card{border-radius:var(--r-lg);border:1px solid var(--glass-border);overflow:hidden;transition:transform var(--dur-normal) var(--ease-smooth),box-shadow var(--dur-normal) var(--ease-smooth)}.card-0{background:var(--surface-0);box-shadow:none}.card-1{background:var(--surface-1);box-shadow:var(--sh-sm)}.card-2{background:var(--surface-2);box-shadow:var(--sh-md)}.card-float{background:var(--surface-2);box-shadow:var(--sh-lg);border:1px solid var(--glass-border)}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}.card-2.card-hover:hover{box-shadow:var(--sh-lg)}.card-accent-stripe{position:relative}.card-accent-stripe:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-gradient);border-radius:var(--r-lg) var(--r-lg) 0 0}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--glass-border)}.card-title{font-family:var(--font-ui);font-size:var(--t-sm);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-secondary)}.card-body{padding:var(--space-4) var(--space-5)}.card-glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--sh-md)}.card-grid-bg{background-image:linear-gradient(var(--glass-border) 1px,transparent 1px),linear-gradient(90deg,var(--glass-border) 1px,transparent 1px);background-size:24px 24px}.card-skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--surface-2) 74%,var(--bg))}.card-skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text-bright) 6%,transparent),transparent);animation:skeleton-sweep 1.4s var(--ease-smooth) infinite}}@layer components{.progress-track{height:6px;background:var(--surface-2);border-radius:var(--r-pill);overflow:hidden;position:relative;box-shadow:inset 0 1px 2px #0003}.progress-track-sm{height:3px}.progress-track-lg{height:10px}.progress-fill{height:100%;background:var(--accent-gradient);border-radius:var(--r-pill);transition:width var(--dur-slow) var(--ease-spring);position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;right:-6px;top:0;bottom:0;width:12px;background:inherit;filter:blur(3px);opacity:.5;border-radius:50%}.progress-fill-success{background:var(--success-gradient)}.progress-fill-warning{background:var(--warning-gradient)}.progress-fill-danger{background:var(--danger-gradient)}.progress-fill.complete:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:progress-complete-flash var(--dur-dramatic) var(--ease-smooth) forwards}@keyframes progress-complete-flash{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-label{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-mono);font-size:var(--t-xs);color:var(--text-tertiary);margin-top:var(--space-1);font-variant-numeric:tabular-nums}.micro-progress{display:inline-block;width:48px;height:3px;background:var(--surface-3);border-radius:var(--r-pill);overflow:hidden;vertical-align:middle}.micro-progress-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width var(--dur-slow) var(--ease-spring)}.ring-progress{transform:rotate(-90deg)}.ring-progress-track{fill:none;stroke:var(--surface-3);stroke-width:3}.ring-progress-fill{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset var(--dur-slow) var(--ease-spring)}}@layer components{.modal-backdrop{position:fixed;inset:0;background:#0a0a0ca6;backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--space-5);animation:backdrop-in var(--dur-normal) var(--ease-smooth) both}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.modal-backdrop.closing{animation:backdrop-in var(--dur-fast) var(--ease-smooth) reverse both}.modal{background:var(--surface-2);border:1px solid var(--glass-border);border-radius:var(--r-xl);box-shadow:var(--sh-lg);width:100%;max-width:480px;max-height:85dvh;overflow-y:auto;position:relative;animation:modal-in var(--dur-slow) var(--ease-spring) both}@keyframes modal-in{0%{opacity:0;transform:scale(.93) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal.closing{animation:modal-in var(--dur-fast) var(--ease-snap) reverse both}.modal-header{padding:var(--space-5) var(--space-6) var(--space-4);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-family:var(--font-display);font-size:var(--t-xl);color:var(--text-primary);font-weight:400}.modal-body{padding:var(--space-5) var(--space-6)}.modal-footer{padding:var(--space-4) var(--space-6) var(--space-5);border-top:1px solid var(--glass-border);display:flex;gap:var(--space-3);justify-content:flex-end}.bottom-sheet{position:fixed;inset-inline:0;bottom:0;background:var(--surface-1);border-radius:var(--r-xl) var(--r-xl) 0 0;border:1px solid var(--glass-border);border-bottom:none;box-shadow:var(--sh-lg);z-index:950;max-height:90dvh;overflow-y:auto;animation:sheet-up var(--dur-slow) var(--ease-spring) both}.bottom-sheet-handle{width:40px;height:4px;background:var(--surface-3);border-radius:var(--r-pill);margin:var(--space-3) auto var(--space-2)}.mobile-sheet-backdrop{display:none}@media(max-width:767px){.mobile-sheet-backdrop{position:fixed;inset:0;z-index:830;display:block;padding:0;border:0;background:#0a0a0c6b;backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%);animation:backdrop-in var(--dur-fast) var(--ease-smooth) both}.action-menu.mobile-action-sheet{--sheet-max: 60dvh;left:max(10px,env(safe-area-inset-left))!important;right:max(10px,env(safe-area-inset-right))!important;bottom:0!important;z-index:840!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);max-height:min(var(--sheet-max),640px);overflow-y:auto;overscroll-behavior:contain;padding:18px var(--space-3) calc(16px + env(safe-area-inset-bottom))!important;border:1px solid var(--glass-border)!important;border-bottom:0!important;border-radius:16px 16px 0 0!important;background:color-mix(in srgb,var(--glass-bg) 94%,var(--surface-1))!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 -24px 80px #00000075!important;touch-action:pan-y;will-change:transform;transition:max-height var(--dur-normal) var(--ease-dramatic),transform var(--dur-normal) var(--ease-spring),opacity var(--dur-fast) var(--ease-smooth)}.action-menu.mobile-action-sheet[data-snap=peek]{--sheet-max: 30dvh}.action-menu.mobile-action-sheet[data-snap=comfortable]{--sheet-max: 60dvh}.action-menu.mobile-action-sheet[data-snap=full]{--sheet-max: 90dvh}.action-menu.mobile-action-sheet:before{content:"";display:block;grid-column:1 / -1;justify-self:center;width:40px;height:4px;margin:0 0 var(--space-2)!important;border-radius:8px;background:var(--surface-3)}.action-menu.mobile-action-sheet .action-btn{min-height:46px;justify-content:center;border-radius:8px;text-align:center}}@keyframes sheet-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}}@layer components{.toast-container{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%);z-index:9000;display:flex;flex-direction:column-reverse;gap:var(--space-2);align-items:center;pointer-events:none;width:min(400px,calc(100vw - var(--space-8)))}.toast-new{display:flex;align-items:flex-start;gap:var(--space-3);background:var(--surface-2);border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:var(--space-3) var(--space-4);pointer-events:all;width:100%;position:relative;overflow:hidden;animation:toast-enter var(--dur-slow) var(--ease-spring) both}@keyframes toast-enter{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-new.exiting{animation:toast-exit var(--dur-normal) var(--ease-snap) both}@keyframes toast-exit{to{opacity:0;transform:translate(20px) scale(.96)}}.toast-new:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:var(--r-sm) 0 0 var(--r-sm)}.toast-new.success:before{background:var(--success)}.toast-new.warning:before{background:var(--warning)}.toast-new.error:before{background:var(--danger)}.toast-new.info:before{background:var(--c-info)}.toast-progress{position:absolute;bottom:0;left:0;height:2px;background:var(--accent);border-radius:0 0 var(--r-lg) var(--r-lg);animation:toast-countdown linear both}.toast-new.success .toast-progress{background:var(--success)}.toast-new.warning .toast-progress{background:var(--warning)}.toast-new.error .toast-progress{background:var(--danger)}@keyframes toast-countdown{0%{width:100%}to{width:0%}}.toast-icon{font-size:var(--t-lg);line-height:1;flex-shrink:0;margin-top:1px}.toast-body{flex:1;min-width:0}.toast-title{font-family:var(--font-ui);font-size:var(--t-sm);font-weight:600;color:var(--text-primary);line-height:var(--line-ui)}.toast-msg{font-family:var(--font-body);font-size:var(--t-xs);color:var(--text-secondary);margin-top:1px;line-height:1.5}.toast-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;border-radius:var(--r-sm);flex-shrink:0;font-size:var(--t-md);line-height:1;transition:color var(--dur-fast) var(--ease-smooth)}.toast-close:hover{color:var(--text-primary)}}@layer components{.badge-mount{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;position:relative}.badge-mount:before{content:"";position:absolute;inset:-3px;border-radius:50%;background:var(--accent-gradient);z-index:-1}.badge-mount:after{content:"";position:absolute;inset:-1px;border-radius:50%;background:var(--surface-1);z-index:-1}.badge-icon{font-size:2rem;line-height:1;position:relative;z-index:1}.badge-mount.locked{filter:grayscale(1) opacity(.4)}.badge-mount.locked:before{background:var(--surface-3)}.badge-mount.unlocking{animation:badge-unlock var(--dur-dramatic) var(--ease-bounce) forwards}@keyframes badge-unlock{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2);opacity:1}80%{transform:scale(.92)}to{transform:scale(1)}}.badge-mount.unlocking:before{animation:badge-ring-explode var(--dur-dramatic) var(--ease-smooth) forwards}@keyframes badge-ring-explode{0%{inset:-3px;opacity:1}to{inset:-20px;opacity:0}}.pill-badge{display:inline-flex;align-items:center;padding:2px 8px;font-family:var(--font-ui);font-size:var(--t-xs);font-weight:600;border-radius:var(--r-pill);line-height:1.4}.pill-badge-accent{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-ring)}.pill-badge-success{background:var(--success-dim);color:var(--success)}.pill-badge-warning{background:var(--warning-dim);color:var(--warning)}.pill-badge-danger{background:var(--danger-dim);color:var(--danger)}.pill-badge-neutral{background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border)}}@layer components{.input{width:100%;font-family:var(--font-ui);font-size:var(--t-md);color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md);padding:.55em .85em;outline:2px solid transparent;transition:border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),background var(--dur-fast) var(--ease-smooth);appearance:none;-webkit-appearance:none}.input::placeholder{color:var(--text-ghost)}.input:hover{border-color:var(--border2);background:var(--surface-2)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);background:var(--surface-2)}.select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235c5c6a' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75em center;padding-right:2em}.checkbox-wrap{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--border2);border-radius:var(--r-sm);background:transparent;cursor:pointer;position:relative;transition:border-color var(--dur-fast) var(--ease-smooth),background var(--dur-fast) var(--ease-smooth);flex-shrink:0}.checkbox-input:checked{background:var(--accent);border-color:var(--accent)}.checkbox-input:checked:after{content:"";position:absolute;left:4px;top:2px;width:6px;height:9px;border:2px solid #0a0a0c;border-left:none;border-top:none;transform:rotate(45deg)}.checkbox-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toggle{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{position:absolute;inset:0;background:var(--surface-3);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth)}.toggle-track:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:var(--text-secondary);border-radius:50%;transition:transform var(--dur-fast) var(--ease-spring)}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track:before{transform:translate(18px);background:#0a0a0c}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.form-label{display:block;font-family:var(--font-ui);font-size:var(--t-xs);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-secondary);margin-bottom:var(--space-2)}.form-hint{font-family:var(--font-body);font-size:var(--t-xs);color:var(--text-tertiary);margin-top:var(--space-1)}.form-error{font-family:var(--font-ui);font-size:var(--t-xs);color:var(--danger);margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-1)}}@layer views{.review-section,.analytics-card,.markdown-preview,.lecture-markdown-preview,.scratchpad-preview,.info,.daily-plan-modal,.onboarding-modal{word-break:normal;overflow-wrap:anywhere}.markdown-body p,.markdown-body li,.review-saved-text,.item-note,.item-hint,.home-scratch-line{max-width:72ch}.lecture-notes-editor,.scratchpad-panel--markdown{box-shadow:var(--sh-lg)}.calendar-grid,.matrix-grid,.week-view,.home-grid,.dashboard-grid,.analytics-grid,.summer-phases{content-visibility:auto;contain-intrinsic-size:520px}.summer-view{max-width:1120px;margin:0 auto;padding-bottom:var(--space-6)}.summer-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-5);border:1px solid var(--glass-border);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--success) 10%,transparent),transparent 54%),var(--surface-1);box-shadow:var(--sh-sm)}.summer-kicker,.summer-phase-range,.summer-track-title,.summer-item-status{font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.summer-kicker,.summer-phase-range,.summer-item-status{color:var(--text-tertiary)}.summer-score,.summer-phase-meter{display:grid;place-items:center;flex:0 0 auto;width:96px;height:96px;border:1px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-1) 57%,transparent 59%),conic-gradient(var(--success) calc(var(--pct, 0) * 1%),var(--surface-2) 0);text-align:center}.summer-phase-meter{width:74px;height:74px}.summer-score strong,.summer-phase-meter strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-lg);line-height:1}.summer-score span,.summer-phase-meter span{color:var(--text-tertiary);font-size:var(--t-xs)}.summer-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.summer-actions .data-btn{min-height:38px}.summer-progress-bar{height:10px;overflow:hidden;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.summer-progress-bar span{display:block;width:calc(var(--pct, 0) * 1%);height:100%;border-radius:8px;background:linear-gradient(90deg,var(--success),var(--accent));transition:width var(--dur-slow) var(--ease-spring)}.summer-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin:var(--space-3) 0}.summer-metrics div{min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1)}.summer-metrics strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-xl);line-height:1}.summer-metrics span{color:var(--text-tertiary);font-size:var(--t-xs);text-transform:uppercase}.summer-deadline-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-4)}.summer-date{min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-left:3px solid var(--warning);border-radius:8px;background:var(--surface-1)}.summer-date.set{border-left-color:var(--success)}.summer-date span{display:block;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs)}.summer-date strong{display:block;margin-top:4px;color:var(--text-secondary);font-size:var(--t-xs);font-weight:700;line-height:1.3}.summer-phases{display:grid;gap:var(--space-4)}.summer-phase{overflow:hidden;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);box-shadow:var(--sh-sm)}.summer-phase-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5);border-bottom:1px solid var(--glass-border)}.summer-phase h2{margin:2px 0 var(--space-2);color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-xl);font-weight:400;letter-spacing:0;line-height:var(--line-display)}.summer-phase p{max-width:72ch;margin:0;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--t-sm);line-height:var(--line-body)}.summer-phase-pace{padding:var(--space-3) var(--space-5);color:var(--text-tertiary);border-bottom:1px solid var(--glass-border);font-size:var(--t-sm)}.summer-track{padding:var(--space-4) var(--space-5)}.summer-track+.summer-track{border-top:1px solid var(--glass-border)}.summer-track-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--text-secondary)}.summer-track-title em{color:var(--text-tertiary);font-style:normal}.summer-items{display:grid;gap:var(--space-2)}.summer-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:var(--space-2);min-width:0;border:1px solid var(--glass-border);border-left:3px solid var(--cat-color, var(--accent));border-radius:8px;background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.summer-item.done{background:color-mix(in srgb,var(--success) 9%,var(--surface-2))}.summer-item.progress{background:color-mix(in srgb,var(--warning) 8%,var(--surface-2))}.summer-item.skip{opacity:.78}.summer-item-main{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);color:inherit;border:0;background:transparent;text-align:left;cursor:pointer}.summer-check{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-sm)}.summer-item.done .summer-check{border-color:color-mix(in srgb,var(--success) 60%,transparent);background:color-mix(in srgb,var(--success) 18%,transparent)}.summer-item-text{min-width:0;color:var(--text-primary);font-family:var(--font-body);font-size:var(--t-sm);line-height:var(--line-body);overflow-wrap:anywhere}.summer-item-actions{display:flex;align-items:stretch;gap:1px;border-left:1px solid var(--glass-border)}.summer-item-actions button{min-width:72px;padding:0 var(--space-3);color:var(--text-tertiary);border:0;border-left:1px solid var(--glass-border);background:transparent;font-size:var(--t-xs);cursor:pointer}.summer-item-actions button:first-child{border-left:0}.summer-item-actions button:hover,.summer-item-actions button.active{color:var(--text-primary);background:color-mix(in srgb,var(--cat-color, var(--accent)) 14%,transparent)}@media(max-width:900px){.summer-deadline-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.summer-hero,.summer-phase-head{display:grid}.summer-score,.summer-phase-meter{width:82px;height:82px}.summer-metrics,.summer-deadline-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.summer-item{grid-template-columns:1fr}.summer-item-main{grid-template-columns:28px minmax(0,1fr)}.summer-item-status{grid-column:2}.summer-item-actions{border-left:0;border-top:1px solid var(--glass-border)}.summer-item-actions button{min-height:36px;flex:1}}}@layer views{.cal-view{container-type:inline-size;touch-action:pan-y}.cal-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.cal-eyebrow{color:var(--accent);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;letter-spacing:0;line-height:1;margin-bottom:var(--space-1);text-transform:uppercase}.cal-title{color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-3xl);font-weight:400;letter-spacing:0;line-height:1.05;margin:0}.cal-sub{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--t-sm);line-height:1.45;margin-top:var(--space-1)}.cal-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.cal-nav-btn{min-width:36px;padding-inline:var(--space-2)}.cal-mode-bar{display:inline-flex;gap:var(--space-1);padding:var(--space-1);margin-bottom:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.cal-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:var(--space-4);align-items:start}.cal-primary,.cal-context{min-width:0}.cal-mobile-strip{display:none}.cal-month-surface,.cal-week-surface,.cal-year-grid{animation:section-appear var(--dur-normal) var(--ease-dramatic)}.cal-dow-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-2)}.cal-dow{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;letter-spacing:0;padding:0 var(--space-1);text-align:center;text-transform:uppercase}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.cal-row{display:contents}.cal-cell{position:relative;min-height:98px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:3px;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer;text-align:left;opacity:0;transform:scale(.94);animation:cell-pop var(--dur-normal) var(--ease-spring) forwards;animation-delay:calc(var(--cell-i, 0) * 16ms);transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-snap),transform var(--dur-fast) var(--ease-snap)}.cal-cell:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--accent) 28%,transparent);box-shadow:0 0 0 1px var(--accent-ring);transform:scale(1.025);z-index:2}.cal-cell.outside{opacity:.52}.cal-cell.off-day{background:color-mix(in srgb,var(--surface-0) 65%,transparent)}.cal-cell.today{background:var(--accent-dim);border:2px solid var(--accent);box-shadow:0 0 20px var(--accent-ring),inset 0 0 20px var(--accent-dim);z-index:2}.cal-cell.today:before{content:"";position:absolute;inset:-4px;border:1px solid var(--accent);border-radius:8px;opacity:.3;pointer-events:none;animation:today-breathe 3s ease-in-out infinite}.cal-cell.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent),var(--sh-sm)}.cal-date-num{position:absolute;top:var(--space-2);left:var(--space-2);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--t-sm);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.cal-cell.today .cal-date-num,.cal-cell.selected .cal-date-num{color:var(--accent)}.cal-month-chip{position:absolute;top:var(--space-2);right:var(--space-2);color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;line-height:1;text-transform:uppercase}.cal-cell-main,.cal-cell-sub{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-cell-main{color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-sm);font-weight:700;line-height:1.15}.cal-cell-sub{color:var(--text-tertiary);font-family:var(--font-body);font-size:var(--t-xs);line-height:1.25}.cal-cell-progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--surface-2)}.cal-cell-progress-fill{display:block;width:calc(var(--cal-pct, 0) * 1%);height:100%;border-radius:0 8px 0 0;transition:width var(--dur-slow) var(--ease-spring)}.cal-cell-progress-fill[data-pct="100"],.cal-legend-dot.success,.cal-year-day[data-pct="100"]{background:var(--success)}.cal-cell-progress-fill[data-pct=high],.cal-legend-dot.high,.cal-year-day[data-pct=high]{background:var(--accent)}.cal-cell-progress-fill[data-pct=mid],.cal-legend-dot.mid,.cal-year-day[data-pct=mid]{background:var(--warning)}.cal-cell-progress-fill[data-pct=low],.cal-legend-dot.low,.cal-year-day[data-pct=low]{background:var(--danger)}.cal-cell-check{position:absolute;top:var(--space-2);right:var(--space-2);color:var(--success);font-family:var(--font-ui);font-size:var(--t-md);font-weight:800}.cal-cell-dots{position:absolute;right:var(--space-2);bottom:var(--space-2);display:flex;align-items:center;gap:3px}.cal-dot,.cal-deadline-dot,.cal-legend-dot{width:7px;height:7px;border-radius:50%;background:var(--dot-color, var(--accent));flex:0 0 auto}.cal-dot.urgent{animation:dot-pulse 1.5s ease-in-out infinite}.cal-dot-more{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs);line-height:1}.cal-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--glass-border);color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs)}.cal-legend-item{display:inline-flex;align-items:center;gap:var(--space-2)}.cal-context{position:sticky;top:var(--space-4);max-height:calc(100dvh - var(--space-8));overflow:auto;padding:var(--space-5);border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-1) 92%,transparent);box-shadow:var(--sh-sm)}.cal-panel-kicker,.cal-panel-date{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}.cal-panel-title{color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-2xl);font-weight:400;letter-spacing:0;line-height:1.1;margin:var(--space-1) 0}.cal-panel-progress{display:grid;grid-template-columns:minmax(0,1fr) 64px;align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-4);padding:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.cal-panel-progress strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-xl);font-variant-numeric:tabular-nums;line-height:1}.cal-panel-progress span{color:var(--text-secondary);font-size:var(--t-xs)}.cal-ring{width:58px;height:58px;border-radius:50%;background:radial-gradient(circle at center,var(--surface-0) 58%,transparent 60%),conic-gradient(var(--accent) calc(var(--cal-pct, 0) * 1%),var(--surface-2) 0);border:1px solid var(--glass-border)}.cal-panel-progress[data-pct="100"] .cal-ring{background:radial-gradient(circle at center,var(--surface-0) 58%,transparent 60%),conic-gradient(var(--success) calc(var(--cal-pct, 0) * 1%),var(--surface-2) 0)}.cal-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin-bottom:var(--space-5)}.cal-panel-section{padding-top:var(--space-4);border-top:1px solid var(--glass-border)}.cal-panel-section+.cal-panel-section{margin-top:var(--space-5)}.cal-panel-section h3{color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-sm);font-weight:800;letter-spacing:0;margin:0 0 var(--space-3)}.cal-empty{color:var(--text-tertiary);font-family:var(--font-body);font-size:var(--t-sm);margin:0}.cal-deadline-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2);min-height:32px;color:var(--text-secondary);font-size:var(--t-sm)}.cal-deadline-row span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-deadline-row strong{font-family:var(--font-mono);font-size:var(--t-xs);font-variant-numeric:tabular-nums}.cal-deadline-row strong.urgent{color:var(--danger)}.cal-deadline-row strong.soon{color:var(--warning)}.cal-deadline-row strong.ok{color:var(--success)}.cal-deadline-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);margin-top:var(--space-3)}.cal-section-mini{display:grid;gap:var(--space-1)}.cal-section-mini+.cal-section-mini{margin-top:var(--space-3)}.cal-section-mini-title{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;text-transform:uppercase}.cal-task-mini{display:grid;grid-template-columns:8px 14px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);min-height:28px;color:var(--text-secondary);font-size:var(--t-xs)}.cal-task-mini>span{width:7px;height:7px;border-radius:50%;background:var(--dot-color, var(--accent))}.cal-task-mini em{color:var(--success);font-style:normal;font-weight:700}.cal-task-mini b{min-width:0;overflow:hidden;color:var(--text-secondary);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cal-task-mini small{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs)}.cal-week-grid{display:grid;gap:var(--space-2)}.cal-week-hours,.cal-week-row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:var(--space-3)}.cal-week-hours{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs)}.cal-week-hours span+span{position:relative}.cal-week-hours span+span:before{content:"";position:absolute;left:0;bottom:-6px;width:1px;height:8px;background:var(--glass-border)}.cal-week-lane{position:relative;min-height:58px;border:1px solid var(--glass-border);border-radius:8px;background:repeating-linear-gradient(90deg,transparent 0 11.11%,color-mix(in srgb,var(--glass-border) 55%,transparent) 11.11% calc(11.11% + 1px)),var(--surface-0);overflow:hidden}.cal-week-row.is-selected .cal-week-lane{border-color:color-mix(in srgb,var(--accent) 38%,transparent);box-shadow:0 0 0 1px var(--accent-dim)}.cal-week-day{min-width:0;display:grid;align-content:center;gap:2px;padding:var(--space-2);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);text-align:left}.cal-week-day span{color:var(--text-tertiary);font-size:var(--t-xs);font-weight:700;text-transform:uppercase}.cal-week-day strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-lg)}.cal-week-day em{color:var(--text-tertiary);font-size:var(--t-xs);font-style:normal}.cal-time-block{position:absolute;left:calc(var(--block-left, 0) * 1%);width:calc(var(--block-width, 8) * 1%);top:8px;bottom:8px;display:grid;align-content:center;min-width:42px;padding:0 var(--space-2);border:1px solid color-mix(in srgb,var(--cat-color) 38%,transparent);border-radius:8px;background:color-mix(in srgb,var(--cat-color) 15%,var(--surface-1));color:var(--text-primary);overflow:hidden;text-align:left}.cal-time-block.is-pending{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--cat-color) 12%,transparent) 0 6px,transparent 6px 12px),var(--surface-1)}.cal-time-block.is-done{background:color-mix(in srgb,var(--success) 18%,var(--surface-1));border-color:color-mix(in srgb,var(--success) 42%,transparent)}.cal-time-block span,.cal-time-block em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-time-block span{font-size:var(--t-xs);font-weight:800}.cal-time-block em{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--t-xs);font-style:normal}.cal-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.cal-year-month{min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.cal-year-title{width:100%;margin-bottom:var(--space-2);padding:0;border:0;background:transparent;color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-lg);letter-spacing:0;text-align:left}.cal-year-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.cal-year-row{display:contents}.cal-year-day{width:100%;aspect-ratio:1;min-width:0;padding:0;border:1px solid transparent;border-radius:3px;background:var(--surface-2);cursor:pointer}.cal-year-day.is-outside{opacity:.18}.cal-year-day.is-today,.cal-year-day.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.cal-year-day.has-deadline{border-color:var(--warning)}@container (max-width: 820px){.cal-shell{grid-template-columns:1fr}.cal-context{position:static;max-height:none}.cal-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.cal-hero{align-items:flex-start;flex-direction:column}.cal-actions{width:100%;justify-content:flex-start}.cal-grid{gap:5px}.cal-cell{min-height:86px;padding:var(--space-2)}.cal-cell-main{font-size:var(--t-xs)}.cal-cell-sub,.cal-month-chip,.cal-week-hours{display:none}.cal-week-row{grid-template-columns:64px minmax(0,1fr);gap:var(--space-2)}.cal-year-grid{grid-template-columns:1fr}}@media(max-width:600px){.cal-view{touch-action:pan-y pinch-zoom}.cal-title{font-size:var(--t-2xl)}.cal-actions{display:grid;grid-template-columns:44px 1fr 44px}.cal-actions .btn{min-height:44px}.cal-actions .btn:last-child{grid-column:1 / -1}.cal-mode-bar{width:100%}.cal-mode-bar .view-btn{flex:1;min-height:44px}.cal-mobile-strip{display:block;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:linear-gradient(135deg,var(--accent-dim),transparent 64%),var(--surface-1);box-shadow:var(--sh-sm)}.cal-mobile-strip-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.cal-mobile-strip-head span,.cal-mobile-strip-head em{display:block;color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;letter-spacing:0;line-height:1;text-transform:uppercase}.cal-mobile-strip-head strong{display:block;margin-top:4px;color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-xl);font-weight:400;letter-spacing:0;line-height:1}.cal-mobile-strip-head em{color:var(--accent);font-style:normal;white-space:nowrap}.cal-mobile-days{display:flex;overflow-x:auto;padding:0 0 var(--space-2);scroll-padding-inline:var(--space-2);scroll-snap-type:x mandatory;scrollbar-width:none}.cal-mobile-days::-webkit-scrollbar{display:none}.cal-mobile-days-row{display:grid;grid-template-columns:repeat(7,minmax(56px,1fr));gap:var(--space-2);min-width:max(100%,448px);width:100%;scroll-snap-align:start}.cal-mobile-day{position:relative;display:grid;justify-items:center;gap:4px;min-height:82px;padding:var(--space-2) var(--space-1);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer;scroll-snap-align:center}.cal-mobile-day:before{content:"";position:absolute;inset-inline:8px;bottom:0;height:4px;border-radius:8px 8px 0 0;background:var(--surface-3)}.cal-mobile-day[data-pct="100"]:before{background:var(--success)}.cal-mobile-day[data-pct=high]:before{background:var(--accent)}.cal-mobile-day[data-pct=mid]:before{background:var(--warning)}.cal-mobile-day[data-pct=low]:before{background:var(--danger)}.cal-mobile-day.is-selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 2px var(--accent-ring)}.cal-mobile-day.is-today strong{color:var(--accent)}.cal-mobile-day span{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;text-transform:uppercase}.cal-mobile-day strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-lg);font-variant-numeric:tabular-nums;line-height:1}.cal-mobile-day em{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs);font-style:normal}.cal-mobile-day i{display:flex;min-height:8px;align-items:center;gap:3px;font-style:normal}.cal-mobile-dot{width:7px;height:7px;border-radius:50%;background:var(--dot-color, var(--accent))}.cal-mobile-dot.muted{background:var(--surface-3)}.cal-mode-month .cal-month-surface,.cal-mode-week .cal-week-surface{display:none}.cal-context{padding:var(--space-4);border-radius:8px 8px 0 0;box-shadow:var(--sh-md)}.cal-context:before{content:"";display:block;width:40px;height:4px;margin:0 auto var(--space-3);border-radius:8px;background:var(--surface-3)}.cal-panel-progress{grid-template-columns:minmax(0,1fr) 56px;padding:var(--space-3)}.cal-ring{width:52px;height:52px}.cal-panel-actions{grid-template-columns:1fr}}}@layer views{.day-header{padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--border2) 74%,var(--text) 12%);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 58%),color-mix(in srgb,var(--surface) 88%,var(--text) 5%)}.day-name{color:var(--text-bright);letter-spacing:0}.day-meta{color:color-mix(in srgb,var(--text) 72%,var(--muted))}.day-meta strong,.day-meta em{color:var(--text)}.cat-filter-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-4)}.cat-filter-btn{min-height:34px;border-color:color-mix(in srgb,var(--border2) 70%,var(--text) 14%);background:color-mix(in srgb,var(--surface2) 88%,var(--text) 5%);color:var(--text);font-weight:750;letter-spacing:0;box-shadow:inset 0 1px color-mix(in srgb,white 8%,transparent)}.cat-filter-btn:not(.active):hover{background:color-mix(in srgb,var(--surface-2) 82%,var(--accent) 8%);color:var(--text-bright)}.cat-filter-btn.active{box-shadow:inset 0 1px color-mix(in srgb,white 18%,transparent),0 0 0 3px color-mix(in srgb,currentColor 18%,transparent)}.cat-filter-btn.active:not([style]){border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.sections{gap:var(--space-5)}.section{position:relative}.section-past{opacity:.82}.section-past .item:not(.done){opacity:.96}.section-header{display:flex;align-items:center;gap:var(--space-3);min-height:34px;margin-bottom:var(--space-2);padding:0 var(--space-1)}.section-prog-wrap{display:flex;align-items:center;gap:var(--space-2);flex:1}.section-frac{font-family:var(--font-mono);font-size:var(--t-xs);color:color-mix(in srgb,var(--text) 76%,var(--muted));font-variant-numeric:tabular-nums;white-space:nowrap;min-width:2.8ch;font-weight:700}.section-prog-track{flex:1;height:4px;background:color-mix(in srgb,var(--surface-3) 78%,black 14%);border-radius:var(--r-pill);overflow:hidden;max-width:118px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 7%,transparent)}.section-prog-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width var(--dur-slow) var(--ease-spring)}.section-prog-fill.complete{background:var(--success)}.section-header-new{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0 var(--space-3);margin-bottom:var(--space-2)}.section-time-range{font-family:var(--font-mono);font-size:var(--t-sm);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.section-label-new{font-family:var(--font-ui);font-size:var(--t-sm);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-secondary)}.section-label{color:color-mix(in srgb,var(--text) 70%,var(--muted));font-size:var(--t-xs);font-weight:850;letter-spacing:0}.active-section .section-label{color:var(--accent)}.section-done-btn{min-height:30px;border-color:color-mix(in srgb,var(--border2) 82%,var(--text) 12%);background:color-mix(in srgb,var(--surface2) 88%,var(--text) 4%);color:color-mix(in srgb,var(--text) 74%,var(--muted));font-weight:750;letter-spacing:0}.section-done-btn:hover{background:var(--accent-dim);color:var(--text-bright);border-color:var(--accent-ring)}.drop-zone{display:flex;flex-direction:column;gap:var(--space-2)}.item{display:flex;align-items:flex-start;gap:var(--space-3);min-height:58px;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--border2) 78%,var(--text) 12%);border-left:3px solid var(--cat-color, var(--border2));border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 10%,transparent),transparent 34%),color-mix(in srgb,var(--surface) 84%,var(--text) 5%);box-shadow:inset 0 1px color-mix(in srgb,white 6%,transparent),0 8px 26px #0000002e}.item:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 13%,transparent),transparent 36%),color-mix(in srgb,var(--surface2) 78%,var(--text) 8%)!important;border-color:color-mix(in srgb,var(--cat-color, var(--accent)) 36%,var(--border2))}.item.done,.item.skip{opacity:.74}.item.blocked{opacity:.88}.item-content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}.item-text{color:var(--text-bright);font-family:var(--font-ui);font-size:var(--t-md);font-weight:760;line-height:1.35;letter-spacing:0}.item.done .item-text,.item.skip .item-text{color:color-mix(in srgb,var(--text) 78%,var(--muted))}.item-hint{color:color-mix(in srgb,var(--text) 68%,var(--muted));font-size:var(--t-sm);line-height:1.48}.item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:1px}.item-est{display:inline-flex;align-items:center;min-height:20px;padding:1px 6px;border:1px solid color-mix(in srgb,var(--text) 12%,var(--border2));border-radius:var(--r-pill);background:color-mix(in srgb,var(--surface-2) 82%,black 10%);color:color-mix(in srgb,var(--text) 82%,var(--muted));font-size:var(--t-xs);font-weight:700}.item .check{width:22px;height:22px;min-width:22px;margin-top:1px;color:color-mix(in srgb,var(--text) 50%,var(--faint));filter:drop-shadow(0 0 8px rgba(0,0,0,.28))}.check-svg{width:22px;height:22px}.item-actions-btn{width:32px;height:32px;margin:-2px -2px 0 var(--space-2);border:1px solid color-mix(in srgb,var(--border2) 76%,var(--text) 12%);border-radius:8px;background:color-mix(in srgb,var(--surface2) 84%,var(--text) 6%);color:color-mix(in srgb,var(--text) 72%,var(--muted));box-shadow:inset 0 1px color-mix(in srgb,white 7%,transparent)}.item-actions-btn:hover{color:var(--text-bright);background:color-mix(in srgb,var(--surface-2) 76%,var(--accent) 10%);border-color:var(--accent-ring)}.item-new{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-1);border:1px solid var(--glass-border);border-left:3px solid var(--cat-color, var(--border));border-radius:var(--r-md);cursor:pointer;position:relative;transition:background var(--dur-fast) var(--ease-smooth),border-left-width var(--dur-instant) var(--ease-snap),box-shadow var(--dur-fast) var(--ease-smooth)}.item-new:hover{background:var(--surface-2);border-left-width:4px;box-shadow:var(--sh-sm)}.item-cat-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-pill);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:600;background:color-mix(in srgb,var(--cat-color, var(--accent)) 12%,transparent);color:var(--cat-color, var(--accent));border:1px solid color-mix(in srgb,var(--cat-color, var(--accent)) 25%,transparent);letter-spacing:.01em}.item-cat{opacity:1;font-weight:850;letter-spacing:0}.panel{background:color-mix(in srgb,var(--surface) 88%,var(--text) 4%);border-color:color-mix(in srgb,var(--border2) 72%,var(--text) 11%);border-radius:8px}.panel-header{min-height:52px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent 46%),color-mix(in srgb,var(--surface) 82%,black 6%)}.panel-title{color:var(--text-bright);font-size:var(--t-md);font-weight:780;letter-spacing:0}.panel-arrow{color:color-mix(in srgb,var(--text) 74%,var(--muted))}.item-est-new{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap}.item-enter{opacity:0;transform:translateY(8px);animation:item-enter var(--dur-normal) var(--ease-dramatic) forwards}@keyframes item-enter{to{opacity:1;transform:translateY(0)}}.item:nth-child(1){animation-delay:0ms}.item:nth-child(2){animation-delay:40ms}.item:nth-child(3){animation-delay:80ms}.item:nth-child(4){animation-delay:.12s}.item:nth-child(5){animation-delay:.16s}.item:nth-child(6){animation-delay:.2s}.item:nth-child(7){animation-delay:.24s}.item:nth-child(8){animation-delay:.28s}.item:nth-child(9){animation-delay:.32s}.item:nth-child(10){animation-delay:.36s}.item:nth-child(n+11){animation-delay:.36s}}@layer views{.stats-dashboard{container-type:inline-size}.stats-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.stats-kicker{color:var(--accent);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.stats-hero-score{min-width:120px;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);text-align:right}.stats-hero-score strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-2xl);line-height:1}.stats-hero-score span{color:var(--text-tertiary);font-size:var(--t-xs);text-transform:uppercase}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:var(--space-4);align-items:start}.analytics-card{min-width:0;overflow:hidden;padding:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);box-shadow:var(--sh-sm)}.analytics-card--wide{grid-column:span 2}.analytics-card-title{color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-sm);font-weight:850;letter-spacing:0;margin-bottom:var(--space-4)}.analytics-empty{color:var(--text-tertiary);font-size:var(--t-sm);margin:0 0 var(--space-3)}.burnout-gauge{display:grid;gap:var(--space-3)}.burnout-track{position:relative;display:grid;grid-template-columns:repeat(9,1fr);gap:4px;padding-bottom:18px}.burnout-track span{height:28px;border:1px solid var(--glass-border);border-radius:4px;background:var(--surface-0)}.burnout-track span.filled{background:var(--success);border-color:color-mix(in srgb,var(--success) 50%,transparent)}.burnout-gauge[data-risk=medium] .burnout-track span.filled{background:var(--warning);border-color:color-mix(in srgb,var(--warning) 50%,transparent)}.burnout-gauge[data-risk=high] .burnout-track span.filled{background:var(--danger);border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.burnout-track i{position:absolute;left:calc(var(--risk-score, 0) * 1%);bottom:0;width:10px;height:10px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:10px solid var(--text-primary);transform:translate(-50%)}.burnout-labels{display:flex;justify-content:space-between;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs)}.burnout-gauge p{color:var(--text-secondary);font-size:var(--t-sm);margin:0}.stat-bars,.difficulty-bars{display:grid;gap:var(--space-3)}.stat-bar-row,.difficulty-row{display:grid;grid-template-columns:92px minmax(0,1fr) 48px;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--t-xs)}.stat-bar-row div,.difficulty-row div{height:10px;overflow:hidden;border-radius:8px;background:var(--surface-0)}.stat-bar-row i,.difficulty-row i{display:block;height:100%;border-radius:8px;transition:width var(--dur-slow) var(--ease-spring)}.stat-bar-row i{width:calc(var(--stat-pct, 0) * 1%);background:var(--accent)}.stat-bar-row.good i,.stat-bar-row.best i{background:var(--success)}.stat-bar-row.bad i{background:var(--danger)}.difficulty-row i{width:calc(var(--difficulty-pct, 0) * 1%);background:var(--cat-color, var(--accent))}.stat-bar-row strong,.difficulty-row strong{color:var(--text-primary);font-family:var(--font-mono);font-weight:800;text-align:right}.heatmap-shell{overflow-x:auto;padding-bottom:var(--space-1)}.heatmap-months{display:grid;grid-template-columns:repeat(53,12px);gap:3px;margin-left:34px;margin-bottom:5px;min-width:max-content}.heatmap-months span{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:700;letter-spacing:0}.heatmap-body{display:flex;align-items:flex-start;gap:var(--space-2);min-width:max-content}.heatmap-days{display:grid;grid-template-rows:repeat(7,12px);gap:3px;width:26px}.heatmap-days span{color:var(--text-tertiary);font-family:var(--font-mono);font-size:9px;line-height:12px}.heatmap-days span:nth-child(1){grid-row:1}.heatmap-days span:nth-child(2){grid-row:3}.heatmap-days span:nth-child(3){grid-row:5}.heatmap-grid{display:grid;grid-auto-flow:column;grid-template-columns:repeat(53,12px);grid-template-rows:repeat(7,12px);gap:3px}.heatmap-cell{width:12px;height:12px;padding:0;border:1px solid var(--glass-border);border-radius:2px;background:var(--surface-0);cursor:default}.heatmap-cell:hover{transform:scale(1.35);z-index:1}.heatmap-cell[data-level="1"],.heatmap-legend i[data-level="1"]{background:color-mix(in srgb,var(--danger) 32%,var(--surface-0))}.heatmap-cell[data-level="2"],.heatmap-legend i[data-level="2"]{background:color-mix(in srgb,var(--warning) 55%,var(--surface-0))}.heatmap-cell[data-level="3"],.heatmap-legend i[data-level="3"]{background:color-mix(in srgb,var(--accent) 65%,var(--surface-0))}.heatmap-cell[data-level="4"],.heatmap-legend i[data-level="4"]{background:var(--success)}.heatmap-legend{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:var(--space-3);color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs)}.heatmap-legend i{width:12px;height:12px;border:1px solid var(--glass-border);border-radius:2px;background:var(--surface-0)}.radial-clock-wrap{display:grid;place-items:center}.radial-clock{position:relative;width:188px;height:188px;border:1px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-0),var(--surface-1))}.radial-clock>span{position:absolute;left:calc(50% - 3px);top:calc(50% - 6px);width:6px;height:12px;border-radius:6px;background:var(--accent);opacity:var(--hour-level, .2);transform:rotate(calc(var(--hour-i) * 15deg)) translateY(-78px);transform-origin:50% 84px}.radial-clock>div{position:absolute;inset:48px;display:grid;place-items:center;border:1px solid var(--glass-border);border-radius:50%;background:var(--surface-1);text-align:center}.radial-clock strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-xl);line-height:1}.radial-clock em{color:var(--text-tertiary);font-size:var(--t-xs);font-style:normal;text-transform:uppercase}.goal-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--glass-border)}.goal-item:last-child{border-bottom:0}.goal-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.goal-label{min-width:0;overflow:hidden;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-sm);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.goal-bar-wrap{height:7px;overflow:hidden;border-radius:8px;background:var(--surface-0)}.goal-bar{width:calc(var(--goal-pct, 0) * 1%);height:100%;border-radius:8px;background:var(--accent)}.goal-item.met .goal-bar{background:var(--success)}.goal-stat{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--t-xs)}.goal-presets{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.achievement-level{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.achievement-level-main strong{display:block;color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-2xl);font-weight:400;letter-spacing:0;line-height:1}.achievement-level-main span,.achievement-shields{color:var(--text-tertiary);font-size:var(--t-sm)}.achievement-xp-track{height:10px;margin:var(--space-4) 0;overflow:hidden;border-radius:8px;background:var(--surface-0)}.achievement-xp-track span{display:block;width:calc(var(--xp-pct, 0) * 1%);height:100%;border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--success))}.achievement-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.achievement-board>div{min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.achievement-board span,.achievement-board em{display:block;color:var(--text-tertiary);font-size:var(--t-xs);font-style:normal;text-transform:uppercase}.achievement-board strong{display:block;overflow:hidden;color:var(--text-primary);font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.badge-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(106px,1fr));gap:var(--space-3)}.badge-mount{position:relative;min-height:126px;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer}.badge-mount span{display:grid;place-items:center;width:52px;height:52px;margin:0 auto var(--space-2);border:2px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-1) 58%,transparent 60%),conic-gradient(var(--accent),var(--success),var(--warning),var(--accent));font-size:var(--t-xl)}.badge-mount strong,.badge-mount em{display:block;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.badge-mount strong{color:var(--text-primary);font-size:var(--t-xs);font-weight:800}.badge-mount em{color:var(--text-tertiary);font-size:var(--t-xs);font-style:normal}.badge-mount.is-locked{filter:grayscale(1);opacity:.55}.badge-mount.is-locked:after{content:"locked";position:absolute;top:var(--space-2);right:var(--space-2);color:var(--text-tertiary);font-size:9px;text-transform:uppercase}.badge-mount.is-earned{animation:badge-reveal var(--dur-slow) var(--ease-spring)}@keyframes badge-reveal{0%{opacity:0;transform:scale(.82);box-shadow:0 0 0 0 var(--warning)}to{opacity:1;transform:scale(1);box-shadow:0 0 0 18px transparent}}.report-auto-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);color:var(--text-secondary);font-size:var(--t-sm)}.report-auto-row input{accent-color:var(--accent)}@container (max-width: 760px){.analytics-card--wide{grid-column:span 1}.achievement-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.stats-hero{align-items:flex-start;flex-direction:column}.analytics-grid{grid-template-columns:1fr}.stat-bar-row,.difficulty-row{grid-template-columns:78px minmax(0,1fr) 42px}.achievement-board{grid-template-columns:1fr}}}@layer views{.home-dashboard{container-type:inline-size}.home-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.home-customize-btn{flex:0 0 auto}.hero-zone{position:relative;overflow:hidden;margin-bottom:var(--space-5);padding:var(--space-5);border:1px solid var(--glass-border);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,transparent),transparent 55%),var(--surface-1);box-shadow:var(--sh-sm);animation:section-appear var(--dur-normal) var(--ease-dramatic)}.hero-zone.morning{background:linear-gradient(135deg,color-mix(in srgb,var(--warning) 16%,transparent),transparent 58%),var(--surface-1)}.hero-zone.afternoon{background:linear-gradient(135deg,color-mix(in srgb,var(--success) 12%,transparent),transparent 56%),var(--surface-1)}.hero-zone.evening,.hero-zone.night{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 15%,transparent),transparent 60%),var(--surface-1)}.hero-main{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.hero-date{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs);font-weight:700;letter-spacing:0;text-transform:uppercase}.hero-greeting{color:var(--text-primary);font-family:var(--font-display);font-size:var(--t-3xl);font-weight:400;letter-spacing:0;line-height:1.05;margin-top:var(--space-1)}.hero-meter{display:grid;place-items:center;width:92px;height:92px;border:1px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-1) 57%,transparent 59%),conic-gradient(var(--accent) calc(var(--hero-pct, 0) * 1%),var(--surface-2) 0);text-align:center}.hero-meter strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-lg);line-height:1}.hero-meter span{color:var(--text-tertiary);font-size:var(--t-xs)}.hero-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-4);color:var(--text-secondary);font-family:var(--font-ui);font-size:var(--t-sm)}.hero-summary-sep{width:4px;height:4px;border-radius:50%;background:var(--text-ghost)}.hero-progress{height:9px;margin-top:var(--space-4);overflow:hidden;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.hero-progress span{display:block;width:calc(var(--hero-pct, 0) * 1%);height:100%;border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--success));transition:width var(--dur-slow) var(--ease-spring)}.hero-next-task{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--glass-border)}.hero-next-label,.home-card-label{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.hero-next-name{min-width:0;overflow:hidden;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-lg);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.hero-next-meta{color:var(--text-tertiary);font-size:var(--t-sm);margin-top:2px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);align-items:start}.home-card{position:relative;display:block;min-width:0;width:100%;overflow:hidden;padding:0;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);color:inherit;font:inherit;text-align:left;text-decoration:none;box-shadow:var(--sh-sm)}.home-card:is(a,button){appearance:none;-webkit-appearance:none}.home-card:is(a,button),.home-card[data-action]{cursor:pointer}.home-card:is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 18%,transparent)}.home-card:hover{border-color:color-mix(in srgb,var(--card-accent, var(--accent)) 36%,var(--glass-border));box-shadow:var(--sh-md)}.home-card--wide{grid-column:span 2}.home-card-bar{height:3px;background:var(--card-accent, var(--accent))}.home-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2)}.home-card-menu{color:var(--card-accent, var(--accent));font-family:var(--font-mono);font-size:var(--t-lg);line-height:1}.home-card-body{padding:0 var(--space-4) var(--space-4)}.dash-number{color:var(--metric-color, var(--text-primary));font-family:var(--font-mono);font-size:var(--t-2xl);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1}.dash-number.good{color:var(--success)}.dash-number.warn{color:var(--warning)}.dash-title-line{min-width:0;overflow:hidden;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-md);font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.dash-muted,.dash-foot,.dash-empty{color:var(--text-tertiary);font-size:var(--t-sm)}.dash-foot{margin-top:var(--space-2)}.dash-empty{font-style:italic}.btn.full{width:100%;margin-top:var(--space-3)}.mini-action{padding:4px 8px;border:1px solid var(--glass-border);border-radius:6px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer;font-family:var(--font-ui);font-size:var(--t-xs)}.mini-action:hover{color:var(--accent);border-color:var(--accent-ring)}.mini-action:disabled{cursor:default;opacity:.45}.mini-cal-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.mini-cal-day{display:grid;justify-items:center;gap:4px;min-height:74px;padding:var(--space-2) var(--space-1);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary)}.mini-cal-day:hover,.mini-cal-day.today{border-color:var(--accent);background:var(--accent-dim)}.mini-cal-dow{color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.mini-cal-day strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-md)}.mini-cal-dot{width:8px;height:8px;border-radius:50%;background:var(--surface-3)}.mini-cal-dot[data-level="100"]{background:var(--success)}.mini-cal-dot[data-level=high]{background:var(--accent)}.mini-cal-dot[data-level=mid]{background:var(--warning)}.mini-cal-dot[data-level=low]{background:var(--danger)}.focus-dial{display:grid;place-items:center;width:132px;height:132px;margin:0 auto var(--space-3);border:1px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-1) 57%,transparent 59%),conic-gradient(var(--card-accent, var(--accent)) calc(var(--focus-pct, 0) * 1%),var(--surface-2) 0);text-align:center}.focus-dial strong{display:block;color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-xl);line-height:1}.focus-dial span{color:var(--text-tertiary);font-size:var(--t-xs);text-transform:uppercase}.deadline-timeline{position:relative;display:grid;gap:var(--space-3);padding-left:var(--space-4)}.deadline-timeline:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:1px;background:var(--glass-border)}.deadline-timeline-item{position:relative;min-width:0}.deadline-timeline-item:before{content:"";position:absolute;left:calc(-1 * var(--space-4) - 1px);top:5px;width:9px;height:9px;border-radius:50%;background:var(--cat-color, var(--accent));box-shadow:0 0 0 3px var(--surface-1)}.deadline-timeline-name{overflow:hidden;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--t-sm);font-weight:750;text-overflow:ellipsis;white-space:nowrap}.deadline-timeline-date{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs);font-variant-numeric:tabular-nums}.comparison-bars{display:grid;gap:var(--space-3)}.comparison-row{display:grid;grid-template-columns:72px minmax(0,1fr) 42px;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--t-xs)}.comparison-row div{height:10px;overflow:hidden;border-radius:8px;background:var(--surface-0)}.comparison-row i{display:block;width:calc(var(--bar-pct, 0) * 1%);height:100%;border-radius:8px;background:var(--card-accent, var(--accent))}.comparison-row strong{color:var(--text-primary);font-family:var(--font-mono);font-weight:700;text-align:right}.today-meter,.streak-panel{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-3)}.today-meter-ring{display:grid;place-items:center;width:72px;height:72px;border:1px solid var(--glass-border);border-radius:50%;background:radial-gradient(circle at center,var(--surface-1) 57%,transparent 59%),conic-gradient(var(--accent) calc(var(--today-pct, 0) * 1%),var(--surface-2) 0)}.today-meter-ring strong{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--t-sm)}.home-dl-item{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);min-height:28px}.home-dl-item span{width:8px;height:8px;border-radius:50%;background:var(--cat-color, var(--accent))}.home-dl-item strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.home-dl-item em{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--t-xs);font-style:normal}.meal-line{display:grid;grid-template-columns:76px minmax(0,1fr);gap:var(--space-2);padding:var(--space-1) 0}.meal-line span{color:var(--text-tertiary);font-size:var(--t-xs);font-weight:800;text-transform:uppercase}.meal-line strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.home-spark{display:flex;align-items:flex-end;gap:4px;height:42px}.home-spark span{flex:1;min-width:8px;height:calc(var(--spark-pct, 0) * 1%);border-radius:4px 4px 0 0;background:var(--surface-3)}.home-spark span[data-level="100"]{background:var(--success)}.home-spark span[data-level=high]{background:var(--accent)}.home-spark span[data-level=mid]{background:var(--warning)}.home-spark span[data-level=low]{background:var(--danger)}.streak-flame{font-size:var(--t-3xl);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--warning) 45%,transparent));animation:flame-flicker 2.4s ease-in-out infinite}.home-scratch-line{overflow:hidden;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.habit-summary{display:flex;align-items:baseline;gap:var(--space-2)}.habit-mini-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.habit-mini-pill{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer}.habit-mini-pill.done{border-color:color-mix(in srgb,var(--habit-color, var(--success)) 50%,transparent);background:color-mix(in srgb,var(--habit-color, var(--success)) 16%,var(--surface-0))}.dash-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}.dash-review-row span{overflow:hidden;color:var(--text-secondary);font-size:var(--t-xs);text-overflow:ellipsis;white-space:nowrap}.energy-selector{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2)}.energy-btn{min-height:36px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-secondary);cursor:pointer;font-family:var(--font-mono);font-weight:800}.energy-btn:hover{border-color:var(--warning);color:var(--warning)}.dashboard-editor{margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1)}.dashboard-editor-head{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.dashboard-editor-head strong{color:var(--text-primary);font-family:var(--font-ui)}.dashboard-editor-head span{color:var(--text-tertiary);font-size:var(--t-sm)}.dashboard-editor-list{display:grid;gap:var(--space-2)}.dashboard-editor-row{display:grid;grid-template-columns:minmax(0,1fr) 92px auto auto;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.dashboard-editor-row label{display:flex;align-items:center;gap:var(--space-2);min-width:0;color:var(--text-secondary);font-size:var(--t-sm)}.dashboard-editor-row input{accent-color:var(--accent)}.dashboard-editor-row select{min-width:0;padding:5px 6px;border:1px solid var(--glass-border);border-radius:6px;background:var(--surface-1);color:var(--text-secondary);font-size:var(--t-xs)}@container (max-width: 720px){.home-card--wide{grid-column:span 1}.hero-main,.hero-next-task{grid-template-columns:1fr}.hero-main{display:grid}}@media(max-width:640px){.home-topline{align-items:stretch;flex-direction:row}.dashboard-grid{grid-template-columns:1fr;gap:var(--space-3)}.hero-zone{padding:var(--space-4);margin-bottom:var(--space-4)}.hero-main{grid-template-columns:minmax(0,1fr) 70px;align-items:center;gap:var(--space-3)}.hero-greeting{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hero-meter{width:70px;height:70px}.hero-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.hero-summary-sep{display:none}.hero-next-task{grid-template-columns:1fr;gap:var(--space-3)}.hero-next-task .btn{width:100%;min-height:44px}.hero-next-name,.dash-title-line{white-space:normal}.mini-cal-strip{gap:4px}.mini-cal-day{min-height:72px;padding-inline:2px}.home-card{box-shadow:none}.home-card-header{padding:var(--space-3) var(--space-3) var(--space-2)}.home-card-body{padding:0 var(--space-3) var(--space-3)}.focus-dial{width:112px;height:112px}.dashboard-editor-row{grid-template-columns:1fr}}}@layer themes{:root{--accent-contrast: #0a0a0c;--noise-blend-mode: overlay}[data-theme=light]{--noise-blend-mode: multiply}.app:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:var(--noise-opacity, .03);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");background-size:256px 256px;mix-blend-mode:var(--noise-blend-mode);will-change:opacity}[data-theme=light] .skip-link{background:var(--text-bright);color:var(--bg)}[data-theme=light] .skeleton-card,[data-theme=light] .skeleton-line,[data-theme=light] .skeleton-pill{background:color-mix(in srgb,var(--surface2) 84%,white)}[data-theme=light] .tab.active{background:var(--text-bright);color:var(--bg)}[data-theme=light] .tab .tab-progress{background:#0d948840}[data-theme=light] .tab.active .tab-progress{background:#f7f4ee4d}[data-theme=light] .item{background:var(--surface)!important;border-color:var(--border)!important}[data-theme=light] .item.done .item-check{border-color:var(--accent);background:var(--accent-dim)}[data-theme=light] .item.done .item-check:after{color:var(--accent)}[data-theme=light] .item.done .item-text:after{color:var(--accent)}[data-theme=light] .info{background:var(--surface)!important;border-color:var(--border)!important}[data-theme=light] .sync-dot.connected{background:var(--success);box-shadow:0 0 6px var(--success-dim)}[data-theme=light] .card-glass{background:var(--glass-bg)}.settings-row-stack{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}.theme-preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:8px;width:100%}.theme-preview-card,.theme-preset-btn{border-radius:8px}.theme-preview-card{position:relative;display:grid;grid-template-columns:62px 1fr;align-items:stretch;gap:10px;width:100%;min-height:82px;padding:8px;border:1px solid var(--border);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 62%),var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.theme-preview-card:hover{border-color:var(--accent-ring);box-shadow:var(--sh-sm);transform:translateY(-1px)}.theme-preview-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-preview-card.active{border-color:var(--accent);background:linear-gradient(135deg,var(--accent-dim),transparent 64%),var(--surface);box-shadow:0 0 0 1px var(--accent-ring),var(--sh-sm)}.theme-preview-card.active:after{content:"";position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-dim)}.theme-preview-canvas{position:relative;overflow:hidden;display:block;border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--preview-accent) 20%,transparent),transparent 62%),var(--preview-bg);border:1px solid color-mix(in srgb,var(--preview-text) 20%,transparent)}.theme-preview-ribbon{position:absolute;inset:8px auto auto 8px;width:24px;height:5px;border-radius:4px;background:var(--preview-accent)}.theme-preview-line{position:absolute;left:8px;right:18px;bottom:18px;height:5px;border-radius:4px;background:color-mix(in srgb,var(--preview-text) 72%,transparent)}.theme-preview-line.wide{right:8px;bottom:28px;background:var(--preview-surface)}.theme-preview-chip{position:absolute;right:8px;bottom:8px;width:14px;height:14px;border-radius:6px;background:var(--preview-accent)}.theme-preview-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:4px;padding-right:10px}.theme-preview-name{color:var(--text-bright);font-size:var(--t-sm);font-weight:700;line-height:1.2}.theme-preview-tone{color:var(--muted);font-size:var(--t-xs);line-height:1.35}.accent-swatch-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.accent-swatch{width:28px;height:28px;padding:0;border:1px solid color-mix(in srgb,var(--swatch-color) 62%,var(--border2));border-radius:8px;background:var(--swatch-color);cursor:pointer;box-shadow:inset 0 0 0 1px #ffffff29;transition:border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.accent-swatch:hover{border-color:var(--accent);transform:translateY(-1px)}.accent-swatch.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim),inset 0 0 0 1px #ffffff38}.accent-color-picker{width:34px;height:28px;padding:2px;border:1px solid var(--border2);border-radius:8px;background:var(--surface);cursor:pointer}.theme-reset-btn{min-height:28px;padding:5px 10px;color:var(--dim)}.theme-auto-row{align-items:center;justify-content:space-between;gap:16px}.theme-auto-copy{margin-top:4px;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);line-height:1.45}.theme-switch{position:relative;display:inline-flex;flex:0 0 auto;width:46px;height:26px;cursor:pointer}.theme-switch input{position:absolute;width:1px;height:1px;opacity:0}.theme-switch span{position:relative;display:block;width:100%;height:100%;border:1px solid var(--border2);border-radius:8px;background:var(--surface2);transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth)}.theme-switch span:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:6px;background:var(--muted);transition:background var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.theme-switch input:checked+span{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.theme-switch input:checked+span:after{background:var(--accent-contrast);transform:translate(20px)}.theme-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}:root{transition:background-color .3s var(--ease-smooth),color .3s var(--ease-smooth)}body{transition:background-color .3s var(--ease-smooth),color .3s var(--ease-smooth)}@media(max-width:460px){.theme-preset-grid{grid-template-columns:1fr}.theme-auto-row{align-items:flex-start}}@media(prefers-reduced-motion:reduce){.theme-preview-card,.accent-swatch,.theme-switch span,.theme-switch span:after{transition:none}}@media(forced-colors:active){.theme-preview-card,.accent-swatch,.accent-color-picker,.theme-switch span{border-color:ButtonText}.theme-preview-card.active{outline:2px solid Highlight}}}@layer animations{@keyframes skeleton-sweep{to{transform:translate(100%)}}@keyframes skeleton-fade{0%{opacity:0}to{opacity:1}}@keyframes vt-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98) translateY(4px)}}@keyframes vt-fade-in{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:none}}@keyframes vt-slide-out-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-8%) scale(.97);filter:blur(2px)}}@keyframes vt-slide-in-right{0%{opacity:0;transform:translate(12%) scale(.97);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes vt-slide-out-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(8%) scale(.97);filter:blur(2px)}}@keyframes vt-slide-in-left{0%{opacity:0;transform:translate(-12%) scale(.97);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-old(main-content){animation:vt-fade-out var(--dur-normal) var(--ease-dramatic)}::view-transition-new(main-content){animation:vt-fade-in var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=forward] ::view-transition-old(main-content){animation:vt-slide-out-left var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=forward] ::view-transition-new(main-content){animation:vt-slide-in-right var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=back] ::view-transition-old(main-content){animation:vt-slide-out-right var(--dur-normal) var(--ease-dramatic)}:root[data-nav-dir=back] ::view-transition-new(main-content){animation:vt-slide-in-left var(--dur-normal) var(--ease-dramatic)}@keyframes check-complete{0%{transform:scale(1)}20%{transform:scale(.85)}50%{transform:scale(1.15)}70%{transform:scale(.95)}to{transform:scale(1)}}@keyframes check-draw{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes completion-ring{0%{box-shadow:0 0 0 0 var(--success);opacity:1}to{box-shadow:0 0 0 16px transparent;opacity:0}}@keyframes task-done{0%{background:transparent}30%{background:var(--success-dim);transform:translate(4px)}to{background:transparent;transform:translate(0)}}.item.just-completed{animation:task-done var(--dur-slow) var(--ease-snap)}.item-check.just-checked{animation:check-complete var(--dur-slow) var(--ease-spring)}@keyframes task-skip{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(5px)}45%{transform:translate(-3px)}60%{transform:translate(2px)}}.item.just-skipped{animation:task-skip var(--dur-slow) var(--ease-snap)}@keyframes item-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cell-pop{to{opacity:1;transform:scale(1)}}@keyframes today-breathe{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.5;transform:scale(1.025)}}@keyframes progress-shimmer{0%{background-position:0% 0}to{background-position:200% 0}}@keyframes progress-complete-flash{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes meniscus-pulse{0%,to{transform:scaleX(1);opacity:.4}50%{transform:scaleX(1.3);opacity:.7}}@keyframes section-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes card-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes view-fade-in{0%{opacity:0}to{opacity:1}}.animate-on-scroll{opacity:0;transform:translateY(16px);transition:opacity var(--dur-slow) var(--ease-dramatic),transform var(--dur-slow) var(--ease-dramatic)}.animate-on-scroll.in-view{opacity:1;transform:translateY(0)}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:scale(.93) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes sheet-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toast-enter{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-exit{to{opacity:0;transform:translate(20px) scale(.96)}}@keyframes toast-countdown{0%{width:100%}to{width:0%}}@keyframes badge-unlock{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2);opacity:1}80%{transform:scale(.92)}to{transform:scale(1)}}@keyframes badge-ring-explode{0%{inset:-3px;opacity:1}to{inset:-20px;opacity:0}}@keyframes celebration-pop{0%{transform:scale(0);opacity:1}60%{transform:scale(1.15)}80%{transform:scale(.95)}to{transform:scale(1);opacity:0}}@keyframes sparkle-sweep{0%{opacity:0;transform:translate(-100%)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(100%)}}@keyframes fab-slide-up{0%{opacity:0;transform:translateY(16px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes btab-pop{0%{transform:scale(1)}40%{transform:scale(.88)}70%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes btab-pill{0%{opacity:0;width:6px}to{opacity:1}}@keyframes btab-dot{0%{opacity:0;transform:translate(-50%) translateY(5px) scale(.6)}70%{opacity:1;transform:translate(-50%) translateY(-1px) scale(1.15)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes empty-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes empty-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes gsearch-in{0%{opacity:0;transform:scale(.96) translateY(-8px)}to{opacity:1;transform:none}}@keyframes flame-flicker{0%,to{transform:scale(1) rotate(-2deg)}33%{transform:scale(1.05) rotate(1deg)}66%{transform:scale(.97) rotate(-1deg)}}@keyframes briefing-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes ripple-out{0%{transform:scale(0);opacity:.4}to{transform:scale(2.5);opacity:0}}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}@keyframes sync-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes heatmap-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes focus-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}@keyframes swipe-ready{0%,to{transform:translate(0);opacity:.6}50%{transform:translate(-4px);opacity:1}}@keyframes task-pop{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.1ms!important}.item,.card,.card-0,.card-1,.card-2,.cal-cell,.animate-on-scroll,.home-card-new,.heatmap-cell{transition:opacity var(--dur-fast) linear!important;transform:none!important}.confetti-canvas{display:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.skeleton-card:after,.skeleton-line:after,.skeleton-pill:after{animation:none!important}}}@layer accessibility{:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible,[role=checkbox]:focus-visible,[role=tab]:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 18%,transparent)}[aria-disabled=true],button:disabled{cursor:not-allowed}.toast{min-width:220px}.confirm-overlay[aria-hidden=true]{display:none}.modal-open{overflow:hidden}.focus-overlay,.daily-plan-overlay,.onboarding-overlay,.confirm-overlay,.gsearch-overlay,#nav-customizer-overlay,#conflict-modal-overlay{isolation:isolate}}@layer utilities{.no-transition{transition:none!important}.text-readable{font-family:var(--font-body);line-height:var(--line-body);letter-spacing:0}.text-ui{font-family:var(--font-ui)}.text-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.text-display{font-family:var(--font-display)}.render-hidden{visibility:hidden}.item{transition:background var(--dur-fast) var(--ease-smooth),border-left-color var(--dur-fast) var(--ease-smooth),border-left-width var(--dur-instant) var(--ease-snap),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.item:hover{background:var(--surface-2)!important;border-left-width:4px;box-shadow:var(--sh-sm)}.item:active{transform:scale(.995);transition-duration:var(--dur-instant)}.item .check{width:20px;height:20px;min-width:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--faint);transition:color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.item .check:hover{transform:scale(1.15);color:var(--muted)}.item .check:active{transform:scale(.85);transition-duration:var(--dur-instant)}.check-svg{width:20px;height:20px;display:block;overflow:visible}.check-mark{stroke-dasharray:22;stroke-dashoffset:22;animation:check-draw var(--dur-normal) var(--ease-spring) forwards}@keyframes check-draw{to{stroke-dashoffset:0}}.check-svg--pulse{animation:svg-progress-pulse 1.8s var(--ease-smooth) infinite}@keyframes svg-progress-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.88)}}.data-btn{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.data-btn:hover{transform:translateY(-1px);box-shadow:var(--sh-sm)}.data-btn:active{transform:translateY(1px) scale(.97);box-shadow:none;transition-duration:var(--dur-instant)}.view-btn{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.view-btn:active{transform:scale(.96);transition-duration:var(--dur-instant)}.sidebar-link{position:relative;transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-snap),padding-left var(--dur-fast) var(--ease-smooth)}.sidebar-link:hover{transform:translate(2px)}.sidebar-link:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--accent);border-radius:0 var(--r-pill) var(--r-pill) 0;transform:scaleY(0);transform-origin:center;transition:transform var(--dur-normal) var(--ease-spring)}.sidebar-link.active:before,.sidebar-link[aria-current=page]:before{transform:scaleY(1)}.sidebar-link:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;background:var(--accent);border-radius:2px;opacity:.78;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-normal) var(--ease-dramatic)}.sidebar-link:hover:after,.sidebar-link.active:after,.sidebar-link[aria-current=page]:after{transform:scaleX(1)}#sidebar.is-collapsed .sidebar-link:hover{transform:translateY(-1px)}#sidebar.is-collapsed .sidebar-link:after{left:12px;right:12px}.tab{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap),box-shadow var(--dur-fast) var(--ease-smooth)}.tab:active{transform:scale(.96);transition-duration:var(--dur-instant)}.action-btn{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.action-btn:hover{transform:translate(2px)}.action-btn:active{transform:scale(.96) translate(2px);transition-duration:var(--dur-instant)}.btab{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-bounce)}.btab:active{transform:scale(.88);transition-duration:var(--dur-instant);transition-timing-function:var(--ease-snap)}@media(pointer:coarse),(max-width:767px){.btn,.data-btn,.view-btn,.icon-btn,.action-btn,.mini-action,.habit-mini-pill,.energy-btn,.defer-day-btn,.editor-remove-btn,.item-actions-btn,.btab,.nav-overflow-item,.cal-cell,.cal-year-day,.cal-week-day,.cal-mobile-day{min-width:44px;min-height:44px}.settings-input,.input,.select,input[type=text],input[type=search],input[type=url],input[type=number],input[type=date],input[type=time],input[type=color],select,textarea{min-height:44px}.item{min-height:58px}.item .check{width:44px;height:44px;min-width:44px;margin:-10px 0}.item-actions-btn{width:44px;height:44px;margin-right:-10px}}.home-card,.panel,.analytics-card{transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-normal) var(--ease-smooth),transform var(--dur-normal) var(--ease-smooth)}.fab{transition:background var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-bounce),box-shadow var(--dur-fast) var(--ease-smooth)}.fab:hover{transform:scale(1.06) translateY(-2px);box-shadow:var(--sh-lg),var(--sh-glow)}.fab.open{border-radius:50%;transform:none}.fab.open:hover{transform:scale(1.06) translateY(-2px)}.fab-icon{display:grid;place-items:center;width:1em;height:1em;line-height:1;pointer-events:none}.fab:active{transform:scale(.93);transition-timing-function:var(--ease-snap);transition-duration:var(--dur-instant)}.icon-btn{transition:background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.icon-btn:hover{transform:scale(1.1)}.icon-btn:active{transform:scale(.9);transition-duration:var(--dur-instant)}.theme-toggle{transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-instant) var(--ease-snap)}.theme-toggle:hover{transform:scale(1.08)}.theme-toggle:active{transform:scale(.92) rotate(15deg);transition-duration:var(--dur-instant)}.item.just-completed{animation:task-done var(--dur-slow) var(--ease-snap)}.item.just-completed .check{animation:check-complete var(--dur-slow) var(--ease-spring)}.item.just-skipped{animation:task-skip var(--dur-slow) var(--ease-snap)}.weekly-bar-fill,.progress-fill{transition:width var(--dur-slow) var(--ease-spring)}.animate-on-scroll{opacity:0;transform:translateY(16px);transition:opacity var(--dur-slow) var(--ease-dramatic),transform var(--dur-slow) var(--ease-dramatic)}.animate-on-scroll.in-view{opacity:1;transform:translateY(0)}.day-complete-banner{background:linear-gradient(135deg,var(--accent-dim),var(--success-dim));border-color:var(--accent-ring);animation:celebration-pop var(--dur-slow) var(--ease-spring)}.day-complete-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}.sync-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success);margin-left:4px;vertical-align:middle;box-shadow:0 0 0 2px var(--success-dim);animation:sync-pulse 2s ease-in-out infinite}.tab-ideal-dot{display:inline-block;width:5px;height:5px;border-radius:50%;margin-left:3px;vertical-align:middle;flex-shrink:0}.tab-ideal-dot--good{background:var(--success)}.tab-ideal-dot--mid{background:var(--warning)}.tab-ideal-dot--low{background:var(--danger)}.nav-badge--flash{background:var(--c-purple, #a78bfa)!important}.home-day-tag{color:var(--success);font-weight:500}.confetti-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9990}.render-error-fallback{max-width:480px;margin:0 auto;padding:40px 24px;font-family:inherit;text-align:center}.render-error-icon{margin-bottom:var(--space-4);font-size:48px}.render-error-title{margin-bottom:var(--space-2);color:var(--text);font-size:18px;font-weight:700}.render-error-copy{margin-bottom:var(--space-4);color:var(--muted);font-size:11px}.render-error-details{margin:0 0 var(--space-5);padding:var(--space-3);overflow:auto;border-radius:8px;background:var(--surface);color:var(--danger, #e94560);font-size:10px;text-align:left;white-space:pre-wrap;word-break:break-all}.render-error-reload{min-height:40px;padding:10px 28px;border:0;border-radius:8px;background:var(--accent);color:#09090b;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700}.pomodoro-bar{--pomo-pct: 0%;--pomo-color: var(--accent)}.pomodoro-bar-track{position:absolute;left:0;top:0;width:var(--pomo-pct);height:3px;background:var(--pomo-color);transition:width 1s linear}.pomodoro-bar .tt-icon{color:var(--pomo-color)}.pomodoro-bar .tt-stop-danger{color:var(--danger, #e94560)}.item-cat{display:inline-flex;align-items:center;width:fit-content;padding:1px 5px;border:1px solid color-mix(in srgb,var(--cat-color) 25%,transparent);border-radius:var(--r-pill);background:color-mix(in srgb,var(--cat-color) 12%,transparent);color:var(--cat-color)}.lecture-action-save{color:var(--accent);border-color:var(--accent-ring)}.lecture-action-close{color:var(--dim)}.blocker-picker-label{flex-basis:100%;margin-bottom:6px;color:var(--dim);font-size:9px;font-weight:700;letter-spacing:0;text-transform:uppercase}.defer-day-btn--blocked{color:var(--danger);border-color:var(--danger-ring)}.defer-day-btn--muted{margin-top:4px;color:var(--dim)}.pull-refresh-indicator{position:fixed;top:max(8px,env(safe-area-inset-top));left:50%;z-index:9000;display:inline-flex;align-items:center;gap:var(--space-2);min-height:38px;padding:8px 12px;border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--glass-bg) 94%,var(--surface-1));color:var(--text-primary);box-shadow:0 14px 45px #00000052;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);pointer-events:none;transform:translate(-50%,-56px);transition:transform var(--dur-fast) var(--ease-spring),opacity var(--dur-fast) var(--ease-smooth)}.pull-refresh-indicator span{width:13px;height:13px;border:2px solid color-mix(in srgb,var(--accent) 22%,transparent);border-top-color:var(--accent);border-radius:50%}.pull-refresh-indicator strong{font-size:var(--t-xs);font-weight:800;white-space:nowrap}.pull-refresh-indicator[data-state=loading] span{animation:pull-spin .8s linear infinite}.pull-refresh-indicator[data-state=ready]{border-color:color-mix(in srgb,var(--accent) 38%,var(--glass-border))}.pull-refresh-indicator.is-hiding{opacity:0;transform:translate(-50%,-56px)!important}@keyframes pull-spin{to{transform:rotate(360deg)}}}html,body{background:var(--bg)}body{color:var(--text-primary)}.hub-layout{background:var(--bg)}.main-area{position:relative;background:transparent}.view-page{animation:command-view-in var(--dur-normal) var(--ease-dramatic)}.view-page-title{color:var(--text-bright);letter-spacing:0}.view-page-sub{color:var(--text-secondary);max-width:76ch}#sidebar{width:var(--sidebar-expanded-width, 264px);flex-basis:var(--sidebar-expanded-width, 264px);position:fixed;inset:0 auto 0 0;height:100dvh;z-index:120;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 4%,transparent),transparent 38%),color-mix(in srgb,var(--surface) 92%,transparent);border-right-color:var(--glass-border);box-shadow:1px 0 color-mix(in srgb,var(--accent) 18%,transparent)}#sidebar.is-collapsed{width:76px;flex-basis:76px}.sidebar-resize-handle{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;z-index:2}.sidebar-resize-handle:after{content:"";position:absolute;top:12px;bottom:12px;left:3px;width:2px;border-radius:2px;background:transparent}.sidebar-resize-handle:hover:after{background:var(--accent-ring)}.main-area{margin-left:var(--sidebar-current-width, 264px)}.sidebar-brand{min-height:82px;border-bottom-color:var(--glass-border)}.sidebar-brand-icon{color:var(--accent);background:var(--surface-2);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.sidebar-link{min-height:42px;border-left:3px solid transparent;font-weight:760}.sidebar-link:hover{background:color-mix(in srgb,var(--surface-2) 84%,var(--accent) 5%)}.sidebar-link.active,.sidebar-link[aria-current=page]{color:var(--text-bright);background:color-mix(in srgb,var(--accent) 13%,var(--surface-1));border-left-color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,transparent)}.sidebar-link.active .sidebar-link-icon,.sidebar-link[aria-current=page] .sidebar-link-icon{color:var(--accent)}.sidebar-footer{background:color-mix(in srgb,var(--surface-0) 70%,transparent);grid-template-columns:repeat(5,minmax(0,1fr))}#sidebar.is-collapsed .sidebar-footer{grid-template-columns:1fr}.btn,.data-btn,.view-btn,.icon-btn,.action-btn,.mini-action,.deadline-add,.editor-add-btn,.editor-remove-btn{border-radius:8px!important;letter-spacing:0}.btn,.data-btn,.view-btn{border:1px solid var(--glass-border);background:linear-gradient(180deg,color-mix(in srgb,var(--text-bright) 5%,transparent),transparent),var(--surface-1);color:var(--text-primary);font-weight:780;box-shadow:inset 0 1px color-mix(in srgb,white 7%,transparent)}.btn:hover,.data-btn:hover,.view-btn:hover{border-color:var(--accent-ring);color:var(--text-bright);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 9%,transparent),transparent),var(--surface-2)}.btn-primary,.seg-control .seg-btn.active,.segmented-control .seg-btn.active,.segmented-control .seg-btn[aria-pressed=true],.seg-control .seg-btn[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:var(--accent-gradient);color:var(--accent-contrast)}.home-dashboard{container-type:inline-size}.home-topline{align-items:center;margin-bottom:var(--space-5)}.home-topline .view-page-title{font-size:var(--t-3xl)}.hero-zone{position:relative;border-color:var(--glass-border);background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 38%),linear-gradient(180deg,color-mix(in srgb,white 5%,transparent),transparent),var(--surface-1);box-shadow:var(--sh-md)}.hero-zone:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--command-grid) 1px,transparent 1px),linear-gradient(0deg,var(--command-grid) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(90deg,black,transparent 70%);mask-image:linear-gradient(90deg,black,transparent 70%);opacity:.58}.hero-zone>*{position:relative}.hero-main{align-items:center}.hero-date,.home-card-label,.hero-next-label{letter-spacing:0}.hero-greeting{font-size:var(--t-3xl);letter-spacing:0}.hero-meter,.focus-dial,.summer-score,.summer-phase-meter,.cal-panel-progress .cal-ring{border-radius:50%}.hero-meter{background:radial-gradient(circle at center,var(--surface-1) 56%,transparent 58%),conic-gradient(var(--accent) calc(var(--hero-pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}.focus-dial{background:radial-gradient(circle at center,var(--surface-1) 56%,transparent 58%),conic-gradient(var(--accent) calc(var(--focus-pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}.summer-score,.summer-phase-meter{background:radial-gradient(circle at center,var(--surface-1) 56%,transparent 58%),conic-gradient(var(--accent) calc(var(--pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}.cal-panel-progress .cal-ring{background:radial-gradient(circle at center,var(--surface-1) 56%,transparent 58%),conic-gradient(var(--accent) calc(var(--cal-pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}.hero-command-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(180px,.65fr) minmax(180px,.75fr);gap:var(--space-3);margin-top:var(--space-5)}.hero-command-card{min-width:0;padding:var(--space-4);border:1px solid var(--glass-border);border-left:3px solid var(--hero-card-color, var(--accent));border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--hero-card-color, var(--accent)) 7%,transparent),transparent),color-mix(in srgb,var(--surface-0) 72%,transparent)}.hero-command-label{color:var(--text-tertiary);font-size:var(--t-xs);font-weight:850;text-transform:uppercase}.hero-command-title{margin-top:4px;overflow-wrap:anywhere;color:var(--text-bright);font-family:var(--font-ui);font-size:var(--t-lg);line-height:1.24}.hero-command-meta{margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--t-sm)}.hero-command-number{color:var(--text-bright);font-family:var(--font-mono);font-size:var(--t-2xl);font-weight:850;line-height:1}.hero-command-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.hero-next-task{display:none}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.today-cockpit .home-topline{align-items:flex-start}.today-top-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.today-command-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.75fr);grid-template-areas:"mission focus" "actions signals";gap:var(--space-4);align-items:stretch}.today-mission,.today-panel,.today-signals{border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-1) 92%,transparent);box-shadow:none}.today-mission{grid-area:mission;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:var(--space-4);padding:var(--space-5);position:relative;overflow:hidden}.today-mission:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 42%),linear-gradient(0deg,var(--command-grid) 1px,transparent 1px);background-size:auto,100% 42px;opacity:.8}.today-mission>*{position:relative}.today-kicker,.today-panel-head span,.today-signal span,.today-action-copy span,.today-primary-command span{display:block;color:var(--text-tertiary);font-family:var(--font-ui);font-size:var(--t-xs);font-weight:780;letter-spacing:0;text-transform:uppercase}.today-mission h2{margin:var(--space-1) 0 var(--space-2);color:var(--text-bright);font-size:var(--t-2xl);letter-spacing:0;text-wrap:balance}.today-mission p,.today-primary-command em,.today-action-copy em,.today-signal em,.today-focus-time span{color:var(--text-secondary);font-family:var(--font-ui);font-style:normal;line-height:1.42}.today-mission-meter{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;align-self:start;justify-self:end;text-align:center;background:radial-gradient(circle at center,var(--surface-1) 55%,transparent 57%),conic-gradient(var(--accent) calc(var(--hero-pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}.today-mission-meter strong,.today-focus-time strong,.today-signal strong{display:block;color:var(--text-bright);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.today-mission-meter span{display:block;color:var(--text-tertiary);font-size:var(--t-xs)}.today-primary-command{grid-column:1 / -1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-4);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-left:3px solid var(--accent);border-radius:8px;background:color-mix(in srgb,var(--accent) 9%,var(--surface-0))}.today-primary-command strong,.today-action-copy strong{display:block;min-width:0;margin:2px 0;color:var(--text-bright);font-family:var(--font-ui);overflow-wrap:anywhere}.today-next-actions{grid-area:actions}.today-focus-dock{grid-area:focus}.today-panel{min-width:0;padding:var(--space-4)}.today-panel-head{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.today-panel-head strong{display:block;color:var(--text-bright);font-size:var(--t-lg)}.today-action-list{display:grid;gap:var(--space-2)}.today-action{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-left:3px solid var(--signal-color, var(--accent));border-radius:8px;background:color-mix(in srgb,var(--surface-0) 72%,transparent)}.today-action.high,.today-signal.high{--signal-color: var(--danger)}.today-action.medium,.today-signal.medium{--signal-color: var(--warning)}.today-action.blocked{--signal-color: var(--c-orange)}.today-action-rank{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;color:var(--text-bright);background:color-mix(in srgb,var(--signal-color, var(--accent)) 18%,var(--surface-2));font-family:var(--font-mono);font-size:var(--t-sm);font-weight:800}.today-focus-core{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-0) 74%,transparent)}.today-focus-time strong{font-size:var(--t-2xl)}.today-capture{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);margin-top:var(--space-3)}.today-capture-input{min-width:0;min-height:42px;border-radius:8px;border:1px solid var(--glass-border);background:var(--surface-0);color:var(--text-primary);padding:0 var(--space-3)}.today-signals{grid-area:signals;display:grid;gap:var(--space-2);padding:var(--space-3)}.today-signal{min-width:0;display:block;width:100%;text-align:left;padding:var(--space-3);border:1px solid var(--glass-border);border-left:3px solid var(--signal-color, var(--accent));border-radius:8px;background:color-mix(in srgb,var(--surface-0) 72%,transparent);color:var(--text-primary)}.today-signal strong{margin:2px 0;overflow-wrap:anywhere}.advanced-tools-view .view-page-header{margin-bottom:var(--space-4)}.advanced-archive{display:grid;gap:var(--space-4);margin-bottom:var(--space-5)}.advanced-archive-group{border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-1) 88%,transparent);padding:var(--space-4)}.advanced-archive-label{margin-bottom:var(--space-3);color:var(--text-tertiary);font-size:var(--t-xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.advanced-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-2)}.advanced-archive-item{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:var(--space-2);row-gap:2px;align-items:center;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-primary);text-decoration:none}.advanced-archive-item:hover{border-color:var(--accent-ring);background:color-mix(in srgb,var(--accent) 7%,var(--surface-0))}.advanced-archive-item span{grid-row:span 2}.advanced-archive-item strong{min-width:0;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advanced-archive-item em{min-width:0;color:var(--text-secondary);font-size:var(--t-xs);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-card,.panel,.analytics-card,.summer-phase,.cal-shell,.matrix-card,.review-section,.daily-plan-modal,.onboarding-modal{border-color:var(--glass-border);border-radius:8px;background:var(--surface-1);box-shadow:none}.home-card:after,.panel:after,.analytics-card:after{content:none}.home-card:hover{box-shadow:var(--sh-sm)}.home-card-bar{width:100%;height:2px;background:linear-gradient(90deg,var(--card-accent, var(--accent)),transparent 78%)}.home-card-header{padding-bottom:var(--space-3)}.home-card-menu{width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--card-accent, var(--accent)) 35%,transparent);color:transparent}.dash-title-line,.deadline-timeline-name,.hero-next-name{white-space:normal;overflow-wrap:anywhere}.day-header{border-color:var(--glass-border);background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 52%),var(--surface-1);box-shadow:var(--sh-sm)}.section-header{padding-left:0}.section-label{color:var(--text-secondary);font-weight:850}.section-prog-track,.hero-progress,.progress-track,.micro-progress{background:color-mix(in srgb,var(--surface-3) 78%,black);border-radius:8px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-bright) 5%,transparent)}.section-prog-fill,.hero-progress span,.progress-fill,.micro-progress-fill{border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--success))}.item{position:relative;min-height:64px;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-color:var(--glass-border);border-left-color:var(--cat-color, var(--command-rail));background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 12%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in srgb,white 4%,transparent),transparent),var(--surface-1);box-shadow:var(--sh-sm)}.item:after{content:"";position:absolute;left:-3px;top:10px;bottom:10px;width:3px;border-radius:8px;background:var(--cat-color, var(--accent));opacity:.75}.item:hover{transform:translateY(-1px);background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 15%,transparent),transparent 38%),var(--surface-2)!important}.item.done{opacity:.82;border-left-color:var(--success)}.item.skip{opacity:.72;border-left-color:var(--text-tertiary)}.item.progress{border-left-color:var(--warning)}.item.blocked{border-left-color:var(--danger)}.item-text{color:var(--text-bright);font-size:var(--t-md);font-weight:760}.item-hint,.item-note{color:var(--text-secondary)}.item .check{width:24px;height:24px;min-width:24px;color:var(--text-tertiary)}.item.done .check{color:var(--success)}.item-cat,.item-cat-pill,.item-est{border-radius:8px}.panel-header{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 52%),var(--surface-0)}.panel-title{color:var(--text-bright);letter-spacing:0}.cal-cell,.cal-mobile-day,.cal-year-day,.week-task,.mini-cal-day,.comparison-row div,.deadline-item,.editor-item,.summer-item,.summer-date,.theme-preview-card,.theme-preview-canvas{border-radius:8px!important}.cal-cell,.cal-mobile-day,.mini-cal-day{background:linear-gradient(180deg,color-mix(in srgb,white 4%,transparent),transparent),var(--surface-1);border-color:var(--glass-border)}.cal-cell:hover,.cal-mobile-day:hover,.mini-cal-day:hover,.mini-cal-day.today{border-color:var(--accent-ring);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent),var(--surface-2)}.deadline-timeline:before{background:linear-gradient(var(--warning),var(--accent));opacity:.55}.deadline-timeline-item:before{box-shadow:0 0 0 4px var(--surface-1)}#bottom-tabs{background:linear-gradient(180deg,color-mix(in srgb,white 6%,transparent),transparent),color-mix(in srgb,var(--glass-bg) 94%,var(--surface-1))}.btab-indicator{background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));border-color:var(--accent-ring)}.btab.active{color:var(--text-bright)}.btab.active .btab-icon{color:var(--accent)}.nav-overflow-drawer,.nav-customizer-sheet,.action-menu,.mobile-action-sheet{border-radius:8px!important;background:linear-gradient(180deg,color-mix(in srgb,white 5%,transparent),transparent),var(--glass-bg);border-color:var(--glass-border)}.toast-new,.toast{border-radius:8px}.summer-view{max-width:1180px}.summer-hero,.summer-phase{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 42%),var(--surface-1)}.focus-overlay-inner,.pomodoro-bar,.time-tracker-bar{border-radius:8px}.check-mark{stroke-dashoffset:0!important;animation:none!important}.check-svg--pulse,.item.just-completed,.item.just-completed .check,.item.just-skipped,.habit-check-mark{animation:none!important}.scratchpad-backdrop{position:fixed;inset:0;border:0;background:transparent;z-index:920}.scratchpad-close{width:34px;height:34px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-2);color:var(--text-primary)}.scratchpad-toggle{right:24px;bottom:96px;border-radius:8px}.scratchpad-backdrop{z-index:900}.scratchpad-panel{position:fixed;inset:110px 24px auto auto;width:min(640px,calc(100vw - 48px));height:min(560px,calc(100dvh - 140px));min-width:min(320px,calc(100vw - 48px));min-height:min(340px,calc(100dvh - 48px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 48px);box-sizing:border-box;z-index:910;animation:none!important;container-type:inline-size}.scratchpad-panel--markdown{display:flex;flex-direction:column}.scratchpad-panel--markdown .markdown-workbench{flex:1;min-height:0}.scratchpad-panel--markdown .scratchpad-area--markdown,.scratchpad-panel--markdown .scratchpad-preview{min-height:0;max-height:none}.scratchpad-panel.is-positioned{height:min(560px,calc(100dvh - 48px))}.scratchpad-panel.is-dragging,.scratchpad-panel.is-resizing{-webkit-user-select:none;user-select:none}.scratchpad-header{align-items:center;cursor:grab;gap:10px;margin-bottom:8px}.scratchpad-panel.is-dragging .scratchpad-header{cursor:grabbing}.scratchpad-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scratchpad-window-actions,.scratchpad-padbar{display:flex;align-items:center;gap:6px}.scratchpad-padbar{margin-bottom:8px}.scratchpad-select{flex:1;min-width:0;height:34px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0);color:var(--text-primary);padding:0 8px}.scratchpad-mini-btn{width:34px;height:34px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-2);color:var(--text-primary);font-weight:800}.scratchpad-mini-btn:hover{border-color:var(--accent-ring);color:var(--accent)}.scratchpad-mini-btn.danger{color:var(--danger)}.scratchpad-mini-btn:disabled{cursor:not-allowed;opacity:.4}.scratchpad-resize-handle{position:absolute;width:22px;height:22px;z-index:4;touch-action:none}.scratchpad-resize-handle:after{content:"";position:absolute;width:10px;height:10px;border-color:var(--accent-ring);opacity:.62;transition:border-color var(--dur-fast) var(--ease-smooth),opacity var(--dur-fast) var(--ease-smooth)}.scratchpad-resize-handle:hover:after{border-color:var(--accent);opacity:1}.scratchpad-resize-handle--nw{top:-1px;left:-1px;cursor:nwse-resize}.scratchpad-resize-handle--nw:after{top:6px;left:6px;border-top:2px solid;border-left:2px solid}.scratchpad-resize-handle--ne{top:-1px;right:-1px;cursor:nesw-resize}.scratchpad-resize-handle--ne:after{top:6px;right:6px;border-top:2px solid;border-right:2px solid}.scratchpad-resize-handle--sw{bottom:-1px;left:-1px;cursor:nesw-resize}.scratchpad-resize-handle--sw:after{bottom:6px;left:6px;border-bottom:2px solid;border-left:2px solid}.scratchpad-resize-handle--se{right:-1px;bottom:-1px;cursor:nwse-resize}.scratchpad-resize-handle--se:after{right:6px;bottom:6px;border-right:2px solid;border-bottom:2px solid}@container (max-width: 560px){.scratchpad-panel--markdown .markdown-workbench{grid-template-columns:1fr}}input,select,textarea{scroll-margin-bottom:96px}.date-plan-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:12px;border:1px solid var(--accent-ring);border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,var(--surface-1))}.date-plan-banner strong{display:block;color:var(--text-bright);font-size:13px}.date-plan-banner span{color:var(--text-secondary);font-size:12px}.date-plan-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.md-math{display:inline-block;padding:1px 5px;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:6px;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text-bright);font-family:Times New Roman,"Source Serif 4",serif;font-style:italic;line-height:1.35}.md-math sup,.md-math sub{font-size:.72em;line-height:0}.md-math-fn{font-style:normal}.md-frac{display:inline-grid;grid-template-rows:auto auto;align-items:center;vertical-align:middle;margin:0 2px;font-size:.92em;line-height:1.05;text-align:center}.md-frac>span:first-child{padding:0 3px 2px;border-bottom:1px solid currentColor}.md-frac>span:last-child{padding:2px 3px 0}.md-sqrt{display:inline-flex;align-items:flex-start;gap:1px}.md-sqrt>span{padding:0 3px;border-top:1px solid currentColor}.md-math--display{display:block;margin:8px 0;padding:8px 10px;overflow-x:auto;text-align:center;font-size:1.08em}@keyframes command-view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.view-page{animation:none}.item-enter,.cal-month-surface,.cal-week-surface,.cal-year-grid,.cal-cell{opacity:1;transform:none;animation:none;animation-delay:0ms}.cal-cell-progress-fill{transition-duration:var(--dur-fast)}html,body,#app-wrapper,.hub-layout{min-height:100dvh;background-color:var(--bg)}body:before{content:"";position:fixed;z-index:0;top:0;right:0;left:0;height:env(safe-area-inset-top,0px);background:var(--bg);pointer-events:none}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);min-width:0}.title-cluster{display:flex;align-items:center;gap:var(--space-2);min-width:0}.title{min-width:0;margin:0;color:var(--text-bright);line-height:1.02;overflow-wrap:anywhere}.title-cluster .sync-dot{flex:0 0 auto;margin-left:0;margin-top:.2em}.title-controls{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:var(--space-1);min-width:0}.semester-tag,.subtitle,.week-val,.day-stats{overflow-wrap:anywhere}.subtitle{margin-top:var(--space-2)}.section{margin-bottom:var(--space-4)}.section+.panel,.panel+.panel{margin-top:var(--space-4)}.fab{right:20px;bottom:24px;border-radius:8px}.fab.open,.fab.open:hover{border-radius:50%;transform:none}.fab-panel{display:grid;gap:var(--space-2);box-sizing:border-box;border-radius:8px}.fab-header{display:flex;align-items:center;justify-content:space-between;min-width:0;margin-bottom:var(--space-1);color:var(--text-primary);font-size:var(--t-lg);line-height:1.25}.fab-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fab-close{display:none}.fab-panel input,.fab-panel select,.fab-add-btn{box-sizing:border-box;min-height:44px;margin-bottom:0}.fab-add-btn{margin-top:var(--space-1)}.cal-mobile-strip-head em{color:var(--text-tertiary)}.btab-indicator,.app{transition-duration:var(--dur-fast)}@media(max-width:900px){.hero-command-grid{grid-template-columns:1fr 1fr}.today-command-layout{grid-template-columns:1fr;grid-template-areas:"mission" "actions" "focus" "signals"}.hero-command-card:first-child{grid-column:1 / -1}}@media(max-width:767px){.title-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.title-cluster{align-items:flex-start}.title{font-size:var(--t-3xl)}.title-controls{justify-content:flex-start;flex-wrap:wrap}.fab{right:max(16px,env(safe-area-inset-right));bottom:calc(88px + env(safe-area-inset-bottom,0px))}.fab-panel{right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));bottom:calc(150px + env(safe-area-inset-bottom,0px));width:auto;max-height:min(62dvh,440px);overflow:auto;padding:var(--space-4)}.fab-header{font-size:var(--t-xl)}.hero-command-grid,.today-command-layout,.dashboard-grid,.today-cockpit .home-topline,.today-top-actions,.today-primary-command,.today-capture{grid-template-columns:1fr}.today-top-actions{justify-content:stretch}.today-focus-core{align-items:flex-start;flex-direction:column}.hero-greeting,.home-topline .view-page-title{font-size:var(--t-2xl)}.hero-meter{width:78px;height:78px}.home-card--wide{grid-column:auto}.cal-hero{display:grid;align-items:start;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-3)}.cal-title{font-size:var(--t-3xl)}.cal-actions{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;width:100%}.cal-actions .btn:not(.cal-nav-btn){grid-column:1 / -1;width:100%}.cal-mobile-strip{margin-bottom:var(--space-4)}.cal-mobile-strip-head em{display:none}.cal-context{position:static;max-height:none;margin-top:var(--space-4);padding:var(--space-4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@media(max-width:767px){html,body{width:100%;overflow-x:hidden;background:var(--bg)}input,select,textarea{font-size:16px!important}#sidebar{position:static}.main-area{margin-left:0!important}.view-page{animation:none!important}.scratchpad-toggle{right:14px}.scratchpad-panel{inset:auto 0 0!important;width:100%!important;height:auto!important;max-height:82dvh;padding-bottom:max(14px,env(safe-area-inset-bottom));border-radius:8px 8px 0 0}.scratchpad-resize-handle{display:none}.markdown-workbench{grid-template-columns:1fr}.date-plan-banner{align-items:stretch;flex-direction:column}.date-plan-actions{justify-content:stretch}.date-plan-actions .data-btn{flex:1}.scratchpad-area--markdown,.scratchpad-preview{min-height:180px;max-height:28dvh}}@layer components{.task-action-sheet-root,#task-action-sheet-root{position:relative;z-index:930;pointer-events:none}.mobile-sheet-backdrop.task-sheet-backdrop{position:fixed;inset:0;z-index:920;display:block;padding:0;border:0;background:#09090b2e!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:auto}.action-menu.mobile-action-sheet.task-action-sheet{position:fixed!important;right:22px;bottom:22px;width:min(340px,calc(100vw - 44px));max-height:min(76dvh,620px);overflow:auto;z-index:931!important;pointer-events:auto;transform:translateY(0)!important;animation:none!important}.task-action-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 2px 10px;color:var(--text-secondary);font-size:12px;font-weight:760}.task-action-sheet-head span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-action-sheet .sheet-close-btn{width:34px;height:34px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-2);color:var(--text-primary)}@media(max-width:767px){.action-menu.mobile-action-sheet.task-action-sheet{left:0!important;right:0!important;bottom:0!important;width:100%!important;max-height:72dvh;padding-top:12px!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;border-radius:8px 8px 0 0!important;z-index:931!important}.task-action-sheet .action-btn{touch-action:manipulation}}}:root{--motion-stagger-step: 0ms;--motion-page: .34s;--motion-panel: .3s}html{scroll-padding-bottom:calc(var(--bottom-chrome-height) + 32px + env(safe-area-inset-bottom,0px))}#app-wrapper[data-route=schedule] .app{width:min(100%,1248px);max-width:1248px;--schedule-task-lane: 688px;--schedule-rail-lane: 272px;--schedule-workbench-gap: 28px;--schedule-reading-lane: 812px;--schedule-workbench-lane: calc(var(--schedule-task-lane) + var(--schedule-rail-lane) + var(--schedule-workbench-gap));--schedule-complete-lane: 520px}#app-wrapper[data-route=schedule] :is(.schedule-heading,.schedule-mobile-primer,.schedule-summary-grid,.schedule-command-row,.date-plan-banner,.day-header,.cat-filter-row,.meal-card,.day-empty-state,.tabs){width:min(100%,var(--schedule-workbench-lane));max-width:var(--schedule-workbench-lane);box-sizing:border-box;margin-left:auto;margin-right:auto}#app-wrapper[data-route=schedule] .schedule-heading{display:grid;gap:10px;margin-bottom:14px}#app-wrapper[data-route=schedule] .schedule-mobile-primer{display:none}#app-wrapper[data-route=schedule] .schedule-topline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}#app-wrapper[data-route=schedule] .semester-tag{margin:0;color:var(--text-secondary);font-size:11px;font-weight:780;letter-spacing:.04em;text-transform:uppercase}#app-wrapper[data-route=schedule] .subtitle{margin:0;color:var(--text-secondary);font-family:var(--font-ui);font-size:13px;line-height:1.35}#app-wrapper[data-route=schedule] .title-row{align-items:center}#app-wrapper[data-route=schedule] .title{font-size:clamp(32px,3vw,38px)}#app-wrapper[data-route=schedule] .schedule-summary-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:14px;margin-bottom:14px}#app-wrapper[data-route=schedule] .schedule-mobile-primer{gap:10px;margin-bottom:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--text) 10%,var(--border));border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,white 3%,transparent),transparent 30%),color-mix(in srgb,var(--surface-1) 90%,var(--text) 3%);box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent)}#app-wrapper[data-route=schedule] .schedule-mobile-primer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}#app-wrapper[data-route=schedule] .schedule-mobile-stat{display:grid;gap:2px;min-width:0}#app-wrapper[data-route=schedule] .schedule-mobile-stat--today{justify-items:end;text-align:right}#app-wrapper[data-route=schedule] .schedule-mobile-primer-label{color:var(--text-tertiary);font-family:var(--font-ui);font-size:10px;font-weight:840;letter-spacing:.1em;text-transform:uppercase}#app-wrapper[data-route=schedule] .schedule-mobile-stat strong,#app-wrapper[data-route=schedule] .schedule-mobile-primer-next strong{color:var(--text-bright);font-family:var(--font-ui);font-size:14px;font-weight:790;line-height:1.2;letter-spacing:0}#app-wrapper[data-route=schedule] .schedule-mobile-primer-meta{color:var(--text-secondary);font-family:var(--font-ui);font-size:11px;line-height:1.35}#app-wrapper[data-route=schedule] .schedule-mobile-primer-next{display:grid;gap:2px;min-width:0}#app-wrapper[data-route=schedule] .schedule-mobile-primer-next strong,#app-wrapper[data-route=schedule] .schedule-mobile-primer-next span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-wrapper[data-route=schedule] .schedule-mobile-primer-track{height:3px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--surface-3) 82%,black 10%)}#app-wrapper[data-route=schedule] .schedule-mobile-primer-fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--success) 74%,var(--accent)))}#app-wrapper[data-route=schedule] .schedule-summary-card{min-width:0;padding:14px 16px;border:1px solid color-mix(in srgb,var(--text) 10%,var(--border));border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,white 3%,transparent),transparent 28%),color-mix(in srgb,var(--surface-1) 90%,var(--text) 3%);box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent)}#app-wrapper[data-route=schedule] .schedule-summary-card--next{border-left:3px solid var(--accent)}#app-wrapper[data-route=schedule] .schedule-summary-label{margin-bottom:8px;color:var(--text-tertiary);font-family:var(--font-ui);font-size:10px;font-weight:840;letter-spacing:.12em;text-transform:uppercase}#app-wrapper[data-route=schedule] .schedule-summary-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}#app-wrapper[data-route=schedule] .schedule-summary-main{display:grid;gap:4px}#app-wrapper[data-route=schedule] .week-val,#app-wrapper[data-route=schedule] .schedule-next-title{color:var(--text-bright);font-family:var(--font-ui);font-size:17px;font-weight:780;letter-spacing:0;line-height:1.2}#app-wrapper[data-route=schedule] .schedule-summary-inline{display:grid;justify-items:end;gap:2px;text-align:right}#app-wrapper[data-route=schedule] .schedule-summary-inline span{color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;font-weight:700}#app-wrapper[data-route=schedule] .schedule-summary-inline strong{color:var(--text-bright);font-family:var(--font-mono);font-size:24px;font-weight:820;line-height:1}#app-wrapper[data-route=schedule] .schedule-summary-secondary{color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;line-height:1.4}#app-wrapper[data-route=schedule] .schedule-summary-card .weekly-bar{height:5px;margin:12px 0 10px;overflow:hidden;border-radius:8px;background:color-mix(in srgb,var(--surface-3) 82%,black 10%)}#app-wrapper[data-route=schedule] .schedule-command-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(296px,388px);align-items:stretch;gap:14px;margin-bottom:16px}#app-wrapper[data-route=schedule] .search-bar{margin:0}#app-wrapper[data-route=schedule] .search-input{min-height:56px;padding-left:38px;font-family:var(--font-ui);font-size:14px}#app-wrapper[data-route=schedule] .schedule-header-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(164px,208px);align-items:stretch;gap:10px}#app-wrapper[data-route=schedule] .view-mode-seg{width:auto;max-width:none;margin:0;padding:4px;gap:4px}#app-wrapper[data-route=schedule] .view-mode-seg .seg-btn{min-height:54px;padding:10px 16px;font-size:14px;font-weight:760}#app-wrapper[data-route=schedule] .schedule-focus-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:62px;padding:0 18px;border:1px solid color-mix(in srgb,var(--text) 12%,var(--border));border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,white 4%,transparent),transparent),color-mix(in srgb,var(--surface-1) 92%,transparent);color:var(--text-secondary);font:inherit;font-size:14px;font-weight:780;letter-spacing:0;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-smooth),background var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth)}#app-wrapper[data-route=schedule] .schedule-focus-toggle:hover{border-color:color-mix(in srgb,var(--c-purple, var(--accent)) 38%,transparent);color:var(--text-bright);background:linear-gradient(180deg,color-mix(in srgb,var(--c-purple, var(--accent)) 10%,transparent),transparent),color-mix(in srgb,var(--surface-2) 84%,transparent)}#app-wrapper[data-route=schedule] .schedule-focus-toggle.active{border-color:color-mix(in srgb,var(--c-purple, var(--accent)) 58%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--c-purple, #a78bfa) 86%,white 8%),var(--accent));color:var(--accent-contrast);box-shadow:var(--sh-sm)}#app-wrapper[data-route=schedule] .schedule-focus-toggle span[aria-hidden=true]{font-size:16px;line-height:1}#app-wrapper[data-route=schedule] .tabs{gap:10px;margin-bottom:24px;padding-bottom:0}#app-wrapper[data-route=schedule] .tab{min-height:66px;padding:12px 16px 18px;font-size:14px;font-weight:720;letter-spacing:0}#app-wrapper[data-route=schedule] .tab.today:after{bottom:6px;width:6px;height:6px}#app-wrapper[data-route=schedule] .tab .tab-progress{bottom:5px}#app-wrapper[data-route=schedule] :is(.week-day,.panel,.reset-wrap){width:min(100%,var(--schedule-reading-lane));max-width:var(--schedule-reading-lane);box-sizing:border-box;margin-left:auto;margin-right:auto}#app-wrapper[data-route=schedule] .day-complete-banner{width:min(100%,var(--schedule-complete-lane));max-width:var(--schedule-complete-lane);box-sizing:border-box;margin:0 auto var(--space-4);padding:14px 18px;border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 15%,transparent),color-mix(in srgb,var(--success) 10%,transparent)),color-mix(in srgb,var(--surface) 88%,var(--text) 5%);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border2));box-shadow:inset 0 1px color-mix(in srgb,white 8%,transparent),0 16px 36px #00000038;animation:schedule-complete-enter .52s cubic-bezier(.2,.85,.22,1) both}#app-wrapper[data-route=schedule] .day-complete-banner.animate-on-scroll{opacity:1;transform:none}#app-wrapper[data-route=schedule] .day-complete-text{font-size:13px;font-weight:820;letter-spacing:0}#app-wrapper[data-route=schedule] .day-complete-sub{margin-top:3px;font-size:11px}#app-wrapper[data-route=schedule] .day-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 16px;box-shadow:none}#app-wrapper[data-route=schedule] .day-meta{color:var(--text-secondary);font-family:var(--font-ui);font-size:13px;line-height:1.45}#app-wrapper[data-route=schedule] .cat-filter-row{gap:10px;margin-bottom:18px}#app-wrapper[data-route=schedule] .schedule-workbench{width:min(100%,var(--schedule-workbench-lane));max-width:var(--schedule-workbench-lane);box-sizing:border-box;margin:18px auto 0;display:grid;grid-template-columns:minmax(0,var(--schedule-task-lane)) minmax(240px,var(--schedule-rail-lane));gap:var(--schedule-workbench-gap);align-items:start}#app-wrapper[data-route=schedule] .schedule-main-lane{min-width:0;display:grid;gap:22px}#app-wrapper[data-route=schedule] .schedule-main-lane .section{width:100%;min-width:0}#app-wrapper[data-route=schedule] .schedule-main-lane .section-header{min-height:32px;margin:0 0 10px;padding:0 0 10px;border-bottom:1px solid color-mix(in srgb,var(--text) 13%,transparent)}#app-wrapper[data-route=schedule] .schedule-main-lane .active-section .section-header{border-bottom-color:color-mix(in srgb,var(--accent) 48%,transparent)}#app-wrapper[data-route=schedule] .schedule-main-lane .section-label{color:var(--text-secondary);font-size:11px;font-weight:880;letter-spacing:.08em}#app-wrapper[data-route=schedule] .schedule-main-lane .active-section .section-label{color:var(--accent)}#app-wrapper[data-route=schedule] .schedule-main-lane .drop-zone{gap:10px;overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}#app-wrapper[data-route=schedule] .schedule-main-lane .item{display:grid;grid-template-columns:26px minmax(0,1fr) 34px;align-items:start;gap:10px;min-height:64px;margin:0;padding:12px 10px 12px 16px;border:1px solid color-mix(in srgb,var(--text) 10%,var(--border));border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 10%,transparent),transparent 188px),color-mix(in srgb,var(--surface-0) 78%,transparent);box-shadow:inset 0 1px color-mix(in srgb,white 4%,transparent)}#app-wrapper[data-route=schedule] .schedule-main-lane .item:after{left:0;top:0;bottom:0;width:3px;border-radius:0;background:var(--cat-color, var(--accent));opacity:.8}#app-wrapper[data-route=schedule] .schedule-main-lane .item:hover{transform:none;background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 14%,transparent),transparent 194px),color-mix(in srgb,var(--surface-2) 78%,transparent)!important}#app-wrapper[data-route=schedule] .schedule-main-lane .item.done,#app-wrapper[data-route=schedule] .schedule-main-lane .item.skip{min-height:46px;padding-top:8px;padding-bottom:8px;opacity:.74}#app-wrapper[data-route=schedule] .schedule-main-lane .item .check{margin-top:2px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-kicker-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-height:18px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-kind{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border:1px solid color-mix(in srgb,var(--cat-color, var(--accent)) 28%,transparent);border-radius:8px;background:color-mix(in srgb,var(--cat-color, var(--accent)) 12%,transparent);color:var(--cat-color, var(--accent));font-family:var(--font-ui);font-size:11px;font-weight:820;letter-spacing:0}#app-wrapper[data-route=schedule] .schedule-main-lane .item-slot{color:var(--text-tertiary);font-family:var(--font-ui);font-size:11px;font-weight:760;line-height:1.3;text-transform:uppercase}#app-wrapper[data-route=schedule] .schedule-main-lane .item-content{gap:4px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-text{color:var(--text-bright);font-family:var(--font-ui);font-size:15px;font-weight:770;line-height:1.28}#app-wrapper[data-route=schedule] .schedule-main-lane .item-hint{color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;line-height:1.45}#app-wrapper[data-route=schedule] .schedule-main-lane .item-meta{gap:6px;margin-top:1px}#app-wrapper[data-route=schedule] .schedule-main-lane .item.done .item-kicker-row,#app-wrapper[data-route=schedule] .schedule-main-lane .item.skip .item-kicker-row{min-height:0}#app-wrapper[data-route=schedule] .schedule-main-lane .item.done .item-hint,#app-wrapper[data-route=schedule] .schedule-main-lane .item.skip .item-hint{display:none}#app-wrapper[data-route=schedule] .schedule-main-lane .item.done .item-text,#app-wrapper[data-route=schedule] .schedule-main-lane .item.skip .item-text{font-size:13px}#app-wrapper[data-route=schedule] .schedule-main-lane .item--session .item-slot{font-family:var(--font-mono);text-transform:none}#app-wrapper[data-route=schedule] .schedule-main-lane .item--deliverable .item-text,#app-wrapper[data-route=schedule] .schedule-main-lane .item--deep-work .item-text{font-weight:800}#app-wrapper[data-route=schedule] .schedule-main-lane .item--routine{min-height:56px;background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, var(--accent)) 7%,transparent),transparent 128px),color-mix(in srgb,var(--surface-0) 80%,transparent)}#app-wrapper[data-route=schedule] .schedule-main-lane .item--routine .item-kind{border-color:color-mix(in srgb,var(--cat-color, var(--accent)) 18%,transparent);background:transparent}#app-wrapper[data-route=schedule] .schedule-main-lane .item-blocked-label{color:var(--warning);font-family:var(--font-ui);font-size:11px;line-height:1.35}#app-wrapper[data-route=schedule] .schedule-main-lane .item-actions-btn{align-self:start;width:30px;height:30px;margin:-2px 0 0;border-color:transparent;background:transparent;box-shadow:none}#app-wrapper[data-route=schedule] .schedule-main-lane .item-actions-btn:hover{border-color:var(--accent-ring);background:color-mix(in srgb,var(--accent) 10%,transparent)}#app-wrapper[data-route=schedule] .schedule-main-lane :is(.note-input-wrap,.lecture-note-preview,.lecture-notes-editor,.defer-picker){border-radius:0;border-top:1px solid color-mix(in srgb,var(--text) 9%,transparent)}#app-wrapper[data-route=schedule] .schedule-filter-empty{padding:18px;border:1px dashed color-mix(in srgb,var(--text) 14%,transparent);border-radius:8px;color:var(--text-secondary);background:color-mix(in srgb,var(--surface-1) 86%,transparent)}#app-wrapper[data-route=schedule] .schedule-context-rail{position:sticky;top:18px;display:grid;gap:18px;min-width:0;padding-left:20px;border-left:1px solid color-mix(in srgb,var(--text) 11%,transparent)}#app-wrapper[data-route=schedule] .schedule-rail-card{min-width:0}#app-wrapper[data-route=schedule] .schedule-rail-eyebrow{margin-bottom:10px;color:var(--text-tertiary);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}#app-wrapper[data-route=schedule] .schedule-rail-subhead,#app-wrapper[data-route=schedule] .schedule-rail-muted{color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;line-height:1.4}#app-wrapper[data-route=schedule] .schedule-rail-subhead{margin:14px 0 8px;font-weight:760}#app-wrapper[data-route=schedule] .schedule-rail-chip,#app-wrapper[data-route=schedule] .schedule-rail-row{min-height:34px;border:1px solid color-mix(in srgb,var(--text) 12%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--surface-1) 68%,transparent);color:var(--text-secondary);font:inherit;font-size:12px;font-weight:760;letter-spacing:0;cursor:pointer}#app-wrapper[data-route=schedule] .schedule-rail-chip:hover,#app-wrapper[data-route=schedule] .schedule-rail-chip.active,#app-wrapper[data-route=schedule] .schedule-rail-row:hover{border-color:color-mix(in srgb,var(--accent) 48%,transparent);color:var(--text-bright);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}#app-wrapper[data-route=schedule] .schedule-rail-section-list,#app-wrapper[data-route=schedule] .schedule-rail-chip-list,#app-wrapper[data-route=schedule] .schedule-rail-deadlines{display:grid;gap:7px}#app-wrapper[data-route=schedule] .schedule-rail-section{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-bottom:7px;color:var(--text-secondary);font-size:12px}#app-wrapper[data-route=schedule] .schedule-rail-section span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-wrapper[data-route=schedule] .schedule-rail-section strong,#app-wrapper[data-route=schedule] .schedule-rail-row strong{color:var(--text-bright);font-family:var(--font-mono);font-size:11px;font-weight:760}#app-wrapper[data-route=schedule] .schedule-rail-section em{position:absolute;left:0;bottom:0;height:2px;max-width:100%;border-radius:8px;background:var(--accent)}#app-wrapper[data-route=schedule] .schedule-rail-section.current span{color:var(--accent);font-weight:820}#app-wrapper[data-route=schedule] .schedule-rail-chip,#app-wrapper[data-route=schedule] .schedule-rail-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;text-align:left}#app-wrapper[data-route=schedule] .schedule-rail-chip{border-left:3px solid var(--chip-color, var(--accent))}#app-wrapper[data-route=schedule] .schedule-rail-chip span,#app-wrapper[data-route=schedule] .schedule-rail-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-wrapper[data-route=calendar] .app{width:min(100%,1340px);max-width:1340px}#app-wrapper[data-route=calendar] .cal-shell{gap:clamp(24px,2.2vw,32px);padding:clamp(20px,2vw,28px);border:1px solid color-mix(in srgb,var(--text) 10%,var(--border));border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,white 3%,transparent),transparent 20%),color-mix(in srgb,var(--surface-1) 90%,var(--text) 3%)}#app-wrapper[data-route=calendar] .cal-primary{min-width:0;padding-inline:6px}#app-wrapper[data-route=calendar] .cal-dow-row,#app-wrapper[data-route=calendar] .cal-grid,#app-wrapper[data-route=calendar] .cal-legend,#app-wrapper[data-route=calendar] .cal-year-grid{margin-inline:2px}#app-wrapper[data-route=calendar] .cal-context{top:20px;padding:4px 0 0 24px;border:0;border-left:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:0;background:transparent;box-shadow:none}#app-wrapper[data-route=calendar] .cal-title{font-size:clamp(32px,3vw,38px)}#app-wrapper[data-route=calendar] :is(.cal-sub,.cal-empty,.cal-cell-sub,.cal-panel-progress span,.cal-task-mini b){font-family:var(--font-ui)}#app-wrapper[data-route=calendar] .cal-cell{min-height:104px;background:linear-gradient(180deg,color-mix(in srgb,white 2%,transparent),transparent),color-mix(in srgb,var(--surface-0) 82%,transparent);border-color:color-mix(in srgb,var(--text) 8%,var(--border))}#app-wrapper[data-route=calendar] .cal-cell.outside{opacity:.36;background:color-mix(in srgb,var(--surface-0) 64%,transparent)}#app-wrapper[data-route=calendar] .cal-cell.off-day{background:color-mix(in srgb,var(--surface-0) 70%,transparent)}#app-wrapper[data-route=calendar] .cal-cell-main{font-size:14px;font-weight:760}#app-wrapper[data-route=calendar] .cal-cell-sub{color:var(--text-secondary);font-size:12px;line-height:1.3}#app-wrapper[data-route=calendar] .cal-panel-title{font-size:var(--t-xl)}#app-wrapper[data-route=calendar] .cal-panel-progress{grid-template-columns:minmax(0,1fr) 56px;gap:14px;margin:20px 0 16px;padding:0 0 14px;border:0;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:0;background:transparent}#app-wrapper[data-route=calendar] .cal-panel-progress strong{font-size:24px}#app-wrapper[data-route=calendar] .cal-ring{width:56px;height:56px;border:0;background:radial-gradient(circle at center,color-mix(in srgb,var(--surface-1) 94%,transparent) 58%,transparent 60%),conic-gradient(var(--accent) calc(var(--cal-pct, 0) * 1%),color-mix(in srgb,var(--surface-3) 82%,black) 0)}#app-wrapper[data-route=calendar] .cal-panel-actions{gap:10px;margin-bottom:18px}#app-wrapper[data-route=calendar] .cal-panel-section{padding-top:18px}#app-wrapper[data-route=calendar] .cal-task-mini b{color:var(--text-primary);font-size:12px;font-weight:650}#app-wrapper[data-route=calendar] .cal-task-mini small{color:var(--text-secondary);font-size:11px}.view-page{transform-origin:50% 18px;animation:ui-view-enter var(--motion-page) var(--ease-dramatic) both!important}.home-topline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-4)}.today-top-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:var(--space-2)}.today-top-actions .data-btn{min-height:40px;white-space:nowrap}.today-top-actions .is-active{border-color:color-mix(in srgb,var(--accent) 62%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 18%,transparent),transparent),var(--surface-2);color:var(--text-bright)}.today-command-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:clamp(16px,1.8vw,24px);align-items:start}.today-command-layout>*:nth-child(1){--motion-index: 0}.today-command-layout>*:nth-child(2){--motion-index: 1}.today-command-layout>*:nth-child(3){--motion-index: 2}.today-command-layout>*:nth-child(4){--motion-index: 3}.today-mission,.today-panel,.today-signals,.tools-command-center,.advanced-archive-group,.dashboard-editor,.home-card,.panel,.analytics-card,.summer-phase,.cal-shell,.matrix-card,.review-section{animation:none}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr))}.dashboard-grid>.home-card:nth-child(1){--motion-index: 0}.dashboard-grid>.home-card:nth-child(2){--motion-index: 1}.dashboard-grid>.home-card:nth-child(3){--motion-index: 2}.dashboard-grid>.home-card:nth-child(4){--motion-index: 3}.dashboard-grid>.home-card:nth-child(5){--motion-index: 4}.dashboard-grid>.home-card:nth-child(6){--motion-index: 5}.dashboard-grid>.home-card:nth-child(7){--motion-index: 6}.dashboard-grid>.home-card:nth-child(8){--motion-index: 7}.today-mission{grid-template-columns:minmax(0,1fr) minmax(92px,112px)}.today-mission-copy{min-width:0}.today-mission p{max-width:58ch}.today-primary-command{grid-template-columns:minmax(0,1fr) auto}.today-focus-dock,.today-signals,.today-next-actions{height:auto}.today-focus-core{min-height:138px}.today-smart-add{display:grid;gap:var(--space-2)}.today-smart-add-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);color:var(--text-tertiary);font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.today-smart-add-head em{min-width:0;color:var(--text-secondary);font-family:var(--font-body);font-size:12px;font-style:normal;font-weight:500;letter-spacing:0;overflow:hidden;text-align:right;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.today-action{position:relative;grid-template-columns:18px 34px minmax(0,1fr) auto}.today-action[draggable=true]{cursor:grab}.today-action[draggable=true]:active{cursor:grabbing}.today-action-grip{align-self:center;color:var(--text-tertiary);font-family:var(--font-mono);font-size:13px;opacity:.55}.today-action.is-drop-target{border-color:color-mix(in srgb,var(--accent) 72%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 42%,transparent),0 0 28px color-mix(in srgb,var(--accent) 14%,transparent)}.today-signals{align-content:start}#app-wrapper.route-enter .main-area{animation:route-shell-wash .36s var(--ease-dramatic) both}#app-wrapper.route-enter #app{animation:route-content-rise .32s var(--ease-dramatic) both}.focus-note-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);width:100%}.focus-note-input{min-width:0;resize:vertical;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff0f;color:var(--text-primary);font:inherit;font-size:13px;line-height:1.45;outline:2px solid transparent;padding:10px 12px}.focus-note-input:focus{border-color:var(--accent-ring);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.focus-review-box .confirm-msg{display:grid;gap:6px;text-align:left}.focus-review-box .confirm-msg strong{color:var(--text-bright);font-family:var(--font-ui);font-size:16px}.focus-review-box .confirm-msg span{color:var(--text-primary);font-size:13px}.focus-review-box .confirm-msg em{color:var(--text-secondary);font-size:12px;font-style:normal}.focus-review-actions{flex-wrap:wrap}.dashboard-editor{position:relative;overflow:hidden;background:var(--surface-1)}.dashboard-editor:before{content:none}.dashboard-editor>*{position:relative}.dashboard-editor-row{grid-template-columns:minmax(0,1fr) minmax(96px,116px) 40px 40px}.dashboard-editor-row .mini-action{min-width:40px;padding-inline:8px}.sidebar-footer{gap:6px;padding:8px}.sidebar-footer-btn{position:relative;display:grid;place-items:center;width:100%;height:40px;padding:0;overflow:visible}.sidebar-footer-btn>span[aria-hidden=true]{display:grid;place-items:center;min-width:24px;font-size:16px;line-height:1}.sidebar-footer-label,#sidebar.is-collapsed .sidebar-footer-label{position:absolute;z-index:5;left:50%;bottom:calc(100% + 8px);width:max-content;max-width:160px;padding:6px 8px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-2);color:var(--text-primary);box-shadow:var(--sh-sm);opacity:0;pointer-events:none;transform:translate(-50%) translateY(4px);transition:opacity var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.sidebar-footer-btn:hover .sidebar-footer-label,.sidebar-footer-btn:focus-visible .sidebar-footer-label,#sidebar.is-collapsed .sidebar-footer-btn:hover .sidebar-footer-label,#sidebar.is-collapsed .sidebar-footer-btn:focus-visible .sidebar-footer-label{opacity:1;transform:translate(-50%) translateY(0)}.tools-command-center{display:grid;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);box-shadow:none}.tools-search-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);min-height:50px;padding:0 var(--space-2);border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-0)}.tools-search-icon{display:grid;place-items:center;color:var(--text-tertiary);font-size:20px}.tools-search-input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit}.tools-search-clear{min-width:36px;min-height:36px;padding:0}.tools-quick-strips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.tools-strip{min-width:0;padding:var(--space-3);border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-0) 72%,transparent)}.tools-strip-head{display:flex;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--text-tertiary);font-size:var(--t-xs);font-weight:800;text-transform:uppercase}.tools-strip-head strong{color:var(--text-secondary);font-family:var(--font-mono)}.tools-strip-items{display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:36px}.tools-strip-pill{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%;min-height:36px;padding:0 10px;border:1px solid var(--glass-border);border-radius:8px;background:var(--surface-1);color:var(--text-primary);text-decoration:none}.tools-strip-pill:hover{border-color:var(--accent-ring);color:var(--text-bright)}.tools-strip-pill strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tools-empty{display:inline-flex;align-items:center;min-height:36px;color:var(--text-tertiary);font-size:var(--t-sm)}.advanced-archive-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.advanced-archive-card{position:relative;min-width:0}.advanced-archive-card .advanced-archive-item{min-height:86px;padding-right:46px}.advanced-archive-card .advanced-archive-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--surface-1))}.tool-favorite-btn{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--glass-border);border-radius:8px;background:color-mix(in srgb,var(--surface-2) 88%,transparent);color:var(--text-tertiary);cursor:pointer}.tool-favorite-btn:hover,.tool-favorite-btn[aria-pressed=true]{border-color:color-mix(in srgb,var(--warning) 55%,transparent);color:var(--warning)}.advanced-empty{padding:var(--space-4);border:1px dashed var(--glass-border);border-radius:8px;color:var(--text-secondary);background:var(--surface-0)}.cal-month-surface,.cal-week-surface,.cal-year-grid{animation:none}.item-enter,.cal-cell{opacity:1;transform:none;animation:none}.cal-cell:hover{transform:none}@keyframes ui-view-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes ui-panel-enter{0%{opacity:0;transform:translateY(12px) scale(.992)}to{opacity:1;transform:none}}@keyframes ui-cell-enter{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes route-shell-wash{0%{background-position:0 -18px}to{background-position:0 0}}@keyframes route-content-rise{0%{opacity:.82;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes schedule-complete-enter{0%{opacity:0;transform:translateY(10px) scale(.985)}62%{opacity:1;transform:translateY(0) scale(1.006)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:1180px){.advanced-tools-view,.home-dashboard,.cal-view,.summer-view{width:min(100%,1240px);margin-inline:auto}}@media(max-width:1120px){#app-wrapper[data-route=schedule] .app{--schedule-workbench-lane: var(--schedule-reading-lane)}#app-wrapper[data-route=schedule] .schedule-summary-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.88fr)}#app-wrapper[data-route=schedule] .schedule-command-row{grid-template-columns:minmax(0,1fr)}#app-wrapper[data-route=schedule] .schedule-workbench{grid-template-columns:1fr}#app-wrapper[data-route=schedule] .schedule-context-rail{display:none}#app-wrapper[data-route=calendar] .cal-shell{grid-template-columns:1fr}#app-wrapper[data-route=calendar] .cal-context{position:static;max-height:none;padding:20px 0 0;border-left:0;border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent)}}@media(max-width:900px){.today-command-layout,.tools-quick-strips,#app-wrapper[data-route=schedule] .schedule-summary-grid{grid-template-columns:1fr}#app-wrapper[data-route=calendar] .cal-shell{gap:20px;padding:18px}}@container (max-width: 860px){.today-command-layout{grid-template-columns:1fr;grid-template-areas:"mission" "actions" "focus" "signals"}.today-mission{grid-template-columns:minmax(0,1fr) minmax(86px,104px)}.today-primary-command{grid-template-columns:minmax(0,1fr) auto}}@container (max-width: 620px){.today-mission,.today-primary-command,.today-capture{grid-template-columns:1fr}.today-mission-meter,.today-primary-command .btn,.today-capture .btn{justify-self:start}}@media(max-width:767px){.fab{right:max(14px,env(safe-area-inset-right,0px))!important;bottom:calc(var(--bottom-chrome-height) + 20px + env(safe-area-inset-bottom,0px))!important;width:48px;height:48px}.fab-panel{bottom:calc(var(--bottom-chrome-height) + 82px + env(safe-area-inset-bottom,0px))!important;max-height:min(58dvh,420px)}.scratchpad-toggle{right:max(74px,env(safe-area-inset-right,0px))!important;bottom:calc(var(--bottom-chrome-height) + 22px + env(safe-area-inset-bottom,0px))!important}.home-topline{grid-template-columns:1fr}.today-top-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(102px,1fr));justify-content:stretch;width:100%}.today-top-actions .data-btn{width:100%;min-width:0;padding-inline:8px}.today-mission,.today-panel,.today-signals,.tools-command-center,.advanced-archive-group{scroll-margin-bottom:calc(var(--bottom-chrome-height) + 32px)}.home-topline{gap:10px;margin-bottom:12px}.today-command-layout{gap:12px}.today-mission{grid-template-columns:minmax(0,1fr) 76px;gap:12px;padding:14px}.today-mission h2{font-size:var(--t-xl);line-height:1.1}.today-mission p{font-size:var(--t-sm);line-height:1.38}.today-mission-meter{width:76px;height:76px;justify-self:end}.today-primary-command{grid-column:1 / -1;gap:10px;padding:12px}.today-panel{padding:14px}.today-panel-head{margin-bottom:10px}.today-action{grid-template-columns:16px 30px minmax(0,1fr) auto;gap:10px;padding:10px}.today-action-rank{width:30px;height:30px}.today-focus-core{min-height:96px;padding:12px}.today-primary-command,.today-capture{grid-template-columns:1fr}.today-capture{padding-bottom:var(--space-2)}.dashboard-editor-row{grid-template-columns:minmax(0,1fr) minmax(86px,104px) 38px 38px;gap:6px}.dashboard-editor-row label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advanced-archive-grid{grid-template-columns:1fr}.tools-search-row{grid-template-columns:32px minmax(0,1fr) 36px}#app-wrapper[data-route=schedule] .schedule-workbench{margin-top:12px;gap:12px}#app-wrapper[data-route=schedule] .schedule-heading{gap:8px;margin-bottom:10px}#app-wrapper[data-route=schedule] .schedule-topline{gap:6px 10px}#app-wrapper[data-route=schedule] .title{font-size:28px}#app-wrapper[data-route=schedule] .subtitle{font-size:12px}#app-wrapper[data-route=schedule] .schedule-mobile-primer{display:grid}#app-wrapper[data-route=schedule] .schedule-summary-grid{display:none}#app-wrapper[data-route=schedule] .schedule-command-row{gap:8px;margin-bottom:12px}#app-wrapper[data-route=schedule] .search-input{min-height:48px;font-size:13px}#app-wrapper[data-route=schedule] .schedule-header-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}#app-wrapper[data-route=schedule] .view-mode-seg{padding:3px}#app-wrapper[data-route=schedule] .view-mode-seg .seg-btn{min-height:46px;padding:8px 14px;font-size:13px}#app-wrapper[data-route=schedule] .day-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 14px}#app-wrapper[data-route=schedule] .schedule-focus-toggle{min-width:108px;min-height:46px;padding:0 14px;gap:7px;font-size:13px}#app-wrapper[data-route=schedule] .day-meta{font-size:12px;line-height:1.38}#app-wrapper[data-route=schedule] .lock-btn{min-height:38px;padding:0 12px;font-size:11px;white-space:nowrap}#app-wrapper[data-route=schedule] .cat-filter-row{flex-wrap:nowrap;gap:8px;margin-bottom:14px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}#app-wrapper[data-route=schedule] .cat-filter-btn{flex:0 0 auto;min-height:32px;padding-inline:12px;white-space:nowrap}#app-wrapper[data-route=schedule] .tabs{gap:8px;margin-bottom:18px}#app-wrapper[data-route=schedule] .tab{min-height:58px;padding:10px 14px 16px}#app-wrapper[data-route=schedule] .schedule-main-lane{gap:18px}#app-wrapper[data-route=schedule] .schedule-main-lane .section-header{gap:8px}#app-wrapper[data-route=schedule] .schedule-main-lane .drop-zone{gap:6px}#app-wrapper[data-route=schedule] .schedule-main-lane .section-prog-track{max-width:84px}#app-wrapper[data-route=schedule] .schedule-main-lane .item{grid-template-columns:24px minmax(0,1fr) 32px;min-height:52px;padding:10px 7px 10px 12px}#app-wrapper[data-route=schedule] .schedule-main-lane .item.done,#app-wrapper[data-route=schedule] .schedule-main-lane .item.skip{min-height:42px;padding-top:7px;padding-bottom:7px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-kind,#app-wrapper[data-route=schedule] .schedule-main-lane .item-slot{font-size:10px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-text{font-size:13px}#app-wrapper[data-route=schedule] .schedule-main-lane .item-hint{font-size:11px}#app-wrapper[data-route=calendar] .cal-context{padding:16px;border:1px solid color-mix(in srgb,var(--text) 10%,var(--border));border-radius:8px 8px 0 0;background:linear-gradient(180deg,color-mix(in srgb,white 3%,transparent),transparent),color-mix(in srgb,var(--surface-1) 92%,transparent);box-shadow:var(--sh-md)}#app-wrapper[data-route=calendar] .cal-context:before{content:"";display:block;width:40px;height:4px;margin:0 auto 12px;border-radius:8px;background:var(--surface-3)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.view-page,.today-mission,.today-panel,.today-signals,.tools-command-center,.advanced-archive-group,.dashboard-editor,.home-card,.panel,.analytics-card,.summer-phase,.cal-shell,.matrix-card,.review-section,.cal-month-surface,.cal-week-surface,.cal-year-grid,.item-enter,.cal-cell{opacity:1!important;transform:none!important;animation:none!important}#app-wrapper.route-enter .main-area,#app-wrapper.route-enter #app{animation:none!important}}
