/* A vivid spectrum, balanced by quiet neutral surfaces. */
:root {
  --canopy-red:#ff3b30;
  --canopy-orange:#ff9500;
  --canopy-yellow:#ffcc00;
  --canopy-lime:#7bdc00;
  --canopy-green:#30c759;
  --canopy-teal:#00c7be;
  --canopy-cyan:#00b9ff;
  --canopy-blue:#007aff;
  --canopy-violet:#9b4dff;
  --canopy-pink:#ff2d8d;
  --canopy-accent:#0069ee;
  --canopy-accent-ink:#0055c4;
  --canopy-selection:#e4f0ff;
  --accent:var(--canopy-blue);
}
::selection{background:#007aff30;color:#102642}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#007aff9c}
.app-content button:focus-visible,.app-content input:focus-visible,.app-content textarea:focus-visible{outline-color:#007aff9c}
.app-content input[type="range"]{accent-color:var(--canopy-violet)}
.app-content input[type="checkbox"],.app-content select{accent-color:var(--canopy-blue)}
.menu-row:hover,.menu-row:focus-visible{background:var(--canopy-accent);color:#fff}
.menu-row.danger{color:#dc281f}.menu-row.danger:hover{color:#fff;background:#e52f25}
.menu-saved .save-slot.active,.menubar-controls button[aria-pressed="true"]{background:var(--canopy-accent);color:#fff}
.sidebar-toggle[aria-expanded="true"]{background:#007aff1f;color:var(--canopy-accent-ink)}
.sidebar-brand>.ui-icon,.sidebar-row>.ui-icon{color:var(--canopy-blue)}
.sidebar-row[aria-current="page"],.sidebar-row.is-active,.sidebar-app.is-active{background:#007aff19;color:var(--canopy-accent-ink)}
.sidebar-layouts button.active,.sidebar-layouts button[aria-pressed="true"]{background:#007aff1b;border-color:#007aff3d;color:var(--canopy-accent-ink)}
.sidebar-search:focus-within{border-color:#007aff5c;box-shadow:0 0 0 2px #007aff13}
.workspace-sidebar button:focus-visible{outline-color:var(--canopy-blue)}
.traffic-lights .close{background:var(--canopy-red)}
.traffic-lights .minimize{background:var(--canopy-yellow)}
.traffic-lights .zoom{background:var(--canopy-green)}
.folder-shape>.ui-icon,.finder-side-icon,.file-art>.ui-icon{color:#009cf0}
.file-art.pdf>.ui-icon{color:var(--canopy-red)}
.file-art.doc>.ui-icon{color:var(--canopy-blue)}
.canopy-app-icon[data-app-icon="photos"]{background:conic-gradient(from -15deg,#ff9500,#ffcc00,#7bdc00,#30c759,#00c7be,#00b9ff,#007aff,#9b4dff,#ff2d8d,#ff3b30,#ff9500)}
.canopy-app-icon[data-app-icon="notes"] .canopy-app-symbol{background:#654300}
.canopy-app-icon[data-app-icon="reminders"] .canopy-app-symbol,
.canopy-app-icon[data-app-icon="calculator"] .canopy-app-symbol,
.canopy-app-icon[data-app-icon="books"] .canopy-app-symbol{background:#5b2800}
.app-sidebar button.selected{background:var(--canopy-selection);color:var(--canopy-accent-ink)}
.app-sidebar button.selected .ui-icon{color:var(--canopy-blue)}
.app-sidebar button:hover{background:#007aff0d}
.finder-file.selected{background:#007aff24}
.finder-file:hover{background:#007aff0b}
.notes-list{background:#fffcf2}.notes-list-heading button{color:#ad7400!important}
.notes-entries button.selected{background:#ffdf62;color:#4b3700}
.music-controls button,.music-controls .music-play{color:#8b35ea}
.music-favorite.liked{color:var(--canopy-pink)!important}
.music-album{background:linear-gradient(140deg,#4522a8,#7945e4 55%,#e02e92);color:#fff}
.music-album>small,.music-album>span{color:#fff;opacity:.85}
.music-title p,.music-times{color:#716780}
.calendar-grid>button.today>span{background:var(--canopy-red);color:#fff}
.calendar-grid>button.selected:not(.today)>span{background:#ff3b3018;color:#c72d24}
.reminders-title h1,.reminders-title>strong{color:var(--canopy-blue)}
.reminders-add{color:var(--canopy-blue)}
.reminders-add input{color:#1f426c}.reminders-add input::placeholder{color:#6c85a0}
.reminders-add button{background:var(--canopy-accent);color:#fff}
.reminder.done .reminder-check{background:var(--canopy-green);box-shadow:0 0 0 1px var(--canopy-green)}
.settings-row input[type="range"]{accent-color:var(--canopy-violet)}
.settings-row input[type="checkbox"]{accent-color:var(--canopy-blue)}
.wallpaper-choice.selected{border-color:var(--canopy-blue)!important;box-shadow:0 0 0 2px #007aff26}
.settings-reset,.settings-overview{color:var(--canopy-accent-ink)!important;border-color:#007aff35!important;background:#f4f9ff!important}
.mail-list>button.selected{background:var(--canopy-selection)}
.mail-list-title .app-button,.mail-reply{color:var(--canopy-accent-ink)}
.messages-list>button.selected{background:var(--canopy-selection)}
.message-bubble.me{background:var(--canopy-accent);color:#fff}
.contact-list button.selected{background:var(--canopy-selection);color:var(--canopy-accent-ink)}
.contact-actions .ui-icon{color:var(--canopy-blue)}
.textedit-bold.selected{background:#9b4dff20;color:#7121c6}
.photos-heading>button,.photos-back{color:var(--canopy-accent-ink)}
.clock-tabs button.selected{background:#9b4dff;color:#fff}
.spotlight-result.selected{background:#007aff14}.spotlight-result.selected:hover{background:var(--canopy-accent);color:#fff}
.action-symbol{background:#9b4dff16;color:#8438d9}
.toast-icon{background:#007aff16;color:var(--canopy-blue)}
.guide-mark,.about-icon{background:var(--canopy-violet);color:#fff}
.guide-start{background:#7731ce;color:#fff}
.finder-path,.finder-status,.finder-file small,.photos-heading span,.photos-grid button>span,.app-photos footer,
.mail-list footer,.mail-list>button p,.messages-list small,.messages-list footer,.settings-row span,.settings-description,
.notes-list footer,.sidebar-brand small,.sidebar-heading{color:#727b88}
/* The arrow is the neutral cursor; drag/resize affordances appear only while needed. */
.app-content button,.window-titlebar,.window-titlebar:active,.window-tab,.overview-card,.reminder{cursor:default}
.desktop-shell.is-interacting:has(.window-frame.dragging),
.desktop-shell.is-interacting:has(.window-frame.dragging) *{cursor:grabbing!important}
.desktop-shell[data-theme="dark"] .sidebar-row[aria-current="page"],
.desktop-shell[data-theme="dark"] .sidebar-app.is-active{background:#007aff35;color:#bcdcff}
.desktop-shell[data-theme="dark"] .sidebar-brand>.ui-icon,
.desktop-shell[data-theme="dark"] .sidebar-row>.ui-icon{color:#50b1ff}
@media(max-width:520px){.menu-right{gap:4px}.menu-right>.clock{font-size:10px}.sidebar-app{font-size:12px}.sidebar-heading{font-size:11px}}
