:root{color-scheme:light;--red:#8f1838;--dark:#211d1c;--cream:#fff;--gold:#c4963e;--line:#e6dfdc;--green:#72876b;--surface:#fff;--soft:#f8f6f4;--muted-surface:#f1edeb;--text:#211d1c;--muted:#716966;--page:#f4f1ef;--shadow:0 12px 32px #2b1f1b14}
:root[data-theme=dark]{color-scheme:dark;--red:#d05a76;--dark:#f4efed;--cream:#1d1d1d;--gold:#d1aa58;--line:#3a3837;--green:#9aae91;--surface:#222;--soft:#292929;--muted-surface:#303030;--text:#f4efed;--muted:#b9b1ad;--page:#151515;--shadow:0 14px 36px #00000047}
html,body{background:var(--page);color:var(--text)}body{background:var(--page);transition:background-color .2s,color .2s}.topbar{background:var(--surface);color:var(--text);border-bottom:1px solid var(--line);box-shadow:0 2px 12px #2619150d}.brand>b,.brand-mark{background:#8f1838;color:#fff}.brand small,.section-head p,#content>p{color:var(--muted);opacity:1}.notification-bell,.profile-button,.ghost{border-color:var(--line);background:var(--soft);color:var(--text)}.shell{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow);border-radius:20px}.tabs{background:var(--surface);border-color:var(--line);gap:4px}.tabs button{color:var(--muted)}.tabs button.active{color:var(--red);box-shadow:inset 0 -3px var(--red)}#content{background:var(--surface)}.section-head h1,#content>h1,.login-card h1,.modal-card h2,.settings-card h2,.settings-card h3,.stats-chart h2{color:var(--text)}.switch{background:var(--muted-surface);border:1px solid var(--line)}.switch button{color:var(--muted)}.switch button.active{background:var(--surface);color:var(--red);box-shadow:0 2px 8px #1e141614}.week-nav{background:var(--soft);border:1px solid var(--line)}.week-nav button,.duty-actions button,.secondary-button,.key-editor-toggle{background:var(--surface);border-color:var(--line);color:var(--text)}.week-day{border-color:var(--line);background:var(--surface)}.week-day h3{background:var(--soft);color:var(--red)}.week-empty,.duty-info small{color:var(--muted)}.duty-card{grid-template-columns:112px 1fr auto;background:var(--surface);border-color:var(--line);border-left:6px solid var(--red);padding:16px;box-shadow:0 3px 12px #2d1f1b0b}.date-box,.cal-team,.open,.cover,.form-error{color:var(--red)}.primary-button,.primary,.duty-actions .primary{background:#8f1838;border-color:#8f1838;color:#fff}.month,.stats-table,.stats-chart{border-color:var(--line);background:var(--surface)}.month h2,.stats-row.head,.monthly-row.head{background:#7b1732;color:#fff}.weekdays b{background:var(--muted-surface);color:var(--muted)}.cal-day,.availability-day{border-color:var(--line);background:var(--surface)}.cal-day>button{border-color:var(--line);background:var(--soft);color:var(--text);border-left:3px solid var(--red)}.availability-month .cal-grid{background:var(--surface)}.settings-card,.install-steps article,.notification-list a{background:var(--soft);border-color:var(--line);color:var(--text)}.settings-card p,.notification-list small,.shift-selector small,.people-list.managed small{color:var(--muted)}.login-card,.modal-card{background:var(--surface);border-color:var(--line);color:var(--text)}.login-card input,.modal-card input,.modal-card select,.settings-card input,.settings-card select,#manage-user-form input,#manage-user-form select,#reset-user-password input,.month-picker input,.key-safe-form input{background:var(--surface);border-color:var(--line);color:var(--text)}.modal-bg{background:#120e0db8;backdrop-filter:blur(4px)}.notification-list a.unread{background:color-mix(in srgb,var(--red) 9%,var(--surface));border-left-color:var(--red)}.stats-summary article{background:var(--soft);border-color:var(--line)}.chart-row>div{background:var(--muted-surface)}.people-list article,.monthly-row>*,.stats-row>*,.reset-request{border-color:var(--line)}.key-safe-card{background:#7b1732;color:#fff}.danger-button{background:var(--surface);color:var(--red);border-color:var(--red)}.toast{background:var(--text);color:var(--surface);box-shadow:var(--shadow)}
.appearance-card{grid-column:1/-1}.setting-heading{display:flex;align-items:center;gap:14px}.setting-heading p{margin:4px 0 0}.setting-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--red) 12%,var(--surface));color:var(--red);font-size:23px}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-options button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font-weight:850}.theme-options button.selected{border:2px solid var(--red);color:var(--red);background:color-mix(in srgb,var(--red) 7%,var(--surface))}.theme-options button span{font-size:20px}
@media(max-width:700px){.shell{border-radius:0}.duty-card{grid-template-columns:1fr;border-left-width:5px}.topbar{position:sticky}.tabs{padding:0 8px}.tabs button{padding:15px 12px}.theme-options button{min-height:52px}}

