.auth-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-frame{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:minmax(340px,38%) minmax(0,1fr);width:min(1184px,100%);min-height:min(790px,100dvh - 48px);display:grid;overflow:hidden}.auth-brand{color:#fff;background:var(--color-brand);flex-direction:column;justify-content:space-between;min-width:0;padding:44px 40px 36px;display:flex;position:relative}.brand-lockup{align-items:center;gap:10px;font-size:21px;font-weight:750;line-height:28px;display:flex}.brand-mark{border-radius:var(--radius);width:32px;height:32px;color:var(--color-brand);background:#fff;place-items:center;display:grid}.brand-caption{color:var(--color-brand-muted);margin-top:13px}.day-preview{border-radius:var(--radius);background:var(--color-brand-surface);border:1px solid #ffffff1f;width:min(100%,280px);padding:20px}.day-preview>span{color:var(--color-brand-muted);font-size:13px;display:block}.day-preview>strong{margin-top:8px;font-size:24px;line-height:32px;display:block}.brand-timezone{color:var(--color-brand-muted);align-items:center;gap:9px;font-size:12px;display:flex}.timezone-dot{background:#4cb6a4;border-radius:50%;flex:none;width:8px;height:8px}.auth-form-panel{background:var(--color-surface);place-items:center;min-width:0;padding:44px clamp(32px,7vw,100px);display:grid}.register-content,.accepted-state{width:min(100%,420px)}.register-header h1,.accepted-state h1{letter-spacing:0;font-size:28px;font-weight:750;line-height:36px}.register-header>p:last-child,.accepted-state>p{color:var(--color-muted);margin-top:8px}.offline-notice{z-index:10;color:#7a4b00;background:#fff8e8;border-bottom:1px solid #e7c88f;place-items:center;min-height:44px;padding:10px 12px;font-size:13px;display:grid;position:fixed;top:0;left:0;right:0}.register-form{margin-top:28px}.form-field{margin-top:18px}.form-field:first-child{margin-top:0}.form-field>label{margin-bottom:7px;font-size:13px;font-weight:650;line-height:20px;display:block}.form-field input[type=text],.form-field input[type=email],.form-field input[type=password]{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 13px}.form-field input:hover{border-color:#87939e}.form-field input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.form-field input[aria-invalid=true]{border-color:var(--color-danger)}.password-control{position:relative}.password-control input{padding-right:48px!important}.icon-button{width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:5px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.icon-button:hover{color:var(--color-text);background:var(--color-page)}.field-hint,.field-error{margin-top:5px;font-size:12px;line-height:18px}.field-hint{color:var(--color-muted)}.field-error{color:var(--color-danger)}.terms-field{margin-top:20px}.terms-field label{cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding-top:8px;font-size:13px;display:flex}.terms-field input{width:18px;height:18px;accent-color:var(--color-primary);flex:none;margin:2px 0 0}.form-error{border-radius:var(--radius);color:#8c2633;background:var(--color-danger-soft);border:1px solid #efb8bf;margin-top:18px;padding:11px 12px}.form-error small{overflow-wrap:anywhere;color:#9b4a55;margin-top:3px;display:block}.primary-button,.secondary-button{border-radius:var(--radius);justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.primary-button{width:100%;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;margin-top:24px}.primary-button:hover:not(:disabled){background:var(--color-primary-hover)}.primary-button:disabled{color:#e6efed;background:#6da89e}.primary-button svg{animation:.8s linear infinite spin}.auth-switch{text-align:center;color:var(--color-muted);margin-top:24px}.auth-switch a{min-width:44px;min-height:44px;color:var(--color-primary);align-items:center;margin-left:5px;font-weight:700;text-decoration:none;display:inline-flex}.accepted-state{text-align:center}.accepted-icon{width:64px;height:64px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;margin:0 auto 24px;display:grid}.accepted-state>p{max-width:360px;margin-left:auto;margin-right:auto}.secondary-button{border:1px solid var(--color-border-strong);min-width:140px;color:var(--color-text);background:var(--color-surface);margin-top:28px}.secondary-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.auth-unsaved-backdrop{z-index:160;background:#12191e85;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-unsaved-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(100%,420px);color:var(--color-text);background:var(--color-surface);overflow:hidden;box-shadow:0 18px 48px #12191e3d}.auth-unsaved-dialog>header{align-items:center;gap:10px;padding:18px 20px 12px;display:flex}.auth-unsaved-dialog>header>span{border-radius:var(--radius);width:38px;height:38px;color:var(--color-danger);background:var(--color-danger-soft);flex:none;place-items:center;display:grid}.auth-unsaved-dialog header p,.auth-unsaved-dialog header h2,.auth-unsaved-dialog>p{margin:0}.auth-unsaved-dialog header p{color:var(--color-muted);font-size:11px;font-weight:700}.auth-unsaved-dialog header h2{letter-spacing:0;font-size:18px;line-height:26px}.auth-unsaved-dialog>p{color:var(--color-muted);padding:0 20px 18px;font-size:13px;line-height:21px}.auth-unsaved-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.auth-unsaved-dialog button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 13px;font-weight:700}.auth-unsaved-dialog button.danger{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));color:var(--color-danger)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=767px){.auth-page{background:var(--color-surface);padding:0;display:block}.auth-frame{border:0;border-radius:0;min-height:100dvh;display:block}.auth-brand{min-height:88px;padding:24px 20px}.brand-caption,.day-preview,.brand-timezone{display:none}.auth-form-panel{padding:32px 20px 40px;display:block}.register-content,.accepted-state{width:100%;max-width:480px;margin:0 auto}.register-header h1,.accepted-state h1{font-size:25px;line-height:34px}.form-field input[type=text],.form-field input[type=email],.form-field input[type=password],.primary-button,.secondary-button{min-height:48px}.icon-button{top:6px}.register-content .icon-button{width:44px;height:44px;top:2px;right:2px}.accepted-state{padding-top:72px}.auth-unsaved-backdrop{align-items:end;padding:0}.auth-unsaved-dialog{border-bottom:0;border-left:0;border-right:0;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.login-content{width:min(100%,340px)}.login-header h1{letter-spacing:0;font-size:28px;font-weight:750;line-height:36px}.login-header p{color:var(--color-muted);margin-top:8px}.login-form{margin-top:28px}.field-label-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:7px;font-size:13px;line-height:20px;display:flex}.field-label-row label{font-weight:650}.field-label-row a{min-height:44px;color:var(--color-primary);align-items:center;font-size:12px;text-decoration:none;display:inline-flex}.remember-field{cursor:pointer;align-items:center;gap:10px;min-height:44px;margin-top:14px;display:flex}.remember-field input{width:18px;height:18px;accent-color:var(--color-primary);margin:0}.login-resend{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:4px 7px;margin-top:12px;font-size:13px;display:flex}.login-resend button{min-height:44px;color:var(--color-primary);cursor:pointer;background:0 0;padding:0;font-weight:700}.login-resend button:disabled{color:#8c96a0}.login-resend-feedback{border-radius:var(--radius);border:1px solid;margin-top:12px;padding:11px 12px;font-size:13px}.login-resend-feedback.success{color:#1c6948;background:#edf8f2;border-color:#a8d4c2}.login-resend-feedback.error{color:#8c2633;background:var(--color-danger-soft);border-color:#efb8bf}.login-resend-feedback small{overflow-wrap:anywhere;margin-top:3px;display:block}.login-register{border-top:1px solid var(--color-border);color:var(--color-muted);justify-items:center;gap:1px;margin-top:36px;padding-top:22px;display:grid}.login-register a{min-height:44px;color:var(--color-primary);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.login-back{min-height:44px;color:var(--color-primary);cursor:pointer;background:0 0;align-items:center;gap:7px;margin-bottom:22px;display:inline-flex}@media (width<=767px){.login-content{width:100%;max-width:480px;margin:0 auto}.login-header h1{font-size:25px;line-height:34px}.login-register{margin-top:30px}.login-content .icon-button{width:44px;height:44px;top:2px;right:2px}}.password-recovery-content{width:min(100%,380px)}.password-recovery-header h1,.password-recovery-status h1{letter-spacing:0;font-size:28px;font-weight:750;line-height:36px}.password-recovery-header p{color:var(--color-muted);margin-top:8px}.password-recovery-form{margin-top:28px}.password-recovery-back{min-height:44px;color:var(--color-primary);justify-content:center;align-items:center;gap:7px;margin-top:24px;font-weight:700;text-decoration:none;display:flex}.password-recovery-status{text-align:center}.password-recovery-status>p{max-width:360px;color:var(--color-muted);margin:8px auto 0}.password-recovery-status>small{overflow-wrap:anywhere;color:var(--color-muted);margin-top:8px;display:block}.password-recovery-icon{border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 24px;display:grid}.password-recovery-icon.mail{color:#2878c8;background:var(--color-info-soft)}.password-recovery-icon.success{color:var(--color-primary);background:var(--color-primary-soft)}.password-recovery-icon.danger{color:var(--color-danger);background:var(--color-danger-soft)}.password-recovery-status .secondary-button{cursor:pointer;padding:0 22px}@media (width<=767px){.password-recovery-content{width:100%;max-width:480px;margin:0 auto}.password-recovery-header h1,.password-recovery-status h1{font-size:25px;line-height:34px}.password-recovery-status{padding-top:52px}.password-recovery-content .icon-button{width:44px;height:44px;top:2px;right:2px}}.verification-content{width:min(100%,440px)}.verification-status{text-align:center}.verification-status h1{letter-spacing:0;font-size:28px;font-weight:750;line-height:36px}.verification-status>p{max-width:380px;color:var(--color-muted);margin:8px auto 0}.verification-status>small{overflow-wrap:anywhere;color:var(--color-muted);margin-top:8px;display:block}.verification-icon{border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 24px;display:grid}.verification-icon.pending{color:#2878c8;background:var(--color-info-soft)}.verification-icon.pending svg{animation:.8s linear infinite spin}.verification-icon.success{color:var(--color-primary);background:var(--color-primary-soft)}.verification-icon.danger{color:var(--color-danger);background:var(--color-danger-soft)}.verification-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.verification-actions .secondary-button{margin-top:0}button.secondary-button{cursor:pointer;padding:0 22px}.secondary-button:disabled{color:#8c96a0;background:var(--color-page);cursor:not-allowed}.resend-panel{border-top:1px solid var(--color-border);margin-top:38px;padding-top:30px}.resend-heading{align-items:flex-start;gap:12px;display:flex}.resend-heading>svg{color:var(--color-primary);flex:none;margin-top:2px}.resend-heading h2{font-size:17px;font-weight:750;line-height:24px}.resend-heading p{color:var(--color-muted);margin-top:3px;font-size:13px}.resend-form,.resend-form .primary-button{margin-top:18px}.resend-feedback{border-radius:var(--radius);border:1px solid;margin-top:16px;padding:11px 12px}.resend-feedback.success{color:#1c6948;background:#edf8f2;border-color:#a8d4c2}.resend-feedback.error{color:#8c2633;background:var(--color-danger-soft);border-color:#efb8bf}.resend-feedback small{overflow-wrap:anywhere;margin-top:3px;display:block}@media (width<=767px){.verification-content{width:100%;max-width:480px;margin:0 auto;padding-top:52px}.verification-status h1{font-size:25px;line-height:34px}.resend-panel{margin-top:32px;padding-top:26px}}.calendar-page{width:100%;max-width:1400px;min-height:620px;margin:0 auto}.event-dialog .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.calendar-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px;display:flex}.calendar-heading p{color:var(--color-muted);font-size:13px}.calendar-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.calendar-heading span{color:var(--color-muted);font-size:13px}.calendar-heading-actions{gap:8px;display:flex}.calendar-primary-button,.calendar-secondary-button,.event-primary-button{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:0 13px;font-weight:700;display:inline-flex}.calendar-primary-button,.event-primary-button{color:var(--color-on-solid);background:var(--color-primary)}.calendar-secondary-button{border:1px solid var(--color-border);color:var(--color-primary-hover);background:var(--color-surface)}.calendar-primary-button:disabled,.calendar-secondary-button:disabled,.event-primary-button:disabled{cursor:not-allowed;opacity:.5}.calendar-controls{justify-content:space-between;align-items:center;gap:12px;min-height:48px;margin-bottom:8px;display:flex}.calendar-navigation,.calendar-view-switch{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);align-items:center;display:flex;overflow:hidden}.calendar-navigation button{min-width:44px;height:44px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;padding:0 10px;display:grid}.calendar-navigation button+button,.calendar-view-switch button+button{border-left:1px solid var(--color-border)}.calendar-view-switch button{min-width:48px;height:44px;color:var(--color-muted);cursor:pointer;background:0 0;padding:0 11px}.calendar-view-switch button.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.calendar-filter-band{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);align-items:center;gap:14px;min-height:48px;margin-bottom:10px;padding:7px 9px;display:flex}.calendar-filter-band fieldset{border:0;flex-wrap:wrap;align-items:center;gap:5px 12px;min-width:0;margin:0;padding:0;display:flex}.calendar-filter-band legend{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.calendar-filter-band label{min-width:44px;min-height:44px;color:var(--color-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:5px;font-size:11px;display:inline-flex}.calendar-filter-band input{width:15px;height:15px;accent-color:var(--color-primary)}.calendar-filter-band label>i{background:var(--color-muted);border-radius:2px;width:7px;height:7px}.calendar-filter-band label>i[data-type=event]{background:#167d6d}.calendar-filter-band label>i[data-type=time_block]{background:#6b5cc4}.calendar-filter-band label>i[data-type=task_planned]{background:#2878c8}.calendar-filter-band label>i[data-type=task_due]{background:#c43d4b}.calendar-filter-band label>i[data-type=habit_reminder]{background:#5e7c3a}.calendar-cancelled-toggle{margin-left:auto}.calendar-workspace.with-task-tray{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:10px;display:grid}.calendar-task-tray{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;height:70vh;min-height:470px;display:flex;overflow:hidden}.calendar-task-tray>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;min-height:47px;padding:0 11px;display:flex}.calendar-task-tray h2{letter-spacing:0;font-size:13px}.calendar-task-tray>header span{min-width:24px;min-height:24px;color:var(--color-muted);background:var(--color-page);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.calendar-task-tray>header .calendar-task-tray-count-skeleton{background:var(--color-border);opacity:.65}.calendar-task-list{flex:1;overflow-y:auto}.calendar-unscheduled-task{border-bottom:1px solid var(--color-border);min-height:58px;color:var(--color-muted);cursor:grab;grid-template-columns:17px minmax(0,1fr) 36px;align-items:center;gap:8px;padding:7px 7px 7px 8px;display:grid}.calendar-unscheduled-task:active{cursor:grabbing;box-shadow:0 7px 18px #1c232b24}.calendar-unscheduled-task>div{min-width:0}.calendar-unscheduled-task strong,.calendar-unscheduled-task span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-unscheduled-task strong{color:var(--color-text);font-size:12px;line-height:18px}.calendar-unscheduled-task span{font-size:10px;line-height:16px}.calendar-unscheduled-task button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-primary-hover);cursor:pointer;background:0 0;place-items:center;display:grid}.calendar-unscheduled-task button:hover,.calendar-unscheduled-task button:focus-visible{background:var(--color-primary-soft)}.calendar-task-tray-state{color:var(--color-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;padding:14px;font-size:11px;display:flex}.calendar-task-tray-state i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;height:45px}.calendar-task-tray-state.error{color:var(--color-danger)}.calendar-task-tray-state.error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.calendar-task-tray-state button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;min-width:44px;min-height:44px;padding:0 9px}.calendar-surface{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:470px;padding:8px;position:relative}.calendar-surface .fc{color:var(--color-text);font-family:inherit;font-size:12px}.calendar-surface .fc-theme-standard td,.calendar-surface .fc-theme-standard th,.calendar-surface .fc-theme-standard .fc-list,.calendar-surface .fc-theme-standard .fc-scrollgrid{border-color:var(--color-border)}.calendar-surface .fc-col-header-cell-cushion,.calendar-surface .fc-daygrid-day-number,.calendar-surface .fc-list-day-text,.calendar-surface .fc-list-day-side-text{color:var(--color-text);text-decoration:none}.calendar-surface .fc-col-header-cell-cushion{color:var(--color-muted);padding:7px 4px;font-weight:700}.calendar-surface .fc-day-today .fc-col-header-cell-cushion{color:var(--color-text)}.calendar-surface .fc-daygrid-day-number{padding:5px 7px}.calendar-surface .fc-day-today{background:var(--color-primary-soft)!important}.calendar-surface .fc-timegrid-slot-label,.calendar-surface .fc-timegrid-axis-cushion{color:var(--color-muted);font-size:10px}.calendar-surface .fc-event{cursor:default;border-radius:3px;min-width:44px}.calendar-surface .fc-daygrid-event{min-height:44px}.calendar-surface .fc-list-event>td{height:44px}.calendar-surface .calendar-event-readonly,.calendar-surface .calendar-event-editable{cursor:pointer}.calendar-surface .calendar-event-cancelled{opacity:.55;text-decoration:line-through}.calendar-event-content{min-width:0;padding:1px 3px;overflow:hidden}.calendar-event-content span,.calendar-event-content strong,.calendar-event-content small{text-overflow:ellipsis;white-space:nowrap;line-height:16px;display:block;overflow:hidden}.calendar-event-content strong{font-size:11px}.calendar-event-content small{align-items:center;gap:2px;font-size:9px}.calendar-event-content small svg{vertical-align:-1px;margin-right:2px;display:inline}.calendar-empty-note{color:var(--color-muted);pointer-events:none;align-items:center;gap:6px;font-size:11px;display:inline-flex;position:absolute;top:78px;left:50%;transform:translate(-50%)}.calendar-skeleton{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:500px;padding:8px}.calendar-skeleton>span{background:var(--color-border);opacity:.55;height:36px;margin-bottom:7px;display:block}.calendar-skeleton>div{grid-template-columns:repeat(7,1fr);display:grid}.calendar-skeleton i{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);height:120px}.calendar-skeleton.day>div{grid-template-columns:1fr}.calendar-skeleton.day i{height:52px}.calendar-load-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:430px;display:flex}.calendar-load-error h2{letter-spacing:0;margin-top:9px;font-size:18px}.calendar-load-error p,.calendar-load-error small{color:var(--color-muted)}.calendar-load-error>div{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.calendar-load-error button{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:6px;padding:0 12px;font-weight:700;display:inline-flex}.calendar-toast{z-index:150;border:1px solid var(--color-primary);border-radius:var(--radius);min-height:40px;color:var(--color-primary-hover);background:var(--color-primary-soft);align-items:center;padding:0 13px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #1c232b24}.event-dialog-backdrop{z-index:120;background:#1c232b61;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.event-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(640px,100%);max-height:min(860px,100vh - 36px);color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 58px #1c232b42}.event-dialog-header{border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:11px 14px 11px 20px;display:flex}.event-dialog-header p{color:var(--color-muted);font-size:11px;font-weight:700}.event-dialog-header h2{letter-spacing:0;font-size:18px;line-height:27px}.event-dialog-header>div:last-child{gap:8px;display:flex}.event-dialog-header button,.event-decision-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.event-dialog-header button:hover:not(:disabled),.event-decision-dialog header button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.event-dialog-header button.danger:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.event-dialog-header button:disabled{cursor:not-allowed;opacity:.5}.event-dialog-body{flex:1;padding:18px 20px;overflow-y:auto}.event-dialog-body>label{margin-bottom:14px;display:block}.event-dialog-body label>span,.event-dialog-body legend,.event-scope-body legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.event-dialog-body input:not([type=checkbox]):not([type=radio]),.event-dialog-body textarea,.event-dialog-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:7px 9px}.event-dialog-body input:focus,.event-dialog-body textarea:focus,.event-dialog-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.event-dialog-body input:disabled,.event-dialog-body textarea:disabled,.event-dialog-body select:disabled{color:var(--color-muted);background:var(--color-page);cursor:not-allowed}.event-contact-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.event-contact-load-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.event-contact-load-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.event-contact-load-error small{color:var(--color-muted);display:block}.event-contact-load-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;align-items:center;gap:5px;min-height:44px;padding:0 9px;display:inline-flex}.event-dialog-body textarea{resize:vertical;line-height:21px}.event-title-field input{min-height:46px!important;font-size:17px!important;font-weight:700!important}.event-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;display:grid}.event-contact-history{color:var(--color-muted);margin-top:5px;font-size:12px;line-height:18px}.event-form-grid .event-all-day{cursor:pointer;grid-column:span 2;align-items:center;gap:7px;min-width:44px;min-height:44px;display:inline-flex}.calendar-move-menu{grid-column:span 2;justify-self:start;position:relative}.calendar-move-menu>button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.calendar-move-menu>button:disabled{cursor:not-allowed;opacity:.5}.calendar-move-menu>div{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:190px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;box-shadow:0 10px 28px #1c232b2e}.calendar-move-menu [role=menuitem]{border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;padding:0 8px}.calendar-move-menu [role=menuitem]:hover,.calendar-move-menu [role=menuitem]:focus-visible{background:var(--color-primary-soft)}.calendar-move-menu label{border-top:1px solid var(--color-border);padding:6px 8px 7px;display:block}.calendar-move-menu label span{color:var(--color-muted);margin-bottom:4px;font-size:10px;font-weight:700;display:block}.event-dialog-body .calendar-move-menu input{min-height:44px}.event-form-grid .event-all-day input,.event-recurrence-toggle input{width:17px;height:17px;accent-color:var(--color-primary)}.event-form-grid .event-all-day span,.event-recurrence-toggle span{color:var(--color-text);margin:0;display:inline}.event-colors,.event-tags,.event-reminders,.event-recurrence{border:0;border-top:1px solid var(--color-border);margin:18px 0 0;padding:17px 0 0}.event-colors>div{flex-wrap:wrap;gap:8px;display:flex}.event-colors label{cursor:pointer;border:2px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.event-colors label.selected{border-color:var(--color-text)}.event-colors input{opacity:0;width:1px;height:1px;position:absolute}.event-colors i{border-radius:50%;width:20px;height:20px}.event-tag-options{flex-wrap:wrap;gap:7px;display:flex}.event-tag-options label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:12px;display:inline-flex}.event-tag-options label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.event-tag-options label:has(input:disabled){cursor:not-allowed;opacity:.55}.event-tag-options input{opacity:0;width:1px;height:1px;position:absolute}.event-tag-options i{border-radius:50%;flex:none;width:9px;height:9px}.event-tag-options span{color:inherit;overflow-wrap:anywhere;margin:0;display:inline}.event-tag-create-toggle,.event-tags-load-error button{border:1px solid var(--color-border);border-radius:var(--radius);width:44px;height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;place-items:center;margin-top:8px;display:grid}.event-tag-create-toggle:disabled,.event-tags-load-error button:disabled{cursor:not-allowed;opacity:.5}.event-tags-status{flex-wrap:wrap;gap:7px;min-height:44px;display:flex}.event-tags-status i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:68px;height:44px}.event-tags-status i:nth-child(2){width:82px}.event-tags-status i:nth-child(3){width:58px}.event-tags-load-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;font-size:12px;display:flex}.event-tags-load-error>span{flex:1;min-width:0}.event-tags-load-error small{color:var(--color-muted);overflow-wrap:anywhere;margin-top:2px;display:block}.event-tags-load-error button{margin:0}.event-tag-create{border-top:1px solid var(--color-border);gap:10px;margin-top:9px;padding-top:11px;display:grid}.event-tag-create>label>span,.event-tag-create>fieldset>legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.event-tag-create>fieldset{border:0;margin:0;padding:0}.event-tag-create>fieldset>div{flex-wrap:wrap;gap:6px;display:flex}.event-tag-create>fieldset label{cursor:pointer;border:2px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.event-tag-create>fieldset label:has(input:checked){border-color:var(--color-text)}.event-tag-create>fieldset input{opacity:0;width:1px;height:1px;position:absolute}.event-tag-create>fieldset i{border-radius:50%;width:18px;height:18px}.event-tag-create>p{color:var(--color-danger);font-size:12px}.event-tag-create>div:last-child{gap:8px;display:flex}.event-tag-create>div:last-child button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-weight:700;display:inline-flex}.event-tag-create>div:last-child button.event-tag-create-submit{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.event-tag-create>div:last-child button:disabled{cursor:not-allowed;opacity:.5}.event-reminders>div{gap:7px;display:grid}.event-reminder-row{grid-template-columns:minmax(170px,1fr) minmax(150px,.8fr) 36px;gap:8px;display:grid}.event-reminder-row>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;align-self:center;place-items:center;display:grid}.event-reminder-row>button:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.event-reminders>button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;align-items:center;gap:5px;margin-top:8px;padding:0 9px;font-weight:700;display:inline-flex}.event-reminders button:disabled{cursor:not-allowed;opacity:.5}.event-recurrence-toggle{cursor:pointer;align-items:center;gap:7px;min-width:44px;min-height:44px;display:inline-flex}.event-recurrence-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px;margin-top:9px;display:grid}.event-weekdays,.event-month-mode{border:0;grid-column:span 2;margin:0;padding:0}.event-weekdays{flex-wrap:wrap;gap:6px;display:flex}.event-weekdays legend,.event-month-mode legend{width:100%}.event-weekdays label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;justify-content:center;align-items:center;padding:0 9px;font-size:11px;display:inline-flex}.event-weekdays label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.event-weekdays input{opacity:0;width:1px;height:1px;position:absolute}.event-month-mode{flex-wrap:wrap;gap:8px 16px;display:flex}.event-month-mode label{min-height:44px;color:var(--color-text);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.event-dialog-body .event-month-mode input[type=number]{width:72px;min-height:44px}.event-month-mode input[type=radio]{width:16px;height:16px;accent-color:var(--color-primary)}.event-year-fields{grid-column:span 2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.event-form-error{border:1px solid var(--color-danger);border-radius:var(--radius);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:20px minmax(0,1fr);gap:8px;margin-top:16px;padding:10px;display:grid}.event-form-error strong,.event-form-error span,.event-form-error small{overflow-wrap:anywhere;font-size:12px;display:block}.event-form-error span,.event-form-error small{color:var(--color-muted);margin-top:2px;font-size:11px}.event-dialog-body label>small,.event-dialog-body fieldset>small{color:var(--color-danger);margin-top:5px;font-size:12px;display:block}.event-dialog-footer{border-top:1px solid var(--color-border);background:var(--color-surface);flex:none;justify-content:flex-end;align-items:center;gap:8px;min-height:64px;padding:11px 20px;display:flex}.event-dialog-footer .time-block-focus-button{margin-right:auto}.event-secondary-button,.event-cancel-button,.event-danger-button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 13px;font-weight:700}.event-cancel-button{border-color:var(--color-danger);color:var(--color-danger);margin-right:auto}.event-danger-button{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.event-secondary-button:disabled,.event-cancel-button:disabled,.event-danger-button:disabled{cursor:not-allowed;opacity:.5}.event-primary-button .spin{animation:.9s linear infinite calendar-spin}.event-scope-body{text-align:center;flex-direction:column;align-items:center;padding:28px 24px;display:flex;overflow-y:auto}.event-scope-body>svg{color:var(--color-primary)}.event-scope-body>strong{margin:8px 0 18px;font-size:15px}.event-scope-body fieldset{text-align:left;border:0;width:min(470px,100%);margin:0;padding:0}.event-scope-body label{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:18px minmax(0,1fr);gap:9px;min-height:44px;padding:11px 9px;display:grid}.event-scope-body input{width:17px;height:17px;accent-color:var(--color-primary);margin-top:2px}.event-scope-body label strong,.event-scope-body label small{display:block}.event-scope-body label small{color:var(--color-muted);margin-top:2px;font-size:11px;line-height:18px}.event-dialog-loading{gap:12px;padding:22px;display:grid}.event-dialog-loading span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:46px}.event-dialog-loading span:nth-child(2){height:100px}.event-dialog-load-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:320px;padding:28px;display:flex}.event-dialog-load-error>svg{color:var(--color-danger)}.event-dialog-load-error p,.event-dialog-load-error small{color:var(--color-muted);margin-top:8px}.event-dialog-load-error button{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;margin-top:13px;padding:0 12px;font-weight:700}.time-block-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;display:grid}.time-block-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.time-block-notes{margin-top:14px;display:block}.time-block-notes textarea{min-height:96px}.event-form-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;min-width:44px;min-height:44px;margin-top:6px;padding:0 8px;font-size:11px}.event-decision-backdrop{z-index:2;background:#1c232b6b;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.event-decision-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(450px,100%);max-height:90%;color:var(--color-text);background:var(--color-surface);overflow-y:auto;box-shadow:0 18px 44px #1c232b3d}.event-decision-dialog header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;min-height:56px;padding:9px 12px 9px 17px;display:flex}.event-decision-dialog h3{letter-spacing:0;font-size:16px}.event-decision-dialog>div{color:var(--color-muted);padding:17px;font-size:13px;line-height:21px}.event-decision-dialog ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.event-decision-dialog li{border-bottom:1px solid var(--color-border);padding:8px 0}.event-decision-dialog li strong,.event-decision-dialog li span{display:block}.event-decision-dialog li span{margin-top:2px;font-size:11px}.event-decision-dialog footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:11px 17px;display:flex}@keyframes calendar-spin{to{transform:rotate(360deg)}}@media (width<=767px){.calendar-heading h1{font-size:23px;line-height:32px}.calendar-heading .calendar-primary-button,.calendar-heading .calendar-secondary-button{width:44px;padding:0;font-size:0}.calendar-controls{flex-direction:column;align-items:stretch}.calendar-navigation,.calendar-view-switch{align-self:stretch}.calendar-navigation button{flex:1}.calendar-view-switch button{flex:1;min-width:0}.calendar-filter-band{flex-direction:column;align-items:flex-start}.calendar-cancelled-toggle{margin-left:0}.calendar-workspace.with-task-tray{grid-template-columns:1fr}.calendar-task-tray{height:auto;min-height:0}.calendar-task-list{display:flex;overflow:auto hidden}.calendar-unscheduled-task{border-right:1px solid var(--color-border);border-bottom:0;grid-template-columns:17px minmax(0,1fr) 44px;width:210px;min-width:210px}.calendar-unscheduled-task button,.event-dialog-header button,.event-decision-dialog header button,.event-reminder-row>button{width:44px;height:44px}.calendar-task-tray-state{min-height:92px}.calendar-surface{min-height:460px;padding:3px}.calendar-surface .fc{font-size:10px}.calendar-surface .fc-col-header-cell-cushion{padding:5px 1px}.calendar-surface .fc-daygrid-day-number{padding:3px}.calendar-event-content span{display:none}.calendar-event-content strong{font-size:9px}.calendar-toast{justify-content:center;bottom:86px;left:12px;right:12px}.event-dialog-backdrop{background:var(--color-surface);align-items:end;padding:0}.event-dialog{width:100%;height:100dvh;max-height:100dvh;box-shadow:none;border:0;border-radius:0}.event-dialog-header{min-height:62px;padding:9px 12px 9px 16px}.event-dialog-body{padding:16px}.event-form-grid,.event-recurrence-fields,.time-block-grid{grid-template-columns:1fr}.event-form-grid .event-all-day,.calendar-move-menu,.event-weekdays,.event-month-mode,.event-year-fields{grid-column:span 1}.event-reminder-row{grid-template-columns:minmax(0,1fr) 44px}.event-reminder-row>label{grid-column:1}.event-reminder-row>button{grid-area:1/2}.event-dialog-footer{padding:10px 12px;position:sticky;bottom:0}.event-dialog-footer button{padding:0 10px}.event-decision-backdrop{align-items:end;padding:0;position:fixed}.event-decision-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:88vh}}.contacts-page{--contact-purple:#7058a8;width:100%;max-width:1120px;min-height:560px;margin:0 auto}.contacts-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.contacts-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.contacts-heading p{color:var(--color-muted);margin-top:3px;font-size:13px}.contacts-primary{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.contacts-primary:disabled{cursor:not-allowed;opacity:.55}.contacts-upcoming{border-block:1px solid var(--color-border);background:color-mix(in srgb, var(--color-warning) 5%, var(--color-surface));margin-bottom:18px}.contacts-upcoming>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:42px;display:flex}.contacts-upcoming>header>div{color:var(--color-warning-text);align-items:center;gap:7px;display:flex}.contacts-upcoming h2{color:var(--color-text);letter-spacing:0;font-size:14px;line-height:21px}.contacts-upcoming>header>span{color:var(--color-muted);font-size:11px}.contacts-upcoming-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.contacts-upcoming-group{border-right:1px solid var(--color-border);min-width:0;padding:12px 14px 14px}.contacts-upcoming-group:last-child{border-right:0}.contacts-upcoming-group h3{min-height:24px;color:var(--color-muted);letter-spacing:0;align-items:center;gap:6px;font-size:11px;line-height:18px;display:flex}.contacts-upcoming-group>div{gap:4px;display:grid}.contacts-upcoming-group a{min-width:0;min-height:44px;color:var(--color-text);justify-content:space-between;align-items:center;gap:8px;padding:5px 0;display:flex}.contacts-upcoming-group a:hover strong{color:var(--color-primary-hover)}.contacts-upcoming-group a>span{min-width:0}.contacts-upcoming-group strong,.contacts-upcoming-group small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.contacts-upcoming-group strong{font-size:12px}.contacts-upcoming-group small,.contacts-upcoming-group p,.contacts-upcoming-group time{color:var(--color-muted);font-size:10px}.contacts-upcoming-group time{color:var(--color-warning-text);flex:none;font-weight:700}.contacts-upcoming.loading{background:var(--color-surface);grid-template-columns:repeat(3,1fr);gap:12px;min-height:126px;padding:14px 0;display:grid}.contacts-upcoming.loading span{border-radius:var(--radius);background:var(--color-border);opacity:.55}.contacts-upcoming.error{min-height:52px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:8px;padding:0 10px;font-size:12px;display:flex}.contacts-upcoming.error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;place-items:center;width:36px;height:36px;margin-left:auto;display:grid}.contacts-toolbar{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(240px,1fr) repeat(4,minmax(112px,auto));align-items:end;gap:10px;padding-bottom:12px;display:grid}.contacts-toolbar>label{min-width:0;color:var(--color-muted);gap:5px;font-size:10px;display:grid}.contacts-toolbar>label:nth-of-type(6){grid-column:2}.contacts-toolbar select,.contacts-toolbar>label input,.contacts-search{border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;height:44px;color:var(--color-text);background:var(--color-surface)}.contacts-toolbar select,.contacts-toolbar>label input{width:100%;min-width:112px;font:inherit;padding:0 9px}.contacts-filter-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-width:112px;height:44px;display:block}.contacts-filter-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-top:8px;font-size:11px;display:flex}.contacts-filter-error span{overflow-wrap:anywhere;flex:1}.contacts-filter-error small{color:var(--color-muted);margin-top:2px;display:block}.contacts-filter-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;flex:none;place-items:center;width:44px;height:44px;display:grid}.contacts-toolbar select:focus,.contacts-toolbar input:focus,.contacts-search:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.contacts-search{color:var(--color-muted);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:5px;padding-left:10px;display:grid}.contacts-search input{min-width:0;height:44px;font:inherit;background:0 0;border:0;padding:0}.contacts-search input:focus{box-shadow:none}.contacts-search button{border-left:1px solid var(--color-border);height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;padding:0 11px;font-weight:700}.contacts-clear{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.contacts-clear:disabled{cursor:not-allowed;opacity:.5}.contacts-filter-note{color:var(--color-warning-text);margin:8px 0 0;font-size:11px}.contacts-content{min-height:370px}.contact-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(230px,1.25fr) minmax(160px,1fr) 138px minmax(120px,.8fr);align-items:center;gap:14px;min-width:0;min-height:78px;display:grid}.contact-row-main{min-width:0;min-height:77px;color:var(--color-text);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;display:grid}.contact-avatar{color:#fff;background:var(--color-primary);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:grid}.contact-avatar[data-relationship=family]{background:#b25261}.contact-avatar[data-relationship=colleague]{background:#3577a8}.contact-avatar[data-relationship=client]{background:#9a681d}.contact-avatar[data-relationship=other]{background:#64717c}.contact-copy{gap:3px;min-width:0;display:grid}.contact-copy>span{align-items:center;gap:6px;min-width:0;display:flex}.contact-copy strong,.contact-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contact-copy strong{font-size:14px;line-height:21px}.contact-row-main:hover strong{color:var(--color-primary-hover)}.contact-copy svg{color:var(--color-warning-text);flex:none}.contact-copy i{border:1px solid var(--color-border);color:var(--color-muted);border-radius:4px;flex:none;padding:1px 5px;font-size:9px;font-style:normal}.contact-copy small,.contact-method,.contact-birthday{color:var(--color-muted);font-size:11px}.contact-method,.contact-birthday{align-items:center;gap:6px;min-width:0;display:flex}.contact-method>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contact-method svg,.contact-birthday svg{flex:none}.contact-tags{justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:flex}.contact-tags i{border:1px solid var(--color-border);min-width:0;max-width:90px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:3px 6px;font-size:10px;font-style:normal;display:inline-flex;overflow:hidden}.contact-tags b{border-radius:50%;flex:none;width:7px;height:7px}.contact-tags small{color:var(--color-muted);font-size:10px}.contacts-empty,.contacts-error{min-height:350px;color:var(--color-muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid}.contacts-empty h2{color:var(--color-text);font-size:16px;line-height:24px}.contacts-empty button,.contacts-error button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.contacts-error>svg{color:var(--color-danger)}.contacts-skeleton{display:grid}.contacts-skeleton span{border-bottom:1px solid var(--color-border);background:linear-gradient(90deg, var(--color-surface), var(--color-page), var(--color-surface));background-size:220% 100%;height:78px;animation:1.2s ease-in-out infinite contacts-loading}.contacts-pagination{justify-content:center;align-items:center;gap:12px;min-height:52px;display:flex}.contacts-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.contacts-pagination button:disabled{cursor:not-allowed;opacity:.5}.contacts-pagination span{min-width:64px;color:var(--color-muted);text-align:center;font-size:12px}.contact-dialog-backdrop{z-index:95;background:#161c227a;justify-content:flex-end;display:flex;position:fixed;inset:0}.contact-dialog{border-left:1px solid var(--color-border);width:min(620px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden;box-shadow:-16px 0 40px #161c2233}.contact-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;min-height:68px;padding:0 20px;display:flex}.contact-dialog h2{letter-spacing:0;font-size:19px;line-height:27px}.contact-dialog>header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.contact-dialog>form,.contact-dialog>form>.contact-create-body{min-height:0}.contact-dialog>form{flex-direction:column;flex:1;display:flex}.contact-create-body,.contact-duplicate-body{flex:1;padding:18px 20px;overflow-y:auto}.contact-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;display:grid}.contact-create-grid>label,.contact-birthday-fields>div>label{align-content:start;gap:6px;min-width:0;display:grid}.contact-create-grid>label.wide{grid-column:span 2}.contact-create-grid label>span,.contact-birthday-fields label>span,.contact-create-body legend{color:var(--color-muted);align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.contact-create-body input,.contact-create-body select,.contact-create-body textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.contact-create-body textarea{resize:vertical;min-height:92px}.contact-create-body input:focus,.contact-create-body select:focus,.contact-create-body textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.contact-binary-field{min-height:44px;color:var(--color-text);cursor:pointer;align-items:center;gap:7px;margin-top:14px;font-size:12px;display:inline-flex}.contact-create-body .contact-binary-field input{width:16px;height:16px;min-height:16px;accent-color:var(--color-primary);padding:0}.contact-birthday-fields,.contact-method-fields,.contact-tag-fields{border:0;border-top:1px solid var(--color-border);margin:17px 0 0;padding:16px 0 0}.contact-birthday-fields>.contact-binary-field{margin-top:5px}.contact-birthday-fields>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.contact-method-actions{gap:8px;margin:9px 0;display:flex}.contact-method-actions button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.contact-method-actions button:disabled{cursor:not-allowed;opacity:.5}.contact-method-row{grid-template-columns:88px 100px minmax(0,1fr) 36px;gap:8px;margin-top:7px;display:grid}.contact-method-row>button{border-radius:var(--radius);width:36px;height:44px;color:var(--color-danger);cursor:pointer;background:0 0;place-items:center;display:grid}.contact-method-row>button:hover{background:var(--color-danger-soft)}.contact-method-row>small{color:var(--color-danger);grid-column:2/5;font-size:10px}.contact-tag-fields>div{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.contact-tag-fields label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:11px;display:inline-flex}.contact-tag-fields label:has(input:checked){border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.contact-tag-fields input{opacity:0;width:1px;height:1px;min-height:1px;position:absolute}.contact-tag-fields i{border-radius:50%;width:8px;height:8px}.contact-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.contact-tag-load-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-top:17px;font-size:11px;display:flex}.contact-tag-load-error span{overflow-wrap:anywhere;flex:1}.contact-tag-load-error small{color:var(--color-muted);margin-top:2px;display:block}.contact-tag-load-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;flex:none;place-items:center;width:44px;height:44px;display:grid}.contact-field-error{color:var(--color-danger);font-size:10px}.contact-create-note,.contact-create-error{border-left:3px solid var(--color-warning);color:var(--color-muted);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));margin-top:13px;padding:9px 10px;font-size:11px}.contact-create-error{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.contact-dialog footer{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:8px;min-height:62px;padding:10px 20px;display:flex}.contact-dialog footer button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 14px;font-weight:700}.contact-dialog footer button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.contact-dialog footer button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.contact-discard-body{color:var(--color-muted)}.contact-dialog button:disabled{cursor:not-allowed;opacity:.55}.contact-duplicate-warning{border-left:3px solid var(--color-warning);color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));grid-template-columns:22px minmax(0,1fr);gap:9px;padding:12px;display:grid}.contact-duplicate-warning p{color:var(--color-text);font-size:12px;line-height:19px}.contact-duplicate-list{border-top:1px solid var(--color-border);margin-top:14px}.contact-duplicate-list>div{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;min-height:64px;display:flex}.contact-duplicate-list strong,.contact-duplicate-list small{display:block}.contact-duplicate-list strong{font-size:13px}.contact-duplicate-list small{color:var(--color-muted);font-size:10px}.contacts-toast{z-index:75;border:1px solid color-mix(in srgb, var(--color-success) 30%, var(--color-border));border-radius:var(--radius);min-height:42px;color:var(--color-success-text);background:var(--color-surface);align-items:center;gap:8px;padding:0 14px;font-weight:700;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 24px #1c232b24}@keyframes contacts-loading{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.contacts-skeleton span{animation:none}}@media (width<=980px){.contacts-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}.contacts-search{grid-column:1/-1}.contacts-toolbar>label:nth-of-type(6){grid-column:auto}.contact-row{grid-template-columns:minmax(220px,1fr) minmax(150px,.8fr) 125px}.contact-tags{display:none}}@media (width<=767px){.contacts-heading h1{font-size:23px;line-height:32px}.contacts-heading .contacts-primary{width:44px;padding:0;font-size:0}.contacts-upcoming.error button,.contacts-pagination button,.contact-dialog>header button{width:44px;height:44px}.contacts-upcoming-groups{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.contacts-upcoming-group{scroll-snap-align:start;flex:none;width:min(78vw,280px)}.contacts-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.contacts-search,.contacts-clear{grid-column:1/-1}.contact-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:8px 0}.contact-row-main{min-height:60px}.contact-method{grid-column:1;padding-left:49px}.contact-birthday{grid-area:1/2/3}.contact-dialog{width:100vw;box-shadow:none;border-left:0}.contact-create-grid{grid-template-columns:1fr}.contact-create-grid>label.wide{grid-column:auto}.contact-method-row{grid-template-columns:86px minmax(0,1fr) 44px}.contact-method-row>button{width:44px;height:44px}.contact-method-row>input:nth-of-type(2){grid-column:1/3}.contact-method-row>button{grid-area:1/3}.contact-method-row>small{grid-column:1/4}.contacts-toast{justify-content:center;bottom:12px;left:12px;right:12px}}@media (width<=480px){.contact-birthday-fields>div{grid-template-columns:1fr}.contact-method-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-dialog footer button{flex:auto}}.contact-detail-page{width:100%;max-width:1040px;min-height:560px;margin:0 auto}.contact-detail-back{width:fit-content;min-height:44px;color:var(--color-muted);align-items:center;gap:6px;margin-bottom:10px;font-size:12px;font-weight:700;display:inline-flex}.contact-detail-back:hover{color:var(--color-primary)}.contact-detail-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:22px;padding-bottom:20px;display:flex}.contact-detail-identity{align-items:center;gap:14px;min-width:0;display:flex}.contact-detail-avatar{color:#fff;background:#467363;border-radius:50%;flex:0 0 56px;place-items:center;width:56px;height:56px;font-size:21px;font-weight:800;display:grid}.contact-detail-avatar[data-relationship=family]{background:#b34b55}.contact-detail-avatar[data-relationship=colleague]{background:#4a6498}.contact-detail-avatar[data-relationship=client]{background:#8a6932}.contact-detail-avatar[data-relationship=other]{background:#6d6877}.contact-detail-identity>div{min-width:0}.contact-detail-meta{color:var(--color-muted);align-items:center;gap:7px;font-size:11px;display:flex}.contact-detail-meta i{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 10%, transparent);border-radius:3px;padding:2px 6px;font-style:normal;font-weight:700}.contact-detail-identity h1{overflow-wrap:anywhere;letter-spacing:0;align-items:center;gap:8px;min-width:0;margin-top:1px;font-size:26px;line-height:36px;display:flex}.contact-detail-identity h1 svg{color:var(--color-warning-text);flex:none}.contact-detail-identity p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.contact-detail-actions{flex:none;align-items:center;gap:7px;display:flex}.contact-detail-actions button,.contact-section-heading>button,.contact-detail-dialog footer button,.contact-detail-error button,.contact-detail-error a{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:700;display:inline-flex}.contact-detail-actions button:hover:not(:disabled),.contact-section-heading>button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.contact-detail-actions button:disabled,.contact-section-heading>button:disabled,.contact-detail-dialog button:disabled{cursor:not-allowed;opacity:.5}.contact-detail-actions button.danger,.contact-detail-dialog footer button.danger{color:var(--color-danger)}.contact-archived-note,.contact-detail-action-error{border-radius:var(--radius);align-items:center;gap:8px;min-height:42px;margin-top:14px;padding:8px 11px;font-size:12px;display:flex}.contact-archived-note{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface))}.contact-detail-action-error{color:var(--color-danger);background:var(--color-danger-soft)}.contact-detail-action-error span{flex:1;min-width:0}.contact-detail-action-error button{color:currentColor;cursor:pointer;background:0 0;place-items:center;width:36px;height:36px;display:grid}.contact-profile-section,.contact-dates-section,.contact-interactions-section{border-bottom:1px solid var(--color-border);padding:22px 0}.contact-section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:38px;margin-bottom:12px;display:flex}.contact-section-heading>div{align-items:center;gap:7px;display:flex}.contact-section-heading>div>svg{color:var(--color-primary)}.contact-section-heading h2{letter-spacing:0;font-size:15px;line-height:22px}.contact-section-heading>div>span{color:var(--color-text);background:color-mix(in srgb, var(--color-border) 45%, var(--color-surface));border-radius:3px;padding:1px 6px;font-size:10px}.contact-section-heading>div>.contact-detail-count-skeleton{background:var(--color-border);opacity:.65;width:38px;height:16px;display:inline-block}.contact-section-heading>button{color:var(--color-primary)}.contact-profile-grid{border-block:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.contact-profile-grid>dl{border-right:1px solid var(--color-border);min-width:0;padding:12px 14px}.contact-profile-grid>dl:last-child{border-right:0}.contact-profile-grid dt{color:var(--color-muted);align-items:center;gap:5px;font-size:10px;display:flex}.contact-profile-grid dd{overflow-wrap:anywhere;margin-top:5px;font-size:12px;font-weight:700}.contact-profile-methods,.contact-profile-notes{margin-top:16px}.contact-profile-methods h3,.contact-profile-notes h3{color:var(--color-muted);letter-spacing:0;margin-bottom:8px;font-size:11px}.contact-profile-methods>div{flex-wrap:wrap;gap:8px 22px;display:flex}.contact-profile-methods p{align-items:center;gap:8px;min-width:180px;display:flex}.contact-profile-methods p>svg{color:var(--color-muted)}.contact-profile-methods p span{min-width:0;display:grid}.contact-profile-methods p small{color:var(--color-muted);font-size:9px}.contact-profile-methods p strong{overflow-wrap:anywhere;font-size:12px}.contact-profile-methods>span,.contact-profile-notes p{color:var(--color-muted);font-size:12px}.contact-profile-notes p{white-space:pre-wrap;max-width:760px;line-height:1.7}.contact-profile-tags{flex-wrap:wrap;gap:6px;margin-top:15px;display:flex}.contact-profile-tags span{background:color-mix(in srgb, var(--color-border) 45%, var(--color-surface));border-radius:3px;align-items:center;gap:5px;padding:3px 7px;font-size:10px;display:inline-flex}.contact-profile-tags i{border-radius:50%;width:6px;height:6px}.contact-date-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;display:grid}.contact-date-list article{border-top:1px solid var(--color-border);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:60px;display:grid}.contact-date-list article>span{color:#9a552d;background:#fff2e6;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.contact-date-list article>div:nth-child(2){min-width:0;display:grid}.contact-date-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.contact-date-list time{color:var(--color-muted);font-size:10px}.contact-date-list article>div:last-child,.contact-timeline article header>div:last-child{gap:8px;display:flex}.contact-date-list button,.contact-timeline article header button,.contact-detail-panel-error button,.contact-interaction-pagination button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.contact-date-list button:hover:not(:disabled),.contact-timeline article header button:hover:not(:disabled){color:var(--color-primary);background:color-mix(in srgb, var(--color-border) 45%, var(--color-surface))}.contact-date-list button.danger:hover:not(:disabled),.contact-timeline article header button.danger:hover:not(:disabled){color:var(--color-danger)}.contact-date-list button:disabled,.contact-timeline article header button:disabled{cursor:not-allowed;opacity:.35}.contact-timeline{margin:0;padding:0;list-style:none}.contact-timeline>li{grid-template-columns:36px minmax(0,1fr);gap:11px;min-height:100px;display:grid;position:relative}.contact-timeline>li:not(:last-child):before{content:"";background:var(--color-border);width:1px;position:absolute;top:36px;bottom:0;left:17px}.contact-timeline>li>i{z-index:1;border:1px solid var(--color-border);color:#3f715f;background:var(--color-surface);border-radius:50%;place-items:center;width:36px;height:36px;font-style:normal;display:grid}.contact-timeline>li>i[data-type=call]{color:#4f6595}.contact-timeline>li>i[data-type=gift]{color:#a16d24}.contact-timeline article{min-width:0;padding:0 0 20px}.contact-timeline article header{justify-content:space-between;align-items:flex-start;gap:12px;min-height:34px;display:flex}.contact-timeline article header>div:first-child{align-items:baseline;gap:8px;display:flex}.contact-timeline article header strong{font-size:12px}.contact-timeline article time{color:var(--color-muted);font-size:10px}.contact-timeline article>p{overflow-wrap:anywhere;max-width:780px;color:var(--color-text);white-space:pre-wrap;font-size:12px;line-height:1.65}.contact-timeline article footer{width:fit-content;min-height:28px;color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 8%, transparent);border-radius:3px;align-items:center;gap:5px;margin-top:7px;padding:0 8px;font-size:10px;display:flex}.contact-interaction-pagination{justify-content:center;align-items:center;gap:9px;margin-top:8px;display:flex}.contact-interaction-pagination span{color:var(--color-muted);font-size:11px}.contact-interaction-pagination button{border:1px solid var(--color-border);background:var(--color-surface)}.contact-interaction-pagination button:disabled{cursor:not-allowed;opacity:.4}.contact-detail-panel-loading{gap:8px;min-height:96px;display:grid}.contact-detail-panel-loading span{border-radius:var(--radius);background:var(--color-border);opacity:.55}.contact-detail-panel-error,.contact-detail-panel-empty{min-height:96px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.contact-detail-panel-error{color:var(--color-danger);background:var(--color-danger-soft)}.contact-detail-panel-error button{color:currentColor;margin-left:8px}.contact-detail-panel-empty{flex-direction:column}.contact-detail-panel-empty svg{opacity:.6}.contact-detail-dialog-backdrop{z-index:80;background:#14181c6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.contact-detail-dialog{border-left:1px solid var(--color-border);background:var(--color-surface);width:min(640px,100vw);height:100%;overflow:auto;box-shadow:-18px 0 44px #14181c29}.contact-detail-dialog.compact{border:1px solid var(--color-border);border-radius:var(--radius);width:min(480px,100vw);height:fit-content;max-height:min(720px,100vh);margin:auto;box-shadow:0 18px 50px #14181c38}.contact-detail-dialog>header{z-index:2;border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 20px;display:flex;position:sticky;top:0}.contact-detail-dialog>header h2{letter-spacing:0;font-size:16px}.contact-detail-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.contact-detail-dialog>header button:hover:not(:disabled){color:var(--color-text);background:color-mix(in srgb, var(--color-border) 45%, var(--color-surface))}.contact-detail-dialog form{flex-direction:column;min-height:calc(100% - 59px);display:flex}.contact-detail-dialog-body{flex:1;align-content:start;gap:15px;padding:20px;display:grid}.contact-detail-dialog-body label{min-width:0;color:var(--color-muted);gap:5px;font-size:10px;display:grid}.contact-detail-dialog-body label>span{align-items:center;gap:4px;display:flex}.contact-detail-dialog-body input:not([type=checkbox]),.contact-detail-dialog-body select,.contact-detail-dialog-body textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:7px 9px}.contact-detail-dialog-body textarea{resize:vertical}.contact-detail-dialog-body input:focus,.contact-detail-dialog-body select:focus,.contact-detail-dialog-body textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.contact-profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.contact-profile-form-grid>label.wide{grid-column:1/-1}.contact-detail-binary{cursor:pointer;align-items:center;min-height:44px;color:var(--color-text)!important;gap:7px!important;font-size:12px!important;display:flex!important}.contact-detail-binary input{accent-color:var(--color-primary)}.contact-detail-birthday,.contact-detail-methods,.contact-detail-tags{border:1px solid var(--color-border);border-radius:var(--radius);margin:0;padding:14px}.contact-detail-birthday legend,.contact-detail-methods legend,.contact-detail-tags legend{color:var(--color-muted);padding:0 5px;font-size:10px;font-weight:700}.contact-detail-birthday>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.contact-detail-birthday>div label{color:var(--color-muted);gap:5px;font-size:10px;display:grid}.contact-detail-method-actions{gap:8px;margin-bottom:9px;display:flex}.contact-detail-method-actions button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary);background:var(--color-surface);cursor:pointer;align-items:center;gap:5px;padding:0 9px;font-size:10px;display:inline-flex}.contact-detail-method-row{grid-template-columns:88px 100px minmax(0,1fr) 36px;gap:8px;margin-top:8px;display:grid}.contact-detail-method-row>button{border-radius:var(--radius);width:36px;height:44px;color:var(--color-danger);cursor:pointer;background:0 0;place-items:center;display:grid}.contact-detail-method-row>small{color:var(--color-danger);grid-column:2/5;font-size:10px}.contact-detail-tags>div{flex-wrap:wrap;gap:6px;display:flex}.contact-detail-tags label{border:1px solid var(--color-border);cursor:pointer;border-radius:3px;align-items:center;min-height:44px;padding:5px 7px;color:var(--color-text)!important;gap:5px!important;font-size:10px!important;display:flex!important}.contact-detail-tags label i{border-radius:50%;width:7px;height:7px}.contact-date-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.contact-interaction-form-grid{grid-template-columns:minmax(0,1.35fr) minmax(120px,.65fr);gap:10px;display:grid}.contact-detail-dialog footer{border-top:1px solid var(--color-border);background:var(--color-surface);justify-content:flex-end;gap:8px;padding:13px 20px;display:flex;position:sticky;bottom:0}.contact-detail-dialog footer button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.contact-detail-dialog footer button.primary:hover:not(:disabled){background:var(--color-primary-hover)}.contact-detail-dialog footer button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.contact-detail-field-error{color:var(--color-danger);font-size:10px}.contact-detail-offline,.contact-detail-form-error{border-radius:var(--radius);padding:9px 10px;font-size:11px}.contact-detail-offline{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 9%, transparent)}.contact-detail-form-error{color:var(--color-danger);background:var(--color-danger-soft);align-items:flex-start;gap:7px;display:flex}.contact-conflict-body>p{color:var(--color-muted);font-size:12px;line-height:1.7}.contact-conflict-body .contact-detail-form-error small{color:var(--color-muted);display:block}.contact-confirm-body p{color:var(--color-muted);font-size:12px;line-height:1.7}.contact-detail-duplicate-warning{color:var(--color-warning-text);align-items:flex-start;gap:8px;display:flex}.contact-detail-duplicate-warning svg{flex:none;margin-top:1px}.contact-detail-duplicate-warning p{font-size:12px;line-height:1.7}.contact-detail-duplicate-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.contact-detail-duplicate-list li{border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:9px;min-width:0;padding:9px;display:flex}.contact-detail-duplicate-list li>span:last-child{min-width:0;display:grid}.contact-detail-duplicate-list strong{overflow-wrap:anywhere;font-size:12px}.contact-detail-duplicate-list small{color:var(--color-muted);font-size:10px}.contact-detail-duplicate-avatar{color:#fff;background:#467363;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.contact-detail-duplicate-avatar[data-relationship=family]{background:#b34b55}.contact-detail-duplicate-avatar[data-relationship=colleague]{background:#4a6498}.contact-detail-duplicate-avatar[data-relationship=client]{background:#8a6932}.contact-detail-duplicate-avatar[data-relationship=other]{background:#6d6877}.contact-detail-toast{z-index:90;border:1px solid var(--color-border);border-radius:var(--radius);min-height:42px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 32px #14181c29}.contact-detail-toast svg{color:var(--color-success-text)}.contact-detail-skeleton{gap:14px;display:grid}.contact-detail-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.55;min-height:100px}.contact-detail-skeleton span:first-child{min-height:78px}.contact-detail-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:420px;display:flex}.contact-detail-error>svg{color:var(--color-danger)}.contact-detail-error h1{letter-spacing:0;font-size:18px}.contact-detail-error p,.contact-detail-error small{color:var(--color-muted);font-size:12px}.contact-detail-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:5px;display:flex}.contact-detail-error a{color:var(--color-primary);border:0}@media (width<=860px){.contact-detail-heading{flex-direction:column;align-items:flex-start}.contact-detail-actions{flex-wrap:wrap;width:100%}.contact-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-profile-grid>dl:nth-child(2){border-right:0}.contact-profile-grid>dl:nth-child(-n+2){border-bottom:1px solid var(--color-border)}}@media (width<=640px){.contact-detail-identity{align-items:flex-start}.contact-detail-avatar{flex-basis:48px;width:48px;height:48px}.contact-detail-identity h1{font-size:22px;line-height:31px}.contact-detail-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.contact-detail-actions button{min-width:0;padding:0 6px}.contact-profile-grid{grid-template-columns:1fr}.contact-profile-grid>dl{border-right:0;border-bottom:1px solid var(--color-border)}.contact-profile-grid>dl:last-child{border-bottom:0}.contact-date-list{grid-template-columns:1fr}.contact-timeline article header>div:first-child{flex-direction:column;align-items:flex-start;gap:1px}.contact-detail-dialog{border-left:0;width:100vw}.contact-detail-dialog.compact{border-inline:0;border-bottom:0;width:100vw;max-height:100vh;margin:auto 0 0}.contact-profile-form-grid,.contact-date-form-grid,.contact-interaction-form-grid{grid-template-columns:1fr}.contact-profile-form-grid>label.wide{grid-column:auto}.contact-detail-action-error button,.contact-date-list button,.contact-timeline article header button,.contact-detail-panel-error button,.contact-interaction-pagination button,.contact-detail-dialog>header button{width:44px;height:44px}.contact-detail-method-row{grid-template-columns:84px minmax(0,1fr) 44px}.contact-detail-method-row>button{width:44px;height:44px}.contact-detail-method-row>input:nth-of-type(2){grid-column:1/3}.contact-detail-method-row>button{grid-area:1/3}.contact-detail-method-row>small{grid-column:1/4}.contact-detail-toast{justify-content:center;bottom:12px;left:12px;right:12px}}@media (width<=420px){.contact-detail-birthday>div{grid-template-columns:1fr}.contact-section-heading{align-items:flex-start}.contact-section-heading>button{min-width:110px}.contact-detail-dialog footer button{flex:auto}}.focus-page{width:100%;max-width:1260px;min-height:620px;margin:0 auto}.focus-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.focus-heading p{color:var(--color-muted);font-size:13px}.focus-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.focus-heading span{color:var(--color-muted);font-size:13px}.focus-primary-button,.focus-secondary-button,.focus-danger-button,.focus-cancel-button{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:0 13px;font-weight:700;display:inline-flex}.focus-primary-button{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.focus-secondary-button{color:var(--color-primary-hover);background:var(--color-surface)}.focus-danger-button{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.focus-cancel-button{color:var(--color-danger);background:var(--color-surface)}.focus-primary-button:disabled,.focus-secondary-button:disabled,.focus-danger-button:disabled,.focus-cancel-button:disabled{cursor:not-allowed;opacity:.5}.focus-primary-button .spin,.focus-dialog .spin{animation:.9s linear infinite focus-spin}.focus-timer-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;min-height:410px;display:flex}.focus-timer-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;min-height:70px;padding:12px 20px;display:flex}.focus-timer-panel.idle>header{justify-content:flex-start}.focus-timer-panel>header>svg{color:var(--color-primary)}.focus-timer-panel>header h2{letter-spacing:0;font-size:17px;line-height:25px}.focus-timer-panel>header span,.focus-timer-panel>header small{color:var(--color-muted);font-size:11px;display:block}.focus-timer-panel>footer{border-top:1px solid var(--color-border);justify-content:center;align-items:center;gap:9px;min-height:66px;padding:10px 18px;display:flex}.focus-idle-body{flex:1;align-self:center;width:min(780px,100%);padding:24px}.focus-presets{border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 20px;padding:0;display:grid;overflow:hidden}.focus-presets legend{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.focus-presets label{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;place-items:center;display:grid}.focus-presets label+label{border-left:1px solid var(--color-border)}.focus-presets label.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.focus-presets input{opacity:0;width:1px;height:1px;position:absolute}.focus-duration-fields,.focus-association-fields{gap:12px;display:grid}.focus-duration-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.focus-association-fields{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.focus-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.focus-duration-fields label>span,.focus-association-fields label>span,.focus-history-dates label>span,.focus-dialog-body label>span,.focus-break-minutes>span{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.focus-duration-fields input,.focus-association-fields select,.focus-history-dates input,.focus-history-filters select,.focus-history-filters input,.focus-dialog-body input,.focus-dialog-body select,.focus-dialog-body textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:7px 9px}.focus-duration-fields input:focus,.focus-association-fields select:focus,.focus-history-dates input:focus,.focus-history-filters select:focus,.focus-history-filters input:focus,.focus-dialog-body input:focus,.focus-dialog-body select:focus,.focus-dialog-body textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.focus-duration-fields input:disabled,.focus-association-fields select:disabled,.focus-dialog-body input:disabled,.focus-dialog-body select:disabled,.focus-dialog-body textarea:disabled{color:var(--color-muted);background:var(--color-page);cursor:not-allowed}.focus-duration-fields [aria-invalid=true],.focus-association-fields [aria-invalid=true]{border-color:var(--color-danger)}.focus-field-error{color:var(--color-danger);overflow-wrap:anywhere;margin-top:5px;font-size:11px;display:block}.focus-dialog-body [aria-invalid=true]{border-color:var(--color-danger)}.focus-options-error{border-left:3px solid var(--color-danger);min-height:38px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:7px;margin-top:12px;padding:7px 9px;font-size:11px;display:flex}.focus-options-error span{flex:1}.focus-options-error small{color:var(--color-muted);margin-top:2px;display:block}.focus-options-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;align-items:center;gap:4px;min-width:44px;min-height:44px;padding:0 7px;display:inline-flex}.focus-timer-panel.active{min-height:540px}.focus-timer-panel.active>header{padding-right:16px}.focus-notification-toggle{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:11px;display:inline-flex}.focus-notification-toggle input{opacity:0;width:1px;height:1px;position:absolute}.focus-notification-toggle:has(input:checked){border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.focus-notification-toggle:has(input:focus-visible){box-shadow:var(--focus-ring)}.focus-clock{align-self:center;place-items:center;width:276px;height:276px;margin:22px 0 8px;display:grid;position:relative}.focus-clock svg{width:260px;height:260px;position:absolute;transform:rotate(-90deg)}.focus-clock circle{fill:none;stroke-width:12px}.focus-clock .track{stroke:var(--color-border)}.focus-clock .value{stroke:var(--color-primary);stroke-linecap:round}.focus-timer-panel.paused .focus-clock .value{stroke:var(--color-warning)}.focus-clock>div{z-index:1;text-align:center}.focus-clock strong{letter-spacing:0;font-variant-numeric:tabular-nums;font-size:52px;line-height:62px;display:block}.focus-clock span{color:var(--color-muted);font-size:12px}.focus-session-meta{color:var(--color-muted);justify-content:center;align-items:center;gap:22px;margin-bottom:18px;font-size:11px;display:flex}.focus-inline-error{border:1px solid var(--color-danger);border-radius:var(--radius);width:min(620px,100% - 32px);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:20px minmax(0,1fr);align-self:center;gap:8px;margin:0 auto 14px;padding:10px;display:grid}.focus-idle-body .focus-inline-error{width:100%;margin-top:16px}.focus-inline-error strong,.focus-inline-error span,.focus-inline-error small{overflow-wrap:anywhere;font-size:11px;display:block}.focus-inline-error span,.focus-inline-error small{color:var(--color-muted);margin-top:2px}.focus-lower-grid{grid-template-columns:minmax(330px,.8fr) minmax(480px,1.2fr);align-items:start;gap:12px;margin-top:12px;display:grid}.focus-stats-panel,.focus-history-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:380px}.focus-stats-panel>header,.focus-history-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:62px;padding:10px 14px;display:flex}.focus-stats-panel h2,.focus-history-panel h2{letter-spacing:0;font-size:15px}.focus-stats-panel header span,.focus-history-panel header span{color:var(--color-muted);font-size:11px}.focus-history-panel header .focus-history-count-skeleton{background:var(--color-border);opacity:.65;border-radius:3px;width:36px;height:14px;display:inline-block}.focus-range-switch,.focus-group-tabs{border:1px solid var(--color-border);border-radius:var(--radius);display:flex;overflow:hidden}.focus-range-switch button,.focus-group-tabs button{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;padding:0 8px;font-size:10px}.focus-range-switch button+button,.focus-group-tabs button+button{border-left:1px solid var(--color-border)}.focus-range-switch button.active,.focus-group-tabs button.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.focus-summary{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.focus-summary article{min-width:0;padding:14px 10px}.focus-summary article+article{border-left:1px solid var(--color-border)}.focus-summary span,.focus-summary small{color:var(--color-muted);font-size:10px;display:block}.focus-summary strong{overflow-wrap:anywhere;margin:3px 0;font-size:17px;display:block}.focus-goal-progress{background:var(--color-border);border-radius:3px;height:6px;margin:12px 13px;overflow:hidden}.focus-goal-progress i{background:var(--color-primary);height:100%;display:block}.focus-group-tabs{width:calc(100% - 26px);margin:13px}.focus-group-tabs button{flex:1}.focus-group-list{max-height:210px;margin:0;padding:0 13px;list-style:none;overflow-y:auto}.focus-group-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;min-height:38px;font-size:11px;display:flex}.focus-group-list li>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.focus-group-list i{width:20px;height:20px;color:var(--color-on-solid);background:var(--color-info);border-radius:50%;flex:none;place-items:center;font-size:9px;font-style:normal;display:grid}.focus-group-list li.empty{color:var(--color-muted);justify-content:center}.focus-daily-details{margin:10px 13px 13px;font-size:11px}.focus-daily-details summary{min-width:44px;min-height:44px;color:var(--color-primary-hover);cursor:pointer;align-items:center;font-weight:700;display:flex}.focus-daily-details table{border-collapse:collapse;width:100%}.focus-daily-details th,.focus-daily-details td{border-bottom:1px solid var(--color-border);text-align:right;padding:6px 4px}.focus-daily-details th:first-child,.focus-daily-details td:first-child{text-align:left}.focus-history-panel>header{align-items:flex-end}.focus-history-dates{gap:7px;display:flex}.focus-history-dates label{width:125px}.focus-history-dates label>span{margin-bottom:2px;font-size:9px}.focus-history-dates input{min-height:44px;padding:4px 6px;font-size:10px}.focus-history-filters{border-bottom:1px solid var(--color-border);grid-template-columns:140px minmax(0,1fr);gap:7px;padding:9px 12px;display:grid}.focus-history-filters select,.focus-history-filters input{min-height:44px;font-size:11px}.focus-history-list{padding:0 12px}.focus-history-list article{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(180px,1.5fr) minmax(86px,.7fr) 70px minmax(100px,1fr);align-items:center;gap:9px;min-height:68px;padding:9px 0;display:grid}.focus-history-list article>div>span{color:var(--color-muted);font-size:9px;display:block}.focus-history-list article>div>strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.focus-history-type{align-items:center;gap:8px;min-width:0;display:flex}.focus-history-type>i{border-radius:var(--radius);width:30px;height:30px;color:var(--color-on-solid);background:var(--color-primary);flex:none;place-items:center;font-size:10px;font-style:normal;font-weight:700;display:grid}.focus-history-type>i[data-type=break]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.focus-history-type>div{min-width:0}.focus-history-list .status.cancelled{color:var(--color-danger)}.focus-history-list .status.completed{color:var(--color-primary-hover)}.focus-history-list article>p{overflow-wrap:anywhere;color:var(--color-muted);grid-column:1/-1;padding-left:38px;font-size:10px}.focus-history-empty{min-height:230px;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.focus-pagination{justify-content:center;align-items:center;gap:12px;min-height:48px;display:flex}.focus-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.focus-pagination button:disabled{cursor:not-allowed;opacity:.4}.focus-pagination span{color:var(--color-muted);font-size:10px}.focus-panel-skeleton{gap:8px;padding:13px;display:grid}.focus-panel-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.55;height:64px}.focus-panel-error,.focus-load-error{min-height:280px;color:var(--color-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.focus-panel-error button,.focus-load-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;align-items:center;gap:5px;min-width:44px;min-height:44px;padding:0 9px;display:inline-flex}.focus-load-error{min-height:410px}.focus-load-error h2{color:var(--color-text);letter-spacing:0;font-size:18px}.focus-load-error p,.focus-load-error small{color:var(--color-muted)}.focus-timer-skeleton{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;align-items:center;min-height:410px;padding:20px;display:flex}.focus-timer-skeleton>span{background:var(--color-border);opacity:.55;width:100%;height:52px}.focus-timer-skeleton>i{border:14px solid var(--color-border);opacity:.55;border-radius:50%;width:230px;height:230px;margin:28px}.focus-timer-skeleton>div{gap:8px;display:flex}.focus-timer-skeleton b{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:90px;height:40px}.focus-dialog-backdrop{z-index:130;background:#1c232b61;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.focus-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(580px,100%);max-height:calc(100dvh - 36px);color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 22px 58px #1c232b42}.focus-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;min-height:66px;padding:10px 13px 10px 18px;display:flex}.focus-dialog>header p{color:var(--color-muted);font-size:10px}.focus-dialog>header h2{letter-spacing:0;font-size:17px}.focus-dialog>header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.focus-dialog-body{padding:18px;overflow-y:auto}.focus-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;display:grid}.focus-dialog-body label small{color:var(--color-danger);margin-top:4px;font-size:10px;display:block}.focus-dialog-note{margin-top:14px;display:block}.focus-dialog-note textarea{resize:vertical;min-height:94px}.focus-break-minutes{width:180px;margin:8px auto;display:block}.focus-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:8px;min-height:62px;padding:10px 18px;display:flex}.focus-form-error{border:1px solid var(--color-danger);border-radius:var(--radius);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:20px minmax(0,1fr);gap:7px;margin-top:14px;padding:9px;display:grid}.focus-form-error strong,.focus-form-error small{overflow-wrap:anywhere;font-size:11px;display:block}.focus-form-error small{color:var(--color-muted);margin-top:2px}.focus-toast{z-index:150;border:1px solid var(--color-primary);border-radius:var(--radius);min-height:40px;color:var(--color-primary-hover);background:var(--color-primary-soft);align-items:center;gap:6px;padding:0 13px;font-size:12px;font-weight:700;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #1c232b24}@keyframes focus-spin{to{transform:rotate(360deg)}}@media (width<=1023px){.focus-lower-grid{grid-template-columns:1fr}}@media (width<=767px){.focus-heading h1{font-size:23px;line-height:32px}.focus-heading .focus-secondary-button{width:44px;padding:0;font-size:0}.focus-timer-panel{min-height:470px}.focus-timer-panel>header{padding:11px 13px}.focus-idle-body{padding:18px 14px}.focus-duration-fields,.focus-association-fields{grid-template-columns:1fr}.focus-clock{width:252px;height:252px;margin-top:25px}.focus-clock svg{width:238px;height:238px}.focus-clock strong{font-size:46px;line-height:56px}.focus-timer-panel>footer{flex-wrap:wrap;padding:10px 12px}.focus-timer-panel>footer button{flex:1;padding:0 9px}.focus-lower-grid{gap:10px}.focus-stats-panel>header,.focus-history-panel>header{flex-direction:column;align-items:stretch}.focus-range-switch{width:100%}.focus-range-switch button{flex:1}.focus-history-dates{width:100%}.focus-history-dates label{flex:1;width:auto}.focus-history-list article{grid-template-columns:minmax(0,1fr) 82px}.focus-history-list article>div:nth-child(3),.focus-history-list article>div:nth-child(4),.focus-history-list article>p{padding-left:38px}.focus-pagination button,.focus-dialog>header button{width:44px;height:44px}.focus-dialog-backdrop{background:var(--color-surface);align-items:end;padding:0}.focus-dialog{width:100%;height:100dvh;max-height:100dvh;box-shadow:none;border:0;border-radius:0}.focus-dialog-grid{grid-template-columns:1fr}.focus-dialog>footer{position:sticky;bottom:0}.focus-toast{justify-content:center;bottom:86px;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){.focus-primary-button .spin,.focus-dialog .spin{animation:none}}.finance-page{--finance-positive:var(--color-success);--finance-negative:var(--color-danger);--finance-warning:var(--color-warning);width:100%;max-width:1160px;min-height:560px;color:var(--color-text);margin:0 auto}.finance-heading{justify-content:space-between;align-items:flex-start;gap:16px;min-height:52px;display:flex}.finance-heading h1{letter-spacing:0;font-size:26px;line-height:34px}.finance-eyebrow{color:var(--color-muted);margin-bottom:1px;font-size:11px;font-weight:700;display:block}.finance-heading-actions,.finance-privacy-button,.finance-period-meta,.finance-month-picker,.finance-month-picker label,.finance-panel-heading,.finance-chart-legend,.finance-dialog>header,.finance-dialog>footer{align-items:center;display:flex}.finance-heading-actions{gap:8px}.finance-privacy-button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;gap:7px;padding:0 11px;font-size:12px;font-weight:700}.finance-create-transaction{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:750;display:inline-flex}.finance-create-transaction:hover:not(:disabled){background:var(--color-primary-hover)}.finance-privacy-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.finance-privacy-button:disabled,.finance-period-toolbar button:disabled,.finance-dialog button:disabled{cursor:not-allowed;opacity:.5}.finance-tabs{border-bottom:1px solid var(--color-border);scrollbar-width:thin;align-items:stretch;gap:25px;min-height:44px;margin-bottom:15px;display:flex;overflow-x:auto}.finance-tabs a{min-width:44px;min-height:44px;color:var(--color-muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;padding:0 1px;font-size:13px;font-weight:650;display:flex}.finance-tabs a:hover,.finance-tabs a.active{color:var(--color-primary)}.finance-tabs a.active{border-bottom-color:var(--color-primary)}.finance-period-toolbar{justify-content:space-between;align-items:center;gap:14px;min-height:44px;margin-bottom:14px;display:flex}.finance-month-picker{gap:8px;min-width:0}.finance-month-picker>button,.finance-period-meta>button,.finance-panel-error button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:0 0 36px;place-items:center;display:inline-grid}.finance-month-picker>button:hover:not(:disabled),.finance-period-meta>button:hover,.finance-panel-error button:hover{border-color:var(--color-primary);color:var(--color-primary)}.finance-month-picker label{min-width:146px;position:relative}.finance-month-picker label>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.finance-month-picker input{border:1px solid var(--color-border);border-radius:var(--radius);width:146px;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 9px;font-size:12px;font-weight:700}.finance-period-meta{color:var(--color-muted);gap:8px;font-size:11px}.finance-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.finance-metric{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;justify-content:space-between;gap:13px;min-width:0;min-height:104px;padding:16px;display:flex}.finance-metric>span{color:var(--color-muted);align-items:center;gap:7px;font-size:12px;font-weight:650;display:flex}.finance-metric strong{overflow-wrap:anywhere;letter-spacing:0;font-variant-numeric:tabular-nums;min-width:0;font-size:23px;line-height:31px}.finance-metric[data-tone=positive] strong,.finance-transaction-list b[data-type=income],.finance-transaction-list b[data-type=refund]{color:var(--color-success-text)}.finance-metric[data-tone=negative] strong,.finance-transaction-list b[data-type=expense],.finance-account-list b[data-negative=true]{color:var(--finance-negative)}.finance-masked-metrics .finance-metric strong{color:var(--color-muted);letter-spacing:0}.finance-main-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.9fr);gap:14px;margin-bottom:14px;display:grid}.finance-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;min-height:230px;padding:17px 18px}.finance-panel-heading{justify-content:space-between;gap:12px;min-height:44px;margin-bottom:13px}.finance-panel-heading h2{letter-spacing:0;font-size:15px;line-height:22px}.finance-panel-heading>span,.finance-panel-heading a{color:var(--color-muted);font-size:11px}.finance-panel-heading a{min-width:44px;min-height:44px;color:var(--color-primary);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.finance-chart-panel{min-height:244px}.finance-chart-legend{color:var(--color-muted);flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:-9px;font-size:10px}.finance-chart-legend span{align-items:center;gap:4px;display:inline-flex}.finance-chart-legend i{background:var(--finance-positive);border-radius:2px;width:7px;height:7px}.finance-chart-legend .expense i{background:var(--finance-negative)}.finance-chart{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(6,minmax(30px,1fr));align-items:end;gap:7px;height:168px;padding:12px 5px 0;display:grid}.finance-chart-column{grid-template-rows:1fr 24px;align-items:end;gap:3px;min-width:0;height:155px;display:grid}.finance-chart-bars{justify-content:center;align-items:flex-end;gap:5px;width:100%;height:125px;display:flex}.finance-chart-bars i{background:var(--finance-positive);border-radius:3px 3px 0 0;width:min(14px,36%);min-height:3px}.finance-chart-bars i.expense{background:var(--finance-negative)}.finance-chart-column>span{color:var(--color-muted);text-align:center;white-space:nowrap;font-size:10px;overflow:hidden}.finance-budget-list,.finance-transaction-list,.finance-account-list,.finance-upcoming-list{display:grid}.finance-budget-list{gap:13px}.finance-budget-list article{grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px 9px;min-width:0;display:grid}.finance-budget-list article>div:first-child{grid-column:1/-1;justify-content:space-between;gap:8px;min-width:0;display:flex}.finance-budget-list strong,.finance-budget-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.finance-budget-list span,.finance-budget-list small{color:var(--color-muted);font-variant-numeric:tabular-nums}.finance-budget-list small{text-align:right;font-size:10px}.finance-progress{background:var(--color-border);border-radius:4px;height:7px;overflow:hidden}.finance-progress i{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.finance-progress i[data-over=true]{background:var(--finance-negative)}.finance-transaction-list article,.finance-account-list article{border-bottom:1px solid var(--color-border);grid-template-columns:34px minmax(0,1fr) max-content;align-items:center;gap:10px;min-width:0;min-height:58px;display:grid}.finance-transaction-list article:last-child,.finance-account-list article:last-child,.finance-upcoming-list article:last-child{border-bottom:0}.finance-transaction-icon,.finance-account-icon{width:32px;height:32px;color:var(--finance-negative);background:var(--color-danger-soft);border-radius:50%;place-items:center;display:inline-grid}.finance-transaction-icon[data-type=income],.finance-transaction-icon[data-type=refund]{color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 13%, var(--color-surface))}.finance-transaction-icon[data-type=transfer],.finance-account-icon{color:var(--color-info);background:var(--color-info-soft)}.finance-account-icon[data-type=credit]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.finance-transaction-list article>div,.finance-account-list article>div,.finance-upcoming-list article>div{min-width:0}.finance-transaction-list strong,.finance-transaction-list small,.finance-account-list strong,.finance-account-list small,.finance-upcoming-list strong,.finance-upcoming-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-transaction-list strong,.finance-account-list strong,.finance-upcoming-list strong{font-size:12px;line-height:19px}.finance-transaction-list small,.finance-account-list small,.finance-upcoming-list small{color:var(--color-muted);font-size:10px;line-height:17px}.finance-transaction-list b,.finance-account-list b,.finance-upcoming-list b{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.finance-upcoming-panel{min-height:134px;margin-bottom:8px}.finance-upcoming-list{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-upcoming-list article{border-right:1px solid var(--color-border);grid-template-columns:minmax(0,1fr);gap:5px;min-width:0;padding:4px 14px;display:grid}.finance-upcoming-list article:first-child{padding-left:0}.finance-upcoming-list article:last-child{border-right:0;padding-right:0}.finance-upcoming-list time{color:var(--color-warning-text);font-size:10px;font-weight:700}.finance-panel-empty,.finance-panel-error,.finance-locked-state,.finance-error{justify-content:center;align-items:center;display:flex}.finance-panel-empty{min-height:145px;color:var(--color-muted);flex-direction:column;gap:7px;font-size:11px}.finance-upcoming-panel .finance-panel-empty{min-height:57px}.finance-panel-error{min-height:140px;color:var(--color-danger);text-align:center;gap:8px;font-size:11px}.finance-panel-skeleton{gap:9px;min-height:155px;padding-top:8px;display:grid}.finance-panel-skeleton i,.finance-skeleton>span{border-radius:var(--radius);background:color-mix(in srgb, var(--color-border) 78%, transparent);animation:1.2s ease-in-out infinite alternate finance-pulse}.finance-panel-skeleton i{min-height:36px}.finance-locked-state{border-block:1px solid var(--color-border);min-height:250px;color:var(--color-muted);background:color-mix(in srgb, var(--color-surface) 82%, var(--color-page));text-align:center;flex-direction:column;gap:9px;padding:28px}.finance-locked-state h2{color:var(--color-text);letter-spacing:0;font-size:17px}.finance-locked-state p,.finance-locked-state small{max-width:410px;font-size:11px;line-height:18px}.finance-locked-state button,.finance-primary-button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-weight:700;display:inline-flex}.finance-skeleton{grid-template-rows:52px 42px 104px 260px;gap:14px;display:grid}.finance-error{min-height:430px;color:var(--color-muted);text-align:center;flex-direction:column;gap:10px}.finance-error h1{color:var(--color-text);letter-spacing:0;font-size:20px}.finance-error p{max-width:500px;font-size:12px}.finance-error small{overflow-wrap:anywhere;font-size:11px}.finance-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.finance-error button,.finance-error a{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.finance-dialog-backdrop{z-index:80;background:#10191d85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.finance-dialog{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);width:min(430px,100%);overflow:hidden;box-shadow:0 20px 56px #0d161a38}.finance-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;min-height:65px;padding:11px 16px}.finance-dialog>header p{color:var(--color-primary);font-size:10px;font-weight:750}.finance-dialog>header h2{letter-spacing:0;font-size:17px}.finance-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.finance-dialog-body{gap:14px;padding:17px 18px 19px;display:grid}.finance-unlock-intro{color:var(--color-primary);background:var(--color-primary-soft);align-items:center;gap:10px;padding:10px 11px;display:flex}.finance-unlock-intro p{color:var(--color-text);font-size:12px;font-weight:650}.finance-segmented{border-radius:var(--radius);background:var(--color-page);grid-template-columns:repeat(2,1fr);padding:3px;display:grid}.finance-segmented button{min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:4px;font-size:12px;font-weight:700}.finance-segmented button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:0 1px 3px #10191d1a}.finance-dialog-body>label{color:var(--color-muted);gap:6px;font-size:11px;font-weight:700;display:grid}.finance-credential-field{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);align-items:center;gap:8px;padding:0 10px;display:flex}.finance-credential-field:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-credential-field input{width:100%;min-width:0;height:44px;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.finance-credential-field:has(input[aria-invalid=true]){border-color:var(--color-danger)}.finance-credential-error{color:var(--color-danger);font-size:11px;line-height:18px}.finance-form-error{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);gap:3px;padding:8px 10px;font-size:11px;display:grid}.finance-form-error small{overflow-wrap:anywhere;color:var(--color-muted)}.finance-dialog>footer{border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));justify-content:flex-end;gap:8px;min-height:61px;padding:10px 16px}.finance-secondary-button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 14px;font-weight:700}.finance-primary-button .spin{animation:.85s linear infinite finance-spin}.finance-toast{z-index:90;border:1px solid color-mix(in srgb, var(--color-success) 35%, var(--color-border));border-radius:var(--radius);max-width:min(360px,100vw - 32px);color:var(--color-text);background:var(--color-surface);padding:10px 13px;font-size:12px;font-weight:700;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 26px #0d161a29}.finance-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes finance-pulse{0%{opacity:.45}to{opacity:.82}}@keyframes finance-spin{to{transform:rotate(360deg)}}@media (width<=900px){.finance-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-main-grid{grid-template-columns:minmax(0,1fr)}.finance-upcoming-list{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-upcoming-list article,.finance-upcoming-list article:first-child,.finance-upcoming-list article:last-child{border-right:0;border-bottom:1px solid var(--color-border);padding:9px}}@media (width<=560px){.finance-heading{align-items:center}.finance-heading h1{font-size:23px}.finance-heading-actions{gap:6px}.finance-create-transaction,.finance-privacy-button{min-height:44px;padding-inline:9px;font-size:11px}.finance-tabs{gap:21px}.finance-period-toolbar{flex-direction:column;align-items:flex-start}.finance-period-meta{justify-content:space-between;width:100%}.finance-month-picker>button,.finance-period-meta>button,.finance-panel-error button,.finance-dialog>header button{flex-basis:44px;width:44px;height:44px}.finance-metric-grid{gap:8px}.finance-metric{min-height:94px;padding:13px}.finance-metric strong{font-size:18px;line-height:25px}.finance-panel{padding:15px 13px}.finance-chart{gap:3px;height:240px;padding-inline:0}.finance-chart-column{height:227px}.finance-chart-bars{gap:2px;height:197px}.finance-transaction-list article,.finance-account-list article{grid-template-columns:32px minmax(0,1fr);gap:9px;padding-block:7px}.finance-transaction-list b,.finance-account-list b{grid-column:2;justify-self:start;margin-top:-4px}.finance-upcoming-list{grid-template-columns:minmax(0,1fr)}.finance-dialog-backdrop{align-items:end;padding:0}.finance-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:92dvh;overflow-y:auto}.finance-toast{right:16px;bottom:calc(80px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.finance-panel-skeleton i,.finance-skeleton>span,.finance-primary-button .spin{animation:none}}.finance-accounts-toolbar,.finance-accounts-status,.finance-accounts-actions,.finance-account-list-panel>header,.finance-account-list-panel>header>div,.finance-account-row-identity,.finance-account-row-actions,.finance-account-pagination,.finance-account-pagination>div,.finance-account-inline-error,.finance-account-net-worth>span:last-child,.finance-account-colors>div,.finance-account-icons>div,.finance-account-confirm-body,.finance-account-form-error button{align-items:center;display:flex}.finance-accounts-toolbar{justify-content:space-between;gap:12px;min-height:44px;margin-bottom:13px}.finance-accounts-status{border-radius:var(--radius);background:var(--color-page);padding:3px}.finance-accounts-status button{min-width:78px;min-height:44px;color:var(--color-text);cursor:pointer;background:0 0;border-radius:4px;padding:0 11px;font-size:11px;font-weight:700}.finance-accounts-status button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:0 1px 3px #10191d1a}.finance-accounts-actions{gap:8px}.finance-accounts-actions button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;gap:6px;padding:0 11px;font-size:11px;font-weight:700}.finance-accounts-actions button.icon{flex:0 0 36px;width:36px;height:36px;min-height:36px;padding:0}.finance-accounts-actions button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.finance-accounts-actions button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.finance-accounts-actions button.primary:hover:not(:disabled){color:var(--color-on-solid);background:var(--color-primary-hover)}.finance-accounts-actions button:disabled,.finance-account-row-actions button:disabled,.finance-account-empty button:disabled,.finance-account-pagination button:disabled{cursor:not-allowed;opacity:.5}.finance-accounts-notice{border-left:3px solid var(--color-success);min-height:38px;color:var(--color-text);background:color-mix(in srgb, var(--color-success) 11%, var(--color-surface));align-items:center;margin-bottom:10px;padding:7px 10px;font-size:11px;display:flex}.finance-accounts-notice[data-tone=error]{border-left-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.finance-account-list-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;overflow:hidden}.finance-account-list-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;min-height:52px;padding:8px 14px}.finance-account-list-panel>header>div{align-items:baseline;gap:8px}.finance-account-list-panel>header h2{letter-spacing:0;font-size:14px;line-height:22px}.finance-account-list-panel>header span{color:var(--color-muted);font-size:10px}.finance-account-rows{display:grid}.finance-account-rows>article{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(190px,1.3fr) minmax(150px,.9fr) minmax(110px,.75fr) 168px;align-items:center;gap:15px;min-width:0;min-height:82px;padding:12px 14px;display:grid}.finance-account-rows>article:last-child{border-bottom:0}.finance-account-rows>article:hover{background:color-mix(in srgb, var(--color-primary-soft) 42%, var(--color-surface))}.finance-account-row-identity{gap:10px;min-width:0}.finance-account-row-identity>span{border-radius:var(--radius);flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.finance-account-row-identity>div,.finance-account-row-balance,.finance-account-row-detail{min-width:0}.finance-account-row-identity strong,.finance-account-row-identity small,.finance-account-row-balance strong,.finance-account-row-balance small,.finance-account-row-detail span,.finance-account-row-detail strong{display:block}.finance-account-row-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:20px;overflow:hidden}.finance-account-row-identity small,.finance-account-row-balance small,.finance-account-row-detail span{color:var(--color-muted);font-size:10px;line-height:17px}.finance-account-row-balance,.finance-account-row-detail{gap:2px;display:grid}.finance-account-row-balance strong,.finance-account-row-detail strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:13px;line-height:21px}.finance-account-row-balance strong[data-negative=true]{color:var(--color-danger)}.finance-account-row-detail strong{font-size:11px}.finance-account-row-actions{justify-content:flex-end;gap:8px}.finance-account-row-actions button{width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:4px;flex:0 0 36px;place-items:center;display:grid}.finance-account-row-actions button:hover:not(:disabled){color:var(--color-primary);background:var(--color-primary-soft)}.finance-account-row-actions button:last-child:hover:not(:disabled){color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 11%, var(--color-surface))}.finance-account-pagination{border-top:1px solid var(--color-border);min-height:49px;color:var(--color-muted);justify-content:space-between;gap:12px;padding:8px 14px;font-size:10px}.finance-account-pagination>div{gap:6px}.finance-account-pagination button,.finance-account-inline-error button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 9px;font-size:10px;font-weight:700}.finance-account-empty,.finance-account-inline-error{min-height:310px;color:var(--color-muted);text-align:center;justify-content:center;gap:9px}.finance-account-empty{flex-direction:column;align-items:center;display:flex}.finance-account-empty>svg{color:var(--color-primary)}.finance-account-empty h3{color:var(--color-text);letter-spacing:0;font-size:14px}.finance-account-empty button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:6px;padding:0 11px;font-weight:700;display:inline-flex}.finance-account-inline-error{color:var(--color-danger);font-size:11px}.finance-account-inline-error button{align-items:center;gap:5px;display:inline-flex}.finance-account-dialog.wide{width:min(690px,100%)}.finance-account-editor-body,.finance-account-reconcile-body{gap:16px;padding:18px;display:grid}.finance-account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.finance-account-form-grid>label,.finance-account-notes,.finance-account-reconcile-body>label{align-content:start;gap:6px;min-width:0;display:grid}.finance-account-form-grid>label>span:first-child,.finance-account-notes>span,.finance-account-reconcile-body>label>span,.finance-account-colors legend,.finance-account-icons legend{color:var(--color-muted);font-size:11px;font-weight:700}.finance-account-form-grid input,.finance-account-form-grid select,.finance-account-notes textarea,.finance-account-reconcile-body>label>input,.finance-account-reconcile-body textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;outline:0;padding:8px 10px;font-size:12px}.finance-account-form-grid select{padding-block:0}.finance-account-notes textarea,.finance-account-reconcile-body textarea{resize:vertical;line-height:19px}.finance-account-form-grid input:focus-visible,.finance-account-form-grid select:focus-visible,.finance-account-notes textarea:focus-visible,.finance-account-reconcile-body>label>input:focus-visible,.finance-account-reconcile-body textarea:focus-visible{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-account-form-grid label>small,.finance-account-notes>small,.finance-account-reconcile-body label>small,.finance-account-colors>small,.finance-account-icons>small{color:var(--color-danger);font-size:10px;line-height:16px}.finance-account-amount-field{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:52px minmax(0,1fr);align-items:center;min-width:0;height:44px;display:grid;overflow:hidden}.finance-account-amount-field:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-account-amount-field b{border-right:1px solid var(--color-border);height:100%;color:var(--color-muted);place-items:center;font-size:10px;display:grid}.finance-account-amount-field input{height:44px;min-height:44px;box-shadow:none;font-variant-numeric:tabular-nums;border:0;border-radius:0;padding:0 10px;font-size:14px}.finance-account-amount-field input:focus-visible{box-shadow:none;border:0}.finance-account-net-worth>span:last-child{min-height:44px;color:var(--color-text);gap:8px;font-size:12px;font-weight:600}.finance-account-net-worth input{width:16px;height:16px;min-height:16px;accent-color:var(--color-primary);border:0;padding:0}.finance-account-colors,.finance-account-icons{border:0;min-width:0;padding:0}.finance-account-colors legend,.finance-account-icons legend{margin-bottom:7px}.finance-account-colors>div,.finance-account-icons>div{flex-wrap:wrap;gap:8px}.finance-account-colors label,.finance-account-icons label{cursor:pointer;place-items:center;width:44px;height:44px;display:grid;position:relative}.finance-account-colors input,.finance-account-icons input{opacity:0;pointer-events:none;position:absolute}.finance-account-colors i{border:3px solid var(--color-surface);width:25px;height:25px;box-shadow:0 0 0 1px var(--color-border-strong);border-radius:50%;display:block}.finance-account-colors input:checked+i,.finance-account-colors input:focus-visible+i{box-shadow:0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-primary)}.finance-account-icons label>span{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);place-items:center;display:grid}.finance-account-icons input:checked+span,.finance-account-icons input:focus-visible+span{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);box-shadow:var(--focus-ring)}.finance-account-form-error{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);gap:4px;padding:8px 10px;font-size:11px;display:grid}.finance-account-form-error small{overflow-wrap:anywhere;color:var(--color-muted)}.finance-account-form-error button{border-radius:var(--radius);min-height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid;justify-content:center;justify-self:start;padding:0 8px;font-size:10px;font-weight:700}.finance-account-reconcile-body dl{background:var(--color-page);margin:0;padding:10px 11px}.finance-account-reconcile-body dl>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.finance-account-reconcile-body dt{color:var(--color-text);font-size:11px}.finance-account-reconcile-body dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:14px;font-weight:750}.finance-account-confirm-body{flex-wrap:wrap;align-items:flex-start;gap:10px;min-height:126px;padding:26px 18px}.finance-account-confirm-body>svg{color:var(--color-warning-text);flex:none}.finance-account-confirm-body>p{font-size:12px;line-height:20px}.finance-account-confirm-body .finance-account-form-error{flex:1 0 100%;width:100%}.finance-account-danger-button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-danger);cursor:pointer;padding:0 14px;font-weight:700}.finance-account-masked{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:252px;margin-bottom:12px;display:grid}.finance-account-masked>span{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted);background:var(--color-surface);place-items:center;font-size:20px;display:grid}.finance-account-rows-skeleton,.finance-accounts-skeleton{gap:11px;display:grid}.finance-account-rows-skeleton{grid-template-rows:repeat(4,68px);min-height:340px;padding:15px}.finance-accounts-skeleton{grid-template-rows:52px 42px 42px minmax(340px,1fr)}.finance-account-rows-skeleton>span,.finance-accounts-skeleton>span{border-radius:var(--radius);background:color-mix(in srgb, var(--color-border) 78%, transparent);animation:1.2s ease-in-out infinite alternate finance-pulse}@media (width<=850px){.finance-account-rows>article{grid-template-columns:minmax(190px,1fr) minmax(150px,.8fr) 168px;grid-template-areas:"identity balance actions""detail detail actions";gap:7px 12px}.finance-account-row-identity{grid-area:identity}.finance-account-row-balance{grid-area:balance}.finance-account-row-detail{grid-area:detail}.finance-account-row-actions{grid-area:actions}}@media (width<=580px){.finance-accounts-toolbar{flex-direction:column;align-items:stretch}.finance-accounts-status,.finance-accounts-actions{width:100%}.finance-accounts-status button,.finance-accounts-actions button.primary{flex:1}.finance-accounts-actions{justify-content:flex-start}.finance-accounts-actions button.icon,.finance-account-row-actions button{flex-basis:44px;width:44px;height:44px;min-height:44px}.finance-account-list-panel{border-left:0;border-right:0;border-radius:0}.finance-account-list-panel>header,.finance-account-pagination{padding-inline:10px}.finance-account-rows>article{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity""balance""detail""actions";padding:12px 10px}.finance-account-row-balance{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.finance-account-row-detail{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:10px}.finance-account-row-detail strong{text-align:right}.finance-account-form-grid{grid-template-columns:minmax(0,1fr)}.finance-account-editor-body,.finance-account-reconcile-body{padding:15px}.finance-account-dialog>footer button{flex:1}.finance-account-masked{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.finance-account-rows-skeleton>span,.finance-accounts-skeleton>span{animation:none}}.finance-transaction-drawer-backdrop{z-index:82;background:#10191d80;justify-content:flex-end;display:flex;position:fixed;inset:0}.finance-transaction-drawer{width:min(480px,100%);height:100%;color:var(--color-text);background:var(--color-surface);grid-template-rows:auto minmax(0,1fr) auto;display:grid;box-shadow:-16px 0 42px #0d161a2e}.finance-transaction-drawer>header,.finance-transaction-drawer>footer,.finance-transaction-kind,.finance-transaction-main-amount>div,.finance-transaction-money,.finance-transaction-add-split,.finance-transaction-attachments>label,.finance-transaction-attachments li,.finance-transaction-drawer-state,.finance-transaction-drawer-state button{align-items:center;display:flex}.finance-transaction-conflict{grid-template-columns:auto minmax(0,1fr);align-items:start}.finance-transaction-conflict>svg{color:var(--color-warning-text)}.finance-transaction-conflict p,.finance-transaction-conflict small{margin:0;line-height:19px}.finance-transaction-conflict p{color:var(--color-text);font-size:12px}.finance-transaction-conflict small{color:var(--color-danger);margin-top:7px;font-size:11px;display:block}.finance-transaction-drawer>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:16px;min-height:70px;padding:12px 18px}.finance-transaction-drawer>header p{color:var(--color-primary);margin:0 0 1px;font-size:10px;font-weight:750}.finance-transaction-drawer>header h2{letter-spacing:0;margin:0;font-size:18px;line-height:25px}.finance-transaction-drawer>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;flex:0 0 36px;place-items:center;display:grid}.finance-transaction-drawer>header button:hover:not(:disabled){color:var(--color-text);background:var(--color-page)}.finance-transaction-drawer-body{align-content:start;gap:18px;min-height:0;padding:18px;display:grid;overflow-y:auto}.finance-transaction-drawer-body.state{align-content:stretch}.finance-refund-original{border-left:3px solid var(--color-info);background:var(--color-info-soft);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.finance-refund-original>svg{color:var(--color-info)}.finance-refund-original>div,.finance-refund-original span,.finance-refund-original strong,.finance-refund-original small{min-width:0;display:block}.finance-refund-original span,.finance-refund-original small{color:var(--color-text);font-size:10px}.finance-refund-original strong{font-variant-numeric:tabular-nums;margin-block:2px;font-size:14px}.finance-refund-original small{overflow-wrap:anywhere;line-height:16px}.finance-transaction-kind{border-radius:var(--radius);background:var(--color-page);grid-template-columns:repeat(3,1fr);padding:3px;display:grid}.finance-transaction-kind button{min-height:44px;color:var(--color-text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;font-size:12px;font-weight:750}.finance-transaction-kind button.active{color:var(--color-text);background:var(--color-surface);box-shadow:0 1px 3px #10191d1a}.finance-transaction-kind button:first-child.active{color:var(--color-danger)}.finance-transaction-kind button:nth-child(2).active{color:var(--color-success-text)}.finance-transaction-main-amount,.finance-transaction-field,.finance-transaction-notes,.finance-transaction-form-grid>label,.finance-transaction-transfer label,.finance-transaction-foreign>label,.finance-transaction-split label,.finance-transaction-splits,.finance-transaction-tags,.finance-transaction-attachments{min-width:0;color:var(--color-muted);border:0;gap:6px;margin:0;padding:0;font-size:11px;font-weight:700;display:grid}.finance-transaction-main-amount{text-align:center;gap:7px}.finance-transaction-main-amount>div{border-bottom:2px solid var(--color-primary);justify-content:center;gap:10px;min-height:62px}.finance-transaction-main-amount b{color:var(--color-muted);font-size:15px}.finance-transaction-main-amount input{width:min(260px,75%);min-width:0;color:var(--color-text);font:inherit;letter-spacing:0;text-align:center;background:0 0;border:0;outline:0;font-size:32px;font-weight:750;line-height:44px}.finance-transaction-main-amount>div:focus-within{border-color:var(--color-primary);box-shadow:0 2px 0 color-mix(in srgb, var(--color-primary) 22%, transparent)}.finance-transaction-main-amount>div:has(input[aria-invalid=true]){border-color:var(--color-danger)}.finance-transaction-form-grid,.finance-transaction-foreign{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.finance-transaction-field select,.finance-transaction-form-grid input,.finance-transaction-form-grid select,.finance-transaction-transfer select,.finance-transaction-transfer input,.finance-transaction-foreign input,.finance-transaction-split select,.finance-transaction-split input,.finance-transaction-notes textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;outline:0;padding:0 10px;font-size:12px}.finance-transaction-notes textarea{resize:vertical;min-height:76px;padding-block:9px}.finance-transaction-field select:focus,.finance-transaction-form-grid input:focus,.finance-transaction-form-grid select:focus,.finance-transaction-transfer select:focus,.finance-transaction-transfer input:focus,.finance-transaction-foreign input:focus,.finance-transaction-split select:focus,.finance-transaction-split input:focus,.finance-transaction-notes textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-transaction-field [aria-invalid=true],.finance-transaction-form-grid [aria-invalid=true],.finance-transaction-transfer [aria-invalid=true],.finance-transaction-foreign [aria-invalid=true],.finance-transaction-split [aria-invalid=true],.finance-transaction-notes [aria-invalid=true]{border-color:var(--color-danger)}.finance-transaction-main-amount small,.finance-transaction-field small,.finance-transaction-form-grid small,.finance-transaction-transfer small,.finance-transaction-foreign small,.finance-transaction-split small,.finance-transaction-splits>small,.finance-transaction-tags>small,.finance-transaction-notes small,.finance-transaction-attachments>small{color:var(--color-danger);font-size:10px;font-weight:600}.finance-transaction-money{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);gap:7px;min-height:44px;padding:0 9px}.finance-transaction-money:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-transaction-money:has(input[aria-invalid=true]){border-color:var(--color-danger)}.finance-transaction-money b{color:var(--color-muted);font-size:10px}.finance-transaction-money input{min-height:44px;box-shadow:none;border:0;outline:0;padding:0}.finance-transaction-splits,.finance-transaction-tags,.finance-transaction-attachments{border-top:1px solid var(--color-border);gap:9px;padding-top:15px}.finance-transaction-splits legend,.finance-transaction-tags legend,.finance-transaction-attachments legend{color:var(--color-text);padding:0;font-size:12px;font-weight:750}.finance-transaction-splits>div{gap:11px;display:grid}.finance-transaction-split{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:9px;padding-bottom:11px;display:grid;position:relative}.finance-transaction-split>label:nth-child(3){grid-column:1/-1}.finance-transaction-split>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-danger);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;bottom:15px;right:0}.finance-transaction-split:has(>button)>label:nth-child(3) input{padding-right:45px}.finance-transaction-add-split{border:1px dashed var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;justify-content:center;gap:6px;font-size:11px;font-weight:700}.finance-transaction-transfer{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);align-items:start;gap:9px;display:grid}.finance-transaction-transfer>svg{color:var(--color-muted);margin-top:53px}.finance-transaction-transfer>section{gap:12px;min-width:0;display:grid}.finance-transaction-transfer-base{grid-column:1/-1}.finance-transaction-transfer h3{color:var(--color-text);letter-spacing:0;margin:0;font-size:12px}.finance-transaction-transfer .finance-transaction-foreign{grid-template-columns:1fr}.finance-transaction-transfer-equal{border:1px solid var(--color-border);border-radius:var(--radius);min-height:42px;color:var(--color-muted);background:var(--color-page);font-variant-numeric:tabular-nums;align-items:center;margin:0;padding:0 10px;font-size:11px;display:flex}.finance-transaction-tags>div{flex-wrap:wrap;gap:8px;display:flex}.finance-transaction-tags label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:10px;display:inline-flex}.finance-transaction-tags label.selected{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.finance-transaction-tags input{opacity:0;width:1px;height:1px;position:absolute}.finance-transaction-tags i{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.finance-transaction-attachments>label{border:1px dashed var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-primary);cursor:pointer;justify-content:center;gap:7px}.finance-transaction-attachments>label:has(input:disabled){cursor:not-allowed;opacity:.5}.finance-transaction-attachments>label:has(input:focus-visible){border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-transaction-attachments>label:has(input[aria-invalid=true]){border-color:var(--color-danger)}.finance-transaction-attachments>label input{opacity:0;width:1px;height:1px;position:absolute}.finance-transaction-attachments ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.finance-transaction-attachments li{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:8px;min-width:0;min-height:44px;padding-left:9px}.finance-transaction-attachments li span{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.finance-transaction-attachments li button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;flex:0 0 36px;place-items:center;display:grid}.finance-transaction-form-error{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);gap:3px;padding:9px 10px;font-size:11px;display:grid}.finance-transaction-form-error small{overflow-wrap:anywhere;color:var(--color-muted)}.finance-transaction-drawer>footer{border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));justify-content:flex-end;gap:9px;min-height:66px;padding:11px 18px}.finance-refund-drawer .finance-primary-button{align-items:center;gap:7px;display:inline-flex}.finance-transaction-drawer button:disabled,.finance-transaction-drawer input:disabled,.finance-transaction-drawer select:disabled,.finance-transaction-drawer textarea:disabled{cursor:not-allowed;opacity:.55}.finance-transaction-drawer-state{min-height:100%;color:var(--color-muted);text-align:center;flex-direction:column;justify-content:center;gap:9px}.finance-transaction-drawer-state h3,.finance-transaction-drawer-state p{margin:0}.finance-transaction-drawer-state h3{color:var(--color-text);letter-spacing:0;font-size:15px}.finance-transaction-drawer-state p{max-width:320px;font-size:11px;line-height:18px}.finance-transaction-drawer-state button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;gap:6px;padding:0 11px}.finance-transaction-drawer-loading{align-content:start;gap:14px;min-height:100%;padding-top:8px;display:grid}.finance-transaction-drawer-loading span{border-radius:var(--radius);background:color-mix(in srgb, var(--color-border) 75%, transparent);height:48px;animation:1.2s ease-in-out infinite alternate finance-transaction-drawer-pulse}.finance-transaction-drawer-loading span:first-child{height:64px}.finance-transaction-drawer-loading span:last-child{height:180px}@keyframes finance-transaction-drawer-pulse{0%{opacity:.45}to{opacity:.85}}@media (width<=560px){.finance-transaction-drawer{width:100%;height:100dvh;box-shadow:none}.finance-transaction-drawer>header{min-height:64px;padding-inline:16px}.finance-transaction-drawer>header button,.finance-transaction-split>button,.finance-transaction-attachments li button{flex-basis:44px;width:44px;height:44px}.finance-transaction-split:has(>button)>label:nth-child(3) input{padding-right:53px}.finance-transaction-drawer-body{gap:17px;padding:16px}.finance-transaction-main-amount input{font-size:30px}.finance-transaction-form-grid,.finance-transaction-foreign,.finance-transaction-transfer{grid-template-columns:minmax(0,1fr)}.finance-transaction-transfer>svg{justify-self:center;margin:-3px 0;transform:rotate(90deg)}.finance-transaction-transfer .finance-transaction-foreign{grid-template-columns:minmax(0,1fr)}.finance-transaction-drawer>footer{min-height:70px;padding:10px 16px max(10px, env(safe-area-inset-bottom))}.finance-transaction-drawer>footer .finance-primary-button{flex:1}}@media (prefers-reduced-motion:reduce){.finance-transaction-drawer-loading span{animation:none}}.finance-budgets-toolbar{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:13px;display:flex}.finance-budgets-month,.finance-budgets-actions,.finance-budgets-month label,.finance-budgets-toolbar button,.finance-budget-summary article header,.finance-budget-summary article header>span,.finance-budget-summary article header>div,.finance-budget-list-panel>header,.finance-budget-list-panel>header>div,.finance-budget-list-panel>header>button,.finance-budget-row-actions,.finance-budget-dialog>header,.finance-budget-dialog>footer,.finance-budgets-notice,.finance-budgets-partial-error,.finance-budget-inline-error{align-items:center;display:flex}.finance-budgets-month,.finance-budgets-actions{gap:8px}.finance-budgets-month>button,.finance-budgets-actions>button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);white-space:nowrap;cursor:pointer;justify-content:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700}.finance-budgets-month>button:first-child,.finance-budgets-month>button:nth-of-type(2),.finance-budgets-actions>button.icon{flex:0 0 36px;width:36px;padding:0}.finance-budgets-month label{position:relative}.finance-budgets-month label>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.finance-budgets-month input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:145px;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;outline:0;padding:0 9px;font-size:12px;font-weight:700}.finance-budgets-month input:focus-visible,.finance-budget-editor-body input:focus-visible,.finance-budget-editor-body select:focus-visible{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-budgets-month>button:hover,.finance-budgets-actions>button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.finance-budgets-month>button.finance-budgets-current{width:auto;color:var(--color-primary);background:0 0;border-color:#0000}.finance-budgets-actions>button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.finance-budgets-actions>button:disabled,.finance-budget-summary button:disabled,.finance-budget-row-actions button:disabled{cursor:not-allowed;opacity:.5}.finance-budgets-actions .spin,.finance-budget-dialog .spin{animation:.85s linear infinite finance-spin}.finance-budgets-notice,.finance-budgets-partial-error{border-left:3px solid var(--color-success);min-height:38px;color:var(--color-text);background:color-mix(in srgb, var(--color-success) 11%, var(--color-surface));gap:8px;margin-bottom:10px;padding:7px 10px;font-size:11px}.finance-budgets-notice[data-tone=error]{border-left-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.finance-budgets-partial-error{border-left-color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 10%, var(--color-surface));justify-content:space-between}.finance-budgets-partial-error>span{flex:1;min-width:0}.finance-budgets-partial-error strong,.finance-budgets-partial-error small{overflow-wrap:anywhere;display:block}.finance-budgets-partial-error small{color:var(--color-muted);margin-top:2px}.finance-budgets-partial-error button,.finance-budget-inline-error button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.finance-budget-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:13px;display:grid}.finance-budget-summary article{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;justify-content:space-between;gap:10px;min-width:0;min-height:112px;padding:14px 15px;display:flex}.finance-budget-summary article header{min-height:24px;color:var(--color-muted);justify-content:space-between;gap:8px;font-size:11px;font-weight:700}.finance-budget-summary article header>span,.finance-budget-summary article header>div{gap:6px}.finance-budget-summary article header button,.finance-budget-row-actions button{width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:4px;flex:0 0 36px;place-items:center;display:grid}.finance-budget-summary article header button:hover:not(:disabled),.finance-budget-row-actions button:hover:not(:disabled){color:var(--color-primary);background:var(--color-primary-soft)}.finance-budget-summary article header button:last-child:hover:not(:disabled),.finance-budget-row-actions button:last-child:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.finance-budget-summary article>strong{overflow-wrap:anywhere;letter-spacing:0;font-variant-numeric:tabular-nums;min-width:0;font-size:22px;line-height:30px}.finance-budget-summary article[data-tone=positive]>strong{color:var(--color-success-text)}.finance-budget-summary article[data-tone=danger]>strong{color:var(--color-danger)}.finance-budget-summary article>small{min-height:16px;color:var(--color-muted);font-size:10px}.finance-budget-summary article>button{border:1px solid var(--color-primary);border-radius:var(--radius);min-height:44px;color:var(--color-primary);background:var(--color-primary-soft);cursor:pointer;align-self:flex-start;align-items:center;gap:5px;padding:0 9px;font-size:10px;font-weight:700;display:inline-flex}.finance-budget-list-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;overflow:hidden}.finance-budget-list-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;min-height:51px;padding:8px 14px}.finance-budget-list-panel>header>div{align-items:baseline;gap:8px}.finance-budget-list-panel>header h2{letter-spacing:0;font-size:14px;line-height:22px}.finance-budget-list-panel>header span{color:var(--color-muted);font-size:10px}.finance-budget-list-panel>header>button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary);background:var(--color-surface);cursor:pointer;gap:5px;padding:0 9px;font-size:10px;font-weight:700}.finance-budget-category-action-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;flex:none;width:108px;min-height:44px;display:block}.finance-budget-rows{display:grid}.finance-budget-rows>article{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(180px,1.2fr) minmax(210px,1fr) 110px 80px;align-items:center;gap:12px;min-width:0;min-height:78px;padding:11px 14px;display:grid}.finance-budget-rows>article:last-child{border-bottom:0}.finance-budget-rows>article:hover{background:color-mix(in srgb, var(--color-primary-soft) 42%, var(--color-surface))}.finance-budget-row-main{grid-template-columns:10px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.finance-budget-row-main>i{border-radius:3px;width:10px;height:32px}.finance-budget-row-main>div{min-width:0}.finance-budget-row-main strong,.finance-budget-row-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-budget-row-main strong{font-size:12px;line-height:19px}.finance-budget-row-main small{color:var(--color-muted);font-size:10px;line-height:16px}.finance-budget-row-values{text-align:right;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:baseline;gap:9px;min-width:0;display:flex}.finance-budget-row-values span{overflow-wrap:anywhere;min-width:0;color:var(--color-muted);font-size:11px}.finance-budget-row-values b{min-width:48px;color:var(--color-primary);font-size:11px}.finance-budget-rows>article[data-tone=warning] .finance-budget-row-values b{color:var(--color-warning-text)}.finance-budget-rows>article[data-tone=danger] .finance-budget-row-values b{color:var(--color-danger)}.finance-budget-progress{background:var(--color-border);border-radius:4px;width:110px;height:7px;overflow:hidden}.finance-budget-progress>i{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.finance-budget-rows>article[data-tone=warning] .finance-budget-progress>i{background:var(--color-warning)}.finance-budget-rows>article[data-tone=danger] .finance-budget-progress>i{background:var(--color-danger)}.finance-budget-row-actions{justify-content:flex-end;gap:8px}.finance-budget-empty,.finance-budget-inline-error{min-height:270px;color:var(--color-muted);text-align:center;justify-content:center;align-items:center;gap:9px;display:flex}.finance-budget-empty{flex-direction:column}.finance-budget-empty>svg{color:var(--color-primary)}.finance-budget-empty h3{color:var(--color-text);letter-spacing:0;font-size:14px}.finance-budget-empty>button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:6px;padding:0 11px;font-weight:700;display:inline-flex}.finance-budget-inline-error{color:var(--color-danger);font-size:11px}.finance-budget-dialog-backdrop{z-index:84;background:#10191d85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.finance-budget-dialog{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:min(440px,100%);color:var(--color-text);background:var(--color-surface);overflow:hidden;box-shadow:0 20px 56px #0d161a38}.finance-budget-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;min-height:67px;padding:11px 16px}.finance-budget-dialog>header p{color:var(--color-primary);font-size:10px;font-weight:750}.finance-budget-dialog>header h2{letter-spacing:0;font-size:17px;line-height:24px}.finance-budget-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.finance-budget-dialog>footer{border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));justify-content:flex-end;gap:8px;min-height:61px;padding:10px 16px}.finance-budget-dialog>footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:700;display:inline-flex}.finance-budget-dialog>footer button.primary,.finance-budget-dialog>footer button.danger{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.finance-budget-dialog>footer button.danger{border-color:var(--color-danger);background:var(--color-danger)}.finance-budget-dialog button:disabled{cursor:not-allowed;opacity:.5}.finance-budget-editor-body{gap:15px;padding:18px;display:grid}.finance-budget-editor-body>label,.finance-budget-editor-target{gap:6px;min-width:0;display:grid}.finance-budget-editor-body>label>span,.finance-budget-editor-target>span{color:var(--color-muted);font-size:11px;font-weight:700}.finance-budget-editor-body select,.finance-budget-amount-field{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface)}.finance-budget-editor-body select{font:inherit;outline:0;padding:0 9px;font-size:12px}.finance-budget-editor-target strong{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);align-items:center;min-height:44px;padding:0 10px;font-size:12px;display:flex}.finance-budget-editor-body [aria-invalid=true]{border-color:var(--color-danger)}.finance-budget-editor-body>label>small,.finance-budget-editor-target>small{overflow-wrap:anywhere;color:var(--color-danger);font-size:11px}.finance-budget-amount-field{grid-template-columns:49px minmax(0,1fr);align-items:center;display:grid}.finance-budget-amount-field:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-budget-amount-field:has(input[aria-invalid=true]){border-color:var(--color-danger)}.finance-budget-amount-field b{border-right:1px solid var(--color-border);height:100%;color:var(--color-muted);place-items:center;font-size:10px;display:grid}.finance-budget-amount-field input{min-width:0;height:44px;color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:0 10px;font-size:15px}.finance-budget-form-error{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);gap:3px;padding:8px 10px;font-size:11px;display:grid}.finance-budget-form-error small{overflow-wrap:anywhere;color:var(--color-muted)}.finance-budget-confirm-body{grid-template-columns:30px minmax(0,1fr);align-content:center;align-items:start;gap:10px;min-height:122px;padding:20px 18px;display:grid}.finance-budget-confirm-body>svg{color:var(--color-warning-text)}.finance-budget-confirm-body>p{font-size:12px;line-height:20px}.finance-budget-confirm-body .finance-budget-form-error{grid-column:1/-1}.finance-budget-masked{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;min-height:116px;margin-bottom:12px;display:grid}.finance-budget-masked>span{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted);background:var(--color-surface);place-items:center;font-size:21px;display:grid}.finance-budget-summary-skeleton>span,.finance-budget-rows-skeleton>span,.finance-budgets-skeleton>span{border-radius:var(--radius);background:color-mix(in srgb, var(--color-border) 78%, transparent);animation:1.2s ease-in-out infinite alternate finance-pulse}.finance-budget-summary-skeleton>span{min-height:112px}.finance-budget-rows-skeleton{grid-template-rows:repeat(4,68px);gap:1px;min-height:315px;padding:14px;display:grid}.finance-budgets-skeleton{grid-template-rows:52px 42px 42px 112px minmax(300px,1fr);gap:12px;display:grid}@media (width<=820px){.finance-budgets-toolbar{flex-direction:column;align-items:flex-start}.finance-budgets-actions{justify-content:flex-end;width:100%}.finance-budget-rows>article{grid-template-columns:minmax(160px,1fr) minmax(190px,1fr) 80px;grid-template-areas:"main values actions""progress progress actions";gap:8px 12px}.finance-budget-row-main{grid-area:main}.finance-budget-row-values{grid-area:values}.finance-budget-progress{grid-area:progress;width:100%}.finance-budget-row-actions{grid-area:actions}}@media (width<=580px){.finance-budgets-month,.finance-budgets-month label,.finance-budgets-month input{width:100%}.finance-budgets-month label{flex:1}.finance-budgets-actions{justify-content:flex-start}.finance-budgets-actions>button:not(.icon){flex:1}.finance-budgets-month>button:first-child,.finance-budgets-month>button:nth-of-type(2),.finance-budgets-actions>button.icon,.finance-budget-summary article header button,.finance-budget-row-actions button,.finance-budget-dialog>header button{flex-basis:44px;width:44px;height:44px}.finance-budget-summary{grid-template-columns:minmax(0,1fr);gap:8px}.finance-budget-summary article{min-height:94px;padding:12px}.finance-budget-summary article>strong{font-size:19px;line-height:26px}.finance-budget-list-panel{border-left:0;border-right:0;border-radius:0}.finance-budget-list-panel>header{padding-inline:10px}.finance-budget-rows>article{grid-template-columns:minmax(0,1fr) 96px;grid-template-areas:"main actions""values values""progress progress";padding:11px 10px}.finance-budget-row-values{text-align:left;justify-content:space-between}.finance-budget-dialog-backdrop{align-items:end;padding:0}.finance-budget-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:92dvh;overflow-y:auto}.finance-budget-dialog>footer button{flex:1}.finance-budget-masked{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.finance-budgets-actions .spin,.finance-budget-dialog .spin,.finance-budget-summary-skeleton>span,.finance-budget-rows-skeleton>span,.finance-budgets-skeleton>span{animation:none}}.finance-recurring-page{padding-bottom:28px}.finance-recurring-create,.finance-recurring-empty button,.finance-recurring-add-split{border:1px solid var(--color-primary);border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700;display:inline-flex}.finance-recurring-create:hover:not(:disabled),.finance-recurring-empty button:hover:not(:disabled){background:var(--color-primary-hover)}.finance-recurring-create:disabled,.finance-recurring-empty button:disabled,.finance-recurring-add-split:disabled,.finance-recurring-row-actions button:disabled{cursor:not-allowed;opacity:.5}.finance-recurring-notice{border:1px solid color-mix(in srgb, var(--color-success) 35%, var(--color-border));border-radius:var(--radius);min-height:36px;color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 7%, var(--color-surface));align-items:center;margin-bottom:12px;padding:7px 11px;font-size:12px;font-weight:650;display:flex}.finance-recurring-notice[data-tone=error]{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 7%, var(--color-surface))}.finance-recurring-upcoming{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:142px;margin-bottom:14px;padding:15px 17px}.finance-recurring-upcoming>header,.finance-recurring-upcoming>header>div,.finance-recurring-upcoming-items article,.finance-recurring-toolbar,.finance-recurring-list-panel>header,.finance-recurring-list-panel>header>div,.finance-recurring-title-line,.finance-recurring-pagination,.finance-recurring-pagination>div,.finance-recurring-dialog>header,.finance-recurring-dialog>footer,.finance-recurring-confirm-body,.finance-recurring-form-error,.finance-recurring-transfer,.finance-recurring-tags label,.finance-recurring-subscription>span:last-of-type{align-items:center;display:flex}.finance-recurring-upcoming>header{justify-content:space-between;gap:16px;min-height:40px;margin-bottom:11px}.finance-recurring-upcoming>header>div{gap:9px;min-width:0}.finance-recurring-upcoming>header svg{color:var(--color-primary)}.finance-recurring-upcoming h2,.finance-recurring-list-panel h2,.finance-recurring-form-section h3,.finance-recurring-transfer h4{letter-spacing:0;margin:0}.finance-recurring-upcoming h2,.finance-recurring-list-panel h2{font-size:14px;line-height:20px}.finance-recurring-upcoming header span,.finance-recurring-list-panel header span{color:var(--color-muted);font-size:11px;display:block}.finance-recurring-upcoming header strong{overflow-wrap:anywhere;color:var(--color-text);font-variant-numeric:tabular-nums;font-size:20px;line-height:28px}.finance-recurring-upcoming-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.finance-recurring-upcoming-items article{border-left:2px solid var(--color-primary);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));gap:10px;min-width:0;min-height:58px;padding:8px 10px}.finance-recurring-upcoming-items time{width:44px;color:var(--color-primary);flex:0 0 44px;font-size:11px;font-weight:750}.finance-recurring-upcoming-items div{flex:1;min-width:0}.finance-recurring-upcoming-items strong,.finance-recurring-upcoming-items small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-recurring-upcoming-items strong{font-size:12px}.finance-recurring-upcoming-items small{color:var(--color-muted);margin-top:2px;font-size:10px}.finance-recurring-upcoming-items b{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:12px}.finance-recurring-upcoming-empty{min-height:56px;color:var(--color-muted);place-items:center;margin:0;font-size:12px;display:grid}.finance-recurring-upcoming.error{min-height:70px;color:var(--color-danger);align-items:center;gap:10px;display:flex}.finance-recurring-upcoming.error span{flex:1;font-size:12px}.finance-recurring-upcoming.error button,.finance-recurring-inline-error button{border-radius:var(--radius);min-height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.finance-recurring-upcoming.skeleton,.finance-recurring-rows-skeleton,.finance-recurring-skeleton,.finance-recurring-masked{overflow:hidden}.finance-recurring-upcoming.skeleton{grid-template-columns:repeat(3,1fr);align-items:end;gap:9px;display:grid}.finance-recurring-upcoming.skeleton span,.finance-recurring-rows-skeleton span,.finance-recurring-skeleton span,.finance-recurring-masked span{background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));animation:1.4s ease-in-out infinite finance-recurring-pulse}.finance-recurring-upcoming.skeleton span{height:58px}.finance-recurring-toolbar{justify-content:space-between;gap:14px;min-height:44px;margin-bottom:12px}.finance-recurring-status-filter{border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));min-width:0;padding:3px;display:inline-flex}.finance-recurring-status-filter button{min-width:66px;min-height:44px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 10px;font-size:11px;font-weight:700}.finance-recurring-status-filter button:hover,.finance-recurring-status-filter button.active{color:var(--color-text)}.finance-recurring-status-filter button.active{background:var(--color-surface);box-shadow:0 1px 2px color-mix(in srgb, var(--color-text) 12%, transparent)}.finance-recurring-toolbar>label{color:var(--color-muted);align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.finance-recurring-toolbar select{border:1px solid var(--color-border);border-radius:var(--radius);min-width:124px;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 9px;font-size:12px}.finance-recurring-list-panel{border-top:1px solid var(--color-border)}.finance-recurring-list-panel>header{justify-content:space-between;min-height:46px;padding:0 2px}.finance-recurring-list-panel>header>div{gap:8px}.finance-recurring-list{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.finance-recurring-row{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(220px,1.5fr) minmax(125px,.7fr) minmax(110px,.7fr) 168px;align-items:center;gap:14px;min-width:0;min-height:92px;padding:13px 14px;display:grid}.finance-recurring-row:last-child{border-bottom:0}.finance-recurring-row-main{align-items:center;gap:11px;min-width:0;display:flex}.finance-recurring-row-icon{border-radius:var(--radius);width:38px;height:38px;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));flex:0 0 38px;place-items:center;display:grid}.finance-recurring-row-icon[data-type=income]{color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 10%, var(--color-surface))}.finance-recurring-row-icon[data-type=transfer]{color:var(--color-info);background:color-mix(in srgb, var(--color-info) 10%, var(--color-surface))}.finance-recurring-row-main>div{min-width:0}.finance-recurring-title-line{flex-wrap:wrap;gap:6px;min-width:0}.finance-recurring-title-line h3{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;min-width:0;margin:0;font-size:13px;line-height:19px;overflow:hidden}.finance-recurring-title-line>span{border-radius:4px;padding:2px 6px;font-size:9px;font-weight:750}.finance-recurring-title-line .subscription{color:var(--color-primary-hover);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface))}.finance-recurring-title-line .status{color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 10%, var(--color-surface))}.finance-recurring-title-line .status[data-status=paused]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 11%, var(--color-surface))}.finance-recurring-title-line .status[data-status=ended]{color:var(--color-muted);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface))}.finance-recurring-row-main p,.finance-recurring-row-main small,.finance-recurring-row-schedule span,.finance-recurring-row-schedule small,.finance-recurring-row-amount small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;display:block;overflow:hidden}.finance-recurring-row-main p{color:var(--color-text);margin-top:3px;font-size:11px}.finance-recurring-row-main small{margin-top:2px}.finance-recurring-row-schedule,.finance-recurring-row-amount{min-width:0}.finance-recurring-row-schedule strong,.finance-recurring-row-amount strong{overflow-wrap:anywhere;margin:3px 0;font-size:12px;display:block}.finance-recurring-row-amount{text-align:right}.finance-recurring-row-amount strong{font-variant-numeric:tabular-nums;font-size:14px}.finance-recurring-row-actions{justify-content:flex-end;gap:8px;min-width:168px;display:flex}.finance-recurring-row-actions button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:0 0 36px;place-items:center;display:inline-grid}.finance-recurring-row-actions button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.finance-recurring-row-actions button.danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.finance-recurring-pagination{min-height:48px;color:var(--color-muted);justify-content:space-between;font-size:11px}.finance-recurring-pagination>div{gap:6px}.finance-recurring-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:68px;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;cursor:pointer;font-size:11px}.finance-recurring-pagination button:disabled{cursor:not-allowed;opacity:.45}.finance-recurring-empty,.finance-recurring-inline-error{border:1px solid var(--color-border);border-radius:var(--radius);min-height:200px;color:var(--color-muted);background:var(--color-surface);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.finance-recurring-empty h3{color:var(--color-text);letter-spacing:0;margin:0;font-size:13px}.finance-recurring-inline-error{color:var(--color-danger);font-size:12px}.finance-recurring-dialog.wide{width:min(880px,100vw - 40px);max-width:880px;max-height:min(850px,100vh - 40px)}.finance-recurring-editor-body{padding:17px 19px 22px;overflow-y:auto}.finance-recurring-form-section+.finance-recurring-form-section{border-top:1px solid var(--color-border);margin-top:19px;padding-top:17px}.finance-recurring-form-section h3{color:var(--color-text);margin-bottom:11px;font-size:12px;font-weight:750}.finance-recurring-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.finance-recurring-form-grid+.finance-recurring-form-grid,.finance-recurring-form-grid.foreign,.finance-recurring-form-grid.notes{margin-top:12px}.finance-recurring-form-grid>label,.finance-recurring-form-section>label,.finance-recurring-split>label,.finance-recurring-transfer label{min-width:0;color:var(--color-text);flex-direction:column;gap:5px;font-size:11px;font-weight:650;display:flex}.finance-recurring-form-grid>label.wide,.finance-recurring-subscription{grid-column:1/-1}.finance-recurring-form-grid input,.finance-recurring-form-grid select,.finance-recurring-form-grid textarea,.finance-recurring-split input,.finance-recurring-split select,.finance-recurring-transfer input,.finance-recurring-transfer select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px;font-size:12px}.finance-recurring-form-grid textarea{resize:vertical;min-height:72px}.finance-recurring-form-grid input:focus,.finance-recurring-form-grid select:focus,.finance-recurring-form-grid textarea:focus,.finance-recurring-split input:focus,.finance-recurring-split select:focus,.finance-recurring-transfer input:focus,.finance-recurring-transfer select:focus{border-color:var(--color-primary);outline:2px solid color-mix(in srgb, var(--color-primary) 18%, transparent);outline-offset:0}.finance-recurring-form-grid input[aria-invalid=true],.finance-recurring-form-grid select[aria-invalid=true],.finance-recurring-split input[aria-invalid=true],.finance-recurring-split select[aria-invalid=true],.finance-recurring-transfer input[aria-invalid=true],.finance-recurring-transfer select[aria-invalid=true]{border-color:var(--color-danger)}.finance-recurring-form-grid label>small,.finance-recurring-splits>small,.finance-recurring-split label>small,.finance-recurring-transfer label>small,.finance-recurring-subscription>small{color:var(--color-danger);font-size:10px;font-weight:600}.finance-recurring-subscription>span:last-of-type{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);gap:8px;padding:0 10px;font-size:12px}.finance-recurring-subscription input,.finance-recurring-tags input{width:15px;height:15px;min-height:15px;accent-color:var(--color-primary);border:0;padding:0}.finance-recurring-amount-field{position:relative}.finance-recurring-amount-field b{z-index:1;color:var(--color-muted);pointer-events:none;font-size:10px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.finance-recurring-amount-field input{font-variant-numeric:tabular-nums;padding-left:46px}.finance-recurring-splits,.finance-recurring-tags{border:0;margin:14px 0 0;padding:0}.finance-recurring-splits>legend,.finance-recurring-tags>legend{color:var(--color-text);margin-bottom:8px;font-size:11px;font-weight:700}.finance-recurring-split{border-top:1px solid var(--color-border);grid-template-columns:minmax(150px,.9fr) minmax(145px,.7fr) minmax(170px,1fr) 36px;align-items:end;gap:8px;min-width:0;padding:10px 0;display:grid}.finance-recurring-split:first-child{border-top:0}.finance-recurring-split>button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-danger);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.finance-recurring-add-split{color:var(--color-primary);background:0 0;margin-top:7px}.finance-recurring-add-split:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 7%, transparent)}.finance-recurring-tags>div{flex-wrap:wrap;gap:8px;display:flex}.finance-recurring-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.finance-recurring-tags .finance-recurring-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.finance-recurring-tags label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;gap:6px;padding:0 9px;font-size:11px}.finance-recurring-tags label.selected{border-color:var(--color-primary);color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface))}.finance-recurring-tags label i{border-radius:50%;width:8px;height:8px}.finance-recurring-transfer{flex-wrap:wrap;align-items:stretch;gap:12px}.finance-recurring-transfer>section{border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));flex:1;min-width:0;padding:12px}.finance-recurring-transfer>svg{color:var(--color-muted);flex:0 0 20px;align-self:center}.finance-recurring-transfer h4{margin-bottom:9px;font-size:11px}.finance-recurring-transfer-base{flex:1 0 100%}.finance-recurring-form-error{border:1px solid color-mix(in srgb, var(--color-danger) 30%, var(--color-border));border-radius:var(--radius);min-height:38px;color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 6%, var(--color-surface));flex-wrap:wrap;gap:7px;margin-top:13px;padding:8px 10px;font-size:11px}.finance-recurring-form-error span{flex:1}.finance-recurring-form-error small{width:100%}.finance-recurring-form-error button{border-radius:var(--radius);min-height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid;padding:0 8px}.finance-recurring-confirm-body{align-items:flex-start;gap:13px;min-height:112px;padding:22px}.finance-recurring-confirm-body>svg{color:var(--color-warning-text);flex:0 0 24px}.finance-recurring-confirm-body p{color:var(--color-text);margin:1px 0 0;font-size:13px;line-height:21px}.finance-recurring-confirm-body .finance-recurring-form-error{width:100%;margin-top:0}.finance-recurring-danger-button{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-danger);font:inherit;cursor:pointer;padding:0 14px;font-size:12px;font-weight:700}.finance-recurring-rows-skeleton{border:1px solid var(--color-border);border-radius:var(--radius);gap:1px;display:grid}.finance-recurring-rows-skeleton span{height:92px}.finance-recurring-skeleton{gap:13px;display:grid}.finance-recurring-skeleton span{border-radius:var(--radius);height:72px}.finance-recurring-skeleton span:nth-child(3){height:142px}.finance-recurring-skeleton span:nth-child(4){height:260px}.finance-recurring-masked{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;display:grid}.finance-recurring-masked span{border-radius:var(--radius);min-height:86px;color:var(--color-muted);letter-spacing:0;place-items:center;font-size:20px;display:grid}@keyframes finance-recurring-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (width<=900px){.finance-recurring-upcoming-items{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-recurring-row{grid-template-columns:minmax(240px,1.4fr) minmax(135px,.7fr) minmax(120px,.6fr)}.finance-recurring-row-actions{grid-column:1/-1;justify-content:flex-end}.finance-recurring-transfer{flex-direction:column}.finance-recurring-transfer>svg{transform:rotate(90deg)}}@media (width<=680px){.finance-recurring-page .finance-heading{align-items:center}.finance-recurring-page .finance-heading h1{font-size:22px}.finance-recurring-create{padding:0 9px}.finance-recurring-upcoming{padding:13px}.finance-recurring-upcoming>header{align-items:flex-start}.finance-recurring-upcoming header strong{font-size:16px}.finance-recurring-upcoming-items{grid-template-columns:1fr}.finance-recurring-toolbar{flex-direction:column;align-items:stretch}.finance-recurring-status-filter{width:100%}.finance-recurring-status-filter button{flex:1;min-width:0;padding:0 5px}.finance-recurring-toolbar>label{justify-content:space-between}.finance-recurring-toolbar select{min-width:150px}.finance-recurring-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.finance-recurring-row-main{grid-column:1/-1}.finance-recurring-row-schedule{grid-column:1}.finance-recurring-row-amount{grid-column:2}.finance-recurring-row-actions{grid-column:1/-1}.finance-recurring-row-actions button{flex-basis:44px;width:44px;height:44px}.finance-recurring-dialog.wide{border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none}.finance-recurring-editor-body{padding:14px 15px 20px}.finance-recurring-form-grid,.finance-recurring-split{grid-template-columns:1fr}.finance-recurring-split>button{width:100%;height:44px}.finance-recurring-masked{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.finance-recurring-upcoming.skeleton span,.finance-recurring-rows-skeleton span,.finance-recurring-skeleton span,.finance-recurring-masked span{animation:none}}.finance-reports-page{padding-bottom:30px}.finance-reports-refresh{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.finance-reports-refresh:hover{border-color:var(--color-primary);color:var(--color-primary)}.finance-reports-range,.finance-reports-range-meta,.finance-reports-custom-range,.finance-reports-custom-range label,.finance-reports-panel>header,.finance-reports-panel>header>div,.finance-reports-metrics article>span,.finance-reports-legend,.finance-reports-category-bars article>div:first-child,.finance-reports-budget-list article>div:first-child,.finance-reports-account-list article,.finance-reports-net-worth-summary,.finance-reports-panel-error,.finance-reports-mini-tabs{align-items:center;display:flex}.finance-reports-range{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:14px;min-height:54px;margin-bottom:14px;padding:8px 0}.finance-reports-presets{border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb, var(--color-page) 48%, var(--color-surface));min-width:0;padding:3px;display:inline-flex}.finance-reports-presets button,.finance-reports-mini-tabs button{min-width:72px;min-height:44px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 10px;font-size:11px;font-weight:700}.finance-reports-presets button:hover,.finance-reports-presets button.active,.finance-reports-mini-tabs button:hover,.finance-reports-mini-tabs button.active{color:var(--color-text)}.finance-reports-presets button.active,.finance-reports-mini-tabs button.active{background:var(--color-surface);box-shadow:0 1px 3px #10191d1a}.finance-reports-custom-range{gap:8px;min-width:0}.finance-reports-custom-range>span{color:var(--color-muted);font-size:11px}.finance-reports-custom-range label{color:var(--color-muted);gap:6px;font-size:10px;font-weight:700}.finance-reports-custom-range input{border:1px solid var(--color-border);border-radius:var(--radius);width:134px;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 8px;font-size:11px}.finance-reports-custom-range input[aria-invalid=true]{border-color:var(--color-danger)}.finance-reports-range-meta{flex-direction:column;align-items:flex-end;gap:2px;min-width:max-content}.finance-reports-range-meta strong{font-size:11px}.finance-reports-range-meta span{color:var(--color-muted);font-size:10px}.finance-reports-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.finance-reports-metrics article{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;justify-content:space-between;min-width:0;min-height:94px;padding:14px;display:flex}.finance-reports-metrics article>span{color:var(--color-muted);gap:7px;font-size:11px;font-weight:700}.finance-reports-metrics article>strong{overflow-wrap:anywhere;letter-spacing:0;font-variant-numeric:tabular-nums;font-size:19px;line-height:27px}.finance-reports-metrics article[data-tone=positive]>strong{color:var(--color-success-text)}.finance-reports-metrics article[data-tone=negative]>strong{color:var(--color-danger)}.finance-reports-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:12px;margin-bottom:12px;display:grid}.finance-reports-grid.lower{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-reports-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;min-height:318px}.finance-reports-panel.wide{min-height:350px;margin-bottom:12px}.finance-reports-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;min-height:52px;padding:9px 14px}.finance-reports-panel>header>div{gap:8px;min-width:0}.finance-reports-panel>header>div>svg{color:var(--color-primary);flex:none}.finance-reports-panel h2{letter-spacing:0;margin:0;font-size:13px;line-height:19px}.finance-reports-panel header span{color:var(--color-muted);margin-top:1px;font-size:9px;display:block}.finance-reports-panel-body{min-height:264px;padding:14px}.finance-reports-panel.wide .finance-reports-panel-body{min-height:296px}.finance-reports-mini-tabs{border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb, var(--color-page) 45%, var(--color-surface));padding:2px}.finance-reports-mini-tabs button{min-width:50px;padding:0 7px;font-size:10px}.finance-reports-legend{min-height:20px;color:var(--color-muted);flex-wrap:wrap;justify-content:flex-end;gap:14px;margin-bottom:4px;font-size:9px}.finance-reports-legend span{align-items:center;gap:5px;display:inline-flex}.finance-reports-legend i{background:var(--color-success);width:8px;height:8px}.finance-reports-legend .expense i{background:var(--color-danger)}.finance-reports-cash-bars{border-bottom:1px solid var(--color-border);align-items:stretch;gap:6px;min-height:222px;display:flex;overflow-x:auto}.finance-reports-cash-bars>div{flex:1;grid-template-rows:190px 24px;align-items:end;min-width:24px;display:grid}.finance-reports-cash-bars>div>div{border-bottom:1px solid var(--color-border);background-image:linear-gradient(to bottom, transparent calc(50% - .5px), var(--color-border) 50%, transparent calc(50% + .5px));justify-content:center;align-items:flex-end;gap:2px;height:186px;display:flex}.finance-reports-cash-bars i{background:var(--color-success);width:min(10px,42%);min-height:0}.finance-reports-cash-bars i.expense{background:var(--color-danger)}.finance-reports-cash-bars>div>span{color:var(--color-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;align-self:center;font-size:8px;overflow:hidden}.finance-reports-category-bars,.finance-reports-budget-list,.finance-reports-account-list{gap:10px;display:grid}.finance-reports-category-bars{max-height:248px;padding-right:3px;overflow-y:auto}.finance-reports-category-bars article{grid-template-columns:minmax(0,1fr) 40px;gap:5px 8px;display:grid}.finance-reports-category-bars article>div:first-child,.finance-reports-budget-list article>div:first-child{grid-column:1/-1;justify-content:space-between;gap:10px}.finance-reports-category-bars article>div:first-child>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:10px;font-weight:700;display:flex;overflow:hidden}.finance-reports-category-bars article>div:first-child>span i{flex:0 0 8px;width:8px;height:8px}.finance-reports-category-bars strong,.finance-reports-budget-list span,.finance-reports-account-list b{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:10px}.finance-reports-category-bars .track,.finance-reports-budget-list .track{background:color-mix(in srgb, var(--color-page) 75%, var(--color-surface));border-radius:3px;height:6px;overflow:hidden}.finance-reports-category-bars .track i,.finance-reports-budget-list .track i{border-radius:inherit;height:100%;display:block}.finance-reports-category-bars article>small,.finance-reports-budget-list article>small{color:var(--color-muted);text-align:right;font-size:9px}.finance-reports-net-worth-chart{min-height:264px}.finance-reports-net-worth-summary{min-height:36px;color:var(--color-muted);justify-content:flex-end;gap:22px;font-size:9px}.finance-reports-net-worth-summary span{align-items:baseline;gap:5px;display:inline-flex}.finance-reports-net-worth-summary strong{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:11px}.finance-reports-net-worth-summary strong[data-negative=true]{color:var(--color-danger)}.finance-reports-net-worth-chart svg{width:100%;height:214px;overflow:visible}.finance-reports-net-worth-chart svg line{stroke:var(--color-border);stroke-width:1px;vector-effect:non-scaling-stroke}.finance-reports-net-worth-chart svg polyline{fill:none;stroke:var(--color-info);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.finance-reports-net-worth-chart svg circle{fill:var(--color-surface);stroke:var(--color-info);stroke-width:2px;vector-effect:non-scaling-stroke}.finance-reports-chart-axis{color:var(--color-muted);justify-content:space-between;font-size:8px;display:flex}.finance-reports-budget-list{max-height:240px;padding-right:3px;overflow-y:auto}.finance-reports-budget-list article{grid-template-columns:minmax(0,1fr) 44px;gap:5px 8px;display:grid}.finance-reports-budget-list strong{font-size:10px}.finance-reports-budget-list span{color:var(--color-muted)}.finance-reports-budget-list .track i{background:var(--color-primary)}.finance-reports-budget-list .track i[data-over=true]{background:var(--color-danger)}.finance-reports-account-list{max-height:240px;padding-right:3px;overflow-y:auto}.finance-reports-account-list article{border-bottom:1px solid var(--color-border);gap:9px;min-width:0;min-height:40px;padding-bottom:9px}.finance-reports-account-list article:last-child{border-bottom:0;padding-bottom:0}.finance-reports-account-list article>span{border-radius:var(--radius);width:30px;height:30px;color:var(--color-primary);background:var(--color-primary-soft);flex:0 0 30px;place-items:center;display:grid}.finance-reports-account-list article>span[data-type=credit]{color:var(--color-danger);background:var(--color-danger-soft)}.finance-reports-account-list article>div{flex:1;min-width:0}.finance-reports-account-list strong,.finance-reports-account-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-reports-account-list strong{font-size:11px}.finance-reports-account-list small{color:var(--color-muted);margin-top:2px;font-size:9px}.finance-reports-account-list b{text-align:right;max-width:42%}.finance-reports-account-list b[data-negative=true]{color:var(--color-danger)}.finance-reports-panel-empty,.finance-reports-panel-error{min-height:230px;color:var(--color-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;font-size:11px;display:flex}.finance-reports-panel-error{color:var(--color-danger)}.finance-reports-panel-error button{border-radius:var(--radius);min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;align-items:center;gap:6px;padding:0 10px;font-size:10px;display:inline-flex}.finance-reports-panel-skeleton{grid-template-columns:repeat(4,1fr);align-items:end;gap:10px;min-height:230px;display:grid;overflow:hidden}.finance-reports-panel-skeleton span,.finance-reports-skeleton span,.finance-reports-masked span{background:color-mix(in srgb, var(--color-page) 70%, var(--color-surface));animation:1.4s ease-in-out infinite finance-reports-pulse}.finance-reports-panel-skeleton span{height:55%}.finance-reports-panel-skeleton span:nth-child(2){height:82%}.finance-reports-panel-skeleton span:nth-child(3){height:42%}.finance-reports-panel-skeleton span:nth-child(4){height:68%}.finance-reports-panel-skeleton.chart{min-height:264px}.finance-reports-range-error{min-height:320px;color:var(--color-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.finance-reports-range-error h2{color:var(--color-text);letter-spacing:0;margin:0;font-size:16px}.finance-reports-range-error p{color:var(--color-muted);margin:0;font-size:11px}.finance-reports-masked{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.finance-reports-masked span{border-radius:var(--radius);min-height:94px;color:var(--color-muted);letter-spacing:0;place-items:center;font-size:20px;display:grid}.finance-reports-skeleton{gap:12px;display:grid}.finance-reports-skeleton span{border-radius:var(--radius);height:70px}.finance-reports-skeleton span:nth-child(3){height:110px}.finance-reports-skeleton span:nth-child(4){height:340px}@keyframes finance-reports-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (width<=900px){.finance-reports-range{flex-wrap:wrap;align-items:flex-start}.finance-reports-range-meta{margin-left:auto}.finance-reports-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-reports-grid,.finance-reports-grid.lower{grid-template-columns:1fr}}@media (width<=680px){.finance-reports-refresh{width:44px;height:44px}.finance-reports-page .finance-heading{align-items:center}.finance-reports-page .finance-heading h1{font-size:22px}.finance-reports-range{flex-direction:column;align-items:stretch}.finance-reports-presets{width:100%}.finance-reports-presets button{flex:1;min-width:0;padding:0 5px}.finance-reports-custom-range{align-items:flex-end}.finance-reports-custom-range label{flex-direction:column;flex:1;align-items:stretch;min-width:0}.finance-reports-custom-range input{width:100%}.finance-reports-range-meta{align-items:flex-start;width:100%;margin-left:0}.finance-reports-metrics{grid-template-columns:1fr}.finance-reports-metrics article{min-height:82px}.finance-reports-panel{min-height:306px}.finance-reports-panel>header{align-items:flex-start}.finance-reports-panel-body{min-height:252px;padding:12px}.finance-reports-cash-bars{min-height:240px}.finance-reports-cash-bars>div{grid-template-rows:214px 24px;min-width:26px}.finance-reports-cash-bars>div>div{height:210px}.finance-reports-net-worth-summary{flex-direction:column;align-items:flex-start;gap:4px}.finance-reports-net-worth-chart svg{height:240px}.finance-reports-masked{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.finance-reports-panel-skeleton span,.finance-reports-skeleton span,.finance-reports-masked span{animation:none}}.finance-transactions-page{--transaction-row-hover:color-mix(in srgb, var(--color-primary-soft) 48%, var(--color-surface))}.finance-transactions-toolbar{align-items:center;gap:8px;min-height:44px;margin-bottom:12px;display:flex}.finance-transactions-search{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:min(330px,100%);min-width:220px;height:44px;color:var(--color-muted);background:var(--color-surface);grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;padding-left:10px;display:grid}.finance-transactions-search:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.finance-transactions-search input{min-width:0;height:44px;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;font-size:12px}.finance-transactions-search button,.finance-transactions-icon-button{width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:4px;place-items:center;display:grid}.finance-transactions-search button:hover,.finance-transactions-icon-button:hover:not(:disabled){color:var(--color-primary);background:var(--color-primary-soft)}.finance-transactions-filter-button,.finance-transactions-clear,.finance-transactions-toolbar>label{border:1px solid var(--color-border);border-radius:var(--radius);height:44px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:6px;font-size:11px;display:inline-flex}.finance-transactions-filter-button,.finance-transactions-clear{cursor:pointer;flex:none;padding:0 10px;font-weight:700}.finance-transactions-filter-button[data-active=true]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.finance-transactions-filter-button>span{min-width:18px;height:18px;color:var(--color-on-solid);background:var(--color-primary);border-radius:50%;place-items:center;font-size:10px;display:inline-grid}.finance-transactions-clear{color:var(--color-danger);background:0 0;border-color:#0000}.finance-transactions-toolbar>label{min-width:0;color:var(--color-muted);padding-left:9px}.finance-transactions-toolbar>label>span{white-space:nowrap}.finance-transactions-toolbar select{border:0;border-left:1px solid var(--color-border);min-width:0;max-width:178px;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;outline:0;padding:0 23px 0 7px;font-size:11px}.finance-transactions-toolbar select:focus-visible,.finance-transactions-bulk select:focus-visible,.finance-filter-panel select:focus-visible,.finance-filter-panel input:focus-visible{box-shadow:var(--focus-ring)}.finance-transactions-icon-button{border:1px solid var(--color-border);background:var(--color-surface);flex:0 0 36px}.finance-transactions-filter-error,.finance-transactions-option-error,.finance-transactions-notice{border-left:3px solid var(--color-danger);min-height:38px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;font-size:11px;display:flex}.finance-transactions-filter-error>span{flex:1;min-width:0}.finance-transactions-filter-error button{min-height:44px;color:inherit;cursor:pointer;background:0 0;flex:none;align-items:center;font-weight:700;display:inline-flex}.finance-transactions-option-error{border-left-color:var(--color-warning);color:var(--color-text);background:color-mix(in srgb, var(--color-warning) 10%, var(--color-surface))}.finance-transactions-option-error>span{flex:1;min-width:0}.finance-transactions-option-error strong,.finance-transactions-option-error small{overflow-wrap:anywhere;display:block}.finance-transactions-option-error small{color:var(--color-muted);margin-top:2px}.finance-transactions-option-error button{border-radius:var(--radius);width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.finance-transactions-notice[data-tone=success]{border-left-color:var(--color-success);color:var(--color-text);background:color-mix(in srgb, var(--color-success) 11%, var(--color-surface))}.finance-transactions-bulk{border:1px solid color-mix(in srgb, var(--color-info) 42%, var(--color-border));border-radius:var(--radius);background:var(--color-info-soft);align-items:center;gap:10px;min-height:50px;margin-bottom:10px;padding:7px 10px;display:flex}.finance-transactions-bulk strong{min-width:150px;color:var(--color-text);font-size:12px}.finance-transactions-bulk label{min-width:210px;color:var(--color-muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;font-size:11px;display:grid}.finance-transactions-bulk label>small{color:var(--color-danger);grid-column:2;font-size:10px}.finance-transactions-bulk select[aria-invalid=true]{border-color:var(--color-danger)}.finance-transactions-bulk select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 8px;font-size:11px}.finance-bulk-category-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;grid-column:2;width:100%;min-height:44px;display:block}.finance-transactions-bulk button,.finance-transactions-inline-error button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.finance-transactions-bulk button.secondary{border:1px solid var(--color-border-strong);color:var(--color-text);background:var(--color-surface)}.finance-transactions-bulk button:disabled,.finance-transactions-pagination button:disabled{cursor:not-allowed;opacity:.5}.finance-transactions-bulk .spin{animation:.85s linear infinite finance-spin}.finance-transactions-list-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;overflow:hidden}.finance-transactions-list-panel>header{border-bottom:1px solid var(--color-border);align-items:center;min-height:48px;padding:0 14px;display:flex}.finance-transactions-list-panel>header>div{align-items:baseline;gap:8px;display:flex}.finance-transactions-list-panel h2{letter-spacing:0;font-size:14px;line-height:22px}.finance-transactions-list-panel>header span{color:var(--color-muted);font-size:10px}.finance-transactions-table-scroll{min-width:0;overflow-x:auto}.finance-transactions-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:900px}.finance-transactions-table th,.finance-transactions-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;padding:10px 9px}.finance-transactions-table th{height:38px;color:var(--color-muted);background:color-mix(in srgb, var(--color-page) 58%, var(--color-surface));padding-block:7px;font-size:10px;font-weight:700}.finance-transactions-table th:first-child{width:62px}.finance-transactions-table th:nth-child(2){width:130px}.finance-transactions-table th:nth-child(3){width:220px}.finance-transactions-table th:nth-child(4){width:130px}.finance-transactions-table th:nth-child(5){width:135px}.finance-transactions-table th:nth-child(6){width:80px}.finance-transactions-table th:nth-child(7){text-align:right;width:135px}.finance-transactions-table th:nth-child(8){text-align:center;width:140px}.finance-transactions-table tbody tr:last-child td{border-bottom:0}.finance-transactions-table tbody tr:hover,.finance-transactions-table tbody tr[data-selected=true]{background:var(--transaction-row-hover)}.finance-transactions-table tbody tr[data-status=voided]{color:var(--color-muted)}.finance-transactions-table td:first-child{text-align:center}.finance-transactions-table td:nth-child(7){text-align:right}.finance-transactions-table td:last-child{text-align:center}.finance-transaction-row-actions{justify-content:center;align-items:center;gap:8px;display:flex}.finance-transaction-row-actions button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:0 0 36px;place-items:center;display:grid}.finance-transaction-row-actions button:hover:not(:disabled){color:var(--color-text);background:var(--color-page)}.finance-transaction-row-actions button:disabled{opacity:.45}.finance-transaction-action-backdrop{z-index:110;background:#141b2275;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.finance-transaction-action-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(460px,100%);color:var(--color-text);background:var(--color-surface);overflow:hidden;box-shadow:0 20px 60px #141b2240}.finance-transaction-action-dialog>header,.finance-transaction-action-dialog>footer{justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.finance-transaction-action-dialog>header{border-bottom:1px solid var(--color-border)}.finance-transaction-action-dialog>header p,.finance-transaction-action-dialog>header h2{margin:0}.finance-transaction-action-dialog>header p{color:var(--color-muted);font-size:10px}.finance-transaction-action-dialog>header h2{letter-spacing:0;margin-top:2px;font-size:17px}.finance-transaction-action-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.finance-transaction-action-dialog>div{gap:16px;padding:18px;display:grid}.finance-transaction-action-intro{color:var(--color-muted);grid-template-columns:24px minmax(0,1fr);gap:10px;display:grid}.finance-transaction-action-intro p{margin:0;font-size:12px;line-height:19px}.finance-transaction-action-dialog label{gap:7px;font-size:12px;font-weight:700;display:grid}.finance-transaction-action-dialog textarea{resize:vertical;border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;color:var(--color-text);background:var(--color-surface);font:inherit;padding:10px}.finance-transaction-action-dialog label small,.finance-transaction-action-error{color:var(--color-danger);font-size:11px}.finance-transaction-action-error{border-left:3px solid var(--color-danger);background:var(--color-danger-soft);gap:3px;padding:9px 10px;display:grid}.finance-transaction-action-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px}.finance-transaction-action-dialog>footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:700;display:inline-flex}.finance-transaction-action-dialog>footer .finance-transaction-action-primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.finance-transaction-action-dialog>footer .finance-transaction-action-primary[data-danger=true]{border-color:var(--color-danger);background:var(--color-danger)}.finance-transaction-action-dialog>footer button:disabled{opacity:.5}.finance-transactions-table input[type=checkbox],.finance-filter-panel input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.finance-transaction-select{cursor:pointer;place-items:center;width:44px;height:44px;display:inline-grid}.finance-transaction-select:has(input:disabled){cursor:not-allowed}.finance-transactions-table input[type=checkbox]:disabled{opacity:.34}.finance-transactions-table time,.finance-transaction-account,.finance-transaction-category,.finance-transaction-status,.finance-transaction-amount{font-size:11px}.finance-transactions-table time,.finance-transaction-account{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-transaction-title{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.finance-transaction-title>span{width:30px;height:30px;color:var(--finance-negative);background:var(--color-danger-soft);border-radius:50%;place-items:center;display:grid}.finance-transaction-title>span[data-type=income],.finance-transaction-title>span[data-type=refund]{color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 13%, var(--color-surface))}.finance-transaction-title>span[data-type=transfer]{color:var(--color-info);background:var(--color-info-soft)}.finance-transaction-title>span[data-type=adjustment]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.finance-transaction-title>div{min-width:0}.finance-transaction-title strong,.finance-transaction-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-transaction-title strong{font-size:12px;line-height:18px}.finance-transaction-title small{color:var(--color-muted);font-size:10px;line-height:16px}.finance-transaction-category{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.finance-transaction-category i{border-radius:2px;flex:0 0 8px;width:8px;height:8px}.finance-transaction-category.muted{color:var(--color-muted)}.finance-transaction-status{min-height:23px;color:var(--color-success-text);background:color-mix(in srgb, var(--color-success) 11%, var(--color-surface));white-space:nowrap;border-radius:4px;align-items:center;padding:0 7px;display:inline-flex}.finance-transaction-status[data-status=voided]{color:var(--color-muted);background:var(--color-page)}.finance-transaction-amount{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;max-width:100%;line-height:18px;display:inline-block}.finance-transaction-amount[data-type=income],.finance-transaction-amount[data-type=refund]{color:var(--color-success-text)}.finance-transaction-amount[data-type=expense]{color:var(--finance-negative)}.finance-transactions-pagination{border-top:1px solid var(--color-border);min-height:51px;color:var(--color-muted);justify-content:center;align-items:center;gap:10px;font-size:11px;display:flex}.finance-transactions-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.finance-transactions-empty,.finance-transactions-inline-error{min-height:280px;color:var(--color-muted);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.finance-transactions-empty{flex-direction:column}.finance-transactions-empty svg{color:var(--color-primary)}.finance-transactions-empty button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 11px;font-weight:700}.finance-transactions-inline-error{color:var(--color-danger)}.finance-transactions-inline-error button{min-height:44px}.finance-filter-backdrop{z-index:82;background:#10191d7a;justify-content:flex-end;display:flex;position:fixed;inset:0}.finance-filter-panel{border-left:1px solid var(--color-border);width:min(460px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-14px 0 34px #0d161a33}.finance-filter-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:12px 18px;display:flex}.finance-filter-panel>header p{color:var(--color-primary);font-size:10px;font-weight:750}.finance-filter-panel>header h2{letter-spacing:0;font-size:18px;line-height:25px}.finance-filter-panel>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.finance-filter-body{flex:1;align-content:start;gap:20px;min-height:0;padding:18px;display:grid;overflow-y:auto}.finance-filter-body fieldset{border:0;gap:8px;display:grid}.finance-filter-body legend,.finance-filter-grid label>span{color:var(--color-muted);font-size:11px;font-weight:700}.finance-filter-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.finance-filter-options label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);cursor:pointer;align-items:center;gap:7px;padding:0 9px;font-size:11px;display:flex}.finance-filter-options label:has(input:checked){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.finance-filter-checklist{border-block:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 14px;max-height:154px;padding:4px 0;display:grid;overflow-y:auto}.finance-filter-checklist label{cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:44px;padding:4px 2px;display:grid}.finance-filter-checklist-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;min-height:44px;display:block}.finance-filter-checklist label>span,.finance-filter-checklist label small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.finance-filter-checklist label>span{color:var(--color-text);font-size:11px;line-height:17px}.finance-filter-checklist label small{color:var(--color-muted);font-size:9px;line-height:14px}.finance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;display:grid}.finance-filter-grid label{gap:5px;min-width:0;display:grid}.finance-filter-grid input,.finance-filter-grid select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;outline:0;padding:0 9px;font-size:12px}.finance-filter-validation{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);padding:8px 10px;font-size:11px}.finance-filter-panel>footer{border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-page) 48%, var(--color-surface));justify-content:flex-end;align-items:center;gap:8px;min-height:64px;padding:10px 18px;display:flex}.finance-filter-panel>footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 14px;font-weight:700}.finance-filter-panel>footer button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.finance-filter-panel>footer button:disabled{cursor:not-allowed;opacity:.5}.finance-transactions-masked{border:1px solid var(--color-border);border-radius:var(--radius) var(--radius) 0 0;background:var(--color-surface);display:grid}.finance-transactions-masked>div{border-bottom:1px solid var(--color-border);min-height:58px;color:var(--color-muted);grid-template-columns:1fr 1fr 130px;align-items:center;gap:14px;padding:0 16px;display:grid}.finance-transactions-skeleton{grid-template-rows:52px 42px 42px minmax(330px,1fr);gap:12px;display:grid}.finance-transactions-skeleton>span,.finance-transactions-table-skeleton>span{border-radius:var(--radius);background:color-mix(in srgb, var(--color-border) 78%, transparent);animation:1.2s ease-in-out infinite alternate finance-pulse}.finance-transactions-table-skeleton{grid-template-rows:repeat(5,47px);gap:1px;min-height:310px;padding:15px;display:grid}@media (width<=980px){.finance-transactions-toolbar{flex-wrap:wrap}.finance-transactions-search{flex:280px}.finance-transactions-bulk{flex-wrap:wrap}}@media (width<=640px){.finance-transactions-search{flex-basis:100%;width:100%}.finance-transactions-toolbar>label>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.finance-transactions-toolbar>label{flex:125px;padding-left:0}.finance-transactions-toolbar select{border-left:0;width:100%;max-width:none}.finance-transactions-clear{margin-left:auto}.finance-transactions-bulk strong,.finance-transactions-bulk label{width:100%;min-width:0}.finance-transactions-bulk button{flex:130px}.finance-transactions-list-panel{border-left:0;border-right:0;border-radius:0;overflow:visible}.finance-transactions-table-scroll{overflow:visible}.finance-transactions-table,.finance-transactions-table tbody{min-width:0;display:block}.finance-transactions-table thead{display:none}.finance-transactions-table tbody tr{border-bottom:1px solid var(--color-border);grid-template-columns:27px minmax(0,1fr) minmax(96px,max-content);grid-template-areas:"select title amount"".time status"".category category"".account account"".action action";gap:5px 8px;min-width:0;padding:11px 10px;display:grid}.finance-transactions-table td{border:0;min-width:0;padding:0}.finance-transactions-table td:first-child{text-align:left;grid-area:select;padding-top:6px}.finance-transactions-table td:nth-child(2){grid-area:time}.finance-transactions-table td:nth-child(3){grid-area:title}.finance-transactions-table td:nth-child(4){grid-area:category}.finance-transactions-table td:nth-child(5){grid-area:account}.finance-transactions-table td:nth-child(6){text-align:right;grid-area:status}.finance-transactions-table td:nth-child(7){text-align:right;grid-area:amount;padding-top:4px}.finance-transactions-table td:nth-child(8){text-align:right;grid-area:action}.finance-transaction-row-actions{justify-content:flex-end}.finance-transactions-search button,.finance-transactions-icon-button,.finance-transaction-row-actions button,.finance-transactions-pagination button,.finance-transaction-action-dialog>header button,.finance-filter-panel>header button{flex-basis:44px;width:44px;height:44px}.finance-transactions-table td:nth-child(4),.finance-transactions-table td:nth-child(5){align-items:center;gap:7px;display:flex}.finance-transactions-table td:nth-child(4):before,.finance-transactions-table td:nth-child(5):before{color:var(--color-muted);content:attr(data-label);flex:0 0 30px;font-size:10px}.finance-transaction-title{grid-template-columns:minmax(0,1fr)}.finance-transaction-title>span{display:none}.finance-transaction-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-transaction-status{min-height:20px;padding-inline:5px;font-size:10px}.finance-filter-backdrop{align-items:flex-end}.finance-filter-panel{border-top:1px solid var(--color-border);border-bottom:0;border-left:0;border-right:0;width:100%;height:auto;max-height:92dvh;box-shadow:0 -14px 34px #0d161a33}.finance-filter-options{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-filter-checklist,.finance-filter-grid{grid-template-columns:minmax(0,1fr)}.finance-filter-panel>footer button{flex:1}.finance-transactions-masked>div{grid-template-columns:1fr 82px}.finance-transactions-masked>div span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){.finance-transactions-bulk .spin,.finance-transactions-skeleton>span,.finance-transactions-table-skeleton>span{animation:none}}.goals-page,.goal-detail-page{width:100%;max-width:1160px;color:var(--color-text);margin:0 auto}.goals-heading{justify-content:space-between;align-items:center;gap:18px;min-height:78px;margin-bottom:14px;display:flex}.goals-heading p,.goals-dialog header p{color:var(--color-muted);font-size:12px}.goals-heading h1{letter-spacing:0;font-size:27px;line-height:36px}.goals-heading span{color:var(--color-muted);font-size:12px}.goals-primary{border:1px solid var(--color-primary);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.goals-primary:disabled{opacity:.5;cursor:not-allowed}.goals-toolbar{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:repeat(3,minmax(150px,220px)) auto;align-items:end;gap:9px;margin-bottom:16px;padding:12px;display:grid}.goals-toolbar label>span{color:var(--color-muted);margin-bottom:5px;font-size:11px;font-weight:700;display:block}.goals-toolbar select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 9px}.goals-toolbar button,.goals-error button,.goals-empty button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.goals-toolbar button:disabled{opacity:.45;cursor:default}.goals-results{min-height:250px}.goals-list{border-top:1px solid var(--color-border)}.goals-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(0,1fr) minmax(210px,28%);align-items:center;gap:28px;min-height:112px;padding:16px 12px;display:grid}.goals-row-main{min-width:0}.goals-row-main>div,.goal-detail-heading>div>div:first-child{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;display:flex}.goals-row-main em,.goal-detail-heading em{color:var(--color-danger);font-style:normal;font-weight:700}.goals-status{min-height:23px;color:var(--color-muted);background:var(--color-page);border-radius:3px;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.goals-status[data-status=active],.goals-status[data-status=achieved]{color:var(--color-primary-hover);background:var(--color-primary-soft)}.goals-status[data-status=paused]{color:#8b5a00;background:#fff5df}.goals-status[data-status=abandoned]{color:var(--color-danger);background:var(--color-danger-soft)}.goals-row h2{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-size:16px;line-height:23px;overflow:hidden}.goals-row h2 a{min-width:44px;min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.goals-row h2 a:hover{color:var(--color-primary-hover);text-decoration:underline}.goals-row-main>p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.goals-row-progress>strong{text-align:right;margin-bottom:7px;font-size:18px;display:block}.goals-row-progress [role=progressbar],.goal-detail-progress [role=progressbar],.key-result-bar{background:var(--color-primary-soft);border-radius:3px;height:7px;overflow:hidden}.goals-row-progress i,.goal-detail-progress [role=progressbar] i,.key-result-bar i{background:var(--color-primary);max-width:100%;height:100%;display:block}.goals-row-progress time{color:var(--color-muted);text-align:right;margin-top:7px;font-size:11px;display:block}.goals-row-progress time[data-overdue]{color:var(--color-danger)}.goals-pagination{min-height:56px;color:var(--color-muted);justify-content:center;align-items:center;gap:11px;font-size:12px;display:flex}.goals-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:inherit;background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.goals-pagination button:disabled{opacity:.4}.goals-empty,.goals-error,.goal-tab-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;display:flex}.goals-empty>span,.goal-tab-empty>span{width:48px;height:48px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.goals-empty h2,.goal-tab-empty h2,.goals-error h1{letter-spacing:0;font-size:18px;line-height:27px}.goals-empty p,.goal-tab-empty p,.goals-error p,.goals-error small{color:var(--color-muted);margin:4px 0 14px;font-size:12px}.goals-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.goals-skeleton{gap:8px;display:grid}.goals-skeleton span,.goal-detail-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:104px}.goals-dialog-backdrop{z-index:120;background:#1c232b7a;justify-items:end;display:grid;position:fixed;inset:0}.goals-dialog{border-left:1px solid var(--color-border);width:min(560px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-14px 0 36px #1c232b33}.goals-dialog.compact{width:min(500px,100vw)}.goals-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:14px 20px;display:flex}.goals-dialog h2{letter-spacing:0;font-size:20px;line-height:28px}.goals-dialog header button,.goal-action-error button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.goals-dialog-body{flex:1;padding:18px 20px;overflow-y:auto}.goal-conflict-copy>p{color:var(--color-muted);margin-bottom:14px;font-size:13px;line-height:21px}.goals-dialog-body>label,.goals-form-grid label{margin-bottom:14px;display:block}.goals-dialog-body label>span{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.goals-dialog-body input,.goals-dialog-body textarea,.goals-dialog-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.goals-dialog-body textarea{resize:vertical;min-height:96px}.goals-dialog-body label>small,.goal-tag-options>small{color:var(--color-danger);margin-top:5px;font-size:12px;display:block}.goals-dialog-body input:focus,.goals-dialog-body textarea:focus,.goals-dialog-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.goals-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;display:grid}.goal-link-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.65;width:100%;min-height:44px;display:block}.goal-tag-options{border:0;margin:0 0 15px;padding:0}.goal-tag-options legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700}.goal-tag-options>div{flex-wrap:wrap;gap:8px;display:flex}.goal-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.goal-tag-load-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-bottom:15px;font-size:12px;display:flex}.goal-tag-load-error span{overflow-wrap:anywhere;flex:1}.goal-tag-load-error small{color:var(--color-muted);margin-top:2px;display:block}.goal-tag-load-error button{border-radius:var(--radius);color:currentColor;background:var(--color-surface);cursor:pointer;border:1px solid;place-items:center;width:44px;height:44px;display:grid}.goal-tag-options label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:11px;display:inline-flex}.goal-tag-options label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.goal-tag-options input{opacity:0;width:1px;min-width:1px;height:1px;min-height:1px;position:absolute}.goal-tag-options i{border-radius:50%;width:8px;height:8px}.goals-form-error,.goal-action-error{color:var(--color-danger);align-items:flex-start;gap:8px;font-size:12px;display:flex}.goals-form-error span,.goals-form-error small,.goal-action-error span,.goal-action-error small{overflow-wrap:anywhere;display:block}.goals-form-error small,.goal-action-error small{color:var(--color-muted)}.goal-link-options-error{align-items:center}.goal-link-options-error>span{flex:1}.goal-link-options-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;align-items:center;gap:5px;min-height:44px;padding:0 10px;display:inline-flex}.goals-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.goals-dialog>footer button:not(.goals-primary){border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 12px;font-weight:700}.goals-dialog>footer button.danger{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));color:var(--color-danger)}.goal-detail-back{min-width:44px;min-height:44px;color:var(--color-muted);align-items:center;gap:6px;font-size:12px;text-decoration:none;display:inline-flex}.goal-detail-back:hover{color:var(--color-primary-hover)}.goal-detail-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;min-height:94px;padding-bottom:14px;display:flex}.goal-detail-heading>div:first-child{min-width:0}.goal-detail-heading h1{overflow-wrap:anywhere;letter-spacing:0;margin:6px 0 3px;font-size:25px;line-height:34px}.goal-detail-heading p{color:var(--color-muted);font-size:12px}.goal-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.goal-detail-actions button,.key-result-update{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.goal-detail-actions button.danger{color:var(--color-danger)}.goal-detail-actions button:disabled{opacity:.5}.goal-detail-progress{padding:15px 0}.goal-detail-progress>div:first-child{color:var(--color-muted);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px;font-size:12px;display:flex}.goal-detail-progress strong{color:var(--color-text);font-size:21px}.goal-detail-progress small{color:var(--color-muted);margin-top:7px;font-size:11px;display:block}.goal-action-error{border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-border));border-radius:var(--radius);background:var(--color-surface);align-items:center;min-height:42px;margin-bottom:10px;padding:7px 9px}.goal-action-error>span{flex:1}.goal-tabs{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:50px;display:flex}.goal-tabs>div{display:flex;overflow-x:auto}.goal-tabs [role=tab]{min-height:50px;color:var(--color-muted);white-space:nowrap;cursor:pointer;background:0 0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 13px;font-weight:700;display:inline-flex}.goal-tabs [role=tab][aria-selected=true]{border-color:var(--color-primary);color:var(--color-primary-hover)}.goal-tabs [role=tab] span{background:var(--color-page);border-radius:3px;min-width:20px;padding:1px 5px;font-size:10px}.goal-tab-content{min-height:320px;padding:18px 0 30px}.goal-overview{grid-template-columns:minmax(0,1fr) minmax(260px,34%);gap:28px;display:grid}.goal-overview section{min-width:0}.goal-overview h2{letter-spacing:0;margin-bottom:8px;font-size:16px;line-height:24px}.goal-overview section p{color:var(--color-muted);white-space:pre-wrap;font-size:13px;line-height:21px}.goal-overview dl{border-top:1px solid var(--color-border);margin:0}.goal-overview dl>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:42px;display:flex}.goal-overview dt{color:var(--color-muted);font-size:11px}.goal-overview dd{font-size:12px;font-weight:700}.key-result-list,.goal-links-list{border-top:1px solid var(--color-border)}.key-result-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);min-height:132px;padding:15px 12px;position:relative}.key-result-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.key-result-top>div{color:var(--color-muted);gap:7px;font-size:10px;display:flex}.key-result-top strong{overflow-wrap:anywhere;order:-1;min-width:0;font-size:14px}.key-result-value{color:var(--color-muted);justify-content:space-between;align-items:baseline;gap:12px;margin:13px 0 6px;font-size:12px;display:flex}.key-result-value strong{color:var(--color-text)}.key-result-update{margin-top:10px}.key-result-actions{gap:8px;margin-top:9px;display:flex}.key-result-actions button,.key-result-editor button,.goal-links-list article>button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.key-result-actions button.danger{color:var(--color-danger)}.key-result-editor{grid-template-columns:repeat(2,minmax(130px,220px));align-items:end;gap:8px;margin-top:10px;display:grid}.key-result-editor .wide,.key-result-editor-actions{grid-column:span 2}.key-result-editor label span{color:var(--color-muted);margin-bottom:4px;font-size:10px;display:block}.key-result-editor input{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 8px}.key-result-editor label>small,.key-result-editor-error small{color:var(--color-danger);margin-top:4px;font-size:11px;display:block}.key-result-editor-error{color:var(--color-danger);grid-column:span 2;font-size:11px}.key-result-editor-actions{justify-content:flex-end;gap:8px;display:flex}.goal-links-list article{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;min-height:74px;padding:10px 12px;display:flex}.goal-links-list article>div{min-width:0}.goal-links-list span,.goal-links-list strong,.goal-links-list small{display:block}.goal-links-list span,.goal-links-list small{color:var(--color-muted);font-size:10px}.goal-links-list strong{text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:12px;overflow:hidden}.goal-activity-list{max-width:720px;margin:0;padding:0;list-style:none}.goal-activity-list li{border-bottom:1px solid var(--color-border);grid-template-columns:12px minmax(0,1fr);align-items:center;gap:12px;min-height:60px;display:grid}.goal-activity-list i{background:var(--color-primary);border-radius:50%;width:9px;height:9px}.goal-activity-list strong,.goal-activity-list small{display:block}.goal-activity-list strong{font-size:12px}.goal-activity-list small{color:var(--color-muted);margin-top:2px;font-size:10px}.goal-weight-note{color:var(--color-muted);font-size:11px}.goal-detail-skeleton{gap:10px;padding-top:38px;display:grid}.goal-detail-skeleton span:nth-child(2){height:58px}.goal-detail-skeleton span:nth-child(3){height:300px}@media (width<=900px){.goals-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.goals-row{grid-template-columns:minmax(0,1fr) 180px}.goal-detail-heading{flex-direction:column;align-items:flex-start}.goal-detail-actions{justify-content:flex-start}}@media (width<=680px){.goals-heading h1{font-size:23px;line-height:32px}.goals-heading .goals-primary{width:44px;padding:0;font-size:0}.goals-toolbar{grid-template-columns:1fr}.goals-row{grid-template-columns:1fr;gap:12px}.goals-row-progress>strong,.goals-row-progress time{text-align:left}.goals-pagination button,.goals-dialog header button,.goal-action-error button,.key-result-actions button,.key-result-editor button,.goal-links-list article>button{width:44px;height:44px}.goal-tabs{flex-direction:column;align-items:stretch;padding-bottom:8px}.goal-tabs .goals-primary{align-self:flex-start}.goal-overview,.goals-form-grid{grid-template-columns:1fr}.goals-dialog{box-shadow:none;border-left:0}.key-result-top{flex-direction:column;gap:5px}.key-result-editor{grid-template-columns:1fr}.key-result-editor .wide,.key-result-editor-error,.key-result-editor-actions{grid-column:auto}}.habits-page,.habit-detail-page{width:100%;max-width:1160px;color:var(--color-text);margin:0 auto}.habits-heading{justify-content:space-between;align-items:center;gap:18px;min-height:78px;margin-bottom:14px;display:flex}.habits-heading p,.habits-dialog header p{color:var(--color-muted);font-size:12px}.habits-heading h1{letter-spacing:0;font-size:27px;line-height:36px}.habits-heading span{color:var(--color-muted);font-size:12px}.habits-primary{border:1px solid var(--color-primary);border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.habits-primary:disabled{opacity:.5;cursor:not-allowed}.habits-today{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin-bottom:16px}.habits-today>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 14px;display:flex}.habits-today h2,.habit-checkin-panel h2,.habit-plan h2{letter-spacing:0;font-size:16px;line-height:24px}.habits-today header p,.habit-checkin-panel>header span{color:var(--color-muted);font-size:11px}.habits-today header strong{font-size:13px}.habits-today header .habits-today-count-skeleton{background:var(--color-border);opacity:.55;border-radius:3px;width:42px;height:14px}.habits-today ul{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.habits-today li{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr) auto 36px;align-items:center;gap:8px;min-height:72px;padding:7px 10px;display:grid}.habits-today li:nth-child(odd){border-right:1px solid var(--color-border)}.habits-today li:nth-last-child(-n+2){border-bottom:0}.habits-check{width:36px;height:36px;color:var(--color-primary);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.habits-check[data-achieved]{color:var(--color-on-solid);background:var(--color-primary)}.habits-today-name{min-width:0;min-height:44px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:8px;display:flex}.habits-today-name>i{border-radius:3px;flex:none;width:8px;height:32px}.habits-today-name span,.habits-today-name strong,.habits-today-name small{min-width:0;display:block}.habits-today-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.habits-today-name small{color:var(--color-muted);font-size:10px}.habits-today-controls{gap:8px;display:flex}.habits-today-controls button,.habits-skip{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.habits-today-controls button:hover:not(:disabled),.habits-skip:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.habits-today-empty{min-height:100px;color:var(--color-muted);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.habits-today-loading{background:var(--color-border);opacity:.45;height:100px}.habits-inline-error{border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-border));border-radius:var(--radius);min-height:40px;color:var(--color-danger);background:var(--color-surface);align-items:center;gap:8px;margin-bottom:12px;padding:7px 9px;font-size:11px;display:flex}.habits-inline-error>span{flex:1;min-width:0}.habits-inline-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.habits-inline-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;min-height:44px;margin-left:auto;padding:0 8px;font-weight:700}.habits-toolbar{grid-template-columns:auto minmax(190px,1fr) 150px;align-items:end;gap:10px;margin-bottom:10px;display:grid}.habits-status-tabs,.habits-trend-toolbar>div,.habit-range-toolbar>div>div{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:3px;display:inline-flex}.habits-status-tabs button,.habits-trend-toolbar button,.habit-range-toolbar button{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;border-radius:3px;padding:0 10px;font-size:11px;font-weight:700}.habits-status-tabs button[aria-pressed=true],.habits-trend-toolbar button[aria-pressed=true],.habit-range-toolbar button[aria-pressed=true]{color:var(--color-primary-hover);background:var(--color-primary-soft)}.habits-toolbar form{border:1px solid var(--color-border);border-radius:var(--radius);height:46px;color:var(--color-muted);background:var(--color-surface);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;padding-left:8px;display:grid}.habits-toolbar form input{min-width:0;height:44px;color:var(--color-text);background:0 0;border:0}.habits-toolbar form button{min-width:44px;height:44px;color:var(--color-primary-hover);background:var(--color-primary-soft);cursor:pointer;border-radius:3px;margin-right:1px;padding:0 9px;font-size:11px;font-weight:700}.habits-toolbar>label span{color:var(--color-muted);margin-bottom:4px;font-size:10px;display:block}.habits-toolbar>label select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 8px}.habits-trend-toolbar{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:12px;display:flex}.habits-trend-toolbar>span{color:var(--color-muted);font-size:11px}.habits-results{min-height:250px}.habits-list{border-top:1px solid var(--color-border)}.habits-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:8px minmax(0,1fr) minmax(240px,31%);align-items:center;gap:15px;min-height:112px;padding:13px 12px 13px 0;display:grid}.habits-row-color{border-radius:0 3px 3px 0;width:8px;height:50px}.habits-row-main{min-width:0}.habits-row-main>div{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:10px;display:flex}.habits-status{min-height:23px;color:var(--color-muted);background:var(--color-page);border-radius:3px;align-items:center;padding:0 7px;font-size:11px;font-weight:700;display:inline-flex}.habits-status[data-status=active]{color:var(--color-primary-hover);background:var(--color-primary-soft)}.habits-status[data-status=paused]{color:#8b5a00;background:#fff5df}:root[data-color-mode=dark] .habits-status[data-status=paused]{color:var(--color-warning-text);background:#3b2e14}.habits-row h2{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin-top:7px;font-size:15px;line-height:22px;overflow:hidden}.habits-row h2 a{min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.habits-row h2 a:hover{color:var(--color-primary-hover);text-decoration:underline}.habits-row-main>p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.habits-row-trend>div:first-child{color:var(--color-muted);justify-content:space-between;align-items:baseline;gap:8px;font-size:10px;display:flex}.habits-row-trend strong{color:var(--color-text);font-size:15px}.habits-trend-strip{grid-template-columns:repeat(28,minmax(3px,1fr));align-items:end;gap:2px;height:30px;margin:5px 0;display:grid}.habits-trend-strip i{background:var(--color-border);border-radius:2px;height:8px}.habits-trend-strip i[data-state=achieved]{background:var(--color-primary);height:25px}.habits-trend-strip i[data-state=partial]{background:var(--color-warning);height:17px}.habits-trend-strip i[data-state=missed]{background:var(--color-danger);height:11px}.habits-trend-strip i[data-state=skipped]{background:var(--color-info);height:8px}.habits-trend-strip i[data-state=paused]{background:var(--color-border-strong);height:8px}.habits-row-trend small{color:var(--color-muted);font-size:10px}.habits-trend-loading{background:var(--color-border);opacity:.55;border-radius:3px;height:30px;margin:5px 0}.habits-row-trend>.habits-trend-skeleton{color:var(--color-muted);font-size:10px;display:block}.habits-trend-skeleton>div:first-child{justify-content:space-between;align-items:center;gap:8px;display:flex}.habits-trend-skeleton>div:first-child i{background:var(--color-border);opacity:.55;border-radius:3px;width:42px;height:15px}.habits-trend-skeleton>small{background:var(--color-border);opacity:.55;border-radius:3px;width:76px;height:10px;display:block}.habits-trend-error{border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-border));border-radius:var(--radius);min-height:54px;color:var(--color-danger);grid-template-columns:auto minmax(0,1fr) 44px;align-items:center;gap:7px;margin-top:4px;padding-left:8px;font-size:11px;display:grid}.habits-trend-error>span{overflow-wrap:anywhere;min-width:0}.habits-trend-error small{overflow-wrap:anywhere;display:block}.habits-trend-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;place-items:center;width:44px;height:44px;display:grid}.habits-pagination{min-height:56px;color:var(--color-muted);justify-content:center;align-items:center;gap:11px;font-size:12px;display:flex}.habits-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:inherit;background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.habits-pagination button:disabled{opacity:.4}.habits-empty,.habits-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;display:flex}.habits-empty>span{width:48px;height:48px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.habits-empty h2,.habits-error h1{letter-spacing:0;font-size:18px;line-height:27px}.habits-empty p,.habits-error p,.habits-error small{color:var(--color-muted);margin:4px 0 14px;font-size:12px}.habits-empty button,.habits-error button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.habits-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.habits-skeleton{gap:8px;display:grid}.habits-skeleton span,.habit-detail-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:104px}.habits-dialog-backdrop{z-index:120;background:#1c232b7a;justify-items:end;display:grid;position:fixed;inset:0}.habits-dialog{border-left:1px solid var(--color-border);width:min(570px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-14px 0 36px #1c232b33}.habits-dialog.habit-conflict-dialog{width:min(500px,100vw)}.habits-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:76px;padding:14px 20px;display:flex}.habits-dialog h2{letter-spacing:0;font-size:20px;line-height:28px}.habits-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.habits-dialog-body{flex:1;padding:18px 20px;overflow-y:auto}.habit-conflict-copy>p{color:var(--color-muted);margin-bottom:14px;font-size:13px;line-height:21px}.habits-dialog-body>label,.habits-form-grid label{margin-bottom:14px;display:block}.habits-dialog-body label>span,.habits-dialog-body legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.habits-dialog-body input,.habits-dialog-body textarea,.habits-dialog-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.habits-dialog-body textarea{resize:vertical;min-height:82px}.habits-dialog-body input:focus,.habits-dialog-body textarea:focus,.habits-dialog-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.habits-dialog-body label>small,.habits-dialog-body fieldset>small{overflow-wrap:anywhere;color:var(--color-danger);margin-top:4px;font-size:11px;display:block}.habits-dialog-body input[aria-invalid=true],.habits-dialog-body textarea[aria-invalid=true],.habits-dialog-body select[aria-invalid=true]{border-color:var(--color-danger)}.habits-dialog-body fieldset[aria-invalid=true]:focus{outline:2px solid var(--color-danger);outline-offset:3px}.habits-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;display:grid}.habits-weekdays,.habits-colors,.habits-reminders,.habit-tag-options{border:0;margin:0 0 15px;padding:0}.habits-weekdays>div{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.habits-weekdays label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;place-items:center;display:grid}.habits-weekdays label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.habits-weekdays input,.habits-colors input{opacity:0;width:1px;height:1px;position:absolute}.habits-weekdays label span{margin:0}.habits-colors>div{flex-wrap:wrap;gap:8px;display:flex}.habits-colors label{border-radius:var(--radius);cursor:pointer;border:2px solid #0000;place-items:center;width:36px;height:36px;display:grid}.habits-colors label.selected{border-color:var(--color-text)}.habits-colors i{border-radius:3px;width:19px;height:19px}.habit-tag-options>div{flex-wrap:wrap;gap:6px;display:flex}.habit-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.habit-tag-load-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-bottom:15px;font-size:12px;display:flex}.habit-tag-load-error span{overflow-wrap:anywhere;flex:1}.habit-tag-load-error small{color:var(--color-muted);margin-top:2px;display:block}.habit-tag-load-error button{border-radius:var(--radius);color:currentColor;background:var(--color-surface);cursor:pointer;border:1px solid;place-items:center;width:44px;height:44px;display:grid}.habit-tag-options label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:11px;display:inline-flex}.habit-tag-options label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.habit-tag-options input{opacity:0;width:1px;height:1px;position:absolute}.habit-tag-options i{border-radius:50%;width:8px;height:8px}.habits-reminders>div{gap:6px;display:grid}.habits-reminders>div>div{grid-template-columns:minmax(0,180px) 36px;gap:8px;display:grid}.habits-reminders button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.habits-reminders>div button{width:36px;min-height:36px;padding:0}.habits-reminders>button{margin-top:7px}.habits-form-error{color:var(--color-danger);align-items:flex-start;gap:8px;font-size:12px;display:flex}.habits-form-error span,.habits-form-error small{overflow-wrap:anywhere;display:block}.habits-form-error small{color:var(--color-muted)}.habits-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.habits-dialog>footer button:not(.habits-primary){border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 12px;font-weight:700}.habits-dialog>footer button.danger{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border));color:var(--color-danger)}.habit-detail-back{min-height:44px;color:var(--color-muted);align-items:center;gap:6px;font-size:12px;text-decoration:none;display:inline-flex}.habit-detail-back:hover{color:var(--color-primary-hover)}.habit-detail-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;min-height:104px;padding-bottom:15px;display:flex}.habit-detail-heading>div:first-child{min-width:0}.habit-detail-heading>div>div:first-child{color:var(--color-muted);align-items:center;gap:7px;font-size:11px;display:flex}.habit-detail-heading h1{overflow-wrap:anywhere;letter-spacing:0;margin:7px 0 3px;font-size:25px;line-height:34px}.habit-detail-heading p{max-width:720px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.habit-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.habit-detail-actions button,.habit-checkin-actions>button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.habit-detail-actions button.danger,.habit-checkin-actions button.danger{color:var(--color-danger)}.habit-detail-actions button:disabled{opacity:.5}.habit-range-toolbar{justify-content:space-between;align-items:center;gap:12px;min-height:58px;display:flex}.habit-range-toolbar>div{align-items:center;gap:8px;display:flex}.habit-range-toolbar span{color:var(--color-muted);font-size:10px}.habit-stats-panel{margin-bottom:18px}.habit-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.habit-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.habit-stats-grid article{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:104px;padding:14px}.habit-stats-grid span,.habit-stats-grid small{color:var(--color-muted);font-size:10px;display:block}.habit-stats-grid strong{margin:8px 0 2px;font-size:25px;line-height:31px;display:block}.habit-heatmap{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin-top:10px;padding:14px}.habit-heatmap-grid{grid-template-rows:repeat(7,12px);grid-auto-columns:12px;grid-auto-flow:column;gap:3px;padding-bottom:5px;display:grid;overflow-x:auto}.habit-heatmap-grid>i,.habit-heatmap-legend i{background:var(--color-border);border-radius:2px;width:12px;height:12px}.habit-heatmap-grid i[data-state=achieved],.habit-heatmap-legend i[data-state=achieved]{background:var(--color-primary)}.habit-heatmap-grid i[data-state=partial],.habit-heatmap-legend i[data-state=partial]{background:var(--color-warning)}.habit-heatmap-grid i[data-state=missed],.habit-heatmap-legend i[data-state=missed]{background:var(--color-danger)}.habit-heatmap-grid i[data-state=skipped],.habit-heatmap-legend i[data-state=skipped]{background:var(--color-info)}.habit-heatmap-grid i[data-state=paused],.habit-heatmap-legend i[data-state=paused]{background:var(--color-border-strong)}.habit-heatmap-grid i[data-state=pending]{border:1px solid var(--color-primary);background:0 0}.habit-heatmap-legend{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.habit-heatmap-legend span{color:var(--color-muted);align-items:center;gap:4px;font-size:9px;display:inline-flex}.habit-accessible-summary{color:var(--color-muted);margin-top:7px;font-size:11px}.habit-stats-skeleton{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}.habit-stats-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.6;height:104px}.habit-stats-skeleton span:last-child{grid-column:span 3;height:130px}.habit-detail-grid{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:18px;padding-bottom:28px;display:grid}.habit-checkin-panel,.habit-plan{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.habit-checkin-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:54px;padding:10px 14px;display:flex}.habit-checkin-editor{border-bottom:1px solid var(--color-border);padding:14px}.habit-checkin-fields{grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px;display:grid}.habit-checkin-editor label>span{color:var(--color-muted);margin-bottom:5px;font-size:10px;font-weight:700;display:block}.habit-checkin-editor input,.habit-checkin-editor select,.habit-checkin-editor textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:7px 8px}.habit-checkin-editor>label{margin-top:8px;display:block}.habit-checkin-editor textarea{resize:vertical;min-height:62px}.habit-checkin-editor label>small{overflow-wrap:anywhere;color:var(--color-danger);margin-top:4px;font-size:10px;display:block}.habit-checkin-editor [aria-invalid=true]{border-color:var(--color-danger)}.habit-checkin-form-error{color:var(--color-danger);align-items:flex-start;gap:7px;margin-top:8px;font-size:11px;display:flex}.habit-checkin-form-error span,.habit-checkin-form-error small{overflow-wrap:anywhere;display:block}.habit-checkin-form-error small{color:var(--color-muted)}.habit-checkin-actions{justify-content:flex-end;gap:7px;margin-top:8px;display:flex}.habit-checkin-actions>.habits-primary{color:var(--color-on-solid);background:var(--color-primary)}.habit-record-table{max-height:430px;overflow:auto}.habit-record-table table{border-collapse:collapse;width:100%;font-size:11px}.habit-record-table th{z-index:1;height:36px;color:var(--color-text);background:var(--color-page);text-align:left;padding:0 8px;position:sticky;top:0}.habit-record-table td{border-top:1px solid var(--color-border);min-height:42px;padding:9px 8px}.habit-record-table td:nth-child(4){max-width:180px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.habit-record-table td>span{background:var(--color-page);border-radius:3px;align-items:center;min-height:22px;padding:0 6px;display:inline-flex}.habit-record-table td>span[data-status=achieved]{color:var(--color-primary-hover);background:var(--color-primary-soft)}.habit-record-table td>span[data-status=partial]{color:var(--color-warning-text)}.habit-record-table td>span[data-status=skipped]{color:var(--color-info)}.habit-record-table td button{min-width:44px;min-height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;font-size:10px;font-weight:700}.habit-record-empty{min-height:150px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;font-size:11px;display:flex}.habit-record-loading{background:var(--color-border);opacity:.45;height:250px}.habit-plan{padding:14px}.habit-plan h2{margin-bottom:10px}.habit-plan dl{margin:0}.habit-plan dl>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:12px;min-height:44px;padding:8px 0;display:flex}.habit-plan dt{color:var(--color-muted);font-size:10px}.habit-plan dd{text-align:right;max-width:170px;font-size:11px;font-weight:700}.habit-pauses{margin-top:15px}.habit-pauses h3{letter-spacing:0;font-size:12px}.habit-pauses ol{color:var(--color-muted);margin:7px 0 0;padding-left:18px;font-size:10px}.habit-detail-skeleton{gap:10px;padding-top:38px;display:grid}.habit-detail-skeleton span:nth-child(2){height:220px}.habit-detail-skeleton span:nth-child(3){height:310px}@media (width<=900px){.habits-toolbar{grid-template-columns:1fr 1fr}.habits-status-tabs{grid-column:span 2}.habits-row{grid-template-columns:8px minmax(0,1fr) 220px}.habit-detail-heading{flex-direction:column;align-items:flex-start}.habit-detail-actions{justify-content:flex-start}.habit-detail-grid{grid-template-columns:1fr}.habit-plan{order:-1}}@media (width<=680px){.habits-heading h1{font-size:23px;line-height:32px}.habits-heading .habits-primary{width:44px;min-height:44px;padding:0;font-size:0}.habits-today ul{grid-template-columns:1fr}.habits-today li,.habits-today li:nth-child(odd),.habits-today li:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--color-border);grid-template-columns:44px minmax(0,1fr) 44px;min-height:72px}.habits-check,.habits-today-controls button,.habits-skip{width:44px;height:44px}.habits-check{grid-area:1/1}.habits-today-name{grid-area:1/2;min-height:44px}.habits-skip{grid-area:1/3}.habits-today-controls{grid-area:2/2/auto/4;justify-self:end}.habits-today li:last-child{border-bottom:0}.habits-toolbar{grid-template-columns:1fr}.habits-status-tabs{grid-column:auto;overflow-x:auto}.habits-trend-toolbar{flex-direction:column;align-items:flex-end}.habits-row{grid-template-columns:8px minmax(0,1fr)}.habits-row-trend{grid-column:2}.habits-dialog{box-shadow:none;border-left:0}.habits-dialog header button,.habits-colors label,.habits-reminders>div button,.habits-pagination button{width:44px;height:44px}.habits-form-grid{grid-template-columns:1fr}.habit-range-toolbar{flex-direction:column;align-items:flex-start;padding:8px 0}.habit-range-toolbar>div{flex-direction:column;align-items:flex-start}.habit-stats-grid,.habit-stats-skeleton{grid-template-columns:1fr}.habit-stats-skeleton span:last-child{grid-column:auto}.habit-checkin-fields{grid-template-columns:1fr}.habit-record-table{overflow-x:auto}.habit-record-table table{min-width:580px}}.onboarding-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.onboarding-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;width:min(752px,100%);min-height:min(788px,100dvh - 48px);display:flex;overflow:hidden}.onboarding-topbar{justify-content:space-between;align-items:flex-start;gap:24px;min-height:88px;padding:32px 48px 24px;display:flex;position:relative}.onboarding-brand{color:#123b35;align-items:center;gap:9px;font-size:21px;font-weight:750;line-height:28px;display:flex}.onboarding-brand>span{border-radius:var(--radius);width:28px;height:28px;color:var(--color-on-solid);background:var(--color-primary);place-items:center;display:grid}.onboarding-topbar>p{color:var(--color-muted);white-space:nowrap;padding-top:4px;font-size:12px}.onboarding-progress{background:var(--color-border);height:4px;position:absolute;bottom:0;left:48px;right:48px;overflow:hidden}.onboarding-progress>span{background:var(--color-primary);height:100%;transition:width .18s ease-out;display:block}.onboarding-form{flex-direction:column;flex:1;min-height:698px;display:flex}.onboarding-form-content{width:100%;padding:64px 48px 36px}.onboarding-step-header h1{letter-spacing:0;font-size:28px;font-weight:750;line-height:36px}.onboarding-step-header>p{color:var(--color-muted);margin-top:7px}.onboarding-fields{width:min(520px,100%);margin-top:48px}.onboarding-field,.onboarding-fieldset{border:0;width:min(424px,100%);margin:28px 0 0;padding:0}.onboarding-field:first-child,.onboarding-fieldset:first-child{margin-top:0}.onboarding-field>label,.onboarding-fieldset>legend{margin-bottom:8px;padding:0;font-size:13px;font-weight:650;line-height:20px;display:block}.onboarding-field>input,.onboarding-field>select,.work-time-range input,.number-with-suffix{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface)}.onboarding-field>input,.onboarding-field>select,.work-time-range input{padding:0 13px}.onboarding-field>select{cursor:pointer}.onboarding-field>input:hover,.onboarding-field>select:hover,.work-time-range input:hover,.number-with-suffix:hover{border-color:#87939e}.onboarding-field>input:focus,.onboarding-field>select:focus,.work-time-range input:focus,.number-with-suffix:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.onboarding-field>input[aria-invalid=true],.onboarding-field>select[aria-invalid=true],.work-time-range input[aria-invalid=true]{border-color:var(--color-danger)}.onboarding-field-hint,.onboarding-field-error{margin-top:6px;font-size:12px;line-height:18px}.onboarding-field-hint{color:var(--color-muted)}.onboarding-field-error{color:var(--color-danger)}.onboarding-segmented{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(320px,100%);padding:4px;display:grid}.onboarding-segmented label{cursor:pointer;min-width:0}.onboarding-segmented input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.onboarding-segmented span{border-radius:4px;justify-content:center;align-items:center;min-height:44px;font-weight:650;display:flex}.onboarding-segmented input:checked+span{color:var(--color-on-solid);background:var(--color-primary)}.onboarding-segmented input:focus-visible+span{box-shadow:var(--focus-ring)}.workday-options{grid-template-columns:repeat(7,54px);gap:8px;display:grid}.workday-options button{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:54px;height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer}.workday-options button:hover{border-color:var(--color-primary);color:var(--color-primary)}.workday-options button[aria-pressed=true]{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.work-time-range{grid-template-columns:minmax(0,190px) 28px minmax(0,190px);align-items:start;display:grid}.work-time-range>span{min-height:44px;color:var(--color-muted);place-items:center;display:grid}.number-with-suffix{align-items:center;display:flex;overflow:hidden}.number-with-suffix input{min-width:0;height:44px;color:var(--color-text);background:0 0;border:0;outline:none;flex:1;padding:0 13px}.number-with-suffix>span{color:var(--color-muted);padding:0 13px}.onboarding-info{border-radius:var(--radius);width:min(424px,100%);color:var(--color-primary-hover);background:var(--color-primary-soft);margin-top:32px;padding:16px 18px}.onboarding-info strong{font-size:13px}.onboarding-info p{color:#4f5b66;margin-top:4px}.onboarding-choice-fieldset{width:min(520px,100%)}.onboarding-choice{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;align-items:center;gap:13px;min-height:68px;margin-top:10px;padding:12px 14px;display:flex}.onboarding-choice:hover{border-color:var(--color-primary)}.onboarding-choice:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.onboarding-choice input{width:18px;height:18px;accent-color:var(--color-primary);flex:none;margin:0}.onboarding-choice>span{min-width:0;display:block}.onboarding-choice strong,.onboarding-choice small{display:block}.onboarding-choice small{color:var(--color-muted);margin-top:2px}.sample-data-summary{border:1px solid var(--color-border);border-left:4px solid var(--color-info,#2878c8);border-radius:var(--radius);background:var(--color-surface);width:min(520px,100%);margin-top:28px;padding:18px}.sample-data-summary>*{display:block}.sample-data-label{color:#2878c8;font-size:12px;font-weight:700}.sample-data-summary strong{margin-top:8px}.sample-data-summary>span{color:var(--color-muted);margin-top:3px}.sample-data-summary small{color:var(--color-muted);margin-top:12px}.onboarding-form-error{border-radius:var(--radius);color:#8c2633;background:var(--color-danger-soft);border:1px solid #efb8bf;width:min(520px,100%);margin-top:20px;padding:11px 12px}.onboarding-form-error small{overflow-wrap:anywhere;color:#9b4a55;margin-top:3px;display:block}.onboarding-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;min-height:92px;margin-top:auto;padding:24px 48px;display:flex}.onboarding-footer-start{align-items:center;gap:16px;min-width:0;display:flex}.onboarding-dialog-backdrop{z-index:100;background:#1c232b5c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.onboarding-discard-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(440px,100%);color:var(--color-text);background:var(--color-surface);box-shadow:0 18px 46px #1c232b2e}.onboarding-discard-dialog header,.onboarding-discard-dialog>p,.onboarding-discard-dialog footer{padding:16px}.onboarding-discard-dialog header{border-bottom:1px solid var(--color-border)}.onboarding-discard-dialog h2{letter-spacing:0;font-size:17px;line-height:25px}.onboarding-discard-dialog>p{color:var(--color-muted);font-size:13px;line-height:21px}.onboarding-discard-dialog footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;display:flex}.onboarding-discard-dialog button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 14px;font-weight:700}.onboarding-discard-dialog button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.onboarding-back,.onboarding-next{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;min-height:44px;font-weight:700;display:inline-flex}.onboarding-back{border:1px solid var(--color-border-strong);min-width:96px;color:var(--color-text);background:var(--color-surface)}.onboarding-back:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.onboarding-next{min-width:136px;color:var(--color-on-solid);background:var(--color-primary);gap:8px;padding:0 18px}.onboarding-next:hover:not(:disabled){background:var(--color-primary-hover)}.onboarding-back:disabled,.onboarding-next:disabled{cursor:not-allowed;opacity:.68}.onboarding-next svg{animation:.8s linear infinite onboarding-spin}.onboarding-save-status{color:var(--color-muted);white-space:nowrap;font-size:12px}.onboarding-save-status.saved{color:var(--color-success-text)}.onboarding-save-status.failed{color:var(--color-danger)}.onboarding-offline{color:#7a4b00;background:#fff8e8;border-bottom:1px solid #e7c88f;place-items:center;min-height:44px;padding:10px 16px;font-size:13px;display:grid}.onboarding-loading-delay{min-height:100dvh}.onboarding-loading{padding:72px 48px}.onboarding-skeleton-title,.onboarding-skeleton-field{background:#e7ebee;border-radius:4px}.onboarding-skeleton-title{width:280px;max-width:70%;height:34px}.onboarding-skeleton-field{width:424px;max-width:100%;height:44px;margin-top:32px}.onboarding-load-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:600px;padding:48px;display:flex}.onboarding-load-error>span{width:52px;height:52px;color:var(--color-danger);background:var(--color-danger-soft);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.onboarding-load-error h1{letter-spacing:0;font-size:24px;line-height:32px}.onboarding-load-error>p,.onboarding-load-error>small{color:var(--color-muted);margin-top:8px}.onboarding-load-error>small{overflow-wrap:anywhere}.onboarding-load-error button{border-radius:var(--radius);min-width:120px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;margin-top:24px;font-weight:700}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes onboarding-spin{to{transform:rotate(360deg)}}@media (width<=767px){.onboarding-page{background:var(--color-surface);padding:0;display:block}.onboarding-panel{border:0;border-radius:0;min-height:100dvh}.onboarding-topbar{min-height:84px;padding:24px 16px 20px}.onboarding-brand{font-size:18px}.onboarding-progress{left:16px;right:16px}.onboarding-form{min-height:calc(100dvh - 84px)}.onboarding-form-content{padding:40px 16px 32px}.onboarding-step-header h1{font-size:25px;line-height:34px}.onboarding-fields{margin-top:36px}.onboarding-field>input,.onboarding-field>select,.work-time-range input,.number-with-suffix{min-height:48px}.number-with-suffix input{height:46px}.workday-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.workday-options button{width:100%;min-width:0;height:46px}.work-time-range{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr)}.onboarding-footer{min-height:88px;padding:30px 16px calc(16px + env(safe-area-inset-bottom));gap:12px;position:relative}.onboarding-footer-start{gap:10px}.onboarding-back{min-width:88px}.onboarding-next{min-width:0;padding:0 14px}.onboarding-save-status{position:absolute;top:5px;left:16px}.onboarding-loading,.onboarding-load-error{padding:56px 16px}}@media (width<=420px){.onboarding-next{max-width:190px}}@media (prefers-reduced-motion:reduce){.onboarding-progress>span{transition:none}.onboarding-next svg{animation:none}}.notes-page{height:calc(100dvh - var(--app-offline-height,0px) - 64px);min-height:620px;color:var(--color-text);background:var(--color-surface);grid-template-columns:220px 280px minmax(0,1fr);margin:-24px;display:grid;position:relative;overflow:hidden}.notes-page button,.notes-page input,.notes-page select,.notes-page summary{font:inherit}.notes-page button,.notes-page summary{cursor:pointer}.notes-page button:disabled,.notes-page input:disabled,.notes-page select:disabled{cursor:not-allowed;opacity:.58}.notes-knowledge-sidebar,.notes-list-pane,.notes-editor-pane{background:var(--color-surface);min-width:0;min-height:0}.notes-knowledge-sidebar{border-right:1px solid var(--color-border);background:var(--color-page);flex-direction:column;display:flex;overflow-y:auto}.notes-knowledge-sidebar>header{border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;min-height:58px;padding:0 16px 0 18px;display:flex}.notes-knowledge-sidebar>header strong{font-size:16px}.notes-knowledge-sidebar>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:none}.notes-knowledge-sidebar>nav{gap:2px;padding:10px 8px;display:grid}.notes-knowledge-sidebar>nav button,.notes-sidebar-tags button,.notes-folder-tree>div>button{border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--color-text);text-align:left;background:0 0;align-items:center;gap:9px;padding:0 10px;display:flex}.notes-knowledge-sidebar>nav button svg,.notes-sidebar-tags button svg,.notes-folder-tree>div>button svg{color:var(--color-muted);flex:none}.notes-knowledge-sidebar>nav button span,.notes-sidebar-tags button span,.notes-folder-tree>div>button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.notes-knowledge-sidebar>nav button:hover,.notes-sidebar-tags button:hover,.notes-folder-tree>div:hover,.notes-folder-tree>div.active,.notes-knowledge-sidebar>nav button.active,.notes-sidebar-tags button.active{background:var(--color-primary-soft)}.notes-knowledge-sidebar>nav button.active,.notes-sidebar-tags button.active,.notes-folder-tree>div.active>button{color:var(--color-primary-hover);font-weight:700}.notes-folder-tree-skeleton{gap:2px;display:grid}.notes-folder-tree-skeleton span{border-radius:var(--radius);background:var(--color-page);min-height:44px;animation:1.4s ease-in-out infinite notes-pulse}.notes-sidebar-section{border-top:1px solid var(--color-border);padding:8px}.notes-sidebar-section>header{min-height:36px;color:var(--color-muted);justify-content:space-between;align-items:center;padding:0 9px;font-size:12px;font-weight:750;display:flex}:root:not([data-color-mode=dark]) .notes-sidebar-section>header{color:#5e6974}.notes-sidebar-section>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.notes-sidebar-section>header button:hover{color:var(--color-text);background:var(--color-surface)}.notes-folder-tree>div{border-radius:var(--radius);align-items:center;gap:8px;min-height:44px;padding-right:5px;display:flex;position:relative}.notes-folder-tree>div>button{flex:1;padding-right:2px}.notes-folder-tree details,.notes-more-menu,.notes-tag-picker{position:relative}.notes-folder-tree summary,.notes-more-menu summary{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);place-items:center;list-style:none;display:grid}.notes-folder-tree summary::-webkit-details-marker{display:none}.notes-more-menu summary::-webkit-details-marker{display:none}.notes-tag-picker summary::-webkit-details-marker{display:none}.notes-folder-tree details>div,.notes-more-menu>div{z-index:40;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:148px;margin-top:3px;padding:5px;position:fixed;box-shadow:0 10px 26px #1c232b29}.notes-folder-tree details>div button,.notes-more-menu>div button{width:100%;min-height:44px;color:var(--color-text);text-align:left;background:0 0;border-radius:4px;align-items:center;gap:8px;padding:0 9px;display:flex}.notes-folder-tree details>div button:hover,.notes-more-menu>div button:hover{background:var(--color-page)}.notes-folder-tree details>div button:last-child,.notes-more-menu>div button:last-child{color:var(--color-danger)}.notes-sidebar-tags,.notes-sidebar-tags-skeleton{gap:2px;display:grid}.notes-sidebar-tags-skeleton span{border-radius:var(--radius);background:var(--color-page);min-height:44px;animation:1.4s ease-in-out infinite notes-pulse}.notes-sidebar-option-error{min-height:44px;color:var(--color-danger);align-items:center;gap:6px;font-size:10px;display:flex}.notes-sidebar-option-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.notes-sidebar-option-error small{color:var(--color-muted);margin-top:2px;display:block}.notes-sidebar-option-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:44px;height:44px;display:grid}.notes-sidebar-tags i,.notes-tag-picker i{border-radius:50%;flex:none;width:9px;height:9px}.notes-daily-button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);flex:none;justify-content:center;align-items:center;gap:8px;margin:auto 12px 14px;font-weight:700;display:flex}.notes-list-pane{border-right:1px solid var(--color-border);grid-template-rows:58px 48px minmax(0,1fr) auto;display:grid}.notes-list-pane>header{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;min-width:0;padding:0 12px 0 16px;display:flex}.notes-list-pane>header>div{flex:1;min-width:0}.notes-list-pane>header h1{text-overflow:ellipsis;letter-spacing:0;white-space:nowrap;margin:0;font-size:15px;line-height:20px;overflow:hidden}.notes-list-pane>header span{color:var(--color-muted);font-size:11px}.notes-list-pane>header>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;display:grid}.notes-list-pane>header>button:hover{color:var(--color-text);background:var(--color-page)}.notes-mobile-back,.notes-folder-toggle{display:none!important}.notes-list-search{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-page);align-items:center;gap:8px;margin:2px 12px;padding:0 9px;display:flex}.notes-list-search input{min-width:0;height:44px;color:var(--color-text);background:0 0;border:0;outline:0;flex:1}.notes-list-search button{width:36px;height:36px;color:var(--color-muted);background:0 0;border-radius:4px;place-items:center;display:grid}.notes-list-results{min-height:0;overflow-y:auto}.notes-list-results>button{border-bottom:1px solid var(--color-border);width:100%;min-height:104px;color:var(--color-text);text-align:left;background:0 0;gap:6px;padding:13px 15px;display:grid}.notes-list-results>button:hover,.notes-list-results>button.active{background:var(--color-primary-soft)}.notes-list-results>button.active{box-shadow:inset 3px 0 0 var(--color-primary)}.notes-list-results>button.active .notes-list-excerpt,.notes-list-results>button.active .notes-list-meta{color:var(--color-text)}.notes-list-title,.notes-list-excerpt,.notes-list-meta{min-width:0}.notes-list-title{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:14px;font-weight:720;display:flex;overflow:hidden}.notes-list-title svg{color:var(--color-primary);flex:none}.notes-list-excerpt{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.notes-list-meta{color:var(--color-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.notes-list-meta svg{color:var(--color-warning-text)}.notes-list-pagination{border-top:1px solid var(--color-border);min-height:44px;color:var(--color-muted);justify-content:center;align-items:center;gap:12px;font-size:12px;display:flex}.notes-list-pagination button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.notes-editor-pane{grid-template-rows:58px minmax(60px,auto) 44px minmax(220px,1fr) auto;display:grid;position:relative;overflow:hidden}.notes-editor-header{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;min-width:0;padding:0 12px 0 16px;display:flex}.notes-editor-header>button,.notes-more-menu>summary{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;display:grid}.notes-editor-header>button:hover,.notes-more-menu>summary:hover{color:var(--color-text);background:var(--color-page)}.notes-editor-back{display:none!important}.notes-save-status{min-width:78px;color:var(--color-muted);align-items:center;gap:5px;margin-right:auto;font-size:12px;display:inline-flex}.notes-save-status.is-dirty{color:#9a5b00}.notes-editor-modes{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);grid-template-columns:repeat(3,minmax(54px,1fr));gap:3px;height:46px;padding:0 3px;display:grid}.notes-editor-modes button{min-width:0;min-height:44px;color:var(--color-muted);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 7px;font-size:12px;display:flex}:root:not([data-color-mode=dark]) .notes-editor-modes button{color:#5e6974}.notes-editor-modes button.active{color:var(--color-text);background:var(--color-surface);box-shadow:0 1px 3px #1c232b1f}.notes-more-menu>div{right:12px}.notes-title-row{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:8px;min-width:0;padding:8px 16px;display:flex}.notes-title-field{flex:1;min-width:120px}.notes-title-field>textarea{width:100%;min-height:44px;color:var(--color-text);resize:none;background:0 0;border:0;outline:0;font-size:21px;font-weight:750;overflow:hidden}.notes-meta-field{flex:none;width:min(160px,30%)}.notes-meta-option-skeleton{border-radius:var(--radius);background:var(--color-page);width:100%;max-width:160px;height:44px;animation:1.4s ease-in-out infinite notes-pulse;display:block}.notes-meta-option-error{min-height:44px;color:var(--color-danger);align-items:center;gap:4px;font-size:10px;display:flex}.notes-meta-option-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.notes-meta-option-error small{color:var(--color-muted);margin-top:2px;display:block}.notes-meta-option-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:44px;height:44px;display:grid}.notes-meta-field>select,.notes-tag-picker>summary{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:160px;height:44px;color:var(--color-muted);background:var(--color-surface);font-size:12px}.notes-meta-field>select{padding:0 28px 0 9px}.notes-tag-picker>summary{align-items:center;gap:6px;min-width:86px;padding:0 8px;list-style:none;display:flex}.notes-tag-picker>summary svg:last-child{margin-left:auto}.notes-note-field>small,.notes-content-field>small{overflow-wrap:anywhere;color:var(--color-danger);margin-top:3px;font-size:11px;display:block}.notes-note-field [aria-invalid=true]{border-color:var(--color-danger)}.notes-tag-picker>div{z-index:35;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:220px;max-height:280px;padding:6px;position:absolute;top:calc(100% + 5px);right:0;overflow-y:auto;box-shadow:0 12px 28px #1c232b29}.notes-tag-picker>div label,.notes-tag-picker>div>span{min-height:44px;color:var(--color-text);border-radius:4px;align-items:center;gap:8px;padding:0 8px;font-size:12px;display:flex}.notes-tag-picker>div label:hover{background:var(--color-page)}.notes-markdown-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-page);align-items:center;gap:8px;padding:4px 12px;display:flex;overflow-x:auto}.notes-markdown-toolbar button{width:36px;height:36px;color:var(--color-muted);background:0 0;border-radius:4px;flex:none;place-items:center;display:grid}.notes-markdown-toolbar button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface)}.notes-markdown-toolbar>span{flex:1}.notes-hidden-input{display:none}.notes-editor-workspace{min-width:0;min-height:0;display:grid;overflow:hidden}.notes-content-field{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.notes-content-field>small{border-bottom:1px solid var(--color-border);background:var(--color-surface);margin:0;padding:5px 16px}.notes-content-field:has([aria-invalid=true]) .cm-editor{outline:1px solid var(--color-danger);outline-offset:-1px}.notes-editor-workspace.mode-split{grid-template-columns:repeat(2,minmax(0,1fr))}.markdown-editor{min-width:0;height:100%;min-height:0;overflow:hidden}.notes-markdown-preview{min-width:0;min-height:0;color:var(--color-text);padding:24px clamp(20px,5vw,68px) 80px;line-height:1.75;overflow:auto}.mode-split .notes-markdown-preview{border-left:1px solid var(--color-border);padding-left:28px;padding-right:28px}.notes-markdown-preview>:first-child{margin-top:0}.notes-markdown-preview h1,.notes-markdown-preview h2,.notes-markdown-preview h3{letter-spacing:0;margin:1.4em 0 .55em;line-height:1.3}.notes-markdown-preview h1{font-size:26px}.notes-markdown-preview h2{font-size:21px}.notes-markdown-preview h3{font-size:17px}.notes-markdown-preview a{color:var(--color-primary-hover);text-underline-offset:3px;text-decoration:underline}.notes-markdown-preview pre,.notes-markdown-preview code{background:var(--color-page);border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.notes-markdown-preview code{padding:2px 5px}.notes-markdown-preview pre{padding:14px;overflow-x:auto}.notes-markdown-preview pre code{padding:0}.notes-markdown-preview blockquote{border-left:3px solid var(--color-primary);color:var(--color-muted);margin-left:0;padding-left:14px}.notes-markdown-preview table{border-collapse:collapse;width:100%}.notes-markdown-preview th,.notes-markdown-preview td{border:1px solid var(--color-border);text-align:left;padding:7px 9px}.notes-markdown-preview img{display:none}.notes-inspector{border-top:1px solid var(--color-border);background:var(--color-surface);min-height:44px}.notes-inspector.is-open{grid-template-rows:44px minmax(0,1fr);height:190px;display:grid}.notes-inspector>header{align-items:center;min-width:0;padding:0 10px 0 16px;display:flex}.notes-inspector>header nav{flex:1;gap:18px;min-width:0;display:flex;overflow-x:auto}.notes-inspector>header nav button{height:44px;color:var(--color-muted);background:0 0;flex:none;font-size:12px;position:relative}.notes-inspector>header nav button.active{color:var(--color-text);font-weight:700}.notes-inspector>header nav button.active:after{content:"";background:var(--color-primary);height:2px;position:absolute;bottom:0;left:0;right:0}.notes-inspector>header>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;margin-left:8px;display:grid}.notes-inspector:not(.is-open)>header>button svg{transform:rotate(180deg)}.notes-inspector-body{min-height:0;padding:6px 14px 12px;overflow-y:auto}.notes-inspector-body>button,.notes-attachment-row{border-bottom:1px solid var(--color-border);width:100%;min-width:0;min-height:48px;color:var(--color-text);text-align:left;background:0 0;align-items:center;gap:10px;padding:6px 8px;display:flex}.notes-inspector-body>button:hover{background:var(--color-page)}.notes-inspector-body>button>span,.notes-attachment-row>span{flex:1;min-width:0;display:block}.notes-inspector-body strong,.notes-inspector-body small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.notes-inspector-body small{color:var(--color-muted);font-size:11px}.notes-inspector-body>p{min-height:72px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.notes-inspector-skeleton{display:grid}.notes-inspector-skeleton span{border-bottom:1px solid var(--color-border);background:var(--color-page);min-height:48px;animation:1.4s ease-in-out infinite notes-pulse}.notes-inspector-error{min-height:52px;color:var(--color-danger);align-items:center;gap:8px;padding:4px 8px;font-size:11px;display:flex}.notes-inspector-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.notes-inspector-error small{color:var(--color-muted);margin-top:2px;display:block}.notes-inspector-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:44px;height:44px;display:grid}.notes-inspector-processing{min-height:72px;color:var(--color-muted);place-items:center;font-size:12px;display:grid}.notes-attachment-actions{justify-content:flex-end;padding-bottom:4px;display:flex}.notes-attachment-actions button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:6px;padding:0 9px;display:flex}.notes-attachment-row>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;display:grid}.notes-attachment-row>button:last-child{color:var(--color-danger)}.notes-attachment-thumbnail{object-fit:cover;border-radius:4px;flex:0 0 36px;width:36px;height:36px;display:block}.notes-welcome,.notes-list-empty,.notes-pane-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.notes-welcome{color:var(--color-muted);grid-row:1/-1;gap:10px}.notes-welcome>span{border-radius:var(--radius);width:52px;height:52px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.notes-welcome h2{color:var(--color-text);letter-spacing:0;margin:4px 0 0;font-size:18px}.notes-welcome button,.notes-pane-error button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);align-items:center;gap:6px;padding:0 13px;font-weight:700;display:flex}.notes-list-empty{min-height:220px;color:var(--color-muted);gap:8px}.notes-list-empty h2{color:var(--color-text);letter-spacing:0;margin:0;font-size:16px}.notes-list-empty button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);justify-content:center;align-items:center;margin-top:2px;padding:0 13px;font-weight:700;display:inline-flex}.notes-pane-error{min-height:220px;color:var(--color-danger);gap:12px;padding:24px}.notes-foundation-title-skeleton,.notes-foundation-heading-skeleton,.notes-foundation-nav-skeleton>span,.notes-foundation-search-skeleton>span{background:var(--color-page);border-radius:4px;animation:1.4s ease-in-out infinite notes-pulse;display:block}.notes-foundation-title-skeleton{background:var(--color-surface);width:86px;height:20px}.notes-foundation-heading-skeleton{width:118px;height:28px}.notes-foundation-nav-skeleton>span{background:var(--color-surface);min-height:44px}.notes-foundation-search-skeleton{align-items:center;padding:8px 12px;display:flex}.notes-foundation-search-skeleton>span{width:100%;height:32px}.notes-page.notes-page-foundation-error{justify-content:center;align-items:center;padding:24px;display:flex}.notes-page-foundation-error>div{max-width:520px;color:var(--color-danger);text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.notes-page-foundation-error h1,.notes-page-foundation-error p{letter-spacing:0;margin:0}.notes-page-foundation-error h1{color:var(--color-text);font-size:22px}.notes-page-foundation-error small{color:var(--color-muted);overflow-wrap:anywhere}.notes-page-foundation-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.notes-page-foundation-actions button,.notes-page-foundation-actions a{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;text-decoration:none;display:inline-flex}.notes-page-foundation-actions button{color:var(--color-on-solid);background:var(--color-primary);border-color:#0000}.notes-list-skeleton,.notes-editor-skeleton{padding:16px}.notes-list-skeleton span,.notes-editor-skeleton span{background:var(--color-page);border-radius:4px;animation:1.4s ease-in-out infinite notes-pulse;display:block}.notes-list-skeleton span{height:80px;margin-bottom:12px}.notes-editor-skeleton{grid-row:1/-1}.notes-editor-skeleton span{height:34px;margin-bottom:22px}.notes-editor-skeleton span:nth-child(2){width:68%}.notes-editor-skeleton span:nth-child(3){height:280px}.notes-action-error{z-index:32;border-radius:var(--radius);color:#8d2732;background:#fff6f7;border:1px solid #e8b5ba;align-items:center;gap:10px;width:min(380px,100% - 32px);min-height:50px;padding:10px 10px 10px 14px;font-size:12px;display:flex;position:absolute;bottom:16px;right:16px;box-shadow:0 10px 24px #1c232b24}.notes-action-error>span{flex:1;min-width:0}.notes-action-error small{display:block}.notes-action-error button{border-radius:var(--radius);color:currentColor;background:0 0;place-items:center;width:36px;height:36px;display:grid}.notes-dialog-backdrop{z-index:100;background:#141b2275;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.notes-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(480px,100%);max-height:calc(100dvh - 40px);color:var(--color-text);background:var(--color-surface);grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden;box-shadow:0 20px 60px #141b2240}.notes-dialog>header,.notes-dialog>footer{align-items:center;gap:9px;padding:14px 18px;display:flex}.notes-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between}.notes-dialog>header h2{text-overflow:ellipsis;letter-spacing:0;white-space:nowrap;min-width:0;margin:0;font-size:17px;line-height:24px;overflow:hidden}.notes-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;display:grid}.notes-dialog-body{min-height:0;padding:20px 18px;overflow-y:auto}.notes-dialog-body>label,.notes-dialog-body>.notes-folder-field{gap:7px;margin-bottom:16px;font-size:12px;font-weight:700;display:grid}.notes-dialog-body input[type=text],.notes-dialog-body>label input,.notes-dialog-body select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 10px}.notes-folder-options-skeleton{border-radius:var(--radius);background:var(--color-page);width:100%;height:44px;animation:1.4s ease-in-out infinite notes-pulse;display:block}.notes-folder-options-error{min-height:44px;color:var(--color-danger);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:400;display:flex}.notes-folder-options-error>span{overflow-wrap:anywhere;min-width:0}.notes-folder-options-error small{color:var(--color-muted);margin-top:2px;display:block}.notes-folder-options-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;min-width:64px;min-height:44px;display:inline-flex}.notes-dialog-body fieldset{border:0;margin:0;padding:0}.notes-dialog-body legend{margin-bottom:9px;font-size:12px;font-weight:700}.notes-folder-dialog .notes-dialog-body label>small,.notes-folder-dialog .notes-dialog-body .notes-folder-field>small,.notes-folder-dialog .notes-dialog-body fieldset>small{overflow-wrap:anywhere;color:var(--color-danger);margin-top:5px;font-size:11px;font-weight:400;display:block}.notes-folder-dialog .notes-dialog-body [aria-invalid=true]{border-color:var(--color-danger)}.notes-folder-dialog .notes-dialog-body fieldset[aria-invalid=true]:focus{outline:2px solid var(--color-danger);outline-offset:3px}.notes-color-swatches{grid-template-columns:repeat(auto-fit,44px);gap:8px;display:grid}.notes-color-swatches label{place-items:center;width:44px;height:44px;display:grid;position:relative}.notes-color-swatches input{opacity:0;position:absolute}.notes-color-swatches i{border:3px solid var(--color-surface);border-radius:50%;width:30px;height:30px;display:block}.notes-color-swatches input:checked+i{box-shadow:0 0 0 2px var(--color-text)}.notes-delete-options{gap:8px;display:grid}.notes-delete-options>label{border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:flex}.notes-delete-options>label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.notes-delete-options strong,.notes-delete-options small{display:block}.notes-delete-options small{color:var(--color-muted);margin-top:2px}.notes-dialog-error{color:var(--color-danger);margin:14px 0 0;font-size:12px}.notes-dialog-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.notes-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end}.notes-dialog>footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:700;display:inline-flex}.notes-dialog>footer .notes-primary,.notes-welcome .notes-primary,.notes-primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.notes-dialog>footer .notes-danger,.notes-danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.notes-conflict-dialog,.notes-link-dialog{width:min(560px,100%)}.notes-link-options+.notes-link-options{border-top:1px solid var(--color-border);margin-top:20px;padding-top:18px}.notes-link-options>label{border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:10px;min-height:52px;padding:7px 10px;display:flex}.notes-link-options>label+label{margin-top:7px}.notes-link-options>label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.notes-link-options span,.notes-link-options strong,.notes-link-options small{min-width:0;display:block}.notes-link-options strong,.notes-link-options small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notes-link-options small{color:var(--color-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.notes-conflict-dialog>footer{flex-wrap:wrap}.notes-version-dialog{width:min(760px,100%);height:min(680px,100dvh - 40px)}.notes-version-dialog .notes-dialog-body{padding:0}.notes-version-dialog .notes-markdown-preview{height:100%}.notes-version-skeleton{align-content:start;gap:12px;height:100%;padding:24px clamp(20px,5vw,68px);display:grid}.notes-version-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.55;height:18px}.notes-version-skeleton span:first-child{width:48%;height:28px}.notes-version-skeleton span:nth-child(3){width:86%}.notes-version-skeleton span:nth-child(4){width:62%}.notes-version-load-error{min-height:100%;color:var(--color-danger);text-align:center;place-content:center;justify-items:center;gap:8px;padding:24px;display:grid}.notes-version-load-error h3,.notes-version-load-error p{margin:0}.notes-version-load-error small{overflow-wrap:anywhere}.notes-version-load-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;align-items:center;gap:6px;min-height:44px;padding:0 12px;display:inline-flex}@keyframes notes-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (width>=768px) and (width<=1199px){.notes-page{grid-template-columns:280px minmax(0,1fr);margin:-20px}.notes-knowledge-sidebar{z-index:45;width:220px;transition:transform .16s;position:absolute;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:12px 0 28px #1c232b29}.notes-knowledge-sidebar.is-open{transform:translate(0)}.notes-knowledge-sidebar>header button,.notes-folder-toggle{display:grid!important}}@media (width<=900px){.notes-editor-modes button span{display:none}.notes-editor-modes{grid-template-columns:repeat(3,44px)}.notes-meta-field{max-width:120px}}@media (width<=767px){.notes-page{height:calc(100dvh - var(--app-offline-height,0px) - 56px - 64px - env(safe-area-inset-bottom));min-height:0;margin:-16px -16px calc(-80px - env(safe-area-inset-bottom));display:block}.notes-knowledge-sidebar,.notes-list-pane,.notes-editor-pane{border:0;width:100%;height:100%;position:absolute;inset:0;transform:none}.notes-mobile-stage-folders .notes-list-pane,.notes-mobile-stage-folders .notes-editor-pane,.notes-mobile-stage-list .notes-knowledge-sidebar,.notes-mobile-stage-list .notes-editor-pane,.notes-mobile-stage-editor .notes-knowledge-sidebar,.notes-mobile-stage-editor .notes-list-pane{display:none}.notes-knowledge-sidebar>header button,.notes-mobile-back,.notes-editor-back{display:grid!important}.notes-knowledge-sidebar>header button{visibility:hidden}.notes-list-pane{grid-template-rows:58px 48px minmax(0,1fr) auto}.notes-list-pane>header{padding-left:8px}.notes-editor-pane{grid-template-rows:54px minmax(58px,auto) 52px minmax(180px,1fr) auto}.notes-editor-header{padding:0 8px}.notes-save-status{flex:1;min-width:0}.notes-editor-modes{order:10}.notes-editor-header>button[title=手动保存]{display:none}.notes-knowledge-sidebar>header button,.notes-sidebar-section>header button,.notes-list-pane>header>button,.notes-editor-header>button,.notes-editor-header .notes-more-menu>summary,.notes-list-search button,.notes-list-pagination button,.notes-folder-tree summary,.notes-markdown-toolbar button,.notes-inspector>header>button,.notes-attachment-row>button,.notes-action-error button,.notes-dialog>header button{width:44px;height:44px}.notes-title-row{padding:7px 10px}.notes-title-field>textarea{font-size:18px}.notes-meta-field{display:none}.notes-title-row:has(.notes-meta-field [aria-invalid=true]){flex-wrap:wrap}.notes-meta-field:has([aria-invalid=true]){width:100%;max-width:none;display:block}.notes-markdown-toolbar{padding-left:8px;padding-right:8px}.notes-editor-workspace.mode-split{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1fr)}.mode-split .notes-markdown-preview{border-top:1px solid var(--color-border);border-left:0}.notes-markdown-preview{padding:20px 18px 70px}.notes-inspector.is-open{height:154px}.notes-dialog-backdrop{align-items:end;padding:0}.notes-dialog{border-radius:var(--radius) var(--radius) 0 0;border-bottom:0;border-left:0;border-right:0;width:100%;max-height:88dvh}.notes-conflict-dialog>footer{grid-template-columns:1fr;display:grid}.notes-conflict-dialog>footer button{width:100%}}@media (prefers-reduced-motion:reduce){.notes-knowledge-sidebar,.notes-foundation-title-skeleton,.notes-foundation-heading-skeleton,.notes-foundation-nav-skeleton>span,.notes-foundation-search-skeleton>span,.notes-list-skeleton span,.notes-editor-skeleton span{transition:none;animation:none}}.notifications-page{--notification-goal:#6b5cc4;width:100%;max-width:960px;min-height:540px;margin:0 auto}.notifications-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.notifications-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.notifications-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.notifications-heading p{color:var(--color-muted);margin-top:3px;font-size:13px}.notifications-heading .notifications-count-skeleton{background:linear-gradient(90deg, var(--color-surface), var(--color-page), var(--color-surface));background-size:220% 100%;border-radius:3px;width:116px;height:14px;animation:1.2s ease-in-out infinite notifications-loading}.notifications-count-error{min-height:32px;color:var(--color-danger);align-items:center;gap:5px;font-size:11px;display:flex}.notifications-count-error>span{overflow-wrap:anywhere;min-width:0}.notifications-count-error small{color:var(--color-muted);margin-top:1px;font-size:9px;display:block}.notifications-count-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:36px;height:36px;display:grid}.notifications-heading>a{border:1px solid var(--color-border);border-radius:var(--radius);width:38px;height:38px;color:var(--color-muted);background:var(--color-surface);place-items:center;display:grid}.notifications-heading>a:hover{color:var(--color-text);border-color:var(--color-border-strong)}.notifications-toolbar{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;min-height:54px;padding-bottom:14px;display:flex}.notifications-tabs{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);grid-template-columns:repeat(2,minmax(74px,1fr));min-height:52px;padding:3px;display:inline-grid}.notifications-tabs button{min-width:0;min-height:44px;color:var(--color-text);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:650;display:inline-flex}.notifications-tabs button[aria-selected=true]{color:var(--color-primary-hover);background:var(--color-surface);box-shadow:0 1px 2px #1c232b14}.notifications-tabs button span{min-width:18px;height:18px;color:var(--color-on-solid);background:var(--color-danger);border-radius:9px;place-items:center;padding:0 4px;font-size:10px;line-height:1;display:inline-grid}.notifications-type-filter{min-width:0;color:var(--color-muted);align-items:center;gap:8px;font-size:12px;display:flex}.notifications-type-filter select{border:1px solid var(--color-border);border-radius:var(--radius);min-width:142px;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 30px 0 10px}.notifications-read-all{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;margin-left:auto;padding:0 13px;font-weight:700;display:inline-flex}.notifications-read-all:disabled{color:var(--color-muted);cursor:not-allowed;opacity:.65}.notifications-feedback{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);margin:12px 0 0;padding:9px 11px;font-size:12px;line-height:18px}.notifications-content{min-height:360px}.notification-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:82px;display:grid}.notification-row[data-status=unread]{background:color-mix(in srgb, var(--color-primary-soft) 46%, var(--color-surface))}.notification-open{min-width:0;min-height:81px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:10px 0;display:grid}.notification-open:hover:not(:disabled) .notification-copy strong{color:var(--color-primary-hover)}.notification-open:disabled{cursor:default}.notification-type-icon{width:36px;height:36px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.notification-type-icon[data-type=calendar_reminder],.notification-type-icon[data-type=data_job_result]{color:var(--color-info);background:color-mix(in srgb, var(--color-info) 12%, var(--color-surface))}.notification-type-icon[data-type=goal_due],.notification-type-icon[data-type=review_reminder]{color:var(--notification-goal);background:color-mix(in srgb, var(--notification-goal) 12%, var(--color-surface))}.notification-type-icon[data-type=budget_warning],.notification-type-icon[data-type=recurring_bill]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.notification-type-icon[data-type=security_event]{color:var(--color-danger);background:var(--color-danger-soft)}.notification-copy{gap:2px;min-width:0;display:grid}.notification-copy>span:first-child{align-items:center;gap:7px;min-width:0;display:flex}.notification-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:21px;overflow:hidden}.notification-copy i{background:var(--color-danger);border-radius:50%;flex:none;width:7px;height:7px}.notification-copy>span:nth-child(2){color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:20px;overflow:hidden}.notification-copy small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:17px;overflow:hidden}.notification-open-arrow{color:var(--color-muted)}.notification-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.notification-actions>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.notification-actions>button:last-child{color:var(--color-danger)}.notification-actions>button:hover:not(:disabled){background:var(--color-page)}.notification-actions>button:disabled,.notification-snooze-select select:disabled{cursor:not-allowed;opacity:.55}.notification-snooze-select select{border-radius:var(--radius);width:82px;height:44px;color:var(--color-muted);cursor:pointer;background-color:#0000;border:1px solid #0000;padding:0 23px 0 8px;font-size:12px}.notification-snooze-select select:hover:not(:disabled){border-color:var(--color-border);background-color:var(--color-page)}.notifications-empty,.notifications-error{min-height:340px;color:var(--color-muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid}.notifications-empty h2{color:var(--color-text);font-size:16px;line-height:24px}.notifications-empty button,.notifications-error button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.notifications-error>svg{color:var(--color-danger)}.notifications-error small{overflow-wrap:anywhere;font-size:10px}.notifications-skeleton{display:grid}.notifications-skeleton span{border-bottom:1px solid var(--color-border);background:linear-gradient(90deg, var(--color-surface), var(--color-page), var(--color-surface));background-size:220% 100%;height:82px;animation:1.2s ease-in-out infinite notifications-loading}.notifications-pagination{justify-content:center;align-items:center;gap:12px;min-height:52px;display:flex}.notifications-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.notifications-pagination button:disabled{color:var(--color-muted);cursor:not-allowed;opacity:.55}.notifications-pagination span{min-width:64px;color:var(--color-muted);text-align:center;font-size:12px}.notifications-toast{z-index:75;top:calc(var(--app-offline-height,0px) + 76px);border:1px solid color-mix(in srgb, var(--color-success) 30%, var(--color-border));border-radius:var(--radius);min-height:42px;color:var(--color-success-text);background:var(--color-surface);align-items:center;gap:8px;padding:0 14px;font-weight:700;display:flex;position:fixed;right:24px;box-shadow:0 10px 24px #1c232b24}.notifications-conflict-backdrop{z-index:90;background:#12191e80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.notifications-conflict-dialog{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:min(100%,460px);box-shadow:0 20px 60px #0a14193d}.notifications-conflict-dialog>header,.notifications-conflict-dialog>div,.notifications-conflict-dialog>footer{padding:16px 18px}.notifications-conflict-dialog>header{border-bottom:1px solid var(--color-border)}.notifications-conflict-dialog>header p,.notifications-conflict-dialog>div p{margin:0}.notifications-conflict-dialog>header p{color:var(--color-muted);font-size:11px}.notifications-conflict-dialog h2{letter-spacing:0;margin-top:2px;font-size:18px;line-height:26px}.notifications-conflict-dialog>div{gap:10px;display:grid}.notifications-conflict-dialog>div small{color:var(--color-danger)}.notifications-conflict-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;display:flex}.notifications-conflict-dialog button{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;min-height:44px;padding:0 12px;font-weight:700}.notifications-conflict-secondary{color:var(--color-text);background:var(--color-surface)}.notifications-conflict-primary{color:var(--color-on-solid);border-color:var(--color-primary);background:var(--color-primary)}.notifications-conflict-dialog button:disabled{cursor:not-allowed;opacity:.6}@keyframes notifications-loading{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.notifications-skeleton span{animation:none}}@media (width<=767px){.notifications-heading{margin-bottom:16px}.notifications-heading h1{font-size:23px;line-height:32px}.notifications-heading>a{width:44px;height:44px}.notifications-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.notifications-tabs{width:100%}.notifications-type-filter{grid-area:2/1}.notifications-type-filter>span{display:none}.notifications-type-filter select{width:100%;min-width:0}.notifications-read-all{grid-area:1/2/3;align-self:stretch;margin-left:0}.notification-row{grid-template-columns:minmax(0,1fr);gap:0;padding:8px 0}.notification-open{grid-template-columns:34px minmax(0,1fr) 16px;gap:10px;min-height:68px;padding:6px 0}.notification-type-icon{width:34px;height:34px}.notification-copy>span:nth-child(2){white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notification-actions{min-height:38px;padding-left:44px}.notification-actions>button{width:44px;height:44px}.notification-snooze-select select{height:44px}.notifications-pagination button{width:44px;height:44px}.notifications-toast{top:calc(var(--app-offline-height,0px) + 68px);justify-content:center;left:16px;right:16px}.notifications-conflict-backdrop{align-items:end;padding:0}.notifications-conflict-dialog{border-radius:var(--radius) var(--radius) 0 0;width:100%}}.search-page{max-width:1180px;margin:0 auto}.search-page-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:end;min-height:60px;padding-bottom:18px;display:flex}.search-page-header p{color:var(--color-muted);margin:0 0 4px;font-size:12px}.search-page-header h1{letter-spacing:0;margin:0;font-size:28px;line-height:36px}.search-query-count{color:var(--color-muted);font-size:12px}.search-header-actions{align-items:center;gap:12px;display:flex}.search-header-actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:36px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:7px;padding:0 11px;display:inline-flex}.search-header-actions button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.search-settings-error{border-bottom:1px solid var(--color-border);min-height:48px;color:var(--color-danger);align-items:center;gap:9px;margin-top:12px;padding:8px 0;font-size:12px;display:flex}.search-settings-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.search-settings-error small{color:var(--color-muted);margin-top:2px;display:block}.search-settings-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;flex:none;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:0 11px;font-weight:700;display:inline-flex}.search-page.search-load-error{min-height:360px;color:var(--color-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.search-load-error h1,.search-load-error p{letter-spacing:0;margin:0}.search-load-error h1{color:var(--color-text);font-size:22px}.search-load-error small{color:var(--color-muted);overflow-wrap:anywhere}.search-load-error>div{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.search-load-error button,.search-load-error a{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:6px;padding:0 13px;font-weight:700;text-decoration:none;display:inline-flex}.search-load-error button{color:var(--color-on-solid);background:var(--color-primary);border-color:#0000}.search-input-wrap{border:1px solid var(--color-border-strong);border-radius:var(--radius);height:48px;color:var(--color-muted);background:var(--color-surface);align-items:center;gap:10px;margin-top:20px;padding:0 13px;display:flex}.search-input-wrap:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.search-input-wrap input{min-width:0;color:var(--color-text);background:0 0;border:0;outline:0;flex:1;font-size:15px}.search-input-wrap button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.search-layout{grid-template-columns:220px minmax(0,1fr);gap:28px;margin-top:24px;display:grid}.search-filters{border-right:1px solid var(--color-border);align-self:start;min-width:0;padding-right:20px}.search-filter-heading{align-items:center;gap:8px;margin-bottom:18px;font-size:13px;display:flex}.search-filter-heading svg{color:var(--color-primary)}.search-filter-group{border-bottom:1px solid var(--color-border);padding:0 0 18px}.search-filter-group+.search-filter-group{padding-top:18px}.search-filter-group h2{color:var(--color-muted);letter-spacing:0;margin:0 0 9px;font-size:12px;line-height:18px}.search-check-list,.search-tag-list{gap:2px;display:grid}.search-check-list label,.search-archived-toggle{min-height:44px;color:var(--color-text);align-items:center;gap:8px;font-size:12px;display:flex}.search-check-list label svg{color:var(--color-muted)}.search-status-list{scrollbar-gutter:stable;max-height:264px;overflow-y:auto}.search-check-list input,.search-archived-toggle input{accent-color:var(--color-primary)}.search-date-field{min-height:44px;color:var(--color-muted);grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;font-size:11px;display:grid}.search-date-field input{border:1px solid var(--color-border);min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);border-radius:4px;padding:0 6px;font-size:11px}.search-tag-list button{min-height:44px;color:var(--color-text);text-align:left;background:0 0;border-radius:4px;align-items:center;gap:7px;padding:0 6px;font-size:12px;display:flex}.search-tag-list button:hover,.search-tag-list button.active{background:var(--color-primary-soft)}.search-tag-list button.active{color:var(--color-primary-hover);font-weight:700}.search-tag-list i{border-radius:50%;width:8px;height:8px}.search-tag-skeleton{gap:2px;display:grid}.search-tag-skeleton i{background:var(--color-border);opacity:.55;border-radius:4px;min-height:44px;display:block}.search-tag-error{min-height:44px;color:var(--color-danger);grid-template-columns:16px minmax(0,1fr) 44px;align-items:center;gap:7px;font-size:11px;display:grid}.search-tag-error span,.search-tag-error small{overflow-wrap:anywhere;display:block}.search-tag-error small{color:var(--color-muted);margin-top:2px}.search-tag-error button{color:currentColor;background:0 0;border:1px solid;border-radius:4px;place-items:center;width:44px;height:44px;display:grid}.search-archived-toggle{margin-top:16px}.search-clear-filters{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);margin-top:12px;padding:0 9px;font-size:12px}.search-results{min-width:0}.search-grouped-results,.search-list-results{gap:24px;display:grid}.search-result-group{min-width:0}.search-result-group>header{min-height:30px;color:var(--color-muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.search-result-group-heading{align-items:center;gap:8px;display:flex}.search-result-group-heading strong{color:var(--color-text);font-size:14px}.search-result-group-heading span{min-width:22px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:10px;place-items:center;font-size:11px;display:inline-grid}.search-result-group>header button{border-radius:var(--radius);min-height:36px;color:var(--color-primary-hover);background:0 0;align-items:center;gap:3px;padding:0 4px 0 8px;font-size:12px;display:inline-flex}.search-result-group>header button:hover{background:var(--color-primary-soft)}.search-result-row{border-bottom:1px solid var(--color-border);min-width:0;min-height:70px;color:var(--color-text);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.search-result-row:hover{background:var(--color-page)}.search-result-icon{border-radius:var(--radius);width:30px;height:30px;color:var(--color-primary);background:var(--color-primary-soft);flex:none;place-items:center;display:grid}.search-result-copy{flex:1;gap:4px;min-width:0;display:grid}.search-result-copy strong,.search-result-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-result-copy strong{font-size:14px}.search-result-copy small{color:var(--color-muted);font-size:12px}.search-result-status{color:var(--color-muted);flex:none;font-size:11px}.search-result-row>svg{color:var(--color-muted);flex:none}.search-pagination{min-height:48px;color:var(--color-muted);justify-content:center;align-items:center;gap:13px;font-size:12px;display:flex}.search-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);place-items:center;display:grid}.search-pagination .rotate-left{transform:rotate(180deg)}.search-empty,.search-no-results,.search-error{min-height:260px;color:var(--color-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;display:flex}.search-empty h2,.search-no-results h2{color:var(--color-text);letter-spacing:0;margin:2px 0 0;font-size:18px}.search-empty p,.search-error p{margin:0;font-size:12px}.search-error{color:var(--color-danger)}.search-no-results button,.search-error button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);align-items:center;gap:6px;padding:0 11px;font-weight:700;display:inline-flex}.search-loading{gap:10px;display:grid}.search-loading span{border-radius:var(--radius);background:var(--color-page);height:72px;animation:1.4s ease-in-out infinite search-pulse}@keyframes search-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (width<=767px){.search-page-header{align-items:center}.search-page-header h1{font-size:24px}.search-header-actions{flex-direction:column-reverse;align-items:flex-end;gap:4px}.search-header-actions button{min-height:44px}.search-input-wrap button,.search-pagination button,.search-result-group>header button{width:44px;height:44px}.search-result-group>header button{width:auto}.search-layout{grid-template-columns:1fr;gap:16px}.search-filters{border-right:0;border-bottom:1px solid var(--color-border);gap:8px;padding:0 0 8px;display:flex;overflow-x:auto}.search-filter-heading,.search-filter-group,.search-archived-toggle,.search-clear-filters{flex:none;margin:0}.search-filter-heading{place-items:center;width:44px;height:44px;display:grid}.search-filter-heading strong{display:none}.search-filter-group{border-right:1px solid var(--color-border);min-width:158px;padding:0 12px 0 4px}.search-filter-group>h2{display:block}.search-archived-toggle{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;padding:0 8px}}.today-page{width:100%;max-width:1144px;margin:0 auto}.today-reserved{min-height:540px}.today-heading{margin-bottom:20px}.today-capture{border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface);align-items:center;gap:10px;min-height:50px;margin-top:16px;padding:5px 6px 5px 14px;display:flex}.today-capture>svg{color:var(--color-primary);flex:none}.today-capture textarea{resize:none;min-width:0;height:44px;color:var(--color-text);font:inherit;background:0 0;border:0;flex:1;padding:8px 0;line-height:22px;overflow-y:auto}.today-capture textarea:focus{box-shadow:none}.today-capture:has(textarea[aria-invalid=true]){border-color:var(--color-danger)}.today-capture textarea::placeholder{color:var(--color-muted)}.today-capture>span{color:var(--color-muted);white-space:nowrap;font-size:11px}.today-capture button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;flex:none;place-items:center;display:grid}.today-capture button:disabled{cursor:not-allowed;opacity:.5}.today-inline-error,.today-inline-success{align-items:center;gap:6px;margin-top:7px;font-size:12px;display:flex}.today-inline-error small{color:var(--color-muted)}.today-inline-error{color:var(--color-danger)}.today-inline-success{color:var(--color-primary-hover)}.today-heading>p{color:var(--color-muted);margin-bottom:3px;font-size:13px}.today-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.today-heading>span{color:var(--color-muted);margin-top:2px;font-size:13px;display:block}.today-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.today-overview-item{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;min-height:104px;padding:15px 17px}.today-overview-item>div{color:var(--color-muted);align-items:center;gap:7px;font-size:13px;display:flex}.today-overview-item>div svg{color:var(--color-primary)}.today-overview-item strong{overflow-wrap:anywhere;letter-spacing:0;margin-top:8px;font-size:23px;line-height:29px;display:block}.today-overview-item small{color:var(--color-muted);margin-top:3px;font-size:11px;display:block}.today-overview-item small[data-tone=danger]{color:var(--color-danger)}.today-overview-item small[data-tone=success]{color:var(--color-primary-hover)}.today-main-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);align-items:start;gap:20px;display:grid}.today-task-panel,.today-context>section,.today-calendar-panel,.today-habit-panel,.today-goal-panel,.today-wellbeing-panel,.today-placeholder-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.today-habit-panel>header,.today-goal-panel>header,.today-wellbeing-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 19px;display:flex}.today-habit-panel h2,.today-goal-panel h2,.today-wellbeing-panel h2{letter-spacing:0;font-size:16px;line-height:24px}.today-habit-panel header p,.today-goal-panel header p,.today-wellbeing-panel header p,.today-habit-panel header>span,.today-goal-panel header>span,.today-wellbeing-panel header>span{color:var(--color-muted);font-size:12px}.today-habit-panel ul,.today-goal-panel ul,.today-wellbeing-panel ul{padding:0 19px;list-style:none}.today-habit-panel li{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr) auto 36px;align-items:center;gap:9px;min-height:64px;display:grid}.today-habit-panel li:last-child,.today-goal-panel li:last-child{border-bottom:0}.today-habit-primary,.today-habit-skip,.today-habit-controls button{border-radius:var(--radius);color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.today-habit-primary{width:36px;height:36px;color:var(--color-primary);border-radius:50%}.today-habit-primary[data-achieved]{color:var(--color-on-solid);background:var(--color-primary)}.today-habit-primary:hover:not(:disabled),.today-habit-skip:hover:not(:disabled),.today-habit-controls button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.today-habit-primary:disabled,.today-habit-skip:disabled,.today-habit-controls button:disabled{cursor:not-allowed;opacity:.45}.today-habit-name{min-width:0;min-height:44px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:9px;display:flex}.today-habit-name>i{border-radius:3px;flex:none;width:5px;height:34px}.today-habit-name>span{min-width:0}.today-habit-name strong,.today-habit-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.today-habit-name strong{font-size:14px;line-height:21px}.today-habit-name small{color:var(--color-muted);font-size:11px}.today-habit-controls{align-items:center;gap:8px;display:flex}.today-habit-controls button,.today-habit-skip{width:36px;height:36px}.today-goal-panel li{border-bottom:1px solid var(--color-border);min-height:68px}.today-goal-panel li>button{width:100%;min-height:68px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) minmax(150px,30%);align-items:center;gap:18px;display:grid}.today-goal-panel li>button:hover strong{color:var(--color-primary-hover)}.today-goal-panel li>button>span:first-child{min-width:0}.today-goal-panel strong,.today-goal-panel small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.today-goal-panel strong{font-size:14px;line-height:21px}.today-goal-panel small{color:var(--color-muted);font-size:11px}.today-goal-panel small[data-overdue]{color:var(--color-danger)}.today-goal-progress{background:var(--color-primary-soft);border-radius:4px;height:7px;position:relative}.today-goal-progress i{border-radius:inherit;background:var(--color-primary);max-width:100%;position:absolute;inset:0 auto 0 0}.today-goal-progress em{color:var(--color-muted);font-size:11px;font-style:normal;position:absolute;bottom:10px;right:0}.today-growth-empty{min-height:124px;color:var(--color-muted);align-content:center;justify-items:center;gap:8px;font-size:13px;display:grid}.today-growth-empty svg{color:var(--color-primary)}.today-wellbeing-panel>header>div{align-items:center;gap:9px;display:flex}.today-wellbeing-panel>header>div>svg{color:var(--color-primary)}.today-wellbeing-panel li{border-bottom:1px solid var(--color-border)}.today-wellbeing-panel li:last-child{border-bottom:0}.today-wellbeing-panel li>button{width:100%;min-height:66px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:10px;display:grid}.today-wellbeing-panel li>button:hover strong{color:var(--color-primary-hover)}.today-wellbeing-panel li>button>span:nth-child(2){min-width:0}.today-wellbeing-panel strong,.today-wellbeing-panel small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.today-wellbeing-panel strong{font-size:14px;line-height:21px}.today-wellbeing-panel small{color:var(--color-muted);font-size:11px}.today-wellbeing-panel li>button>svg{color:var(--color-muted)}.today-wellbeing-icon{border-radius:var(--radius);width:32px;height:32px;color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 11%, var(--color-surface));place-items:center;display:grid}.today-wellbeing-icon[data-type=recurring_due]{color:var(--color-primary);background:var(--color-primary-soft)}.today-wellbeing-icon[data-type=health_daily_missing]{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.today-wellbeing-panel>footer{border-top:1px solid var(--color-border);justify-content:flex-end;padding:9px 19px;display:flex}.today-wellbeing-panel>footer button{border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-primary-soft);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.today-review-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:110px;margin-top:20px;padding:17px 19px;display:grid}.today-review-icon{border-radius:var(--radius);width:42px;height:42px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.today-review-panel>div{min-width:0}.today-review-panel>div>span{color:var(--color-primary-hover);font-size:11px;font-weight:750}.today-review-panel h2{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:24px;overflow:hidden}.today-review-panel p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:19px;overflow:hidden}.today-review-panel>button{border:1px solid var(--color-primary);border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:5px;padding:0 11px;font-size:12px;font-weight:700;display:inline-flex}.today-review-panel>button:disabled{cursor:not-allowed;opacity:.5}.today-task-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:13px 19px;display:flex}.today-calendar-panel>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 19px;display:flex}.today-calendar-panel>header h2,.today-placeholder-panel h2{letter-spacing:0;font-size:16px;line-height:24px}.today-calendar-panel>header p,.today-calendar-panel>header>span{color:var(--color-muted);font-size:12px}.today-task-panel h2,.today-context h2{letter-spacing:0;font-size:16px;line-height:24px}.today-task-panel>header p{color:var(--color-muted);font-size:12px}.today-task-panel>header>span{color:var(--color-muted);flex:none;font-size:12px}.today-task-list{list-style:none}.today-task-list li{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;margin:0 19px;padding:9px 0;display:grid}.today-task-list li:last-child{border-bottom:0}.today-task-complete{width:36px;height:36px;color:var(--color-primary);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.today-task-complete:hover:not(:disabled){background:var(--color-primary-soft)}.today-task-complete:disabled{cursor:wait;opacity:.55}.today-task-list li.is-overdue .today-task-complete{color:var(--color-danger)}.today-task-list li>div{min-width:0}.today-task-list strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:22px;display:block;overflow:hidden}.today-task-list li>div>span{color:var(--color-muted);align-items:center;gap:8px;font-size:11px;display:flex}.today-task-list em{color:var(--color-warning-text);font-style:normal}.today-task-list em[data-priority=urgent]{color:var(--color-danger)}.today-task-list time{color:var(--color-muted);white-space:nowrap;font-size:12px}.today-task-list li.is-overdue time{color:var(--color-danger)}.today-context{gap:20px;display:grid}.today-context>section{min-height:132px;padding:17px 19px}.today-context header{align-items:center;gap:8px;display:flex}.today-context header svg{color:var(--color-primary)}.today-context p{color:var(--color-muted);text-align:center;margin-top:23px;font-size:13px}.today-layout-toolbar{justify-content:flex-end;margin:-4px 0 10px;display:flex}.today-layout-toolbar>button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;align-items:center;gap:7px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.today-layout-toolbar>button:hover{border-color:var(--color-primary);color:var(--color-primary-hover)}.today-layout-editor{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin-bottom:14px;padding:12px}.today-layout-editor ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;list-style:none;display:grid}.today-layout-editor li{border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;min-height:54px;color:var(--color-muted);cursor:grab;grid-template-columns:18px minmax(0,1fr) repeat(4,36px);align-items:center;gap:8px;padding:5px 6px 5px 9px;display:grid}.today-layout-editor li>span{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.today-layout-editor li button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.today-layout-editor li button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.today-layout-editor li button:disabled{opacity:.3;cursor:not-allowed}.today-layout-move{width:36px;height:36px;position:relative}.today-layout-move-menu{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:default;width:124px;padding:4px;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 10px 28px #1c232b29}.today-layout-editor .today-layout-move-menu button{width:100%;height:44px;color:var(--color-text);text-align:left;justify-content:space-between;align-items:center;padding:0 8px;font-size:12px;display:flex}.today-layout-editor .today-layout-move-menu button[aria-checked=true]{color:var(--color-primary-hover);background:var(--color-primary-soft)}.today-layout-editor footer{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.today-layout-editor footer button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.today-layout-editor footer button:last-child{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.today-layout-editor footer button:disabled{cursor:not-allowed;opacity:.5}.today-action-error{border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-border));border-radius:var(--radius);min-height:42px;color:var(--color-danger);background:var(--color-surface);align-items:center;gap:9px;margin-bottom:12px;padding:8px 10px;font-size:12px;display:flex}.today-action-error>span{flex:1;min-width:0}.today-action-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.today-action-error button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.today-dialog-error{color:var(--color-danger);font-size:12px}.today-widgets{gap:20px;display:grid}.today-timeline{scroll-behavior:smooth;max-height:420px;padding:0 19px;list-style:none;overflow-y:auto}.today-timeline li{border-bottom:1px solid var(--color-border);grid-template-columns:78px 12px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;display:grid}.today-timeline li:last-child{border-bottom:0}.today-timeline li[aria-current=time]{background:color-mix(in srgb, var(--color-primary-soft) 48%, transparent)}.today-timeline time{color:var(--color-text);white-space:nowrap;font-size:13px;font-weight:700}.today-timeline i{background:var(--color-primary);border-radius:50%;width:9px;height:9px}.today-timeline i[data-type=time_block]{background:var(--color-warning);border-radius:2px}.today-timeline li>div{min-width:0}.today-timeline strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:21px;display:block;overflow:hidden}.today-timeline li>div span,.today-timeline small{color:var(--color-muted);font-size:11px}.today-calendar-empty{min-height:148px;color:var(--color-muted);align-content:center;justify-items:center;gap:8px;font-size:13px;display:grid}.today-calendar-empty svg{color:var(--color-primary)}.today-placeholder-panel{min-height:124px;padding:17px 19px}.today-placeholder-panel header{align-items:center;gap:8px;display:flex}.today-placeholder-panel header svg{color:var(--color-primary)}.today-placeholder-panel p{color:var(--color-muted);text-align:center;margin-top:22px;font-size:13px}.today-dialog-backdrop{z-index:90;background:#1c232b52;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.today-decision-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(440px,100%);color:var(--color-text);background:var(--color-surface);box-shadow:0 18px 46px #1c232b2e}.today-decision-dialog header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:58px;padding:10px 16px;display:flex}.today-decision-dialog h2{letter-spacing:0;font-size:17px;line-height:25px}.today-decision-dialog header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.today-decision-dialog>p{color:var(--color-muted);padding:20px 16px;font-size:13px;line-height:21px}.today-decision-dialog footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:11px 16px;display:flex}.today-decision-dialog footer button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 12px;font-size:12px;font-weight:700}.today-decision-dialog footer button:last-child{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.today-decision-dialog button:disabled{cursor:wait;opacity:.55}.today-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:236px;padding:28px;display:flex}.today-empty svg{color:var(--color-primary)}.today-empty h3{letter-spacing:0;margin-top:9px;font-size:15px;line-height:23px}.today-empty p{color:var(--color-muted);font-size:12px}.today-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:440px;display:flex}.today-error>svg{color:var(--color-danger)}.today-error h1{letter-spacing:0;margin-top:12px;font-size:20px;line-height:30px}.today-error p,.today-error small{color:var(--color-muted)}.today-error small{overflow-wrap:anywhere;margin-top:4px;font-size:11px}.today-error button,.today-error a{border-radius:var(--radius);cursor:pointer;align-items:center;gap:7px;min-height:44px;padding:0 15px;font-weight:700;text-decoration:none;display:inline-flex}.today-error button{color:var(--color-on-solid);background:var(--color-primary)}.today-error a{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.today-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.today-skeleton-heading,.today-skeleton-overview span,.today-skeleton-content span{border-radius:var(--radius);background:linear-gradient(90deg, var(--color-border) 25%, var(--color-surface) 50%, var(--color-border) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite today-skeleton}.today-skeleton-heading{width:min(340px,74%);height:72px;margin-bottom:20px}.today-skeleton-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.today-skeleton-overview span{height:104px}.today-skeleton-content{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:20px;display:grid}.today-skeleton-content span{height:340px}@keyframes today-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width>=768px) and (width<=1120px){.today-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.today-main-grid,.today-skeleton-content{grid-template-columns:1fr}.today-context{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.today-heading{margin-bottom:17px}.today-heading>p{font-size:12px}.today-heading h1{font-size:22px;line-height:32px}.today-heading>span{font-size:12px}.today-capture{margin-top:13px;padding-left:10px}.today-capture>span{display:none}.today-capture button{width:44px;height:44px}.today-overview,.today-skeleton-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}.today-overview-item{min-height:92px;padding:12px 13px}.today-overview-item strong{margin-top:6px;font-size:20px;line-height:26px}.today-overview-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.today-main-grid,.today-skeleton-content{display:block}.today-task-panel{background:0 0;border-left:0;border-right:0;border-radius:0}.today-task-panel>header{min-height:56px;padding:8px 0}.today-task-panel>header p{display:none}.today-task-list li{grid-template-columns:44px minmax(0,1fr) auto;min-height:62px;margin:0}.today-task-complete{width:44px;height:44px}.today-task-list strong{font-size:14px}.today-context{grid-template-columns:1fr;gap:12px;margin-top:24px}.today-layout-editor ol{grid-template-columns:1fr}.today-layout-editor li{grid-template-columns:18px minmax(0,1fr) repeat(4,44px)}.today-layout-editor li button,.today-action-error button,.today-decision-dialog header button,.today-layout-move{width:44px;height:44px}.today-widgets{gap:16px}.today-calendar-panel,.today-habit-panel,.today-goal-panel,.today-wellbeing-panel,.today-placeholder-panel{background:0 0;border-left:0;border-right:0;border-radius:0}.today-calendar-panel>header,.today-habit-panel>header,.today-goal-panel>header,.today-wellbeing-panel>header{padding:8px 0}.today-timeline{padding:0}.today-timeline li{grid-template-columns:60px 10px minmax(0,1fr);gap:8px}.today-timeline li>small{display:none}.today-placeholder-panel{padding-left:0;padding-right:0}.today-habit-panel ul,.today-goal-panel ul,.today-wellbeing-panel ul{padding:0}.today-wellbeing-panel>footer{padding-left:0;padding-right:0}.today-review-panel{background:0 0;border-left:0;border-right:0;border-radius:0;grid-template-columns:38px minmax(0,1fr);margin-top:16px;padding:15px 0}.today-review-icon{width:38px;height:38px}.today-review-panel>button{grid-column:2;width:fit-content}.today-habit-panel li{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;min-height:72px;padding:6px 0}.today-habit-primary,.today-habit-skip,.today-habit-controls button{width:44px;height:44px}.today-habit-primary{grid-area:1/1}.today-habit-name{grid-area:1/2;min-height:44px}.today-habit-skip{grid-area:1/3}.today-habit-controls{grid-area:2/2/auto/4;justify-self:end}.today-goal-panel li>button{grid-template-columns:minmax(0,1fr) minmax(110px,36%);gap:12px}.today-context>section{min-height:112px}.today-empty{min-height:190px}.today-skeleton-heading{height:64px}.today-skeleton-overview span{height:92px}.today-skeleton-content span:first-child{height:300px;display:block}.today-skeleton-content span:last-child{display:none}}.inbox-page{width:100%;max-width:960px;min-height:540px;margin:0 auto}.inbox-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.inbox-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.inbox-eyebrow{color:var(--color-muted);margin-bottom:3px;font-size:13px}.inbox-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.inbox-heading>div>p:last-child{color:var(--color-muted);margin-top:3px;font-size:13px}.inbox-count{min-width:42px;height:32px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:16px;place-items:center;padding:0 10px;font-size:13px;font-weight:700;display:inline-grid}.inbox-capture{border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface);align-items:center;gap:11px;min-height:56px;padding:8px 10px 8px 16px;display:flex;box-shadow:0 1px 3px #1c232b0d}.inbox-capture>svg{color:var(--color-primary);flex:none}.inbox-capture input{min-width:0;height:44px;color:var(--color-text);font:inherit;background:0 0;border:0;flex:1}.inbox-capture input::placeholder{color:var(--color-muted)}.inbox-capture input:focus{box-shadow:none}.inbox-capture:has(input[aria-invalid=true]){border-color:var(--color-danger)}.inbox-capture>span{color:var(--color-muted);white-space:nowrap;font-size:11px}.inbox-capture button,.inbox-empty button,.inbox-error button,.inbox-error a{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.inbox-capture button:disabled{cursor:not-allowed;opacity:.6}.inbox-inline-error{color:var(--color-danger);margin-top:8px;font-size:12px}.inbox-organizer-option-error{align-items:center;gap:8px;min-height:44px;display:flex}.inbox-organizer-option-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.inbox-organizer-option-error small{color:var(--color-muted);margin-top:2px;display:block}.inbox-organizer-option-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;flex:none;place-items:center;width:44px;height:44px;display:grid}.inbox-list{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-top:18px;list-style:none}.inbox-list li{border-bottom:1px solid var(--color-border);grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:70px;padding:9px 12px;display:grid}.inbox-list li:last-child{border-bottom:0}.inbox-row-toggle{cursor:pointer;place-items:center;width:44px;height:44px;display:grid}.inbox-row-checkbox{width:17px;height:17px;accent-color:var(--color-primary)}.inbox-row-copy{min-width:0}.inbox-row-copy strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:22px;display:block;overflow:hidden}.inbox-row-copy span{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:19px;display:block;overflow:hidden}.inbox-list time{color:var(--color-muted);white-space:nowrap;font-size:12px}.inbox-row-organize{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.inbox-row-organize:hover{border-color:var(--color-primary);background:var(--color-primary-soft)}.inbox-toolbar{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:46px;color:var(--color-muted);align-items:center;gap:12px;margin-top:16px;padding:7px 10px;font-size:12px;display:flex}.inbox-select-all{min-width:44px;min-height:44px;color:var(--color-text);white-space:nowrap;cursor:pointer;align-items:center;gap:7px;font-weight:700;display:inline-flex}.inbox-select-all input{width:16px;height:16px;accent-color:var(--color-primary)}.inbox-toolbar-actions{gap:7px;margin-left:auto;display:flex}.inbox-toolbar-actions button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.inbox-toolbar-actions button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.inbox-toolbar-actions button:disabled{cursor:not-allowed;opacity:.45}.inbox-toolbar-actions .inbox-danger-action{color:var(--color-danger)}.inbox-drawer-backdrop{z-index:80;background:#1c232b47;justify-content:flex-end;display:flex;position:fixed;inset:0}.inbox-organizer{border-left:1px solid var(--color-border);width:min(440px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-12px 0 30px #1c232b29}.inbox-organizer-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:78px;padding:18px 22px;display:flex}.inbox-organizer-heading h2{letter-spacing:0;margin-top:2px;font-size:20px;line-height:28px}.inbox-organizer .icon-button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.inbox-organizer .icon-button:hover{color:var(--color-text);border-color:var(--color-border-strong)}.inbox-organizer-body{flex:1;padding:20px 22px;overflow-y:auto}.inbox-organizer-loading{align-content:start;gap:17px;min-height:414px;display:grid}.inbox-organizer-loading>span,.inbox-organizer-loading>div>span{border-radius:var(--radius);background:var(--color-border);opacity:.65;min-height:68px}.inbox-organizer-loading>span.description{min-height:119px}.inbox-organizer-loading>span.tags{min-height:80px}.inbox-organizer-loading>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.inbox-field,.inbox-fieldset{border:0;margin:0 0 17px;padding:0;display:block}.inbox-field>span,.inbox-field>.inbox-field-label,.inbox-fieldset legend{color:var(--color-text);align-items:center;gap:6px;margin-bottom:7px;font-size:13px;font-weight:700;display:flex}.inbox-field textarea,.inbox-field select,.inbox-field input[type=date],.inbox-field input[type=text]{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.inbox-field [aria-invalid=true],.inbox-fieldset[aria-invalid=true]{border-color:var(--color-danger)}.inbox-field>small,.inbox-fieldset>small{color:var(--color-danger);overflow-wrap:anywhere;margin-top:5px;font-size:11px;display:block}.inbox-field textarea{resize:vertical;min-height:96px}.inbox-field textarea:focus,.inbox-field select:focus,.inbox-field input[type=date]:focus,.inbox-field input[type=text]:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.inbox-segmented{border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.inbox-segmented button{border:0;border-right:1px solid var(--color-border);min-width:44px;min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;padding:0 4px;font-size:12px}.inbox-segmented button:last-child{border-right:0}.inbox-segmented button.active{color:var(--color-primary-hover);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px var(--color-primary);font-weight:700}.inbox-segmented.six{grid-template-columns:repeat(6,minmax(0,1fr))}.inbox-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.inbox-clear-date{cursor:pointer;align-items:center;gap:5px;min-width:44px;min-height:44px;color:var(--color-muted)!important;margin:6px 0 0!important;font-size:11px!important;font-weight:500!important;display:inline-flex!important}.inbox-clear-date input,.inbox-replace-tags input{accent-color:var(--color-primary)}.inbox-replace-tags{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:7px;margin-bottom:9px;font-size:12px;display:inline-flex}.inbox-tag-list{flex-wrap:wrap;gap:7px;display:flex}.inbox-tag-list label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:inline-flex}.inbox-tag-list label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.inbox-tag-list input{opacity:0;width:1px;height:1px;position:absolute}.inbox-tag-list i{border-radius:50%;width:8px;height:8px}.inbox-organizer-footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:9px;padding:14px 22px;display:flex}.inbox-secondary-button,.inbox-primary-button{border-radius:var(--radius);cursor:pointer;min-width:44px;min-height:44px;padding:0 15px;font-weight:700}.inbox-secondary-button{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.inbox-primary-button{border:1px solid var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.inbox-primary-button:disabled{cursor:not-allowed;opacity:.55}.inbox-dialog-backdrop{z-index:90;background:#1c232b57;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.inbox-delete-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(430px,100%);color:var(--color-text);background:var(--color-surface);padding:20px;box-shadow:0 18px 44px #1c232b33}.inbox-delete-dialog>header{align-items:flex-start;gap:12px;display:flex}.inbox-delete-icon{border-radius:var(--radius);width:38px;height:38px;color:var(--color-danger);background:var(--color-danger-soft);flex:none;place-items:center;display:grid}.inbox-delete-dialog h2{letter-spacing:0;font-size:18px;line-height:26px}.inbox-delete-dialog header p{color:var(--color-muted);margin-top:2px;font-size:12px}.inbox-delete-dialog fieldset{border:0;margin:18px 0 0;padding:0}.inbox-delete-dialog legend{margin-bottom:8px;font-size:13px;font-weight:700}.inbox-delete-dialog fieldset label{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:10px;min-height:58px;margin-top:7px;padding:8px 10px;display:flex}.inbox-delete-dialog fieldset label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.inbox-delete-dialog fieldset input{accent-color:var(--color-primary)}.inbox-delete-dialog fieldset span{flex-direction:column;display:flex}.inbox-delete-dialog fieldset strong{font-size:13px}.inbox-delete-dialog fieldset small{color:var(--color-muted);font-size:11px}.inbox-delete-dialog footer{justify-content:flex-end;gap:9px;margin-top:19px;display:flex}.inbox-danger-button{border:1px solid var(--color-danger);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-danger);cursor:pointer;padding:0 15px;font-weight:700}.inbox-danger-button:disabled{cursor:not-allowed;opacity:.5}.inbox-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:340px;padding:32px;display:flex}.inbox-empty-icon{width:58px;height:58px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.inbox-empty h2{letter-spacing:0;margin-top:14px;font-size:18px;line-height:27px}.inbox-empty p,.inbox-error p,.inbox-error small{color:var(--color-muted);font-size:13px}.inbox-empty button{margin-top:18px}.inbox-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.inbox-error>svg{color:var(--color-danger)}.inbox-error h1{letter-spacing:0;margin-top:12px;font-size:20px;line-height:30px}.inbox-error small{overflow-wrap:anywhere;margin-top:4px;font-size:11px}.inbox-error a{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);background:var(--color-surface);text-decoration:none}.inbox-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.inbox-toast{z-index:70;top:calc(var(--app-offline-height,0px) + 80px);border:1px solid var(--color-border);border-radius:var(--radius);min-height:40px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:7px;padding:0 13px;font-size:13px;display:inline-flex;position:fixed;right:24px;box-shadow:0 10px 24px #1c232b24}.inbox-toast svg{color:var(--color-success-text)}.inbox-skeleton{align-content:start;gap:16px;display:grid}.inbox-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:70px}@media (width<=767px){.inbox-heading{margin-bottom:17px}.inbox-heading h1{font-size:23px;line-height:32px}.inbox-heading>div>p:last-child{font-size:12px}.inbox-capture{align-items:flex-start;padding:9px 10px 9px 13px}.inbox-capture input{height:44px}.inbox-capture>span{display:none}.inbox-capture button{min-height:44px;padding:0 11px}.inbox-list li{grid-template-columns:44px minmax(0,1fr) auto;padding:10px 0}.inbox-list time{display:none}.inbox-row-organize{padding:0 7px}.inbox-row-organize svg{display:none}.inbox-toolbar{flex-wrap:wrap;align-items:flex-start}.inbox-toolbar-actions{width:100%;margin-left:0}.inbox-toolbar-actions button{flex:1;justify-content:center}.inbox-toast{top:calc(var(--app-offline-height,0px) + 68px);justify-content:center;left:16px;right:16px}.inbox-organizer-heading{padding:16px}.inbox-organizer .icon-button{width:44px;height:44px}.inbox-organizer-body{padding:18px 16px}.inbox-organizer-footer{padding:12px 16px}.inbox-date-grid{grid-template-columns:1fr;gap:0}.inbox-delete-dialog{padding:17px}}.execution-nav{border-bottom:1px solid var(--color-border);align-items:center;gap:4px;min-height:36px;margin-bottom:16px;display:flex}.execution-nav a{min-height:36px;color:var(--color-muted);border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.execution-nav a:hover{color:var(--color-text)}.execution-nav a.active{border-color:var(--color-primary);color:var(--color-primary-hover);font-weight:700}.projects-page{width:100%;max-width:1260px;min-height:560px;margin:0 auto}.projects-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.projects-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.projects-heading p{color:var(--color-muted);margin-bottom:2px;font-size:13px}.projects-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.projects-heading span{color:var(--color-muted);margin-top:2px;font-size:13px;display:block}.projects-primary-button,.projects-secondary-button{border-radius:var(--radius);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;min-width:44px;min-height:44px;padding:0 14px;font-weight:700;display:inline-flex}.projects-primary-button{border:1px solid var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.projects-primary-button:hover:not(:disabled){background:var(--color-primary-hover)}.projects-primary-button:disabled,.projects-secondary-button:disabled{cursor:not-allowed;opacity:.55}.projects-secondary-button{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.projects-toolbar{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:repeat(5,minmax(125px,1fr)) auto;align-items:center;gap:8px;min-height:54px;padding:8px;display:grid}.projects-toolbar label,.projects-filter-row label{min-width:0}.projects-toolbar label>span,.projects-filter-row label>span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.projects-toolbar select,.projects-filter-row select,.projects-filter-row input{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 9px}.projects-filter-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.projects-toolbar select:focus,.projects-filter-row select:focus,.projects-filter-row input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.projects-view-toggle{border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:repeat(2,44px);height:46px;display:grid;overflow:hidden}.projects-view-toggle button{color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.projects-view-toggle button+button{border-left:1px solid var(--color-border)}.projects-view-toggle button.active{color:var(--color-primary-hover);background:var(--color-primary-soft)}.projects-filter-row{align-items:center;gap:8px;margin:8px 0 14px;display:flex}.projects-filter-row label{width:150px}.projects-filter-row label:nth-child(3){width:170px}.projects-clear-button{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-left:auto;padding:0 9px;font-size:12px;display:inline-flex}.projects-clear-button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.projects-clear-button:disabled{opacity:.45}.projects-inline-error{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:42px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;font-size:12px;display:flex}.projects-inline-error span{overflow-wrap:anywhere;flex:1}.projects-inline-error small{color:var(--color-muted);margin-top:2px;display:block}.projects-inline-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:36px;height:36px;display:grid}.projects-results{min-height:320px}.projects-list{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.projects-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:72px;padding:9px 11px;display:grid}.projects-row:last-child{border-bottom:0}.projects-color{border-radius:3px;width:8px;height:36px;display:block}.projects-row-main{min-width:0}.projects-row-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:22px;display:block;overflow:hidden}.projects-row-main a,.projects-card a{min-width:44px;min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.projects-row-main a:hover,.projects-card a:hover{color:var(--color-primary-hover);text-decoration:underline}.projects-row-main>div{color:var(--color-muted);white-space:nowrap;align-items:center;gap:7px;margin-top:3px;font-size:11px;display:flex;overflow:hidden}.projects-status-pill,.projects-priority{border-radius:3px;align-items:center;min-height:21px;padding:0 6px;display:inline-flex}.projects-status-pill{color:var(--color-text);background:var(--color-page)}.projects-status-pill[data-status=active]{background:var(--color-info-soft)}.projects-status-pill[data-status=on_hold]{background:#fff5df}:root[data-color-mode=dark] .projects-status-pill[data-status=on_hold]{background:#3b2e14}.projects-status-pill[data-status=completed],.projects-status-pill[data-status=archived]{color:var(--color-muted)}.projects-priority{color:var(--color-muted);border:1px solid var(--color-border)}.projects-priority[data-priority=urgent]{color:var(--color-danger);border-color:var(--color-danger)}.projects-priority[data-priority=high]{color:var(--color-warning-text);border-color:var(--color-warning)}.projects-area,.projects-tag{align-items:center;gap:5px;display:inline-flex}.projects-area i,.projects-tag i{border-radius:50%;width:7px;height:7px}.projects-dates{color:var(--color-muted);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;display:flex}.projects-dates time.overdue{color:var(--color-danger)}.projects-board{grid-template-columns:repeat(3,minmax(220px,1fr));align-items:start;gap:12px;display:grid}.projects-board-column{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);min-width:0}.projects-board-column>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:42px;padding:0 11px;display:flex}.projects-board-column h2{letter-spacing:0;font-size:13px;line-height:20px}.projects-board-column header span{color:var(--color-muted);font-size:11px}.projects-board-column>div{gap:7px;min-height:66px;padding:7px;display:grid}.projects-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;padding:10px}.projects-card>div{grid-template-columns:8px minmax(0,1fr);align-items:center;gap:8px;display:grid}.projects-card .projects-color{height:24px}.projects-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:20px;overflow:hidden}.projects-card>p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 9px 16px;font-size:11px;overflow:hidden}.projects-card footer{justify-content:space-between;align-items:flex-end;gap:8px;margin-left:16px;display:flex}.projects-pagination{color:var(--color-muted);justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:12px;display:flex}.projects-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.projects-pagination button:disabled{opacity:.45}.projects-empty,.projects-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:320px;display:flex}.projects-empty>span{width:52px;height:52px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.projects-empty h2,.projects-error h1{letter-spacing:0;margin-top:12px;font-size:18px;line-height:27px}.projects-empty p,.projects-error p,.projects-error small{color:var(--color-muted)}.projects-empty button,.projects-error button{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:7px;margin-top:15px;padding:0 13px;font-weight:700;display:inline-flex}.projects-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.projects-skeleton{gap:8px;display:grid}.projects-skeleton.list span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:72px}.projects-skeleton.board{grid-template-columns:repeat(3,1fr)}.projects-skeleton.board span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:120px}.projects-dialog-backdrop{z-index:90;background:#1c232b52;justify-content:flex-end;display:flex;position:fixed;inset:0}.projects-create-dialog{border-left:1px solid var(--color-border);width:min(520px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-14px 0 34px #1c232b2e}.projects-create-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:78px;padding:15px 20px;display:flex}.projects-create-dialog header p{color:var(--color-muted);font-size:12px}.projects-create-dialog h2{letter-spacing:0;font-size:20px;line-height:28px}.projects-create-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.projects-create-body{flex:1;padding:18px 20px;overflow-y:auto}.projects-create-body>label,.projects-create-grid label{margin-bottom:15px;display:block}.projects-create-body label>span,.projects-create-body legend{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.projects-create-body input,.projects-create-body textarea,.projects-create-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.projects-create-body textarea{resize:vertical;min-height:88px}.projects-create-body input:focus,.projects-create-body textarea:focus,.projects-create-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.projects-create-body label>small,.projects-create-body fieldset>small{color:var(--color-danger);margin-top:6px;font-size:12px;display:block}.projects-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;display:grid}.projects-color-options,.projects-tag-options{border:0;margin:0 0 16px;padding:0}.projects-color-options>div,.projects-tag-options>div{flex-wrap:wrap;gap:7px;display:flex}.projects-color-options label{border-radius:var(--radius);cursor:pointer;border:2px solid #0000;place-items:center;width:44px;height:44px;display:grid}.projects-color-options label.selected{border-color:var(--color-text)}.projects-color-options input,.projects-tag-options input{opacity:0;width:1px;height:1px;position:absolute}.projects-color-options i{border-radius:3px;width:19px;height:19px}.projects-tag-options label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:inline-flex}.projects-tag-options label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.projects-tag-options i{border-radius:50%;width:8px;height:8px}.projects-tag-option-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.projects-option-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-bottom:16px;font-size:12px;display:flex}.projects-option-error span{overflow-wrap:anywhere;flex:1}.projects-option-error small{color:var(--color-muted);margin-top:2px;display:block}.projects-option-error button{border-radius:var(--radius);color:currentColor;background:0 0;border:1px solid;flex:none;place-items:center;width:44px;height:44px;display:grid}.projects-form-error{color:var(--color-danger);margin-top:13px;font-size:12px}.projects-form-error span,.projects-form-error small{display:block}.projects-form-error small{color:var(--color-muted);overflow-wrap:anywhere}.projects-create-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:13px 20px;display:flex}.projects-toast{z-index:100;border:1px solid var(--color-primary);border-radius:var(--radius);min-height:40px;color:var(--color-primary-hover);background:var(--color-primary-soft);align-items:center;padding:0 13px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #1c232b24}@media (width<=1080px){.projects-toolbar{grid-template-columns:repeat(3,minmax(130px,1fr))}.projects-view-toggle{justify-self:end}.projects-board{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=767px){.projects-heading h1{font-size:23px;line-height:32px}.projects-heading .projects-primary-button{width:44px;padding:0;font-size:0}.projects-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-view-toggle{grid-column:span 2}.projects-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.projects-filter-row label,.projects-filter-row label:nth-child(3){width:auto}.projects-clear-button{grid-column:span 2;justify-content:center;margin-left:0}.projects-inline-error button,.projects-create-dialog header button,.projects-pagination button{width:44px;height:44px}.projects-row{grid-template-columns:8px minmax(0,1fr)}.projects-row>.projects-dates{grid-column:2;align-items:flex-start;margin-top:-5px}.projects-board{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.projects-board-column{scroll-snap-align:start;flex:none;width:min(82vw,310px)}.projects-skeleton.board{grid-template-columns:1fr}.projects-dialog-backdrop{background:var(--color-surface)}.projects-create-dialog{width:100vw;box-shadow:none;border-left:0}.projects-create-grid{grid-template-columns:1fr}.projects-toast{justify-content:center;bottom:12px;left:12px;right:12px}}.project-detail-page{width:100%;max-width:1260px;min-height:560px;margin:0 auto}.project-detail-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.project-detail-heading{justify-content:space-between;align-items:center;gap:16px;min-height:70px;margin-bottom:8px;display:flex}.project-detail-heading>div{align-items:center;gap:11px;min-width:0;display:flex}.project-detail-heading>div>button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.project-detail-heading>div>i{border-radius:3px;flex:none;width:9px;height:43px}.project-detail-heading>div>div{min-width:0}.project-detail-heading p{color:var(--color-muted);font-size:12px}.project-detail-heading h1{overflow-wrap:anywhere;letter-spacing:0;font-size:25px;line-height:34px}.project-detail-delete{border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-danger);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.project-detail-delete:hover:not(:disabled){background:var(--color-danger-soft)}.project-detail-delete:disabled{opacity:.5}.project-detail-state{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);align-items:center;gap:10px;min-height:42px;margin-bottom:12px;padding:6px 8px;display:flex}.project-detail-state>span{background:var(--color-page);border-radius:3px;align-items:center;min-height:25px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.project-detail-state>span[data-status=active]{background:var(--color-info-soft)}.project-detail-state>span[data-status=on_hold]{background:#fff5df}.project-detail-state select{border:1px solid var(--color-border);border-radius:var(--radius);min-width:132px;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 7px}.project-detail-state p{color:var(--color-muted);margin-left:auto;font-size:11px}.project-detail-tabs{border-bottom:1px solid var(--color-border);gap:4px;min-height:42px;margin-bottom:16px;display:flex;overflow-x:auto}.project-detail-tabs button{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;border-bottom:2px solid #0000;flex:none;padding:0 13px}.project-detail-tabs button.active{border-color:var(--color-primary);color:var(--color-primary-hover);font-weight:700}.project-detail-error div{min-width:0}.project-detail-error strong,.project-detail-error span,.project-detail-error small{overflow-wrap:anywhere;display:block}.project-detail-error small{color:var(--color-muted);font-size:10px}.project-overview,.project-tasks-panel,.project-milestones,.project-stats-panel{padding-bottom:24px}.project-overview>header,.project-tasks-panel>header,.project-milestones>header,.project-stats-panel>header{justify-content:space-between;align-items:flex-start;gap:14px;min-height:58px;margin-bottom:15px;display:flex}.project-overview h2,.project-tasks-panel h2,.project-milestones h2,.project-stats-panel h2{letter-spacing:0;font-size:18px;line-height:27px}.project-overview header p,.project-tasks-panel header p,.project-milestones header p,.project-stats-panel header p{color:var(--color-muted);font-size:12px}.project-overview-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;max-width:900px;display:grid}.project-overview-form .wide{grid-column:span 2}.project-overview-form label>span,.project-overview-form legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.project-overview-form input,.project-overview-form textarea,.project-overview-form select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.project-overview-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.project-detail-option-error{max-width:900px;margin-top:14px}.project-overview-form textarea{resize:vertical;min-height:120px}.project-overview-form input:focus,.project-overview-form textarea:focus,.project-overview-form select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.project-overview-form input:disabled,.project-overview-form textarea:disabled,.project-overview-form select:disabled{color:var(--color-muted);background:var(--color-page)}.project-overview-form label>small,.project-overview-form fieldset>small{color:var(--color-danger);margin-top:6px;font-size:12px;display:block}.project-detail-colors,.project-detail-tags{border:0;margin:0;padding:0}.project-detail-colors>div,.project-detail-tags>div{flex-wrap:wrap;gap:7px;display:flex}.project-detail-colors label{border-radius:var(--radius);cursor:pointer;border:2px solid #0000;place-items:center;width:44px;height:44px;display:grid}.project-detail-colors label.selected{border-color:var(--color-text)}.project-detail-colors input,.project-detail-tags input{opacity:0;width:1px;height:1px;position:absolute}.project-detail-colors i{border-radius:3px;width:20px;height:20px}.project-detail-tags label{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:inline-flex}.project-detail-tags label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.project-detail-tags i{border-radius:50%;width:8px;height:8px}.project-tasks-panel>header>div:last-child{grid-template-columns:minmax(170px,260px) 44px;gap:8px;display:grid}.project-tasks-panel header input{border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 9px}.project-tasks-panel header input[aria-invalid=true]{border-color:var(--color-danger)}.project-task-field-error{color:var(--color-danger);grid-column:1/-1;font-size:12px;line-height:18px}.project-tasks-panel header button{border-radius:var(--radius);width:44px;height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;place-items:center;display:grid}.project-tasks-panel header button:disabled{opacity:.5}.project-task-list{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.project-task-list article{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px 10px;display:flex}.project-task-list article:last-child{border-bottom:0}.project-task-list article>div{min-width:0}.project-task-list strong,.project-task-list article>div>span{display:block}.project-task-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.project-task-list a{min-width:44px;min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.project-task-list a:hover{color:var(--color-primary-hover);text-decoration:underline}.project-task-list article>div>span,.project-task-list article>span,.project-task-list time{color:var(--color-muted);font-size:11px}.project-task-list article.terminal strong{color:var(--color-muted);text-decoration:line-through}.project-task-list time.overdue{color:var(--color-danger)}.project-panel-empty{min-height:250px;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.project-panel-empty p{margin-top:8px}.project-panel-skeleton{gap:8px;display:grid}.project-panel-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:68px}.project-panel-error{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:42px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.project-panel-error>span{flex:1;min-width:0}.project-panel-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.project-panel-error button{border-radius:var(--radius);color:currentColor;background:0 0;flex:none;place-items:center;width:36px;height:36px;margin-left:auto;display:grid}.project-milestones ol{max-width:720px;margin:0;padding:0;list-style:none}.project-milestones li{grid-template-columns:30px minmax(0,1fr);gap:12px;min-height:76px;display:grid;position:relative}.project-milestones li:after{content:"";background:var(--color-border);width:1px;position:absolute;top:30px;bottom:0;left:14px}.project-milestones li:last-child:after{display:none}.project-milestones li>span{z-index:1;border:1px solid var(--color-border);width:30px;height:30px;color:var(--color-muted);background:var(--color-surface);border-radius:50%;place-items:center;font-size:11px;display:grid}.project-milestones li.set>span{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.project-milestones li strong,.project-milestones li time,.project-milestones li p{display:block}.project-milestones li time,.project-milestones li p{color:var(--color-muted);font-size:12px}.project-stats-panel>header>div:last-child{gap:8px;display:flex}.project-stats-panel header label span{color:var(--color-muted);font-size:10px;display:block}.project-stats-panel header input{border:1px solid var(--color-border);border-radius:var(--radius);height:44px;color:var(--color-text);background:var(--color-surface);padding:0 8px}.project-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.project-stats-grid>article{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:126px;padding:16px}.project-stats-grid>article>span,.project-stats-grid>article>small{color:var(--color-muted);font-size:11px;display:block}.project-stats-grid>article>strong{margin:8px 0 3px;font-size:27px;line-height:34px;display:block}.project-progress-stat{grid-column:span 2}.project-progress-stat>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.project-progress-stat>div:first-child strong{font-size:30px}.project-progress-stat>div:first-child span{color:var(--color-muted);font-size:12px}.project-progress-stat [role=progressbar]{background:var(--color-page);border-radius:3px;height:8px;margin-top:22px;overflow:hidden}.project-progress-stat [role=progressbar] i{background:var(--color-primary);height:100%;display:block}.project-status-stats{grid-column:span 3}.project-status-stats>div{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:10px;display:grid}.project-status-stats p{border-left:2px solid var(--color-border);padding:7px}.project-status-stats p span,.project-status-stats p strong{display:block}.project-status-stats p span{color:var(--color-muted);font-size:10px}.project-decision-backdrop{z-index:110;background:#1c232b7a;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.project-decision-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(470px,100%);max-height:min(650px,100vh - 36px);color:var(--color-text);background:var(--color-surface);overflow-y:auto;box-shadow:0 20px 54px #1c232b3d}.project-decision-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 14px 10px 18px;display:flex}.project-decision-dialog h2{letter-spacing:0;font-size:17px;line-height:26px}.project-decision-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.project-decision-dialog>div{color:var(--color-muted);padding:18px;font-size:13px}.project-decision-dialog .project-conflict-error{color:var(--color-danger);margin-top:10px}.project-decision-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.project-decision-reason span,.project-task-policies legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.project-decision-reason textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:96px;color:var(--color-text);background:var(--color-surface);resize:vertical;padding:8px 10px}.project-task-policies{border:0;gap:8px;margin:14px 0 0;padding:0;display:grid}.project-task-policies label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);cursor:pointer;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px;display:grid}.project-task-policies input{width:16px;height:16px;accent-color:var(--color-primary);margin-top:2px}.project-task-policies strong,.project-task-policies small{display:block}.project-task-policies small{color:var(--color-muted);margin-top:2px;font-size:11px}.project-detail-danger-button{border:1px solid var(--color-danger);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-on-solid);background:var(--color-danger);cursor:pointer;padding:0 14px;font-weight:700}.project-detail-danger-button:disabled{opacity:.5}.project-detail-skeleton{gap:12px;display:grid}.project-detail-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:64px}.project-detail-skeleton span:nth-child(4){height:230px}.project-detail-load-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.project-detail-load-error h1{letter-spacing:0;margin-top:10px;font-size:20px}.project-detail-load-error p,.project-detail-load-error small{color:var(--color-muted)}.project-detail-load-error>div{gap:8px;margin-top:15px;display:flex}.project-detail-load-error button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:44px;min-height:44px;color:var(--color-text);background:var(--color-surface);align-items:center;gap:6px;padding:0 12px;display:inline-flex}@media (width<=767px){.project-detail-heading h1{font-size:21px;line-height:30px}.project-detail-heading>div>button,.project-detail-heading .project-detail-delete,.project-panel-error button,.project-decision-dialog header button,.projects-pagination button{width:44px;height:44px}.project-detail-heading .project-detail-delete{padding:0;font-size:0}.project-detail-state{flex-wrap:wrap;align-items:flex-start}.project-detail-state p{width:100%;margin-left:0}.project-overview>header,.project-tasks-panel>header,.project-stats-panel>header{flex-direction:column;align-items:stretch}.project-overview-form{grid-template-columns:1fr}.project-overview-form .wide{grid-column:auto}.project-tasks-panel>header>div:last-child{grid-template-columns:minmax(0,1fr) 44px}.project-task-list article{flex-direction:column;align-items:flex-start;gap:3px}.project-stats-panel>header>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-stats-panel header input{width:100%;min-width:0}.project-stats-grid{grid-template-columns:1fr}.project-progress-stat,.project-status-stats{grid-column:auto}.project-status-stats>div{grid-template-columns:repeat(2,minmax(0,1fr))}.project-decision-backdrop{align-items:end;padding:0}.project-decision-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:88vh}.project-decision-dialog>footer{background:var(--color-surface);position:sticky;bottom:0}}.tasks-page{width:100%;max-width:1260px;min-height:560px;margin:0 auto}.tasks-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tasks-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.tasks-heading p{color:var(--color-muted);margin-bottom:2px;font-size:13px}.tasks-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.tasks-heading span{color:var(--color-muted);margin-top:2px;font-size:13px;display:block}.tasks-primary-button,.tasks-secondary-button{border-radius:var(--radius);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;min-width:44px;min-height:44px;padding:0 14px;font-weight:700;display:inline-flex}.tasks-primary-button{border:1px solid var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.tasks-primary-button:hover:not(:disabled){background:var(--color-primary-hover)}.tasks-primary-button:disabled,.tasks-secondary-button:disabled{cursor:not-allowed;opacity:.55}.tasks-secondary-button{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.tasks-system-views{border-bottom:1px solid var(--color-border);gap:4px;margin-bottom:12px;display:flex;overflow-x:auto}.tasks-system-views button{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;border-bottom:2px solid #0000;flex:none;padding:0 13px}.tasks-system-views button:hover{color:var(--color-text)}.tasks-system-views button.active{border-color:var(--color-primary);color:var(--color-primary-hover);font-weight:700}.tasks-saved-views{min-height:38px;margin-bottom:10px}.tasks-saved-views>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.tasks-saved-views h2{color:var(--color-muted);letter-spacing:0;font-size:12px;line-height:20px}.tasks-saved-views>header button{border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.tasks-saved-views>header button:hover:not(:disabled){background:var(--color-primary-soft)}.tasks-saved-views button:disabled{cursor:not-allowed;opacity:.5}.tasks-saved-view-list{gap:4px;margin-top:5px;display:flex;overflow-x:auto}.tasks-saved-view-list>div{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex:none;align-items:center;display:flex}.tasks-saved-view-list button{min-width:44px;min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;padding:0 9px;font-size:12px}.tasks-saved-view-list button:first-child.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.tasks-saved-view-list button:last-child{border-left:1px solid var(--color-border);place-items:center;width:44px;padding:0;display:grid}.tasks-saved-view-list button:hover{color:var(--color-primary-hover)}.tasks-saved-view-skeleton{gap:5px;margin-top:5px;display:flex}.tasks-saved-view-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;width:96px;height:30px}.tasks-saved-view-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-top:5px;font-size:11px;display:flex}.tasks-saved-view-error>span{flex:1;min-width:0}.tasks-saved-view-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.tasks-saved-view-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;place-items:center;width:36px;height:36px;display:grid}.tasks-toolbar{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:minmax(190px,1fr) repeat(4,minmax(125px,.56fr)) auto;align-items:center;gap:8px;min-height:54px;padding:8px;display:grid}.tasks-toolbar>label,.tasks-filter-row>label{min-width:0}.tasks-toolbar>label>span:not(.sr-only),.tasks-filter-row label>span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.tasks-toolbar select,.tasks-filter-row select,.tasks-filter-row input,.tasks-search{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit}.tasks-toolbar select,.tasks-filter-row select,.tasks-filter-row input{padding:0 9px}.tasks-toolbar select:focus,.tasks-filter-row select:focus,.tasks-filter-row input:focus,.tasks-search:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.tasks-filter-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.tasks-search{align-items:center;gap:8px;padding:0 10px;display:flex}.tasks-search svg{color:var(--color-muted);flex:none}.tasks-search input{min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;flex:1}.tasks-search input:focus{box-shadow:none}.tasks-view-toggle{border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:repeat(2,44px);height:46px;display:grid;overflow:hidden}.tasks-view-toggle button{color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.tasks-view-toggle button+button{border-left:1px solid var(--color-border)}.tasks-view-toggle button.active{color:var(--color-primary-hover);background:var(--color-primary-soft)}.tasks-filter-row{align-items:center;gap:8px;margin:8px 0 14px;display:flex}.tasks-filter-row>label{width:150px}.tasks-filter-row>label:nth-child(3){width:170px}.tasks-clear-button{border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-left:auto;padding:0 9px;font-size:12px;display:inline-flex}.tasks-clear-button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.tasks-clear-button:disabled{opacity:.45}.tasks-inline-error{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:42px;color:var(--color-danger);background:var(--color-danger-soft);align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;font-size:12px;display:flex}.tasks-inline-error>span{flex:1}.tasks-inline-error>span small{overflow-wrap:anywhere;color:var(--color-muted);margin-top:2px;display:block}.tasks-inline-error>small{overflow-wrap:anywhere;color:var(--color-muted);margin-left:auto}.tasks-inline-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:none;place-items:center;width:36px;height:36px;display:grid}.tasks-results{min-height:300px}.tasks-list{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.tasks-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:76px;padding:9px 11px;display:grid}.tasks-row:last-child{border-bottom:0}.tasks-row.terminal .tasks-row-main>strong{color:var(--color-muted);text-decoration:line-through}.tasks-status-action{width:36px;height:36px;color:var(--color-primary);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.tasks-status-action:hover:not(:disabled){background:var(--color-primary-soft)}.tasks-status-action:disabled{opacity:.45}.tasks-row-main{min-width:0}.tasks-row-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:22px;display:block;overflow:hidden}.tasks-row-main>div{color:var(--color-muted);white-space:nowrap;align-items:center;gap:7px;margin-top:2px;font-size:11px;display:flex;overflow:hidden}.tasks-status-pill,.tasks-priority{border-radius:3px;align-items:center;min-height:21px;padding:0 6px;display:inline-flex}.tasks-status-pill{color:var(--color-text);background:var(--color-page)}.tasks-status-pill[data-status=in_progress]{color:var(--color-text);background:var(--color-info-soft)}.tasks-status-pill[data-status=waiting]{color:var(--color-text);background:#fff5df}:root[data-color-mode=dark] .tasks-status-pill[data-status=waiting]{background:#3b2e14}.tasks-priority{color:var(--color-muted);border:1px solid var(--color-border)}.tasks-priority[data-priority=urgent]{color:var(--color-danger);border-color:var(--color-danger)}.tasks-priority[data-priority=high]{color:var(--color-warning-text);border-color:var(--color-warning)}.tasks-tag{align-items:center;gap:5px;display:inline-flex}.tasks-tag i{border-radius:50%;width:7px;height:7px}.tasks-date{color:var(--color-muted);white-space:nowrap;font-size:12px}.tasks-date.overdue{color:var(--color-danger)}.tasks-date.muted{color:var(--color-muted)}.tasks-row-details{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.tasks-estimate{color:var(--color-muted);white-space:nowrap;font-size:11px}.tasks-grouped-list{gap:18px;display:grid}.tasks-grouped-list>section>header{align-items:center;gap:7px;min-height:34px;display:flex}.tasks-grouped-list>section>header h2{letter-spacing:0;font-size:13px;line-height:22px}.tasks-grouped-list>section>header span{min-width:21px;height:21px;color:var(--color-muted);background:var(--color-page);border-radius:3px;place-items:center;font-size:10px;display:inline-grid}.tasks-board{grid-template-columns:repeat(3,minmax(220px,1fr));align-items:start;gap:12px;display:grid}.tasks-board-column{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);min-width:0}.tasks-board-column>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:42px;padding:0 11px;display:flex}.tasks-board-column h2{letter-spacing:0;font-size:13px;line-height:20px}.tasks-board-column header span{color:var(--color-muted);font-size:11px}.tasks-board-column>div{gap:7px;min-height:66px;padding:7px;display:grid}.tasks-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:0;padding:10px}.tasks-card>div{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:8px;display:grid}.tasks-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:20px;overflow:hidden}.tasks-card>p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 9px 44px;font-size:11px;overflow:hidden}.tasks-card footer{justify-content:space-between;align-items:center;gap:8px;margin-left:44px;display:flex}.tasks-card .tasks-date{text-overflow:ellipsis;font-size:11px;overflow:hidden}.tasks-card footer:empty{display:none}.tasks-card footer .tasks-row-details{margin-left:auto}.tasks-card-tags{color:var(--color-muted);white-space:nowrap;gap:7px;margin:8px 0 0 44px;font-size:11px;display:flex;overflow:hidden}.tasks-pagination{color:var(--color-muted);justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:12px;display:flex}.tasks-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.tasks-pagination button:disabled{color:var(--color-muted);opacity:.45}.tasks-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:320px;display:flex}.tasks-empty>span{width:52px;height:52px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.tasks-empty h2{letter-spacing:0;margin-top:13px;font-size:18px;line-height:27px}.tasks-empty button,.tasks-error button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:7px;margin-top:16px;padding:0 13px;font-weight:700;display:inline-flex}.tasks-skeleton{gap:8px;display:grid}.tasks-skeleton.list span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:68px}.tasks-skeleton.board{grid-template-columns:repeat(3,1fr)}.tasks-skeleton.board span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:112px}.tasks-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.tasks-error>svg{color:var(--color-danger)}.tasks-error h1{letter-spacing:0;margin-top:10px;font-size:20px;line-height:30px}.tasks-error p,.tasks-error small{color:var(--color-muted)}.tasks-error small{overflow-wrap:anywhere;font-size:11px}.tasks-error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tasks-dialog-backdrop{z-index:90;background:#1c232b52;justify-content:flex-end;display:flex;position:fixed;inset:0}.tasks-create-dialog{border-left:1px solid var(--color-border);width:min(500px,100vw);height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:-14px 0 34px #1c232b2e}.tasks-create-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:78px;padding:15px 20px;display:flex}.tasks-create-dialog header p{color:var(--color-muted);font-size:12px}.tasks-create-dialog h2{letter-spacing:0;font-size:20px;line-height:28px}.tasks-create-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.tasks-create-body{flex:1;padding:18px 20px;overflow-y:auto}.tasks-create-body>label,.tasks-create-grid label{margin-bottom:15px;display:block}.tasks-create-body label>span,.tasks-create-body legend{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.tasks-create-body input,.tasks-create-body textarea,.tasks-create-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.tasks-create-body textarea{resize:vertical;min-height:92px}.tasks-create-body input:focus,.tasks-create-body textarea:focus,.tasks-create-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.tasks-create-body input[aria-invalid=true],.tasks-create-body textarea[aria-invalid=true],.tasks-create-body select[aria-invalid=true]{border-color:var(--color-danger)}.tasks-field-error{color:var(--color-danger);margin-top:6px;font-size:12px;line-height:18px;display:block}.tasks-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tasks-create-body fieldset{border:0;margin:0;padding:0}.tasks-create-body fieldset[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:4px}.tasks-create-body fieldset>div{flex-wrap:wrap;gap:7px;display:flex}.tasks-create-body fieldset label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:inline-flex}.tasks-create-body fieldset label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.tasks-create-body fieldset input{opacity:0;width:1px;height:1px;position:absolute}.tasks-create-body fieldset i{border-radius:50%;width:8px;height:8px}.task-create-tag-skeleton{flex-wrap:wrap;gap:7px;display:flex}.tasks-create-body .task-create-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.task-create-option-error{min-height:44px;color:var(--color-danger);align-items:center;gap:8px;margin-top:14px;font-size:12px;display:flex}.task-create-option-error span{overflow-wrap:anywhere;flex:1}.task-create-option-error small{color:var(--color-muted);margin-top:2px;display:block}.task-create-option-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:1px solid;flex:none;place-items:center;width:44px;height:44px;display:grid}.tasks-create-body .task-recurrence-toggle{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:8px;min-height:44px;margin-bottom:15px;padding:0 10px;display:flex}.tasks-create-body .task-recurrence-toggle input{width:17px;height:17px;min-height:17px;accent-color:var(--color-primary);margin:0;padding:0}.tasks-create-body .task-recurrence-toggle>span{margin:0}.task-recurrence-fields{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);gap:14px;margin:2px 0 17px;padding:15px 0;display:grid}.task-recurrence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.task-recurrence-grid>label{margin:0;display:block}.task-recurrence-fields label>span,.task-recurrence-fields legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.task-recurrence-fields small{color:var(--color-danger);margin-top:5px;font-size:11px;line-height:17px;display:block}.tasks-create-body .task-recurrence-fields fieldset{border:0;margin:0;padding:0}.tasks-create-body .task-recurrence-fields fieldset[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:4px}.tasks-create-body .task-recurrence-fields fieldset input{opacity:1;width:auto;height:auto;min-height:0;accent-color:var(--color-primary);padding:0;position:static}.tasks-create-body .task-recurrence-fields fieldset>div{flex-wrap:wrap;gap:7px;display:flex}.tasks-create-body .task-recurrence-fields fieldset label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:40px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;margin:0;padding:0 9px;font-size:12px;display:inline-flex}.tasks-create-body .task-recurrence-fields fieldset label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.tasks-create-body .task-recurrence-fields fieldset label>span{margin:0;display:inline}.tasks-create-body .task-recurrence-fields .task-recurrence-month{flex-wrap:wrap;gap:7px;display:flex}.tasks-create-body .task-recurrence-fields .task-recurrence-month legend{width:100%}.tasks-create-body .task-recurrence-fields .task-recurrence-month label:first-of-type{flex:210px}.tasks-create-body .task-recurrence-fields .task-recurrence-month label:first-of-type input[type=number]{width:86px;min-height:36px;margin-left:auto;padding:5px 7px}.tasks-form-error{color:var(--color-danger);margin-top:14px;font-size:12px}.tasks-form-error small{color:var(--color-muted);overflow-wrap:anywhere;margin-top:2px;display:block}.tasks-create-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:13px 20px;display:flex}.tasks-row-main a,.tasks-card a{min-width:44px;min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.tasks-row-main a:hover,.tasks-card a:hover{color:var(--color-primary-hover);text-decoration:underline}.tasks-row-main a:focus-visible,.tasks-card a:focus-visible{box-shadow:var(--focus-ring);border-radius:2px;outline:0}.task-detail-backdrop{z-index:90;background:#1c232b4d;justify-content:flex-end;display:flex;position:fixed;inset:0}.task-detail-drawer{border-left:1px solid var(--color-border);width:480px;max-width:100vw;height:100%;color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;position:relative;box-shadow:-14px 0 34px #1c232b2e}.task-detail-header{border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:12px 18px;display:flex}.task-detail-header p{font-size:13px;font-weight:700}.task-detail-header>button,.task-detail-header-actions button,.task-decision-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.task-detail-header-actions{gap:8px;display:flex}.task-detail-header-actions button:hover:not(:disabled),.task-decision-dialog header button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.task-detail-header-actions button.danger:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.task-detail-header button:disabled,.task-decision-dialog button:disabled{cursor:not-allowed;opacity:.5}.task-detail-save-state{min-height:18px;color:var(--color-muted);align-items:center;gap:4px;font-size:11px;display:inline-flex}.task-detail-save-state.saved{color:var(--color-primary-hover)}.task-detail-save-state.error{color:var(--color-danger)}.task-detail-save-state.saving svg{animation:.9s linear infinite task-detail-spin}.task-detail-body{flex:1;padding:18px;overflow-y:auto}.task-detail-body input,.task-detail-body textarea,.task-detail-body select,.task-decision-dialog textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.task-detail-body input:focus,.task-detail-body textarea:focus,.task-detail-body select:focus,.task-decision-dialog textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.task-detail-body input[aria-invalid=true],.task-detail-body textarea[aria-invalid=true],.task-detail-body select[aria-invalid=true]{border-color:var(--color-danger)}.task-detail-body [data-task-field][aria-invalid=true]:not(input):not(textarea):not(select){outline:2px solid var(--color-danger);outline-offset:4px}.task-detail-field-error{color:var(--color-danger);margin-top:6px;font-size:12px;line-height:18px;display:block}.task-detail-body input:disabled,.task-detail-body textarea:disabled,.task-detail-body select:disabled{color:var(--color-muted);background:var(--color-page);cursor:not-allowed}.task-detail-title-field{margin-bottom:13px;display:block}.task-detail-title-field textarea{resize:none;border-color:#0000;min-height:48px;padding:7px 9px;font-size:20px;font-weight:700;line-height:30px;overflow:hidden}.task-detail-title-field textarea:hover{border-color:var(--color-border)}.task-series-summary{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;margin-bottom:13px;padding:7px 9px;display:grid}.task-series-summary>svg{color:var(--color-primary)}.task-series-summary strong,.task-series-summary span{display:block}.task-series-summary strong{font-size:12px}.task-series-summary span{color:var(--color-muted);margin-top:1px;font-size:11px}.task-series-action-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.6;width:56px;min-height:36px;display:block}.task-series-summary button{border:1px solid var(--color-border);border-radius:var(--radius);min-width:56px;min-height:36px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;padding:0 9px;font-weight:700}.task-series-summary button:disabled{cursor:not-allowed;opacity:.5}.task-series-load-error{border-top:1px solid var(--color-border);color:var(--color-danger);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding-top:7px;font-size:11px;display:grid}.task-series-load-error>span{overflow-wrap:anywhere;min-width:0}.task-series-load-error small{color:var(--color-muted);display:block}.task-series-load-error button{justify-content:center;align-items:center;gap:4px;display:inline-flex}.task-detail-status-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.task-detail-body label>span,.task-detail-body legend,.task-decision-reason span{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.task-detail-reason{border-left:3px solid var(--color-warning);color:var(--color-muted);background:var(--color-page);overflow-wrap:anywhere;margin:-6px 0 16px;padding:9px 10px;font-size:12px}.task-detail-description{margin-bottom:18px;display:block}.task-detail-description textarea{resize:vertical;min-height:108px;line-height:22px}.task-detail-fields{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px;padding:17px 0;display:grid}.task-detail-option-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:100%;min-height:44px;display:block}.task-detail-tags{border:0;margin:17px 0 0;padding:0}.task-detail-tags>div,.task-detail-tag-skeleton{flex-wrap:wrap;gap:7px;display:flex}.task-detail-tags .task-detail-tag-skeleton i{border-radius:var(--radius);background:var(--color-border);opacity:.55;width:82px;min-height:44px;display:block}.task-detail-tags label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:inline-flex}.task-detail-tags label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.task-detail-tags input{opacity:0;width:1px;height:1px;position:absolute}.task-detail-tags i{border-radius:50%;width:8px;height:8px}.task-checklist{border-top:1px solid var(--color-border);margin-top:19px;padding-top:17px}.task-checklist>header{justify-content:space-between;align-items:center;gap:8px;min-height:28px;margin-bottom:8px;display:flex}.task-checklist h2{letter-spacing:0;font-size:15px;line-height:24px}.task-checklist-count-skeleton{vertical-align:middle;background:var(--color-border);opacity:.65;border-radius:3px;width:38px;height:14px;margin-left:6px;display:inline-block}.task-checklist .spin{color:var(--color-muted);animation:.9s linear infinite task-detail-spin}.task-checklist-items{gap:3px;display:grid}.task-checklist-row{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;display:grid}.task-checklist-toggle{cursor:pointer;place-items:center;width:36px;height:36px;display:grid}.task-detail-body .task-checklist-toggle input[type=checkbox]{width:17px;height:17px;min-height:17px;accent-color:var(--color-primary);cursor:pointer;margin:0;padding:0}.task-detail-body .task-checklist-content{background:0 0;border-color:#0000;min-height:44px;padding:6px 5px}.task-detail-body .task-checklist-content:hover:not(:disabled){border-color:var(--color-border)}.task-checklist-field-error{color:var(--color-danger);grid-column:2/-1;font-size:12px;line-height:18px}.task-checklist-row.done .task-checklist-content{color:var(--color-muted);text-decoration:line-through}.task-checklist-actions{grid-template-columns:repeat(3,36px);gap:8px;display:grid}.task-checklist-actions button,.task-checklist-create button,.task-checklist-load-error button,.task-checklist-error button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.task-checklist-actions button:hover:not(:disabled),.task-checklist-load-error button:hover,.task-checklist-error button:hover{color:var(--color-primary-hover);background:var(--color-primary-soft)}.task-checklist-actions button.danger:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.task-checklist-actions button:disabled{cursor:not-allowed;opacity:.35}.task-checklist-create{grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:8px;margin-top:9px;display:grid}.task-detail-body .task-checklist-create input{min-height:44px}.task-checklist-create button{width:36px;height:36px;color:var(--color-on-solid);background:var(--color-primary)}.task-checklist-create button:hover:not(:disabled){background:var(--color-primary-hover)}.task-checklist-create button:disabled{cursor:not-allowed;opacity:.5}.task-checklist-create>.task-checklist-field-error{grid-column:1/-1}.task-checklist-skeleton{gap:5px;display:grid}.task-checklist-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.6;height:38px}.task-checklist-load-error,.task-checklist-error{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:44px;color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:18px minmax(0,1fr) 36px;align-items:center;gap:8px;padding:4px 7px;font-size:11px;display:grid}.task-checklist-load-error small{overflow-wrap:anywhere;color:var(--color-muted);display:block}.task-checklist-limit{color:var(--color-muted);margin-top:6px;font-size:11px}.task-checklist-error{margin-top:8px}.task-dependencies{border-top:1px solid var(--color-border);margin-top:19px;padding-top:17px}.task-dependencies>header{justify-content:space-between;align-items:center;gap:8px;min-height:28px;margin-bottom:8px;display:flex}.task-dependencies h2{letter-spacing:0;font-size:15px;line-height:24px}.task-dependencies-count-skeleton{vertical-align:middle;background:var(--color-border);opacity:.65;border-radius:3px;width:38px;height:14px;margin-left:6px;display:inline-block}.task-dependencies .spin{color:var(--color-muted);animation:.9s linear infinite task-detail-spin}.task-dependency-list{margin:0 0 9px;padding:0;list-style:none}.task-dependency-list li{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:8px;min-height:52px;padding:5px 2px;display:grid}.task-dependency-list li>div{min-width:0}.task-dependency-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:20px;display:block;overflow:hidden}.task-dependency-list li.terminal strong{color:var(--color-muted);text-decoration:line-through}.task-dependency-list li span{color:var(--color-muted);align-items:center;gap:8px;margin-top:2px;font-size:11px;display:flex}.task-dependency-list i{background:var(--color-page);border-radius:3px;padding:1px 5px;font-style:normal}.task-dependency-list i[data-status=in_progress]{background:var(--color-info-soft)}.task-dependency-list i[data-status=waiting]{background:#fff5df}:root[data-color-mode=dark] .task-dependency-list i[data-status=waiting]{background:#3b2e14}.task-dependency-list time.overdue{color:var(--color-danger)}.task-dependency-list li>button,.task-dependency-create>button,.task-dependencies-load-error button,.task-dependency-error button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.task-dependency-list li>button:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.task-dependency-list li>button:disabled{cursor:not-allowed;opacity:.4}.task-dependency-create{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) 36px;align-items:center;gap:8px;display:grid}.task-dependency-search{border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:6px;min-height:44px;padding:0 8px;display:flex}.task-dependency-search>svg{color:var(--color-muted);flex:none}.task-detail-body .task-dependency-search input{background:0 0;border:0;min-width:0;min-height:42px;padding:5px 0}.task-detail-body .task-dependency-search input:focus{box-shadow:none}.task-dependency-selector{min-width:0;height:44px}.task-dependency-create select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 7px}.task-dependency-selector-skeleton{border-radius:var(--radius);background:var(--color-border);opacity:.6;width:100%;height:44px;display:block}.task-dependency-field-error{color:var(--color-danger);grid-column:2/-1;font-size:12px;line-height:18px}.task-dependency-create>button{width:36px;height:36px;color:var(--color-on-solid);background:var(--color-primary)}.task-dependency-create>button:hover:not(:disabled){background:var(--color-primary-hover)}.task-dependency-create>button:disabled{cursor:not-allowed;opacity:.5}.task-dependencies-skeleton{gap:5px;display:grid}.task-dependencies-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.6;height:44px}.task-dependencies-load-error,.task-dependency-error{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:44px;color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:18px minmax(0,1fr) 36px;align-items:center;gap:8px;padding:4px 7px;font-size:11px;display:grid}.task-dependencies-load-error>span{min-width:0}.task-dependencies-load-error small{color:var(--color-muted);overflow-wrap:anywhere;margin-top:2px;display:block}.task-dependency-error,.task-dependency-limit,.task-dependencies>.task-dependencies-load-error{margin-top:8px}.task-dependency-limit{color:var(--color-muted);font-size:11px}.task-reminders{border-top:1px solid var(--color-border);margin-top:19px;padding-top:17px}.task-reminders>header{justify-content:space-between;align-items:center;gap:8px;min-height:28px;display:flex}.task-reminders h2{letter-spacing:0;font-size:15px;line-height:24px}.task-reminders>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;place-items:center;display:grid}.task-reminders>header button:hover:not(:disabled){background:var(--color-primary-hover)}.task-reminders>header button:disabled{cursor:not-allowed;opacity:.45}.task-reminders-empty,.task-reminders-hint{color:var(--color-muted);margin-top:7px;font-size:11px}.task-reminders-hint{color:var(--color-warning-text)}.task-reminder-list{gap:7px;margin-top:8px;display:grid}.task-reminder-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;align-items:end;gap:8px;display:grid}.task-reminder-row label>span{color:var(--color-muted);margin-bottom:4px;font-size:10px;display:block}.task-detail-body .task-reminder-row select,.task-detail-body .task-reminder-row input{min-height:44px;padding:6px 8px;font-size:12px}.task-reminder-row>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.task-reminder-row>button:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.task-reminder-row>button:disabled{cursor:not-allowed;opacity:.4}.task-detail-error{border:1px solid var(--color-danger);border-radius:var(--radius);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:18px minmax(0,1fr) 36px;gap:8px;margin-top:16px;padding:10px;display:grid}.task-detail-error>svg{margin-top:2px}.task-detail-error strong,.task-detail-error span,.task-detail-error small{overflow-wrap:anywhere;display:block}.task-detail-error strong{font-size:12px}.task-detail-error span,.task-detail-error small{color:var(--color-muted);margin-top:2px;font-size:11px}.task-detail-error button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;place-items:center;width:36px;height:36px;display:grid}.task-detail-toast{border:1px solid var(--color-primary);border-radius:var(--radius);min-height:38px;color:var(--color-primary-hover);background:var(--color-primary-soft);align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:flex;position:absolute;bottom:18px;right:18px;box-shadow:0 8px 24px #1c232b24}.task-detail-skeleton{gap:13px;padding:18px;display:grid}.task-detail-skeleton span{border-radius:var(--radius);background:var(--color-border);opacity:.65;height:42px}.task-detail-skeleton span:first-child,.task-detail-skeleton span:nth-child(4){height:94px}.task-detail-load-error{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:30px;display:flex}.task-detail-load-error>svg{color:var(--color-danger)}.task-detail-load-error h2{letter-spacing:0;margin-top:9px;font-size:18px;line-height:27px}.task-detail-load-error p,.task-detail-load-error small{color:var(--color-muted)}.task-detail-load-error small{overflow-wrap:anywhere;font-size:11px}.task-detail-load-error button{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;align-items:center;gap:7px;margin-top:14px;padding:0 12px;font-weight:700;display:inline-flex}.task-decision-backdrop{z-index:110;background:#1c232b7a;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.task-decision-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(430px,100%);max-height:min(620px,100vh - 36px);color:var(--color-text);background:var(--color-surface);overflow-y:auto;box-shadow:0 20px 54px #1c232b3d}.task-decision-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 14px 10px 18px;display:flex}.task-decision-dialog h2{letter-spacing:0;font-size:17px;line-height:26px}.task-decision-dialog>div{color:var(--color-muted);padding:18px;font-size:13px;line-height:21px}.task-decision-dialog .task-conflict-error{color:var(--color-danger);margin-top:10px}.task-decision-dialog .task-conflict-error small{color:var(--color-muted);display:block}.task-decision-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.task-decision-reason textarea{resize:vertical;min-height:100px}.task-delete-policies{border:0;gap:8px;margin:14px 0 0;padding:0;display:grid}.task-delete-policies label{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);cursor:pointer;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px;display:grid}.task-delete-policies input{width:16px;height:16px;accent-color:var(--color-primary);margin-top:2px}.task-delete-policies strong,.task-delete-policies small{display:block}.task-delete-policies small{color:var(--color-muted);margin-top:2px;font-size:11px;line-height:18px}.task-detail-danger-button{border:1px solid var(--color-danger);border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);background:var(--color-danger);cursor:pointer;padding:0 14px;font-weight:700}.task-detail-danger-button:disabled{cursor:not-allowed;opacity:.5}.task-series-delete-scopes{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 14px;padding:0;display:grid}.task-series-delete-scopes legend{color:var(--color-muted);grid-column:1/-1;margin-bottom:2px;font-size:12px;font-weight:700}.task-series-delete-scopes label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:42px;color:var(--color-text);cursor:pointer;align-items:center;gap:6px;padding:0 8px;display:flex}.task-series-delete-scopes input{width:16px;height:16px;accent-color:var(--color-primary)}.task-series-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(610px,100%);max-height:min(760px,100vh - 36px);color:var(--color-text);background:var(--color-surface);flex-direction:column;display:flex;box-shadow:0 20px 54px #1c232b3d}.task-series-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:10px 14px 10px 18px;display:flex}.task-series-dialog header p{color:var(--color-muted);font-size:11px}.task-series-dialog h2{letter-spacing:0;font-size:18px;line-height:27px}.task-series-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;flex:none;place-items:center;display:grid}.task-series-dialog-body{flex:1;padding:18px;overflow-y:auto}.task-series-dialog-body>label{margin-bottom:14px;display:block}.task-series-dialog-body label>span,.task-series-dialog-body legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.task-series-dialog-body input,.task-series-dialog-body textarea,.task-series-dialog-body select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:8px 10px}.task-series-dialog-body textarea{resize:vertical;min-height:92px}.task-series-dialog-body input:focus,.task-series-dialog-body textarea:focus,.task-series-dialog-body select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.task-series-dialog-body input[aria-invalid=true],.task-series-dialog-body textarea[aria-invalid=true],.task-series-dialog-body select[aria-invalid=true]{border-color:var(--color-danger)}.task-series-dialog-body small{color:var(--color-danger);margin-top:5px;font-size:11px;line-height:17px;display:block}.task-series-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.task-series-scopes,.task-series-tags,.task-series-child-policy{border:0;margin:0 0 16px;padding:0}.task-series-scopes>div,.task-series-tags>div,.task-series-child-policy>div{flex-wrap:wrap;gap:7px;display:flex}.task-series-scopes label,.task-series-tags label,.task-series-child-policy label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:42px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:12px;display:inline-flex}.task-series-scopes label.selected,.task-series-tags label.selected,.task-series-child-policy label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.task-series-scopes input,.task-series-tags input,.task-series-child-policy input{opacity:0;width:1px;height:1px;min-height:1px;padding:0;position:absolute}.task-series-tags i{border-radius:50%;width:8px;height:8px}.task-series-dialog .task-recurrence-fields{margin-top:4px}.task-series-dialog .task-recurrence-fields fieldset{border:0;margin:0;padding:0}.task-series-dialog .task-recurrence-fields fieldset[aria-invalid=true],.task-series-dialog-body fieldset[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:4px}.task-series-dialog .task-recurrence-fields fieldset input{opacity:1;width:auto;height:auto;min-height:0;accent-color:var(--color-primary);padding:0;position:static}.task-series-dialog .task-recurrence-fields fieldset>div{flex-wrap:wrap;gap:7px;display:flex}.task-series-dialog .task-recurrence-fields fieldset label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:40px;color:var(--color-muted);cursor:pointer;align-items:center;gap:6px;margin:0;padding:0 9px;font-size:12px;display:inline-flex}.task-series-dialog .task-recurrence-fields fieldset label.selected{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft)}.task-series-dialog .task-recurrence-fields fieldset label>span{margin:0;display:inline}.task-series-dialog .task-recurrence-month{flex-wrap:wrap;gap:7px;display:flex}.task-series-dialog .task-recurrence-month legend{width:100%}.task-series-dialog .task-recurrence-month label:first-of-type{flex:210px}.task-series-dialog .task-recurrence-month label:first-of-type input[type=number]{width:86px;min-height:36px;margin-left:auto;padding:5px 7px}.task-series-error{border:1px solid var(--color-danger);border-radius:var(--radius);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px;display:grid}.task-series-error strong{font-size:12px;display:block}.task-series-error small{color:var(--color-muted)}.task-series-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.task-series-dialog>footer button{align-items:center;gap:6px;display:inline-flex}.task-series-dialog .spin{animation:.9s linear infinite task-detail-spin}.tasks-saved-view-dialog,.tasks-saved-view-delete-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(470px,100%);max-height:min(650px,100vh - 36px);color:var(--color-text);background:var(--color-surface);overflow-y:auto;box-shadow:0 20px 54px #1c232b3d}.tasks-saved-view-dialog>header,.tasks-saved-view-delete-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 14px 10px 18px;display:flex}.tasks-saved-view-dialog h2,.tasks-saved-view-delete-dialog h2{letter-spacing:0;font-size:17px;line-height:26px}.tasks-saved-view-dialog header button,.tasks-saved-view-delete-dialog header button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.tasks-saved-view-dialog header button:hover:not(:disabled),.tasks-saved-view-delete-dialog header button:hover:not(:disabled){color:var(--color-primary-hover);background:var(--color-primary-soft)}.tasks-saved-view-dialog>div,.tasks-saved-view-delete-dialog>div{padding:18px}.tasks-saved-view-dialog>div>label{margin-bottom:14px;display:block}.tasks-saved-view-dialog label>span,.tasks-saved-view-dialog legend{color:var(--color-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.tasks-saved-view-dialog input[type=text],.tasks-saved-view-dialog>div>label>input:not([type]),.tasks-saved-view-dialog select{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:7px 9px}.tasks-saved-view-dialog input:focus,.tasks-saved-view-dialog select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.tasks-saved-view-dialog input[aria-invalid=true],.tasks-saved-view-dialog select[aria-invalid=true]{border-color:var(--color-danger)}.tasks-saved-view-dialog fieldset{border:0;margin:0;padding:0}.tasks-saved-view-dialog fieldset[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:4px}.tasks-saved-view-dialog fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.tasks-saved-view-dialog fieldset label{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);align-items:center;gap:7px;padding:0 9px;font-size:12px;display:flex}.tasks-saved-view-dialog fieldset input,.tasks-saved-view-replace input{width:16px;height:16px;accent-color:var(--color-primary)}.tasks-saved-view-dialog .tasks-saved-view-replace{min-height:44px;color:var(--color-muted);align-items:center;gap:7px;margin:14px 0 0;font-size:12px;display:flex}.tasks-saved-view-dialog>footer,.tasks-saved-view-delete-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.tasks-saved-view-delete{border-radius:var(--radius);min-height:44px;color:var(--color-danger);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-right:auto;padding:0 10px;display:inline-flex}.tasks-saved-view-delete:hover:not(:disabled){background:var(--color-danger-soft)}.tasks-saved-view-delete-dialog p{color:var(--color-muted);font-size:13px;line-height:21px}@keyframes task-detail-spin{to{transform:rotate(360deg)}}@media (width<=1080px){.tasks-toolbar{grid-template-columns:minmax(190px,1fr) repeat(2,minmax(130px,.6fr)) auto}.tasks-toolbar>label:nth-of-type(4),.tasks-toolbar>label:nth-of-type(5){grid-row:2}.tasks-board{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=767px){.tasks-heading h1{font-size:23px;line-height:32px}.tasks-heading .tasks-primary-button{width:44px;padding:0;font-size:0}.tasks-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.tasks-search{grid-column:span 2}.tasks-view-toggle{grid-column:span 2;justify-self:end}.tasks-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tasks-filter-row>label,.tasks-filter-row>label:nth-child(3){width:auto}.tasks-clear-button{grid-column:span 2;justify-content:center;margin-left:0}.tasks-row{grid-template-columns:44px minmax(0,1fr);padding-left:4px;padding-right:4px}.tasks-row>.tasks-date{grid-column:2;margin-top:-6px}.tasks-row>.tasks-row-details{grid-column:2;align-items:flex-start;margin-top:-5px}.tasks-board{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.tasks-board-column{scroll-snap-align:start;flex:none;width:min(82vw,310px)}.tasks-skeleton.board{grid-template-columns:1fr}.tasks-create-dialog>header{padding:14px 16px}.tasks-create-body{padding:16px}.tasks-create-dialog>footer{padding:12px 16px}.tasks-create-grid{grid-template-columns:1fr;gap:0}.task-recurrence-grid{grid-template-columns:1fr}.tasks-inline-error{flex-wrap:wrap;align-items:flex-start}.tasks-inline-error>small{width:calc(100% - 34px);margin-left:24px}.task-detail-backdrop{background:var(--color-surface)}.task-detail-drawer{width:100vw;box-shadow:none;border-left:0}.task-detail-header{min-height:62px;padding:10px 12px}.task-detail-body{padding:16px}.task-detail-title-field textarea{font-size:18px;line-height:28px}.task-detail-status-row,.task-detail-fields{grid-template-columns:1fr}.tasks-status-action,.tasks-pagination button,.tasks-saved-view-error button,.tasks-inline-error button,.tasks-create-dialog header button,.task-detail-header>button,.task-detail-header-actions button,.task-decision-dialog header button,.tasks-saved-view-dialog header button,.tasks-saved-view-delete-dialog header button,.task-checklist-toggle,.task-checklist-actions button,.task-checklist-create button,.task-checklist-load-error button,.task-checklist-error button,.task-dependency-list li>button,.task-dependency-create>button,.task-dependencies-load-error button,.task-dependency-error button,.task-reminders>header button,.task-reminder-row>button,.task-detail-error button{width:44px;height:44px}.task-checklist-row{grid-template-columns:44px minmax(0,1fr) auto}.task-checklist-actions{grid-template-columns:repeat(3,44px)}.task-checklist-create,.task-dependency-list li,.task-dependency-create{grid-template-columns:minmax(0,1fr) 44px}.task-dependency-search{grid-column:span 2}.task-reminder-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}.task-detail-toast{justify-content:center;bottom:12px;left:12px;right:12px}.task-decision-backdrop{align-items:end;padding:0}.task-decision-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:88vh}.task-decision-dialog>footer{background:var(--color-surface);position:sticky;bottom:0}.task-series-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:92vh}.task-series-dialog>footer{background:var(--color-surface);position:sticky;bottom:0}.task-series-template-grid,.task-series-delete-scopes{grid-template-columns:1fr}.tasks-saved-view-dialog,.tasks-saved-view-delete-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:88vh}.tasks-saved-view-dialog>footer,.tasks-saved-view-delete-dialog>footer{background:var(--color-surface);position:sticky;bottom:0}}.trash-page{--trash-purple:#7058a8;width:100%;max-width:1040px;min-height:540px;margin:0 auto}.trash-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.trash-heading h1{letter-spacing:0;font-size:26px;line-height:36px}.trash-heading p{color:var(--color-muted);margin-top:3px;font-size:13px}.trash-empty-all{border:1px solid color-mix(in srgb, var(--color-danger) 45%, var(--color-border));border-radius:var(--radius);min-height:38px;color:var(--color-danger);background:var(--color-surface);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-weight:700;display:inline-flex}.trash-empty-all:hover:not(:disabled){background:var(--color-danger-soft)}.trash-empty-all:disabled{cursor:not-allowed;opacity:.55}.trash-toolbar{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(200px,1fr) auto auto auto auto;align-items:end;gap:10px;padding-bottom:14px;display:grid}.trash-toolbar>label{min-width:0;color:var(--color-muted);gap:5px;font-size:11px;display:grid}.trash-toolbar select,.trash-toolbar input,.trash-search{border:1px solid var(--color-border);border-radius:var(--radius);height:44px;color:var(--color-text);background:var(--color-surface)}.trash-toolbar select,.trash-toolbar>label input{min-width:128px;font:inherit;padding:0 9px}.trash-toolbar select:focus,.trash-toolbar input:focus,.trash-search:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.trash-search{min-width:0;color:var(--color-muted);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:5px;padding-left:10px;display:grid}.trash-search input{min-width:0;height:44px;font:inherit;background:0 0;border:0;padding:0}.trash-search input:focus{box-shadow:none}.trash-search button{border-left:1px solid var(--color-border);height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;padding:0 11px;font-weight:700}.trash-clear-filters{border:1px solid var(--color-border);border-radius:var(--radius);height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:650;display:inline-flex}.trash-clear-filters:disabled{cursor:not-allowed;opacity:.5}.trash-selection-toolbar{border-bottom:1px solid var(--color-border);min-height:48px;color:var(--color-muted);align-items:center;gap:12px;font-size:12px;display:flex}.trash-selection-toolbar label{color:var(--color-text);cursor:pointer;align-items:center;gap:7px;font-weight:700;display:inline-flex}.trash-selection-toolbar input,.trash-row-select input{width:17px;height:17px;accent-color:var(--color-primary)}.trash-selection-toolbar>button{border:1px solid color-mix(in srgb, var(--color-danger) 45%, var(--color-border));border-radius:var(--radius);min-height:36px;color:var(--color-danger);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:6px;margin-left:auto;padding:0 10px;font-weight:700;display:inline-flex}.trash-selection-toolbar>button:hover:not(:disabled){background:var(--color-danger-soft)}.trash-selection-toolbar>button:disabled{cursor:not-allowed;opacity:.5}.trash-content{min-height:360px}.trash-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:24px 38px minmax(0,1fr) 88px auto;align-items:center;gap:12px;min-width:0;min-height:82px;padding:10px 0;display:grid}.trash-row-select{cursor:pointer;place-items:center;width:24px;height:44px;display:grid}.trash-type-icon{width:36px;height:36px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.trash-type-icon[data-type=goal],.trash-type-icon[data-type=key_result],.trash-type-icon[data-type=review]{color:var(--trash-purple);background:color-mix(in srgb, var(--trash-purple) 12%, var(--color-surface))}.trash-type-icon[data-type=event],.trash-type-icon[data-type=note],.trash-type-icon[data-type=note_folder]{color:var(--color-info);background:color-mix(in srgb, var(--color-info) 12%, var(--color-surface))}.trash-type-icon[data-type=finance_account],.trash-type-icon[data-type=contact],.trash-type-icon[data-type=tag]{color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.trash-type-icon[data-type=health_daily],.trash-type-icon[data-type=health_exercise]{color:var(--color-danger);background:var(--color-danger-soft)}.trash-copy{gap:4px;min-width:0;display:grid}.trash-copy>span{align-items:center;gap:8px;min-width:0;display:flex}.trash-copy strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:21px;overflow:hidden}.trash-copy i{border:1px solid var(--color-border);color:var(--color-muted);border-radius:4px;flex:none;padding:2px 6px;font-size:10px;font-style:normal;line-height:15px}.trash-copy small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:17px;overflow:hidden}.trash-days{color:var(--color-muted);text-align:right;white-space:nowrap;font-size:12px;font-weight:700}.trash-days[data-urgent=true]{color:var(--color-danger)}.trash-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.trash-actions button{border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.trash-actions button:last-child{color:var(--color-danger)}.trash-actions button:hover:not(:disabled){background:var(--color-page)}.trash-actions button:disabled{cursor:not-allowed;opacity:.5}.trash-empty,.trash-error{min-height:340px;color:var(--color-muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid}.trash-empty h2{color:var(--color-text);font-size:16px;line-height:24px}.trash-empty button,.trash-error button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.trash-error>svg{color:var(--color-danger)}.trash-skeleton{display:grid}.trash-skeleton span{border-bottom:1px solid var(--color-border);background:linear-gradient(90deg, var(--color-surface), var(--color-page), var(--color-surface));background-size:220% 100%;height:82px;animation:1.2s ease-in-out infinite trash-loading}.trash-pagination{justify-content:center;align-items:center;gap:12px;min-height:52px;display:flex}.trash-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.trash-pagination button:disabled{color:var(--color-muted);cursor:not-allowed;opacity:.55}.trash-pagination span{min-width:64px;color:var(--color-muted);text-align:center;font-size:12px}.trash-dialog-backdrop{z-index:90;background:#161c227a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.trash-dialog{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;width:min(100%,480px);max-height:min(620px,100vh - 40px);overflow:auto;box-shadow:0 22px 50px #141b223d}.trash-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;min-height:60px;padding:0 18px;display:flex}.trash-dialog>header h2{letter-spacing:0;font-size:17px;line-height:24px}.trash-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.trash-dialog>header button:hover:not(:disabled){background:var(--color-page)}.trash-dialog-body{gap:16px;padding:20px 18px;display:grid}.trash-dialog-body>p,.trash-delete-warning p{color:var(--color-text);font-size:13px;line-height:21px}.trash-delete-warning{border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft);grid-template-columns:22px minmax(0,1fr);gap:10px;padding:12px;display:grid}.trash-dialog-field{color:var(--color-muted);gap:7px;font-size:12px;display:grid}.trash-dialog-field strong{color:var(--color-text)}.trash-dialog-field input{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:0 10px}.trash-dialog-field input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.trash-offline-note,.trash-dialog-error{border-left:3px solid var(--color-warning);color:var(--color-muted);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));padding:9px 10px;font-size:12px}.trash-dialog-error{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.trash-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:8px;min-height:62px;padding:10px 18px;display:flex}.trash-dialog>footer button{border:1px solid var(--color-border);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 13px;font-weight:700}.trash-dialog>footer button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.trash-dialog>footer button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.trash-dialog>footer button:disabled,.trash-dialog>header button:disabled{cursor:not-allowed;opacity:.55}.trash-toast{z-index:75;top:calc(var(--app-offline-height,0px) + 76px);border:1px solid color-mix(in srgb, var(--color-success) 30%, var(--color-border));border-radius:var(--radius);min-height:42px;color:var(--color-success-text);background:var(--color-surface);align-items:center;gap:8px;padding:0 14px;font-weight:700;display:flex;position:fixed;right:24px;box-shadow:0 10px 24px #1c232b24}@keyframes trash-loading{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.trash-skeleton span{animation:none}}@media (width<=900px){.trash-toolbar{grid-template-columns:minmax(160px,1fr) repeat(2,minmax(124px,1fr)) auto}.trash-search{grid-column:1/-1}.trash-row{grid-template-columns:24px 38px minmax(0,1fr) auto}.trash-days{text-align:left;grid-column:3}.trash-actions{grid-area:1/4/3}}@media (width<=640px){.trash-heading{margin-bottom:16px}.trash-heading h1{font-size:23px;line-height:32px}.trash-empty-all{min-height:44px}.trash-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.trash-search,.trash-toolbar>label:first-of-type{grid-column:1/-1}.trash-toolbar select,.trash-toolbar>label input{width:100%;min-width:0}.trash-clear-filters{grid-column:1/-1}.trash-row{grid-template-columns:24px 36px minmax(0,1fr);gap:9px;padding:12px 0}.trash-type-icon{width:34px;height:34px}.trash-copy small{white-space:normal;overflow:visible}.trash-days{grid-column:3}.trash-actions{grid-area:auto/2/auto/-1;justify-content:flex-end}.trash-selection-toolbar{flex-wrap:wrap;padding:8px 0}.trash-selection-toolbar>button{width:100%;min-height:44px}.trash-actions button{min-height:44px}.trash-pagination button,.trash-dialog>header button{width:44px;height:44px}.trash-dialog-backdrop{align-items:end;padding:0}.trash-dialog{border-width:1px 0 0;border-radius:8px 8px 0 0;width:100%;max-height:calc(100vh - 24px)}.trash-dialog>footer{flex-wrap:wrap}.trash-dialog>footer button{flex:auto}.trash-toast{top:calc(var(--app-offline-height,0px) + 68px);justify-content:center;left:16px;right:16px}}.settings-layout{background:var(--color-surface);grid-template-columns:220px minmax(0,1fr);min-height:calc(100dvh - 64px);margin:-24px;display:grid}.settings-sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);min-width:0;padding:36px 18px}.settings-sidebar-title{padding:0 10px 14px;font-size:18px;line-height:26px;display:block}.settings-sidebar nav{gap:3px;display:grid}.settings-sidebar nav a{border-radius:var(--radius);min-height:44px;color:var(--color-text);align-items:center;gap:10px;padding:0 10px;text-decoration:none;display:flex}.settings-sidebar nav a svg{color:var(--color-muted);flex:none}.settings-sidebar nav a:hover{background:var(--color-page)}.settings-sidebar nav a.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.settings-sidebar nav a.active svg{color:currentColor}.settings-content{min-width:0}.settings-page.audit-page{width:100%;max-width:none}.audit-page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.audit-page-header p{color:var(--color-muted);margin:5px 0 0;font-size:13px}.audit-page-header>span{color:var(--color-muted);flex:none;padding-top:7px;font-size:12px}.audit-total-skeleton>span{width:64px;height:14px}.audit-filters{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:10px;padding:18px 0 20px;display:grid}.audit-filters label{min-width:0;color:var(--color-muted);gap:6px;font-size:12px;font-weight:700;display:grid}.audit-filters input,.audit-filters select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-width:0;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 10px}.audit-filter-actions{gap:6px;display:flex}.audit-filter-actions button,.audit-state button,.audit-pagination button{border:1px solid var(--color-border-strong);border-radius:var(--radius);height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.audit-filter-actions button:first-child{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.audit-filter-actions button:disabled,.audit-pagination button:disabled{cursor:not-allowed;opacity:.5}.audit-state{min-height:220px;color:var(--color-muted);text-align:center;align-content:center;place-items:center;gap:9px;display:grid}.audit-state-error svg{color:var(--color-danger)}.audit-state-error span{max-width:520px;font-size:12px}.audit-state button{margin-top:5px}.audit-state button.audit-state-primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.audit-table-wrap{border-bottom:1px solid var(--color-border);overflow-x:auto}.audit-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:960px}.audit-table th{color:var(--color-muted);text-align:left;padding:12px 10px;font-size:11px}.audit-table th:first-child{width:164px}.audit-table th:nth-child(2){width:190px}.audit-table th:nth-child(3){width:185px}.audit-table th:nth-child(4){width:160px}.audit-table td{border-top:1px solid var(--color-border);vertical-align:top;height:76px;padding:11px 10px;font-size:12px}.audit-table td>strong,.audit-table td>code,.audit-table td>span{display:block}.audit-table code{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;overflow:hidden}.audit-table td>strong+code,.audit-table td>code+span,.audit-table td>span+code{margin-top:5px}.audit-table-skeleton td>span{width:88%;height:12px}.audit-table-skeleton td>span+span{width:58%;margin-top:8px}.audit-table-skeleton td:nth-child(5)>span:first-child{width:100%}.audit-result{border-radius:var(--radius);width:fit-content;margin-top:6px;padding:2px 7px;font-size:11px;font-weight:700}.audit-result.success{color:var(--color-primary-hover);background:var(--color-primary-soft)}.audit-result.failure{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.audit-muted{color:var(--color-muted);font-size:11px}.audit-fields{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.audit-fields span{border-radius:var(--radius);max-width:100%;color:var(--color-muted);background:var(--color-page);text-overflow:ellipsis;white-space:nowrap;padding:2px 6px;font-size:10px;overflow:hidden}.audit-pagination{justify-content:flex-end;align-items:center;gap:10px;padding:16px 0;display:flex}.audit-pagination button{width:36px;height:36px;padding:0}.audit-pagination span{min-width:64px;color:var(--color-muted);text-align:center;font-size:12px}.audit-pagination-skeleton>span{width:36px;min-width:36px;height:36px}.audit-pagination-skeleton>span:nth-child(2){width:64px;min-width:64px;height:12px}.taxonomy-create-section .settings-section-fields,.taxonomy-list-section .settings-section-fields{gap:12px}.taxonomy-form{gap:16px;min-width:0;display:grid}.taxonomy-form>label,.taxonomy-dialog-form>label{gap:7px;font-size:13px;font-weight:700;display:grid}.taxonomy-form input[type=text],.taxonomy-form>label input,.taxonomy-form>label select,.taxonomy-dialog-form select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 11px}.taxonomy-form fieldset{border:0;margin:0;padding:0}.taxonomy-form>label>input[aria-invalid=true]{border-color:var(--color-danger)}.taxonomy-form>fieldset[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:4px}.taxonomy-field-error{overflow-wrap:anywhere;color:var(--color-danger);margin-top:6px;font-size:11px;line-height:18px;display:block}.taxonomy-form legend{margin-bottom:8px;font-size:13px;font-weight:700}.taxonomy-finance-form [aria-invalid=true]{border-color:var(--color-danger)}.taxonomy-finance-form fieldset[aria-invalid=true]{border:1px solid var(--color-danger);border-radius:var(--radius);padding:8px}.taxonomy-finance-form fieldset[aria-invalid=true]:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.taxonomy-finance-form>label>small,.taxonomy-finance-form>fieldset>small,.taxonomy-dialog-form>label>small{overflow-wrap:anywhere;color:var(--color-danger);font-size:11px}.taxonomy-dialog-form select[aria-invalid=true]{border-color:var(--color-danger)}.taxonomy-color-swatches{grid-template-columns:repeat(6,44px);gap:8px;display:grid}.taxonomy-color-swatches label{place-items:center;width:44px;height:44px;display:grid;position:relative}.taxonomy-color-swatches input{opacity:0;position:absolute}.taxonomy-color-swatches i{border:3px solid var(--color-surface);border-radius:50%;width:30px;height:30px;display:block}.taxonomy-color-swatches input:checked+i{box-shadow:0 0 0 2px var(--color-text)}.taxonomy-icon-options{flex-wrap:wrap;gap:8px;display:flex}.taxonomy-icon-options label{place-items:center;width:44px;height:44px;display:grid;position:relative}.taxonomy-icon-options input{opacity:0;position:absolute}.taxonomy-icon-options span{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:34px;height:34px;color:var(--color-muted);place-items:center;display:grid}.taxonomy-icon-options input:checked+span{border-color:var(--color-primary);color:var(--color-primary-hover);background:var(--color-primary-soft);box-shadow:var(--focus-ring)}.taxonomy-segmented{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);grid-auto-flow:column;width:fit-content;padding:3px;display:inline-grid}.taxonomy-segmented button{border-radius:var(--radius);min-width:64px;height:44px;color:var(--color-text);background:0 0;padding:0 10px;font-size:12px;font-weight:700}.taxonomy-segmented button[aria-pressed=true]{color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-sm)}.taxonomy-notice{border:1px solid var(--color-primary);border-radius:var(--radius);color:var(--color-primary-hover);background:var(--color-primary-soft);padding:9px 11px;font-size:12px}.taxonomy-inline-state{min-height:72px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.taxonomy-inline-state button{align-items:center;gap:5px;min-height:44px;padding:0 8px;font-weight:700;display:inline-flex}.taxonomy-finance-form>label select{width:100%}.taxonomy-finance-icons{max-width:294px}.taxonomy-primary,.taxonomy-danger{border-radius:var(--radius);min-height:44px;color:var(--color-on-solid);justify-content:center;justify-self:start;align-items:center;gap:7px;padding:0 13px;font-weight:700;display:inline-flex}.taxonomy-primary{background:var(--color-primary)}.taxonomy-danger{background:var(--color-danger)}.taxonomy-primary:disabled,.taxonomy-danger:disabled{cursor:not-allowed;opacity:.62}.taxonomy-error{color:var(--color-danger);margin:0;font-size:12px}.taxonomy-error small{display:block}.taxonomy-list{border-top:1px solid var(--color-border)}.settings-section-fields.taxonomy-list-skeleton{gap:1px}.taxonomy-list-skeleton>span{height:54px}.taxonomy-area-sections-skeleton{display:contents}.taxonomy-row{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;min-width:0;min-height:54px;display:flex}.taxonomy-row>i{border-radius:50%;flex:none;width:12px;height:12px}.taxonomy-row>strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.taxonomy-row>small{color:var(--color-muted);flex:none;font-size:11px}.taxonomy-area-icon{border-radius:var(--radius);background:var(--color-page);flex:none;place-items:center;width:30px;height:30px;display:grid}.taxonomy-finance-row[data-child=true]{padding-left:24px}.taxonomy-finance-row>button:last-child{color:var(--color-muted)}.taxonomy-row>button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;flex:none;place-items:center;display:grid}.taxonomy-row>button:hover:not(:disabled){color:var(--color-text);background:var(--color-page)}.taxonomy-row>button:last-child{color:var(--color-danger)}.taxonomy-empty{min-height:140px;color:var(--color-muted);align-content:center;place-items:center;gap:7px;display:grid}.taxonomy-empty p{margin:0;font-size:12px}.taxonomy-dialog-backdrop{z-index:100;background:#141b2275;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.taxonomy-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(480px,100%);max-height:calc(100dvh - 40px);color:var(--color-text);background:var(--color-surface);overflow:hidden;box-shadow:0 20px 60px #141b2240}.taxonomy-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:56px;padding:0 16px;display:flex}.taxonomy-dialog>header h2{letter-spacing:0;margin:0;font-size:17px}.taxonomy-dialog>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.taxonomy-dialog>div{max-height:calc(100dvh - 100px);padding:18px;overflow-y:auto}.taxonomy-dialog .taxonomy-form-edit>.taxonomy-primary{justify-self:end}.taxonomy-dialog-form{gap:16px;display:grid}.taxonomy-dialog-form>p{color:var(--color-muted);margin:0;font-size:12px;line-height:18px}.taxonomy-dialog-form>footer{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.taxonomy-dialog-form>footer>button:not(.taxonomy-primary):not(.taxonomy-danger){border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);padding:0 13px;font-weight:700}.settings-page{width:min(820px,100%);padding:44px 56px 80px}.settings-page-header{border-bottom:1px solid var(--color-border);padding-bottom:28px}.settings-page-header h1{letter-spacing:0;margin:0;font-size:28px;line-height:36px}.settings-page-header>p{color:var(--color-muted);margin-top:6px;font-size:13px}.settings-section{border-bottom:1px solid var(--color-border);grid-template-columns:168px minmax(0,1fr);gap:32px;padding:32px 0;display:grid}.settings-section-heading h2{letter-spacing:0;margin:0;font-size:15px;line-height:22px}.settings-section-fields{gap:24px;min-width:0;display:grid}.settings-avatar-field{align-items:center;gap:18px;min-width:0;display:flex}.settings-avatar-preview{border:1px solid var(--color-border);width:88px;height:88px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;flex:0 0 88px;place-items:center;font-size:28px;font-weight:700;display:grid;overflow:hidden}.settings-avatar-image{object-fit:cover;width:100%;height:100%;display:block}.settings-avatar-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.settings-avatar-actions>input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.settings-avatar-actions>button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);justify-content:center;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.settings-avatar-actions>button:disabled{cursor:not-allowed;opacity:.6}.settings-avatar-actions>.settings-avatar-remove{color:var(--color-danger)}.settings-avatar-actions>.settings-field-error{width:100%}.settings-avatar-actions>.settings-field-error small{display:block}.settings-page-skeleton span{background:var(--color-border);opacity:.65;border-radius:3px;display:block}.settings-page-skeleton-title{width:112px;height:32px}.settings-page-skeleton-heading{width:64px;height:20px}.settings-profile-skeleton .settings-profile-skeleton-avatar{border-radius:50%;flex:0 0 88px;width:88px;height:88px}.settings-profile-skeleton-action{width:112px;height:44px}.settings-page-skeleton-label{width:72px;height:20px}.settings-page-skeleton-field{gap:8px;display:grid}.settings-page-skeleton-input,.settings-page-skeleton-textarea{width:100%;height:44px}.settings-page-skeleton-textarea{height:120px}.notification-settings-skeleton-description{width:min(320px,70%);height:14px;margin-top:8px}.notification-settings-skeleton-channels,.notification-settings-skeleton-table{gap:1px}.notification-settings-skeleton-channels>span{height:72px}.notification-settings-skeleton-table>span{height:52px}.settings-field{min-width:0}.settings-field>label,.settings-label-row label{margin-bottom:8px;font-size:13px;font-weight:650;line-height:20px;display:block}.settings-label-row{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.settings-label-row>span{color:var(--color-muted);font-size:12px}.settings-field input,.settings-field textarea,.settings-field select{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;color:var(--color-text);background:var(--color-surface)}.settings-field input,.settings-field select{height:44px;padding:0 12px}.settings-field textarea{resize:vertical;min-height:116px;padding:10px 12px}.settings-field input:hover,.settings-field textarea:hover,.settings-field select:hover{border-color:#87939e}.settings-field input:focus,.settings-field textarea:focus,.settings-field select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.settings-field input[aria-invalid=true],.settings-field textarea[aria-invalid=true],.settings-field select[aria-invalid=true]{border-color:var(--color-danger)}.settings-field-error,.settings-form-error,.settings-save-note{margin-top:6px;font-size:12px;line-height:18px}.settings-field input[readonly]{color:var(--color-muted);background:var(--color-page)}.settings-fieldset{border:0;min-width:0;margin:0;padding:0}.settings-fieldset>legend{margin-bottom:8px;padding:0;font-size:13px;font-weight:650;line-height:20px}.settings-segmented{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-page);gap:4px;padding:4px;display:grid}.settings-segmented-two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-segmented-three{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-segmented label{cursor:pointer;min-width:0}.settings-segmented input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.settings-segmented span{text-align:center;border-radius:4px;justify-content:center;align-items:center;min-height:44px;padding:4px 8px;font-weight:650;display:flex}.settings-segmented input:checked+span{color:var(--color-on-solid);background:var(--color-primary)}.settings-segmented input:focus-visible+span{box-shadow:var(--focus-ring)}.settings-workdays{grid-template-columns:repeat(7,minmax(40px,1fr));gap:7px;display:grid}.settings-workdays button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-width:0;height:44px;color:var(--color-muted);background:var(--color-surface);cursor:pointer}.settings-workdays button[aria-pressed=true]{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary);font-weight:700}.settings-time-range{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px;display:grid}.settings-time-range>span{height:44px;color:var(--color-muted);place-items:center;display:grid}.settings-time-range label>span{color:var(--color-muted);margin-bottom:6px;font-size:12px;display:block}.settings-time-range input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 10px}.settings-time-range input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.settings-time-range input[aria-invalid=true]{border-color:var(--color-danger)}.settings-number-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settings-number-input{position:relative}.settings-number-input input{padding-right:54px}.settings-number-input>span{height:44px;color:var(--color-muted);pointer-events:none;align-items:center;display:flex;position:absolute;top:0;right:12px}.settings-switch-row{cursor:pointer;align-items:center;gap:10px;width:fit-content;min-height:44px;font-weight:650;display:flex}.settings-switch-row>input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.settings-switch-track{border:1px solid var(--color-border-strong);background:var(--color-border);border-radius:12px;flex:none;align-items:center;width:42px;height:24px;padding:3px;transition:background .14s ease-out,border-color .14s ease-out;display:flex}.settings-switch-track>span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .14s ease-out;box-shadow:0 1px 3px #1c232b42}.settings-switch-row>input:checked+.settings-switch-track{border-color:var(--color-primary);background:var(--color-primary)}.settings-switch-row>input:checked+.settings-switch-track>span{transform:translate(18px)}.settings-switch-row>input:focus-visible+.settings-switch-track{box-shadow:var(--focus-ring)}.settings-field-error,.settings-form-error{color:var(--color-danger)}.settings-form-error small,.settings-dialog-error small{display:block}.settings-save-note{color:var(--color-warning-text)}.settings-onboarding-guide-entry{min-width:0}.settings-onboarding-guide-entry>p{color:var(--color-muted);font-size:13px;line-height:20px}.settings-onboarding-guide-entry>button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;align-items:center;gap:8px;margin-top:14px;padding:0 14px;font-weight:650;display:inline-flex}.settings-onboarding-guide-entry>button:hover{border-color:var(--color-primary);color:var(--color-primary-hover)}.settings-save-row{justify-content:flex-end;align-items:flex-start;gap:24px;min-height:72px;padding-top:24px;display:flex}.settings-save-row>div{flex:1;min-width:0}.settings-save-button{border-radius:var(--radius);min-width:128px;height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;display:inline-flex}.settings-save-button:hover:not(:disabled){background:var(--color-primary-hover)}.settings-save-button:disabled{opacity:.56}.settings-spinner{animation:.85s linear infinite settings-spin}.settings-toast{z-index:100;top:calc(var(--app-offline-height,0px) + 80px);border-radius:var(--radius);color:#155f3d;background:#effaf4;border:1px solid #9ccdb8;align-items:center;gap:9px;min-height:44px;padding:10px 14px;font-weight:650;display:flex;position:fixed;right:24px;box-shadow:0 10px 24px #1c232b24}:root[data-color-mode=dark] .settings-toast{color:#93ddb9;background:#163226;border-color:#356c56}.settings-dialog-backdrop{z-index:110;background:#12181b7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.settings-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(440px,100%);color:var(--color-text);background:var(--color-surface);padding:24px;box-shadow:0 20px 56px #10181d3d}.settings-dialog-icon{width:40px;height:40px;color:var(--color-warning-text);background:#fff5df;border-radius:50%;place-items:center;display:grid}:root[data-color-mode=dark] .settings-dialog-icon{background:#392d17}.settings-dialog h2{letter-spacing:0;margin:16px 0 0;font-size:20px;line-height:28px}.settings-dialog>p{color:var(--color-muted);margin-top:8px}.settings-dialog .settings-dialog-error{color:var(--color-danger)}.settings-dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.settings-dialog-actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 14px;font-weight:650}.settings-dialog-actions button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.settings-dialog-actions button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.settings-dialog-actions button:disabled{opacity:.56}.settings-onboarding-guide-dialog{width:min(540px,100%)}.settings-onboarding-guide-dialog>ol{margin:20px 0 0;padding-left:24px}.settings-onboarding-guide-dialog>ol li{border-bottom:1px solid var(--color-border);padding:10px 0}.settings-onboarding-guide-dialog>ol strong,.settings-onboarding-guide-dialog>ol span{display:block}.settings-onboarding-guide-dialog>ol span{color:var(--color-muted);margin-top:3px;font-size:13px;line-height:20px}.settings-onboarding-guide-dialog>p{color:var(--color-muted);margin-top:16px;font-size:13px;line-height:20px}.settings-page-loading{min-height:320px;color:var(--color-muted);justify-content:center;align-items:center;gap:9px;display:flex}.settings-page-state{text-align:center;width:min(460px,100% - 32px);margin:72px auto}.settings-page-state>span{width:44px;height:44px;color:var(--color-danger);background:var(--color-danger-soft);border-radius:50%;place-items:center;margin:0 auto;display:grid}.settings-page-state h1{letter-spacing:0;margin-top:16px;font-size:20px;line-height:28px}.settings-page-state p,.settings-page-state small{color:var(--color-muted);margin-top:6px;display:block}.settings-page-state button{border-radius:var(--radius);min-width:96px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;font-weight:700}.settings-page-state>button{margin-top:20px}.settings-page-state-actions{justify-content:center;gap:8px;margin-top:20px;display:flex}.settings-page-state-actions button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.settings-page-state-actions .settings-page-state-secondary{border:1px solid var(--color-border-strong);color:var(--color-text);background:var(--color-surface)}.notification-settings-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.notification-channel-list{gap:12px}.notification-channel-row{border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:64px;padding:12px;display:grid}.notification-channel-icon{width:36px;height:36px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.notification-channel-row strong,.notification-preference-name strong{font-size:13px;line-height:20px;display:block}.notification-channel-row p,.notification-review-times>p,.notification-preference-name small{color:var(--color-muted);margin:2px 0 0;font-size:12px;line-height:18px}.notification-push-row small{color:var(--color-muted);margin-top:3px;font-size:11px;line-height:17px;display:block}.notification-push-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.notification-push-actions>button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-width:48px;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;padding:0 9px;font-size:12px;font-weight:650}.notification-push-actions>button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary-hover)}.notification-push-actions>button:disabled{opacity:.56}.notification-channel-row .settings-switch-row{justify-content:flex-end;width:44px}.notification-help{color:var(--color-muted);align-items:flex-start;gap:7px;margin:0;font-size:12px;line-height:18px;display:flex}.notification-help svg{flex:none;margin-top:1px}.notification-preferences-table{border-top:1px solid var(--color-border);min-width:0}.notification-preferences-header,.notification-preference-row{grid-template-columns:minmax(0,1fr) repeat(3,58px);align-items:center;gap:8px;display:grid}.notification-preferences-header{min-height:38px;color:var(--color-muted);text-align:center;font-size:12px}.notification-preferences-header>span:first-child{text-align:left}.notification-preference-row{border-top:1px solid var(--color-border);min-height:58px}.notification-preference-name{min-width:0}.notification-fixed-channel{color:var(--color-primary-hover);text-align:center;font-size:12px}.notification-checkbox{justify-self:center;place-items:center;width:44px;height:44px;display:grid}.notification-checkbox input{width:17px;height:17px;accent-color:var(--color-primary)}.notification-checkbox input:disabled{opacity:.7}.notification-review-times{border-top:1px solid var(--color-border);padding-top:22px}.notification-review-times h3{margin:0;font-size:14px;line-height:22px}.notification-review-time-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;min-height:52px;display:flex}.notification-quiet-range{align-items:start}.notification-quiet-range>span{margin-top:24px}.notification-time-control,.notification-review-time-control{min-width:0}.notification-time-control label{display:block}.notification-time-control .settings-field-error,.notification-review-time-control .settings-field-error{margin-bottom:0}.notification-review-time-row .settings-switch-row{min-width:120px}.notification-review-time-control{justify-items:end;gap:0;display:grid}.notification-review-time-control>input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:132px;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 10px}.notification-review-time-control>input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.notification-review-time-control>input:disabled{color:var(--color-muted);background:var(--color-page)}.security-setting-list{gap:16px;padding-top:28px;display:grid}.security-setting-item{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;min-height:108px;padding:20px;display:grid}.security-setting-icon{width:42px;height:42px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;place-items:center;display:grid}.security-setting-item h2{letter-spacing:0;margin:0;font-size:16px;line-height:24px}.security-setting-item p{color:var(--color-muted);margin-top:4px;font-size:13px}.security-setting-item>button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:650;display:inline-flex}.security-setting-item>button:hover{border-color:var(--color-primary);color:var(--color-primary-hover)}.security-setting-item>button:disabled{opacity:.5;cursor:not-allowed}.security-setting-item .security-email-address{overflow-wrap:anywhere;color:var(--color-text)}.security-setting-skeleton span,.security-sessions-skeleton span{background:var(--color-border);opacity:.65;border-radius:3px;display:block}.security-setting-skeleton .security-setting-skeleton-icon{border-radius:50%;width:42px;height:42px}.security-setting-skeleton>div{gap:8px;display:grid}.security-setting-skeleton-title{width:104px;height:20px}.security-setting-skeleton-description{width:min(320px,72%);height:14px}.security-setting-skeleton-action{width:128px;height:44px}.security-setting-error .security-setting-icon{color:var(--color-danger);background:var(--color-danger-soft)}.security-setting-error small{color:var(--color-muted);margin-top:4px;font-size:11px;display:block}.security-confirmation-banner{border:1px solid var(--color-border);border-radius:var(--radius);min-height:52px;color:var(--color-primary-hover);background:var(--color-primary-soft);align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.security-confirmation-banner>span{flex:1;min-width:0}.security-confirmation-banner small{margin-top:2px;display:block}.security-confirmation-banner.warning{color:var(--color-warning-text);background:#fff8e8}.security-confirmation-banner.error{color:var(--color-danger);background:var(--color-danger-soft)}:root[data-color-mode=dark] .security-confirmation-banner.warning{background:#322812}.security-confirmation-banner>button,.security-confirmation-banner>div>button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;min-height:44px;padding:0 10px;font-weight:650}.security-confirmation-banner>div{gap:8px;display:flex}.security-title-status{align-items:center;gap:9px;display:flex}.security-title-status>span{border-radius:10px;padding:1px 7px;font-size:11px;font-weight:700;line-height:18px}.security-title-status>span.enabled{color:var(--color-primary-hover);background:var(--color-primary-soft)}.security-title-status>span.disabled{color:var(--color-muted);background:var(--color-page)}.security-setting-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.security-setting-actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-weight:650;display:inline-flex}.security-setting-actions button:hover{border-color:var(--color-primary);color:var(--color-primary-hover)}.security-setting-actions button.danger,.security-dialog footer button.danger{color:var(--color-danger);border-color:#e2aab1}.security-setting-actions button.danger:hover,.security-dialog footer button.danger:hover{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}.security-dialog-backdrop{z-index:105;background:#12181b7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.security-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(520px,100%);max-height:calc(100dvh - 40px);color:var(--color-text);background:var(--color-surface);overflow-y:auto;box-shadow:0 20px 56px #10181d3d}.security-dialog>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 16px 12px 24px;display:flex}.security-dialog>header>div{align-items:center;gap:10px;min-width:0;display:flex}.security-dialog>header>div>span{color:var(--color-primary-hover)}.security-dialog>header h2{letter-spacing:0;margin:0;font-size:19px;line-height:28px}.security-dialog>header>button{border-radius:var(--radius);width:40px;height:40px;color:var(--color-muted);cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.security-dialog>header>button:hover:not(:disabled){color:var(--color-text);background:var(--color-page)}.security-dialog>form{padding:24px}.security-dialog-note{border-left:3px solid var(--color-primary);overflow-wrap:anywhere;color:var(--color-muted);background:var(--color-primary-soft);margin-bottom:20px;padding:10px 12px;font-size:13px}.security-dialog-note strong{color:var(--color-text)}.security-dialog-field{margin-top:20px}.security-dialog-field:first-child{margin-top:0}.security-dialog-field>label{margin-bottom:7px;font-size:13px;font-weight:650;display:block}.security-text-input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 12px}.security-text-input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.security-text-input[aria-invalid=true]{border-color:var(--color-danger)}.security-code-input{letter-spacing:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.security-password-control{position:relative}.security-password-control input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 46px 0 12px}.security-password-control input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.security-password-control input[aria-invalid=true]{border-color:var(--color-danger)}.security-password-control button{border-radius:0 var(--radius) var(--radius) 0;width:44px;height:44px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid;position:absolute;top:1px;right:1px}.security-dialog-feedback{margin-top:16px}.security-dialog footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;margin-top:28px;padding-top:20px;display:flex}.security-dialog footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:650;display:inline-flex}.security-dialog footer button.primary{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary)}.security-dialog footer button:disabled{opacity:.56}.security-danger-notice{border-left:3px solid var(--color-warning);color:var(--color-text);background:#fff8e8;margin-bottom:18px;padding:10px 12px;font-size:13px}:root[data-color-mode=dark] .security-danger-notice{background:#322812}.mfa-setup-grid{grid-template-columns:208px minmax(0,1fr);align-items:center;gap:24px;display:grid}.mfa-qr-code{border:1px solid var(--color-border);background:#fff;place-items:center;width:208px;height:208px;display:grid}.mfa-qr-code img{width:208px;height:208px;display:block}.mfa-qr-code>span{color:var(--color-danger);text-align:center;padding:12px;font-size:12px}.mfa-secret{min-width:0}.mfa-secret>span,.mfa-secret>code,.mfa-secret>small{display:block}.mfa-secret>span{color:var(--color-muted);font-size:12px}.mfa-secret>code{overflow-wrap:anywhere;color:var(--color-text);margin-top:6px;font-size:13px}.mfa-secret button,.mfa-secret a,.mfa-download-button{min-height:44px;color:var(--color-primary-hover);cursor:pointer;background:0 0;align-items:center;gap:7px;margin-top:12px;padding:0;font-weight:650;text-decoration:none;display:flex}.mfa-secret>small{color:var(--color-muted);margin-top:8px}.mfa-recovery-content{padding:24px}.mfa-recovery-codes{border:1px solid var(--color-border);background:var(--color-page);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;margin:20px 0 0;padding:16px 16px 16px 44px;display:grid}.mfa-recovery-codes code{color:var(--color-text);font-size:13px}.mfa-download-button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);padding:0 12px}.mfa-recovery-acknowledgement{cursor:pointer;align-items:center;gap:9px;width:fit-content;min-height:44px;margin-top:14px;display:flex}.mfa-recovery-acknowledgement input{width:17px;height:17px;accent-color:var(--color-primary)}.mfa-recovery-content footer{border-top:1px solid var(--color-border);justify-content:flex-end;margin-top:20px;padding-top:20px;display:flex}.mfa-recovery-content footer button{border-radius:var(--radius);min-width:96px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;font-weight:700}.mfa-recovery-content footer button:disabled{opacity:.56}.security-sessions{border-top:1px solid var(--color-border);margin-top:16px;padding-top:28px}.security-sessions>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;display:flex}.security-sessions>header>div{align-items:baseline;gap:10px;display:flex}.security-sessions>header h2{letter-spacing:0;margin:0;font-size:16px;line-height:24px}.security-sessions>header span{color:var(--color-muted);font-size:12px}.security-sessions>header button,.security-sessions>ul>li>button{border-radius:var(--radius);min-height:44px;color:var(--color-danger);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-weight:650;display:inline-flex}.security-sessions>header button:hover:not(:disabled),.security-sessions>ul>li>button:hover:not(:disabled){background:var(--color-danger-soft)}.security-sessions button:disabled{opacity:.5}.security-sessions>ul{gap:10px;transition:opacity .12s ease-out;display:grid}.security-sessions>ul.is-refreshing{opacity:.62}.security-sessions>ul>li{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;min-height:78px;padding:14px 16px;display:grid}.security-session-icon{width:38px;height:38px;color:var(--color-muted);background:var(--color-page);border-radius:50%;place-items:center;display:grid}.security-session-copy{min-width:0}.security-session-copy>div{align-items:center;gap:8px;display:flex}.security-session-copy h3{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;margin:0;font-size:14px;line-height:22px;overflow:hidden}.security-session-copy>div>span,.security-current-session{color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:10px;flex:none;padding:1px 7px;font-size:11px;font-weight:700;line-height:18px}.security-session-copy p{color:var(--color-muted);flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:12px;display:flex}.security-session-copy p span{white-space:nowrap}.security-session-copy time{margin-right:3px}.security-sessions-state{min-height:120px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;display:flex}.security-sessions-skeleton{gap:1px;display:grid}.security-sessions-skeleton span{height:72px}.security-sessions-error{text-align:center;flex-direction:column}.security-sessions-error>svg{color:var(--color-danger)}.security-sessions-error small{font-size:11px}.security-sessions-error button{border-radius:var(--radius);min-width:88px;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;margin-top:6px;font-weight:700}.security-sessions-pagination{justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;display:flex}.security-sessions-pagination button{border:1px solid var(--color-border);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);cursor:pointer;place-items:center;display:grid}.security-sessions-pagination span{color:var(--color-muted);font-size:12px}.security-confirm-content{padding:24px}.security-confirm-content footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:20px;display:flex}.security-confirm-content footer button{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:650;display:inline-flex}.security-confirm-content footer button.danger{border-color:var(--color-danger);color:var(--color-on-solid);background:var(--color-danger)}@keyframes settings-spin{to{transform:rotate(360deg)}}.data-file-picker{border:1px dashed var(--color-border-strong);border-radius:var(--radius);min-height:76px;color:var(--color-text);background:var(--color-page);cursor:pointer;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:14px 16px;display:grid}.data-file-picker:hover{border-color:var(--color-primary)}.data-file-picker:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.data-file-picker>svg{color:var(--color-primary-hover)}.data-file-picker>span{overflow-wrap:anywhere;min-width:0;font-weight:650}.data-file-picker input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.data-file-picker:has(input:disabled){opacity:.56;cursor:not-allowed}.data-file-meta{color:var(--color-muted);margin-top:-18px}.data-primary-action{border-radius:var(--radius);width:fit-content;min-height:44px;color:var(--color-on-solid);background:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-weight:700;display:inline-flex}.data-primary-action:hover:not(:disabled){background:var(--color-primary-hover)}.data-primary-action:disabled{opacity:.56;cursor:not-allowed}.data-danger-action{border-radius:var(--radius);width:fit-content;min-height:44px;color:var(--color-on-solid);background:var(--color-danger);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-weight:700;display:inline-flex}.data-danger-action:hover:not(:disabled){filter:brightness(.92)}.data-danger-action:disabled{opacity:.56;cursor:not-allowed}.data-action-row{flex-wrap:wrap;gap:10px;display:flex}.data-secondary-action{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:fit-content;min-height:44px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:650;display:inline-flex}.data-secondary-action:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger)}.data-secondary-action:disabled{cursor:not-allowed;opacity:.56}.data-feedback{border-left:3px solid var(--color-success);min-height:40px;color:var(--color-text);background:var(--color-primary-soft);align-items:center;padding:8px 10px;font-size:13px;display:flex}.data-feedback.error{border-left-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.data-feedback>span{flex:1;min-width:0}.data-feedback>button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;flex:0 0 36px;place-items:center;width:36px;height:36px;margin-left:8px;display:grid}.data-job-status{border-top:1px solid var(--color-border);gap:18px;padding:20px 0 0;display:grid}.data-job-status-line{align-items:center;gap:9px;min-height:28px;display:flex}.data-job-status-line>svg{color:var(--color-primary-hover);flex:none}.data-job-status-line>strong{flex:1;min-width:0}.data-job-status-line>span{color:var(--color-muted);font-variant-numeric:tabular-nums}.data-job-status progress{width:100%;height:7px;color:var(--color-primary);background:var(--color-border);border:0;border-radius:3px;overflow:hidden}.data-job-status progress::-webkit-progress-bar{background:var(--color-border)}.data-job-status progress::-webkit-progress-value{background:var(--color-primary)}.data-job-status progress::-moz-progress-bar{background:var(--color-primary)}.data-summary-grid{border:1px solid var(--color-border);background:var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;display:grid}.data-summary-grid>div{background:var(--color-surface);min-width:0;padding:12px}.data-summary-grid dt{color:var(--color-muted);font-size:12px}.data-summary-grid dd{font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:20px;font-weight:750;line-height:26px}.data-task-import-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.data-import-preview{gap:16px;display:grid}.data-preview-list,.data-error-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.data-preview-list li{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:52px;padding:9px 0;display:grid}.data-preview-list strong{overflow-wrap:anywhere;min-width:0}.data-preview-list span{color:var(--color-muted);text-align:right;font-size:12px}.data-error-list li{border-bottom:1px solid var(--color-border);grid-template-columns:20px minmax(0,1fr);gap:10px;min-height:56px;padding:10px 0;display:grid}.data-error-list svg{color:var(--color-danger);margin-top:2px}.data-error-list small{color:var(--color-muted);overflow-wrap:anywhere;margin-top:3px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.data-import-report{gap:20px;display:grid}.data-report-title{margin-bottom:8px;font-size:12px;display:block}.data-report-title.error{color:var(--color-danger)}.data-report-title.warning{color:color-mix(in srgb, var(--color-warning) 72%, var(--color-text))}.data-warning-list svg{color:var(--color-warning-text)}.data-history-state{min-height:112px;color:var(--color-muted);align-content:center;place-items:center;gap:8px;font-size:13px;display:grid}.data-history-skeleton{gap:1px;display:grid}.data-history-skeleton span{background:var(--color-border);opacity:.65;border-radius:3px;height:64px;display:block}.data-history-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.data-history-list>li{border-bottom:1px solid var(--color-border);grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:64px;padding:10px 0;display:grid}.data-history-status{color:var(--color-primary-hover);place-items:center;display:grid}.data-history-status.failed{color:var(--color-danger)}.data-history-list li>div{min-width:0}.data-history-list li>div>strong,.data-history-list time,.data-history-result span{display:block}.data-history-list time,.data-history-result span{color:var(--color-muted);margin-top:3px;font-size:11px}.data-history-result{text-align:right}.data-history-result>strong{font-size:12px}.data-history-pagination{justify-content:flex-end;align-items:center;gap:10px;min-height:40px;display:flex}.data-history-pagination button{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text);background:var(--color-surface);place-items:center;display:grid}.data-history-pagination button:disabled{cursor:not-allowed;opacity:.5}.data-history-pagination span{color:var(--color-muted);font-variant-numeric:tabular-nums;font-size:12px}.data-date-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.data-date-range label>span{margin-bottom:8px;font-size:13px;font-weight:650;display:block}.data-date-range input{border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);padding:0 10px}.data-date-range input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.data-date-range input[aria-invalid=true]{border-color:var(--color-danger)}@media (width>=768px) and (width<=1023px){.settings-layout{margin:-20px}.settings-page{padding-left:36px;padding-right:36px}.settings-section{grid-template-columns:140px minmax(0,1fr);gap:24px}.audit-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=767px){.settings-layout{min-height:calc(100dvh - 56px - 64px - env(safe-area-inset-bottom));margin:-16px -16px calc(-80px - env(safe-area-inset-bottom));padding-bottom:calc(80px + env(safe-area-inset-bottom));display:block}.settings-sidebar{border-right:0;border-bottom:1px solid var(--color-border);padding:18px 16px 0}.settings-sidebar-title{padding:0 0 12px;font-size:20px;line-height:28px}.settings-sidebar nav{gap:20px;display:flex;overflow-x:auto}.settings-sidebar nav a{border-radius:0;flex:none;min-height:44px;padding:0 1px}.settings-sidebar nav a.active{box-shadow:inset 0 -2px 0 var(--color-primary);background:0 0}.settings-page{padding:28px 16px 64px}.settings-page-header{padding-bottom:20px}.settings-page-header h1{font-size:24px;line-height:32px}.audit-page-header,.audit-page-header>span{display:block}.audit-filters{grid-template-columns:1fr}.audit-filter-actions button{flex:1;min-height:44px}.audit-pagination button{width:44px;height:44px}.audit-table-wrap{margin-right:-16px}.settings-section{padding:24px 0;display:block}.settings-section-fields,.settings-avatar-field{margin-top:20px}.settings-page-state-actions{display:grid}.settings-save-row{gap:12px;display:grid}.settings-workdays{grid-template-columns:repeat(7,minmax(36px,1fr));gap:4px}.settings-number-grid{grid-template-columns:1fr}.settings-save-button,.data-primary-action,.data-danger-action,.data-action-row,.data-secondary-action{width:100%}.data-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-task-import-summary>div:last-child{grid-column:1/-1}.data-date-range{grid-template-columns:1fr}.data-history-pagination button{width:44px;height:44px}.data-feedback>button{flex-basis:44px;width:44px;height:44px}.taxonomy-row>button,.taxonomy-dialog>header button{width:44px;height:44px}.data-preview-list li{grid-template-columns:1fr;gap:3px}.data-preview-list span{text-align:left}.settings-toast{top:calc(var(--app-offline-height,0px) + 68px);justify-content:center;left:16px;right:16px}.settings-dialog-actions{flex-direction:column-reverse}.settings-dialog-actions button{width:100%;min-height:44px}.security-setting-item{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px}.security-setting-icon{width:38px;height:38px}.security-setting-item>button,.security-setting-skeleton-action{grid-column:1/-1;width:100%}.security-dialog>header>button,.security-sessions-pagination button{width:44px;height:44px}.security-confirmation-banner{flex-wrap:wrap;align-items:flex-start}.security-confirmation-banner>span{padding-top:7px}.security-confirmation-banner>button,.security-confirmation-banner>div{width:100%}.security-confirmation-banner>div button{flex:1;min-height:44px}.security-setting-actions{grid-column:1/-1;grid-template-columns:1fr;display:grid}.security-setting-actions button{width:100%}.security-dialog-backdrop{align-items:end;padding:0}.security-dialog{width:100%;max-height:calc(100dvh - var(--app-offline-height,0px) - 24px);border-bottom:0;border-left:0;border-right:0}.security-dialog>form{padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.security-dialog footer{flex-direction:column-reverse}.security-dialog footer button{width:100%;min-height:44px}.mfa-setup-grid{grid-template-columns:1fr}.mfa-qr-code{margin:0 auto}.mfa-recovery-content{padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.mfa-recovery-codes{grid-template-columns:1fr}.security-sessions>header{align-items:flex-start}.security-sessions>header>div{display:block}.security-sessions>header>button{min-height:44px}.security-sessions>ul>li{grid-template-columns:38px minmax(0,1fr)}.security-sessions>ul>li>button,.security-current-session{grid-column:2;justify-self:start}.security-session-copy p{gap:2px;display:grid}.security-confirm-content{padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.security-confirm-content footer{flex-direction:column-reverse}.security-confirm-content footer button{width:100%;min-height:44px}}.command-palette-backdrop{z-index:110;background:#141b226b;justify-content:center;align-items:flex-start;padding:min(16vh,120px) 20px 20px;display:flex;position:fixed;inset:0}.command-palette{border:1px solid var(--color-border);width:min(620px,100%);max-height:min(620px,100dvh - 150px);color:var(--color-text);background:var(--color-surface);border-radius:6px;grid-template-rows:52px 50px minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 24px 70px #141b2247}.command-palette>header{border-bottom:1px solid var(--color-border);color:var(--color-primary);align-items:center;gap:9px;padding:0 14px;display:flex}.command-palette>header h2{color:var(--color-text);letter-spacing:0;flex:1;margin:0;font-size:14px}.command-palette>header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);background:0 0;place-items:center;display:grid}.command-palette-input{border-bottom:1px solid var(--color-border);color:var(--color-muted);align-items:center;gap:9px;padding:0 14px;display:flex}.command-palette-input input{min-width:0;color:var(--color-text);background:0 0;border:0;outline:0;flex:1;font-size:15px}.command-palette-results{min-height:0;padding:6px;overflow-y:auto}.command-palette-results>button{width:100%;min-height:44px;color:var(--color-text);text-align:left;background:0 0;border-radius:4px;grid-template-columns:28px minmax(0,1fr) auto 20px;align-items:center;gap:8px;padding:0 10px;display:grid}.command-palette-results>button:hover,.command-palette-results>button.active{background:var(--color-primary-soft)}.command-palette-results>button>span{color:var(--color-muted);place-items:center;display:grid}.command-palette-results>button strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.command-palette-results>button small{color:var(--color-muted);font-size:11px}.command-palette-results>button>svg{color:var(--color-primary)}.command-palette-state{min-height:160px;color:var(--color-muted);place-items:center;font-size:12px;display:grid}.command-palette-state.error{color:var(--color-danger)}.command-palette-skeleton{gap:4px;display:grid}.command-palette-skeleton span{background:var(--color-border);opacity:.65;border-radius:4px;min-height:44px}@media (width<=767px){.command-palette-backdrop{align-items:stretch;padding:0}.command-palette{border:0;border-radius:0;width:100%;max-height:none}.command-palette>header button{width:44px;height:44px}}.app-shell{--app-sidebar-width:232px;--app-offline-height:0px;grid-template-columns:var(--app-sidebar-width) minmax(0, 1fr);min-height:100dvh;padding-top:var(--app-offline-height);color:var(--color-text);background:#f6f7f9;display:grid}:root[data-color-mode=dark] .app-shell{background:var(--color-page)}.app-shell.sidebar-collapsed{--app-sidebar-width:72px}.app-shell.is-offline{--app-offline-height:44px}.app-offline-status{z-index:80;color:#744700;background:#fff8e8;border-bottom:1px solid #e7c88f;place-items:center;min-height:44px;padding:10px 16px;font-size:13px;display:grid;position:fixed;top:0;left:0;right:0}:root[data-color-mode=dark] .app-offline-status{color:#f4c878;background:#322812;border-color:#745727}.app-sidebar{z-index:40;top:var(--app-offline-height);min-width:0;height:calc(100dvh - var(--app-offline-height));border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;display:flex;position:sticky}.app-sidebar-header{border-bottom:1px solid var(--color-border);flex:none;align-items:center;gap:8px;height:64px;padding:0 12px 0 20px;display:flex}.app-brand{color:#123b35;flex:1;align-items:center;gap:9px;min-width:0;min-height:44px;font-size:19px;line-height:28px;text-decoration:none;display:flex}:root[data-color-mode=dark] .app-brand{color:var(--color-text)}.app-brand>span{border-radius:var(--radius);width:28px;height:28px;color:var(--color-on-solid);background:var(--color-primary);flex:none;place-items:center;display:grid}.app-brand strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-sidebar-toggle{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.app-sidebar-toggle:hover{color:var(--color-text);background:var(--color-page)}.app-primary-nav{flex:1;min-height:0;padding:8px;overflow-y:auto}.app-sidebar nav a{border-radius:var(--radius);min-width:0;min-height:44px;color:var(--color-text);white-space:nowrap;align-items:center;gap:12px;margin-top:2px;padding:0 12px;text-decoration:none;display:flex}.app-sidebar nav a .app-nav-badge{min-width:20px;height:20px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:10px;place-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-grid}.app-sidebar nav a .app-nav-badge[data-alert=true]{color:var(--color-on-solid);background:var(--color-danger)}.app-sidebar nav a:first-child{margin-top:0}.app-sidebar nav a svg{color:var(--color-muted);flex:none}.app-sidebar nav a:hover{background:var(--color-page)}.app-sidebar nav a.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.app-sidebar nav a.active svg{color:currentColor}.app-sidebar-bottom{border-top:1px solid var(--color-border);flex:none;padding:8px}.app-user-control{border-top:1px solid var(--color-border);margin-top:6px;padding-top:6px;position:relative}.app-user-button{border-radius:var(--radius);width:100%;min-height:48px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;padding:5px 8px;display:flex}.app-user-button:hover{background:var(--color-page)}.app-avatar{color:#fff;background:#2878c8;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:700;display:grid;overflow:hidden}.app-avatar-image{object-fit:cover;display:block}.app-user-copy{flex:1;min-width:0;display:block}.app-user-copy strong,.app-user-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-user-copy small{color:var(--color-muted);font-size:11px;line-height:16px}.app-user-button>svg{color:var(--color-muted);flex:none}.app-user-menu{z-index:70;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 28px #1c232b29}.app-user-menu a,.app-user-menu button{width:100%;min-height:44px;color:var(--color-text);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:10px;padding:0 10px;text-decoration:none;display:flex}.app-user-menu a:hover,.app-user-menu button:hover:not(:disabled){background:var(--color-page)}.app-user-menu button{color:var(--color-danger)}.app-user-menu button:disabled{opacity:.65}.app-user-menu>p{color:var(--color-danger);padding:5px 10px;font-size:12px}.sidebar-collapsed .app-sidebar-header{justify-content:center;padding:0}.sidebar-collapsed .app-brand{display:none}.sidebar-collapsed .app-sidebar nav a{justify-content:center;padding:0}.sidebar-collapsed .app-sidebar nav a>span,.sidebar-collapsed .app-sidebar nav a>.app-nav-badge,.sidebar-collapsed .app-user-copy,.sidebar-collapsed .app-user-button>svg{display:none}.sidebar-collapsed .app-user-button{justify-content:center;padding:5px 0}.sidebar-collapsed .app-user-menu{width:224px;left:calc(100% + 8px);right:auto}.app-main-column{min-width:0;min-height:calc(100dvh - var(--app-offline-height))}.app-topbar{z-index:30;top:var(--app-offline-height);border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:20px;height:64px;padding:0 24px;display:flex;position:sticky}.app-global-search{border:1px solid var(--color-border);border-radius:var(--radius);width:min(380px,44vw);height:44px;color:var(--color-muted);text-align:left;cursor:pointer;background:#f6f7f9;align-items:center;gap:9px;padding:0 11px;text-decoration:none;display:flex}:root[data-color-mode=dark] .app-global-search{background:var(--color-page)}.app-global-search>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.app-global-search kbd{font:inherit;white-space:nowrap;font-size:11px}.app-topbar>time{color:var(--color-muted);white-space:nowrap;margin-left:auto}.app-new-button{border-radius:var(--radius);min-width:112px;height:44px;color:var(--color-on-solid);background:var(--color-primary);justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.app-new-button:disabled{cursor:not-allowed;opacity:.7}.app-mobile-brand,.app-mobile-search,.app-mobile-nav,.app-mobile-more{display:none}.app-toast-stack{z-index:120;flex-direction:column;align-items:flex-end;gap:8px;max-width:min(440px,100vw - 44px);display:flex;position:fixed;bottom:22px;right:22px}.app-privacy-lock-notice,.app-quick-create-toast,.app-soft-delete-toast{border:1px solid var(--color-border);border-radius:var(--radius);min-height:42px;color:var(--color-text);background:var(--color-surface);align-items:center;padding:0 14px;font-size:12px;font-weight:700;display:flex;box-shadow:0 10px 26px #1c232b29}.app-quick-create-toast{gap:7px}.app-quick-create-toast svg{color:var(--color-primary)}.app-soft-delete-toast{gap:10px;padding:7px 8px 7px 12px}.app-soft-delete-toast>div{align-items:center;gap:7px;min-width:0;display:flex}.app-soft-delete-toast>div>svg{color:var(--color-primary);flex:none}.app-soft-delete-toast span{overflow-wrap:anywhere}.app-soft-delete-toast small{color:var(--color-muted);margin-top:1px;font-size:10px;font-weight:500;display:block}.app-soft-delete-toast>button:not(.app-soft-delete-dismiss){border-radius:var(--radius);min-height:44px;color:var(--color-primary-hover);background:var(--color-primary-soft);flex:none;align-items:center;gap:5px;padding:0 8px;font-weight:700;display:inline-flex}.app-soft-delete-toast.error{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border))}.app-soft-delete-toast.error>div>svg{color:var(--color-danger)}.app-soft-delete-dismiss{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);flex:none;place-items:center;display:grid}.quick-create-backdrop{z-index:110;background:#11182770;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.quick-create-dialog{border:1px solid var(--color-border);border-radius:var(--radius);width:min(600px,100%);max-height:min(680px,100dvh - 48px);color:var(--color-text);background:var(--color-surface);overflow:auto;box-shadow:0 22px 58px #1118273d}.quick-create-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:60px;padding:0 18px;display:flex}.quick-create-header h2{margin:0;font-size:18px;line-height:26px}.quick-create-header button{border-radius:var(--radius);width:36px;height:36px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.quick-create-header button:hover:not(:disabled){color:var(--color-text);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.quick-create-tabs{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(5,minmax(0,1fr));padding:8px 12px 0;display:grid}.quick-create-tabs button{min-width:0;min-height:50px;color:var(--color-muted);cursor:pointer;background:0 0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.quick-create-tabs button[aria-selected=true]{border-bottom-color:var(--color-primary);color:var(--color-primary-hover);font-weight:700}.quick-create-task{padding:22px}.quick-create-dialog [hidden]{display:none}.quick-create-task>label{color:var(--color-muted);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.quick-create-task textarea{resize:vertical;border:1px solid var(--color-border-strong);border-radius:var(--radius);width:100%;min-height:112px;color:var(--color-text);background:var(--color-surface);font:inherit;padding:12px;line-height:1.6}.quick-create-task textarea:focus{border-color:var(--color-primary);outline:2px solid color-mix(in srgb, var(--color-primary) 18%, transparent);outline-offset:1px}.quick-create-error{color:var(--color-danger);margin:8px 0 0;font-size:12px}.quick-create-task textarea[aria-invalid=true]{border-color:var(--color-danger)}.quick-create-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.quick-create-primary,.quick-create-secondary{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 15px;font-weight:700;display:inline-flex}.quick-create-primary{color:var(--color-on-solid);background:var(--color-primary)}.quick-create-primary:hover:not(:disabled){background:var(--color-primary-hover)}.quick-create-secondary{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.quick-create-primary:disabled,.quick-create-secondary:disabled,.quick-create-header button:disabled{cursor:not-allowed;opacity:.52}.quick-create-continue{flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:230px;padding:30px 22px;display:flex}.quick-create-continue>svg{color:var(--color-primary)}.quick-create-continue h3{margin:0 0 6px;font-size:16px}.app-content{width:100%;max-width:1440px;min-height:calc(100dvh - var(--app-offline-height) - 64px);margin:0 auto;padding:24px}:root[data-density=compact] .app-sidebar nav a,:root[data-density=compact] .app-user-button{min-height:44px}@media (width>=768px) and (height<=800px){.app-primary-nav,.app-sidebar-bottom{padding:6px}.app-sidebar nav a,.app-user-button{min-height:44px}}@media (width>=768px) and (width<=1023px){.app-shell,.app-shell.sidebar-collapsed{--app-sidebar-width:72px}.app-sidebar-header{justify-content:center;padding:0}.app-brand{display:none}.app-sidebar nav a{justify-content:center;padding:0}.app-sidebar nav a>span,.app-user-copy,.app-user-button>svg{display:none}.app-user-button{justify-content:center;padding:5px 0}.app-user-menu{width:224px;left:calc(100% + 8px);right:auto}.app-content{padding:20px}}@media (width<=767px){.quick-create-backdrop{background:var(--color-surface);place-items:stretch stretch;padding:0}.quick-create-dialog{width:100%;max-height:100dvh;box-shadow:none;border:0;border-radius:0}.quick-create-header{min-height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.quick-create-header button{width:44px;height:44px}.quick-create-tabs{padding-left:4px;padding-right:4px}.quick-create-tabs button{flex-direction:column;gap:3px;min-height:56px;font-size:11px}.quick-create-task{padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.quick-create-task textarea{min-height:148px}.quick-create-actions{grid-template-columns:1fr 1fr;display:grid}.quick-create-continue{min-height:calc(100dvh - 113px - env(safe-area-inset-top));padding-bottom:calc(30px + env(safe-area-inset-bottom))}.app-toast-stack{right:12px;bottom:calc(76px + env(safe-area-inset-bottom));align-items:stretch;max-width:none;left:12px}.app-soft-delete-dismiss{width:44px;height:44px}.app-privacy-lock-notice,.app-quick-create-toast{justify-content:center}.app-shell,.app-shell.sidebar-collapsed{padding-top:var(--app-offline-height);display:block}.app-sidebar{display:none}.app-main-column{min-height:calc(100dvh - var(--app-offline-height))}.app-topbar{gap:12px;height:56px;padding:0 16px}.app-global-search,.app-topbar>time,.app-new-button{display:none}.app-mobile-brand{color:#123b35;font-size:18px;font-weight:750;display:block}:root[data-color-mode=dark] .app-mobile-brand{color:var(--color-text)}.app-mobile-search{border-radius:var(--radius);width:44px;height:44px;color:var(--color-muted);place-items:center;margin-left:auto;display:grid}.app-content{min-height:calc(100dvh - var(--app-offline-height) - 56px - 64px - env(safe-area-inset-bottom));padding:16px 16px calc(80px + env(safe-area-inset-bottom))}.app-mobile-nav{z-index:50;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.app-mobile-nav>a,.app-mobile-nav>button{min-width:0;min-height:64px;color:var(--color-muted);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;text-decoration:none;display:flex}.app-mobile-nav>a.active{color:var(--color-primary-hover);font-weight:700}.app-mobile-nav>button:not(:disabled){cursor:pointer}.app-mobile-nav>button:disabled{opacity:.68}.app-mobile-new svg{color:var(--color-primary)}.app-mobile-more{z-index:90;min-width:320px;color:var(--color-text);background:var(--color-surface);grid-template-rows:56px minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.app-mobile-more>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:0 16px;display:flex}.app-mobile-more>header h2{letter-spacing:0;margin:0;font-size:20px;line-height:28px}.app-mobile-more>header button{border-radius:var(--radius);width:44px;height:44px;color:var(--color-muted);cursor:pointer;background:0 0;place-items:center;display:grid}.app-mobile-more>nav{padding:8px 16px 16px;overflow-y:auto}.app-mobile-more>nav a{border-radius:var(--radius);min-height:48px;color:var(--color-text);align-items:center;gap:14px;padding:0 12px;text-decoration:none;display:flex}.app-mobile-more>nav a svg{color:var(--color-muted)}.app-mobile-more>nav a.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:700}.app-mobile-more>nav a.active svg{color:currentColor}.app-mobile-more-badge{min-width:20px;height:20px;color:var(--color-on-solid);background:var(--color-danger);border-radius:10px;place-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-grid}.app-mobile-user{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border)}.app-mobile-user>div{align-items:center;gap:10px;min-width:0;display:flex}.app-mobile-user>div p{min-width:0}.app-mobile-user>div strong,.app-mobile-user>div small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-mobile-user>div small{color:var(--color-muted);font-size:12px}.app-mobile-user>button{min-height:44px;color:var(--color-danger);cursor:pointer;background:0 0;align-items:center;gap:8px;margin-top:8px;padding:0;font-weight:700;display:flex}.app-mobile-user>button:disabled{opacity:.65}.app-mobile-user>p{color:var(--color-danger);font-size:12px}}.app-route-reserved{min-height:680px}.route-pending-delay{min-height:100dvh}.route-status-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.route-status-brand{color:var(--color-primary);margin-bottom:36px;font-size:20px;font-weight:750;line-height:28px}.route-loading-shell{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:min(420px,100%);padding:28px}.route-loading-line{background:#e7ebee;border-radius:4px;height:14px;margin-top:18px}.route-loading-line:first-child{margin-top:0}.route-loading-title{width:58%;height:24px}.route-loading-short{width:72%}.route-loading-label{min-height:44px;color:var(--color-muted);align-items:center;gap:8px;margin-top:16px;display:flex}.route-loading-label svg{animation:.8s linear infinite route-spin}@keyframes route-spin{to{transform:rotate(360deg)}}.route-error-icon{width:52px;height:52px;color:var(--color-danger);background:var(--color-danger-soft);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.route-status-page h1{letter-spacing:0;font-size:24px;line-height:32px}.route-status-page>p:not(.route-loading-label){color:var(--color-muted);margin-top:8px}.route-status-page>small{overflow-wrap:anywhere;color:var(--color-muted);margin-top:8px}.route-status-actions{gap:12px;margin-top:24px;display:flex}.route-status-actions button,.route-status-actions a{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;min-width:112px;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.route-status-actions button{color:var(--color-on-solid);background:var(--color-primary)}.route-status-actions button:hover{background:var(--color-primary-hover)}.route-status-actions a{border:1px solid var(--color-border-strong);background:var(--color-surface)}@media (width<=767px){.route-status-page{padding:20px}.route-loading-shell{padding:24px 20px}}@media (prefers-reduced-motion:reduce){.route-loading-label svg{animation:none}}.application-error-page{min-height:100dvh;color:var(--color-text);background:var(--color-page);grid-template-rows:auto 1fr;padding:32px;display:grid}.application-error-brand{color:var(--color-brand);font-size:18px;font-weight:750}.application-error-page>section{text-align:center;place-self:center;width:min(100%,440px);padding-bottom:72px}.application-error-icon{border:1px solid color-mix(in srgb, var(--color-warning) 35%, var(--color-border));border-radius:var(--radius);width:48px;height:48px;color:var(--color-warning-text);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));place-items:center;margin-bottom:20px;display:inline-grid}.application-error-page h1{font-size:24px;line-height:32px}.application-error-page p{color:var(--color-muted);margin-top:10px}.application-error-page small{color:var(--color-muted);overflow-wrap:anywhere;margin-top:16px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.application-error-actions{justify-content:center;gap:10px;margin-top:24px;display:flex}.application-error-actions button,.application-error-actions a{border:1px solid var(--color-border-strong);border-radius:var(--radius);min-height:40px;color:var(--color-text);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;padding:8px 16px;font-weight:650;text-decoration:none;display:inline-flex}.application-error-actions button{border-color:var(--color-primary);color:var(--color-on-solid);background:var(--color-primary);gap:7px}.application-error-actions button:hover{background:var(--color-primary-hover)}@media (width<=767px){.application-error-page{padding:20px 16px}.application-error-page>section{padding-bottom:48px}.application-error-actions{flex-direction:column}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;--color-page:#eef1f3;--color-surface:#fff;--color-text:#1c232b;--color-muted:#66717d;--color-border:#dde2e7;--color-border-strong:#aeb8c2;--color-primary:#167d6d;--color-primary-hover:#106457;--color-primary-soft:#e4f2ef;--color-brand:#153d37;--color-brand-surface:#214d46;--color-brand-muted:#b9d5d0;--color-danger:#c43d4b;--color-danger-soft:#fff1f2;--color-info:#2878c8;--color-info-soft:#e8f2fc;--color-success:#248a5b;--color-success-text:#1c6948;--color-warning:#b36a00;--color-warning-text:#8b5a00;--color-on-solid:#fff;--radius:6px;--focus-ring:0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-primary);font-family:Inter,Noto Sans SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-color-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-page:#141817;--color-surface:#1d2321;--color-text:#f1f5f4;--color-muted:#b4c0bc;--color-border:#39433f;--color-border-strong:#71807a;--color-primary:#4cb6a4;--color-primary-hover:#6bc9b9;--color-primary-soft:#1d3d37;--color-brand:#102f2a;--color-brand-surface:#1b443d;--color-brand-muted:#bdd8d3;--color-danger:#ff8d98;--color-danger-soft:#3d2025;--color-info:#78b7ee;--color-info-soft:#1b3448;--color-success:#65c796;--color-success-text:#65c796;--color-warning:#e7ad55;--color-warning-text:#e7ad55;--color-on-solid:#102f2a;--focus-ring:0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-primary)}*,:before,:after{box-sizing:border-box}html{background:var(--color-page);min-width:320px}body{min-width:320px;min-height:100dvh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a{color:inherit}p,h1,h2{margin:0}body{color:var(--color-text);background:var(--color-page);font-size:14px;line-height:22px}button,a,input{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible,[contenteditable=true]:focus-visible{outline-offset:2px;box-shadow:var(--focus-ring);outline:2px solid #0000}@media (forced-colors:active){button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible,[contenteditable=true]:focus-visible{box-shadow:none;outline-color:highlight}}button:disabled{cursor:not-allowed}@media (width<=767px){body{font-size:15px;line-height:23px}}html[data-reduce-motion=true] *,html[data-reduce-motion=true] :before,html[data-reduce-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
