:root{--color-bg:#f6f7fb;--color-surface:#fff;--color-surface-subtle:#f0f2f7;--color-surface-raised:#fff;--color-text:#202431;--color-text-muted:#687086;--color-border:#dde1ea;--color-border-strong:#c8ceda;--color-accent:#5967d9;--color-accent-hover:#4856c5;--color-accent-soft:#eef0ff;--color-on-accent:#fff;--color-danger:#b84b54;--color-danger-hover:#9e3d46;--color-danger-soft:#fff0f1;--color-focus:#5967d9;--priority-critical:#c95b63;--priority-critical-bg:#fff4f4;--priority-high:#cc7a45;--priority-high-bg:#fff7f0;--priority-medium:#ad8a35;--priority-medium-bg:#fffaf0;--priority-low:#4f8b69;--priority-low-bg:#f2f8f4;--shadow-sm:0 1px 2px #1f24310d;--shadow-md:0 12px 32px #1f243117;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#11131a;--color-surface:#191c26;--color-surface-subtle:#202431;--color-surface-raised:#1d212c;--color-text:#f1f3f8;--color-text-muted:#a9b0c0;--color-border:#303646;--color-border-strong:#41495c;--color-accent:#8b96ef;--color-accent-hover:#a1aaf5;--color-accent-soft:#252a4a;--color-on-accent:#11131a;--color-danger:#ee8d94;--color-danger-hover:#f3a4aa;--color-danger-soft:#3a2229;--color-focus:#8b96ef;--priority-critical:#e8787f;--priority-critical-bg:#2d1d23;--priority-high:#e79a67;--priority-high-bg:#30241d;--priority-medium:#d2ae58;--priority-medium-bg:#2c281b;--priority-low:#76b38f;--priority-low-bg:#1d2b24;--shadow-sm:0 1px 2px #0000003d;--shadow-md:0 16px 40px #00000059}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);min-width:320px;min-height:100vh;color:var(--color-text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:22px}a{color:var(--color-accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.app-main h1[tabindex="-1"]:focus-visible{outline:none}button{cursor:pointer;font:inherit}button:disabled{cursor:not-allowed;opacity:.6}input:not([type=checkbox]),select{min-height:44px;font-size:15px;line-height:20px;font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding-inline:12px}input[type=checkbox]{accent-color:var(--color-accent)}input[type=checkbox]:enabled{cursor:pointer}.completion-hit-area:has(input:enabled){cursor:pointer}input[type=checkbox]:disabled{cursor:not-allowed}.completion-hit-area:has(input:disabled){cursor:not-allowed}@media (width<=640px){button,input,select,button.button-primary,button.button-secondary,button.button-quiet,button.button-danger,a.button-primary,a.button-secondary,a.button-quiet,a.button-danger{min-height:44px}}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-header{z-index:20;border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 96%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:72px;position:sticky;inset-block-start:0;overflow-x:clip}.app-header-inner,.app-main{width:min(100%,1120px);margin-inline:auto;padding-inline:24px}.app-header-inner{align-items:center;gap:16px;min-height:72px;display:flex}.app-main{flex:1;padding-block:32px 48px}.brand{white-space:nowrap;color:var(--color-text);letter-spacing:-.01em;align-items:center;gap:8px;font-size:18px;font-weight:700;line-height:24px;text-decoration:none;display:flex}.brand-mark{border-radius:var(--radius-sm);background:var(--color-accent);width:32px;height:32px;color:var(--color-on-accent);flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.primary-nav{white-space:nowrap;align-items:center;gap:8px;margin-inline:auto;display:flex}.compact-nav{display:none}.app-header[data-layout=compact] .primary-nav,.app-header[data-layout=compact] .app-header-inner>.button-quiet{visibility:hidden;width:max-content;position:absolute}.app-header[data-layout=compact] .notification-bell{margin-inline-start:auto}.app-header[data-layout=compact] .compact-nav{align-items:center;display:flex}.compact-nav .nav-menu-button{justify-content:center;width:40px;padding:0}.compact-nav .nav-menu-list{min-width:200px;inset-inline:auto 0}.primary-nav a,.compact-nav a{height:40px;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;padding-inline:16px;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;display:inline-flex}@media (hover:hover){.primary-nav a:hover,.compact-nav a:hover{background:var(--color-surface-subtle)}}.primary-nav a:active,.compact-nav a:active{background:var(--color-surface-subtle)}.primary-nav a[aria-current=page],.compact-nav a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent)}.nav-menu{display:inline-flex;position:relative}.nav-menu-button{height:40px;color:var(--color-text-muted);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;align-items:center;gap:4px;padding-inline:16px;font-size:14px;font-weight:600;line-height:20px;display:inline-flex}@media (hover:hover){.nav-menu-button:hover{background:var(--color-surface-subtle)}}.nav-menu-button:active,.nav-menu-button[aria-expanded=true]{background:var(--color-surface-subtle)}.nav-menu-list{z-index:1;background:var(--color-surface-raised);border:1px solid var(--color-border);min-width:max(160px,100%);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;gap:2px;margin:0;padding:6px;list-style:none;display:flex;position:absolute;inset-block-start:calc(100% + 6px);inset-inline-start:0}.nav-menu-list[hidden]{display:none}.nav-menu-divider{background:var(--color-border);height:1px;margin-block:4px}.primary-nav .nav-menu-list a,.compact-nav .nav-menu-list a{border-radius:8px;flex:none;justify-content:flex-start;width:100%}.nav-menu-icon{width:20px;height:20px}.nav-menu-item-button{width:100%;height:40px;color:var(--color-text-muted);font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:8px;align-items:center;padding-inline:16px;font-size:14px;font-weight:600;line-height:20px;display:inline-flex}@media (hover:hover){.nav-menu-item-button:hover{background:var(--color-surface-subtle)}}.nav-menu-item-button:active{background:var(--color-surface-subtle)}@media (width<=640px){.app-header{min-height:0}.app-header-inner{gap:8px;min-height:60px;padding-block:0}.app-main{padding-block:16px 24px}.brand{height:44px}.app-header .brand-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand-mark{width:28px;height:28px}.primary-nav,.app-header-inner>.button-quiet{display:none}.app-header .notification-bell{margin-inline-start:auto}.compact-nav{align-items:center;display:flex}.compact-nav a{flex:none;height:44px}.nav-menu-button{height:44px}.compact-nav .nav-menu-button{width:44px}.compact-nav .nav-menu-list a,.nav-menu-item-button{height:44px}}.notification-bell{display:inline-flex;position:relative}.notification-bell-button{width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (hover:hover){.notification-bell-button:hover{background:var(--color-surface-subtle)}}.notification-bell-button:active,.notification-bell-button[aria-expanded=true]{background:var(--color-surface-subtle)}.notification-bell-icon{width:20px;height:20px}.notification-panel{z-index:1;background:var(--color-surface-raised);border:1px solid var(--color-border);width:min(280px,100vw - 32px);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;display:flex;position:absolute;inset-block-start:calc(100% + 6px);inset-inline-end:0}.notification-panel[hidden]{display:none}.notification-panel p{margin:0;font-size:14px;line-height:20px}.notification-panel-title{color:var(--color-text);font-weight:600}.notification-panel-text{color:var(--color-text-muted)}.notification-panel-error{color:var(--color-danger)}@media (width<=640px){.notification-bell-button{width:44px;height:44px}.notification-bell{position:static}.notification-panel{width:auto;inset-block-start:calc(100% - 4px);inset-inline:16px}}.button-primary,.button-secondary,.button-quiet,.button-danger{white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;display:inline-flex}.button-primary{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent);padding-inline:16px}.button-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.button-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border);padding-inline:14px}.button-secondary:hover{background:var(--color-surface-subtle)}.button-quiet{color:var(--color-text);background:0 0;border-color:#0000;padding-inline:14px}.button-quiet:hover{background:var(--color-surface-subtle)}.button-danger{background:var(--color-danger);color:var(--color-on-accent);border-color:var(--color-danger);padding-inline:16px}.button-danger:hover{background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.button-danger-text{color:var(--color-danger)}.button-danger-text:hover{color:var(--color-danger-hover)}.task-actions button{border-radius:8px;min-height:36px;padding-inline:12px}@media (width<=640px){.task-actions button{min-height:44px;padding-inline:10px}}.page-header{flex-wrap:wrap;align-items:center;gap:8px;margin-block-end:24px;display:flex}.page-header h1{letter-spacing:-.03em;margin:0;font-size:32px;font-weight:700;line-height:38px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-inline-start:auto;display:flex}.refresh-icon{flex:none;width:16px;height:16px}.task-actions{align-items:center;gap:8px;display:inline-flex}.row-actions-toggle{font-size:20px;line-height:1;display:none}.row-actions-list{align-items:center;gap:8px;display:inline-flex}@media (width<=640px){.page-header{flex-wrap:nowrap;gap:12px}.page-header h1{font-size:28px;line-height:34px}.page-actions .button-secondary{width:44px;height:44px;padding-inline:0}.refresh-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-actions .button-primary{height:44px;padding-inline:14px}}.brief-switch{border:1px solid var(--color-border);border-radius:999px;gap:2px;margin-inline-start:auto;padding:3px;display:inline-flex}.brief-switch a{height:34px;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;padding-inline:14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.brief-switch a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent)}.app-main-fill{flex-direction:column;display:flex}.brief-page{flex-direction:column;flex:1;display:flex}.brief-frame{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;min-height:420px;box-shadow:var(--shadow-sm);flex:1 1 0;display:block}@media (width<=640px){.brief-switch a{height:44px}.brief-frame{min-height:360px}}.surface-panel{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px}.status-panel{text-align:center;color:var(--color-text-muted);font-size:13px;line-height:18px}.status-panel[role=alert]{color:var(--color-danger)}.empty-state{text-align:center;color:var(--color-text-muted);font-size:13px;line-height:18px}.auth-shell{flex:1;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{text-align:center;flex-direction:column;align-items:center;gap:16px;width:min(100%,420px);padding:32px 24px;display:flex}.auth-card h1{letter-spacing:-.01em;flex-direction:column;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:700;line-height:24px;display:flex}.task-toolbar{margin-block-end:16px}.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:min(100%,880px);margin-inline:auto;display:grid}.field-group{flex-direction:column;gap:4px;min-width:0;display:flex}.field-group label{color:var(--color-text-muted);font-size:13px;font-weight:600;line-height:18px}@media (width<=720px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filter-grid input[type=date]{padding-inline:10px}}@media (width<=340px){.page-header{flex-wrap:wrap}.filter-grid{grid-template-columns:minmax(0,1fr)}}.priority-list{grid-template-columns:minmax(0,1fr);gap:16px;width:min(100%,880px);margin-inline:auto;display:grid}.priority-card,.routine-card,.today-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);border-block-start:4px solid #0000;padding:16px}.priority-card[data-priority=critical]{border-block-start-color:var(--priority-critical)}.priority-card[data-priority=high]{border-block-start-color:var(--priority-high)}.priority-card[data-priority=medium]{border-block-start-color:var(--priority-medium)}.priority-card[data-priority=low]{border-block-start-color:var(--priority-low)}.priority-card-header,.routine-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.priority-card-header h2,.routine-card-header h2{margin:0;font-size:18px;font-weight:700;line-height:24px}.priority-count{background:var(--color-surface-subtle);min-height:28px;color:var(--color-text-muted);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding-inline:12px;font-size:14px;font-weight:700;line-height:20px;display:inline-flex}.priority-card[data-priority=critical] .priority-count{background:var(--priority-critical-bg);color:var(--priority-critical)}.priority-card[data-priority=high] .priority-count{background:var(--priority-high-bg);color:var(--priority-high)}.priority-card[data-priority=medium] .priority-count{background:var(--priority-medium-bg);color:var(--priority-medium)}.priority-card[data-priority=low] .priority-count{background:var(--priority-low-bg);color:var(--priority-low)}.card-details>summary{cursor:pointer;list-style:none}.card-details>summary>:is(h2,h3){margin-inline-end:auto}.card-details>summary::-webkit-details-marker{display:none}.card-details>summary:after{content:"▸";color:var(--color-text-muted);flex:none}.card-details[open]>summary:after{content:"▾"}.key-group{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px}.key-group+.key-group{margin-block-start:16px}.key-group-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.key-group-header h3{margin:0;font-size:18px;font-weight:700;line-height:24px}.key-group-count,.routine-count{background:var(--color-surface-subtle);min-height:28px;color:var(--color-text-muted);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding-inline:12px;font-size:14px;font-weight:700;line-height:20px;display:inline-flex}.empty-copy{color:var(--color-text-muted);margin:8px 0 0;font-size:13px;line-height:18px}.task-list,.key-list{flex-direction:column;gap:.5rem;margin:8px 0 0;padding:0;list-style:none;display:flex}.task-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding-block:12px;display:grid}.task-row+.task-row{border-block-start:1px solid var(--color-border)}.task-title,.key-name{font-weight:600}.key-name,.task-title{overflow-wrap:anywhere;font-size:15px;line-height:22px}.task-main{flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-width:0;display:flex}.completion-hit-area{justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.completion-control{width:20px;height:20px;accent-color:var(--color-accent)}.settings-page{grid-template-columns:220px minmax(0,1fr);align-items:start;column-gap:24px;display:grid}.settings-title{letter-spacing:-.03em;grid-column:1/-1;margin:0 0 24px;font-size:32px;font-weight:700;line-height:38px}.settings-nav{position:sticky;inset-block-start:88px}.settings-nav ul{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;gap:2px;margin:0;padding:6px;list-style:none;display:flex}.settings-nav a{min-height:40px;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;border-radius:8px;align-items:center;padding:6px 12px;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;display:flex}@media (hover:hover){.settings-nav a:hover{background:var(--color-surface-subtle)}}.settings-nav a:active{background:var(--color-surface-subtle)}.settings-nav a[aria-current=page],.settings-page[data-level=index] .settings-nav li:first-child a{background:var(--color-accent-soft);color:var(--color-accent)}.settings-back{display:none}.settings-section-header h2{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700;line-height:30px}@media (width<=640px){.settings-page{grid-template-columns:minmax(0,1fr)}.settings-title{margin-block-end:16px;font-size:28px;line-height:34px}.settings-nav{position:static}.settings-nav a{min-height:48px;color:var(--color-text);justify-content:space-between}.settings-nav a:after{content:"›";color:var(--color-text-muted);font-size:20px}.settings-page[data-level=index] .settings-nav li:first-child a{color:var(--color-text);background:0 0}.settings-page[data-level=index] .settings-content,.settings-page[data-level=section] .settings-nav{display:none}.settings-page[data-level=section] .settings-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.settings-page[data-level=section] .settings-back{height:44px;color:var(--color-accent);-webkit-tap-highlight-color:transparent;align-items:center;gap:6px;margin-block-end:4px;font-size:15px;font-weight:600;line-height:20px;text-decoration:none;display:inline-flex}.settings-section-header h2{font-size:22px;line-height:28px}}.key-create-panel{margin-block-end:24px}.key-create-panel h3{margin:0;font-size:18px;font-weight:700;line-height:24px}.key-create-panel>p{color:var(--color-text-muted);margin:4px 0 16px;font-size:13px;line-height:18px}.key-create-panel form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}@media (width<=720px){.key-create-panel form{grid-template-columns:minmax(0,1fr)}}.key-create-error{grid-column:1/-1;margin:0}.key-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px}.key-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.key-prefix{background:var(--color-surface-subtle);max-width:100%;color:var(--color-text-muted);overflow-wrap:anywhere;border-radius:6px;margin-block-start:8px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:18px;display:inline-block}.key-metadata{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-block-start:8px;font-size:13px;line-height:18px;display:flex}.status-badge{background:var(--color-accent-soft);min-height:24px;color:var(--color-accent);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding-inline:8px;font-size:12px;font-weight:700;line-height:16px;display:inline-flex}.status-badge[data-revoked=true]{background:var(--color-surface-subtle);color:var(--color-text-muted)}.key-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-block-start:12px;display:inline-flex}.key-actions button{border-radius:8px;min-height:36px;padding-inline:12px}@media (width<=640px){.key-actions button{min-height:44px;padding-inline:10px}}.task-due-date,.task-reminders,.routine-schedule,.routine-progress{color:var(--color-text-muted);font-size:13px;line-height:18px}.task-due-date[data-overdue=true]{color:var(--color-danger);font-weight:700}.routine-card,.today-card{border-block-start-color:var(--color-border-strong)}.filter-grid.routine-filters{grid-template-columns:minmax(0,208px)}.routine-row[data-checked=true] .task-title,.today-card .task-row[data-completed=true] .task-title{color:var(--color-text-muted);text-decoration:line-through}.priority-badge{white-space:nowrap;border-radius:999px;padding-inline:8px;font-size:12px;font-weight:700;line-height:18px}.priority-badge[data-priority=critical]{background:var(--priority-critical-bg);color:var(--priority-critical)}.priority-badge[data-priority=high]{background:var(--priority-high-bg);color:var(--priority-high)}.priority-badge[data-priority=medium]{background:var(--priority-medium-bg);color:var(--priority-medium)}.priority-badge[data-priority=low]{background:var(--priority-low-bg);color:var(--priority-low)}.overdue-label{color:var(--color-danger);font-size:13px;font-weight:600;line-height:18px}@media (width<=640px){.task-toolbar{border-radius:12px;padding:12px}.field-group{gap:4px}.priority-list{gap:10px}.priority-card,.routine-card,.today-card{border-radius:12px;padding:12px}.card-details>summary{min-height:44px}.key-group{border-radius:12px;padding:12px}.priority-card-header h2,.routine-card-header h2{font-size:16px;line-height:22px}.priority-count{min-height:24px}.task-row{grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding-block:8px}.completion-hit-area{width:44px;height:44px}.completion-control{width:20px;height:20px;min-height:0}.task-title{font-size:14px;line-height:20px}.task-due-date,.routine-schedule,.routine-progress{font-size:12px;line-height:16px}.task-actions{flex-wrap:nowrap;gap:4px}.row-actions{position:relative}.row-actions-toggle{display:inline-flex}.row-actions-list{display:none}.row-actions[data-open=true] .row-actions-list{z-index:1;background:var(--color-surface-raised);border:1px solid var(--color-border);min-width:160px;box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;align-items:stretch;gap:2px;padding:6px;display:flex;position:absolute;inset-block-start:calc(100% + 4px);inset-inline-end:0}.row-actions-list button{text-align:start;justify-content:flex-start}}.inline-warning{color:var(--color-danger);font-size:13px;line-height:18px}[role=alert]{color:var(--color-danger)}.modal{background:var(--color-surface);width:min(560px,100vw - 32px);color:var(--color-text);border:1px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:16px;padding:0;overflow:hidden}.modal::backdrop{background:#0c0f1894}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding-block:16px;padding-inline:24px;display:flex}.modal-header h2{margin:0;font-size:18px;font-weight:700;line-height:24px}.modal-close{width:40px;height:40px;color:var(--color-text);background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:inline-flex}.modal-close:hover{background:var(--color-surface-subtle)}.modal-body{max-height:min(75vh,680px);padding:24px 24px 0;scroll-padding-block-end:88px;overflow:auto}.modal-body input:not([type=checkbox]),.modal-body select{width:100%}.form-field{flex-direction:column;gap:4px;min-width:0;display:flex}.form-field+.form-field,.day-picker+.form-field,.form-row+.form-field,[role=alert]+.form-field{margin-block-start:16px}.form-field label{color:var(--color-text-muted);font-size:13px;font-weight:600;line-height:18px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block-start:16px;display:grid}.form-row .form-field+.form-field{margin-block-start:0}.modal-body input:disabled,.modal-body select:disabled{opacity:.5;cursor:not-allowed}@media (width<=640px){.modal-body{scroll-padding-block-end:140px}.form-row{grid-template-columns:minmax(0,1fr);gap:16px}}.reminder-editor{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:12px;gap:12px;min-width:0;margin:16px 0 0;padding:16px;display:grid}.reminder-editor legend{float:left;width:100%;color:var(--color-text-muted);padding:0;font-size:13px;font-weight:600;line-height:18px}.reminder-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.reminder-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding-inline:12px 4px;display:flex}@media (width<=640px){.reminder-list button{min-height:44px}}.reminder-add{grid-template-columns:max-content minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.reminder-add .form-field+.form-field{margin-block-start:0}.reminder-add-before-only{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.reminder-at{grid-column:span 2}.reminder-add .button-secondary{min-height:44px}.reminder-add .field-hint{grid-column:1/-1}@media (width<=640px){.reminder-add,.reminder-add-before-only{grid-template-columns:repeat(2,minmax(0,1fr))}.reminder-kind,.reminder-at,.reminder-add .button-secondary{grid-column:1/-1}}.day-picker{border:0;min-width:0;margin:16px 0 0;padding:0}.day-picker legend{color:var(--color-text-muted);margin-block-end:8px;padding:0;font-size:13px;font-weight:600;line-height:18px}.day-picker .field-hint{margin-block-start:8px}.day-picker-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px;display:grid}.day-toggle{min-height:40px;font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:0 8px}.day-toggle[aria-pressed=true]{color:var(--color-accent);background:var(--color-accent-soft);border-color:var(--color-accent);font-weight:600}.day-toggle:disabled{opacity:.5;cursor:not-allowed}.day-toggle-wide{grid-column:span 2}@media (width<=640px){.day-toggle{min-height:44px}}.field-hint{color:var(--color-text-muted);margin:0;font-size:13px}.modal-actions{z-index:1;background:var(--color-surface);border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;margin:24px -24px 0;padding:16px 24px 24px;display:flex;position:sticky;bottom:0}.secret-value{white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:10px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.copy-feedback{min-height:18px}@media (width<=640px){.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1 1 0;min-height:44px}.modal-actions .button-primary{flex-basis:100%}}.chooser{grid-template-columns:1fr 1fr;gap:12px;display:grid}.chooser-option{min-height:64px}@media (width<=640px){.chooser{grid-template-columns:1fr}}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-block-end:16px;display:flex}.calendar-header{flex-wrap:wrap;row-gap:0;margin-block-end:0}.calendar-header .calendar-toolbar{flex-basis:100%;order:1;margin-block-start:24px}@media (width>=641px) and (width<=1023px){.calendar-header .calendar-nav{order:-1}}.calendar-nav{gap:8px;display:flex}.calendar-title:focus-visible{outline:none}.calendar-title{flex:auto;margin:0;font-size:20px;font-weight:700;line-height:28px}.calendar-views{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;display:inline-flex;overflow:hidden}.calendar-view-select{display:none}.calendar-view-button{min-height:40px;color:var(--color-text);background:0 0;border:0;padding-inline:14px;font-size:14px;font-weight:600;line-height:20px}.calendar-view-button[aria-pressed=true]{background:var(--color-accent-soft);color:var(--color-accent)}.calendar-body,.calendar-frame{flex-direction:column;gap:16px;display:flex}.calendar-frame>.calendar-agenda:empty{display:none}.calendar-main{flex-direction:column;min-width:0;display:flex}@media (width>=1024px){.app-main-wide{flex-direction:column;width:100%;padding-block-end:24px;display:flex}.calendar-header{flex-wrap:nowrap;column-gap:24px;margin-block-end:16px}.calendar-header .calendar-toolbar{flex-wrap:nowrap;flex:auto;order:0;gap:24px;min-width:0;margin:0}.calendar-header .calendar-views{margin-inline-start:auto}.calendar-header .page-actions{flex-wrap:nowrap;flex:none}.calendar-header .calendar-nav,.calendar-header .calendar-views{flex:none}.calendar-header .calendar-title{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.calendar-page{flex-direction:column;flex:1 0 auto;display:flex}.calendar-frame[data-side=true]{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 320px;display:grid}.calendar-frame[data-side=true] .calendar-body,.calendar-frame[data-side=true] .calendar-month,.calendar-frame[data-side=true] .calendar-grid{flex:1 1 0}.calendar-frame[data-side=true] .calendar-body,.calendar-frame[data-side=true] .calendar-month{flex-direction:column;display:flex}.calendar-frame[data-side=true] .calendar-grid{grid-template-rows:repeat(6,minmax(96px,1fr))}.calendar-frame[data-side=true] .calendar-cell{min-height:0}.calendar-frame>.calendar-agenda{contain:size;overflow-y:auto}}.calendar-month{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:clip}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-grid{container:calendar-grid/inline-size}.calendar-weekdays span{color:var(--color-text-muted);text-transform:uppercase;padding:8px;font-size:12px;font-weight:700;line-height:18px}.calendar-grid,.calendar-chips,.calendar-week{margin:0;padding:0;list-style:none}.calendar-cell{border-block-start:1px solid var(--color-border);border-inline-start:1px solid var(--color-border);flex-direction:column;gap:4px;min-width:0;min-height:156px;padding:6px;display:flex}.calendar-cell:nth-child(7n+1){border-inline-start:0}.calendar-cell[data-outside=true]{background:var(--color-surface-subtle)}.calendar-day-number{width:32px;height:32px;color:var(--color-text);background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-self:flex-start;align-items:center;padding:0;font-size:14px;font-weight:600;line-height:20px;display:inline-flex}.calendar-cell[data-outside=true] .calendar-day-number{color:var(--color-text-muted)}.calendar-cell[data-selected=true] .calendar-day-number{box-shadow:inset 0 0 0 2px var(--color-accent)}.calendar-cell[data-today=true] .calendar-day-number{background:var(--color-accent);color:var(--color-on-accent)}.calendar-cell-head{justify-content:space-between;align-items:center;gap:4px;min-width:0;display:flex}.calendar-cell-body{flex-direction:column;flex:1 1 0;gap:4px;min-height:0;display:flex;overflow:hidden}@container calendar-grid (width<=960px){.calendar-cell-head{flex-wrap:wrap}.calendar-cell-head .calendar-routine-count{flex-basis:100%;min-height:18px;padding-inline:2px}}.calendar-dots{display:none}.calendar-chips{flex-direction:column;gap:4px;min-width:0;display:flex}.calendar-chip{background:var(--color-accent-soft);width:100%;min-width:0;color:var(--color-text);text-align:start;border:0;border-radius:6px;gap:6px;padding:2px 6px;font-size:14px;line-height:20px;display:flex}.calendar-chip-time{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none}.calendar-chip-title{overflow-wrap:break-word;min-width:0}.calendar-cell .calendar-chip{white-space:nowrap;text-overflow:ellipsis;height:24px;display:block;overflow:hidden}.calendar-cell .calendar-chip-time{margin-inline-end:6px}.calendar-chip[data-completed=true]{background:var(--color-surface-subtle);color:var(--color-text-muted)}.calendar-chip[data-completed=true] .calendar-chip-title{text-decoration:line-through}.calendar-chip[data-overdue=true]{background:var(--color-danger-soft);color:var(--color-danger)}.calendar-chip[data-kind=routine]{background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.calendar-chip[data-kind=routine][data-checked=true]{color:var(--color-text-muted)}.calendar-chip-done{font-weight:600}.calendar-routine-count{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--color-text-muted);margin:0;padding-inline:6px;font-size:13px;line-height:18px;overflow:hidden}.calendar-agenda-group{color:var(--color-text-muted);text-transform:uppercase;margin:12px 0 0;font-size:13px;font-weight:700;line-height:18px}.calendar-agenda-group:first-child,.calendar-agenda h2+.calendar-agenda-group{margin-block-start:0}.calendar-more{height:24px;color:var(--color-accent);background:0 0;border:0;flex:none;align-self:flex-start;padding:2px 6px;font-size:14px;font-weight:600;line-height:20px}.calendar-agenda h2{margin:0 0 8px;font-size:18px;line-height:26px}.calendar-agenda>.task-list:first-child{margin-block-start:0}.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-week-day{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:6px;min-width:0;min-height:200px;padding:8px;display:flex}.calendar-week .calendar-chip{flex-direction:column;gap:0}.calendar-week-day[data-today=true]{border-color:var(--color-accent)}.calendar-week-heading{color:var(--color-text);text-align:start;background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:14px;font-weight:700;line-height:20px}.calendar-week-day[data-today=true] .calendar-week-heading{color:var(--color-accent)}.calendar-empty{color:var(--color-text-muted);margin:0;padding-inline:6px;font-size:13px;line-height:18px}@media (hover:hover){.calendar-week-heading:hover,.calendar-cell:not([data-today=true]) .calendar-day-number:hover{background:var(--color-surface-subtle)}}@media (width<=640px){.calendar-toolbar{gap:8px}.calendar-title{flex-basis:100%;order:-1;font-size:18px;line-height:26px}.calendar-nav .button-secondary,.calendar-view-button{min-height:44px}.calendar-views{display:none}.calendar-view-select{margin-inline-start:auto;display:block}.calendar-weekdays span{text-align:center;padding:6px 0}.calendar-cell{min-height:0;padding:2px}.calendar-cell .calendar-chips,.calendar-more,.calendar-routine-count{display:none}.calendar-day-number{border-radius:8px;flex:1;align-self:stretch;gap:2px;width:auto;height:auto;min-height:44px;padding:4px 0}.calendar-dots{gap:3px;height:5px;display:flex}.calendar-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.calendar-week{grid-template-columns:minmax(0,1fr)}.calendar-week .calendar-chip{flex-direction:row;gap:6px}.calendar-week-day{min-height:0}.calendar-week-heading,.calendar-chip{align-items:center;min-height:44px}}
