/* Home Manager semantic design system. Components use roles, never palette literals. */
:root{
  color-scheme:light dark;
  --background:#F2F2F7;--surface-primary:#FFFFFF;--surface-secondary:#F2F2F7;--surface-tertiary:#FFFFFF;
  --text-primary:#000000;--text-secondary:#3C3C43;--text-tertiary:#6E6E73;--text-disabled:#8E8E93;
  --separator:#C6C6C8;--border:#D1D1D6;--border-strong:#AEAEB2;
  --accent:#007AFF;--accent-foreground:#005EA8;--accent-hover:#0066D6;--accent-pressed:#004FAD;--accent-subtle:#DCEEFF;--selection:#DCEEFF;--focus:#007AFF;
  --status-success:#34C759;--status-success-foreground:#167A3E;--status-success-subtle:#DDF6E5;--status-warning:#FF9500;--status-warning-foreground:#8A4B00;--status-warning-subtle:#FFF0D6;
  --status-danger:#FF3B30;--status-danger-foreground:#B42318;--status-danger-subtle:#FFE3E0;--status-info:#007AFF;--status-info-foreground:#005EA8;--status-info-subtle:#DCEEFF;
  --action-primary:#0066CC;--action-destructive:#B42318;--ai-accent:#5856D6;--ai-accent-subtle:#E6E5FF;
  --on-accent:#FFFFFF;--on-status:#111111;--scrim:rgba(0,0,0,.48);--shadow:0 8px 24px rgba(0,0,0,.12);
}
@media(prefers-color-scheme:dark){:root{
  --background:#000000;--surface-primary:#1C1C1E;--surface-secondary:#2C2C2E;--surface-tertiary:#3A3A3C;
  --text-primary:#FFFFFF;--text-secondary:#EBEBF5;--text-tertiary:#AEAEB2;--text-disabled:#636366;
  --separator:#38383A;--border:#48484A;--border-strong:#636366;
  --accent:#0A84FF;--accent-foreground:#64AEFF;--accent-hover:#409CFF;--accent-pressed:#006EDB;--accent-subtle:#003A70;--selection:#003A70;--focus:#0A84FF;
  --status-success:#30D158;--status-success-foreground:#6DEB8A;--status-success-subtle:#123D23;--status-warning:#FF9F0A;--status-warning-foreground:#FFC162;--status-warning-subtle:#4A2B00;
  --status-danger:#FF453A;--status-danger-foreground:#FF8A84;--status-danger-subtle:#4A1512;--status-info:#0A84FF;--status-info-foreground:#64AEFF;--status-info-subtle:#003A70;
  --action-primary:var(--accent);--action-destructive:var(--status-danger);--ai-accent:#5E5CE6;--ai-accent-subtle:#2B2A63;
  --on-accent:#FFFFFF;--on-status:#FFFFFF;--scrim:rgba(0,0,0,.7);--shadow:0 10px 28px rgba(0,0,0,.42);
}}

*{box-sizing:border-box}body{background:var(--background);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif}a{color:var(--accent);text-underline-offset:.18em}button,input,select,textarea{font:inherit}button{border:0;background:var(--action-primary);color:var(--on-accent);cursor:pointer}button:hover{background:var(--accent-hover)}button:active{background:var(--accent-pressed)}button:disabled,input:disabled,select:disabled,textarea:disabled{color:var(--text-disabled);opacity:.64;cursor:not-allowed}input,select,textarea{color:var(--text-primary);background:var(--surface-primary);border:1px solid var(--border)}input::placeholder,textarea::placeholder{color:var(--text-disabled)}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input[type="checkbox"],input[type="radio"]{accent-color:var(--accent)}

main>header h1,h2{color:var(--text-primary)}main>header p,.task-heading p,#app[data-view]>p,.buy-card>p,.buy-verdict>p{color:var(--text-secondary)}nav{background:var(--background)}nav button{background:var(--surface-secondary);color:var(--text-primary);border:1px solid transparent}nav button:hover{background:var(--surface-tertiary);border-color:var(--border)}nav button.active,[aria-current="page"]{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}

details,form>label,li,.task-tools,.change-card,.plant-card,.plant-profile,.task-profile,.buy-card,.buy-verdict{background:var(--surface-primary);border-color:var(--border)}.plant-name,.compact-task-main,.inventory-product{color:var(--text-primary)}.plant-name small,.inventory-product small,.task-profile-meta,.plant-botanical,.task-facts small,.project-list small,.project-list p,.task-section-title>span,.compact-task-main small{color:var(--text-secondary)}.photo-viewer,.task-reschedule-dialog{background:var(--scrim)}.photo-viewer button{background:var(--surface-tertiary);color:var(--text-primary)}

