@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{color-scheme:dark;--bg-base:#151715;--bg-surface:#1e211f;--bg-card:var(--bg-surface);--bg-elevated:#272c29;--bg-hover:#333a36;--border:#3c453c;--border-subtle:#2b322b;--border-color:var(--border-subtle);--text-primary:#f4f6f2;--text-secondary:#d5dad4;--text-muted:#bac2ba;--calendar-task-done-bg:#303234;--calendar-task-done-text:#c5c8cc;--status-success-bg:#173d2e;--status-success-text:#8de0b0;--status-success-border:#347b55;--status-complete-bg:#215640;--status-complete-text:#b5f2d0;--status-complete-border:#4b966c;--status-warning-bg:#4b381b;--status-warning-text:#f1c879;--status-warning-border:#93703a;--accent:#a5c7e8;--accent-rgb:165,199,232;--accent-soft:rgba(var(--accent-rgb),0.12);--accent-hover:#b8d4ed;--on-accent:#172d43;--accent-primary:var(--accent);--green:#a6c5a1;--amber:#e3be84;--red:#e8aaa0;--danger-red:var(--red);--danger:var(--red);--radius-sm:6px;--radius:6px;--radius-lg:10px;--shadow-lg:0 18px 48px rgba(0,0,0,0.3);--shadow-xl:var(--shadow-lg);--shadow-sm:0 2px 8px rgba(0,0,0,0.16);--page-padding-x:32px;--page-padding-y:32px;--sidebar-width:clamp(224px,13vw,280px);--calendar-side-panel-width:clamp(300px,19vw,420px);--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:700 28px/1.2 var(--font);--font-heading-description:400 15px/1.5 var(--font);--font-caption:400 15px/1.5 var(--font);--font-subheading:600 16px/1.35 var(--font);--font-subsubheading:600 14px/1.35 var(--font);--font-section-label:600 14px/1.35 var(--font);--font-body:400 14px/1.6 var(--font);--font-input:400 14px/1.4 var(--font);--font-input-placeholder:400 14px/1.4 var(--font);--font-quote:italic 400 18px/1.5 var(--font);--font-danger:400 14px/1.4 var(--font);--font-stat-value:700 28px/1.2 var(--font)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;background:var(--bg-base);color:var(--text-primary);font:var(--font-body);-webkit-font-smoothing:antialiased}small{font-size:1rem}button,input,select,textarea{font-family:var(--font)}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,select,textarea{min-width:0}button{overflow-wrap:anywhere}::selection{background:var(--accent);color:var(--on-accent)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font:var(--font-input);color:var(--text-primary)}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:brightness(0) invert(1);-webkit-transition:opacity .15s ease,filter .15s ease;transition:opacity .15s ease,filter .15s ease}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=datetime-local]::-webkit-calendar-picker-indicator:hover,input[type=month]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1;filter:brightness(0) invert(1)}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:1px solid var(--border);border-radius:5px;background:var(--bg-elevated);display:inline-grid;place-content:center;vertical-align:middle;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}input[type=checkbox]:before{content:"";width:9px;height:6px;border-left:2px solid var(--on-accent);border-bottom:2px solid var(--on-accent);transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}input[type=checkbox]:checked{border-color:var(--accent);background:var(--accent)}input[type=checkbox]:checked:before{transform:rotate(-45deg) scale(1)}input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}input::placeholder,textarea::placeholder{font:var(--font-input-placeholder);color:var(--text-secondary);opacity:1}.heading-text{font:var(--font-heading);color:var(--text-primary)}.caption-text{font:var(--font-caption);color:var(--text-secondary)}.subheading-text{font:var(--font-subheading);color:var(--text-primary)}.subsubheading-text{font:var(--font-subsubheading);color:var(--text-primary)}.section-label-text{font:var(--font-section-label);color:var(--text-secondary);letter-spacing:0}.body-text{font:var(--font-body);color:var(--text-secondary)}.stat-value-text{font:var(--font-stat-value);color:var(--text-primary)}@media (max-width:760px){:root{--page-padding-x:18px;--page-padding-y:24px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}@media (max-width:760px){input,select,textarea{font-size:max(1rem,16px)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app-confirm-overlay{position:fixed;inset:0;z-index:20000;background:rgba(8,12,10,.62);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px}.app-confirm-panel{width:min(100%,440px);background:var(--bg-surface,#20231f);color:var(--text-primary,#f1f4ef);border:1px solid var(--border,#42473e);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-xl);padding:24px}.app-confirm-panel h2{font-size:1.25rem;margin:0 0 12px}.app-confirm-panel p{line-height:1.6;color:var(--text-secondary,#c3c9be);white-space:pre-line;margin:0 0 24px}.app-confirm-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.app-action-notice button,.app-confirm-actions button{min-height:44px;padding:10px 18px;border:1px solid var(--border,#444a40);border-radius:10px;background:var(--bg-elevated,#30352d);color:var(--text-primary,#fff);font-weight:600;cursor:pointer}.app-confirm-actions .is-primary{background:var(--accent,#b5a0cf);color:var(--on-accent,#171a16)}.app-confirm-actions .is-danger{background:var(--red,#bd5a55);color:white}.app-action-notice{position:fixed;z-index:21000;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(calc(100% - 32px),600px);padding:16px;display:flex;gap:16px;align-items:center;border:1px solid var(--border,#444a40);border-radius:14px;background:var(--bg-surface,#20231f);color:var(--text-primary,#f1f4ef);box-shadow:var(--shadow-xl);line-height:1.5}.app-action-notice span{flex:1 1}.delete-btn:disabled{opacity:.45;cursor:not-allowed}