/* White and OLED surfaces share the same vivid green action color. */
:root{
 color-scheme:light;
 --bg:#ffffff;--paper:#ffffff;--ink:#181c19;--muted:#666d68;--line:#e6eae7;
 --surface:#f7f8f7;--soft:#f1f4f2;--selected:#e9fcf0;--input:#ffffff;
 --green:#087a3e;--accent:#22e576;--accent-ink:#062b16;--focus:#0b9b4d;
 --lime:#b9f7cf;--sage:#e9fcf0;--hero:#f0fdf5;--hero-line:#d4f4df;
 --positive-bg:#e9fcf0;--positive-ink:#087a3e;--warning-bg:#fff5e3;--warning-ink:#8a5a12;
 --danger-bg:#fff0ec;--danger-ink:#a33d2d;--danger-line:#efc7bf;--danger-action:#b84332;
 --purple-bg:#f2edfc;--purple-ink:#71539c;
 --peach:#fff1e8;--peach-ink:#a46a42;--peach-fill:#e2a479;
 --lavender:#f1edfc;--lavender-ink:#8064b1;--lavender-fill:#ae91df;
 --sky:#eaf3ff;--sky-ink:#4f78ad;--sky-fill:#7da9df;
 --sand:#fff6df;--sand-ink:#937623;--sand-fill:#d5b450;
 --chart-previous:#c9ead6;--chrome:#fffffff5;--shade:#111b1566;--done-ink:#78847b;
}
html[data-theme=dark]{
 color-scheme:dark;
 --bg:#000000;--paper:#080808;--ink:#f2f5f3;--muted:#a2aaa5;--line:#252a27;
 --surface:#101211;--soft:#161a17;--selected:#0b2817;--input:#050706;
 --green:#32ed81;--accent:#22e576;--accent-ink:#062b16;--focus:#32ed81;
 --lime:#56ef94;--sage:#0b2817;--hero:#07180e;--hero-line:#183c26;
 --positive-bg:#0b2817;--positive-ink:#53ee95;--warning-bg:#2c210d;--warning-ink:#f2ca7d;
 --danger-bg:#301711;--danger-ink:#f5b0a0;--danger-line:#67372b;--danger-action:#b84332;
 --purple-bg:#231b34;--purple-ink:#c7acef;
 --peach:#2e1e14;--peach-ink:#e8b38e;--peach-fill:#dea67b;
 --lavender:#231c32;--lavender-ink:#c5aeeb;--lavender-fill:#b49ad9;
 --sky:#142334;--sky-ink:#a5c9f0;--sky-fill:#8db7e3;
 --sand:#2c2613;--sand-ink:#e2ce8b;--sand-fill:#d6c078;
 --chart-previous:#204b31;--chrome:#000000f5;--shade:#000000b8;--done-ink:#84968a;
}
body{background:var(--bg);color:var(--ink)}
:is(.sidebar,.topbar,.panel,.stat,.project-card,.task-row,.kanban-card,dialog,.modal-head,.modal-actions,.retry-card,.auth-page,.auth-form-wrap){background:var(--paper);border-color:var(--line);color:var(--ink)}
.sidebar,.topbar{background:var(--bg)}
:is(.workspace-switch,.layout-switch,.tabs,.person-tabs button,.table-caption,.connection-pills>span,.theme-option,.date-pill,.together-card){background:var(--surface);border-color:var(--line);color:var(--muted)}
:is(.workspace-mark,.nav .count,.project-icon,.integration-icon,.trash-item-icon,.recurrence-icon,.assistant-orb){background:var(--sage);color:var(--green)}
.nav button.active{background:var(--selected);color:var(--green)}
:is(.brand,.mobile-brand){color:var(--ink)}
:is(.brand .dot,.mobile-brand span){color:var(--accent)}
:is(.stat-value,.stat-denominator,.week-summary,.today-stats strong,.structure-project-stats>div>strong,.objective-check>strong,.outcome-title,.next-step-card>strong,.trash-item h2,.trash-empty h2,.workload-percent,.personal-mini-count strong,.personal-mini-goals strong){color:var(--ink)}
:is(.nav button,.mini-project,.sidebar-profile>svg,.sidebar-profile small,.workspace-switch small,.workspace-switch>svg,.nav-label,.breadcrumb,.breadcrumb button,.breadcrumb strong,.icon-btn,.search-trigger,.key,.page-heading p,.page-heading .eyebrow,.eyebrow,.subtle,.notice,.body-text,.bottom-note,.sync-state,.stat-label,.stat-label svg,.stat-foot,.goal-meta,.goal-add,.focus-subhead,.goals-empty,.task-date,.task-status,.table-caption,.team-card p,.team-stats span,.activity-copy,.activity-copy small,.empty p,.project-description,.project-meta,.progress-label,.goal-title,.completed-task small,.completed-time,.completion-note,.personal-mini-person small,.personal-mini-count span,.personal-mini-goals small,.workload-panel .subtle,.personal-date label,.weekly-note,.trash-note,.integration-note,.integration-status,.integration-help,.theme-setting-note,.task-main small,.project-detail-intro p,.detail-progress small,.search-heading,.outcome-progress,.outcome-foot,.outcome-empty p,.outcome-task-main small,.today-stats,.today-empty p,.objective-check>strong small,.last-sync,.trash-project,.trash-item-copy>p,.trash-item-copy>small){color:var(--muted)}
:is(.section-head h2,.team-card h2,.project-card h3,.goal-copy strong,.task-main strong,.outcome-task-main strong,.completed-task strong,.activity-copy strong,.task-detail h3,.task-comment strong,.weekly-team tbody th button,.weekly-task strong,.weekly-open-task,.integration-title h2,.siri-guide strong,.siri-commands h3,.dependency-task-name,.dependency-choices legend,.dependency-options label,.project-block-row strong,.recurrence-copy>button,.together-card strong,.card-title){color:var(--ink)}
.btn,.btn.full{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
:is(.btn.secondary,.btn.ghost,.layout-switch button,.tabs button,.text-button,.button-link){color:var(--muted)}
.btn.secondary{background:var(--paper);border-color:var(--line)}
.btn.ghost{background:transparent;border-color:transparent}
.btn.danger{background:var(--danger-action);color:#fff}
.icon-btn:hover{background:var(--soft);color:var(--green)}
:is(.tabs button.active,.layout-switch button.active,.person-tabs button.active){background:var(--selected);color:var(--green);border-color:var(--hero-line);box-shadow:none}
:is(.text-button:hover,.button-link,.card-title:hover,.repo-link,.integration-status.ready,.dependency-link.satisfied>svg,.personal-mini-arrow,.together-card svg){color:var(--green)}
:is(input,textarea,select){background:var(--input);color:var(--ink);border-color:var(--line);accent-color:var(--accent)}
:is(input,textarea)::placeholder{color:var(--muted);opacity:.8}
.field>label,.field small{color:var(--muted)}
:is(.filter-row select,.personal-date input,.calendar-filter-selects select,.weekly-date-controls input,.card-status,.detail-status select,.inline-form input,#comment-form textarea,.siri-copy-field input){background:var(--input);color:var(--ink);border-color:var(--line)}
:is(button,a,input,textarea,select,.project-card):focus-visible{outline-color:var(--focus)}
:is(.form-error,#toast.error){background:var(--danger-bg);color:var(--danger-ink)}
#toast{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 35px #0002}
dialog{box-shadow:0 25px 100px #0003}
dialog::backdrop{background:var(--shade)}
.appearance-settings{border-bottom:1px solid var(--line);padding:0 0 22px;margin:0 0 22px}
.theme-picker{padding:0;margin:0;border:0;min-width:0}
.theme-picker legend{padding:0;margin-bottom:14px;font-size:14px;font-weight:600;color:var(--ink)}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.theme-options label{position:relative;cursor:pointer;min-width:0}
.theme-options input{position:absolute;width:1px;height:1px;padding:0;margin:0;opacity:0;min-height:0}
.theme-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:90px;padding:16px 8px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--muted);transition:background .15s,border-color .15s}
.theme-option svg{width:24px;height:24px}.theme-option strong{font-size:12px;font-weight:550}
.theme-options input:checked+.theme-option{background:var(--selected);border-color:var(--accent);color:var(--green);box-shadow:inset 0 0 0 1px var(--accent)}
.theme-options input:focus-visible+.theme-option{outline:3px solid var(--focus);outline-offset:3px}
.theme-setting-note{font-size:11px;line-height:1.7;margin:12px 0 0}
.account-settings-title{font-size:14px;font-weight:600;margin:0 0 18px;color:var(--ink)}
.settings-export{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}
:is(.hero,.auth-story,.callout,.structure-project-stats,.trash-restored){background:var(--hero);border-color:var(--hero-line);color:var(--green)}
:is(.hero h2,.auth-statement h1,.callout strong){color:var(--ink)}
:is(.hero .eyebrow,.hero button,.auth-statement .eyebrow,.auth-statement h1 em){color:var(--green)}
:is(.hero p,.auth-statement p,.auth-footer,.auth-form>p,.auth-help,.structure-project-stats span,.structure-project-stats small){color:var(--muted)}
:is(.auth-orb,.auth-orb::before,.auth-orb::after,.orbit,.orbit.two,.orbit.three){border-color:var(--hero-line)}
.floating-card{background:var(--paper);box-shadow:0 9px 25px #0000000d}
.floating-card .tiny-line{background:var(--soft)}
.floating-card .art-row{color:var(--muted)}
.art-check{background:var(--accent);color:var(--accent-ink)}
.art-badge{background:var(--paper);border-color:var(--hero);color:var(--green)}
.art-star{color:var(--green)}.art-dot,.hero .eyebrow .color-dot{background:var(--accent)}
.avatar{background:var(--peach);color:var(--peach-ink);border-color:var(--paper)}
.avatar.giorgio{background:var(--sage);color:var(--green)}
:is(.project-icon.peach,.agenda-item-icon.peach){background:var(--peach);color:var(--peach-ink)}
:is(.project-icon.lavender,.agenda-item-icon.lavender){background:var(--lavender);color:var(--lavender-ink)}
:is(.project-icon.sky,.agenda-item-icon.sky){background:var(--sky);color:var(--sky-ink)}
:is(.project-icon.sand,.agenda-item-icon.sand){background:var(--sand);color:var(--sand-ink)}
:is(.badge,.badge.low,.stat-foot em,.outcome-state,.outcome-state.done,.repeat-status.active,.completed-mark,.weekly-delta.up){background:var(--positive-bg);color:var(--positive-ink)}
:is(.badge.high,.dependency-badge.blocked){background:var(--danger-bg);color:var(--danger-ink)}
:is(.badge.medium,.badge.paused,.stat-foot .warn,.outcome-state.review,.dependency-badge,.repeat-status,.weekly-delta.down){background:var(--warning-bg);color:var(--warning-ink)}
:is(.badge.completed,.badge.review,.source-label.openai,.source-label.codex){background:var(--purple-bg);color:var(--purple-ink)}
:is(.source-label,.source-label.backlog){background:var(--soft);color:var(--muted)}
.badge:empty{background:transparent}
:is(.progress-track,.focus-progress .progress-track){background:var(--soft)}
.progress-track span{background:var(--accent)}
.project-card.peach .progress-track span{background:var(--peach-fill)}
.project-card.lavender .progress-track span{background:var(--lavender-fill)}
.project-card.sky .progress-track span{background:var(--sky-fill)}
.project-card.sand .progress-track span{background:var(--sand-fill)}
.progress-label strong{color:var(--green)}
:is(.project-bottom,.goal-item,.focus-progress,.task-row,.outcome-children,.outcome-task,.outcome-card,.today-task-wrap,.card-bottom,.task-checklist,.task-comments,.task-comment,.task-dependencies,.project-blocks,.project-block-row,.dependency-options,.dependency-options label,.weekly-team thead th,.weekly-team tbody th,.weekly-team tbody td,.weekly-task,.weekly-open-task,.weekly-goal-details,.weekly-goal-row,.recurrence-row,.repeat-fields,.integration-footer,.repo-list>div,.agent-key-list>div,.siri-guide,.handoff-note,.github-signal,.project-brief,.delivery-fields,.agenda-date,.agenda-add,.agenda-item,.undated-task,.checklist-footer,.plan-edit-group,.sidebar-bottom,.sidebar-profile,.appearance-settings,.modal-head,.modal-actions){border-color:var(--line)}
:is(.empty,.outcome-empty,.trash-empty){background:var(--paper);border-color:var(--line);color:var(--ink)}
.empty :is(h2,h3){color:var(--ink)}
:is(.empty>svg,.outcome-empty>svg,.trash-empty>svg){color:var(--green)}
.kanban-column,.kanban-column.todo{background:var(--surface);border-color:var(--line)}
.kanban-column.progress{background:var(--warning-bg);border-color:var(--line)}
.kanban-column.review{background:var(--purple-bg);border-color:var(--line)}
.kanban-column.done{background:var(--positive-bg);border-color:var(--hero-line)}
.kanban-column.drag-over{background:var(--selected);outline-color:var(--accent)}
:is(.kanban-heading>span,.section-head .number){background:var(--soft);color:var(--muted)}
:is(.card-project,.card-project small,.card-tags,.kanban-empty,.board-add,.task-detail-meta,.detail-status,.task-detail-plan .subtle,.task-description,.task-delivery p,.checklist-item,.task-comment p,.task-comment time,.dependency-caption,.dependency-help,.dependency-options small,.project-block-row small,.dependency-following summary,.dependency-link small,.task-delivery summary,.delivery-fields summary,.project-brief,.delivery-fields){color:var(--muted)}
:is(.task-delivery,.plan-edit-activity,.dependency-link,.next-step-card,.siri-secret,.siri-commands>div,.connection-code,.repeat-notice,.invite-link){background:var(--surface);border-color:var(--line);color:var(--ink)}
.next-step-card:hover{background:var(--selected);border-color:var(--hero-line)}
:is(.next-step-top,.next-step-bottom){color:var(--muted)}
.explicit-block{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger-ink)}
.explicit-block small{color:var(--danger-ink)}
:is(.task-row.done .task-main strong,.outcome-task.done .outcome-task-main strong,.goal-item.done .goal-title,.checklist-item.done>span,.agenda-item.completed .agenda-item-main strong){color:var(--done-ink)}
.check{border-color:var(--muted);background:var(--paper)}
.check.checked{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
:is(.task-date.overdue,.overdue,.trash-blocked,.project-blocks summary,.agenda-overdue .section-head h2,.agenda-overdue .section-head>svg){color:var(--warning-ink)}
.calendar-weekdays{background:var(--surface);border-color:var(--line)}
.calendar-weekdays span,.calendar-day{color:var(--muted)}
.calendar-cell{background:var(--paper);border-color:var(--line)}
.calendar-cell.outside{background:var(--surface)}
.calendar-cell.outside .calendar-day{color:var(--done-ink)}
.calendar-cell.selected{background:var(--selected);box-shadow:inset 0 0 0 1.5px var(--accent)}
.calendar-day:hover>span{background:var(--selected)}
.calendar-cell.today .calendar-day>span{background:var(--accent);color:var(--accent-ink)}
:is(.calendar-day small,.calendar-more,.calendar-legend,.calendar-completed,.agenda-date .eyebrow,.agenda-date .subtle,.agenda-item-main small,.agenda-item-main em,.agenda-item-foot,.agenda-item-foot>.text-button,.agenda-empty){color:var(--muted)}
:is(.calendar-period .icon-btn,.breadcrumb .back-button,.mobile-drawer-close,.weekly-date-controls .icon-btn){background:var(--surface);color:var(--muted)}
:is(.calendar-event,.agenda-item-icon){background:var(--sage);color:var(--green)}
.calendar-event.peach{background:var(--peach);color:var(--peach-ink)}
.calendar-event.lavender{background:var(--lavender);color:var(--lavender-ink)}
.calendar-event.sky{background:var(--sky);color:var(--sky-ink)}
.calendar-event.sand{background:var(--sand);color:var(--sand-ink)}
:is(.agenda-item-main strong,.undated-task){color:var(--ink)}
:is(.chart,.weekly-bars){background:repeating-linear-gradient(to top,transparent 0,transparent 38px,var(--line) 38px,var(--line) 39px);border-color:var(--line)}
:is(.chart-bar,.weekly-bar.previous){background:var(--chart-previous)}
:is(.chart-col.today .chart-bar,.weekly-bar.current){background:var(--accent)}
:is(.chart-labels,.chart-head p,.chart-key,.chart-bar span,.weekly-period>span,.weekly-chart .section-head p,.weekly-chart-legend,.weekly-bar small,.weekly-bar-column>span,.weekly-bar-column>small,.weekly-goal-key,.weekly-goal-key>small,.weekly-goal-details,.weekly-goal-row span,.weekly-task small,.weekly-task time,.weekly-task time small,.weekly-open-task small,.weekly-open-task time,.weekly-date-controls label){color:var(--muted)}
:is(.weekly-chart-legend i,.weekly-goal-key i,.chart-key .color-dot,.status-live::before){background:var(--accent)}
:is(.weekly-chart-legend>span+span i,.weekly-goal-key>span+span i){background:var(--chart-previous)}
.chart-labels span.today{color:var(--green)}
.weekly-goal-ring{background:conic-gradient(var(--accent) var(--goal-pct),var(--soft) 0)}
.weekly-goal-ring>span{background:var(--paper)}
.weekly-goal-ring strong{color:var(--green)}
.weekly-goal-ring small{color:var(--muted)}
.weekly-team tr.selected{background:var(--selected)}
:is(.weekly-team tbody th,.weekly-team tbody td){color:var(--ink)}
:is(.weekly-team thead,.weekly-team td small,.weekly-team td::before){color:var(--muted)}
.weekly-delta{background:var(--soft);color:var(--muted)}
:is(.proposal-kind,.proposal-project,.proposal-description,.proposal-reason,.proposal-details,.proposal-assignee,.assistant-intro p,.assistant-banner p,.connection-pills button,.plan-preview p,.plan-activities,.plan-activities small,.plan-edit-activity h4,.repo-list a,.repo-list .subtle,.agent-key-list small,.integration-help summary,.siri-commands p,.siri-secret>p,.siri-guide li,.siri-copy-field>label,.recurrence-copy p,.recurrence-copy small,.recurrence-person,.recurrence-empty,.repeat-month-note,.repeat-weekdays legend,.goal-repeat,.handoff-note small,.handoff-note p,.handoff-note details,.github-signal small){color:var(--muted)}
:is(.assistant-banner,.assistant-intro){background:var(--surface);border-color:var(--line)}
:is(.proposal-reason,.connection-pills>span,.siri-guide code,.siri-json-fields,.repeat-weekdays span){background:var(--soft);border-color:var(--line);color:var(--muted)}
.repeat-weekdays input:checked+span{background:var(--selected);border-color:var(--accent);color:var(--green)}
:is(.github-signal strong,.handoff-note strong,.repo-list strong,.agent-key-list strong,.siri-secret>strong,.siri-guide>summary,.ai-test-result){color:var(--ink)}
.activity-item+.activity-item::before{background:var(--line)}
.color-dot,.calendar-dots>i,.done .status-dot{background:var(--accent)}
.trash-nav-count,.recurrence-icon.paused{background:var(--soft);color:var(--muted)}
.sync-state.offline{color:var(--warning-ink)}
html[data-theme=dark] dialog{box-shadow:0 25px 100px #000b}
@media(max-width:900px){
 .topbar,.mobile-bottom-nav{background:var(--chrome);border-color:var(--line);box-shadow:0 -4px 20px #00000008}
 .mobile-bottom-nav button{color:var(--muted)}
 .mobile-bottom-nav button.active{background:var(--selected);color:var(--green)}
 .mobile-shade.open{background:var(--shade)}
 .check,.check.checked{background:transparent;border:0}
 .check::before{background:var(--paper);border-color:var(--muted)}
 .check.checked::before{background:var(--accent);border-color:var(--accent)}
 .theme-options input{min-height:0}
 .theme-picker legend,.account-settings-title{font-size:15px}
 .theme-option{min-height:96px}.theme-option strong{font-size:13px}.theme-setting-note{font-size:12px}
}
@media(max-width:600px){#modal:has(.appearance-settings) .modal-body>form{min-height:0}.theme-options{gap:8px}}
