:root{--page:#f5f4ef;--surface:#ffffff;--surface-soft:#f7f9f2;--field:#fcfdf9;--header:#fafbf7;--text:#253b34;--muted:#6f796b;--subtle:#7c8775;--line:#e1e6d9;--green:#244c3e;--accent:#244c3e;--on-accent:#fff;--selected:#edf2e9;--focus:#b4c8ae;--track:#e7eddf;--progress:#6b8758;--success:#50713d;--badge-bg:#f3ecdb;--badge-text:#886c32;--warning-bg:#fbf8f0;--warning:#a35138;--danger:#923d34;color-scheme:light}
:root[data-theme=red]{--page:#f7f2f0;--surface-soft:#fbf5f3;--header:#fcf8f6;--field:#fffaf8;--text:#482d30;--muted:#80676a;--subtle:#927a7c;--line:#eadcdb;--green:#74343c;--accent:#74343c;--selected:#f5e7e8;--focus:#cb959c;--track:#efdddf;--progress:#a25863;--success:#8c454f;--badge-bg:#f8eddd;--badge-text:#8b6934;--warning-bg:#fcf5eb}
:root[data-theme=blue]{--page:#f0f4f8;--surface-soft:#f3f7fb;--header:#f8fafd;--field:#fafcff;--text:#293e54;--muted:#66798c;--subtle:#7b8d9e;--line:#dbe4ed;--green:#315c87;--accent:#315c87;--selected:#e6eef8;--focus:#94b5d5;--track:#e0eaf4;--progress:#658db5;--success:#3b6c94;--badge-bg:#f5eddc;--badge-text:#836a34;--warning-bg:#fcf7ed}
:root[data-theme=black]{--page:#131517;--surface:#202326;--surface-soft:#252a2e;--header:#191c1f;--field:#282d31;--text:#eceeea;--muted:#b4bdb4;--subtle:#a9b3aa;--line:#3c454b;--green:#d6ddda;--accent:#d6ddda;--on-accent:#1a2220;--selected:#353e41;--focus:#899b9a;--track:#3c4548;--progress:#a9beb7;--success:#b7cdbd;--badge-bg:#3c3321;--badge-text:#e0c790;--warning-bg:#302b24;--warning:#efb399;--danger:#ac514b;color-scheme:dark}
:root[data-theme=white]{--page:#ffffff;--surface:#ffffff;--surface-soft:#f8f8f8;--header:#ffffff;--field:#ffffff;--text:#303030;--muted:#707070;--subtle:#7b7b7b;--line:#e2e2e2;--green:#414141;--accent:#414141;--selected:#eeeeee;--focus:#ababab;--track:#ebebeb;--progress:#7e7e7e;--success:#5a5a5a;--badge-bg:#f6f0e3;--badge-text:#84672d;--warning-bg:#fcf8f0}
html{background:var(--page);color:var(--text)}body{background:var(--page);color:var(--text)}.topbar{background:var(--header);border-color:var(--line)}.brand,.greeting-button{color:var(--text)}.brand-icon,.primary{background:var(--accent);color:var(--on-accent)}.brand-caption{border-color:var(--line)}.secondary{background:var(--selected);color:var(--accent)}.danger,.notice.error{background:var(--danger);color:#fff}.metrics,.project-panel,.detail,.bau-card,dialog{background:var(--surface);border-color:var(--line);color:var(--text)}.metrics span,.brand-caption,.local-label,.project-meta,.panel-heading>span,.detail-heading p,.task-header span,.muted,.empty p,#delete-dialog p{color:var(--muted)}.local-label i{background:var(--progress)}.eyebrow,footer,.panel-note,.list-empty,.task-empty,.edit-hint{color:var(--subtle)}.metrics>div,.panel-heading,.panel-note,.task-section,.task-row{border-color:var(--line)}.project-item{color:var(--text)}.project-item.selected,.project-item:hover,.greeting-button:hover{background:var(--selected);border-color:var(--line)}.badge{color:var(--muted);background:var(--selected)}.badge.working,.badge.finished{color:var(--success);background:var(--selected)}.badge.waiting{color:var(--badge-text);background:var(--badge-bg)}.overdue,.metrics>div:nth-child(3) strong,.required{color:var(--warning)}.text-button,.icon-button{color:var(--muted)}.title-input{color:var(--text)!important}input,select,textarea,.task-assignment{background:var(--field);color:var(--text);border-color:var(--line)}input::placeholder,textarea::placeholder{color:var(--subtle)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--selected)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.blocker-field{background:var(--warning-bg);border-color:var(--line)}.progress{background:var(--track)}.progress div{background:var(--progress)}.task-row input{accent-color:var(--accent)}.task-row.done label,.task-row button{color:var(--subtle)}.saved{color:var(--success)}.notice{background:var(--accent);color:var(--on-accent)}.empty-symbol{background:var(--selected);border-color:var(--line);color:var(--progress)}.bau-section,.workflow-area{background:var(--surface-soft);border-color:var(--line)}.bau-description,.bau-badge-empty,.bau-archive-note,.bau-empty,.bau-archived,.bau-card-more,.bau-card-history,.bau-card-footer button,.bau-card-more>summary span,.bau-record-heading,.bau-card-history summary span,.bau-today-status time,.workflow-progress,.phase-arrow{color:var(--muted)}.bau-total{color:var(--muted)}.bau-total strong{color:var(--text)}.bau-today-status{color:var(--muted)}.bau-today-status.is-checked,.phase-feedback{color:var(--success)}.bau-badge,.bau-mini-badge{background:var(--badge-bg);color:var(--badge-text);border-color:var(--line)}.bau-earned,.bau-record-actions .text-button{color:var(--badge-text)}.bau-card-more .bau-earned{color:var(--badge-text)}.bau-card-history,.bau-record,.bau-card-more,.bau-archived,.bau-empty,.phase-task-group{border-color:var(--line)}.bau-card.is-archived{background:var(--surface-soft)}.bau-record p{color:var(--text)}.bau-card-actions .primary:disabled,.phase-current-row button:disabled{background:var(--selected);color:var(--muted)}.milestone-dialog{background:var(--surface)}.milestone-dialog h2,.milestone-dialog>p:not(.eyebrow){color:var(--text)}.milestone-emblem{color:var(--badge-text);border-color:var(--badge-text)}.phase-chip{background:var(--surface);color:var(--text);border-color:var(--line)}.phase-chip.phase-completed{background:var(--selected);color:var(--success);border-color:var(--line)}.phase-chip.phase-selected{border-color:var(--accent);box-shadow:inset 0 -2px var(--accent)}.phase-task-group summary span:last-child,.phase-task-group summary:before{color:var(--subtle)}.phase-editor-row input{background:var(--field)}.bau-error,.appearance-error{color:var(--warning)}.phase-celebrate{animation-name:theme-phase-highlight}@keyframes theme-phase-highlight{from{background:var(--selected);transform:translateY(3px)}to{background:transparent;transform:translateY(0)}}
.motto-heading{min-width:0;flex:1}.motto-row{display:flex;align-items:baseline;gap:8px}.motto-row h1{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.5}.motto-edit{flex-shrink:0;width:26px;height:26px;padding:0;background:transparent;font-size:16px;line-height:26px;color:var(--subtle);opacity:.6;border-radius:4px}.motto-edit:hover,.motto-edit:focus-visible{opacity:1;background:var(--selected)}.heading>.primary{flex-shrink:0}.theme-open{display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);color:var(--muted);background:var(--surface);font-size:12px;white-space:nowrap}.theme-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);border:1px solid var(--subtle)}.theme-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 0}.theme-options button{display:flex;align-items:center;flex-direction:column;gap:10px;border:1px solid var(--line);background:var(--field);color:var(--text);padding:16px 8px;font-size:14px}.theme-options button[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--selected);background:var(--selected)}.theme-sample{display:block;width:30px;height:30px;border-radius:50%;border:1px solid #b9b9b9}.sample-green{background:#244c3e}.sample-red{background:#74343c}.sample-blue{background:#315c87}.sample-black{background:#191c1f}.sample-white{background:#fff}.appearance-error{font-size:14px;line-height:1.7}.appearance-error:empty{display:none}.topbar-personal{gap:16px}@media(max-width:900px){.topbar-personal{gap:10px}}@media(max-width:700px){.topbar{height:auto;min-height:76px;padding:12px 18px;gap:12px}.topbar-personal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;max-width:calc(100% - 80px)}.greeting-button{max-width:170px;min-width:0;justify-self:end}.topbar-personal .local-label{grid-column:1/-1;justify-self:end}.theme-open{padding:4px 6px;font-size:12px}.heading{gap:10px}.motto-row{gap:3px}.heading h1{max-width:none;font-size:22px}.motto-edit{width:22px;height:24px;font-size:14px}.theme-options{gap:6px}.theme-options button{padding:12px 4px;font-size:12px}.theme-sample{width:25px;height:25px}}
