:root{--surface:#fff;--on-accent:#fff;--surface-alt:var(--soft);color-scheme:light}
:root[data-theme=midnight]{--paper:#101725;--surface:#1b2638;--soft:#25344b;--line:#3c4c65;--ink:#e7edf9;--muted:#b0bfd5;--green:#89b8ff;--on-accent:#102038;--orange:#f4af87;color-scheme:dark}
:root[data-theme=ocean]{--paper:#eff7fa;--surface:#fff;--soft:#e0eff4;--line:#bfd5df;--ink:#173e50;--muted:#526e7c;--green:#176b85;--on-accent:#fff;--orange:#a04f30}
:root[data-theme=lavender]{--paper:#f7f3fb;--surface:#fff;--soft:#eee5f6;--line:#d9cce5;--ink:#40304f;--muted:#766581;--green:#785198;--on-accent:#fff;--orange:#9d4b44}
:root[data-theme=terracotta]{--paper:#fbf4e9;--surface:#fffdf8;--soft:#f3e6d5;--line:#dfcdb6;--ink:#4d342a;--muted:#816b5d;--green:#945236;--on-accent:#fff;--orange:#a13e36}
:root[data-theme=forest]{--paper:#101f19;--surface:#1b3026;--soft:#294335;--line:#496452;--ink:#ecf1df;--muted:#bac9b7;--green:#b6cf96;--on-accent:#17271c;--orange:#f0b286;color-scheme:dark}
body,.workspace{background:var(--paper);color:var(--ink)}.sidebar,.panel,.module-card,.stat,.wallet-card,dialog,.auth-card,.shopping-panel,.recipe-card{background:var(--surface);color:var(--ink)}input,select,textarea{background:var(--surface);color:var(--ink);border-color:var(--line)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.button{background:var(--green);color:var(--on-accent);border-color:var(--green)}.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.button.danger{background:#a33c38;color:#fff;border-color:#a33c38}.nav-item,.text-button,.icon-button{color:var(--green)}.nav-item:not(.active){color:var(--muted)}.nav-item:hover,.transactions th,.wallet-edit-operation,.account-movement,.habit-item,.photos-cover,.photos-preview,.photos-trash-image{background:var(--soft)}.hero{color:var(--on-accent)}.hero .eyebrow,.hero p:last-child{color:inherit}.future,.avatar,.member-avatar{background:var(--soft);color:var(--green)}.transactions td,.transactions th{border-color:var(--line)}dialog::backdrop{background:#07110c77;backdrop-filter:blur(4px)}.theme-panel{padding:28px}.theme-panel>h2{margin-bottom:16px}.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.theme-option{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-align:left}.theme-option[aria-pressed=true]{border:2px solid var(--green);padding:15px}.theme-option>strong,.theme-option>span:last-child{display:block;margin-top:12px}.theme-option>span:last-child{font-size:12px;color:var(--muted);line-height:1.6}.theme-sample{height:90px;border-radius:8px;display:grid;grid-template-columns:23% 1fr;grid-template-rows:25% 1fr;gap:8px;padding:10px;background:var(--sample-bg)}.theme-sample i{grid-row:1/3;background:var(--sample-card);border-radius:4px}.theme-sample b{background:var(--sample-accent);border-radius:4px}.theme-sample em{background:var(--sample-card);border-radius:4px}.sample-classic{--sample-bg:#eeeee4;--sample-card:#fff;--sample-accent:#244d43}.sample-midnight{--sample-bg:#101725;--sample-card:#304058;--sample-accent:#89b8ff}.sample-ocean{--sample-bg:#dfedf4;--sample-card:#fff;--sample-accent:#176b85}.sample-lavender{--sample-bg:#eee5f6;--sample-card:#fff;--sample-accent:#785198}.sample-terracotta{--sample-bg:#f3e6d5;--sample-card:#fffdf8;--sample-accent:#945236}.sample-forest{--sample-bg:#101f19;--sample-card:#294335;--sample-accent:#b6cf96}.money-input-wrap{display:flex;align-items:stretch;gap:8px}.money-input-wrap>input{min-width:0;flex:1}.money-calculate-button{border:1px solid var(--line);background:var(--soft);color:var(--green);border-radius:9px;width:44px;flex:0 0 44px;font-size:25px}.money-calculator{width:min(440px,calc(100vw - 28px));max-height:94vh;overflow:auto}.money-calculator output{display:block;text-align:right;font-size:28px;margin:16px 0;overflow-wrap:anywhere}.calculator-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.calculator-keys button{font-size:18px;padding:10px}.money-calculator .form-actions{flex-wrap:wrap}.form-error{color:var(--orange)}@media(max-width:700px){.theme-options{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-panel{padding:20px}}@media(max-width:400px){.theme-options{grid-template-columns:1fr}}

:root[data-theme] dialog,:root[data-theme] .calendar-dialog,:root[data-theme] .learning-stage,:root[data-theme] .calendar-day,:root[data-theme] .habit-day,:root[data-theme] .learning-day{background:var(--surface);color:var(--ink)}:root[data-theme] .calendar-selected,:root[data-theme] .calendar-day:hover,:root[data-theme] .habit-item,:root[data-theme] .habit-item-row,:root[data-theme] .learning-task,:root[data-theme] .learning-criteria,:root[data-theme] .hobby-column,:root[data-theme] .calendar-week-table thead th,:root[data-theme] .calendar-week-today>th{background:var(--soft);color:var(--ink)}:root[data-theme] .planning-tabs .active,:root[data-theme] .hobby-toolbar .active,:root[data-theme] .learning-toolbar .active,:root[data-theme] .photos-actions .active,:root[data-theme] .calendar-today .calendar-day-number{background:var(--green);color:var(--on-accent)}:root[data-theme] .habit-done,:root[data-theme] .learning-day.completed{background:#e5efdf;color:#253b34}:root[data-theme] .habit-partial,:root[data-theme] .habit-missed,:root[data-theme] .learning-day.overdue{background:#fbefdd;color:#5c4424}:root[data-theme] .stat.income strong{color:var(--green)}
.sidebar{overflow-y:auto}.sidebar nav,.sidebar .brand,.sidebar-bottom{flex-shrink:0}

.section-preferences{margin-top:24px}.section-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-top:20px}.section-options label{display:flex;gap:12px;align-items:center;font-size:14px;cursor:pointer}.section-options input{width:20px;height:20px;min-height:20px;flex:0 0 20px;accent-color:var(--green)}
