/* Opt-in Luna/Bliss skin. No application route or control is provided by the ornamental chrome. */
:root[data-style=windows-xp]{color-scheme:light;--xp-blue:#0058d8;--xp-ink:#0b214b;--border:#93b5d9;--separator:#c5d8ec;--radius:6px;--calendar-schedule:#0074ee;--calendar-elective:#8141b6;--calendar-plan:#bc7a10;--calendar-session:#b42c37}
[data-style=windows-xp]:not(.invest-route) body{font-family:Tahoma,Verdana,sans-serif;background:#7bc3f3;color:#0b214b;position:relative;isolation:isolate}
/* A fixed layer keeps the landscape tied to the viewport in mobile WebKit too. */
[data-style=windows-xp]:not(.invest-route) body:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:#7bc3f3 url('/app/assets/windows-xp/bliss-wallpaper.webp') center / cover no-repeat}
[data-style=windows-xp]:not(.invest-route) .aurora{display:none}
[data-style=windows-xp]:not(.invest-route) .app{position:relative}
[data-style=windows-xp]:not(.invest-route) .topbar{background:linear-gradient(#d9f2ffa8,#eff9ffc4);border:1px solid #d9f4ffb0;border-radius:6px;box-shadow:inset 0 1px #fff8,0 2px 5px #1765a526;padding-inline:10px;color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .topbar small{color:#355381}
[data-style=windows-xp]:not(.invest-route) .icon-button{border:1px solid #6399d0;border-radius:5px;background:linear-gradient(#fff,#d5eafa 65%,#bfd8f0);color:#0d3f72;box-shadow:inset 1px 1px 0 white,inset -1px -1px 0 #91afcb}
[data-style=windows-xp]:not(.invest-route) .settings-icon{filter:invert(1) drop-shadow(0 1px #fff8)}
[data-style=windows-xp]:not(.invest-route) .settings-emblem{display:none}
[data-style=windows-xp]:not(.invest-route) h1,[data-style=windows-xp]:not(.invest-route) h2,[data-style=windows-xp]:not(.invest-route) h3{font-family:Tahoma,Verdana,sans-serif;letter-spacing:-.35px;color:#0b214b}
/* Reuse the existing heading, including its date and action, as an XP window header. */
[data-style=windows-xp]:not(.invest-route) #main>.section-head:has(h1){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;overflow:hidden;border:2px solid #0063df;border-radius:8px 8px 4px 4px;background:#f7fbfff2;box-shadow:inset 0 0 0 1px #fff,0 3px 8px #0f4a7a35;padding:0;margin-bottom:14px}
[data-style=windows-xp]:not(.invest-route) #main>.section-head:has(h1)>.grow{display:contents}
[data-style=windows-xp]:not(.invest-route) #main>.section-head h1{grid-column:1/-1;position:relative;padding:10px 85px 11px 12px;font-size:24px;line-height:1.2;color:white;background:linear-gradient(#62afff 0,#147cf3 10%,#0062e5 50%,#0053d3 85%,#1384f4);text-shadow:1px 1px 0 #0546a9;box-shadow:inset 0 1px #c2e7ff,inset 0 -1px #023da5}
[data-style=windows-xp]:not(.invest-route) #main>.section-head h1:after{content:'';position:absolute;pointer-events:none;right:7px;top:9px;width:68px;height:22px;background:url('/app/assets/windows-xp/controls.svg') center / contain no-repeat}
[data-style=windows-xp]:not(.invest-route) #main>.section-head p{grid-column:1;padding:10px 12px;margin:0;color:#3c5a82;font-size:12px}
[data-style=windows-xp]:not(.invest-route) #main>.section-head>button{grid-column:2;grid-row:2;align-self:center;margin:4px 8px}
[data-style=windows-xp]:not(.invest-route) #main>p.muted{background:#f5faffeb;border:1px solid #a9c8e5;border-radius:3px;padding:8px 12px;display:table;color:#3c5a82}
[data-style=windows-xp]:not(.invest-route) .primary:not(.danger),[data-style=windows-xp]:not(.invest-route) .secondary,[data-style=windows-xp]:not(.invest-route) .quiet,[data-style=windows-xp]:not(.invest-route) .segments button{color:#10294c;border:1px solid #7694b1;border-radius:4px;background:linear-gradient(#fff,#f5f5f0 45%,#e2e4dc);box-shadow:inset 1px 1px #fff,inset -1px -1px #b9c3ca,0 1px 2px #2b5a7924;font-weight:600}
[data-style=windows-xp]:not(.invest-route) .primary:not(.danger){border-color:#156bd3;box-shadow:inset 0 0 0 2px #fff,inset 0 0 0 3px #a4cdf4,0 1px 3px #327fc43d}
[data-style=windows-xp]:not(.invest-route) button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 1px 1px 3px #234c6b44}
[data-style=windows-xp]:not(.invest-route) button:disabled{color:#728096;opacity:.65;background:#e7e9e5}
[data-style=windows-xp]:not(.invest-route) .segments{gap:4px;padding:7px;background:#f5fafff5;border:1px solid #83ace0;border-radius:5px;box-shadow:inset 0 1px white;width:fit-content;max-width:100%}
[data-style=windows-xp]:not(.invest-route) .segments button{border-radius:4px;min-width:0;padding-inline:10px;font-size:11px}
[data-style=windows-xp]:not(.invest-route) .segments button.selected{background:linear-gradient(#bcdfff,#e7f3ff 45%,#a3cefa);border-color:#2e6dc0;box-shadow:inset 0 0 0 1px #4f9be8}
[data-style=windows-xp]:not(.invest-route) .date-strip{background:#f9fcfff2;border:1px solid #8fb6df;border-radius:5px;padding:6px;gap:4px}
[data-style=windows-xp]:not(.invest-route) .date-strip button{color:#173b6c;border-radius:5px}
[data-style=windows-xp]:not(.invest-route) .date-strip button small{color:#4c6b92}
[data-style=windows-xp]:not(.invest-route) .date-strip .selected{color:#fff;background:linear-gradient(#1fa3ff,#0064ed 60%,#0056da);box-shadow:inset 0 1px 0 #93d5ff,0 1px 4px #1377e755}
[data-style=windows-xp]:not(.invest-route) .date-strip .selected small{color:#fff}
[data-style=windows-xp]:not(.invest-route) .summary-strip{background:linear-gradient(#fbfdff,#edf7ff);border:2px solid #076ce2;border-radius:6px;padding:20px 16px 14px;position:relative;box-shadow:inset 0 1px white,0 2px 6px #1769a330}
[data-style=windows-xp]:not(.invest-route) .summary-strip>div{border-color:#c2d9ef}
[data-style=windows-xp]:not(.invest-route) .summary-strip strong{color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .summary-strip small{color:#486c99}
[data-style=windows-xp]:not(.invest-route) .card,[data-style=windows-xp]:not(.invest-route) .menu-row,[data-style=windows-xp]:not(.invest-route) .room-card{background:linear-gradient(#fff,#f5faff);border:1px solid #a6c6e8;border-radius:7px;box-shadow:inset 0 1px #fff,0 2px 5px #1569a31a}
[data-style=windows-xp]:not(.invest-route) .timeline{background:#f8fcfff7;border:2px solid #086bdb;border-radius:7px;padding:10px 12px 10px 25px;gap:0}
[data-style=windows-xp]:not(.invest-route) .timeline:before{inset-inline-start:12px;background:#7caadd;width:1px}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson{background:#fff;border:0;border-bottom:1px solid #c7dcef;border-radius:0;padding:16px 12px 18px 16px;box-shadow:none}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson:last-child{border-bottom:0}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson:before{width:6px;height:calc(100% - 26px);border-radius:3px;inset-inline-start:-16px;inset-block-start:13px;background:#2795f4;box-shadow:none}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson[data-lesson-type=seminar]:before{background:#40a84d}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson.active{border-inline-start:0;background:#eaf5ff;box-shadow:inset 0 0 0 1px #3f96e5}
[data-style=windows-xp]:not(.invest-route) .timeline>.lesson.past{opacity:1}
[data-style=windows-xp]:not(.invest-route) .lesson h3{font-size:18px;line-height:1.35;color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .lesson .time{color:#315e92;font-weight:500}
[data-style=windows-xp]:not(.invest-route) .lesson .meta{color:#3c5e8b}
[data-style=windows-xp]:not(.invest-route) .lesson[data-lesson-type=seminar] .meta:first-of-type{color:#176b2b}
[data-style=windows-xp]:not(.invest-route) .gap-card{color:#3c5e8b;background:#edf5fc;border-color:#a6c6e8}
[data-style=windows-xp]:not(.invest-route) .hero.live-hero{background:#f7fbfff0;border:2px solid #126bdb;border-radius:7px;padding:18px;gap:18px;box-shadow:inset 0 1px white,0 2px 8px #115c9133}
[data-style=windows-xp]:not(.invest-route) .hero.live-hero:before,[data-style=windows-xp]:not(.invest-route) .hero.live-hero:after{display:none}
[data-style=windows-xp]:not(.invest-route) .hero.live-hero h2{font-size:clamp(24px,6vw,40px);line-height:1.17;letter-spacing:-.6px}
[data-style=windows-xp]:not(.invest-route) .hero-instrument{background:#e5f0fc;border:1px solid #95b9db;border-radius:5px;box-shadow:inset 0 1px white;backdrop-filter:none;-webkit-backdrop-filter:none}
[data-style=windows-xp]:not(.invest-route) .hero-instrument:after{display:none}
[data-style=windows-xp]:not(.invest-route) .badge{background:#d0e9ff;color:#103a70;border-color:#8fbae4}
[data-style=windows-xp]:not(.invest-route) .menu-row,[data-style=windows-xp]:not(.invest-route) .quick-actions .menu-row,[data-style=windows-xp]:not(.invest-route) .settings-section .menu-row{padding:14px;min-height:76px;gap:12px;border:1px solid #a6c6e8;border-radius:7px;background:linear-gradient(#fff,#f5faff)}
[data-style=windows-xp]:not(.invest-route) .menu-icon,[data-style=windows-xp]:not(.invest-route) .quick-actions .menu-icon{background:linear-gradient(140deg,#e6faff,#a2deef);color:#154968;border:1px solid #72bedc;border-radius:5px;width:40px;height:40px;box-shadow:inset 1px 1px white,0 1px 1px #4e8fa633}
[data-style=windows-xp]:not(.invest-route) .menu-row .arrow{color:#15448a}
[data-style=windows-xp]:not(.invest-route) .quick-actions{display:grid;gap:8px;border:0}
[data-style=windows-xp]:not(.invest-route) .settings-primary{gap:12px}
[data-style=windows-xp]:not(.invest-route) .settings-section{position:relative;overflow:hidden;border:1px solid #2370ce;border-radius:6px;background:#f2f9fff5;padding:0 12px 14px;box-shadow:0 2px 6px #1d5d9033}
[data-style=windows-xp]:not(.invest-route) .settings-section>.eyebrow{margin:0 -12px 16px;padding:9px 12px;background:linear-gradient(#429cfb,#0061e5 40%,#0057d1);color:white;letter-spacing:1px;font-size:11px;box-shadow:inset 0 1px #c2e4ff}
[data-style=windows-xp]:not(.invest-route) .settings-section .menu-row+.menu-row{margin-top:8px}
[data-style=windows-xp]:not(.invest-route) .style-feature{border:1px solid #7aa7dc;border-radius:6px;background:linear-gradient(#fff,#e7f3ff);box-shadow:inset 0 1px white;padding:16px}
[data-style=windows-xp]:not(.invest-route) .style-mini{background:url('/app/assets/windows-xp/preview.svg') center / cover,url('/app/assets/windows-xp/bliss-wallpaper.webp') center / cover #cdeaff;transform:none;border:1px solid #2b84e7;border-radius:4px;box-shadow:1px 2px 4px #2277af33}
[data-style=windows-xp]:not(.invest-route) .style-mini i{display:none}
[data-style=windows-xp]:not(.invest-route) .style-mini span{background:#fff9;padding:2px 4px;border-radius:2px;color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .style-feature strong{font-size:21px}
[data-style=windows-xp]:not(.invest-route) .style-tile{background:#fff;border:1px solid #bbd3ec;border-radius:5px;box-shadow:0 1px 4px #186aa32b}
[data-style=windows-xp]:not(.invest-route) .style-tile strong{color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .style-description{color:#4c6c95}
.style-tile[data-style=windows-xp] .style-scene{position:relative;overflow:hidden;background:url('/app/assets/windows-xp/preview.svg') center / cover,url('/app/assets/windows-xp/bliss-wallpaper.webp') center / cover #cdeaff;border-radius:4px}
.style-tile[data-style=windows-xp] .style-scene i{display:none}
.style-tile[data-style=windows-xp].selected{outline:2px solid #0064eb;outline-offset:2px;box-shadow:0 0 0 1px #8eccff,0 0 10px #2395ff3d}
[data-style=windows-xp]:not(.invest-route) .preview-card{background:linear-gradient(#fff,#e6f3ff);border:2px solid #0769e5;border-radius:7px;box-shadow:0 3px 10px #075c8c33;backdrop-filter:none}
[data-style=windows-xp]:not(.invest-route) .preview-card:before,[data-style=windows-xp]:not(.invest-route) .preview-card:after{display:none}
[data-style=windows-xp]:not(.invest-route) .week-grid{gap:12px}
[data-style=windows-xp]:not(.invest-route) .week-day{padding:0;background:#f7fbff;border:2px solid #0a68d8;border-radius:7px;overflow:hidden}
[data-style=windows-xp]:not(.invest-route) .week-day summary{padding:12px 10px;color:white;background:linear-gradient(#429cfa,#0067e9 45%,#0054cc);border-bottom:1px solid #064caa}
[data-style=windows-xp]:not(.invest-route) .week-day summary strong,[data-style=windows-xp]:not(.invest-route) .week-day summary small{color:white}
[data-style=windows-xp]:not(.invest-route) .week-day summary:after{background:#f3faff;color:#0056cb;border:1px solid #86b2e1;border-radius:3px}
[data-style=windows-xp]:not(.invest-route) .week-day .timeline{border:0;border-radius:0;margin:0;padding:8px 8px 8px 23px;background:white}
[data-style=windows-xp]:not(.invest-route) .bottom-nav{border-radius:6px;border:1px solid #004fba;background:linear-gradient(#67b7ff 0,#1686fa 10%,#0064e5 28%,#0054cd 85%,#036bea);box-shadow:inset 0 1px #c1ecff,inset 0 -1px #023488,0 3px 10px #03397166;backdrop-filter:none;-webkit-backdrop-filter:none}
[data-style=windows-xp]:not(.invest-route) .bottom-nav button{font-family:Tahoma,Verdana,sans-serif;color:#fff;font-size:10px;text-shadow:1px 1px #00439b}
[data-style=windows-xp]:not(.invest-route) .bottom-nav:before{border-radius:4px;background:linear-gradient(#0053bd,#087cf1);border:1px solid #79bcff;box-shadow:inset 1px 1px 3px #00367a66}
[data-style=windows-xp]:not(.invest-route) .bottom-nav .icon{color:#e6f6ff;filter:drop-shadow(1px 1px 0 #06326b88)}
[data-style=windows-xp]:not(.invest-route) .bottom-nav .settings-icon{filter:sepia(1) saturate(6) hue-rotate(355deg) drop-shadow(1px 1px #134578)}
[data-style=windows-xp]:not(.invest-route) dialog{color:#0b214b;background:#f7fbff;border:3px solid #005ade;border-radius:8px 8px 3px 3px;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:inset 0 0 0 1px #fff,0 10px 35px #02467566}
[data-style=windows-xp]:not(.invest-route) dialog::backdrop{background:#1b4d7b55}
[data-style=windows-xp]:not(.invest-route) .sheet-head{padding:10px 12px;background:linear-gradient(#4fa5ff,#0068e8 35%,#0054cf);border-radius:4px;color:white;gap:12px}
[data-style=windows-xp]:not(.invest-route) .sheet-head h2{color:white;font-size:23px}
[data-style=windows-xp]:not(.invest-route) .sheet-handle{background:#7da9da}
[data-style=windows-xp]:not(.invest-route) input,[data-style=windows-xp]:not(.invest-route) select,[data-style=windows-xp]:not(.invest-route) textarea{font-family:Tahoma,Verdana,sans-serif;color-scheme:light;background:#fff;color:#0b214b;border:1px solid #7f9db9;border-radius:3px;box-shadow:inset 1px 1px 2px #9fb1c42b}
[data-style=windows-xp]:not(.invest-route) .calendar-grid{padding:8px;border:1px solid #9cb9d5;background:#fff;border-radius:4px}
[data-style=windows-xp]:not(.invest-route) .calendar-grid button{border-radius:3px;color:#0b214b}
[data-style=windows-xp]:not(.invest-route) .calendar-grid .selected{color:#fff;background:linear-gradient(#2fa6ff,#005ce4)}
[data-style=windows-xp]:not(.invest-route) .room-status.free{color:#1f7033;background:#d9f0df}
[data-style=windows-xp]:not(.invest-route) .room-status.busy{color:#8a4016;background:#ffead2}
[data-style=windows-xp]:not(.invest-route) .empty{background:#f6fbfff5;border:1px solid #95b7dd;border-radius:5px;color:#315b87}
[data-style=windows-xp]:not(.invest-route) .footer-note{background:#edf8ffeb;color:#36567e;border:1px solid #a8c6e4;border-radius:4px;padding:9px}
[data-style=windows-xp]:not(.invest-route) #toast{background:#f8fbff;color:#123c6c;border:1px solid #638bb9;border-radius:5px}
@media(min-width:1024px){[data-style=windows-xp]:not(.invest-route) .week-day summary{padding-inline:8px}[data-style=windows-xp]:not(.invest-route) .week-day summary strong{font-size:14px}[data-style=windows-xp]:not(.invest-route) .week-day .lesson h3{font-size:14px}}
@media(max-width:400px){[data-style=windows-xp]:not(.invest-route) #main>.section-head h1{font-size:22px}[data-style=windows-xp]:not(.invest-route) .segments{gap:3px;padding:5px}[data-style=windows-xp]:not(.invest-route) .segments button{padding-inline:8px;font-size:10px}}
@media(prefers-reduced-motion:reduce){[data-style=windows-xp] *,[data-style=windows-xp] *:before,[data-style=windows-xp] *:after{animation:none!important;transition:none!important}}
@media(max-width:767px){[data-style=windows-xp]:not(.invest-route) .segments{width:100%}[data-style=windows-xp]:not(.invest-route) .segments button{flex:1;padding-inline:6px;font-size:11px;white-space:normal}}
