html,body,#root{height:100%;margin:0}.desktop{position:relative;width:100%;height:100%;overflow:hidden}body.os-98 .desktop,body.os-95 .desktop{background:teal}body.os-xp .desktop{background:linear-gradient(180deg,#5aa7ee,#8fc4f3 40%,#b8d98f 55%,#6fa83f 72%,#4e7d2e)}body.os-7 .desktop{background:radial-gradient(140% 120% at 50% -10%,#6fb6ef,#2f73c2 42%,#133f78)}.floating{position:absolute!important;top:0;left:0}.title-bar,.dialog-header{cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.title-bar-text,.status-bar-field{margin:0}.title-bar-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.title-ico{display:inline-flex;vertical-align:-2px;margin-right:5px}.is-min .window-body,.is-min .dialog-body,.is-min .status-bar{display:none!important}.is-max .title-bar,.is-max .dialog-header{cursor:default}body.os-7 .window,body.os-7 .window:before,body.os-7 .window:after{border-radius:8px}body.os-7 .window>.title-bar{border-radius:8px 8px 0 0;border-color:#00000052}body.os-7 .window{border-color:#00000052;transition:box-shadow .22s ease,filter .22s ease}body.os-7 .window.active{box-shadow:0 7px 22px #00000080,0 0 16px #7dc3ff66,inset 0 0 0 1px #fffc}body.os-7 .window.inactive{box-shadow:1px 2px 9px #0006,inset 0 0 0 1px #fffa}body.os-7 .window.inactive:before,body.os-7 .window.inactive>.title-bar{filter:grayscale(.45) brightness(1.06);transition:filter .22s ease}body.os-7 .window.inactive .title-bar-text{opacity:.65;transition:opacity .22s ease}body.os-7 .title-bar-text{overflow:visible}body.os-7 .status-bar-field{padding:3px 7px}.icon{display:inline-block;vertical-align:-2px;flex:none}body.os-98 button .icon{color:#222}.icon-spin{animation:spin 1s linear infinite}.player{display:flex;flex-direction:column;gap:12px}.cover{position:relative;height:120px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(120% 120% at 30% 20%,#243a63,#0c1530 70%)}.cover-disc{position:relative;width:78px;height:78px;border-radius:50%;background:repeating-radial-gradient(circle at 50% 50%,#1a1a1a 0,#1a1a1a 2px,#262626 2px,#262626 4px);border:3px solid #0d0d0d;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px #00000080}.cover.is-playing .cover-disc{animation:spin 3s linear infinite}.cover-disc:before{content:"";width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#cfe0ff,#6f8fd6 70%,#3a5aa6)}.cover-hole{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:7px;height:7px;border-radius:50%;background:#0c1530;box-shadow:inset 0 0 0 1px #00000080}@keyframes spin{to{transform:rotate(360deg)}}.eq{position:absolute;bottom:10px;right:12px;display:flex;align-items:flex-end;gap:3px;height:26px}.eq span{width:5px;height:6px;background:linear-gradient(#7fffd4,#38b6ff);border-radius:1px;opacity:.85}.cover.is-playing .eq span{animation:eq .9s ease-in-out infinite alternate}@keyframes eq{0%{height:5px}to{height:24px}}.now-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.6}.marquee{overflow:hidden;white-space:nowrap}.marquee-inner{display:inline-flex;gap:8px;align-items:center}.marquee-inner.run{animation:marquee 14s linear infinite}.marquee-inner:hover{animation-play-state:paused}.marquee .dot{opacity:.5}@keyframes marquee{0%,8%{transform:translate(0)}to{transform:translate(-55%)}}.transport{display:flex;justify-content:center}.play-btn{min-width:130px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.volume{display:flex;align-items:center;gap:8px}.volume input[type=range]{flex:1}.vol-icon{display:inline-flex;align-items:center;justify-content:center}.vol-val{width:38px;text-align:right;font-variant-numeric:tabular-nums;opacity:.8}.links{display:flex;flex-direction:column;gap:5px}.links-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.6}.links-row{display:flex;flex-wrap:wrap;gap:6px}.links-row a{text-decoration:none}.link-btn{display:inline-flex;align-items:center;gap:6px}.history-head{font-weight:700;margin:0 2px 6px}.history-list{list-style:none;margin:0;padding:0;max-height:300px;overflow:auto}.history-row{display:grid;grid-template-columns:42px 1fr auto;gap:8px;align-items:center;padding:3px 4px}.h-time{font-variant-numeric:tabular-nums;opacity:.7}.h-track{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h-artist{opacity:.7}.h-listeners{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;opacity:.85}.history-empty{padding:14px;text-align:center;opacity:.6}.led{width:9px;height:9px;border-radius:50%;display:inline-block;box-shadow:0 0 4px currentColor}.led-online{background:#2fb537;color:#2fb537}.led-offline{background:#d23b3b;color:#d23b3b}.led-connecting{background:#d39c00;color:#d39c00;animation:blink 1s infinite}@keyframes blink{50%{opacity:.3}}.sb-grow{flex:1}.reopen-history{display:inline-flex;align-items:center;gap:6px}body.os-95 .status-bar{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}body.os-95 .status-bar-field{white-space:nowrap}.theme-gadget .window-body,.theme-gadget .dialog-body{display:flex;flex-direction:column;gap:6px}.theme-gadget button[aria-pressed=true]{font-weight:700}.reopen-history{position:absolute;left:16px;bottom:16px}.crt-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0}.mode-switch{position:fixed;right:14px;bottom:14px;z-index:50;font:12px/1 IBM Plex Mono,Courier New,monospace;padding:7px 12px;border-radius:8px;border:1px solid #2a2d36;background:#0d0f14cc;color:#cfd3dc;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mode-switch:hover{border-color:#4a4f5c}.mode-chooser{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(circle at 30% 15%,#16171d,#05060a 72%);color:#cfd3dc;font-family:IBM Plex Mono,Courier New,monospace;padding:24px;overflow:auto}.mode-chooser-inner{width:min(820px,100%);text-align:center}.mode-title{margin:0;font-size:clamp(28px,5vw,46px);letter-spacing:6px;color:#39ff7a;text-shadow:0 0 18px #39ff7a66}.mode-sub{opacity:.7;margin:10px 0 30px;font-size:15px}.mode-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.mode-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 22px;border-radius:14px;border:1px solid #21242c;background:#0d0f14;color:inherit;cursor:pointer;font-family:inherit;transition:transform .15s,border-color .15s,box-shadow .15s}.mode-card:hover{transform:translateY(-3px);border-color:#39ff7a;box-shadow:0 10px 30px #39ff7a1f}.mode-card-emoji{font-size:42px}.mode-card-name{font-size:17px;letter-spacing:1px;color:#fff}.mode-card-desc{font-size:13px;opacity:.6;line-height:1.5}.mode-foot{margin-top:26px;font-size:12px;opacity:.4}@media (max-width: 640px){.mode-cards{grid-template-columns:1fr}}body.immersive-active{background:#000!important;overflow:hidden;overscroll-behavior:none}.immersive-root{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;display:grid;place-items:center;overflow:hidden}.immersive-stage{position:relative;width:min(100vw,calc(100vh * 2048 / 1152));height:auto;max-height:100vh}.immersive-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.immersive-screen{position:absolute;overflow:hidden;transform-style:preserve-3d}.immersive-virtual{transform-origin:top left}.immersive-virtual .desktop{zoom:var(--ui-scale, 1)}body.os-95 .immersive-virtual .desktop{zoom:1}.immersive-screen-guide{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;outline:1px dashed #39ff7a;outline-offset:-1px;z-index:20}.immersive-exit{position:fixed!important;top:14px!important;right:14px!important;bottom:auto!important;left:auto!important;z-index:50;font:12px/1 IBM Plex Mono,Courier New,monospace;padding:7px 12px;border-radius:8px;border:1px solid #2a2d36;background:#0d0f14d1;color:#cfd3dc;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.immersive-exit:hover{border-color:#4a4f5c}.immersive-admin-hint{position:fixed!important;left:14px!important;bottom:14px!important;top:auto!important;right:auto!important;z-index:60;font:11px/1 IBM Plex Mono,monospace;padding:6px 10px;border-radius:7px;border:1px solid #2a2d36;background:#0d0f14d1;color:#9aa0ad;cursor:pointer}.admin-panel{position:fixed;left:14px;bottom:14px;z-index:60;width:290px;max-height:86vh;overflow:auto;padding:14px;border-radius:12px;border:1px solid #21242c;background:#0a0b10f2;color:#cfd3dc;font-family:IBM Plex Mono,monospace;font-size:12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 12px 40px #0009}.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;letter-spacing:2px}.admin-head button{background:none;border:none;color:#9aa0ad;cursor:pointer;font-size:14px}.admin-section{margin:14px 0 8px;font-size:10px;letter-spacing:2px;opacity:.5;border-top:1px solid #21242c;padding-top:10px}.admin-section:first-of-type{border-top:none;padding-top:0;margin-top:4px}.admin-row{display:grid;grid-template-columns:70px 1fr 56px;align-items:center;gap:8px;margin-bottom:8px}.admin-row>span{opacity:.75}.admin-row input[type=range]{width:100%;accent-color:#39ff7a}.admin-num,.admin-row select{width:100%;background:#15171e;border:1px solid #2a2d36;color:#cfd3dc;font:inherit;padding:3px 4px;border-radius:5px}.admin-row select{grid-column:2 / 4}.admin-actions{display:flex;gap:8px;margin-top:10px}.admin-actions button{flex:1;padding:7px;border-radius:7px;border:1px solid #2a2d36;background:transparent;color:#cfd3dc;cursor:pointer;font:inherit}.admin-actions button:hover{border-color:#39ff7a;color:#39ff7a}.admin-tip{margin:10px 0 0;font-size:10px;opacity:.45;line-height:1.5}