/* v1.4.1 Weekly Operations Dashboard */
:root{--tech:#24394b;--tech-deep:#192c3c;--tech-line:#cbd6de;--tech-canvas:#eaf0f4;--tech-panel:#f8fafb}:root[data-theme=dark]{--tech:#263e51;--tech-deep:#172735;--tech-line:#405362;--tech-canvas:#17222b;--tech-panel:#202d37}.topbar{background:linear-gradient(135deg,var(--tech-deep),var(--tech));color:#fff;border-bottom-color:#526a7c}.brand small{color:#c8d5de}.notification-bell,.profile-button{background:#ffffff0d;border-color:#ffffff38;color:#fff}.shell{background:var(--tech-canvas)}.tabs{background:var(--tech-deep);border-bottom-color:#536879;padding:0 12px}.tabs button{color:#d3dde4;border-left:1px solid transparent;border-right:1px solid transparent}.tabs button:hover{color:#fff;background:#ffffff0a}.tabs button.active{background:var(--red);color:#fff;box-shadow:none;border-color:#a94d64}#content{background:linear-gradient(135deg,var(--tech-canvas),color-mix(in srgb,var(--tech-canvas) 75%,var(--surface)));min-height:560px}.section-head{border-bottom:1px solid var(--tech-line);padding-bottom:18px}.operations-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 12px}.operations-summary article{display:flex;align-items:center;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--tech-line);border-radius:10px;box-shadow:0 3px 10px #162b3c12}.operations-summary article div{display:grid}.operations-summary b{font-size:26px;line-height:1;color:var(--tech)}:root[data-theme=dark] .operations-summary b{color:#e5edf2}.operations-summary small{margin-top:5px;color:var(--muted);font-weight:750}.summary-icon{width:40px;height:40px;border-radius:9px;display:grid;place-items:center;background:#e8eef2;color:var(--tech);font-size:21px;font-weight:900}.summary-icon.people-icon{color:var(--red);background:color-mix(in srgb,var(--red) 10%,var(--surface))}.summary-icon.cover-icon{color:#9a6a0b;background:#f7eed9}:root[data-theme=dark] .summary-icon{background:#314451;color:#dce8ee}:root[data-theme=dark] .summary-icon.people-icon{color:#ef9aaf;background:#472d35}:root[data-theme=dark] .summary-icon.cover-icon{color:#edca7d;background:#463c28}.operations-week{background:var(--surface);border-color:var(--tech-line);box-shadow:0 2px 8px #162b3c0b}.operations-week button{border-color:var(--tech-line);color:var(--tech)}:root[data-theme=dark] .operations-week button{color:#e6edf2}.operations-list{gap:10px}.operations-list .week-day{border-color:var(--tech-line);border-radius:9px;box-shadow:0 2px 9px #162b3c0c}.operations-list .week-day h3{display:flex;align-items:center;justify-content:space-between;gap:10px;background:color-mix(in srgb,var(--tech-canvas) 65%,var(--surface));color:var(--tech);font-family:Inter,system-ui,sans-serif;font-size:15px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--tech-line)}:root[data-theme=dark] .operations-list .week-day h3{color:#edf3f6}.operations-list .week-day h3 small{font-family:Inter,system-ui,sans-serif;font-size:12px;letter-spacing:0;text-transform:none;color:var(--red)}.operations-list .week-day .cards{padding:0}.operations-list .duty-card{border:0;border-bottom:1px solid var(--tech-line);border-left:4px solid var(--red);border-radius:0;box-shadow:none;margin:0;background:var(--surface)}.operations-list .duty-card:last-child{border-bottom:0}.operations-list .week-empty{background:var(--surface)}
@media(max-width:700px){.topbar{position:sticky}.tabs{padding:0 6px}.operations-summary{gap:6px;margin-top:16px}.operations-summary article{display:grid;justify-items:center;text-align:center;padding:10px 5px;gap:5px}.summary-icon{width:34px;height:34px}.operations-summary b{font-size:22px}.operations-summary small{font-size:10px}.operations-list .week-day h3{padding:11px 12px}.operations-list .duty-card{padding:14px}.operations-list .duty-actions{justify-content:space-between}.operations-list .duty-actions .primary{min-height:42px;min-width:88px}}

/* v1.4.2 Original brewery palette, dashboard layout retained */
:root{--red:#a51f1f;--dark:#211713;--cream:#fff8e8;--gold:#d2a72f;--line:#d7b96f;--green:#567a43;--surface:#fffdf7;--soft:#fff8e8;--muted-surface:#ead9ac;--text:#211713;--muted:#745e4d;--page:#eee3c9;--tech:#6e4b34;--tech-deep:#211713;--tech-line:#d7b96f;--tech-canvas:#f4e8c9;--tech-panel:#fffdf7;--shadow:0 12px 35px #43220f1f}
:root[data-theme=dark]{--red:#d85b55;--dark:#fff4cf;--cream:#211713;--gold:#ddb94e;--line:#725d4c;--green:#92b27d;--surface:#2a1e19;--soft:#33241d;--muted-surface:#493426;--text:#fff4cf;--muted:#cfbba4;--page:#17100d;--tech:#5a3e2e;--tech-deep:#160f0c;--tech-line:#725d4c;--tech-canvas:#211713;--tech-panel:#2a1e19;--shadow:0 14px 36px #00000066}
html,body{background:var(--page)}body{background:linear-gradient(135deg,var(--page),color-mix(in srgb,var(--page) 80%,var(--gold)))}.topbar{background:var(--tech-deep);color:#fff4cf;border-bottom-color:#725d4c}.brand small{color:#cfbba4}.tabs{background:#f0d681;border-bottom-color:var(--line)}.tabs button{color:#4d382b}.tabs button:hover{color:var(--red);background:#ffffff30}.tabs button.active{background:transparent;color:var(--red);box-shadow:inset 0 -3px var(--red);border-color:transparent}:root[data-theme=dark] .tabs{background:#33241d}:root[data-theme=dark] .tabs button{color:#cfbba4}:root[data-theme=dark] .tabs button.active{color:#ff8b82}.shell{background:var(--cream)}#content{background:linear-gradient(135deg,var(--tech-canvas),color-mix(in srgb,var(--tech-canvas) 76%,var(--surface)))}.section-head{border-bottom-color:var(--line)}.operations-summary article,.operations-week,.operations-list .week-day{border-color:var(--line)}.operations-summary b{color:var(--red)}:root[data-theme=dark] .operations-summary b{color:#ff8b82}.summary-icon{background:#f1d97e;color:#684a19}.summary-icon.people-icon{color:var(--red);background:#f6e4b2}.summary-icon.cover-icon{color:#8a5700;background:#f1d97e}.operations-week button{border-color:var(--line);color:var(--red)}.operations-list .week-day h3{background:#f0d681;color:var(--red);border-bottom-color:var(--line)}:root[data-theme=dark] .operations-list .week-day h3{background:#493426;color:#ff9a92}.operations-list .week-day h3 small{color:#8b4f00}:root[data-theme=dark] .operations-list .week-day h3 small{color:#e4bd62}.operations-list .duty-card{border-bottom-color:#ead7a7;border-left-color:var(--red)}.primary-button,.primary,.duty-actions .primary{background:var(--red);border-color:var(--red)}.month h2,.stats-row.head,.monthly-row.head,.key-safe-card{background:var(--tech-deep);color:#fff4cf}.weekdays b{background:#f0d681;color:#4d382b}:root[data-theme=dark] .weekdays b{background:#493426;color:#e8d7c5}