.task-page{--task-green:var(--accent);--task-muted:var(--text-secondary);--task-line:var(--separator)}.task-heading h2,#app[data-view="tasks"]>h2,#app[data-view="landscape"]>h2,#app[data-view="changes"]>h2,.care-guide h2,.task-profile-header h2,.plant-profile-header h2{color:var(--text-primary)}.planner-controls,.task-filters{background:var(--surface-secondary)}.planner-controls label{background:var(--surface-primary);color:var(--text-secondary)}.planner-controls select{color:var(--text-primary)}.attention-panel>h3,.task-section-title h3,.task-profile-kicker,.task-dialog-kicker,#app[data-view]>h3{color:var(--text-secondary)}.attention-card{background:var(--surface-primary);color:var(--text-primary);border-left-color:var(--separator)}.attention-card.red{border-left-color:var(--status-danger)}.attention-card.amber{border-left-color:var(--status-warning)}.attention-card span{color:var(--text-secondary)}.compact-task-list,.compact-task,.task-tools,.task-facts>div,.reschedule-checklist,.task-reschedule-dialog form,.task-reschedule-dialog>section{background:var(--surface-primary)}.task-rank,.tasks-heading>span,.task-restore{background:var(--status-info-subtle);color:var(--status-info)}.schedule-badge{background:var(--status-info-subtle);border-color:var(--status-info);color:var(--status-info)}.schedule-badge.unscheduled{background:var(--surface-secondary);border-color:var(--border);color:var(--text-secondary)}.task-add>summary,.task-primary,.plant-primary,.inventory-add,.buy-cost button,.buy-continue,.buy-restart{background:var(--action-primary);color:var(--on-accent)}.task-add>summary:hover,.task-primary:hover,.plant-primary:hover,.inventory-add:hover,.buy-cost button:hover,.buy-continue:hover,.buy-restart:hover{background:var(--accent-hover)}.task-row-more[open],.task-reschedule-dialog .unscheduled-choice{background:var(--surface-secondary)}.task-row-more>button,.task-reschedule-dialog .dialog-cancel,.product-archive,.inventory-archived,.change-retention button{background:var(--surface-tertiary);color:var(--text-primary)}.task-complete{background:var(--status-success-subtle);color:var(--status-success);border:1px solid var(--status-success)}.task-complete:hover{background:var(--status-success-subtle)}.task-empty{color:var(--text-secondary)}.task-filter-sheet summary,.task-sort-sheet summary{background:var(--surface-primary);border-color:var(--border);color:var(--accent)}.task-filter-sheet>div,.task-sort-sheet>select{background:var(--surface-primary);border-color:var(--border);box-shadow:var(--shadow)}.task-filter-sheet label{color:var(--text-primary)}.project-list{border-top-color:var(--separator)}.project-list button{background:var(--surface-secondary);color:var(--accent)}.task-notice{background:var(--surface-tertiary);color:var(--text-primary);box-shadow:var(--shadow)}.clear-task-date,.task-list-actions button,.today-text-links button{background:transparent;color:var(--accent)}

.task-profile,.plant-profile{background:var(--surface-primary);border-color:var(--border);box-shadow:var(--shadow)}.task-secondary,.plant-secondary{background:var(--surface-secondary);color:var(--text-primary)}.task-secondary:hover,.plant-secondary:hover{background:var(--surface-tertiary)}.task-facts{background:var(--separator);border-color:var(--separator)}.task-notes,.task-prerequisites,.plant-description,.plant-profile .plant-links{border-top-color:var(--separator)}.task-prerequisites li{background:var(--surface-secondary);border-color:var(--border)}.plant-profile-hero,.plant-profile-hero .plant-thumb{background:var(--surface-secondary)}.plant-profile-meta{color:var(--text-secondary)}.plant-status{background:var(--status-success-subtle);color:var(--status-success);border:1px solid var(--status-success)}.plant-status-monitor{background:var(--status-warning-subtle);color:var(--status-warning);border-color:var(--status-warning)}.plant-status-treatment{background:var(--status-danger-subtle);color:var(--status-danger);border-color:var(--status-danger)}.plant-status-inactive{background:var(--surface-secondary);color:var(--text-secondary);border-color:var(--border)}.plant-description h3,.care-guide h3,.task-notes h3,.task-prerequisites h3{color:var(--text-primary)}.plant-description p,.care-guide p{color:var(--text-primary)}.plant-links button{background:transparent;color:var(--accent)}.plant-links button:hover{background:transparent;color:var(--accent-hover)}

