﻿/* Theme overrides keep inspiration artwork in its original palette. */
:root { color-scheme: light; }
:root[data-theme="dark"] { color-scheme:dark; --ink:#e5ece6; --muted:#a1afa7; --green:#79bda0; --line:#35443d; --bg:#17211d; }
.theme-picker {display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.theme-picker select {padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);cursor:pointer}
:root[data-theme="dark"] :is(aside,header,.metric,.project,.panel,dialog,.calendar,.map){background:#202d26;color:var(--ink)}
:root[data-theme="dark"] :is(.org,.secondary,.day-label){background:#29382f;color:#d4e2d8}
:root[data-theme="dark"] :is(input,textarea,select){background:#17231c;color:#e5ece6;border-color:#46574c}
:root[data-theme="dark"] :is(p,.sub,.metric-top,.time,.due,.card-foot,.day,nav button,.team,footer){color:#adbbb1}
:root[data-theme="dark"] :is(.tag,nav button.active){background:#304b3b;color:#c2e6ce}
:root[data-theme="dark"] .primary,:root[data-theme="dark"] .toast{background:#397b5f;color:#fff}
:root[data-theme="dark"] .search::placeholder{color:#a1afa7}
:root[data-theme="dark"] .task{border-color:var(--line)}
:root[data-theme="dark"] .task:has(input:checked) .task-title{color:#9aad9f}
:root[data-theme="dark"] .day[style]{background:#304335!important}
:root[data-theme="dark"] .cal-event{background:#36513c;color:#e2f2d8}
:root[data-theme="dark"] .note.white{background:#29382f;color:#e5ece6}
:root[data-theme="dark"] .note.white :is(p,ul){color:#c3d1c6}
:root[data-theme="dark"] .note:not(.white){color:#283729}
:root[data-theme="dark"] .note:not(.white) :is(p,.sub){color:#4d5e4d}
:root[data-theme="dark"] .cover{color:#283729}
:root[data-theme="dark"] .avatar{color:#29372e;border-color:#27372c}
:root[data-theme="dark"] .board{background-image:radial-gradient(#435348 1px,transparent 1px)}
:root[data-theme="dark"] .map #map-details{fill:#b7cbb9}
:root[data-theme="dark"] .map pattern circle{fill:#3d5141}
:root[data-theme="dark"] .map text{fill:#24392b}
:root[data-theme="dark"] .map text[fill="white"]{fill:white}
:root[data-theme="dark"] .map text[fill="#c1d7c6"]{fill:#c1d7c6}
:root[data-theme="dark"] .map #map-details text{fill:#b7cbb9}
@media(max-width:760px){.theme-picker>span{display:none}.header-right{gap:8px}.header-right>span:not(.avatar){display:none}.theme-picker select{max-width:100px}header{gap:8px}.search{width:115px}}
.idea-tools{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:16px}
.idea-tools .sub{flex:1;font-size:10px;color:#59674f}
.idea-tools .secondary{padding:5px 8px;font-size:11px}
.idea-tools button:disabled{opacity:.35;cursor:default}
#connected-notes .note{cursor:grab;overflow-wrap:anywhere}
#connected-notes .note.dragging{opacity:.45}
#connected-notes .note.drop-target{outline:3px dashed var(--green);outline-offset:4px}
#project-detail .toolbar{flex-wrap:wrap;align-items:center}
#project-detail.board-expanded>.grid{display:block}
#project-detail.board-expanded>.grid>div:first-child{display:none}
.board-expanded #connected-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;align-items:start;background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;padding:20px 0}
.board-expanded #idea-form{max-width:620px;margin:20px auto 0}
#connected-notes .note p{white-space:pre-wrap}
@media(max-width:760px){.board-expanded #connected-notes{grid-template-columns:1fr}}
#connected-map.editable-mindmap{display:block!important;margin-top:20px;overflow:auto;padding:12px;background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;border-radius:10px}
.mind-root{display:inline-block;padding:15px 22px;border-radius:10px;background:var(--green);color:var(--bg);font-weight:700;overflow-wrap:anywhere}
.mind-tree,.mind-children{list-style:none;padding-left:20px;margin:16px 0;border-left:2px solid var(--line)}
.mind-branch{margin:14px 0;position:relative}
.mind-branch:before{content:'';position:absolute;left:-20px;top:25px;width:20px;border-top:2px solid var(--line)}
.mind-node{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px}
.mind-name{display:block;overflow-wrap:anywhere;font-weight:600;margin-bottom:10px}
.mind-actions{display:flex;gap:6px;flex-wrap:wrap}
.mind-actions .secondary{padding:5px 8px;font-size:10px}
.mind-actions button:disabled{opacity:.4;cursor:default}
.mind-task-summary{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}
.mind-task-summary button{margin:4px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){.mind-tree,.mind-children{padding-left:10px}.mind-branch:before{left:-10px;width:10px}}
#calendar .toolbar{flex-wrap:wrap;align-items:center}
.day-add{float:right;border:0;background:transparent;color:var(--green);font-size:15px;padding:0 4px;border-radius:4px}
.day-add:hover{background:var(--line)}
.editable-event{display:block;width:100%;border:1px solid var(--line);text-align:left;cursor:pointer;overflow-wrap:anywhere;background:#e1e8f4;color:#415a78}
:root[data-theme="dark"] .editable-event{background:#31475d;color:#d9e8fc}
#event-form label{font-size:12px;color:var(--ink)}
#event-form input,#event-form select{margin:8px 0 14px}
#event-form textarea{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:6px}
dialog{max-height:90vh;overflow-y:auto;max-width:calc(100vw - 30px)}
.project-timeline{margin-bottom:20px;scroll-margin-top:20px}
.schedule-fields{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.schedule-fields label{flex:1;min-width:130px;font-size:12px;color:var(--muted)}
.schedule-fields input{display:block;width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;margin-top:7px}
#timeline-summary{margin-top:22px}
#timeline-summary progress{width:100%;height:12px;accent-color:var(--green)}
.schedule-line{position:relative;height:8px;background:var(--line);border-radius:8px;margin:52px 0 15px}
.today-marker{position:absolute;bottom:0;padding-bottom:20px;white-space:nowrap;color:var(--green);font-size:11px;font-weight:700;border-bottom:12px solid var(--green)}
.schedule-dates{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}
.timeline-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:17px 0;border-bottom:1px solid var(--line)}
.timeline-row>div:first-child{flex:1;min-width:140px}.timeline-row h3{margin:8px 0}
.schedule-alert{font-size:11px;color:#ab793b!important;margin-bottom:0}
@media(max-width:760px){.schedule-dates{font-size:10px}.schedule-fields>button{width:100%}}
.project-progress{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.project-progress progress{width:100%;height:9px;accent-color:var(--green);margin:10px 0}
.project-progress .tag,.project-progress .pill{display:inline-block;margin-top:12px}
.project-risk{background:#f9e1d8;color:#9b4433}
:root[data-theme="dark"] .project-risk{background:#593c34;color:#f2bcaa}

/* Charcoal and yellow workspace theme. */
:root[data-theme="dark"]{--ink:#eef0e9;--muted:#a6ada1;--green:#f2cc45;--line:#30362e;--bg:#1d221d}
:root[data-theme="dark"] :is(aside,header){background:#1d221d}
:root[data-theme="dark"] :is(.metric,.project,.panel,dialog,.calendar,.map,.org,.secondary,.day-label){background:#242a23;color:var(--ink)}
:root[data-theme="dark"] :is(input,textarea,select){background:#242a23;color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] :is(.tag,nav button.active){background:#2c322a;color:#f2cc45}
:root[data-theme="dark"] .primary,:root[data-theme="dark"] .toast{background:#f2cc45;color:#201f14}
:root[data-theme="dark"] .logo{background:#a3d3ca;color:#18261e}
:root[data-theme="dark"] .search{border:1px solid var(--line);border-radius:11px;padding:12px 16px}
:root[data-theme="dark"] nav button{border-radius:12px}

.calendar-modes{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.calendar-modes select{font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}.calendar-modes button[aria-pressed="true"]{background:var(--green);color:var(--bg);border-color:var(--green)}

.calendar-modes[hidden]{display:none}
.calendar-modes{margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:0}
.calendar-tab-list{display:flex;gap:8px}
.calendar-tab-list button.secondary{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--muted);padding:14px 18px}
.calendar-tab-list button.secondary[aria-selected="true"]{background:transparent;color:var(--green);border-bottom-color:var(--green);font-weight:700}
.calendar-modes>select{margin-left:auto;margin-bottom:8px}

.calendar-visibility{display:flex;align-items:center;gap:9px;padding:14px 8px;cursor:pointer;color:var(--ink);font-weight:600}.calendar-visibility input{width:18px;height:18px;margin:0;accent-color:var(--green);cursor:pointer}

.event-calendars{border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:8px 0 18px}.event-calendars legend{padding:0 5px}.event-calendars label{display:flex;align-items:center;gap:10px;margin:8px 0}#event-form .event-calendars input{width:18px;height:18px;margin:0;accent-color:var(--green)}.event-calendars small{display:block;color:var(--muted);margin-top:8px}

/* Calendar appointments are created from the date cells. */
body:has(#calendar.active) #new-project,
#calendar>.toolbar>.primary,
#calendar>.toolbar>.sub{display:none!important}