@font-face{font-family:sansFont;src:url(../media/noto_sans_latin-s.p.05o5-i1cea2yx.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:sansFont Fallback;src:local(Arial);ascent-override:100.41%;descent-override:27.52%;line-gap-override:0.0%;size-adjust:106.47%}.sansfont_e8522844-module__VLYCwW__className{font-family:sansFont,sansFont Fallback}.sansfont_e8522844-module__VLYCwW__variable{--font-sans:"sansFont", "sansFont Fallback"}
@font-face{font-family:monoFont;src:url(../media/fira_mono_latin_400-s.p.0q45ddun66y5x.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:monoFont;src:url(../media/fira_mono_latin_500-s.p.1yx81riva-2hw.woff2)format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:monoFont;src:url(../media/fira_mono_latin_700-s.p.2nepqu0rm-q0l.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:monoFont Fallback;src:local(Arial);ascent-override:71.11%;descent-override:20.15%;line-gap-override:0.0%;size-adjust:131.49%}.monofont_ca1a098f-module__CgSMxa__className{font-family:monoFont,monoFont Fallback}.monofont_ca1a098f-module__CgSMxa__variable{--font-mono:"monoFont", "monoFont Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Segoe UI", "Segoe UI Variable Text", "Helvetica Neue", sans-serif;--font-mono:"Cascadia Code", "SFMono-Regular", Menlo, Consolas, monospace;--bg-1:#dfe9f7;--bg-2:#c8d9f0;--bg-3:#b5cae6;--text-main:#0f172a;--text-subtle:#475569;--line:#687d9b47;--line-strong:#586e8f70;--window:#ffffffe0;--taskbar:#eff5fcb8;--win-blue:#1877f2;--shadow-lg:0 24px 44px #0f172a38;--shadow-md:0 8px 24px #0f172a2e;--taskbar-height:62px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-1:#0b1220;--bg-2:#0f1a2d;--bg-3:#15243c;--text-main:#e2e8f0;--text-subtle:#9fb0c7;--line:#869dbd4d;--line-strong:#97b2d46b;--window:#161f30e0;--taskbar:#161f30bd;--win-blue:#5aa7ff;--shadow-lg:0 24px 44px #0000007a;--shadow-md:0 8px 24px #00000061}*{box-sizing:border-box}html,body{min-height:100%;font-family:var(--font-sans);color:var(--text-main);-webkit-user-select:none;user-select:none;margin:0}body{background:radial-gradient(1000px 480px at 82% 6%, #edf5ffe6, transparent 62%), radial-gradient(780px 360px at 15% 10%, #f6fafff2, transparent 64%), linear-gradient(162deg, var(--bg-1) 0%, var(--bg-2) 58%, var(--bg-3) 100%)}:root[data-theme=dark] body{background:radial-gradient(1000px 480px at 82% 6%, #395b8d3d, transparent 62%), radial-gradient(780px 360px at 15% 10%, #233f6a42, transparent 64%), linear-gradient(162deg, var(--bg-1) 0%, var(--bg-2) 58%, var(--bg-3) 100%)}button,input{font-family:inherit}.shell-root{min-height:100vh;padding:0;position:relative;overflow:hidden}.shell-overlay{pointer-events:none;background:linear-gradient(#fff3,#0000 26%);position:absolute;inset:0}.bsod-overlay{z-index:9999;color:#fff;font-family:var(--font-sans);background:#0078d7;justify-content:center;align-items:flex-start;padding:10vh 20px 20px;display:flex;position:absolute;inset:0}.bsod-content{width:min(780px,100%);line-height:1.35}.bsod-face{margin-bottom:8px;font-size:clamp(3.1rem,8vw,5.5rem);font-weight:300}.bsod-content h2{margin:0;font-size:clamp(1.35rem,4vw,2.1rem);font-weight:400}.bsod-content p{max-width:62ch;margin:16px 0 0;font-size:clamp(.95rem,2.9vw,1.2rem)}.bsod-stopcode{opacity:.95;word-break:break-word;margin-top:28px}.restore-overlay{z-index:800;background:#0f172a57;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.restore-dialog{width:min(460px,100%);box-shadow:var(--shadow-lg);background:#f8fbfffa;border:1px solid #7c8faab8;border-radius:12px;padding:16px}.restore-dialog h3{margin:0;font-size:1rem}.restore-dialog p{color:var(--text-subtle);margin:8px 0 0;font-size:.86rem}.restore-actions{gap:8px;margin-top:14px;display:flex}.restore-actions .settings-primary,.restore-actions .settings-danger{margin-top:0}.desktop-area{inset:0 0 var(--taskbar-height) 0;position:absolute}.workspace-shell{height:100%;box-shadow:none;background:linear-gradient(160deg,#ffffff1f,#ffffff0d);border:0;border-radius:0;position:relative;overflow:hidden}.workspace-shell.is-resizing{cursor:default}.workspace-shell.is-resizing.resize-n,.workspace-shell.is-resizing.resize-s{cursor:ns-resize}.workspace-shell.is-resizing.resize-e,.workspace-shell.is-resizing.resize-w{cursor:ew-resize}.workspace-shell.is-resizing.resize-ne,.workspace-shell.is-resizing.resize-sw{cursor:nesw-resize}.workspace-shell.is-resizing.resize-nw,.workspace-shell.is-resizing.resize-se{cursor:nwse-resize}.workspace-shell.is-resizing iframe{pointer-events:none}.window-snap-preview{z-index:12;pointer-events:none;background:#1877f233;border:1px solid #1877f2d9;border-radius:8px;position:absolute;box-shadow:inset 0 0 0 1px #ffffff59}.drag-debug-overlay{z-index:30;color:#e2e8f0;font-family:var(--font-mono);pointer-events:none;background:#0f172aeb;border:1px solid #94a3b894;border-radius:8px;gap:2px;padding:8px 10px;font-size:.72rem;line-height:1.35;display:grid;position:absolute;top:10px;left:10px}.drag-debug-overlay strong{color:#93c5fd;letter-spacing:.02em;text-transform:uppercase;font-size:.7rem}.workspace-empty{place-items:center;display:grid}.workspace-empty-content{-webkit-backdrop-filter:blur(8px);text-align:center;background:#f0f7ff73;border:1px solid #ffffff52;border-radius:16px;padding:16px 20px}.workspace-empty-content h2{margin:0;font-size:1.2rem;font-weight:600}.workspace-empty-content p{color:var(--text-subtle);margin:7px 0 0}.desktop-window{background:var(--window);box-shadow:var(--shadow-md);transform-origin:0 0;touch-action:none;border:1px solid #7c8faad1;border-radius:10px;transition:box-shadow .14s;position:absolute;overflow:hidden}.desktop-window.is-active{box-shadow:var(--shadow-lg)}.desktop-window.is-resizing{outline-offset:-2px;outline:2px solid #1877f26b}.desktop-window.is-maximized{border-radius:8px}.desktop-window-head{cursor:grab;touch-action:none;z-index:2;background:linear-gradient(#fafdffeb,#f2f8ffd1);border-bottom:1px solid #aab8ca75;justify-content:space-between;align-items:center;height:38px;padding:0 6px 0 12px;display:flex;position:relative}.desktop-window-head:active{cursor:grabbing}.desktop-window-title{align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.desktop-controls{align-items:center;display:flex}.desktop-controls button{cursor:pointer;background:0 0;border:0;place-items:center;width:42px;height:32px;display:grid}.desktop-controls button:hover{background:#155eef1a}.desktop-controls button.close:hover{color:#fff;background:#e81123}.desktop-controls .line{border-bottom:1.7px solid #27364d;width:12px}.desktop-controls .square{border:1.5px solid #27364d;width:11px;height:10px}.desktop-controls .cross{font-size:1.1rem;line-height:1}.desktop-controls .gear{font-size:.86rem;line-height:1}.desktop-window-body{z-index:1;height:calc(100% - 38px);padding:14px;position:relative;overflow:auto}.widget-view h3{margin:0;font-weight:600}.widget-view p{color:var(--text-subtle);margin:8px 0 14px}.widget-metric{background:#e9f4ffe6;border:1px solid #1877f259;border-radius:11px;padding:8px 10px;font-weight:600;display:inline-block}.widget-config{color:var(--text-subtle);gap:6px;display:grid}.widget-config input,.widget-config select{border:1px solid var(--line);color:var(--text-main);background:#fff;border-radius:8px;padding:7px 9px}.settings-app{grid-template-columns:220px 1fr;gap:14px;min-height:100%;display:grid}.settings-sidebar{background:#f8fbffe6;border:1px solid #95a7be59;border-radius:10px;padding:10px}.settings-sidebar h3{margin:4px 4px 10px;font-size:.95rem}.settings-sidebar nav{gap:4px;display:grid}.settings-sidebar button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:8px 9px;display:flex}.settings-sidebar button.is-active,.settings-sidebar button:hover{background:#eaf4fff5;border-color:#1877f273}.settings-content{background:#ffffffe6;border:1px solid #95a7be59;border-radius:10px;padding:14px;overflow:auto}.settings-content header h3{margin:0;font-size:1.05rem}.settings-content header p{color:var(--text-subtle);margin:6px 0 0;font-size:.84rem}.settings-card{background:#fafcffeb;border:1px solid #95a7be59;border-radius:10px;margin-top:12px;padding:12px}.settings-card h4{margin:0 0 10px;font-size:.9rem}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px 10px;display:grid}.settings-grid label{color:var(--text-subtle);gap:6px;font-size:.78rem;display:grid}.settings-grid input,.settings-grid select{background:#fff;border:1px solid #95a7be73;border-radius:8px;height:34px;padding:0 9px}.settings-instance-ui{background:#fffc;border:1px solid #95a7be40;border-radius:8px;margin-top:8px;padding:10px}.settings-instance-ui label{color:var(--text-subtle);gap:5px;margin-bottom:7px;font-size:.77rem;display:grid}.settings-instance-ui input,.settings-instance-ui select{background:#fff;border:1px solid #95a7be73;border-radius:7px;height:32px;padding:0 8px}.settings-primary,.settings-danger{cursor:pointer;border-radius:8px;height:32px;margin-top:10px;padding:0 11px}.settings-primary{color:#0c4ca6;background:#1877f21f;border:1px solid #1877f280}.settings-primary:disabled{opacity:.5;cursor:not-allowed}.settings-danger{color:#991b1b;background:#fee2e2cc;border:1px solid #dc262673;margin-top:0}.settings-list{gap:8px;display:grid}.settings-list-item{background:#fffffff2;border:1px solid #95a7be52;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.settings-list-item-editing{display:block}.settings-list-item-interactive{cursor:pointer;outline:none}.settings-list-item-interactive:focus-visible{border-color:#1877f2b3;box-shadow:0 0 0 2px #1877f22e}.settings-item-main{min-width:0}.settings-item-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.settings-item-meta,.settings-actions-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-status-pill{min-height:28px;color:var(--text-main);background:#f5f9ffe6;border:1px solid #95a7be61;border-radius:999px;align-items:center;padding:0 10px;font-size:.74rem;display:inline-flex}.settings-status-pill.is-green{color:#166534;background:#dcfce7eb;border-color:#22c55e5c}.settings-status-pill.is-orange{color:#9a3412;background:#ffedd5f0;border-color:#f59e0b61}.settings-status-pill.is-red{color:#991b1b;background:#fee2e2f0;border-color:#ef444461}.settings-status-pill.is-gray{color:#475569;background:#f1f5f9f0;border-color:#94a3b861}.settings-known-topic-list{outline:none;gap:6px;max-height:220px;margin-top:10px;display:grid;overflow:auto}.settings-known-topic-item{text-align:left;background:#fffffff2;border:1px solid #95a7be52;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:8px 10px;display:grid}.settings-known-topic-item span{text-overflow:ellipsis;overflow:hidden}.settings-known-topic-item small{margin:0}.settings-modal-backdrop{z-index:70;background:#0f172a5c;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.settings-modal{width:min(420px,100%);box-shadow:var(--shadow-lg);background:#f8fbfffa;border:1px solid #7c8faab8;border-radius:12px;padding:16px}.settings-modal h4{margin:0;font-size:1rem}.settings-modal p{color:var(--text-subtle);margin:8px 0 0;font-size:.84rem}.settings-modal-wide{width:min(720px,100%)}.settings-modal .settings-actions-row{justify-content:flex-end;margin-top:14px}.settings-error-list{outline:none;gap:10px;max-height:min(50vh,420px);margin-top:14px;padding-right:4px;display:grid;overflow:auto}.settings-error-item{background:#ffffffeb;border:1px solid #95a7be52;border-radius:8px;padding:10px}.settings-error-item header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.settings-error-item time{color:var(--text-subtle);white-space:nowrap;font-size:.74rem}.settings-error-item pre{font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background:#eff5fceb;border-radius:8px;margin:8px 0 0;padding:8px;font-size:.74rem;overflow:auto}.settings-list-item strong{font-size:.85rem;display:block}.settings-list-item small{color:var(--text-subtle);margin-top:2px;font-size:.74rem;display:block}@media (max-width:760px){.settings-list-item{grid-template-columns:1fr}.settings-item-side{justify-content:flex-start}}@media (max-width:640px){.settings-error-item header{flex-direction:column}.settings-error-item time{white-space:normal}}.settings-toggles{gap:10px;display:grid}.settings-toggles label{align-items:center;gap:8px;font-size:.86rem;display:flex}.settings-toggle{color:var(--text-main);align-items:center;gap:8px;margin:0;font-size:.82rem;display:flex}.settings-toggle input[type=checkbox]{width:14px;height:14px;margin:0}.settings-segmented{border:1px solid #95a7be73;border-radius:8px;width:fit-content;display:inline-flex;overflow:hidden}.settings-segmented button{color:var(--text-main);cursor:pointer;background:#ffffffe6;border:0;border-right:1px solid #95a7be73;height:30px;padding:0 11px;font-size:.77rem}.settings-segmented button:last-child{border-right:0}.settings-segmented button.is-active{color:#0c4ca6;background:#1877f233}.settings-config-view h3{margin-top:0}.start-menu{left:50%;bottom:calc(var(--taskbar-height) + 8px);-webkit-backdrop-filter:blur(20px);width:min(660px,100vw - 22px);box-shadow:var(--shadow-lg);z-index:500;background:#f4f9ffdb;border:1px solid #8d9fb766;border-radius:12px;padding:14px;position:fixed;transform:translate(-50%)}.start-menu-search-wrap{padding:2px 2px 10px}.start-menu-search{background:#fffffff0;border:1px solid #93a5bc6b;border-radius:9px;width:100%;height:38px;padding:0 12px;font-size:.92rem}.start-menu-search:focus{outline-offset:0;border-color:#1877f280;outline:2px solid #1877f247}.start-menu-section-head{justify-content:space-between;align-items:center;margin:0 2px 8px;display:flex}.start-menu-section-head h3,.start-menu-section-head h4{color:#334155;margin:0;font-size:.88rem;font-weight:600}.start-menu-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.start-menu-item{cursor:pointer;background:#ffffffd1;border:1px solid #93a5bc59;border-radius:9px;justify-items:center;gap:5px;padding:10px 8px;font-size:.75rem;display:grid}.start-menu-item span{font-size:1.08rem}.start-menu-item.is-selected,.start-menu-item:hover{background:#f6fbfff2;border-color:#93a5bc8f}.start-menu-item.is-selected{background:#eaf4fff5;border-color:#1877f28c;box-shadow:inset 0 0 0 1px #1877f240}.start-menu-recommended{gap:7px;display:grid}.start-menu-recommended button{text-align:left;cursor:pointer;background:#ffffffd1;border:1px solid #93a5bc59;border-radius:9px;grid-template-columns:26px 1fr;gap:10px;padding:8px 10px;display:grid}.start-menu-recommended button>span{align-self:center;font-size:1rem}.start-menu-recommended strong{font-size:.82rem}.start-menu-recommended small{color:var(--text-subtle);margin-top:2px;font-size:.74rem;display:block}.taskbar-shell{height:var(--taskbar-height);background:var(--taskbar);-webkit-backdrop-filter:blur(22px);z-index:600;border:1px solid #9caec56b;border-radius:0;justify-content:center;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 12px 30px #0f172a38}.taskbar-center-cluster{align-items:center;gap:8px;display:flex}.start-button{cursor:pointer;background:#ffffffeb;border:1px solid #95a7be59;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.start-button.is-open{border-color:#1877f28f;box-shadow:inset 0 0 0 1px #1877f247}.win-logo{grid-template-columns:repeat(2,1fr);gap:2px;width:14px;height:14px;display:grid}.win-logo i{background:linear-gradient(160deg,#2f8dff,#0c6ae4);border-radius:1px;display:block}.taskbar-items{align-items:center;gap:3px;max-width:min(70vw,860px);padding-bottom:1px;display:flex;overflow-x:auto}.taskbar-item-wrap{justify-items:center;min-width:44px;display:grid}.taskbar-item{cursor:pointer;background:0 0;border:0;border-radius:8px;width:40px;height:40px;font-size:1.05rem}.taskbar-item:hover{background:#ffffff70}.taskbar-item.is-minimized{opacity:.65}.taskbar-indicator{background:#2e415a3d;border-radius:999px;width:17px;height:3px;margin-top:2px}.taskbar-item-wrap.is-active .taskbar-indicator{background:var(--win-blue);width:21px}.window-size-indicator{z-index:6;color:#1e3a8a;pointer-events:none;background:#eff6fff2;border:1px solid #1877f26b;border-radius:7px;padding:3px 8px;font-size:.72rem;font-weight:600;position:absolute;bottom:12px;right:12px}.widget-config-overlay{z-index:9;background:#0f172a47;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.widget-config-dialog{-webkit-backdrop-filter:blur(8px);background:#f8fbfff5;border:1px solid #7c8faab8;border-radius:10px;grid-template-rows:auto 1fr;width:min(680px,100%);max-height:90%;display:grid;overflow:hidden}.widget-config-dialog-head{border-bottom:1px solid #95a7be66;justify-content:space-between;align-items:center;height:40px;padding:0 10px;display:flex}.widget-config-dialog-head button{cursor:pointer;background:#fff;border:1px solid #95a7be73;border-radius:8px;width:28px;height:28px}.widget-config-dialog-body{padding:12px;overflow:auto}.console-widget{height:100%;min-height:100%;position:relative}.console-log-lines{color:#d7e4f5;height:calc(100% + 28px);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background:#0a0f16;border:0;border-radius:0;margin:-14px;padding:10px 12px;font-size:.74rem;line-height:1.45;overflow:auto}.console-address{font-weight:600}.console-row{white-space:nowrap;height:18px;line-height:18px}.console-paused-indicator{z-index:2;color:#fde68a;letter-spacing:.03em;text-transform:uppercase;background:#facc152e;border:1px solid #facc1580;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:700;line-height:1;position:absolute;top:10px;right:14px}.console-live-logs-button{z-index:2;color:#f8fafc;cursor:pointer;background:#0f172af0;border:1px solid #94a3b880;border-radius:999px;padding:8px 14px;font-size:.74rem;font-weight:600;position:absolute;bottom:16px;right:16px;box-shadow:0 8px 20px #02061773}.console-live-logs-button:hover{background:#1e293bfa;border-color:#3b82f6cc}.console-settings-head{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.console-settings-head .settings-primary{height:28px;margin-top:0;font-size:.75rem}.console-settings-actions{gap:6px;display:flex}.console-settings-list{gap:6px;margin-top:8px;display:grid}.console-settings-item{background:#ffffffe0;border:1px solid #95a7be57;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;font-size:.8rem;display:flex}.console-settings-item .swatch{border-radius:999px;width:8px;height:8px}.console-settings-item.is-active{background:#edf4fff2;border-color:#1877f273}.vector-widget{flex-direction:column;min-width:0;height:100%;min-height:100%;display:flex}.vector-empty{color:var(--text-subtle);background:#f8fbffcc;border:1px dashed #95a7be80;border-radius:10px;flex:auto;place-items:center;min-height:0;font-size:.85rem;display:grid}.vector-legend{flex-wrap:wrap;flex:none;gap:8px;margin-top:10px;display:flex}.vector-legend-item{background:#ffffffe6;border:1px solid #95a7be57;border-radius:999px;align-items:center;gap:7px;padding:4px 10px;font-size:.76rem;display:inline-flex}.vector-legend-item .swatch{border-radius:999px;width:8px;height:8px}.vector-chart-wrap{background:linear-gradient(#fffffff5,#f6faffe6),repeating-linear-gradient(#0000 0 44px,#94a3b81f 44px 45px);border:1px solid #95a7be57;border-radius:10px;flex:auto;min-width:0;min-height:0;padding:8px}.vector-chart{width:100%;height:100%;min-height:0;display:block}.vector-axis{stroke:#64748bb3;stroke-width:1px}.gauge-widget{flex-direction:column;height:100%;min-height:100%;display:flex}.gauge-empty{color:var(--text-subtle);background:#f8fbffcc;border:1px dashed #95a7be80;border-radius:10px;flex:auto;place-items:center;min-height:0;font-size:.85rem;display:grid}.gauge-chart-wrap{background:linear-gradient(#fffffff7,#f4f9ffeb);border:1px solid #95a7be57;border-radius:10px;flex:auto;min-height:0;padding:8px}.gauge-chart{width:100%;height:100%;min-height:0;display:block}.gauge-caption{fill:#334155eb;font-size:12px;font-weight:600}.gauge-value{fill:#0f172af2;font-size:28px;font-weight:700}.gauge-subline{fill:#475569f2;font-size:12px;font-weight:600}.gauge-minmax{fill:#334155cc;font-size:11px;font-weight:500}.gauge-updated{fill:#475569e6;font-size:11px}.map-widget{flex-direction:column;gap:10px;min-width:0;height:100%;min-height:100%;display:flex}.map-empty{color:var(--text-subtle);background:#f8fbffcc;border:1px dashed #95a7be80;border-radius:10px;place-items:center;min-height:0;padding:12px;font-size:.85rem;display:grid}.map-empty code{font-family:var(--font-mono);font-size:.8rem}.map-stage{touch-action:none;background:#f4f9ffeb;border:1px solid #95a7be57;border-radius:10px;flex:auto;min-height:0;position:relative;overflow:hidden}.map-canvas{width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.map-tile-layer{position:absolute;inset:0}.map-tile{-webkit-user-select:none;user-select:none;width:256px;height:256px;display:block;position:absolute}.map-overlay{pointer-events:none;position:absolute;inset:0}.map-controls{z-index:2;gap:6px;display:flex;position:absolute;top:10px;right:10px}.map-controls button{color:#0f172a;cursor:pointer;background:#fffffff0;border:1px solid #95a7be9e;border-radius:8px;min-width:32px;height:32px;padding:0 10px;font-size:.85rem;font-weight:600}.map-controls button:hover{background:#f0f7fff7}.map-track-line{fill:none;stroke:#047857f0;stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.map-track-point{fill:#0b5ed7fa;stroke:#fff;stroke-width:2px}.map-meta{color:var(--text-subtle);background:#ffffffe6;border:1px solid #95a7be57;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;font-size:.78rem;display:flex}.map-meta strong{color:#0f172a}.map-meta a{color:#0c4ca6;font-weight:600;text-decoration:none}.map-meta a:hover{text-decoration:underline}.clock-slot{justify-items:end;line-height:1.08;display:grid;position:absolute;right:12px}.clock-slot strong{font-size:.78rem}.clock-slot small{color:var(--text-subtle);font-size:.68rem}.shortcut-overlay{z-index:700;background:#0f172a59;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.shortcut-card{-webkit-backdrop-filter:blur(16px);width:min(620px,100%);box-shadow:var(--shadow-lg);background:#f9fcffe6;border:1px solid #92a4bb73;border-radius:13px;padding:14px}.shortcut-card header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.shortcut-card header h3{margin:0;font-size:1rem}.shortcut-card header button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:28px;height:28px}.shortcut-card ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.shortcut-card li{background:#ffffffdb;border:1px solid #93a5bc59;border-radius:9px;justify-content:space-between;gap:12px;padding:8px 10px;display:flex}.shortcut-card kbd{color:var(--text-main);background:#f0f6ffe6;border:1px solid #92a4bb8c;border-radius:7px;padding:4px 8px;font-size:.78rem;font-weight:600}.shortcut-card span{color:var(--text-subtle);font-size:.8rem}.doom-widget{background:#000;width:calc(100% + 20px);height:calc(100% + 20px);min-height:280px;margin:-10px}.doom-stage{width:100%;height:100%;position:relative;overflow:hidden}.doom-frame{transform-origin:0 0;border:0;display:block;position:absolute}.doom-config{gap:12px}.mc-widget{background:#000;width:calc(100% + 20px);height:calc(100% + 20px);min-height:280px;margin:-10px}.mc-stage{width:100%;height:100%;position:relative;overflow:hidden}.mc-frame{transform-origin:0 0;border:0;display:block;position:absolute}.mc-config{gap:12px}.chat-widget{grid-template-rows:auto auto 1fr auto;gap:10px;height:100%;min-height:100%;display:grid}.chat-toolbar{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.chat-toolbar label{color:var(--text-subtle);gap:5px;font-size:.75rem;display:grid}.chat-toolbar input,.chat-toolbar select,.chat-composer input,.chat-config input,.chat-config select{color:var(--text-main);background:#fff;border:1px solid #95a7be73;border-radius:8px;height:34px;padding:0 9px}.chat-toolbar-actions{align-items:end;gap:8px;display:flex}.chat-toolbar-actions .settings-primary,.chat-toolbar-actions .settings-danger{height:34px;margin-top:0}.chat-status{background:#fafcffe0;border:1px solid #95a7be59;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;font-size:.76rem;display:flex}.chat-status strong{letter-spacing:.02em}.chat-status.is-connected{border-color:#16a34a6b}.chat-status.is-connecting{border-color:#3b82f673}.chat-status.is-error{border-color:#dc262673}.chat-message-list{background:#f8fbffe0;border:1px solid #95a7be59;border-radius:10px;align-content:start;gap:8px;min-height:0;padding:9px;display:grid;overflow:auto}.chat-message{background:#fffffff2;border:1px solid #95a7be57;border-radius:8px;padding:7px 9px}.chat-message header{align-items:center;gap:7px;margin-bottom:4px;font-size:.72rem;display:flex}.chat-message header small,.chat-message header time{color:var(--text-subtle)}.chat-message header time{margin-left:auto}.chat-message p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.84rem;line-height:1.35}.chat-message-outgoing{background:#eff6fff2;border-color:#2563eb6b}.chat-message-incoming{background:#f0fdfaf2;border-color:#14b8a65c}.chat-message-system{background:#f8fafcf2;border-color:#94a3b866}.chat-composer{grid-template-columns:1fr auto;gap:8px;display:grid}.chat-composer .settings-primary{height:34px;margin-top:0}.chat-config{gap:10px}.chat-config h3{margin:0}.pyro-widget{grid-template-rows:auto 1fr auto;gap:10px;height:100%;min-height:100%;display:grid}.pyro-subsystem-header{background:#fafcffe6;border:1px solid #95a7be61;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.pyro-subsystem-indicator,.pyro-charge-indicator{background:#94a3b8;border-radius:999px;flex:none;width:12px;height:12px;box-shadow:0 0 0 3px #94a3b829}.pyro-subsystem-header.is-online{border-color:#16a34a6b}.pyro-subsystem-header.is-online .pyro-subsystem-indicator{background:#16a34a;box-shadow:0 0 0 3px #16a34a29}.pyro-subsystem-header div{gap:2px;min-width:0;display:grid}.pyro-subsystem-header strong{font-size:.9rem}.pyro-subsystem-header span:last-child{color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.pyro-charge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;display:grid}.pyro-charge-panel{background:#f8fbffe6;border:1px solid #95a7be61;border-radius:8px;grid-template-rows:auto 1fr;gap:14px;min-width:0;padding:12px;display:grid}.pyro-charge-panel header{justify-content:space-between;align-items:start;gap:10px;display:flex}.pyro-charge-panel h3{margin:0;font-size:1rem}.pyro-charge-status{margin-top:4px;font-size:1.8rem;font-weight:700;line-height:1.05;display:block}.pyro-charge-panel.is-safe{border-color:#16a34a59}.pyro-charge-panel.is-safe .pyro-charge-indicator{background:#16a34a;box-shadow:0 0 0 3px #16a34a29}.pyro-charge-panel.is-armed{border-color:#ea580c6b}.pyro-charge-panel.is-armed .pyro-charge-indicator{background:#ea580c;box-shadow:0 0 0 3px #ea580c2e}.pyro-charge-panel.is-fired{border-color:#dc26267a}.pyro-charge-panel.is-fired .pyro-charge-indicator{background:#dc2626;box-shadow:0 0 0 3px #dc26262e}.pyro-charge-actions{align-self:end;gap:10px;display:grid}.pyro-arm-toggle{background:#ffffffe6;border:1px solid #95a7be6b;border-radius:8px;align-items:center;gap:9px;min-height:40px;padding:8px 10px;font-weight:700;display:flex}.pyro-arm-toggle input{accent-color:#ea580c;width:18px;height:18px}.pyro-fire-button{color:#fff;letter-spacing:.02em;cursor:pointer;background:#b91c1c;border:1px solid #b91c1c85;border-radius:8px;min-height:46px;padding:0 14px;font-weight:800}.pyro-fire-button:disabled{opacity:.5;cursor:not-allowed}.pyro-arm-toggle:has(input:disabled){opacity:.5;cursor:not-allowed}.pyro-fire-button:not(:disabled):hover{background:#991b1b}.pyro-command-footer{color:var(--text-subtle);background:#fafcffd1;border:1px solid #95a7be57;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;font-size:.74rem;display:flex}.pyro-command-footer strong{color:var(--text-main);font-weight:700}.pyro-config{gap:10px}.pyro-config h3{margin:0}@media (max-width:980px){.chat-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.chat-toolbar{grid-template-columns:1fr}.chat-toolbar-actions{align-items:stretch}.pyro-charge-grid{grid-template-columns:1fr}}:root[data-theme=dark] .shell-overlay{background:linear-gradient(#ffffff14,#0000 26%)}:root[data-theme=dark] .workspace-shell{background:linear-gradient(160deg,#1e2a3e52,#121a2824)}:root[data-theme=dark] .workspace-empty-content{background:#19233485;border-color:#8298b947}:root[data-theme=dark] .desktop-window{border-color:#6f89ac94}:root[data-theme=dark] .desktop-window-head{background:linear-gradient(#25344bf0,#1a2639db);border-bottom-color:#6f89ac6b}:root[data-theme=dark] .desktop-controls .line,:root[data-theme=dark] .desktop-controls .square{border-color:#d0dded}:root[data-theme=dark] .start-menu,:root[data-theme=dark] .taskbar-shell,:root[data-theme=dark] .widget-config-dialog,:root[data-theme=dark] .restore-dialog,:root[data-theme=dark] .settings-sidebar,:root[data-theme=dark] .settings-content,:root[data-theme=dark] .settings-card,:root[data-theme=dark] .settings-instance-ui,:root[data-theme=dark] .settings-list-item,:root[data-theme=dark] .settings-modal,:root[data-theme=dark] .shortcut-card,:root[data-theme=dark] .map-meta{background:#161f30e6;border-color:#728aab6b}:root[data-theme=dark] .start-button,:root[data-theme=dark] .start-menu-item,:root[data-theme=dark] .start-menu-recommended button,:root[data-theme=dark] .map-controls button,:root[data-theme=dark] .widget-config input,:root[data-theme=dark] .widget-config select,:root[data-theme=dark] .settings-grid input,:root[data-theme=dark] .settings-grid select,:root[data-theme=dark] .settings-instance-ui input,:root[data-theme=dark] .settings-instance-ui select,:root[data-theme=dark] .widget-config-dialog-head button,:root[data-theme=dark] .shortcut-card header button{color:var(--text-main);background:#1d2a3ff2;border-color:#728aab75}:root[data-theme=dark] .settings-sidebar button.is-active,:root[data-theme=dark] .settings-sidebar button:hover,:root[data-theme=dark] .start-menu-item.is-selected,:root[data-theme=dark] .start-menu-item:hover,:root[data-theme=dark] .start-menu-item.is-selected,:root[data-theme=dark] .console-settings-item.is-active{background:#20314af5;border-color:#5aa7ff80}:root[data-theme=dark] .shortcut-overlay{background:#040a148c}:root[data-theme=dark] .shortcut-card li{background:#0e1522e0;border-color:#728aab61}:root[data-theme=dark] .shortcut-card kbd{color:var(--text-main);background:#1d2a3ff2;border-color:#728aab80}:root[data-theme=dark] .shortcut-card span{color:#dce5f0c7}:root[data-theme=dark] .settings-primary{color:#cfe5ff;background:#5aa7ff29;border-color:#5aa7ff8c}:root[data-theme=dark] .console-settings-item,:root[data-theme=dark] .vector-legend-item,:root[data-theme=dark] .vector-empty,:root[data-theme=dark] .gauge-empty,:root[data-theme=dark] .map-empty,:root[data-theme=dark] .map-stage,:root[data-theme=dark] .chat-message-list,:root[data-theme=dark] .chat-status,:root[data-theme=dark] .chat-message,:root[data-theme=dark] .pyro-subsystem-header,:root[data-theme=dark] .pyro-charge-panel,:root[data-theme=dark] .pyro-command-footer,:root[data-theme=dark] .pyro-arm-toggle{background:#161f30e6;border-color:#728aab6b}:root[data-theme=dark] .chat-toolbar input,:root[data-theme=dark] .chat-toolbar select,:root[data-theme=dark] .chat-composer input,:root[data-theme=dark] .chat-config input,:root[data-theme=dark] .chat-config select{color:var(--text-main);background:#1d2a3ff2;border-color:#728aab75}:root[data-theme=dark] .chat-message-outgoing{background:#172d4ff2;border-color:#5aa7ff80}:root[data-theme=dark] .chat-message-incoming{background:#0f3e3ce6;border-color:#2dd4bf73}:root[data-theme=dark] .map-track-line{stroke:#4ade80f5}:root[data-theme=dark] .map-track-point{fill:#7dd3fcfa;stroke:#0f172af2}:root[data-theme=dark] .vector-chart-wrap{background:linear-gradient(#1c283cf5,#141f30eb),repeating-linear-gradient(#0000 0 44px,#94a3b833 44px 45px);border-color:#728aab6b}:root[data-theme=dark] .gauge-chart-wrap{background:linear-gradient(#1c283cf7,#131e2fed);border-color:#728aab6b}:root[data-theme=dark] .gauge-caption,:root[data-theme=dark] .gauge-minmax,:root[data-theme=dark] .gauge-subline,:root[data-theme=dark] .gauge-updated{fill:#c2d2e7}:root[data-theme=dark] .gauge-value{fill:#e2e8f0}:root[data-theme=dark] .settings-danger{color:#fecaca;background:#7f1d1d47;border-color:#f8717173}:root[data-theme=dark] .settings-status-pill{color:var(--text-main);background:#1d2a3ff2;border-color:#728aab6b}:root[data-theme=dark] .settings-status-pill.is-green{color:#bbf7d0;background:#14532d73;border-color:#22c55e52}:root[data-theme=dark] .settings-status-pill.is-orange{color:#fed7aa;background:#78350f6b;border-color:#f59e0b57}:root[data-theme=dark] .settings-status-pill.is-red{color:#fecaca;background:#7f1d1d5c;border-color:#f8717166}:root[data-theme=dark] .settings-status-pill.is-gray{color:#cbd5e1;background:#33415580;border-color:#728aab61}:root[data-theme=dark] .settings-known-topic-item{color:var(--text-main);background:#161f30e6;border-color:#728aab6b}:root[data-theme=dark] .settings-error-item{background:#161f30e6;border-color:#728aab6b}:root[data-theme=dark] .settings-error-item pre{background:#1d2a3ff2}:root[data-theme=dark] .settings-modal-backdrop{background:#0206178f}:root[data-theme=dark] .settings-segmented{border-color:#728aab75}:root[data-theme=dark] .settings-segmented button{background:#1d2a3ff2;border-right-color:#728aab75}:root[data-theme=dark] .settings-segmented button.is-active{color:#dbeafe;background:#5aa7ff3d}:root[data-theme=dark] .start-menu-section-head h3,:root[data-theme=dark] .start-menu-section-head h4,:root[data-theme=dark] .map-meta strong{color:var(--text-main)}:root[data-theme=dark] .taskbar-item:hover{background:#ffffff24}:root[data-theme=dark] .taskbar-indicator{background:#98b3d659}:root[data-theme=dark] .window-size-indicator{color:#bfdbfe;background:#142133f2;border-color:#5aa7ff73}:root[data-theme=dark] .map-meta a{color:#93c5fd}.server-notification-stack{z-index:1500;pointer-events:none;place-items:center;gap:12px;padding:16px;display:grid;position:absolute;inset:0}.win-error-dialog{pointer-events:auto;color:#111;width:min(360px,100vw - 32px);font-family:"Segoe UI", var(--font-sans);background:#f0f0f0;border:1px solid #6f6f6f;box-shadow:0 18px 44px #0f172a57}.win-error-titlebar{background:#fff;justify-content:space-between;align-items:center;height:32px;padding:0 0 0 10px;font-size:.82rem;display:flex}.win-error-titlebar button{color:#111;cursor:pointer;background:0 0;border:0;width:46px;height:32px;font-size:1rem;line-height:1}.win-error-titlebar button:hover{color:#fff;background:#e81123}.win-error-body{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;padding:22px 20px 18px;display:grid}.win-error-icon{color:#fff;background:#d13438;border-radius:50%;place-items:center;width:34px;height:34px;font-family:Georgia,serif;font-size:1.35rem;font-weight:700;display:grid}.win-error-body p{white-space:pre-wrap;word-break:break-word;margin:2px 0 0;font-size:.9rem;line-height:1.4}.win-error-actions{justify-content:flex-end;padding:0 20px 18px;display:flex}.win-error-actions button{color:#111;cursor:pointer;background:#e5e5e5;border:1px solid #0078d7;min-width:86px;height:30px;font-size:.84rem}.win-error-actions button:hover,.win-error-actions button:focus-visible{outline-offset:1px;background:#dbeafe;outline:1px solid #0078d7}.admin-shell{color:#172033;background:#eef3f8;place-items:start center;min-height:100vh;padding:32px;display:grid}.admin-panel{background:#fff;border:1px solid #c9d3e1;border-radius:8px;width:min(760px,100%);padding:22px;box-shadow:0 18px 48px #1e293b21}.admin-panel-head{justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px;display:flex}.admin-kicker{color:#526071;text-transform:uppercase;letter-spacing:.08em;margin:0 0 4px;font-size:.78rem}.admin-panel h1{letter-spacing:0;margin:0;font-size:1.55rem}.admin-client-count{text-align:right;border:1px solid #d8e0eb;border-radius:6px;gap:2px;min-width:116px;padding:10px 12px;display:grid}.admin-client-count strong{font-size:1.4rem;line-height:1}.admin-client-count span{color:#64748b;font-size:.82rem}.admin-form{gap:14px;display:grid}.admin-form label{gap:6px;font-size:.84rem;font-weight:700;display:grid}.admin-form input,.admin-form select,.admin-form textarea{color:#172033;-webkit-user-select:text;user-select:text;background:#f8fafc;border:1px solid #b9c5d6;border-radius:6px;width:100%;padding:10px 11px;font-size:.95rem}.admin-form textarea{resize:vertical}.admin-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-actions .settings-primary{margin-top:0}.admin-status{color:#475569;min-height:20px;margin:14px 0 0;font-size:.88rem}.admin-clients{border-top:1px solid #e2e8f0;gap:8px;margin-top:18px;padding-top:14px;display:grid}.admin-clients p{color:#64748b;margin:0}.admin-client{color:#172033;text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font-size:.82rem;display:flex}.admin-client:hover,.admin-client.is-selected{background:#eff6ff;border-color:#1877f2}.admin-client code{-webkit-user-select:text;user-select:text;text-overflow:ellipsis;overflow:hidden}.admin-client span{color:#64748b;white-space:nowrap}@media (max-width:1080px){.start-menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:820px){.clock-slot{display:none}}@media (max-width:640px){:root{--taskbar-height:56px}.shell-root{padding:0}.taskbar-shell{height:var(--taskbar-height)}.start-menu{width:calc(100vw - 12px);bottom:68px}.start-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-app{grid-template-columns:1fr}.server-notification-stack{align-items:center}.admin-shell{padding:16px}.admin-panel-head,.admin-client{text-align:left;display:grid}.admin-client-count{text-align:left}}.solitaire-widget{color:#fff;background:linear-gradient(135deg,#164032 0%,#0a1f18 100%);flex-direction:column;height:100%;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;position:relative;overflow:hidden}.solitaire-header{z-index:10;background:#0a1f18cc;border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.settings-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.settings-controls label{text-transform:uppercase;letter-spacing:.03em;color:#fff9;flex-direction:column;gap:3px;font-size:.7rem;font-weight:700;display:flex}.settings-controls input,.settings-controls select{color:#fff;background:#ffffff1a;border:1px solid #ffffff29;border-radius:6px;outline:none;height:28px;padding:0 8px;font-size:.8rem;transition:border-color .15s}.settings-controls input:focus,.settings-controls select:focus{border-color:#fff6}.settings-controls select option{color:#fff;background:#121824}.game-status-actions{align-items:center;gap:8px;display:flex}.nats-badge{background:#00000059;border:1px solid #ffffff14;border-radius:20px;align-items:center;gap:6px;padding:5px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.nats-badge .dot{border-radius:50%;width:7px;height:7px;display:inline-block}.nats-badge.status-connected .dot{background:#22c55e;box-shadow:0 0 8px #22c55e}.nats-badge.status-connecting .dot{background:#3b82f6;box-shadow:0 0 8px #3b82f6}.nats-badge.status-disconnected .dot{background:#94a3b8}.nats-badge.status-error .dot{background:#ef4444;box-shadow:0 0 8px #ef4444}.solitaire-warning{color:#fff;text-align:center;z-index:50;background:#d97706f2;border-radius:8px;padding:8px 12px;font-size:.8rem;font-weight:600;animation:.2s cubic-bezier(.16,1,.3,1) fadeInDown;position:absolute;top:48px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000040}.solitaire-victory{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;color:#fbbf24;text-shadow:0 2px 10px #00000080;background:#0a1f18f0;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:1.5rem;font-weight:800;animation:.3s fadeIn;display:flex;position:absolute;inset:0}.solitaire-board{-webkit-user-select:none;user-select:none;flex:1;padding:16px;position:relative;overflow:hidden auto}.solitaire-columns{grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;height:100%;min-height:380px;display:grid}.solitaire-column{background:#ffffff05;border-radius:8px;height:100%;min-height:160px;padding:4px;position:relative}.card-empty-slot{aspect-ratio:2.5/3.5;width:100%;padding:2px}.card-empty-slot .dashed-border{border:2px dashed #ffffff1f;border-radius:6px;width:100%;height:100%;display:block}.solitaire-card{aspect-ratio:2.5/3.5;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #0000002e;border-radius:6px;position:absolute;left:4px;right:4px;box-shadow:0 1.5px 3px #0003}.solitaire-card.is-facedown{cursor:default;background:#1e293b}.card-back{box-sizing:border-box;width:100%;height:100%;padding:4px}.card-back-pattern{background-color:#1e293b;background-image:radial-gradient(#fbbf241f 9%,#0000 9%),radial-gradient(#fbbf241f 9%,#0000 9%);background-position:0 0,3px 3px;background-size:6px 6px;border:1px solid #fbbf2459;border-radius:4px;width:100%;height:100%}.card-inner{box-sizing:border-box;flex-direction:column;width:100%;height:100%;padding:5px 6px;display:flex;position:relative}.card-header{align-items:center;gap:2.5px;line-height:1;display:flex}.card-rank{font-size:.95rem;font-weight:900;line-height:1}.card-suit{font-size:.85rem;line-height:1}.card-center-suit{opacity:.85;font-size:1.8rem;line-height:1;position:absolute;bottom:4px;right:6px}.suit-red{color:#dc2626}.suit-black{color:#0f172a}.suit-green{color:#059669}.solitaire-card.is-dragging{opacity:.95;border:1.5px solid #3b82f6;transform:scale(1.04);box-shadow:0 10px 20px #00000059;z-index:1000!important}.solitaire-card.is-remote-dragging{opacity:.8;border-width:1.5px;transform:scale(1.02);z-index:900!important}.remote-drag-label{pointer-events:none;border:1px solid #fff3;font-weight:600;box-shadow:0 2px 5px #00000040}.remote-cursor{pointer-events:none}.remote-cursor svg{filter:drop-shadow(1px 2px 2px #0000004d)}.solitaire-footer{z-index:10;background:#0a1f18cc;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:10px 16px;display:flex}.stock-container,.completed-container{flex-direction:column;gap:6px;display:flex}.stock-container strong,.completed-container strong{text-transform:uppercase;letter-spacing:.04em;color:#fff9;font-size:.72rem}.stock-piles,.completed-piles{align-items:center;min-width:180px;height:86px;display:flex;position:relative}.stock-piles .stock-pile{flex-shrink:0;width:58px;height:80px;position:relative;left:auto;right:auto;box-shadow:-2px 1px 3px #0000004d}.stock-empty,.completed-empty{color:#ffffff29;border:1.5px dashed #ffffff1f;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:80px;font-size:1.2rem;display:flex;position:relative}.completed-piles .completed-pile{flex-shrink:0;width:58px;height:80px;margin-left:-40px;position:relative;left:auto;right:auto;box-shadow:-2px 1px 3px #00000059}.completed-piles .completed-pile:first-child{margin-left:0}.solitaire-config{flex-direction:column;gap:12px;display:flex}.solitaire-config label{flex-direction:column;gap:4px;font-size:.8rem;font-weight:600;display:flex}.solitaire-config input{border:1px solid #95a7be73;border-radius:8px;height:32px;padding:0 10px}.solitaire-config .config-help{color:var(--text-subtle);margin-top:4px;font-size:.76rem;line-height:1.4}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.solitaire-vote-banner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f8fafc;z-index:10;background:#1e293bf2;border:1px solid #ffffff26;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:8px 12px;padding:10px 14px;animation:.25s ease-out fadeIn;display:flex;box-shadow:0 4px 12px #0000004d}.solitaire-vote-banner .vote-info{align-items:center;gap:8px;font-size:.82rem;display:flex}.solitaire-vote-banner .vote-count{color:#94a3b8;font-size:.78rem;font-weight:500}.solitaire-vote-banner .vote-actions{align-items:center;gap:8px;display:flex}.solitaire-vote-banner .vote-btn-yes{color:#fff!important;background:#10b981!important;border:none!important}.solitaire-vote-banner .vote-btn-yes:hover{background:#059669!important}.solitaire-vote-banner .vote-btn-no{color:#fff!important;background:#ef4444!important;border:none!important}.solitaire-vote-banner .vote-btn-no:hover{background:#dc2626!important}.solitaire-vote-banner .voted-badge{color:#34d399;background:#10b98126;border:1px solid #10b9814d;border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:600}.colorsort-widget{color:#fff;background:#1a1a1a;flex-direction:column;height:100%;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex;position:relative;overflow:hidden}.colorsort-header{background:#0000004d;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.colorsort-header .settings-controls{align-items:center;gap:12px;display:flex}.colorsort-header label{color:#a0a0a0;flex-direction:column;gap:2px;font-size:.7rem;display:flex}.colorsort-header input,.colorsort-header select{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;padding:4px 8px;font-size:.8rem}.colorsort-header input:focus,.colorsort-header select:focus{background:#ffffff1a;border-color:#3b82f6;outline:none}.colorsort-header .game-status-actions{align-items:center;gap:12px;display:flex}.colorsort-board{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:20px;display:flex;position:relative;overflow-y:auto}.bottles-container{flex-wrap:wrap;justify-content:center;gap:30px;max-width:800px;display:flex}.bottle{cursor:pointer;background:#ffffff0d;border:3px solid #fff3;border-top:none;border-radius:0 0 15px 15px;flex-direction:column-reverse;width:60px;height:160px;padding:4px;transition:transform .2s,border-color .2s;display:flex;position:relative}.bottle.selected{border-color:#3b82f6;transform:translateY(-20px);box-shadow:0 5px 15px #3b82f64d}.bottle-inner{flex-direction:column-reverse;width:100%;height:100%;display:flex}.liquid-section{border-radius:4px;flex:1;margin:1px 0;transition:background-color .3s}.liquid-section.color-empty{background:0 0}.liquid-section.color-red{background:#ef4444}.liquid-section.color-blue{background:#3b82f6}.liquid-section.color-green{background:#22c55e}.liquid-section.color-yellow{background:#eab308}.liquid-section.color-purple{background:#a855f7}.liquid-section.color-orange{background:#f97316}.liquid-section.color-cyan{background:#06b6d4}.liquid-section.color-pink{background:#ec4899}.colorsort-victory{text-align:center;z-index:100;background:#000000e6;border:1px solid #34d399;border-radius:15px;padding:30px;font-size:1.5rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #34d3994d}.colorsort-vote-banner{background:#3b82f626;border-bottom:1px solid #3b82f64d;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.colorsort-vote-banner .vote-info{font-size:.9rem}.colorsort-vote-banner .vote-actions{align-items:center;gap:8px;display:flex}.colorsort-vote-banner .voted-badge{color:#34d399;background:#10b98126;border:1px solid #10b9814d;border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:600}.room-selector-group{align-items:flex-end;gap:4px;display:flex}.room-selector-group select{flex:1;min-width:120px}.btn-icon{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.2rem;line-height:1;display:flex;padding:0!important}.bottle.animating-source{pointer-events:none;transition:opacity .15s ease-out;opacity:0!important}.pouring-bottle-wrapper{transform-origin:bottom;z-index:1000;pointer-events:none;width:60px;height:160px;animation:.8s ease-in-out forwards pourAnimation;position:absolute;bottom:120%;left:50%}.pouring-bottle-wrapper .bottle{background:#ffffff26;border-color:#fff6;width:100%;height:100%;margin:0;box-shadow:0 8px 24px #0006;transform:none!important}.pouring-stream{transform-origin:top;z-index:999;border-radius:3px;width:6px;animation:.8s ease-in-out forwards streamPour;position:absolute;top:-5px;left:30px;transform:rotate(-75deg);box-shadow:0 0 8px #ffffff4d}.pouring-stream.color-red{color:#ef4444;background:#ef4444}.pouring-stream.color-blue{color:#3b82f6;background:#3b82f6}.pouring-stream.color-green{color:#22c55e;background:#22c55e}.pouring-stream.color-yellow{color:#eab308;background:#eab308}.pouring-stream.color-purple{color:#a855f7;background:#a855f7}.pouring-stream.color-orange{color:#f97316;background:#f97316}.pouring-stream.color-cyan{color:#06b6d4;background:#06b6d4}.pouring-stream.color-pink{color:#ec4899;background:#ec4899}@keyframes pourAnimation{0%{opacity:0;transform:translate(calc(-50% - 270px),-25px)rotate(0)}15%{opacity:1;transform:translate(calc(-50% - 220px),-25px)rotate(0)}30%{opacity:1;transform:translate(calc(-50% - 155px),-25px)rotate(75deg)}70%{opacity:1;transform:translate(calc(-50% - 155px),-25px)rotate(75deg)}85%{opacity:1;transform:translate(calc(-50% - 220px),-25px)rotate(0)}to{opacity:0;transform:translate(calc(-50% - 270px),-25px)rotate(0)}}@keyframes streamPour{0%,30%{opacity:0;height:0}35%,65%{opacity:1;height:90px}70%,to{opacity:0;height:0}}.unconfigured-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;z-index:8;background:#0f0f0ff2;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:absolute;inset:0}.unconfigured-overlay h2{color:#ef4444;text-shadow:0 2px 8px #ef44444d;margin:0;font-size:1.6rem;font-weight:800}.unconfigured-overlay p{color:#d1d5db;max-width:400px;margin:0;font-size:.95rem;line-height:1.5}.unconfigured-overlay .settings-primary{margin-top:8px}.voice-widget{box-sizing:border-box;color:#f1f5f9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a4d;flex-direction:column;gap:16px;height:100%;padding:16px;display:flex}.voice-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.voice-header .settings-controls{gap:16px;display:flex}.voice-header .settings-controls label{text-transform:uppercase;color:#94a3b8;flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.voice-header .settings-controls input{color:#f1f5f9;background:#0f172a99;border:1px solid #ffffff26;border-radius:4px;outline:none;width:120px;padding:6px 10px;font-size:13px}.voice-content{flex:1;grid-template-columns:1fr 1fr;gap:16px;min-height:0;display:grid}.voice-section{background:#1e293b66;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;min-height:0;padding:16px;display:flex}.voice-section h4{color:#38bdf8;border-bottom:1px solid #ffffff0d;margin:0 0 12px;padding-bottom:8px;font-size:14px;font-weight:700}.mic-enable-panel{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.mic-help-text{color:#94a3b8;margin:0;font-size:13px;line-height:1.4}.mic-active-panel{flex-direction:column;flex:1;gap:16px;display:flex}.mic-controls{gap:12px;display:flex}.mic-controls button.muted{background:#ef444433;border-color:#ef444466}.volume-indicator-container{flex-direction:column;gap:6px;display:flex}.volume-label{text-transform:uppercase;color:#94a3b8;font-size:11px;font-weight:600}.volume-bar-bg{background:#0f172acc;border-radius:4px;height:8px;position:relative;overflow:hidden}.volume-bar-fill{background:#10b981;border-radius:4px;height:100%;transition:width 50ms ease-out}.volume-bar-fill.speaking{background:#ef4444;box-shadow:0 0 8px #ef444488}.ptt-status-area{background:#0f172a66;border:1px solid #ffffff0d;border-radius:6px;flex-direction:column;gap:12px;margin-top:auto;padding:12px;display:flex}.ptt-hotkey-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.hotkey-assign-btn{color:#38bdf8;cursor:pointer;text-align:center;background:#38bdf826;border:1px solid #38bdf866;border-radius:4px;min-width:60px;padding:4px 10px;font-family:monospace;font-size:12px;transition:all .2s}.hotkey-assign-btn:hover{background:#38bdf840;border-color:#38bdf8}.hotkey-assign-btn.listening{color:#ef4444;background:#ef444426;border-color:#ef444480;animation:1s infinite alternate pulse-red}@keyframes pulse-red{0%{opacity:.6}to{opacity:1}}.ptt-light{text-align:center;color:#94a3b8;background:#ffffff0d;border:1px dashed #ffffff1a;border-radius:4px;padding:8px;font-size:12px;font-weight:700;transition:all .1s}.ptt-light.speaking{color:#f87171;background:#ef444433;border:1px solid #ef444466;animation:1.5s infinite heartbeat;box-shadow:0 0 10px #ef444440}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.speakers-container{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow-y:auto}.no-speakers-placeholder{color:#64748b;flex:1;justify-content:center;align-items:center;font-size:13px;font-style:italic;display:flex}.speaker-item{background:#ffffff05;border:1px solid #ffffff0a;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;transition:all .2s;display:flex}.speaker-item.active{background:#38bdf814;border-color:#38bdf833}.speaker-avatar-indicator{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:flex}.speaker-name{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:500;overflow:hidden}.speaking-badge{text-transform:uppercase;color:#38bdf8;background:#38bdf826;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;animation:1s infinite alternate pulse-speaking}@keyframes pulse-speaking{0%{opacity:.8;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}.text-danger{color:#ef4444!important}.mic-active-panel .mic-controls .text-danger{background:#ef44441a;border-color:#ef44444d}.mic-active-panel .mic-controls .text-danger:hover{background:#ef444433}.widget-config.voice-config{flex-direction:column;gap:12px;display:flex}.youtube-widget{box-sizing:border-box;color:#f1f5f9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a4d;flex-direction:column;gap:16px;height:100%;padding:16px;display:flex}.youtube-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.youtube-header .settings-controls{gap:16px;display:flex}.youtube-header .settings-controls label{text-transform:uppercase;color:#94a3b8;flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.youtube-header .settings-controls input{color:#f1f5f9;background:#0f172a99;border:1px solid #ffffff26;border-radius:4px;outline:none;width:120px;padding:6px 10px;font-size:13px}.youtube-content{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.video-load-form{gap:12px;display:flex}.video-load-form input{color:#f1f5f9;background:#0f172a99;border:1px solid #ffffff26;border-radius:6px;outline:none;flex:1;padding:8px 12px;font-size:14px;transition:border-color .2s}.video-load-form input:focus{border-color:#38bdf8}.player-wrapper{background:#0f172a66;border:1px solid #ffffff14;border-radius:8px;flex:1;justify-content:center;align-items:center;min-height:0;padding:16px;display:flex}.player-container{aspect-ratio:16/9;background:#000;border-radius:6px;width:100%;max-width:800px;height:100%;position:relative;overflow:hidden;box-shadow:0 10px 25px #00000080}.yt-iframe-frame{border:none;width:100%;height:100%}.player-placeholder{text-align:center;color:#94a3b8;background:linear-gradient(135deg,#1e293bcc,#0f172ae6);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.player-placeholder .tv-icon{margin-bottom:12px;font-size:48px;animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.player-placeholder p{max-width:320px;margin:0;font-size:14px;line-height:1.5}.widget-config.youtube-config{flex-direction:column;gap:12px;display:flex}.video-source-selector{background:#0f172a80;border:1px solid #ffffff14;border-radius:8px;gap:4px;padding:3px;display:flex}.source-tab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.source-tab-btn:hover{color:#f1f5f9;background:#ffffff0a}.source-tab-btn.active{color:#fff;background:#ffffff1f;box-shadow:0 2px 8px #0003}.jellyfin-controls-container{flex-direction:column;gap:12px;display:flex}.jellyfin-helper-divider{text-align:center;color:#64748b;letter-spacing:.05em;align-items:center;font-size:10px;font-weight:700;display:flex}.jellyfin-helper-divider:before,.jellyfin-helper-divider:after{content:"";border-bottom:1px solid #ffffff0f;flex:1}.jellyfin-helper-divider:before{margin-right:12px}.jellyfin-helper-divider:after{margin-left:12px}.jellyfin-helper-form{flex-direction:column;gap:10px;display:flex}.jellyfin-helper-form .helper-row{gap:8px;display:flex}.jellyfin-helper-form .helper-row input{color:#f1f5f9;background:#0f172a99;border:1px solid #ffffff26;border-radius:6px;outline:none;flex:1;min-width:0;padding:8px 10px;font-size:13px;transition:border-color .2s}.jellyfin-helper-form .helper-row input:focus{border-color:#38bdf8}.html5-video-player{object-fit:contain;background:#000;border:none;width:100%;height:100%}.play-pause-btn{margin-left:8px}.floating-ptt-btn{-webkit-backdrop-filter:blur(12px);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:999999;touch-action:none;background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;transition:all .15s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:80px;right:20px;box-shadow:0 8px 32px #0000004d}.floating-ptt-btn:hover{background:#ffffff40;transform:translateY(-2px)}.floating-ptt-btn:active,.floating-ptt-btn.is-active{background:#ef444499!important;border-color:#ef4444cc!important;transform:scale(.92)!important;box-shadow:0 0 20px #ef444499!important}.floating-ptt-btn-label{text-shadow:0 2px 4px #000c;letter-spacing:.5px;white-space:nowrap;pointer-events:none;background:#000000a6;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:800;position:absolute;bottom:-22px;left:50%;transform:translate(-50%)}.pinball-widget{background:#000;flex-direction:column;width:calc(100% + 20px);height:calc(100% + 20px);min-height:280px;margin:-10px;display:flex}.pinball-stage{flex:auto;width:100%;position:relative;overflow:hidden}.pinball-frame{transform-origin:0 0;z-index:1;border:0;display:block;position:absolute}.pinball-config{gap:12px}
