:root{--bg:#1b1625;--panel:var(--bg);--panel2:#2b223a;--text:#eeebf4;--muted:#afa3c0;--line:#3a304a;--accent:#bda5ff;--accent-soft:#38294f;--theme-ink:#271e35;--theme-control:#211b2b;--theme-danger:#f393a2;--theme-success:#a4d9b4;--theme-info:#97c8eb;--theme-warning:#e7c38e}
:root[data-theme=dark]{--bg:#111216;--panel2:#23242b;--text:#ededf3;--muted:#a0a0ae;--line:#30313b;--accent-soft:#292631}
:root[data-theme=light]{color-scheme:light;--bg:#faf9fd;--panel:var(--bg);--panel2:#efeaf6;--text:#2e253b;--muted:#70657f;--line:#ddd5e8;--accent:#7954c6;--accent-soft:#eee5fb;--theme-ink:#fff;--theme-control:#f0ebf6;--theme-danger:#a83e54;--theme-success:#28734d;--theme-info:#286b96;--theme-warning:#84601f}
body{background:var(--bg)}
.sidebar,.daily-strip,.calendar-panel,.agenda,.secondary-page,.calendar-sticky,.calendar-dates .timeline-header,.version-calendar .timeline-header,.timeline-corner,.timeline-game-label{background:var(--bg)}
.daily-strip,.calendar-panel,.agenda,.secondary-page{border-color:transparent;box-shadow:none}
.calendar-sticky{box-shadow:none}
.version-calendar .timeline-column,.calendar-guide,.version-calendar .timeline-date{border-right-color:var(--line)}
.calendar-top-scroll{background:var(--bg);scrollbar-color:var(--muted) var(--bg)}
.calendar-scroll,.calendar-dates,#daily-games,#content-checklist{scrollbar-color:var(--muted) var(--bg)}
.topbar-right{flex-wrap:wrap}
.theme-picker{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:9px;padding:3px;background:var(--bg);flex-shrink:0}
.theme-picker button{display:inline-flex;gap:5px;align-items:center;justify-content:center;padding:6px 9px;border-radius:6px;min-height:30px;font-size:11px;color:var(--muted)}
.theme-picker button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);font-weight:700}
.theme-picker button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.theme-picker svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
:root[data-theme=light] button.primary,:root[data-theme=light] #updates-refresh{background:var(--accent);color:#fff}
:root[data-theme=light] .primary:hover{background:#6843b5}
:root[data-theme=light] .version-calendar .timeline-event.story-event:after,:root[data-theme=light] .version-calendar .timeline-event.pickup-event:not(:has(.pickup-art)):after{background:none}
:root[data-theme=light] .filterbar button.active,:root[data-theme=light] .view-switch button.active,:root[data-theme=light] #updates-games button[aria-pressed=true],:root[data-theme=light] #updates-kinds button[aria-pressed=true],:root[data-theme=light] .art-modes button.active,:root[data-theme=light] .history-switch button.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}
:root[data-theme=light] .timeline-date.today strong{background:var(--accent);color:#fff}
:root[data-theme=light] .today-label{color:var(--accent)}
:root[data-theme=light] .calendar-guide.today-guide,:root[data-theme=light] .version-calendar .timeline-column.today{background:#7954c60a;border-left-color:#7954c680;border-right-color:#7954c640}
:root[data-theme=light] .version-calendar .timeline-date.today{background:var(--accent-soft);box-shadow:inset 2px 0 #7954c680,inset 0 -3px var(--accent)}
:root[data-theme=light] .version-label,:root[data-theme=light] .version-segment{color:color-mix(in srgb,var(--game) 50%,#30233e)}
:root[data-theme=light] .version-label{background:var(--bg)}
:root[data-theme=light] .timeline-event:not(.pickup-event){background:color-mix(in srgb,var(--game) 12%,var(--bg));color:color-mix(in srgb,var(--game) 45%,#30233e)}
:root[data-theme=light] .version-calendar .timeline-event.day-marker{background:transparent;color:var(--muted)}
:root[data-theme=light] .version-calendar .timeline-event.story-event{background:var(--bg);color:var(--text)}
:root[data-theme=light] .version-calendar .timeline-event.pickup-event:not(:has(.pickup-art)):not(.reset-image-event){background:color-mix(in srgb,var(--game) 10%,var(--bg));color:var(--text)}
:root[data-theme=light] .timeline-event:not(:has(.pickup-art)) .pickup-copy{text-shadow:none}
:root[data-theme=light] .timeline-event:not(:has(.pickup-art)) .pickup-text small{color:var(--muted)}
:root[data-theme=light] .content-row{color:var(--text)}
:root[data-theme=light] .content-row.complete{color:color-mix(in srgb,var(--game) 45%,#30233e)}
:root[data-theme=light] .updates-new-line{color:#bd304c}
:root[data-theme=light] .updates-new-line:before,:root[data-theme=light] .updates-new-line:after{background:#bd304c}
@media(max-width:700px){.topbar{height:auto;min-height:40px;gap:6px;padding:4px 0}.topbar-right{gap:6px}.theme-picker{padding:2px}.theme-picker button{padding:4px 7px;min-height:28px;font-size:10px}.theme-picker svg{width:13px;height:13px}.topbar .theme-picker span{display:none}}
