/* NABU Desktop 5.3 — real graphical OS via TigerVNC/noVNC */
#systemdesk{max-width:none!important;min-width:0!important}
body[data-view="systemdesk"] .main{max-width:none;width:100%;padding:20px 26px 30px}
body[data-view="systemdesk"] .topbar{margin-bottom:18px}
.osRoot{--os-line:rgba(226,232,241,.12);--os-muted:#a0b1c8;position:relative;isolation:isolate;width:100%;min-height:650px;height:min(830px,calc(100dvh - 160px));display:flex;flex-direction:column;overflow:hidden;background:#0e1828;border:1px solid rgba(97,121,160,.23);border-radius:20px;box-shadow:0 18px 70px #08122430;color:#f5f8fe;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif}
.osRoot:fullscreen{height:100dvh;border:0;border-radius:0}
.osRoot button{font-family:inherit;letter-spacing:normal;box-shadow:none!important;transform:none!important}
.osToolbar{height:69px;min-height:69px;display:flex;align-items:center;gap:16px;padding:0 20px;background:#131e30;border-bottom:1px solid var(--os-line)}
.osIdentity{display:flex;align-items:center;gap:12px;min-width:0}.osIdentity strong{display:block;font-size:14px;line-height:1.3;letter-spacing:-.015em}.osIdentity small{display:block;color:var(--os-muted);font-size:11px;margin-top:3px}.osBrandMark{width:36px;height:36px;border-radius:11px;background:#dce9fb;color:#19355d;display:grid;place-items:center}.osBrandMark svg{width:20px;height:20px}.osConnectivity{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:11px;color:#a7b9cf;white-space:nowrap}.osStatusDot{height:7px;width:7px;background:#9aa7bd;border-radius:50%;box-shadow:0 0 0 3px #ffffff08}.osConnectivity.ready .osStatusDot{background:#76d8ad}.osConnectivity.ready{color:#c7eddc}.osConnectivity.offline{color:#e6c19c}.osToolbarActions{display:flex;gap:7px}.osRoot .osToolButton{background:#ffffff0a;color:#e4eeff;min-height:36px;width:36px;height:36px;padding:8px;border:1px solid #ffffff13;border-radius:10px;display:grid;place-items:center}.osToolButton svg{width:18px;height:18px}
.osStage{flex:1;min-height:0;position:relative;background:radial-gradient(ellipse at 74% 24%,#1c3862 0%,transparent 40%),linear-gradient(120deg,#101b2f,#0e1625 73%);overflow:hidden}
.osWelcome{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.93fr);align-items:center;gap:45px;padding:5% 7%;overflow:auto}.osWelcomeArtwork{grid-column:2;grid-row:1;position:relative;height:310px;display:grid;place-items:center}.osGlow{position:absolute;inset:5% 1%;background:radial-gradient(ellipse,#749cde40 4%,transparent 65%);filter:blur(17px)}.osWindowMock{position:relative;width:94%;max-width:490px;height:260px;border:1px solid #e4ecfd70;border-radius:15px;background:linear-gradient(145deg,#d4e0f2,#aebfd8);box-shadow:0 23px 60px #0309197a;overflow:hidden;transform:perspective(1000px) rotateY(-7deg) rotateX(3deg)}.osMockTop{height:38px;background:#e8f0fa;display:flex;align-items:center;gap:6px;padding:0 14px}.osMockTop i{width:8px;height:8px;border-radius:100%;background:#9aacc5}.osMockTop i:first-child{background:#d67d80}.osMockTop i:nth-child(2){background:#e8bf76}.osMockTop i:nth-child(3){background:#80c5a7}.osMockTop span{height:13px;width:40%;background:#d6e0ec;border-radius:5px;margin-left:10%}.osMockSide{height:calc(100% - 38px);width:30%;padding:22px 12px;background:#c6d4e5;display:grid;align-content:start;gap:14px}.osMockSide span{height:12px;background:#a8bbd1;border-radius:5px}.osMockSide span:first-child{background:#729ad0}.osMockFiles{position:absolute;left:33%;right:12px;top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.osMockFiles i{height:49px;background:linear-gradient(#e0b959 0 30%,#efc966 30%);border-radius:6px 6px 10px 10px;box-shadow:0 3px 12px #24344e2c}.osMockDock{position:absolute;bottom:0;left:24%;right:24%;height:39px;border:1px solid #ffffff65;display:flex;justify-content:center;gap:12px;align-items:center;background:#f8fbffaa;backdrop-filter:blur(16px);border-radius:13px 13px 0 0}.osMockDock i{width:21px;height:21px;background:#6f96d2;border-radius:7px}.osMockDock i:nth-child(2){background:#ddb75b}.osMockDock i:nth-child(3){background:#93bfad}.osMockDock i:nth-child(4){background:#ad9de3}.osMockDock i:nth-child(5){background:#77899f}
.osWelcomeText{grid-column:1;grid-row:1;position:relative;z-index:1}.osKicker{font-weight:650;font-size:10px;letter-spacing:.16em;color:#88aeea}.osWelcome h2{font-size:clamp(30px,3.8vw,56px);line-height:1.08;letter-spacing:-.055em;margin:18px 0 16px;color:#f5f8fe;font-weight:650}.osWelcome p{max-width:400px;color:#b0c0d8;font-size:14px;line-height:1.75}.osStartupStatus{display:block;font-size:12px;color:#b9cbe3;margin-top:22px}.osWelcomeActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:15px}.osRoot button.osLaunch{background:#edf3ff;color:#1b2e4d;min-height:45px;padding:10px 18px;border-radius:12px;font-size:13px;display:flex;align-items:center;gap:17px}.osLaunch svg{width:17px;height:17px}.osRoot button.osSecondary{background:#ffffff12;border:1px solid #ffffff22;color:#f1f5fd;min-height:45px;padding:10px 16px;font-size:12px;border-radius:12px}.osRoot button.osLaunch:disabled{opacity:.5}
.osViewer{position:absolute;inset:0;background:#0a111c}.osViewer:not([hidden]){display:block}.osViewer iframe{width:100%;height:100%;display:block;border:0;background:#141a26}.osInstallPanel{position:absolute;inset:0;display:grid;place-items:center;padding:30px;background:#111d30}.osInstallPanel[hidden],.osWelcome[hidden],.osViewer[hidden]{display:none!important}.osPanelCard{max-width:570px;width:100%;border-radius:20px;padding:30px;background:#ffffff0c;border:1px solid #ffffff1b}.osPanelIcon{width:54px;height:54px;background:#d9e8ff;color:#20395e;border-radius:16px;display:grid;place-items:center}.osPanelIcon svg{width:28px;height:28px}.osPanelCard h2{font-size:26px;color:#f5f8fe;margin:22px 0 8px}.osPanelCard p{font-size:13px;color:#b6c5dc;line-height:1.7;margin-bottom:18px}.osPanelCard code{display:block;overflow:auto;font-size:12px;padding:16px;background:#081326;border:1px solid #ffffff18;color:#e6f1ff;border-radius:12px;margin:0 0 16px}.osPanelCard .osMuted{font-size:11px}
.osFooter{height:42px;min-height:42px;background:#131e30;border-top:1px solid var(--os-line);display:flex;align-items:center;padding:0 16px;gap:16px;font-size:11px;color:var(--os-muted)}.osFooterLeft{display:flex;align-items:center;gap:9px}.osTinyIndicator{width:6px;height:6px;border-radius:50%;background:#7b90aa}.osFooter #osResourceLine{margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.osRoot .osFooterAction{background:transparent;color:#d8e6fb;min-height:31px;font-size:11px;padding:5px 10px;border-radius:7px;border:1px solid #ffffff1a}
body[data-view="systemdesk"] .osRoot button:focus-visible{outline:2px solid #a9ceff;outline-offset:2px}
@media(max-width:950px){body[data-view="systemdesk"] .main{padding:16px 18px 95px}.osWelcome{grid-template-columns:1fr;padding:30px;gap:20px}.osWelcomeArtwork{grid-column:1;grid-row:1;height:170px}.osWindowMock{height:150px;width:72%}.osMockSide{padding:10px}.osMockFiles{top:50px}.osMockFiles i{height:28px}.osMockDock{height:25px;gap:7px}.osMockDock i{width:13px;height:13px;border-radius:4px}.osWelcomeText{grid-column:1;grid-row:2}.osWelcome h2{font-size:35px}.osRoot{height:calc(100dvh - 165px);min-height:680px}.osConnectivity{display:none}}
@media(max-width:600px){.osToolbar{padding:0 12px;min-height:61px;height:61px}.osIdentity strong{font-size:12px}.osBrandMark{height:30px;width:30px}.osRoot{border-radius:15px}.osWelcome{padding:22px}.osWelcomeArtwork{height:145px}.osWelcome h2{font-size:30px}.osWelcome p{font-size:12px}.osFooter{font-size:10px}.osFooter #osResourceLine{display:none}}

.deskHeading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.deskHeading h2{font-size:clamp(26px,3vw,35px);margin:5px 0}.deskHeading p{color:var(--muted,#8c96a6);margin:0}.deskEyebrow{font-size:10px;letter-spacing:.19em;font-weight:800;opacity:.6}.deskBanner{padding:12px 16px;border-radius:14px;background:var(--card,rgba(128,128,128,.09));margin:18px 0;color:inherit}.deskBanner.connected{color:#389d83}.deskBanner.warning{color:#ba794c}.deskStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.deskStat,.deskWindow,.deskCam{background:var(--card,rgba(128,128,128,.07));border:1px solid rgba(128,145,168,.15);border-radius:19px}.deskStat{padding:20px;min-height:97px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.deskStat small{opacity:.65}.deskStat strong{font-size:clamp(15px,1.5vw,22px)}.deskTabs{display:flex;gap:7px;margin:26px 0 12px;flex-wrap:wrap}.deskTab{border-radius:12px;padding:11px 15px;opacity:.65}.deskTab.active{opacity:1;background:rgba(103,135,185,.17)}.deskWindow{padding:14px;min-height:280px}.deskPath{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 12px 18px;border-bottom:1px solid rgba(128,145,168,.15);font-size:13px}.deskPath span{opacity:.7;overflow-wrap:anywhere}.deskFileHead{display:flex;justify-content:space-between;padding:14px 13px;font-size:12px;opacity:.5}.deskFile{display:flex;gap:14px;align-items:center;padding:12px;border-bottom:1px solid rgba(128,145,168,.1);font-size:13px}.deskFileName{margin-right:auto;min-width:0;text-align:left;display:flex;align-items:center;gap:9px;overflow-wrap:anywhere;background:none!important;box-shadow:none!important;border:0!important;padding:0!important;color:inherit!important}.deskFileName:disabled{opacity:.8}.deskFile>span,.deskFile>small{opacity:.65}.deskSmall{font-size:11px;padding:7px 9px;white-space:nowrap}.deskEmpty{padding:48px 20px;text-align:center;opacity:.65}.deskFoot{font-size:12px;opacity:.65;margin:15px}.deskGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.deskCam{overflow:hidden}.deskCamView{aspect-ratio:16/9;background:#111923}.deskCamView img{width:100%;height:100%;object-fit:contain}.deskCamInfo{padding:17px;display:flex;justify-content:space-between;gap:10px;align-items:center}.deskCamInfo small{opacity:.6}.deskRecording{padding:24px}.deskRecording p{line-height:1.65;opacity:.8}@media(max-width:670px){.deskStats{grid-template-columns:repeat(2,minmax(0,1fr))}.deskHeading{align-items:flex-start}.deskFile{flex-wrap:wrap}.deskFileName{flex-basis:65%}}


.osUnlock{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at center,#233b5d,#0d1625 67%)}.osUnlock[hidden]{display:none!important}.osUnlock .osPanelCard{box-shadow:0 20px 60px #050b1a55}.osUnlock label{color:#e2eaf5;font-size:12px;margin:4px 0 7px;display:block}.osUnlock input{width:100%;background:#080f1d;color:white;border:1px solid #536a8d;min-height:48px;border-radius:10px;padding:12px 14px}.osUnlockError{color:#ffc3b7!important;min-height:16px;font-size:12px!important;margin:7px 0 0!important}