.product-delete{background:var(--action-destructive);color:var(--on-accent)}.product-delete:hover{background:var(--status-danger)}.archived-product{background:var(--surface-primary);border-color:var(--border)}.archived-product b{color:var(--text-secondary)}.inventory-product b{color:var(--status-success)}.inventory-product:hover{color:var(--accent)}

.buy-shell{color:var(--text-primary)}.buy-masthead p,.buy-step,.buy-options span{color:var(--text-secondary)}.buy-masthead h2,.buy-card h3,.buy-verdict h3{color:var(--text-primary)}.buy-progress{background:var(--surface-tertiary)}.buy-progress i{background:var(--accent)}.buy-card,.buy-verdict{background:var(--surface-primary);border-color:var(--border);box-shadow:var(--shadow)}.buy-options button,.buy-checks label{background:var(--surface-primary);color:var(--text-primary);border-color:var(--border)}.buy-options button:hover{background:var(--accent-subtle);border-color:var(--accent)}.buy-back{background:transparent;color:var(--accent);border-color:transparent}.buy-back:hover{background:var(--accent-subtle)}.buy-verdict{border-left-color:var(--status-info)}.buy-verdict.go h3{color:var(--status-success)}.buy-verdict.pending{border-left-color:var(--status-warning)}.buy-verdict.pending h3{color:var(--status-warning)}.buy-verdict.no-go{border-left-color:var(--status-danger)}.buy-verdict.no-go h3{color:var(--status-danger)}.buy-verdict ul{color:var(--text-secondary);border-top-color:var(--separator)}.buy-verdict li{background:var(--surface-secondary);border-color:var(--border)}.buy-verdict li::before{color:var(--accent)}.app-footer a,.buy-text-link,.buy-queue-link a{color:var(--accent)}

#app[data-view="tasks"]>#details-form,#app[data-view="landscape"]>#plant-details,#app[data-view="changes"]>#change-form,#app[data-view="landscape"]>details,#app[data-view="landscape"]>#product-details{background:var(--surface-primary);border-color:var(--border)}#app[data-view="tasks"]>#details-form fieldset,#app[data-view="landscape"]>#plant-details fieldset,#app[data-view="tasks"] .task-add fieldset{background:var(--surface-secondary);border-color:var(--border)}#app[data-view="tasks"]>#details-form fieldset legend,#app[data-view="tasks"] .task-add fieldset legend{color:var(--text-secondary)}#app[data-view="tasks"]>#details-form fieldset label,#app[data-view="tasks"] .task-add fieldset label{background:var(--surface-primary);border-color:var(--border)}#app[data-view="landscape"]>details>summary,.change-card>p:first-of-type,.change-card details>summary{color:var(--text-secondary)}.change-retention{border-top-color:var(--separator)}

/* Foreground variants keep small status labels readable against subtle fills. */
a,.app-footer a,.buy-text-link,.buy-queue-link a{color:var(--accent-foreground)}
nav{grid-template-columns:repeat(3,minmax(0,1fr))}nav button.active,[aria-current="page"]{color:var(--accent-foreground)}
.task-page{--task-green:var(--accent-foreground)}.task-rank,.tasks-heading>span,.task-restore,.schedule-badge{color:var(--status-info-foreground)}
.task-filter-sheet summary,.task-sort-sheet summary,.project-list button,.clear-task-date,.task-list-actions button,.today-text-links button,.plant-links button{color:var(--accent-foreground)}
.task-complete,.plant-status,.inventory-product b,.buy-verdict.go h3{color:var(--status-success-foreground)}
.plant-status-monitor,.buy-verdict.pending h3{color:var(--status-warning-foreground)}
.plant-status-treatment,.buy-verdict.no-go h3{color:var(--status-danger-foreground)}
.today-text-links .today-add-task{display:block;width:100%;margin:.75rem 0;background:var(--action-primary);color:var(--on-accent);border-radius:.9rem;padding:.85rem 1rem;font-weight:700;text-align:left}.today-text-links .today-add-task:hover{background:var(--accent-hover)}.critical-task-field{align-items:center;grid-auto-flow:column;justify-content:start;gap:.55rem}.critical-task-field input{width:1.1rem;height:1.1rem;margin:0}
@media(max-width:600px){.task-page,.buy-shell{width:100%}.attention-card{background:var(--surface-primary)}.task-reschedule-dialog{background:var(--scrim)}}
