@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--canvas:#fefefe;--bg:#fff;--surface:#f8f8f6;--surface-strong:#efefed;--border:#d9d6d2;--border-strong:#c2bdb6;--text:#111;--text-muted:#6b6b6b;--text-faint:#a3a3a3;--primary:#111;--brand:var(--primary);--danger:#bf3b30;--success:#2f7d52;--accent-task:#111;--accent-task-light:#f0f0f0;--accent-task-mid:#111;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-pill:999px;--shadow-card:0 0 12px rgba(0,0,0,.08);--shadow-card-hover:0 0 20px rgba(0,0,0,.12);--shadow-chip:0 0 12px rgba(0,0,0,.08);--shadow-popover:0 0 24px rgba(0,0,0,.14);--shadow-modal:0 0 40px rgba(0,0,0,.18);--header-height:48px;--navbar-height:48px;--sidebar-width:200px;--font-sans:"Satoshi","DM Sans",system-ui,sans-serif;--shell-panel-radius:16px;--shell-panel-shadow:0 0 4px rgba(0,0,0,.25);--shell-pill-shadow:0 0 6px rgba(0,0,0,.2);--shell-divider:rgba(0,0,0,.1);--shell-control:#484848;--dot-opacity:0.26;--shell-gap:16px;--shell-pad:32px;--shell-list-width:300px;--shell-chat-width:380px}html.dark{--shell-panel-shadow:0 0 4px rgba(0,0,0,.6);--shell-pill-shadow:0 0 2px rgba(0,0,0,.6);--shell-divider:hsla(0,0%,100%,.12);--shell-control:#9c9c9c;--dot-opacity:0.16;--canvas:#0a0a0a;--bg:#161616;--surface:#1f1f1f;--surface-strong:#2c2c2c;--border:#2a2f34;--border-strong:#57524b;--text:#f2f2f2;--text-muted:#9c9c9c;--text-faint:#6f6f6f;--primary:#f2f2f2;--brand:var(--primary);--danger:#e8756a;--success:#6fbe8f;--accent-task:#f2f2f2;--accent-task-light:#1f1f1f;--accent-task-mid:#f2f2f2;--shadow-card:0 0 12px rgba(0,0,0,.36);--shadow-card-hover:0 0 20px rgba(0,0,0,.48);--shadow-chip:0 0 12px rgba(0,0,0,.36);--shadow-popover:0 0 24px rgba(0,0,0,.55);--shadow-modal:0 0 40px rgba(0,0,0,.6)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--canvas);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}:root{--scrollbar-thumb:color-mix(in srgb,var(--text) 20%,transparent);--scrollbar-thumb-hover:color-mix(in srgb,var(--text) 34%,transparent)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:transparent;border:4px solid transparent;border-radius:var(--radius-pill);background-clip:padding-box;-webkit-transition:background-color .16s ease;transition:background-color .16s ease}:hover::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)}::-webkit-scrollbar-thumb:active,::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}}.card-open-link{opacity:0!important}div:hover .card-open-link{opacity:1!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes spotlightIn{0%{opacity:0;transform:scale(.94) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes cardSwitch{0%{opacity:0;transform:scale(.97) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tabIn{0%{opacity:.4;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.task-checkbox{transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.amae-list-checkbox{transition:transform .14s cubic-bezier(.22,1,.36,1)}.amae-list-checkbox:not(:disabled):hover{transform:scale(1.1)}.amae-list-checkbox:not(:disabled):active{transform:scale(.94)}.task-checkbox-previewable:not(:disabled):focus,.task-checkbox-previewable:not(:disabled):hover{background:var(--bg)!important;border-color:var(--accent-task)!important;color:var(--text)!important}.task-checkbox-preview-check{display:none;align-items:center;justify-content:center}.task-checkbox-previewable:not(:disabled):focus .task-checkbox-preview-check,.task-checkbox-previewable:not(:disabled):hover .task-checkbox-preview-check{display:flex;animation:taskCheckIn .16s ease-out}.task-checkbox-previewable:not(:disabled):focus .task-checkbox-number,.task-checkbox-previewable:not(:disabled):hover .task-checkbox-number{display:none}.task-checkbox-checked{animation:taskCheckPop .22s cubic-bezier(.16,1,.3,1)}.task-checkbox-check{display:flex;align-items:center;justify-content:center;animation:taskCheckIn .16s ease-out}.task-move-focus-overlay{position:absolute;top:8px;right:8px;width:68px;height:38px;display:flex;align-items:flex-start;justify-content:flex-end;padding:2px;pointer-events:none;background:linear-gradient(90deg,transparent 0,color-mix(in srgb,var(--task-card-bg,#fff) 80%,transparent) 100%);border-radius:var(--radius-sm);z-index:2}.task-move-focus-button{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-faint);cursor:pointer;padding:0;opacity:.82;pointer-events:auto;transform:translateY(-2px);transition:background .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease,transform .12s ease}.task-move-focus-button:focus-visible,.task-move-focus-button:hover{background:var(--bg);border-color:var(--accent-task-mid);color:var(--accent-task);opacity:1;transform:translateY(-3px)}.task-insertion-line{height:2px;border-radius:999px;background:var(--accent-task);pointer-events:none;position:absolute;left:0;right:0;z-index:10}@keyframes taskCheckPop{0%{transform:scale(.84)}65%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes amaeBoxPop{0%{transform:scale(1)}38%{transform:scale(.86)}to{transform:scale(1)}}@keyframes amaeCheckDraw{0%{stroke-dashoffset:13}to{stroke-dashoffset:0}}@keyframes amaeMarkIn{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.amae-box-pop{animation:amaeBoxPop .28s cubic-bezier(.22,1,.36,1);transform-origin:50% 50%}.amae-check-draw{stroke-dasharray:13;animation:amaeCheckDraw .24s cubic-bezier(.22,1,.36,1) both}.amae-mark-in{animation:amaeMarkIn .22s cubic-bezier(.22,1,.36,1) both;transform-origin:50% 50%}@keyframes taskCheckIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.amae-box-pop,.amae-check-draw,.amae-list-checkbox,.amae-mark-in,.auth-bg:before,.modal-gradient-bg:before,.quick-add-task-modal,.task-checkbox,.task-checkbox-check,.task-checkbox-checked,.task-checkbox-preview-check,.task-insertion-line,.task-move-focus-button{transition:none;animation:none}.amae-check-draw{stroke-dasharray:none}}.undo-banner{width:100%;max-width:860px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:13px;margin-top:16px;animation:fadeIn .2s ease}.undo-banner,.undo-banner button{background:var(--bg);color:var(--text)}.undo-banner button{border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 12px;font-size:12px;cursor:pointer;white-space:nowrap;font-family:var(--font-sans)}.undo-banner button:hover{background:var(--bg)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-line{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface) 25%,var(--border) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes meshMove{0%{transform:translate(0)}25%{transform:translate(18%,20%)}50%{transform:translate(8%,-18%)}75%{transform:translate(-15%,12%)}to{transform:translate(0)}}@keyframes modalBgIn{0%{opacity:0}to{opacity:.55}}@keyframes modalBlurIn{0%{opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}}.modal-blur-overlay{position:fixed;inset:0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:transparent;animation:modalBlurIn .25s ease-out forwards}.modal-gradient-bg{position:fixed;inset:0;overflow:hidden;isolation:isolate;background:var(--surface);animation:modalBgIn .25s ease-out forwards}.modal-gradient-bg:before{inset:-40%;filter:blur(60px);animation:meshMove 40s ease-in-out}.modal-gradient-bg:after,.modal-gradient-bg:before{content:"";position:absolute;z-index:0;background:var(--bg)}.modal-gradient-bg:after{inset:0;opacity:1;pointer-events:none}.auth-bg{position:relative;overflow:hidden;isolation:isolate;background:var(--surface)}.auth-bg:before{inset:-40%;filter:blur(60px);animation:meshMove 40s ease-in-out}.auth-bg:after,.auth-bg:before{content:"";position:absolute;z-index:0;background:var(--bg)}.auth-bg:after{inset:0;opacity:1;pointer-events:none}.auth-card{position:relative;z-index:1;border:1.5px solid var(--border)!important;border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-modal)!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.auth-card,html.dark .auth-card{background:var(--bg)!important}html.dark .auth-bg,html.dark .modal-gradient-bg{background:var(--surface)}.modal-surface{background:var(--bg)!important;border:1.5px solid var(--border)!important;border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-modal)!important}.quick-add-task-shell{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:none}.quick-add-task-modal{width:min(760px,100%);height:330px;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;color:var(--text);background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);animation:modalIn .18s ease-out forwards;transition:width .28s cubic-bezier(.22,1,.36,1),height .28s cubic-bezier(.22,1,.36,1)}.quick-add-task-modal.expanded{width:min(900px,100%);height:72vh}.quick-add-task-title-row{display:flex;align-items:center;gap:12px}.quick-add-task-window-actions{display:flex;flex:0 0 auto;align-items:center;gap:2px}.quick-add-task-close,.quick-add-task-resize{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius-sm);cursor:pointer}.quick-add-task-close:hover,.quick-add-task-resize:hover{color:var(--text);background:var(--bg)}.quick-add-task-body{min-height:0;display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:18px 18px 12px 20px}.quick-add-task-notes,.quick-add-task-title{width:100%;color:var(--text);background:transparent;border:0;outline:0}.quick-add-task-modal input:focus-visible,.quick-add-task-modal textarea:focus-visible{outline:none;box-shadow:none}.quick-add-task-title{min-width:0;flex:1 1;padding:0;font-size:21px;font-weight:650;letter-spacing:-.25px}.quick-add-task-title::placeholder{color:color-mix(in srgb,var(--text-muted) 66%,transparent)}.quick-add-task-notes{min-height:0;flex:1 1;margin-top:10px;padding:0;overflow-y:auto;resize:none;font-size:14px;line-height:1.55}.quick-add-task-notes::placeholder{color:var(--text-faint)}.quick-add-task-chips{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.quick-add-task-chip,.quick-add-task-date{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;color:var(--text-muted);background:var(--bg);border:1.5px solid var(--border);border-radius:999px;font-size:12px;line-height:1}.quick-add-task-chip{cursor:pointer}.quick-add-task-chip:hover,.quick-add-task-date:hover{color:var(--text);background:var(--bg)}.quick-add-task-chip.active{color:var(--accent-task);background:var(--accent-task-light);border-color:var(--accent-task-mid)}.quick-add-task-status-dot{width:12px;height:12px;border:1.5px solid;border-radius:50%}.quick-add-task-chip.active .quick-add-task-status-dot{background:currentColor;box-shadow:inset 0 0 0 3px var(--accent-task-light)}.quick-add-task-project{position:relative}.quick-add-task-project-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:30;width:min(290px,calc(100vw - 64px));padding:7px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-popover)}.quick-add-task-project-menu>input{width:100%;padding:8px 10px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:0;font-size:13px}.quick-add-task-project-menu>input:focus{border-color:var(--border)}.quick-add-task-project-options{max-height:210px;overflow-y:auto;margin-top:5px}.quick-add-task-project-empty,.quick-add-task-project-options button{width:100%;display:flex;align-items:center;gap:8px;padding:8px 9px;color:var(--text);background:transparent;border:0;border-radius:var(--radius-sm);font-size:13px;text-align:left}.quick-add-task-project-options button{cursor:pointer}.quick-add-task-project-options button.highlighted,.quick-add-task-project-options button:hover{background:var(--bg);outline:1px solid var(--border)}.quick-add-task-project-empty{color:var(--text-muted)}.quick-add-task-project-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%}.quick-add-task-date{position:relative;padding-right:9px;overflow:hidden}.quick-add-task-date.selected{color:var(--text)}.quick-add-task-date-icon{display:flex}.quick-add-task-date>input{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer}.quick-add-task-date>button{position:relative;z-index:2;width:18px;height:18px;display:grid;place-items:center;margin:-2px -5px -2px 0;padding:0;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:50%;cursor:pointer}.quick-add-task-error{margin:12px 0 0;color:var(--danger);font-size:13px}.quick-add-task-footer{display:flex;align-items:center;justify-content:space-between;gap:12px 18px;padding:12px 18px 14px}.quick-add-task-actions{display:flex;flex:0 0 auto;align-items:center;gap:14px}.quick-add-create-more{display:inline-flex;align-items:center;gap:8px;padding:4px 0;color:var(--text-muted);background:transparent;border:0;cursor:pointer;font-size:12px}.quick-add-create-more-track{width:30px;height:18px;display:flex;align-items:center;padding:2px;background:var(--bg);border:1px solid var(--border);border-radius:999px;transition:background .15s ease}.quick-add-create-more-track>span{width:14px;height:14px;background:var(--text);border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.25);transition:transform .15s ease}.quick-add-create-more-track.active{background:var(--bg)}.quick-add-create-more-track.active>span{transform:translateX(12px)}.quick-add-task-submit{min-width:136px;padding:9px 15px;color:var(--text);background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:650;transition:opacity .15s ease,transform .15s ease}.quick-add-task-submit:not(:disabled):hover{opacity:.88;transform:translateY(-1px)}.quick-add-task-submit:disabled{cursor:not-allowed;opacity:.42}.auth-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--text) 12%,transparent)}.auth-btn:not(:disabled):hover{opacity:.88!important;transform:translateY(-1px)}.sidebar{transition:transform .25s cubic-bezier(.4,0,.2,1)}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:9}.header-logo-full{display:inline}.header-logo-icon,.header-menu-btn{display:none!important}@media (max-width:768px){.quick-add-task-shell{align-items:flex-end;padding:12px}.quick-add-task-modal{height:420px;border-radius:var(--radius-xl)}.quick-add-task-modal.expanded{width:100%;height:calc(100vh - 24px)}.quick-add-task-body{overflow:hidden}.quick-add-task-footer{align-items:center;flex-wrap:wrap}.quick-add-task-chips{width:100%}.quick-add-task-actions{width:100%;justify-content:flex-end}.quick-add-task-submit{width:auto}.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0);z-index:25}.sidebar-overlay.open{display:block;z-index:24}.main-content{margin-left:0!important}.header-menu-btn{display:flex!important}.header-logo-full{display:none!important}.header-logo-icon{display:inline!important}.app-header{gap:12px!important;padding:10px 16px!important}.item-modal{flex-direction:column!important;max-height:88vh!important;height:auto!important;border-radius:var(--radius-lg)!important;max-width:calc(100% - 32px)!important;overflow-y:auto!important}.item-modal-left{width:100%!important;height:180px!important;flex-shrink:0!important}.item-modal-right{flex:1 1!important;overflow-y:auto!important}}@keyframes panelSlideIn{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@media (max-width:768px){.detail-side-panel{width:100%!important;top:var(--header-height)!important}}.task-detail-content{container-type:inline-size}.task-detail-columns{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);grid-gap:40px;gap:40px;align-items:start;margin-top:32px}@container (max-width: 680px){.task-detail-columns{grid-template-columns:minmax(0,1fr);gap:28px}}.note-detail-content{container-type:inline-size}.note-detail-sidebar{width:280px;flex-shrink:0}@container (max-width: 680px){.note-detail-columns{flex-direction:column}.note-detail-sidebar{width:100%}}.settings-root{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center}.settings-backdrop{z-index:0}.settings-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:880px;max-width:calc(100vw - 64px);height:600px;max-height:calc(100vh - 96px);background:var(--bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);overflow:hidden;animation:modalIn .2s ease-out}.settings-close{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.settings-close:hover{background:var(--surface);color:var(--text)}.settings-title{flex-shrink:0;margin:0;padding:20px 24px 16px;font-size:20px;font-weight:500;color:var(--text);border-bottom:1px solid var(--shell-divider)}.settings-body{flex:1 1;min-height:0;display:grid;grid-template-columns:176px minmax(0,1fr)}.settings-nav{display:flex;flex-direction:column;gap:4px;padding:20px 12px;border-right:1px solid var(--shell-divider)}.settings-nav-item{display:block;width:100%;padding:8px 12px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .15s,color .15s}.settings-nav-item:hover,.settings-nav-item[data-active=true]{background:var(--surface);color:var(--text)}.settings-section{min-width:0;min-height:0;overflow-y:auto;padding:20px 24px 32px}.settings-page{max-width:640px;display:flex;flex-direction:column;gap:28px}.settings-section-title{margin:0;font-size:16px;font-weight:500;color:var(--text)}.settings-group{display:flex;flex-direction:column;gap:8px}.settings-label{font-size:13px;font-weight:600;color:var(--text)}.settings-hint{margin:0;font-size:13px;line-height:1.5;color:var(--text-muted)}.settings-warning{color:var(--danger)}.settings-options{display:flex;gap:8px}.settings-btn,.settings-option{height:36px;padding:0 16px;border:none;border-radius:var(--radius-pill);background:var(--surface);color:var(--text-muted);font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.settings-btn:hover,.settings-option:hover,.settings-option[data-active=true]{background:var(--surface-strong);color:var(--text)}.settings-option[data-active=true]{font-weight:600}.settings-btn:disabled{opacity:.5;cursor:default}.settings-btn-primary,.settings-btn-primary:hover{background:var(--primary);color:var(--canvas)}.settings-btn-primary:hover{opacity:.88}.settings-btn-danger,.settings-btn-danger:hover{color:var(--danger)}.settings-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.settings-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);background:var(--surface)}.settings-row-title{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text)}.settings-row-meta{min-height:16px;font-size:12px;color:var(--text-muted)}.settings-row-actions{display:flex;gap:8px;margin-left:auto}.settings-badge{padding:0 8px;line-height:20px;border-radius:var(--radius-pill);background:var(--bg);font-size:11px;font-weight:500;color:var(--text-muted)}.settings-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.settings-switch{position:relative;display:inline-flex;width:40px;height:24px;flex-shrink:0;cursor:pointer}.settings-switch input{position:absolute;width:0;height:0;opacity:0}.settings-switch-track{position:absolute;inset:0;border-radius:var(--radius-pill);background:var(--surface-strong);transition:background .15s}.settings-switch-track:after{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:var(--bg);box-shadow:var(--shadow-chip);transition:transform .15s}.settings-switch input:checked+.settings-switch-track{background:var(--primary)}.settings-switch input:checked+.settings-switch-track:after{transform:translateX(16px)}.settings-switch input:disabled+.settings-switch-track{opacity:.5}.settings-select{height:36px;max-width:320px;padding:0 12px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:13px}.settings-inline-form{display:flex;gap:8px}.settings-input{flex:1 1;min-width:0;height:36px;padding:0 12px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:13px}.settings-input::placeholder{color:var(--text-faint)}.settings-input-narrow{flex:none;width:160px}.settings-ics-import{display:flex;flex-direction:column;gap:8px;padding-top:8px}.confirm-root{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center}.confirm-backdrop{z-index:0}.confirm-dialog{position:relative;z-index:1;width:400px;max-width:calc(100vw - 32px);padding:24px;background:var(--bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);animation:modalIn .2s ease-out}.confirm-title{margin:0 0 8px;font-size:16px;font-weight:500;color:var(--text)}.confirm-body{margin:0;font-size:14px;line-height:1.5;color:var(--text-muted)}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.cal-root{height:100%;min-height:0}.cal-root,.cal-side{display:flex;flex-direction:column}.cal-side{gap:24px;padding:16px}.cal-side-new{align-self:flex-start}.cal-mini{display:flex;flex-direction:column;gap:8px}.cal-mini-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px}.cal-mini-title{font-size:13px;font-weight:600;color:var(--text)}.cal-mini-nav{display:flex;gap:0}.cal-icon-btn-sm{width:24px;height:24px}.cal-mini-grid{display:grid;grid-template-columns:24px repeat(7,minmax(0,1fr));grid-column-gap:0;column-gap:0;grid-row-gap:4px;row-gap:4px}.cal-mini-row{display:contents}.cal-mini-cell{display:flex;align-items:center;justify-content:center;height:24px;font-family:var(--font-sans);font-size:11px}.cal-mini-weekday{font-weight:500}.cal-mini-week,.cal-mini-weekday{color:var(--text-faint)}.cal-mini-week-btn{padding:0;border:none;border-radius:50%;background:transparent;cursor:pointer}.cal-mini-week-btn:hover{background:var(--surface);color:var(--text)}.cal-mini-day{padding:0;border:none;border-radius:50%;background:transparent;color:var(--text);cursor:pointer}.cal-mini-day:hover{background:var(--surface)}.cal-mini-day[data-outside=true]{color:var(--text-faint)}.cal-mini-day[data-range]{background:var(--surface-strong);color:var(--text)}.cal-mini-day[data-range=start]{border-radius:12px 0 0 12px}.cal-mini-day[data-range=mid]{border-radius:0}.cal-mini-day[data-range=end]{border-radius:0 12px 12px 0}.cal-mini-day[data-today=true]{background:var(--primary);color:var(--canvas);font-weight:600}.cal-mini-day[data-today=true][data-range=end],.cal-mini-day[data-today=true][data-range=mid],.cal-mini-day[data-today=true][data-range=start]{background:var(--primary);border-radius:50%;box-shadow:0 0 0 4px var(--surface-strong)}.cal-side-group{display:flex;flex-direction:column;gap:4px}.cal-side-heading{padding:0 4px 4px;font-size:13px;font-weight:600;color:var(--text)}.cal-side-item{display:flex;align-items:center;gap:12px;height:32px;padding:0 4px;border-radius:var(--radius-sm);font-size:13px;color:var(--text);cursor:pointer}.cal-side-item:hover{background:var(--surface)}.cal-side-item input{position:absolute;width:0;height:0;opacity:0}.cal-side-box{position:relative;width:16px;height:16px;flex-shrink:0;border:2px solid var(--cal-color);border-radius:4px;box-sizing:border-box;transition:background .15s}.cal-side-item input:checked+.cal-side-box{background:var(--cal-color)}.cal-side-item input:checked+.cal-side-box:after{content:"";position:absolute;top:1px;left:4px;width:4px;height:8px;border:solid var(--canvas);border-width:0 2px 2px 0;transform:rotate(45deg)}.cal-side-name{flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:16px 16px 12px;overflow:hidden;scrollbar-gutter:stable}.cal-toolbar-group{display:flex;align-items:center;gap:8px;min-width:0}.cal-title{margin:0 0 0 8px;font-size:16px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-loading{width:8px;height:8px;border-radius:50%;background:var(--text-faint);animation:calPulse 1s ease-in-out infinite}.cal-toggle{display:inline-flex;align-items:center;gap:8px;margin-right:8px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;white-space:nowrap}.cal-toggle:has(input:checked){color:var(--text)}.cal-toggle-switch{width:32px;height:20px}.cal-toggle-switch .settings-switch-track:after{width:12px;height:12px}.cal-toggle-switch input:checked+.settings-switch-track:after{transform:translateX(12px)}@keyframes calPulse{0%,to{opacity:.3}50%{opacity:1}}.cal-icon-btn{display:grid;place-items:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--shell-control);cursor:pointer}.cal-icon-btn:hover{background:var(--surface);color:var(--text)}.cal-pill{height:32px;padding:0 12px;border:none;border-radius:var(--radius-pill);background:var(--surface);color:var(--text-muted);font-family:var(--font-sans);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s}.cal-pill:hover,.cal-pill[data-active=true]{background:var(--surface-strong);color:var(--text)}.cal-pill[data-active=true]{font-weight:600}.cal-pill:disabled{opacity:.5;cursor:default}.cal-segment{display:flex;gap:4px;padding:4px;border-radius:var(--radius-pill);background:var(--surface)}.cal-segment-item{height:24px;padding:0 12px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer}.cal-segment-item[data-active=true]{background:var(--bg);color:var(--text);box-shadow:var(--shadow-chip)}.cal-btn{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 16px;border:none;border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:13px;font-weight:500;white-space:nowrap;text-decoration:none;cursor:pointer}.cal-btn:hover{background:var(--surface-strong)}.cal-btn:disabled{opacity:.5;cursor:default}.cal-btn-primary{background:var(--primary);color:var(--canvas)}.cal-btn-primary:hover{background:var(--primary);opacity:.88}.cal-btn-danger{color:var(--danger)}.cal-grid{display:flex;flex-direction:column;flex:1 1;min-height:0}.cal-grid-head{display:grid;flex-shrink:0;margin:0 16px}.cal-day-head{padding:4px 8px 8px;border-bottom:1px solid var(--shell-divider);font-size:13px;font-weight:500;color:var(--text-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-day-head[data-today=true]{color:var(--text);font-weight:600}.cal-allday{display:grid;flex-shrink:0;margin:0 16px}.cal-allday-cell{display:flex;flex-direction:column;gap:4px;min-height:28px;padding:4px;border-left:1px solid var(--shell-divider);border-bottom:1px solid var(--shell-divider);cursor:pointer}.cal-scroll{flex:1 1;min-height:0;overflow-y:auto;padding:0 16px 16px;scrollbar-gutter:stable}.cal-body{display:grid}.cal-body,.cal-hours{position:relative}.cal-hour-label{position:absolute;right:8px;transform:translateY(-50%);font-size:11px;color:var(--text-faint)}.cal-day-col{position:relative;border-left:1px solid var(--shell-divider)}.cal-allday-cell:last-child,.cal-day-col:last-child{border-right:1px solid var(--shell-divider)}.cal-day-col[data-today=true]{background:color-mix(in srgb,var(--text) 3%,transparent)}.cal-grid[data-single=true] .cal-day-col[data-today=true]{background:transparent}.cal-hour-line{height:1px;background:var(--shell-divider)}.cal-hour-line,.cal-now{position:absolute;left:0;right:0;pointer-events:none}.cal-now{z-index:2;height:2px;background:var(--danger)}.cal-now:before{content:"";position:absolute;top:-3px;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--danger)}.cal-chip{display:flex;align-items:center;gap:4px;padding:0 8px;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:12px;line-height:20px;color:var(--text);text-align:left;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cal-chip,.cal-chip-title{min-width:0;overflow:hidden}.cal-chip-title{flex:1 1;white-space:nowrap;text-overflow:ellipsis}.cal-chip-time{font-size:11px;color:var(--text-muted);white-space:nowrap}.cal-chip-allday{height:20px}.cal-chip-timed{position:absolute;z-index:1;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0}.cal-chip-timed:hover{z-index:2}.cal-chip-timed .cal-chip-title{flex:1 1;min-height:0;white-space:normal;overflow:hidden;text-overflow:clip;line-height:16px;padding-top:4px;overflow-wrap:anywhere}.cal-chip-timed .cal-chip-time{flex-shrink:0;padding-bottom:4px}.cal-chip-handle{position:absolute;left:0;right:0;height:8px;cursor:ns-resize}.cal-chip-handle-top{top:0}.cal-chip-handle-bottom{bottom:0}.cal-chip-timed[data-dragging=true]{z-index:3;opacity:.7;box-shadow:var(--shadow-popover)}.cal-chip-preview{background:var(--surface-strong);pointer-events:none;z-index:2}.cal-chip-month{width:100%;height:20px;border:none}.cal-chip-task-mark{width:8px;height:8px;flex-shrink:0;border:1px solid;border-radius:50%;opacity:.7}.cal-month{display:flex;flex-direction:column;flex:1 1;min-height:0;padding:0 16px 16px;overflow:hidden;scrollbar-gutter:stable}.cal-month-head{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));flex-shrink:0}.cal-month-weekday{padding:4px 8px 8px;font-size:13px;font-weight:500;color:var(--text-muted);text-align:center}.cal-month-body{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);flex:1 1;min-height:0;border-top:1px solid var(--shell-divider);border-left:1px solid var(--shell-divider)}.cal-month-cell{display:flex;flex-direction:column;gap:4px;min-height:0;padding:4px;border-right:1px solid var(--shell-divider);border-bottom:1px solid var(--shell-divider);overflow:hidden}.cal-month-cell[data-outside=true]{opacity:.45}.cal-month-cell[data-today=true]{background:color-mix(in srgb,var(--text) 3%,transparent)}.cal-month-daynum{align-self:flex-start;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer}.cal-month-daynum:hover{background:var(--surface);color:var(--text)}.cal-month-cell[data-today=true] .cal-month-daynum{background:var(--primary);color:var(--canvas)}.cal-month-items{display:flex;flex-direction:column;gap:4px;min-height:0}.cal-month-more{align-self:flex-start;padding:0 8px;border:none;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:11px;cursor:pointer}.cal-month-more:hover{color:var(--text)}.cal-detail{display:flex;flex-direction:column;gap:20px;padding:24px}.cal-detail-head{display:flex;align-items:flex-start;gap:8px}.cal-detail-title{flex:1 1;min-width:0;padding:4px 0;border:none;background:transparent;color:var(--text);font-family:var(--font-sans);font-size:20px;font-weight:500}.cal-detail-title::placeholder{color:var(--text-faint)}.cal-detail-title-static{flex:1 1;margin:0;padding:4px 0;font-size:20px;font-weight:500;color:var(--text)}.cal-detail-section{display:flex;flex-direction:column;gap:8px}.cal-detail-label{font-size:11px;font-weight:500;color:var(--text-faint)}.cal-detail-row{display:flex;gap:8px}.cal-detail-hint{margin:0;font-size:13px;line-height:1.5;color:var(--text-muted)}.cal-detail-meta{margin:0;font-size:13px;color:var(--text)}.cal-detail-readonly{display:flex;flex-direction:column;gap:8px;padding:12px 16px;border-radius:var(--radius-md);background:var(--surface)}.cal-rsvp{display:flex;gap:8px}.cal-input{height:36px;min-width:0;padding:0 12px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:14px}.cal-input:disabled{color:var(--text-muted);opacity:1}.cal-input-wide{width:100%}.cal-textarea{width:100%;padding:8px 12px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;resize:vertical}.cal-textarea:disabled{color:var(--text-muted);opacity:1}.cal-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer}.cal-check input{width:16px;height:16px;margin:0;accent-color:var(--primary)}.cal-chips{display:flex;flex-wrap:wrap;gap:4px}.cal-attendee-chip{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 4px 0 8px;border-radius:var(--radius-pill);background:var(--surface);font-size:12px;color:var(--text)}.cal-attendee-chip[data-status=accepted]{box-shadow:inset 0 0 0 1px var(--success)}.cal-attendee-chip[data-status=declined]{text-decoration:line-through;opacity:.6}.cal-attendee-remove{width:16px;height:16px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:14px;line-height:1;cursor:pointer}.cal-attendee-remove:hover{background:var(--surface-strong);color:var(--text)}.cal-attendees{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.cal-attendee{display:flex;align-items:center;gap:8px;font-size:13px}.cal-attendee-name{flex:1 1;min-width:0;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-attendee-meta{font-size:12px;color:var(--text-muted);white-space:nowrap}.cal-attendee-status{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--text-faint)}.cal-attendee-status[data-status=accepted]{background:var(--success)}.cal-attendee-status[data-status=declined]{background:var(--danger)}.cal-attendee-status[data-status=tentative]{background:var(--text-muted)}.cal-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-muted);text-decoration:underline}.cal-link:hover{color:var(--text)}.cal-detail-actions{display:flex;align-items:center;gap:8px;padding-top:4px}.cal-detail-tz{margin-left:auto;font-size:11px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}