html[data-theme=dark]{--green:#85d4b8;--ink:#e3eee8;--muted:#adbbb2;--line:#39483e;--cream:#141d18}
html[data-theme=dark] body,html[data-theme=dark] #auth-root{background:var(--cream);color:var(--ink)}
html[data-theme=dark] .card,html[data-theme=dark] aside,html[data-theme=dark] header,html[data-theme=dark] .auth-layout,html[data-theme=dark] .auth-form-side,html[data-theme=dark] dialog,html[data-theme=dark] .quick{background:#1d2922;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select,html[data-theme=dark] .quiz-option{background:#17221b!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] .secondary,html[data-theme=dark] .tool-tabs button{background:#2b3c31;color:var(--ink);border-color:#4b6254}
html[data-theme=dark] .primary,html[data-theme=dark] .button{background:#2c8167;color:white}
html[data-theme=dark] .hero,html[data-theme=dark] .stat,html[data-theme=dark] .motivation,html[data-theme=dark] .feedback,html[data-theme=dark] .note-list-item.selected,html[data-theme=dark] .folder-button.selected,html[data-theme=dark] .student-choices label:has(input:checked),html[data-theme=dark] .upload-box,html[data-theme=dark] .badge,html[data-theme=dark] nav a.active{background:#293c2e;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .flash-face,html[data-theme=dark] .flash-back,html[data-theme=dark] .day,html[data-theme=dark] .event{background:#2b3b30;color:var(--ink)}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.feature-grid .card h2{margin-top:12px}.feature-grid p,.feature-copy{line-height:1.8;color:var(--muted)}.feature-grid .card{margin:0}.feature-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.feature-status{min-height:24px;line-height:1.7;overflow-wrap:anywhere}.shared-note-list{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.shared-note-list button.active{border-color:var(--green)}.uid-display{overflow-wrap:anywhere;user-select:all}.exam-question{padding:20px 0;border-bottom:1px solid var(--line)}.exam-question legend{font-weight:600;line-height:1.8;white-space:pre-wrap}.exam-option{display:flex;align-items:flex-start;gap:12px;padding:10px 0}.exam-option input{flex-shrink:0;margin-top:3px}.exam-timer{position:sticky;top:0;background:var(--cream);padding:15px;z-index:2;font-weight:700}.chat-message{padding:16px;border:1px solid var(--line);border-radius:12px;margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.chat-message[data-role=assistant]{background:var(--cream)}.chat-message strong{display:block;font-size:11px;color:var(--muted)}.maintenance-cover{position:fixed;inset:0;background:var(--cream);color:var(--ink);z-index:1000;display:grid;place-items:center;padding:25px}.maintenance-cover>section{max-width:600px;text-align:center}.maintenance-cover h1{font-size:40px}.maintenance-cover p{line-height:1.9}.feature-links{display:flex;gap:15px;flex-wrap:wrap;margin:15px 0}
@media(prefers-reduced-motion:no-preference){button,a,.card{transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s}button:active,.button:active{transform:scale(.98)}.feature-grid .card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #173c2810}.screen-enter{animation:studyhaven-enter .22s ease-out}@keyframes studyhaven-enter{from{opacity:.45;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:760px){.feature-grid{grid-template-columns:1fr}.feature-toolbar{gap:7px}.exam-timer{font-size:12px}.maintenance-cover h1{font-size:30px}nav{grid-template-columns:repeat(6,minmax(0,1fr))!important}nav a[href="#profile"]{display:none}}

html[data-theme=dark] .sidebar-note,html[data-theme=dark] .writing-stats>div,html[data-theme=dark] .calendar-date,html[data-theme=dark] .calendar-week-day,html[data-theme=dark] .calculation{background:#24362a;color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .quiz-option.correct{background:#214a31!important;border-color:#75b089!important}html[data-theme=dark] .quiz-option.wrong{background:#502d2d!important;border-color:#bc8282!important}
