:root{--bg:#07101e;--bg2:#0b1525;--panel:#101b2d;--panel2:#131f33;--line:#26354d;--text:#f5f8ff;--muted:#94a6bf;--brand:#67e8f9;--brand2:#3b82f6;--ok:#5ee6a8;--warn:#ffd166;--danger:#fb7185;--shadow:0 22px 60px rgba(0,0,0,.28);--r:18px}*{box-sizing:border-box}body,html{margin:0;background:radial-gradient(circle at 80% 0,#13284d 0,transparent 34%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.appShell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column;background:rgba(5,13,25,.88);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:5}.brand{display:flex;gap:12px;align-items:center;padding:4px 6px 24px}.brandMark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--brand),var(--brand2));display:grid;place-items:center;color:#05101e;font-weight:900;box-shadow:0 8px 28px rgba(103,232,249,.2)}.brand b{display:block;font-size:14px}.brand span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.sidebar nav{display:grid;grid-gap:7px;gap:7px}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:var(--muted);font-size:14px}.sidebar nav a.active,.sidebar nav a:hover{background:#14233a;color:white}.dot{width:7px;height:7px;border:1px solid #7392b8;border-radius:50%}.sidebar a.active .dot{background:var(--brand);border-color:var(--brand);box-shadow:0 0 14px var(--brand)}.sideFoot{margin-top:auto;color:var(--muted);font-size:11px;padding:10px 6px}.statusDot{display:inline-block;width:7px;height:7px;background:var(--ok);border-radius:50%;margin-right:7px}.main{min-width:0}.topbar{height:70px;border-bottom:1px solid rgba(38,53,77,.7);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:-webkit-sticky;position:sticky;top:0;background:rgba(7,16,30,.78);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:4}.crumb{color:var(--muted);font-size:13px}.modePills{display:flex;padding:4px;background:#0e1a2d;border:1px solid var(--line);border-radius:12px}.mode{font-size:11px;padding:7px 11px;color:var(--muted);border-radius:8px}.mode.active{background:#1b2a42;color:white}.ghostBtn,.primaryBtn,.secondaryBtn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:11px 16px;border:1px solid var(--line);cursor:pointer}.ghostBtn,.secondaryBtn{background:rgba(16,27,45,.7);color:#d9e6f7}.primaryBtn{border:none;background:linear-gradient(135deg,var(--brand),#60a5fa);color:#05111e;font-weight:800;box-shadow:0 10px 25px rgba(96,165,250,.16)}.primaryBtn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.content{padding:34px;max-width:1500px;margin:auto}.hero{min-height:390px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(125deg,rgba(20,34,56,.92),rgba(12,27,50,.64));padding:46px;display:grid;grid-template-columns:1.12fr .88fr;grid-gap:42px;gap:42px;align-items:center;overflow:hidden;box-shadow:var(--shadow)}.eyebrow{font-size:10px;letter-spacing:.16em;color:var(--brand);font-weight:800}.hero h1,.pageTitle h1{font-size:clamp(32px,4vw,58px);line-height:1.02;margin:13px 0 15px;max-width:830px;letter-spacing:-.04em}.hero p,.pageTitle p{color:var(--muted);font-size:16px;line-height:1.6;max-width:710px}.heroActions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}.heroVisual{display:grid;place-items:center;min-height:270px}.screenPreview{width:min(100%,520px);padding:18px;border:1px solid #335276;border-radius:18px;background:#07101d;transform:perspective(900px) rotateY(-7deg) rotateX(3deg);box-shadow:0 30px 70px rgba(0,0,0,.4)}.screenGrid{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:2/1;grid-gap:2px;gap:2px}.demoScreen i,.screenGrid i{background:linear-gradient(145deg,#183d65,#1f7393);border:1px solid rgba(103,232,249,.22);border-radius:2px}.previewMeta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding-top:12px}.previewMeta b{color:var(--brand)}.pageTitle,.sectionHead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:34px 0 18px}.sectionHead h2{margin:8px 0 0;font-size:26px}.confidence,.liveBadge,.officialBadge,.warningBadge{font-size:11px;padding:8px 10px;border-radius:999px;border:1px solid var(--line);background:#0e1a2c;color:var(--muted)}.confidence,.liveBadge,.officialBadge{color:var(--ok);border-color:rgba(94,230,168,.25)}.warningBadge{color:var(--warn)}.startGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.startCard{position:relative;min-height:190px;padding:20px;border-radius:var(--r);border:1px solid var(--line);background:linear-gradient(165deg,#111d30,#0d1727);transition:.2s}.startCard:hover{transform:translateY(-3px);border-color:#3d5878;box-shadow:var(--shadow)}.tag{font-size:10px;color:var(--brand);text-transform:uppercase;letter-spacing:.1em}.startCard h3{font-size:18px;margin:26px 0 8px}.startCard p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}.arrow{position:absolute;right:18px;bottom:16px;color:var(--brand)}.steps{margin:26px 0 8px;display:grid;grid-template-columns:repeat(5,1fr);grid-gap:10px;gap:10px}.step{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:12px}.step b{width:24px;height:24px;border-radius:8px;background:#17253a;display:grid;place-items:center}.step.active{color:white;border-color:#2f5a78}.step.active b{background:var(--brand);color:#05111e}.pageTitle{align-items:center;margin-top:4px}.pageTitle h1{font-size:38px}.pageTitle p{font-size:14px;margin-bottom:0}.workspaceGrid{display:grid;grid-template-columns:1fr 330px;grid-gap:16px;gap:16px}.authCard,.catalogCard,.empty,.panel,.projectRow,.summaryPanel{border:1px solid var(--line);background:linear-gradient(160deg,var(--panel),#0c1728);border-radius:var(--r);box-shadow:0 14px 35px rgba(0,0,0,.14)}.panel{padding:20px}.panelHead b{display:block}.panelHead span{font-size:12px;color:var(--muted);display:block;margin-top:5px}.controlRow{display:flex;gap:12px;margin:22px 0}.authCard label,.controlRow label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-size:12px}.authCard input,.controlRow input{width:140px;border:1px solid var(--line);background:#081322;color:white;padding:10px 12px;border-radius:10px;outline:none}.authCard input{width:100%}.authCard input:focus,.controlRow input:focus{border-color:#4a81ac}.demoCanvas{min-height:440px;border:1px dashed #314664;border-radius:15px;background:radial-gradient(circle at 50% 35%,rgba(41,93,132,.14),transparent 38%),#091321;display:grid;place-items:center;padding:38px}.demoScreen{display:grid;width:min(100%,720px);grid-gap:1px;gap:1px;max-height:380px}.summaryPanel{padding:22px;height:max-content;position:-webkit-sticky;position:sticky;top:90px}.summaryPanel h3{font-size:28px;margin:10px 0 18px}.summaryPanel dl{margin:0}.summaryPanel dl div{display:flex;justify-content:space-between;border-top:1px solid rgba(38,53,77,.75);padding:14px 0;font-size:12px}.summaryPanel dt{color:var(--muted)}.summaryPanel dd{margin:0;font-weight:700}.okText{color:var(--ok)}.note{font-size:11px;line-height:1.55;color:var(--muted);padding:12px;background:#0a1525;border-radius:12px;margin-top:12px}.catalogCard{padding:24px;max-width:920px}.catalogTop{display:flex;justify-content:space-between;align-items:flex-start}.maker{font-size:11px;color:var(--muted)}.catalogTop h2{font-size:34px;margin:3px 0}.catalogTop>div>span:last-child{font-size:11px;color:var(--muted)}.specGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin:24px 0}.specGrid div{padding:15px;border-radius:12px;background:#0a1524;border:1px solid rgba(38,53,77,.7)}.specGrid span{display:block;color:var(--muted);font-size:10px;margin-bottom:7px}.specGrid b{font-size:17px}.sourceBox{padding:14px;border-radius:12px;background:rgba(103,232,249,.05);border:1px solid rgba(103,232,249,.15);display:grid;grid-gap:4px;gap:4px}.sourceBox b{font-size:11px;color:var(--brand)}.sourceBox span{font-size:12px}.sourceBox small{color:var(--muted)}.authWrap{min-height:calc(100vh - 140px);display:grid;place-items:center}.authCard{width:min(100%,430px);padding:30px}.authCard h1{font-size:32px;margin:10px 0}.authCard p{color:var(--muted);font-size:13px;line-height:1.5;margin-bottom:24px}.authCard label{margin:13px 0}.authCard .primaryBtn{width:100%;margin-top:8px}.demoCreds{display:grid;grid-gap:3px;gap:3px;font-size:11px;color:var(--muted);margin-top:18px;padding:12px;background:#091423;border-radius:10px}.demoCreds b{color:white}.formError{font-size:11px;color:var(--danger);background:rgba(251,113,133,.08);padding:9px;border-radius:9px}.empty{padding:38px;text-align:center}.empty h3{margin-top:0}.empty p{color:var(--muted)}.projectList{display:grid;grid-gap:10px;gap:10px}.projectRow{display:grid;grid-template-columns:46px 1fr auto;align-items:center;padding:16px 18px}.projectIcon{width:40px;height:40px;border-radius:11px;background:#162842;display:grid;place-items:center;color:var(--brand)}.projectRow h3{margin:0 0 4px;font-size:15px}.projectRow p{margin:0;color:var(--muted);font-size:12px}.projectMeta{display:flex;gap:8px}.projectMeta span{font-size:10px;border:1px solid var(--line);border-radius:999px;padding:6px 8px;color:var(--muted)}@media(max-width:1100px){.appShell{grid-template-columns:76px 1fr}.sidebar{padding:18px 10px}.brand>div:last-child,.sidebar nav a,.sidebar nav a:not(.active) span:not(.dot){font-size:0}.brandMark{margin:auto}.sidebar nav a{justify-content:center;padding:14px}.sideFoot{display:none}.startGrid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.heroVisual{display:none}.workspaceGrid{grid-template-columns:1fr}.summaryPanel{position:static}.specGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.appShell{display:block}.sidebar{position:fixed;bottom:0;top:auto;height:68px;width:100%;border-right:0;border-top:1px solid var(--line);padding:8px 10px;z-index:10}.brand,.sideFoot{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:4px;gap:4px}.sidebar nav a,.sidebar nav a:not(.active){font-size:10px;display:grid;place-items:center;grid-gap:3px;gap:3px;padding:8px 4px}.dot{width:6px;height:6px}.topbar{height:58px;padding:0 15px}.modePills{display:none}.crumb{font-size:11px}.content{padding:18px 14px 88px}.hero{padding:26px 20px;min-height:0}.hero h1{font-size:36px}.hero p{font-size:14px}.startGrid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(5,1fr);gap:4px;overflow:auto}.step{display:grid;place-items:center;padding:8px 4px;grid-gap:5px;gap:5px}.step span{font-size:9px}.pageTitle,.sectionHead{align-items:flex-start;flex-direction:column}.pageTitle h1{font-size:32px}.workspaceGrid{display:block}.summaryPanel{margin-top:12px}.controlRow{display:grid;grid-template-columns:1fr 1fr}.controlRow input{width:100%}.demoCanvas{min-height:300px;padding:18px}.specGrid{grid-template-columns:1fr 1fr}.catalogCard{padding:18px}.projectRow{grid-template-columns:42px 1fr}.projectMeta{grid-column:2;margin-top:9px}.heroActions{display:grid}.heroActions a{width:100%}}.editorPage{min-width:0}.editorLoading{min-height:55vh;display:grid;place-items:center;color:var(--muted)}.editorTop{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:16px;gap:16px;margin-bottom:12px}.editorTop h1{margin:4px 0 0;font-size:25px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editorModes{display:flex;border:1px solid var(--line);padding:3px;border-radius:11px;background:#081321}.editorModes button{border:0;background:transparent;color:var(--muted);padding:7px 10px;border-radius:8px;font-size:11px}.editorModes button.active{background:#17334b;color:#fff}.saveState{font-size:10px;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--line);padding:7px 9px;border-radius:999px;color:var(--muted)}.saveState.saved{color:var(--ok);border-color:rgba(94,230,168,.28)}.saveState.dirty,.saveState.saving{color:var(--warn)}.saveState.error{color:var(--danger)}.editorToolbar{gap:8px;overflow-x:auto;border:1px solid var(--line);background:#0a1524;border-radius:13px;padding:7px;margin-bottom:9px;scrollbar-width:thin}.editorToolbar,.toolGroup{display:flex;align-items:center}.toolGroup{gap:4px;padding-right:7px;border-right:1px solid var(--line);white-space:nowrap}.toolGroup:last-child{border:0}.canvasHud button,.editorToolbar button,.editorToolbar select,.fileBtn,.inspectorPanel button,.layersPanel button,.modalCard button{border:1px solid var(--line);background:#0e1b2d;color:#cbd8e8;border-radius:8px;padding:7px 9px;font-size:10px;cursor:pointer}.canvasHud button:hover,.editorToolbar button:hover,.inspectorPanel button:hover,.layersPanel button:hover{border-color:#3b6688;color:#fff}.editorToolbar button.active{background:#153d59;border-color:#2b789e;color:#fff}.editorToolbar button:disabled,.inspectorPanel button:disabled{opacity:.35;cursor:not-allowed}.dangerGhost{color:#ff8c9f!important}.snapCtl{font-size:10px;color:var(--muted);display:flex;gap:5px;align-items:center}.editorLayout{display:grid;grid-template-columns:220px minmax(0,1fr) 285px;grid-gap:8px;gap:8px;height:calc(100vh - 185px);min-height:590px}.inspectorPanel,.layersPanel{border:1px solid var(--line);background:#0a1422;border-radius:13px;padding:10px;overflow:auto}.panelTitle{color:var(--muted);font-size:10px;letter-spacing:.09em;margin-bottom:10px}.panelTitle button{padding:5px 7px}.assemblyRow{border:1px solid rgba(38,53,77,.65);border-radius:10px;margin-bottom:8px;padding:7px;background:#091524}.assemblyName{display:grid;grid-template-columns:18px 1fr;align-items:center;margin-bottom:5px}.assemblyName b{color:var(--brand)}.assemblyName input{border:0;background:transparent;color:#dce8f6;min-width:0;font-weight:700;font-size:11px;padding:5px}.surfaceRow{width:100%;display:grid!important;grid-template-columns:20px 1fr;text-align:left;align-items:center;margin:3px 0;background:transparent!important;border-color:transparent!important}.surfaceRow.active{background:#14304a!important;border-color:#2e5e80!important}.surfaceRow>span{color:var(--brand)}.surfaceRow div{display:grid;grid-gap:2px;gap:2px}.surfaceRow b{font-size:10px}.surfaceRow small{font-size:9px;color:var(--muted)}.addSurface{width:100%;margin-top:4px;border-style:dashed!important;color:var(--brand)!important}.layerActions{display:grid;grid-gap:6px;gap:6px;margin-top:10px}.canvasWrap{position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#07111d}.editorCanvas{display:block;width:100%;height:100%;touch-action:none;cursor:default}.editorCanvas.tool-pan{cursor:-webkit-grab;cursor:grab}.editorCanvas.tool-toggle-cell{cursor:cell}.surfaceBounds{fill:rgba(26,58,87,.08);stroke:#3c6683;stroke-width:9;stroke-dasharray:28 16;pointer-events:all}.surfaceBounds.selected{stroke:#67e8f9;fill:rgba(103,232,249,.06)}.surfaceLabel{font-size:50px;fill:#8eb7d0;pointer-events:none;font-weight:700}.cabinetRect{fill:#173a57;stroke:#2f85af;stroke-width:5;cursor:pointer;transition:fill .08s}.cabinetRect:hover{fill:#225273}.cabinetRect.selected{fill:#1f6688;stroke:#67e8f9;stroke-width:11}.cabinetRect.locked{stroke-dasharray:20 12;opacity:.78}.cabinetIndex{fill:#d7effb;font-size:48px;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-weight:700}.marquee{fill:rgba(103,232,249,.12);stroke:#67e8f9;stroke-width:7;stroke-dasharray:25 16;pointer-events:none}.canvasHud{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid var(--line);border-radius:10px;background:rgba(6,15,26,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.canvasHud span{font-size:9px;color:var(--muted);padding:0 5px}.ruler{position:absolute;z-index:2;pointer-events:none;color:#54738d;font-size:8px;background:rgba(7,17,29,.9)}.rulerX{left:28px;right:0;top:0;height:24px;border-bottom:1px solid #1b3249}.rulerX span{position:absolute;transform:translateX(-50%);top:7px}.rulerY{top:24px;bottom:0;left:0;width:28px;border-right:1px solid #1b3249}.rulerY span{position:absolute;transform:translateY(-50%) rotate(-90deg);left:-2px;width:32px;text-align:center}.summaryMini{padding:12px;border-radius:11px;background:#0d1a2b;border:1px solid rgba(38,53,77,.8);display:grid;grid-gap:4px;gap:4px}.summaryMini strong{font-size:31px;line-height:1}.summaryMini small{color:var(--muted)}.summaryMini>div{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;margin-top:7px}.summaryMini>div b{font-size:9px;background:#091421;padding:7px;border-radius:7px;color:#b8d0e3}.issueBox{margin-top:8px;border:1px solid rgba(246,200,95,.25);border-radius:10px;padding:9px;background:rgba(246,200,95,.04);display:grid;grid-gap:5px;gap:5px}.issueBox>b{font-size:10px;color:var(--warn)}.issueBox span{font-size:9px;color:var(--muted);line-height:1.35}.issueBox span.warning{color:#f6c85f}.issueBox span.error{color:#fb7185}.inspectorSection{padding-top:12px;display:grid;grid-gap:9px;gap:9px}.inspectorTitle{font-size:9px;letter-spacing:.11em;color:var(--brand);font-weight:800}.inspectorSection label,.modalCard label{display:grid;grid-gap:5px;gap:5px;font-size:9px;color:var(--muted)}.inspectorSection input,.inspectorSection select,.modalCard input,.modalCard select,.modalCard textarea,.savePanel input{width:100%;border:1px solid var(--line);background:#071321;color:#fff;border-radius:8px;padding:8px;font-size:10px;outline:0}.fieldGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}.fieldGrid.four{grid-template-columns:repeat(4,1fr)}.inspectorStats{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px}.inspectorStats span{font-size:9px;padding:7px;background:#081421;border-radius:7px;color:#a9c1d5}.technicalMeta{display:grid;grid-gap:3px;gap:3px;font-size:8px;color:#688ca8;background:#07111c;border:1px dashed #223d54;padding:8px;border-radius:8px}.toggleLine{display:flex;gap:12px}.toggleLine label{display:flex;align-items:center;gap:5px}.toggleLine input{width:auto}.full{width:100%}.inspectorEmpty{padding:25px 8px;color:var(--muted);text-align:center;font-size:10px}.inspectorEmpty p{line-height:1.5}.learnBox{margin-top:10px;padding:10px;border-radius:10px;border:1px solid rgba(103,232,249,.15);background:rgba(103,232,249,.04)}.learnBox b{font-size:10px;color:var(--brand)}.learnBox p{font-size:9px;color:var(--muted);line-height:1.5;margin-bottom:0}.savePanel{display:grid;grid-gap:6px;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.savePanel small{font-size:8px;color:var(--muted)}.fileBtn{text-align:center}.dropFile input,.fileBtn input{display:none}.versionsMini{display:grid;grid-gap:2px;gap:2px;padding:6px;background:#07111c;border-radius:7px}.versionsMini span{font-size:8px;color:#7291aa}.modalBackdrop{position:fixed;inset:0;background:rgba(2,7,13,.78);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px;z-index:100}.modalCard{width:min(100%,520px);max-height:90vh;overflow:auto;background:#0b1727;border:1px solid #30445f;border-radius:17px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.5);display:grid;grid-gap:13px;gap:13px}.modalCard.wide{width:min(100%,780px)}.modalHead{display:flex;justify-content:space-between;align-items:flex-start}.modalHead h2{margin:5px 0;font-size:24px}.modalHead>button{font-size:18px;background:transparent;border:0}.modalActions{display:flex;justify-content:flex-end;gap:7px;margin-top:4px}.computedStrip{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.computedStrip span{font-size:9px;background:#081421;border:1px solid var(--line);padding:9px;border-radius:8px;color:var(--muted)}.computedStrip b{color:#fff}.experimentalBanner{font-size:10px;line-height:1.5;padding:10px;border:1px solid rgba(246,200,95,.2);background:rgba(246,200,95,.05);color:#dbc98e;border-radius:9px}.dropFile{display:grid!important;place-items:center;min-height:90px;border:1px dashed #3d607e!important;border-radius:11px;color:var(--brand)!important;cursor:pointer}.importReport{display:grid;grid-gap:5px;gap:5px;border:1px solid var(--line);background:#07111c;border-radius:10px;padding:10px}.importReport div{display:grid;grid-template-columns:120px 1fr;grid-gap:8px;gap:8px;font-size:9px}.importReport span{color:var(--muted)}.importReport code{font-size:8px;word-break:break-all;color:#9bc2d9}.importReport p{font-size:9px;color:var(--warn);line-height:1.4}.errorText{color:var(--danger)}.projectLink{text-decoration:none;color:inherit}.projectLink:hover{border-color:#3a6685;background:#102039}@media(max-width:1250px){.editorLayout{grid-template-columns:180px minmax(0,1fr) 245px}.editorToolbar .toolGroup:nth-child(3){display:none}.fieldGrid.four{grid-template-columns:1fr 1fr}}@media(max-width:900px){.editorTop{grid-template-columns:1fr auto}.editorModes{grid-row:2;grid-column:1/-1;width:max-content}.editorLayout{grid-template-columns:1fr;height:auto;min-height:0}.layersPanel{max-height:210px}.canvasWrap{height:62vh;min-height:500px}.inspectorPanel{max-height:none}.editorToolbar{position:-webkit-sticky;position:sticky;top:58px;z-index:5}.summaryMini>div{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.editorPage{margin:-8px -6px 0}.editorTop{grid-template-columns:1fr auto;padding:0 4px}.editorTop h1{font-size:19px}.editorModes{overflow:auto;max-width:100%}.editorToolbar{top:58px;margin-left:-8px;margin-right:-8px;border-radius:0;padding-left:12px}.editorLayout{gap:7px}.layersPanel{order:2}.canvasWrap{order:1;height:52vh;min-height:420px;border-radius:10px}.inspectorPanel{order:3}.ruler{display:none}.fieldGrid.four{grid-template-columns:1fr 1fr}.modalBackdrop{padding:8px}.modalCard{padding:15px}.computedStrip{grid-template-columns:1fr}.canvasHud button:first-of-type,.canvasHud button:nth-of-type(2){display:none}}.projectCardRow{grid-template-columns:46px minmax(0,1fr) auto auto;gap:12px}.projectMainLink{text-decoration:none;color:inherit;min-width:0}.projectMainLink:hover h3{color:var(--brand)}.projectActions{display:flex;gap:5px}.projectActions button{border:1px solid var(--line);background:#0d1a2b;color:var(--muted);border-radius:7px;padding:6px 8px;font-size:9px;cursor:pointer}@media(max-width:900px){.projectCardRow{grid-template-columns:42px 1fr}.projectActions,.projectMeta{grid-column:2}.projectActions{flex-wrap:wrap}}.versionsMini b{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.versionsMini button{font-size:8px!important;text-align:left;padding:5px 6px!important;background:#091421!important}.sessionBox{display:flex;align-items:center;gap:9px}.sessionBox>div{display:grid;text-align:right}.sessionBox b{font-size:10px}.sessionBox span{font-size:8px;color:var(--muted)}.sessionBox button{border:1px solid var(--line);background:#0d1a2b;color:var(--muted);border-radius:8px;padding:6px 8px;font-size:9px;cursor:pointer}.stageContext{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px}.stageContext>span:not(.liveBadge){padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:#0b1727}.libraryPreview{display:grid;grid-gap:4px;gap:4px;padding:10px;border:1px solid rgba(103,232,249,.15);border-radius:9px;background:rgba(103,232,249,.04)}.libraryPreview b{font-size:10px;color:var(--brand)}.libraryPreview span{font-size:9px;color:var(--muted);line-height:1.45}.specGrid small{display:block;margin-top:7px;color:#69849a;font-size:8px}.editorToolbar button:disabled,.modalActions button:disabled{opacity:.38;cursor:not-allowed}.fileBtn{cursor:pointer}@media(max-width:900px){.stageContext>span:not(.liveBadge){display:none}}@media(max-width:700px){.stageContext{display:none}}.stageNav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0 0 16px;padding:6px;background:#081625;border:1px solid #17334f;border-radius:14px}.stageNav a{display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 12px;border-radius:10px;color:#93abc0;text-decoration:none;font-weight:700}.stageNav a span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#102a42;color:#c7d8e7;font-size:12px}.stageNav a.active{background:#12314f;color:#fff;box-shadow:inset 0 0 0 1px #2e6c9c}.stageNav a.active span{background:#2d81be;color:#fff}.stage3Page{display:flex;flex-direction:column;gap:14px}.stage3Header{display:grid;grid-template-columns:1fr auto auto;grid-gap:18px;gap:18px;align-items:center}.stage3Header h1{margin:.2rem 0;font-size:clamp(1.55rem,2.5vw,2.4rem)}.stage3Header p{margin:0;color:#8fa6b9}.validationBadge{padding:9px 13px;border-radius:999px;font-weight:900;font-size:12px;letter-spacing:.05em;border:1px solid #2a4b64}.validationBadge.validado{background:#0f332a;color:#8fe2c0;border-color:#245d4b}.validationBadge.válido-con-avisos{background:#3a3216;color:#f4d875;border-color:#6b5d21}.validationBadge.bloqueado,.validationBadge.no-validado{background:#401f27;color:#ff9ba8;border-color:#7c3440}.stage3Summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.stage3Summary article{padding:13px 14px;background:#0a1725;border:1px solid #17334f;border-radius:12px}.stage3Summary span{display:block;color:#7e97aa;font-size:12px}.stage3Summary strong{display:block;margin-top:5px;font-size:18px;color:#eef6fb}.strategyRow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.strategyCard{text-align:left;padding:13px;border-radius:13px;background:#0a1827;border:1px solid #183954;color:#d9e8f3;display:flex;flex-direction:column;gap:4px}.strategyCard small,.strategyCard span{color:#809bad}.strategyCard.active{border-color:#2d81be;background:#102b43;box-shadow:inset 0 0 0 1px #2d81be}.stage3Toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stage3Toolbar>span{color:#8da5b7;font-size:13px}.stage3Grid{display:grid;grid-template-columns:280px minmax(0,1fr) 350px;grid-gap:12px;min-height:610px}.connectionControls,.dataCanvasPanel,.guideSheet,.novaPanel,.portPanel,.validationPanel{background:#081522;border:1px solid #17334f;border-radius:14px}.connectionControls,.portPanel{padding:14px;overflow:auto;max-height:72vh}.connectionControls h3,.portPanel h3{margin:7px 0 10px}.connectionControls>label{display:flex;flex-direction:column;gap:5px;margin-bottom:10px;color:#8ca5b8;font-size:12px}.connectionControls input,.connectionControls select,.surfaceConstraint select{width:100%;background:#0d2134;border:1px solid #23445e;color:#e9f4fb;border-radius:8px;padding:8px}.portChecks{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px;margin:10px 0}.portChecks>b{grid-column:1/-1;font-size:12px;color:#8ca5b8}.portChecks label{display:flex;gap:4px;align-items:center;font-size:12px}.surfaceConstraint{padding:9px;margin:8px 0;background:#0b1d2c;border-radius:10px;border:1px solid #17334f}.surfaceConstraint>b{display:block;margin-bottom:6px}.miniFields{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px;margin-top:6px}.miniFields label{grid-column:1/-1;font-size:11px;color:#8ca5b8}.dataCanvasPanel{display:flex;flex-direction:column;min-width:0}.panelTitle{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #17334f;font-weight:800}.panelTitle small{color:#7590a4;font-weight:500}.dataCanvas{height:100%;min-height:560px;background:radial-gradient(circle at center,#0b2032,#06101a 70%)}.dataCabinet{fill:#12273a;stroke:#5f7282;stroke-width:8}.dataCabinet.port-1{fill:#173d55}.dataCabinet.port-2{fill:#2f3156}.dataCabinet.port-3{fill:#3d3520}.dataCabinet.port-4{fill:#20473b}.dataCabinet.port-5{fill:#4c2738}.dataCabinet.port-6{fill:#3a294d}.dataPortText,.dataSeqText,.dataSurfaceLabel{fill:#f3f8fb;text-anchor:middle;dominant-baseline:middle;font-weight:900}.dataSeqText{font-size:70px;fill:#bbccda}.dataPortText{font-size:90px}.dataSurfaceLabel{text-anchor:start;font-size:100px;fill:#79a7c8}.portCard{border:1px solid #17334f;border-radius:10px;margin-bottom:8px;padding:10px;background:#091927}.portCard header{display:flex;justify-content:space-between;gap:8px}.portCard header span{font-size:12px;color:#829aaa}.portCard.used{border-color:#285476}.utilBar{height:7px;background:#07101a;border-radius:6px;margin:8px 0;overflow:hidden}.utilBar i{display:block;height:100%;background:linear-gradient(90deg,#2f86bd,#6fc6dc)}.chainActions{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7892a6}.chainList{max-height:190px;overflow:auto;margin-top:7px}.chainList>div{display:grid;grid-template-columns:58px 1fr 55px;grid-gap:4px;gap:4px;align-items:center;padding:4px 0;border-top:1px solid #112c41;font-size:11px}.chainList>div.start button{background:#2b7eaf}.chainList span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chainList select{background:#0d2134;color:#fff;border:1px solid #23445e;border-radius:6px}.novaLayout{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.novaPanel{padding:14px}.novaSurfaceGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:10px;gap:10px}.novaSurfaceGrid article{display:flex;flex-direction:column;gap:4px;padding:12px;background:#0b1e2e;border:1px solid #1e415b;border-radius:10px}.novaSurfaceGrid strong{font-size:18px}.novaSurfaceGrid span{font-size:12px;color:#86a0b3}.novaPort{margin:10px 0;padding:10px;border:1px solid #204866;border-radius:10px;background:#0a1b2a}.novaPort footer,.novaPort header{display:flex;justify-content:space-between;color:#95aec0;font-size:12px}.novaFlow{display:flex;gap:5px;overflow:auto;padding:9px 0}.novaFlow>span{min-width:62px;padding:8px;border-radius:7px;background:#173a52;text-align:center;font-weight:800}.novaFlow>span.start{outline:2px solid #69bed8}.novaFlow small{display:block;color:#9fb2c0;font-size:9px;margin-top:3px}.guideSheet{padding:22px;max-width:1080px;margin:0 auto;width:100%}.guideSheet header{border-bottom:1px solid #23425a;padding-bottom:14px}.guideSheet section{padding:15px 0;border-bottom:1px solid #17334f}.guideSheet h3{letter-spacing:.08em;color:#70b6d8}.guidePort,.guideRow{display:grid;grid-template-columns:1.2fr repeat(3,1fr);grid-gap:10px;gap:10px;padding:8px;border-radius:7px;background:#0b1d2d;margin:5px 0}.guidePort span,.guideRow span{color:#9ab0c0;font-size:12px}.checkGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;color:#b8cbd8}.validationPanel{overflow:hidden}.validationRow{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;padding:10px 14px;border-top:1px solid #17334f}.validationRow p{margin:3px 0}.validationRow small{color:#8298a8}.validationRow.blocking,.validationRow.error{border-left:4px solid #d45c6a}.validationRow.warning{border-left:4px solid #d9b843}.validationRow.unverified{border-left:4px solid #b777d7}.validationRow.info{border-left:4px solid #4ea484}@media(max-width:1100px){.stage3Grid{grid-template-columns:240px 1fr}.portPanel{grid-column:1/-1;max-height:none}.stage3Summary{grid-template-columns:repeat(3,1fr)}.novaLayout{grid-template-columns:1fr}}@media(max-width:760px){.stageNav{grid-template-columns:repeat(4,1fr);position:-webkit-sticky;position:sticky;top:0;z-index:20}.stageNav a{font-size:11px;padding:8px 4px;flex-direction:column;gap:3px}.stage3Header{grid-template-columns:1fr}.stage3Summary,.strategyRow{grid-template-columns:1fr 1fr}.stage3Grid{display:flex;flex-direction:column}.connectionControls,.portPanel{max-height:none}.dataCanvas{min-height:420px}.guidePort,.guideRow{grid-template-columns:1fr 1fr}.checkGrid{grid-template-columns:1fr}.stage3Header .editorModes{justify-self:start}}.dataArrow{stroke:#d7e8f3;stroke-width:18;stroke-linecap:round;opacity:.72}.dataArrow.port-1{stroke:#71c2e8}.dataArrow.port-2{stroke:#a9a1ff}.dataArrow.port-3{stroke:#e2c15e}.dataArrow.port-4{stroke:#71d3ab}.dataArrow.port-5{stroke:#e889a4}.dataArrow.port-6{stroke:#c79be8}.dataEndpointText{fill:#f6e49a;text-anchor:middle;font-size:54px;font-weight:900;letter-spacing:.08em}.chainList>div{grid-template-columns:58px 1fr 55px 34px}.chainList button.lockedNode{background:#5d4920;border-color:#a48339}.miniFields select:nth-child(3){grid-column:1/-1}.novaPortMeta{display:flex;gap:.7rem;flex-wrap:wrap;margin:.55rem 0;color:var(--muted);font-size:.82rem}.novaPortMeta span{background:rgba(255,255,255,.035);border:1px solid var(--border);border-radius:8px;padding:.3rem .45rem}.dataCanvasPanel,.guideSheet,.novaLayout,.novaPanel,.portPanel,.stage3Grid,.stage3Page,.stage3Page>*{min-width:0}.stage3Grid{grid-template-columns:minmax(260px,280px) minmax(0,1fr) minmax(320px,360px);align-items:start}.connectionControls,.novaPanel,.portPanel{overflow:auto}.panelHint{margin:0 0 10px;color:#7f97ab;font-size:12px;line-height:1.4}.dataCanvasPanel{overflow:hidden}.dataLegend{display:flex;flex-wrap:wrap;gap:10px;padding:10px 14px;border-bottom:1px solid #17334f;background:rgba(255,255,255,.02)}.dataLegend span{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#9bb2c4}.legendSwatch{display:inline-block;width:18px;height:10px;border-radius:999px;background:#2b7eaf;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.legendSwatch.end{background:#d4b35c}.legendSwatch.route{background:linear-gradient(90deg,#71c2e8,#c79be8)}.dataCanvas{display:block;width:100%;height:min(74vh,720px)}.dataEndpointText.start{fill:#8ee5c0}.dataEndpointText.end{fill:#f4d875}.chainEndpointsMini{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:8px 0 10px}.chainEndpointsMini>div{padding:8px 10px;background:#0c1d2c;border:1px solid #17334f;border-radius:10px}.chainEndpointsMini label{display:block;font-size:10px;letter-spacing:.08em;color:#6fb9d8;font-weight:900;margin-bottom:4px}.chainEndpointsMini strong{display:block;font-size:13px}.chainEndpointsMini span{display:block;font-size:11px;color:#8ba5b8;margin-top:2px}.novaLayout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start}.novaPortsStack{display:flex;flex-direction:column;gap:12px}.novaPanel,.novaPort{overflow:hidden}.novaPort footer,.novaPort header{gap:12px;flex-wrap:wrap}.novaEndpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:.7rem 0}.novaEndpoints .endpoint{padding:10px 12px;border-radius:10px;border:1px solid #1d425d;background:#0c1d2c}.novaEndpoints .endpoint.start{box-shadow:inset 0 0 0 1px rgba(111,210,170,.25)}.novaEndpoints .endpoint.end{box-shadow:inset 0 0 0 1px rgba(228,200,108,.25)}.novaEndpoints label{display:block;font-size:10px;letter-spacing:.08em;color:#72b9d6;font-weight:900;margin-bottom:4px}.novaEndpoints strong{display:block;font-size:14px}.novaEndpoints span{display:block;font-size:12px;color:#8ca5b8;margin-top:3px}.novaFlowGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:8px;gap:8px;margin-top:8px}.novaStep{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px;border-radius:10px;background:#10293d;border:1px solid #21465f;position:relative}.novaStep.start{background:#12364b;border-color:#4ca9cf;box-shadow:inset 0 0 0 1px rgba(76,169,207,.35)}.novaStep.end{border-color:#756337}.novaStepIndex{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 8px;border-radius:999px;background:#173d55;color:#fff;font-size:11px;font-weight:900;align-self:flex-start}.novaStep small,.novaStep span,.novaStep strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.novaStep span{font-size:12px;color:#dbe7ef}.novaStep small{font-size:11px;color:#8aa5b9}.guideSheet{max-width:1180px;overflow:hidden}.guideRouteCard{padding:12px;border-radius:12px;border:1px solid #1c3e57;background:#0a1a29;margin:10px 0}.guideRouteHead{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px;color:#9eb4c5}.guideRouteSteps{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.guideRouteSteps li{padding:10px;border-radius:10px;background:#0d2134;border:1px solid #1c425d}.guideRouteSteps li.start{border-color:#4ca9cf;box-shadow:inset 0 0 0 1px rgba(76,169,207,.35)}.guideRouteSteps li.end{border-color:#756337}.guideRouteSteps b{display:block;font-size:12px;margin-bottom:4px}.guideRouteSteps span{display:block;font-size:13px}.guideRouteSteps small{display:block;font-size:11px;color:#8ea8ba;margin-top:3px}@media(max-width:1200px){.stage3Grid{grid-template-columns:260px minmax(0,1fr)}.portPanel{grid-column:1/-1}.novaLayout{grid-template-columns:1fr}}@media(max-width:760px){.dataLegend{padding:8px 10px}.dataCanvas{height:420px;min-height:420px}.chainEndpointsMini,.novaEndpoints{grid-template-columns:1fr}.guideRouteSteps,.novaFlowGrid{grid-template-columns:1fr 1fr}.stage3Grid{display:flex;flex-direction:column}}@media(max-width:560px){.guideRouteSteps,.novaFlowGrid,.stage3Summary,.strategyRow{grid-template-columns:1fr}.guideSheet{padding:14px}}.stage3Page{width:100%;overflow-x:hidden}.stage3Grid,.stage3Page,.stage3Page>*{max-width:100%}.stage3Grid{grid-template-columns:minmax(250px,270px) minmax(0,1fr) minmax(330px,390px);gap:12px;width:100%}.connectionControls,.dataCanvasPanel,.portPanel{min-width:0;max-width:100%}.dataCanvas{height:clamp(460px,66vh,720px);min-height:460px}.dataArrowUnderlay{stroke:#020712;stroke-width:34;stroke-linecap:round;opacity:.85}.dataArrow{stroke-width:20;opacity:.98;filter:drop-shadow(0 0 8px rgba(103,232,249,.28))}.dataArrowHead{stroke:none}.dataArrowHead.port-1{fill:#71c2e8}.dataArrowHead.port-2{fill:#a9a1ff}.dataArrowHead.port-3{fill:#e2c15e}.dataArrowHead.port-4{fill:#71d3ab}.dataArrowHead.port-5{fill:#e889a4}.dataArrowHead.port-6{fill:#c79be8}.dataCabinet{stroke-width:10}.dataCabinet.routeStart{stroke:#59e49f;stroke-width:18}.dataCabinet.routeEnd{stroke:#ff6f7f;stroke-width:18}.dataSeqText{font-size:92px;fill:#fff}.dataPortText{font-size:60px;fill:#9fddff}.dataReceiverCount{font-size:42px;fill:#9bb7c9;text-anchor:middle;font-weight:800}.dataEndpointBadge{font-size:42px;text-anchor:middle;font-weight:1000;paint-order:stroke;stroke:#07101e;stroke-width:12;stroke-linejoin:round}.dataEndpointBadge.start{fill:#72f2b0}.dataEndpointBadge.end{fill:#ff7382}.cabinetRouteList{max-height:330px;overflow:auto;margin-top:8px;border-top:1px solid #16344a}.cabinetRouteList>div{display:grid;grid-template-columns:62px minmax(0,1fr) 62px 54px 36px;grid-gap:6px;gap:6px;align-items:center;padding:7px 0;border-bottom:1px solid #112c41;font-size:11px}.cabinetRouteList>div.start{background:rgba(94,230,168,.05)}.cabinetRouteList>div.end{background:rgba(251,113,133,.05)}.cabinetRouteList>div>button:first-child{min-height:30px;padding:4px 7px}.cabinetRouteList>div.start>button:first-child{background:#237d5a;border-color:#55d69c}.cabinetRouteList>div.end>button:first-child{background:#71313b;border-color:#d45c6a}.routeStopMain{min-width:0}.routeStopMain b,.routeStopMain span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.routeStopMain span{color:#8ca5b8;margin-top:2px}.routeNext{text-align:center}.routeNext b,.routeNext small{display:block}.routeNext small{color:#758ea2;font-size:9px}.routeNext b{font-size:12px;color:#d9eaf5}.cabinetRouteList select{width:54px;background:#0d2134;color:#fff;border:1px solid #23445e;border-radius:6px;padding:5px}.novaStarExperience{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%}.novaTopSummary{display:flex;justify-content:space-between;align-items:stretch;gap:12px;flex-wrap:wrap}.novaViewTabs{display:flex;gap:6px;padding:5px;background:#081522;border:1px solid #17334f;border-radius:12px;min-width:0}.novaViewTabs button{border:1px solid transparent;background:transparent;color:#8fa8bb;padding:9px 13px;border-radius:8px;cursor:pointer;font-weight:800;white-space:nowrap}.novaViewTabs button.active{background:#12314f;border-color:#2d81be;color:#fff}.novaQuickFacts{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));grid-gap:8px;gap:8px;flex:1 1;min-width:min(100%,560px)}.novaQuickFacts>span{display:flex;flex-direction:column;padding:9px 12px;background:#081522;border:1px solid #17334f;border-radius:10px;min-width:0}.novaQuickFacts small{color:#7993a7}.novaQuickFacts b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.novaFrontLayout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,330px);grid-gap:12px;gap:12px;align-items:start;min-width:0}.frontPanel{padding:0;overflow:hidden}.frontRouteWrap{min-width:0;overflow:hidden;background:radial-gradient(circle at 50% 30%,#0c2335,#06101a 72%)}.frontRouteCanvas{display:block;width:100%;height:clamp(500px,68vh,760px)}.frontRouteLine{stroke-width:22;stroke-linecap:round;fill:none;opacity:.98}.frontRouteLine.port-1{stroke:#71c2e8}.frontRouteLine.port-2{stroke:#a9a1ff}.frontRouteLine.port-3{stroke:#e2c15e}.frontRouteLine.port-4{stroke:#71d3ab}.frontRouteLine.port-5{stroke:#e889a4}.frontRouteLine.port-6{stroke:#c79be8}.frontCabinet{fill:#182330;stroke:#536679;stroke-width:9}.frontCabinet.port-1{fill:#15374b}.frontCabinet.port-2{fill:#2d3052}.frontCabinet.port-3{fill:#3b341f}.frontCabinet.port-4{fill:#1d4438}.frontCabinet.port-5{fill:#472534}.frontCabinet.port-6{fill:#362747}.frontCabinet.routeStart{stroke:#59e49f;stroke-width:17}.frontCabinet.routeEnd{stroke:#ff6f7f;stroke-width:17}.cabinetDetail{stroke:#657688;stroke-width:3;opacity:.28}.frontSurfaceLabel{fill:#dcebf4;font-size:92px;font-weight:900}.frontCabPort,.frontCabSeq,.frontEndpoint{fill:#fff;text-anchor:middle;font-weight:1000;paint-order:stroke;stroke:#07101e;stroke-width:9;stroke-linejoin:round}.frontCabSeq{font-size:88px}.frontCabPort{font-size:56px;fill:#9fddff}.frontEndpoint{font-size:42px}.frontEndpoint.start{fill:#72f2b0}.frontEndpoint.end{fill:#ff7382}.novaSideInfo{background:#081522;border:1px solid #17334f;border-radius:14px;padding:16px;min-width:0}.novaSideInfo h3{margin:2px 0 10px}.novaSideInfo dl{margin:0 0 18px}.novaSideInfo dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);grid-gap:8px;gap:8px;padding:9px 0;border-bottom:1px solid #153049;font-size:12px}.novaSideInfo dt{color:#7893a7}.novaSideInfo dd{margin:0;text-align:right;font-weight:800;overflow-wrap:anywhere}.novaLegend{display:grid;grid-gap:8px;gap:8px;color:#9ab2c3;font-size:12px}.novaLegend span{display:flex;align-items:center;gap:8px}.novaLegend b{min-width:34px;padding:3px 6px;border-radius:6px;background:#10263a;color:#eaf5fb;text-align:center}.novaLogicalPanel{padding:0;overflow:hidden}.screenConnectionWorkspace{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:10px;gap:10px;padding:12px;min-width:0}.novaControlRail{display:flex;flex-direction:column;gap:10px}.novaControlGroup,.novaControlNote{padding:12px;background:#0b1c2b;border:1px solid #1a3a53;border-radius:10px}.novaControlGroup span{display:block;color:#7f99ac;font-size:11px;margin-bottom:7px}.novaControlGroup strong{font-size:16px}.novaControlNote{font-size:11px;line-height:1.5;color:#8ca5b8}.portKeyGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.portKeyGrid b{padding:7px 4px;border-radius:7px;background:#101c2a;color:#7690a4;text-align:center;border:1px solid #1c3245}.portKeyGrid b.active{background:#143b52;color:#fff;border-color:#4ca9cf}.logicalBoards{display:flex;flex-direction:column;gap:12px;min-width:0;overflow:auto;max-height:70vh;padding-right:2px}.logicalSurface{min-width:max-content;background:#08131f;border:1px solid #24465f;border-radius:10px;overflow:hidden}.logicalSurface>header{position:-webkit-sticky;position:sticky;left:0;display:flex;justify-content:space-between;gap:18px;padding:10px 12px;background:#0d2233;border-bottom:1px solid #24465f;color:#dcecf5}.logicalSurface>header span{color:#83a0b4;font-size:11px}.logicalColumnLabels{display:grid;background:#0b1a28;border-bottom:1px solid #213d53}.logicalColumnLabels b{padding:6px;text-align:center;color:#8da8ba;font-size:10px;border-left:1px solid #17334f}.logicalGrid{display:grid}.logicalRowLabel{display:grid;place-items:center;background:#0b1a28;color:#8da8ba;font-size:10px;border-top:1px solid #17334f;border-right:1px solid #17334f}.logicalCell{position:relative;min-height:94px;padding:9px;border-left:1px solid #24465f;border-top:1px solid #24465f;background:#183649;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#eaf4fa}.logicalCell.port-2{background:#30304e}.logicalCell.port-3{background:#3b351f}.logicalCell.port-4{background:#1f443a}.logicalCell.port-5{background:#472935}.logicalCell.port-6{background:#352947}.logicalCell.unused{background:#343b43;color:#7d8791}.logicalCell.start{box-shadow:inset 0 0 0 3px #5fe3a3}.logicalCell.end{box-shadow:inset 0 0 0 3px #ff7180}.logicalCell em{position:absolute;top:4px;left:5px;padding:2px 5px;border-radius:5px;background:#28a66f;color:#04170f;font-size:9px;font-style:normal;font-weight:1000}.logicalCell em.end{left:auto;right:5px;background:#e85e6d;color:white}.logicalCell strong{font-size:16px}.logicalCell span{font-size:10px;color:#cfe0ea}.logicalCell small{font-size:9px;color:#8fb0c4}.logicalDirection{position:absolute;right:5px;bottom:3px;font-size:18px;font-style:normal;font-weight:1000;color:#7ee2ff}.logicalSequenceStrip{padding:10px 12px;border-top:1px solid #17334f;background:#07121e;overflow:auto}.logicalSequencePort{display:flex;align-items:center;gap:5px;min-width:max-content}.logicalSequencePort>b{padding:7px 9px;border-radius:7px;background:#143b52}.logicalSequencePort>span{padding:7px 9px;border-radius:7px;border:1px solid #1f4560;background:#0f2537;font-size:11px}.logicalSequencePort>span.start{border-color:#54d69a;color:#75e7af}.logicalSequencePort>span.end{border-color:#d45c6a;color:#ff9aa5}.novaSurfaceGrid.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.novaSurfaceGrid.compact article{min-width:0}.routeTableWrap{display:flex;flex-direction:column;gap:12px}.routeTableCard{overflow:hidden;border:1px solid #1d4059;border-radius:12px;background:#081522}.routeTableCard>header{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;background:#0d2132}.routeTableCard>header div{display:flex;flex-direction:column}.routeTableCard>header span{font-size:11px;color:#829caf}.routeTableHeader,.routeTableRow{display:grid;grid-template-columns:70px 1.15fr 1fr .7fr 1.5fr;grid-gap:8px;gap:8px;align-items:center;padding:8px 12px;min-width:680px}.routeTableHeader{background:#0a1b29;color:#7490a4;font-size:10px;font-weight:900}.routeTableRow{border-top:1px solid #153249;font-size:12px}.routeTableRow.start{box-shadow:inset 4px 0 #5ee6a8}.routeTableRow.end{box-shadow:inset 4px 0 #fb7185}.routeTableRow b{color:#eaf5fb}.routeTableCard{overflow-x:auto}.guideCableTable{overflow:auto;border:1px solid #1a3b54;border-radius:10px}.guideCableHead,.guideCableRow{display:grid;grid-template-columns:72px 1.2fr 1fr .75fr 1.25fr;grid-gap:8px;gap:8px;align-items:center;min-width:720px;padding:8px 10px}.guideCableHead{background:#0c2132;color:#7e9aaf;font-size:10px;font-weight:900}.guideCableRow{border-top:1px solid #153249;font-size:11px}.guideCableRow.start{box-shadow:inset 4px 0 #5ee6a8}.guideCableRow.end{box-shadow:inset 4px 0 #fb7185}.guideCableRow span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1280px){.stage3Grid{grid-template-columns:250px minmax(0,1fr)}.portPanel{grid-column:1/-1;max-height:none}.novaFrontLayout{grid-template-columns:1fr}.novaSideInfo{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.screenConnectionWorkspace{grid-template-columns:180px minmax(0,1fr)}}@media(max-width:900px){.novaQuickFacts{grid-template-columns:repeat(2,1fr)}.screenConnectionWorkspace{grid-template-columns:1fr}.novaControlRail{display:grid;grid-template-columns:repeat(3,1fr)}.novaControlNote{grid-column:1/-1}.frontRouteCanvas{height:520px}}@media(max-width:700px){.novaViewTabs{width:100%;overflow:auto}.novaQuickFacts{grid-template-columns:1fr 1fr;min-width:100%}.novaSideInfo{display:block}.novaControlRail{grid-template-columns:1fr}.dataCanvas{height:430px}.cabinetRouteList>div{grid-template-columns:58px minmax(0,1fr) 54px}.cabinetRouteList select,.cabinetRouteList>div>button:last-child{display:none}}@media(max-width:520px){.novaQuickFacts{grid-template-columns:1fr}.routeTableHeader,.routeTableRow{grid-template-columns:60px 150px 130px 90px 180px}.guideCableHead,.guideCableRow{grid-template-columns:60px 150px 130px 90px 170px}}.stageNavSimple{grid-template-columns:repeat(3,minmax(0,1fr))}.stageContextSimple{gap:6px}.stageContextSimple span{white-space:nowrap}.simplifiedStage3{gap:12px}.simplifiedHeader{grid-template-columns:minmax(0,1fr) auto}.compactSummary{grid-template-columns:repeat(4,minmax(0,1fr))}.simpleCableActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid #17334f;background:#081522;border-radius:12px}.simpleCableActions>span{flex:1 1;min-width:220px;color:#8da5b7;font-size:13px}.simpleCableActions button.active{border-color:#2d81be;background:#12314f}.cablePrimary{min-width:230px}.cableWorkspace{display:flex;flex-direction:column;gap:10px;min-width:0}.cableTabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;padding:6px;border-radius:13px;background:#071522;border:1px solid #17334f}.cableTabs button{padding:11px 12px;border-radius:9px;background:transparent;color:#91a9bc;border:1px solid transparent;font-weight:800}.cableTabs button.active{background:#12314f;color:#fff;border-color:#2e6c9c;box-shadow:inset 0 0 0 1px rgba(72,169,222,.2)}.cableContextBar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.cableContextBar>div{padding:10px 12px;background:#091927;border:1px solid #17334f;border-radius:10px;min-width:0}.cableContextBar span{display:block;font-size:10px;letter-spacing:.08em;color:#6da7c7;font-weight:900}.cableContextBar b{display:block;margin-top:4px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cableMainCard{background:#081522;border:1px solid #17334f;border-radius:14px;overflow:hidden;min-width:0}.rearCard{border-color:#28506d}.rearWarning{display:flex;align-items:center;gap:12px;padding:11px 14px;background:#102b43;border-bottom:1px solid #2d5877}.rearWarning b{padding:4px 8px;border-radius:6px;background:#2d81be;color:#fff;font-size:11px;letter-spacing:.08em}.rearWarning span{color:#c0d3e0;font-size:12px}.rearWarning.compact{border:0;border-radius:10px;margin:10px 10px 0;padding:8px 10px}.rearOrientationLabel{position:absolute;z-index:4;left:50%;top:12px;transform:translateX(-50%);padding:7px 12px;border-radius:999px;background:rgba(9,33,52,.94);border:1px solid #2e6c9c;color:#bfe3f6;font-size:11px;font-weight:900;letter-spacing:.06em;pointer-events:none}.frontRouteWrap{position:relative}.rearPerspective{background:radial-gradient(circle at 50% 30%,#11293a,#06101a 72%)}.installerMode{background:#081522;border:1px solid #17334f;border-radius:14px;overflow:hidden}.installerHeader{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px}.installerHeader h2{margin:.2rem 0;font-size:1.55rem}.installerHeader p{margin:0;color:#8fa6b9}.installerHeader label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#8fa6b9}.installerHeader select{min-width:100px;background:#0d2134;border:1px solid #23445e;color:#fff;border-radius:8px;padding:8px}.installerProgress{height:7px;background:#07101a;border-top:1px solid #17334f;border-bottom:1px solid #17334f}.installerProgress i{display:block;height:100%;background:linear-gradient(90deg,#2d81be,#63d0b0)}.installerGrid{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);min-height:560px}.installerInstruction{padding:18px;border-right:1px solid #17334f;display:flex;flex-direction:column;gap:10px}.installerStepBadge{align-self:flex-start;padding:6px 10px;border-radius:999px;background:#12314f;border:1px solid #2e6c9c;color:#fff;font-weight:900;font-size:12px}.installerInstruction article{padding:13px;border-radius:11px;background:#0b1d2c;border:1px solid #17334f}.installerInstruction article span{display:block;font-size:10px;letter-spacing:.08em;color:#6fb9d8;font-weight:900}.installerInstruction article b,.installerInstruction article strong{display:block;margin-top:4px}.installerInstruction article small{display:block;margin-top:4px;color:#8fa6b9}.installerTo{border-color:#2d81be!important;box-shadow:inset 0 0 0 1px rgba(45,129,190,.25)}.installerNext{opacity:.9}.installerArrow{text-align:center;font-size:30px;color:#68b9dd}.installerButtons{display:grid;grid-template-columns:1fr 1fr 1.2fr;grid-gap:7px;gap:7px;margin-top:auto}.installerCanvas{min-width:0;background:#06101a;overflow:hidden}.installerCurrentCabinet{stroke:#5ce6a1!important;stroke-width:25!important;filter:drop-shadow(0 0 18px rgba(92,230,161,.45))}.installerNextCabinet{stroke:#69bce7!important;stroke-width:18!important;stroke-dasharray:30 16}.installerCanvasLabel{fill:#fff;text-anchor:middle;font-size:34px;font-weight:1000;paint-order:stroke;stroke:#07101e;stroke-width:8}.installerCanvasLabel.current{fill:#5ce6a1}.installerCanvasLabel.next{fill:#69bce7}.advancedDrawer{display:flex;flex-direction:column;gap:12px;padding:14px;background:#07131f;border:1px solid #23445e;border-radius:14px}.advancedDrawerHeader{display:flex;justify-content:space-between;align-items:center;gap:16px}.advancedDrawerHeader h3{margin:.15rem 0}.advancedDrawerHeader p{margin:0;color:#8da5b7;font-size:12px}.advancedDrawer .stage3Grid{margin-top:2px}@media(max-width:1100px){.cableTabs{grid-template-columns:repeat(2,1fr)}.cableContextBar{grid-template-columns:1fr 1fr}.cableContextBar>div:last-child{grid-column:1/-1}.installerGrid{grid-template-columns:1fr}.installerInstruction{border-right:0;border-bottom:1px solid #17334f}.installerCanvas{min-height:520px}}@media(max-width:760px){.stageNavSimple{grid-template-columns:repeat(3,1fr)}.compactSummary{grid-template-columns:1fr 1fr}.cableContextBar,.simplifiedHeader{grid-template-columns:1fr}.cableContextBar>div:last-child{grid-column:auto}.installerHeader{align-items:flex-start;flex-direction:column}.installerButtons{grid-template-columns:1fr}.simpleCableActions>*{width:100%}.simpleCableActions>span{min-width:0}.stageContextSimple span:nth-child(4){display:none}}@media(max-width:520px){.cableTabs,.compactSummary{grid-template-columns:1fr}.installerCanvas .frontRouteCanvas{height:430px}}.frontRouteLine.surfaceJumpLine{stroke-width:30;filter:drop-shadow(0 0 9px rgba(92,196,238,.35))}.surfaceJumpUnderlay{stroke-width:46!important}.jumpSourceCabinet{stroke-dasharray:34 16}.jumpDestinationCabinet{filter:drop-shadow(0 0 14px rgba(93,211,246,.22))}.frontIoLabel{fill:#fff;text-anchor:middle;font-size:30px;font-weight:1000;paint-order:stroke;stroke:#07101e;stroke-width:7;letter-spacing:.04em}.frontIoLabel.out{fill:#ff8ca0}.frontIoLabel.in{fill:#62d9ff}.surfaceJumpBadge text{font-size:31px;letter-spacing:.05em}.surfaceJumpBadge .surfaceJumpSequence{font-size:44px}.surfaceJumpStrip{display:flex;flex-direction:column;gap:7px;padding:10px 12px;border-top:1px solid #1c3c54;background:#071522}.surfaceJumpStrip article{display:grid;grid-template-columns:94px minmax(0,1fr) 28px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:9px 10px;border:1px solid #1d4963;border-radius:9px;background:#0a1d2c;min-width:0}.surfaceJumpStrip span{font-size:10px;font-weight:1000;letter-spacing:.08em;color:#66d8ff}.surfaceJumpStrip b{font-size:11px;min-width:0}.surfaceJumpStrip i{font-style:normal;text-align:center;color:#75d7ff;font-size:18px;font-weight:1000}.screenConnectionNova{background:#dce8f2;border:1px solid #a5bbca;color:#142233;min-width:0}.novaScreenHeader{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid #aebfcc;background:#edf4f9}.novaScreenHeader strong{font-size:14px}.novaScreenHeader span{font-size:11px;color:#39546a}.novaScreenBody{display:grid;grid-template-columns:210px minmax(0,1fr);min-width:0}.novaLightRail{padding:10px;background:#eaf2f8;border-right:1px solid #b9c9d5;display:flex;flex-direction:column;gap:9px}.novaLightGroup{padding:10px;border:1px solid #c2d0da;background:#f5f9fc;border-radius:6px}.novaLightGroup>b{display:block;font-size:11px;margin-bottom:8px}.novaLightGroup button,.novaLightGroup input{border:1px solid #a9bac8;background:#fff;color:#1e3345;border-radius:5px;min-height:34px}.novaLightGroup button.selected{background:#1677d2;color:#fff;border-color:#0d65ba;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}.novaLightGroup>button{width:48px;font-weight:900}.novaPortButtons{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:7px;gap:7px}.novaPortButtons button{font-weight:900}.receivingSize label{display:grid;grid-template-columns:54px 1fr;align-items:center;grid-gap:7px;gap:7px;font-size:10px;margin-top:6px}.receivingSize input{width:100%;padding:5px 7px}.quickConnectionIcons{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:7px;gap:7px}.quickConnectionIcons button{font-size:20px;font-weight:1000}.novaMapStage{padding:10px;min-width:0;overflow:hidden}.novaMapToolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:9px;border:1px solid #bdccd8;background:#f4f8fb;border-radius:6px}.novaMapToolbar>div{display:flex;align-items:center;gap:8px;min-width:0}.novaMapToolbar span{font-size:10px;color:#536b7e}.novaMapToolbar b{font-size:11px;color:#226bb6}.novaMapToolbar label{display:flex;align-items:center;gap:4px;font-size:10px}.novaMapToolbar input{width:58px;min-height:30px;padding:4px 6px;border:1px solid #aebfcb;border-radius:4px;background:#fff;color:#1a2b39}.novaMapToolbar button{min-height:30px;padding:4px 10px;border:1px solid #8db6df;border-radius:4px;background:#d9ebff;color:#1468ba;font-weight:900}.novaSurfaceSetup{margin-top:9px;padding:9px;border:1px solid #bdccd8;background:#f4f8fb;border-radius:6px}.novaSurfaceSetup>span{display:block;font-size:10px;font-weight:900;margin-bottom:7px}.novaSurfaceSetup>div{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));grid-gap:7px;gap:7px}.novaSurfaceSetup article{padding:7px 9px;border:1px solid #b9c7d2;border-radius:5px;background:#fff;display:flex;justify-content:space-between;gap:8px}.novaSurfaceSetup b,.novaSurfaceSetup strong{font-size:10px}.surfaceTone-1{background:#ffd9df!important}.surfaceTone-2{background:#d8e9ff!important}.surfaceTone-3{background:#d9f4df!important}.novaMergedMap{margin-top:9px;border:1px solid #9eaeb9;background:#c4c8cc;overflow:auto}.novaSurfaceBands{display:grid;min-width:max-content}.novaSurfaceBands>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px;border-right:1px solid #abb8c1;border-bottom:1px solid #99a9b4}.novaSurfaceBands b{font-size:11px}.novaSurfaceBands span{font-size:9px;color:#41576a}.novaColumnLine{display:grid;grid-template-columns:42px minmax(0,1fr);min-width:max-content;background:#edf2f5}.novaColumnLine>span{border-right:1px solid #a5b3bd}.novaColumnLine>div{display:grid;min-width:max-content}.novaColumnLine b{padding:5px 3px;text-align:center;font-size:9px;border-right:1px solid #a5b3bd}.novaGridBody{display:grid;grid-template-columns:42px minmax(0,1fr);min-width:max-content}.novaRowLabels{display:grid;grid-template-rows:repeat(var(--nova-rows,4),minmax(88px,1fr));background:#edf2f5}.novaRowLabels b{display:grid;place-items:center;font-size:9px;border-right:1px solid #a5b3bd;border-top:1px solid #a5b3bd}.novaCellArea{position:relative;min-width:0}.novaCells{display:grid;min-width:max-content}.novaMapCell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:88px;border-right:1px solid #9eaab4;border-top:1px solid #9eaab4;background:#b4b8bc;color:#1d2730}.novaMapCell.active{background:#ffd7dd}.novaMapCell.port-2{background:#ded9ff}.novaMapCell.port-3{background:#fff0c5}.novaMapCell.port-4{background:#d9f2e6}.novaMapCell.port-5{background:#f6d8e8}.novaMapCell.port-6{background:#eadcf5}.novaMapCell.unused{background:#adb1b4;color:#6f777d}.novaMapCell strong{font-size:15px}.novaMapCell span{font-size:9px;font-weight:700}.novaMapCell i{right:5px;bottom:4px;font-size:19px;color:#158ce0}.novaMapCell em,.novaMapCell i{position:absolute;font-style:normal;font-weight:1000}.novaMapCell em{top:4px;left:5px;padding:2px 5px;border-radius:4px;background:#2ecf76;color:#073018;font-size:8px}.novaMapCell em.end{left:auto;right:5px;background:#f15467;color:#fff}.novaMapCell.start{box-shadow:inset 0 0 0 3px #2ed184}.novaMapCell.end{box-shadow:inset 0 0 0 3px #f15467}.novaMapCell.jumpOut{outline:2px dashed #e33e69;outline-offset:-4px}.novaMapCell.jumpIn{box-shadow:inset 0 0 0 3px #2e9ed7}.novaMapCell .io{position:absolute;bottom:4px;left:5px;padding:2px 4px;border-radius:3px;font-size:7px;font-weight:1000;color:#fff}.novaMapCell .io.in{background:#238bc6}.novaMapCell .io.out{background:#d43a64;left:auto;right:5px}.novaJumpOverlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.novaJumpOverlay line{stroke:#d73566;stroke-width:.045;fill:none;opacity:.92}.novaJumpOverlay path{fill:#d73566}.novaJumpOverlay rect{fill:#9c2546;stroke:#6e1530;stroke-width:.02}.novaJumpOverlay text{fill:#fff;font-size:.11px;font-weight:900;dominant-baseline:middle}.novaJumpSummary{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.novaJumpSummary span{padding:6px 8px;border-radius:5px;background:#fff0f3;border:1px solid #e1a2b3;color:#6e1e35;font-size:9px}.novaMapHelp{margin-top:8px;padding:7px 9px;border:1px solid #b8c8d3;background:#eff6fa;border-radius:5px;color:#385468;font-size:9px}@media(max-width:1100px){.novaScreenBody{grid-template-columns:1fr}.novaLightRail{border-right:0;border-bottom:1px solid #b9c9d5;display:grid;grid-template-columns:repeat(4,minmax(130px,1fr))}.surfaceJumpStrip article{grid-template-columns:80px 1fr}.surfaceJumpStrip article i{display:none}.surfaceJumpStrip article b:last-child{grid-column:2}}@media(max-width:760px){.novaLightRail{grid-template-columns:1fr 1fr}.novaSurfaceSetup>div{grid-template-columns:1fr}.novaMapToolbar>div{width:100%;flex-wrap:wrap}.surfaceJumpStrip article{grid-template-columns:1fr}.surfaceJumpStrip article b:last-child{grid-column:auto}.frontRouteCanvas{height:480px}}.surfaceJumpNext{border-color:#d34d72!important;background:#241625!important;box-shadow:inset 0 0 0 1px rgba(219,76,115,.25)}.surfaceJumpNext small,.surfaceJumpNext span{color:#ff91ad!important}.frontSameSurfaceRoute .dataArrowUnderlay{stroke-width:32;opacity:.9}.frontSameSurfaceRoute .frontRouteLine{stroke-width:18;filter:drop-shadow(0 0 7px rgba(113,194,232,.45))}.frontJumpArrowHead{fill:#ff5f8d}.frontRouteLine.surfaceJumpLine{stroke-width:24;filter:drop-shadow(0 0 8px rgba(255,95,141,.35))}.surfaceJumpUnderlay{stroke-width:38!important}.surfaceJumpBadge rect{fill:#091a28;stroke:#57c8f3;stroke-width:8;filter:drop-shadow(0 0 12px rgba(50,180,230,.3))}.surfaceJumpBadge text{fill:#82dfff;font-size:38px;font-weight:900;paint-order:stroke;stroke:#07101e;stroke-width:5;letter-spacing:.04em}.surfaceJumpBadge .surfaceJumpSequence{fill:#fff;font-size:54px}@media(max-width:760px){.frontSameSurfaceRoute .frontRouteLine{stroke-width:15}.frontRouteLine.surfaceJumpLine{stroke-width:20}}.frontSameSurfaceRoute .frontRouteHalo{stroke-width:9px;opacity:.88}.frontSameSurfaceRoute .frontRouteLine{stroke-width:4.5px;filter:drop-shadow(0 0 4px rgba(113,194,232,.82))}.frontJumpDirection,.frontRouteDirection{pointer-events:none;filter:drop-shadow(0 0 8px rgba(101,216,255,.7))}.frontJumpDirection path,.frontRouteDirection path{stroke:#06111d;stroke-width:2px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.frontRouteDirection.port-1 path{fill:#7bddff}.frontRouteDirection.port-2 path{fill:#b7b1ff}.frontRouteDirection.port-3 path{fill:#ffd96a}.frontRouteDirection.port-4 path{fill:#7ce9bc}.frontRouteDirection.port-5 path{fill:#ff9ab6}.frontRouteDirection.port-6 path{fill:#d5a8ff}.surfaceJumpUnderlay{stroke-width:10px!important;opacity:.9}.frontRouteLine.surfaceJumpLine{stroke-width:5px;filter:drop-shadow(0 0 5px rgba(255,95,141,.72))}@media(max-width:760px){.frontSameSurfaceRoute .frontRouteHalo{stroke-width:7px}.frontSameSurfaceRoute .frontRouteLine{stroke-width:3.5px}.surfaceJumpUnderlay{stroke-width:8px!important}.frontRouteLine.surfaceJumpLine{stroke-width:4px}}.frontSameSurfaceRoute{pointer-events:none}.frontSameSurfaceRoute .frontRouteHalo{stroke:#020712;stroke-width:7px;opacity:.82;vector-effect:non-scaling-stroke;stroke-linecap:round}.frontSameSurfaceRoute .frontRouteLine{stroke-width:3.5px;opacity:1;vector-effect:non-scaling-stroke;stroke-linecap:round;filter:drop-shadow(0 0 3px rgba(113,194,232,.72))}.frontRouteDirection{pointer-events:none;filter:drop-shadow(0 0 4px rgba(101,216,255,.62))}.frontRouteDirection path{stroke:#06111d;stroke-width:1.4px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.frontSurfaceJumpRoute{pointer-events:none}.surfaceJumpUnderlay{stroke:#020712!important;stroke-width:8px!important;vector-effect:non-scaling-stroke;opacity:.86;fill:none;stroke-linejoin:round;stroke-linecap:round}.frontRouteLine.surfaceJumpLine{stroke:#ff5f8d;stroke-width:3.5px;vector-effect:non-scaling-stroke;opacity:1;fill:none;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(255,95,141,.58))}.frontJumpDirection{pointer-events:none;filter:drop-shadow(0 0 5px rgba(255,95,141,.6))}.frontJumpDirection path{fill:#ff5f8d;stroke:#06111d;stroke-width:1.4px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.frontJumpEndpoint.destination{stroke:#ff5f8d}.surfaceJumpBadge.compact rect{fill:#081a28;stroke:#4bc6f4;stroke-width:4px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px rgba(75,198,244,.28))}.surfaceJumpBadge.compact text{fill:#dff7ff;font-size:34px;font-weight:1000;paint-order:stroke;stroke:#06111d;stroke-width:4px;letter-spacing:.025em}.frontCabinetLabels{pointer-events:none}.frontCabPort,.frontCabSeq{paint-order:stroke;stroke:#07101e;stroke-width:10;stroke-linejoin:round}.jumpSourceCabinet{stroke-dasharray:none}.jumpDestinationCabinet{filter:none}.surfaceJumpStrip{padding:9px 10px;gap:6px}.surfaceJumpStrip article{grid-template-columns:82px minmax(0,1fr) 24px minmax(0,1fr);padding:8px 10px;background:#081925}.surfaceJumpStrip b{font-size:10px;line-height:1.35}.surfaceJumpStrip span{font-size:9px}@media(max-width:760px){.frontSameSurfaceRoute .frontRouteHalo{stroke-width:6px}.frontSameSurfaceRoute .frontRouteLine{stroke-width:3px}.surfaceJumpUnderlay{stroke-width:7px!important}.frontRouteLine.surfaceJumpLine{stroke-width:3px}.surfaceJumpBadge.compact text{font-size:30px}}.frontJumpEndpoint{vector-effect:non-scaling-stroke;stroke-width:3px;filter:drop-shadow(0 0 5px rgba(255,255,255,.18))}.frontJumpEndpoint.source{fill:#ff5f8d;stroke:#07101e}.frontJumpEndpoint.destination{fill:#07101e;stroke:#62d9ff;stroke-width:4px}.frontJumpCabinetEdge{vector-effect:non-scaling-stroke;stroke-width:2px;pointer-events:none}.frontJumpCabinetEdge.source{fill:#ff5f8d;stroke:#07101e}.frontJumpCabinetEdge.destination{fill:#62d9ff;stroke:#07101e}.frontSurfaceJumpRoute .surfaceJumpLine{stroke-linecap:round;stroke-linejoin:round}.screenConnectionNova .novaMapCell.jumpOut{outline:none;box-shadow:inset -3px 0 0 #d74468}.screenConnectionNova .novaMapCell.jumpIn{box-shadow:inset 3px 0 0 #2e9ed7}.screenConnectionNova .novaMapCell.start.jumpIn{box-shadow:inset 0 0 0 3px #2ed184,inset 3px 0 0 #2e9ed7}.screenConnectionNova .novaMapCell.end.jumpOut{box-shadow:inset 0 0 0 3px #f15467,inset -3px 0 0 #d74468}.screenConnectionNova .novaMapCell .io{bottom:5px;letter-spacing:.04em;box-shadow:0 1px 2px rgba(0,0,0,.18)}.screenConnectionNova .novaMapCell .io.in{left:5px;background:#238bc6}.screenConnectionNova .novaMapCell .io.out{left:auto;right:5px;background:#c9365d}.screenConnectionNova .novaJumpOverlay{display:none!important}.novaHandoffPanel{margin-top:10px;border:1px solid #b5c6d2;border-radius:6px;background:#f6fafc;color:#243747;overflow:hidden}.novaHandoffHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:9px 10px;border-bottom:1px solid #c8d5de;background:#edf4f8}.novaHandoffHeader>div{display:flex;flex-direction:column;gap:2px}.novaHandoffHeader b{font-size:11px}.novaHandoffHeader span{font-size:9px;color:#5b7181}.novaHandoffHeader small{white-space:nowrap;padding:3px 7px;border-radius:999px;background:#dcebf4;color:#36566b;font-weight:800;font-size:8px}.novaHandoffList{display:grid;grid-gap:7px;gap:7px;padding:8px}.novaHandoffList article{display:grid;grid-template-columns:56px minmax(0,1fr) 120px minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;padding:7px;border:1px solid #d0dbe3;border-radius:5px;background:#fff}.novaHandoffId{display:flex;align-items:center;justify-content:center;gap:4px}.novaHandoffId span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#a82449;color:#fff;font-size:9px;font-weight:900}.novaHandoffId b{font-size:9px;color:#4e6170}.novaHandoffEndpoint{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-column-gap:7px;column-gap:7px;grid-row-gap:1px;row-gap:1px;min-width:0}.novaHandoffEndpoint small{grid-row:1/span 2;padding:3px 5px;border-radius:4px;color:#fff;font-size:7px;font-weight:1000;letter-spacing:.04em}.novaHandoffEndpoint.out small{background:#c9365d}.novaHandoffEndpoint.in small{background:#238bc6}.novaHandoffEndpoint strong{font-size:10px}.novaHandoffEndpoint span,.novaHandoffEndpoint strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.novaHandoffEndpoint span{font-size:8px;color:#607483}.novaHandoffArrow{display:flex;align-items:center;justify-content:center;gap:6px;color:#6c7d89}.novaHandoffArrow span{font-size:18px;color:#8e2444;font-weight:900}.novaHandoffArrow small{font-size:7px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.novaMapHelp b{color:#243747}@media(max-width:900px){.novaHandoffList article{grid-template-columns:46px minmax(0,1fr) 70px minmax(0,1fr)}.novaHandoffArrow small{display:none}}@media(max-width:650px){.novaHandoffList article{grid-template-columns:42px minmax(0,1fr)}.novaHandoffArrow{grid-column:2;justify-content:flex-start}.novaHandoffEndpoint.in{grid-column:2}.novaHandoffHeader{flex-direction:column}}.quickPlanPicker{display:grid;grid-template-columns:minmax(210px,.8fr) repeat(2,minmax(240px,1fr));grid-gap:10px;gap:10px;align-items:stretch}.quickPlanIntro,.quickPlanOption{border:1px solid #17334f;border-radius:12px;background:#081522;padding:11px 13px}.quickPlanIntro{display:flex;flex-direction:column;justify-content:center;gap:3px}.quickPlanIntro span{font-size:10px;letter-spacing:.12em;color:#58c5e8;font-weight:900}.quickPlanIntro b{font-size:13px;color:#dceaf4}.quickPlanOption{text-align:left;color:#dceaf4;display:grid;grid-template-columns:1fr auto;grid-gap:3px 10px;gap:3px 10px;cursor:pointer}.quickPlanOption>span{font-size:9px;letter-spacing:.1em;color:#7f9aad;font-weight:900}.quickPlanOption>b{grid-column:1/-1;font-size:14px}.quickPlanOption>small{color:#9bb0c0}.quickPlanOption>em{font-style:normal;color:#6fcfb0;font-size:11px;text-align:right}.quickPlanOption.active{border-color:#36a4d9;background:#102c43;box-shadow:inset 0 0 0 1px #36a4d9}.quickPlanOption.active>span{color:#65d7f7}.quickPlanOption:not(.active):hover{border-color:#28597a;background:#0b1d2c}@media(max-width:980px){.quickPlanPicker{grid-template-columns:1fr 1fr}.quickPlanIntro{grid-column:1/-1}}@media(max-width:650px){.quickPlanPicker{grid-template-columns:1fr}.quickPlanIntro{grid-column:auto}.quickPlanOption{grid-template-columns:1fr}.quickPlanOption>em{text-align:left}}.screenConnectionNova.novaRefined{border-radius:10px;overflow:hidden}.novaScreenHeader.refined{padding:11px 14px;background:#eef5fa}.novaScreenHeader.refined>div:first-child{display:flex;flex-direction:column;gap:2px}.novaScreenHeader.refined strong{font-size:15px}.novaScreenHeader.refined span{font-size:9px;color:#5a7182}.novaHeaderBadges{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.novaPlanBadge,.novaReadBadge{padding:5px 8px;border-radius:999px;font-size:8px!important;font-weight:900;letter-spacing:.04em}.novaPlanBadge{background:#d7efff;color:#0b5d92;border:1px solid #9dccea}.novaReadBadge{background:#e5edf3;color:#3d586b;border:1px solid #c4d2dc}.novaScreenBody.refined{grid-template-columns:188px minmax(0,1fr)}.novaLightRail.refined{padding:9px;gap:8px}.novaLightRail.refined .novaLightGroup{padding:9px}.sendingCardCompact{display:flex;align-items:center;justify-content:space-between;gap:10px}.sendingCardCompact span{font-size:9px;color:#60788b;font-weight:800}.sendingCardCompact b{display:grid;place-items:center;width:38px;height:30px;border-radius:5px;background:#1677d2;color:#fff;font-size:16px}.portFocusGroup>button{width:100%;margin-bottom:7px;font-size:9px;font-weight:900}.portFocusGroup .novaPortButtons button:disabled{opacity:.35;cursor:not-allowed}.portFocusGroup .novaPortButtons button.used:not(.selected){background:#fff;color:#26465d;border-color:#8fb3cc}.portFocusGroup .novaPortButtons button.selected{background:#1677d2;color:#fff}.novaReceiverSize{display:flex;align-items:baseline;gap:5px}.novaReceiverSize strong{font-size:18px;color:#1c3b51}.novaReceiverSize span{font-size:9px;color:#708594}.novaMiniLegend{display:flex;flex-direction:column;gap:6px}.novaMiniLegend>b{margin-bottom:2px}.novaMiniLegend>span{display:flex;align-items:center;gap:6px;font-size:8px;color:#526a7b}.legendDot{width:9px;height:9px;border-radius:50%;display:inline-block}.legendDot.start{background:#2ed184}.legendDot.end{background:#f15467}.legendDot.in{background:#238bc6}.legendDot.out{background:#c9365d}.legendArrow{font-style:normal;color:#158ce0;font-size:16px;line-height:10px}.novaMapStage.refined{padding:10px 11px 12px;background:#e7f0f6}.novaPlanStatus{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-radius:7px;border:1px solid #b8cad7;background:#f7fbfd;color:#243d50}.novaPlanStatus.simple{border-left:4px solid #2bb97d}.novaPlanStatus.linked{border-left:4px solid #d58a25}.novaPlanStatus>div:first-child{display:flex;flex-direction:column;gap:1px}.novaPlanStatus>div:first-child>span{font-size:7px;letter-spacing:.11em;color:#607a8c;font-weight:1000}.novaPlanStatus>div:first-child>b{font-size:12px}.novaPlanStatus>div:first-child>small{font-size:8px;color:#5f7484}.novaPlanMetrics{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.novaPlanMetrics span{display:flex;align-items:baseline;gap:3px;padding:5px 7px;border:1px solid #cbd7df;background:#fff;border-radius:5px;font-size:7px;color:#657b8a}.novaPlanMetrics b{font-size:12px;color:#1e4b69}.novaMapToolbar.refined{margin-top:8px;justify-content:space-between}.novaMapToolbar.refined>div{padding:3px 5px;border-right:1px solid #d1dce4}.novaMapToolbar.refined>div:last-child{border-right:0}.novaMapToolbar.refined b{font-size:10px;color:#244c68}.novaMapToolbar.refined span{font-size:8px}.novaPortOverview{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:7px;gap:7px;margin-top:8px}.novaPortRouteCard{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:8px;gap:8px;padding:8px 9px;border:1px solid #b9cad6;border-left:4px solid #2f86bd;border-radius:6px;background:#fff;color:#243747;text-align:left;cursor:pointer;min-width:0}.novaPortRouteCard.port-2{border-left-color:#7568c8}.novaPortRouteCard.port-3{border-left-color:#d49a2d}.novaPortRouteCard.port-4{border-left-color:#35a47d}.novaPortRouteCard.port-5{border-left-color:#c05b84}.novaPortRouteCard.port-6{border-left-color:#8f67b4}.novaPortRouteCard.focused{box-shadow:inset 0 0 0 2px #2a86c1;background:#f2f9fd}.novaPortRouteCard.muted{opacity:.42}.novaPortRouteCard .portTag{display:grid;place-items:center;min-width:34px;height:30px;border-radius:5px;background:#e3f1fa;color:#176b9f;font-weight:1000;font-size:11px}.novaPortRouteCard>div{display:flex;flex-direction:column;min-width:0}.novaPortRouteCard>div>b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.novaPortRouteCard>div>small{font-size:7px;color:#6d8291}.novaPortRouteCard .portPath{flex-direction:row;align-items:center;gap:4px;color:#617887}.novaPortRouteCard .portPath strong{font-size:9px}.novaPortRouteCard>em{font-style:normal;font-size:9px;font-weight:900;color:#345a72}.novaSurfaceSetup.refined article{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto}.novaSurfaceSetup.refined article small{grid-column:1/-1;font-size:7px;color:#5f7482}.novaSurfaceSetup.refined article strong{font-size:10px}.novaMergedMap.refined{box-shadow:0 1px 3px rgba(35,58,73,.08)}.novaMergedMap.refined .novaSurfaceBands>div{min-height:42px}.novaMergedMap.refined .novaColumnLine b,.novaMergedMap.refined .novaRowLabels b{font-size:8px;color:#496173}.novaMergedMap.refined .novaMapCell{min-height:88px;transition:opacity .15s ease,filter .15s ease,box-shadow .15s ease}.novaMergedMap.refined .novaMapCell.active{background:#fbd8de}.novaMergedMap.refined .novaMapCell.port-2{background:#e7e2ff}.novaMergedMap.refined .novaMapCell.port-3{background:#fff0c8}.novaMergedMap.refined .novaMapCell.port-4{background:#daf3e7}.novaMergedMap.refined .novaMapCell.port-5{background:#f7dce9}.novaMergedMap.refined .novaMapCell.port-6{background:#eadff4}.novaMergedMap.refined .novaMapCell.mutedByPort{opacity:.2;filter:grayscale(.45)}.novaMergedMap.refined .novaMapCell strong{font-size:16px}.novaReceiverLabel{font-size:8px!important;color:#405767}.novaCellPort{position:absolute;top:5px;left:5px;padding:2px 5px;border-radius:999px;background:#e1eef6;color:#176b9f;font-size:7px!important;font-weight:1000!important}.novaCellPort.port-2{background:#e3ddff;color:#5a4ca8}.novaCellPort.port-3{background:#ffebba;color:#8c6510}.novaCellPort.port-4{background:#d8f0e5;color:#267656}.novaCellPort.port-5{background:#f3d9e5;color:#944264}.novaCellPort.port-6{background:#e9dcf4;color:#6d4e8b}.novaDirection{right:4px!important;bottom:50%!important;transform:translateY(50%);font-size:17px!important}.novaMapCell .io,.novaMapCell em{z-index:2}.novaRouteReadout{margin-top:9px;border:1px solid #bccbd5;border-radius:6px;background:#f8fbfd;color:#263c4b;overflow:hidden}.novaRouteReadoutHeader{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;border-bottom:1px solid #d0dbe2;background:#eef4f8}.novaRouteReadoutHeader b{font-size:10px}.novaRouteReadoutHeader span{font-size:8px;color:#627787}.novaRouteReadoutList{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:7px;gap:7px;padding:8px}.novaRouteReadoutList article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:5px 8px;gap:5px 8px;padding:7px 8px;border:1px solid #d0dce4;border-left:4px solid #2f86bd;border-radius:5px;background:#fff;min-width:0}.novaRouteReadoutList article.port-2{border-left-color:#7568c8}.novaRouteReadoutList article.port-3{border-left-color:#d49a2d}.novaRouteReadoutList article.port-4{border-left-color:#35a47d}.novaRouteReadoutList article.port-5{border-left-color:#c05b84}.novaRouteReadoutList article.port-6{border-left-color:#8f67b4}.novaRouteReadoutList article.muted{opacity:.38}.novaRouteReadoutList article>b{font-size:11px}.novaRouteReadoutList article>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800}.novaRouteReadoutList article>div{display:flex;align-items:center;gap:4px;font-size:8px}.novaRouteReadoutList article>div i{font-style:normal;color:#238bc6}.novaRouteReadoutList article>small{grid-column:2/-1;font-size:7px;color:#6b7e8c}.novaNoHandoffs{display:flex;align-items:center;gap:10px;margin-top:9px;padding:8px 10px;border:1px solid #a8d4c1;border-radius:6px;background:#eefaf5;color:#275c49}.novaNoHandoffs b{font-size:10px}.novaNoHandoffs span{font-size:8px;color:#55766a}.novaHandoffPanel.refined{margin-top:9px}.novaMapHelp.refined{font-size:8px;margin-top:9px}.novaMapHelp.refined b{color:#213f54}@media(max-width:1120px){.novaScreenBody.refined{grid-template-columns:1fr}.novaLightRail.refined{grid-template-columns:repeat(4,minmax(130px,1fr));display:grid;border-right:0;border-bottom:1px solid #b9c9d5}.novaMiniLegend{grid-column:auto}.novaPortOverview,.novaRouteReadoutList{grid-template-columns:1fr 1fr}}@media(max-width:760px){.novaLightRail.refined{grid-template-columns:1fr 1fr}.novaPlanStatus{align-items:flex-start;flex-direction:column}.novaPlanMetrics{justify-content:flex-start}.novaPortOverview,.novaRouteReadoutList{grid-template-columns:1fr}.novaPortRouteCard{grid-template-columns:auto minmax(0,1fr) auto}.novaPortRouteCard>em{grid-column:2}.novaScreenHeader.refined{align-items:flex-start;flex-direction:column}.novaHeaderBadges{justify-content:flex-start}}.editor3dPage{display:flex;flex-direction:column;gap:14px;min-width:0}.editor3dHeader{display:flex;align-items:center;justify-content:space-between;gap:18px}.editor3dHeader h1{margin:.18rem 0;font-size:clamp(1.55rem,2.4vw,2.25rem)}.editor3dHeader p{margin:0;color:#8fa6b9;max-width:860px}.editor3dHeaderActions{display:flex;gap:8px;flex-wrap:wrap}.editor3dHeaderActions button{white-space:nowrap}.editor3dToolbar{gap:14px;padding:9px 11px;border:1px solid #1a3853;border-radius:12px;background:#0a1928}.editor3dPresetGroup,.editor3dToolbar{display:flex;align-items:center;flex-wrap:wrap}.editor3dPresetGroup{gap:6px}.editor3dCameraReadout>span,.editor3dPresetGroup>span{font-size:8px;letter-spacing:.12em;font-weight:1000;color:#718ca3}.editor3dPresetGroup button,.editor3dPresetGroup select{min-height:30px;padding:5px 9px;border:1px solid #264966;border-radius:7px;background:#0d2235;color:#c3d6e5;font-size:10px;font-weight:800}.editor3dPresetGroup button.active{background:#153d59;border-color:#3b8db9;color:#fff}.editor3dCameraReadout{margin-left:auto;display:flex;align-items:center;gap:7px}.editor3dCameraReadout b{font-size:10px;color:#c5d9e8}.editor3dLayout{display:grid;grid-template-columns:210px minmax(0,1fr) 278px;grid-gap:10px;gap:10px;min-height:650px}.editor3dInspector,.editor3dObjects{min-width:0;border:1px solid #173550;border-radius:12px;background:#091827;overflow:hidden}.editor3dPanelTitle{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid #173550;background:#0d2032}.editor3dPanelTitle span{font-size:8px;letter-spacing:.12em;font-weight:1000;color:#7892a6}.editor3dPanelTitle b{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#173754;color:#dceaf3;font-size:10px}.editor3dObjectList{display:flex;flex-direction:column;gap:6px;padding:8px}.editor3dObjectList button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px;border:1px solid #17334d;border-radius:8px;background:#0b1c2c;color:#d5e5f0;text-align:left}.editor3dObjectList button:hover{border-color:#2c658c}.editor3dObjectList button.active{background:#103451;border-color:#3a91bf;box-shadow:inset 3px 0 0 #49b8e9}.editor3dObjectList strong{font-size:11px}.editor3dObjectList small{font-size:8px;color:#7992a6}.editor3dObjectList em{font-style:normal;font-size:8px;color:#70d8bd;font-weight:900}.editor3dHelp{display:flex;flex-direction:column;gap:4px;margin:7px;padding:9px;border-top:1px solid #17334d;color:#718ba0}.editor3dHelp b{font-size:9px;color:#bfd1df}.editor3dHelp span{font-size:8px}.editor3dViewport{position:relative;min-width:0;min-height:650px;overflow:hidden;border:1px solid #1b405f;border-radius:12px;background:radial-gradient(circle at 50% 45%,#15324a 0,#0b1b2b 42%,#06111c 100%);perspective:1150px;cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.editor3dViewport:active{cursor:-webkit-grabbing;cursor:grabbing}.editor3dHorizon{position:absolute;inset:0;background:linear-gradient(180deg,rgba(35,88,121,.1),rgba(4,13,22,.04) 48%,rgba(2,8,14,.24));pointer-events:none}.editor3dWorld{position:absolute;left:50%;top:48%;width:1px;height:1px;transform-style:preserve-3d;transform-origin:0 0;transition:transform .16s ease-out}.editor3dViewport:active .editor3dWorld{transition:none}.editor3dFloor{position:absolute;width:1200px;height:1200px;transform-origin:0 0;transform-style:preserve-3d;border:1px solid rgba(82,145,182,.22);background-image:linear-gradient(rgba(75,135,170,.13) 1px,transparent 0),linear-gradient(90deg,rgba(75,135,170,.13) 1px,transparent 0),linear-gradient(rgba(75,135,170,.05) 1px,transparent 0),linear-gradient(90deg,rgba(75,135,170,.05) 1px,transparent 0);background-size:55px 55px,55px 55px,11px 11px,11px 11px;box-shadow:inset 0 0 80px rgba(28,103,145,.08)}.editor3dFloor span{position:absolute;left:12px;top:12px;font-size:8px;letter-spacing:.12em;font-weight:1000;color:rgba(138,181,207,.55)}.editor3dAxis{position:absolute;transform-origin:left center;pointer-events:none}.editor3dAxis b{position:absolute;font-size:9px;color:#d7e8f2}.editor3dAxis.axisX{width:220px;height:1px;background:rgba(229,95,95,.75)}.editor3dAxis.axisX b{right:-14px;top:-7px}.editor3dAxis.axisY{width:1px;height:220px;background:rgba(81,197,129,.72);transform:translateY(-110px)}.editor3dAxis.axisY b{left:6px;top:-4px}.editor3dAxis.axisZ{width:220px;height:1px;background:rgba(83,151,235,.8);transform:rotateY(90deg)}.editor3dAxis.axisZ b{right:-14px;top:-7px}.led3dObject{position:absolute;left:0;top:0;padding:0;margin:0;border:0;background:transparent;transform-origin:0 0;transform-style:preserve-3d;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit}.led3dObject.hiddenSurface{display:none}.led3dFace{position:absolute;display:block;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-style:preserve-3d;box-sizing:border-box}.led3dFront{transform:translateZ(var(--half-depth));border:1px solid rgba(110,190,232,.9);background-color:#102f45;background-image:linear-gradient(rgba(112,190,230,.28) 1px,transparent 0),linear-gradient(90deg,rgba(112,190,230,.28) 1px,transparent 0),linear-gradient(135deg,rgba(45,130,175,.12),rgba(8,31,48,.35));background-size:100% var(--module-y),var(--module-x) 100%,100% 100%;box-shadow:inset 0 0 18px rgba(58,165,219,.12),0 7px 22px rgba(0,0,0,.24)}.led3dBack{transform:translateZ(calc(var(--half-depth) * -1)) rotateY(180deg);background:#07131e;border:1px solid #274961}.led3dSide{inset:auto;background:#0b2132;border:1px solid #244b66}.led3dLeft{left:0;transform-origin:left center;transform:rotateY(90deg) translateX(calc(var(--half-depth) * -1))}.led3dLeft,.led3dRight{top:0;width:var(--surface-depth);height:100%}.led3dRight{right:0;transform-origin:right center;transform:rotateY(-90deg) translateX(var(--half-depth))}.led3dTop{top:0;transform-origin:center top;transform:rotateX(-90deg) translateY(calc(var(--half-depth) * -1))}.led3dBottom,.led3dTop{left:0;width:100%;height:var(--surface-depth)}.led3dBottom{bottom:0;transform-origin:center bottom;transform:rotateX(90deg) translateY(var(--half-depth))}.led3dSurfaceLabel{position:absolute;left:50%;top:50%;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:130px;max-width:90%;padding:6px 8px;border:1px solid rgba(112,184,221,.28);border-radius:7px;background:rgba(5,19,30,.76);transform:translate(-50%,-50%) translateZ(1px);box-shadow:0 3px 12px rgba(0,0,0,.18)}.led3dSurfaceLabel b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#e7f4fb}.led3dSurfaceLabel small{font-size:7px;color:#94afc1;white-space:nowrap}.led3dSurfaceLabel em{font-style:normal;font-size:8px;font-weight:1000;color:#77ddbe}.led3dObject.selected .led3dFront{border-color:#64d4ff;box-shadow:0 0 0 2px rgba(78,195,240,.72),0 0 36px rgba(55,181,229,.26),inset 0 0 22px rgba(64,181,229,.18)}.led3dSelectionRing{position:absolute;inset:-7px;border:1px dashed rgba(97,211,251,.9);transform:translateZ(calc(var(--half-depth) + 3px));pointer-events:none}.editor3dViewHint,.editor3dViewportBadge{position:absolute;z-index:4;padding:5px 8px;border:1px solid rgba(95,146,178,.28);border-radius:999px;background:rgba(6,20,31,.7);font-size:8px;font-weight:900;color:#8eb3ca;pointer-events:none}.editor3dViewportBadge{left:10px;bottom:10px}.editor3dViewHint{right:10px;bottom:10px}.editor3dInspector{padding-bottom:10px}.editor3dInspectorHead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px;border-bottom:1px solid #173550;background:#0d2032}.editor3dInspectorHead>div{display:flex;flex-direction:column;gap:2px;min-width:0}.editor3dInspectorHead span,.editor3dSectionTitle span{font-size:7px;letter-spacing:.11em;font-weight:1000;color:#738da2}.editor3dInspectorHead b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor3dInspectorHead em{font-style:normal;padding:4px 6px;border-radius:999px;background:#133c50;color:#77d9c0;font-size:8px;font-weight:1000}.led3dNameField{display:flex;flex-direction:column;gap:4px;padding:10px 10px 2px;color:#718ba0;font-size:8px;font-weight:900}.led3dNameField input{width:100%;box-sizing:border-box;padding:7px 8px;border:1px solid #24445d;border-radius:6px;background:#081827;color:#dcebf4}.editor3dInspectorSection{margin:10px;padding:9px;border:1px solid #173550;border-radius:9px;background:#0a1b2a}.editor3dSectionTitle{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.editor3dSectionTitle b{font-size:9px;letter-spacing:.08em}.led3dFieldGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:5px;gap:5px}.led3dNumberField{display:flex;flex-direction:column;gap:3px;min-width:0}.led3dNumberField>span{font-size:8px;color:#7d97aa;font-weight:900}.led3dNumberField>div{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid #23445d;border-radius:6px;overflow:hidden;background:#071725}.led3dNumberField input{min-width:0;width:100%;box-sizing:border-box;padding:7px 4px 7px 7px;border:0;outline:0;background:transparent;color:#e1eef6;font-size:10px}.led3dNumberField em{display:flex;align-items:center;padding:0 5px;font-style:normal;font-size:7px;color:#718ba0;border-left:1px solid #1f3c52}.editor3dNudges{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:4px;gap:4px;margin-top:7px}.editor3dNudges button{padding:5px 2px;border:1px solid #23455e;border-radius:5px;background:#0e2638;color:#a9c0d0;font-size:7px;font-weight:900}.rotationNudges{grid-template-columns:repeat(3,1fr)}.rotationNudges button:nth-child(2n){margin-right:3px}.editor3dQuickActions{display:grid;grid-template-columns:1fr;grid-gap:5px;gap:5px;margin:10px}.editor3dQuickActions button{padding:7px 8px;border:1px solid #24475f;border-radius:6px;background:#0d2233;color:#b9cede;font-size:9px;font-weight:800}.editor3dQuickActions button:last-child{border-color:#2d6d88;background:#10344b;color:#ddf4ff}.editor3dTechnicalCard{display:flex;flex-direction:column;gap:3px;margin:10px;padding:9px;border:1px solid #1d3e56;border-radius:8px;background:#081725}.editor3dTechnicalCard span{font-size:7px;letter-spacing:.12em;color:#69859a;font-weight:1000}.editor3dTechnicalCard b{font-size:10px}.editor3dTechnicalCard small{font-size:8px;color:#7790a2;line-height:1.4}.editor3dNoSelection{display:flex;flex-direction:column;gap:5px;padding:22px 14px;color:#8198aa}.editor3dNoSelection b{color:#d3e2ec}.editor3dNoSelection span{font-size:9px}.editor3dStatus{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #193850;border-radius:9px;background:#091a28;color:#7893a7}.editor3dStatus span{padding:4px 7px;border-radius:999px;background:#143248;font-size:8px;font-weight:1000;color:#9ec2d8}.editor3dStatus.dirty span{background:#4a3515;color:#f0cd80}.editor3dStatus b{font-size:9px;font-weight:700;color:#8ba3b5}@media(max-width:1180px){.editor3dLayout{grid-template-columns:180px minmax(0,1fr) 250px}.editor3dLayout,.editor3dViewport{min-height:590px}.led3dFieldGrid{grid-template-columns:1fr}.editor3dNudges{grid-template-columns:repeat(3,1fr)}}@media(max-width:920px){.editor3dHeader{align-items:flex-start;flex-direction:column}.editor3dHeaderActions{width:100%}.editor3dLayout{grid-template-columns:1fr}.editor3dObjects{order:2}.editor3dViewport{order:1;min-height:520px}.editor3dInspector{order:3}.editor3dObjectList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.editor3dHelp{display:none}.led3dFieldGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.editor3dNudges{grid-template-columns:repeat(6,1fr)}.editor3dCameraReadout{margin-left:0;width:100%}}@media(max-width:620px){.editor3dToolbar{align-items:flex-start;flex-direction:column}.editor3dObjectList{grid-template-columns:1fr}.editor3dViewport{min-height:430px}.led3dFieldGrid{grid-template-columns:1fr}.editor3dNudges{grid-template-columns:repeat(3,1fr)}.editor3dHeaderActions button{flex:1 1}.editor3dStatus{align-items:flex-start;flex-direction:column}.stageNav.stageNavSimple{grid-template-columns:repeat(2,minmax(0,1fr))}}.editor3dExampleGroup{padding-left:12px;border-left:1px solid #1c3b54}.editor3dExampleGroup button{border-color:#315a73;background:#102b3e}.editor3dExampleGroup button:hover{border-color:#4b87a9;background:#14364d}.editor3dExampleGroup .undoExample{border-color:#795d2d;background:#342813;color:#f2cf88}.editor3dExamplesNote{display:flex;flex-direction:column;gap:5px;margin:8px 9px;padding:9px;border:1px solid #21445d;border-radius:8px;background:linear-gradient(145deg,#0d2537,#091a28)}.editor3dExamplesNote b{font-size:9px;color:#d9edf8}.editor3dExamplesNote span{font-size:7px;line-height:1.45;color:#7e9aad}.editor3dExamplesNote span:last-child{color:#9cb5c6}.editor3dObjectList button strong{white-space:normal;line-height:1.15}@media(max-width:920px){.editor3dExampleGroup{padding-left:0;border-left:0;border-top:1px solid #1c3b54;padding-top:8px;width:100%}}.editor3dSceneCard{margin:14px 0;padding:12px;border:1px solid rgba(104,174,255,.22);border-radius:14px;background:linear-gradient(180deg,rgba(10,31,55,.82),rgba(6,18,34,.9));display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.editor3dSceneCard>div{padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.035);display:flex;flex-direction:column;gap:3px}.editor3dSceneCard>div.wide{grid-column:1/-1}.editor3dSceneCard span{font-size:10px;letter-spacing:.12em;opacity:.6}.editor3dSceneCard b{font-size:13px}.editor3dSceneCard small{grid-column:1/-1;line-height:1.45;opacity:.68}.editor3dOrientationPresets{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.editor3dOrientationPresets>span{display:block;margin-bottom:8px;font-size:10px;letter-spacing:.12em;opacity:.58}.editor3dOrientationPresets>div{display:grid;grid-gap:6px;gap:6px}.editor3dOrientationPresets button{min-height:34px;padding:5px 7px;font-size:11px}.controllerPicker{display:flex;align-items:center;gap:7px;padding:5px;border:1px solid rgba(89,169,255,.24);border-radius:12px;background:rgba(3,17,31,.66)}.controllerPicker>span{font-size:10px;font-weight:800;letter-spacing:.12em;opacity:.58;padding:0 6px}.controllerPicker button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:116px;padding:7px 10px;border-radius:9px}.controllerPicker button b{font-size:12px}.controllerPicker button small{font-size:9px;opacity:.62}.controllerPicker button.active{border-color:rgba(54,189,255,.78);background:rgba(22,116,178,.2);box-shadow:inset 0 0 0 1px rgba(54,189,255,.16)}@media(max-width:980px){.controllerPicker{width:100%;flex-wrap:wrap}.controllerPicker>span{width:100%}.controllerPicker button{flex:1 1}.editor3dOrientationPresets>div{grid-template-columns:repeat(2,minmax(0,1fr))}}:where(.port-1){--port-color:#71c2e8}:where(.port-2){--port-color:#a9a1ff}:where(.port-3){--port-color:#e2c15e}:where(.port-4){--port-color:#71d3ab}:where(.port-5){--port-color:#e889a4}:where(.port-6){--port-color:#c79be8}:where(.port-7){--port-color:#70d9e8}:where(.port-8){--port-color:#f09b68}:where(.port-9){--port-color:#8fd267}:where(.port-10){--port-color:#f27fc2}.dataArrow.port-7{stroke:#70d9e8}.dataArrow.port-8{stroke:#f09b68}.dataArrow.port-9{stroke:#8fd267}.dataArrow.port-10{stroke:#f27fc2}.dataArrowHead.port-7{fill:#70d9e8}.dataArrowHead.port-8{fill:#f09b68}.dataArrowHead.port-9{fill:#8fd267}.dataArrowHead.port-10{fill:#f27fc2}.dataCabinet.port-7{fill:#18414a}.dataCabinet.port-8{fill:#4a3022}.dataCabinet.port-9{fill:#294422}.dataCabinet.port-10{fill:#4b2440}.frontRouteLine.port-7{stroke:#70d9e8}.frontRouteLine.port-8{stroke:#f09b68}.frontRouteLine.port-9{stroke:#8fd267}.frontRouteLine.port-10{stroke:#f27fc2}.frontRouteDirection.port-7 path{fill:#70d9e8}.frontRouteDirection.port-8 path{fill:#f09b68}.frontRouteDirection.port-9 path{fill:#8fd267}.frontRouteDirection.port-10 path{fill:#f27fc2}.frontCabinet.port-7{fill:#183b42}.frontCabinet.port-8{fill:#432d22}.frontCabinet.port-9{fill:#263c22}.frontCabinet.port-10{fill:#42233a}.logicalCell.port-7{background:#21464d}.logicalCell.port-8{background:#4a3428}.logicalCell.port-9{background:#2e4828}.logicalCell.port-10{background:#4a2940}.novaMapCell.port-7,.novaMergedMap.refined .novaMapCell.port-7{background:#d8f4f7}.novaMapCell.port-8,.novaMergedMap.refined .novaMapCell.port-8{background:#f8e5d9}.novaMapCell.port-9,.novaMergedMap.refined .novaMapCell.port-9{background:#e4f3da}.novaMapCell.port-10,.novaMergedMap.refined .novaMapCell.port-10{background:#f7dff0}.novaCellPort.port-7{background:#d4f0f4;color:#26717c}.novaCellPort.port-8{background:#f5dfd1;color:#92532f}.novaCellPort.port-9{background:#e0f0d6;color:#4e762e}.novaCellPort.port-10{background:#f2d9e9;color:#934873}.novaPortRouteCard.port-7,.novaRouteReadoutList article.port-7{border-left-color:#4db5c4}.novaPortRouteCard.port-8,.novaRouteReadoutList article.port-8{border-left-color:#d97b45}.novaPortRouteCard.port-9,.novaRouteReadoutList article.port-9{border-left-color:#72a94e}.novaPortRouteCard.port-10,.novaRouteReadoutList article.port-10{border-left-color:#ce609c}.frontRouteLine.surfaceJumpLine[class*=port-]{stroke:var(--port-color);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--port-color) 48%,transparent))}.frontJumpDirection[class*=port-] path{fill:var(--port-color)}.frontJumpEndpoint.source[class*=port-]{fill:var(--port-color);stroke:#07101e}.frontJumpEndpoint.destination[class*=port-]{fill:#07101e;stroke:var(--port-color);stroke-width:4px}.frontJumpCabinetEdge[class*=port-]{fill:var(--port-color);stroke:#07101e}.surfaceJumpBadge.compact[class*=port-] rect{stroke:var(--port-color)}.surfaceJumpBadge.compact[class*=port-] text{fill:var(--port-color)}.quickPortAssign{display:grid;grid-template-columns:minmax(230px,1fr) auto auto auto auto;grid-gap:8px;gap:8px;align-items:center;padding:9px 11px;border-top:1px solid #17334f;border-bottom:1px solid #17334f;background:#091827;color:#7893a7}.quickPortAssign.active{background:#102338;box-shadow:inset 3px 0 0 #4bbde8}.quickPortAssign>div{display:flex;flex-direction:column;gap:2px}.quickPortAssign b{font-size:9px;letter-spacing:.09em;color:#d7e7f1}.quickPortAssign span{font-size:8px}.quickPortAssign strong{font-size:10px;color:#d9edf8}.quickPortAssign button,.quickPortAssign select{min-height:30px;border:1px solid #28506b;border-radius:6px;background:#0d2639;color:#d4e7f3;padding:5px 8px;font-size:9px;font-weight:800}.quickPortAssign button:disabled{opacity:.35}.dataCabinetGroup{cursor:pointer}.dataCabinetGroup:hover .dataCabinet{stroke:#7edbff;stroke-width:14}.dataCabinetGroup.quickSelected .dataCabinet{stroke:#7dffcb;stroke-width:22;filter:drop-shadow(0 0 18px rgba(72,240,181,.4))}.editor3dCableControls{padding-left:12px;border-left:1px solid #1c3b54}.editor3dCableControls .cableOn{box-shadow:inset 0 0 0 1px #4cc8ed,0 0 14px rgba(76,200,237,.12)}.led3dCableOverlay{position:absolute;left:0;top:0;width:1px;height:1px;transform-style:preserve-3d;pointer-events:none;z-index:20}.led3dCableSegment{position:absolute;left:0;top:0;height:3px;border-radius:999px;background:var(--port-color);transform-origin:0 50%;box-shadow:0 0 8px var(--port-color),0 0 2px #fff;opacity:.96}.led3dCableSegment.surfaceJump{height:5px;box-shadow:0 0 14px var(--port-color),0 0 4px #fff}.led3dCableStop{position:absolute;left:0;top:0;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid #06111c;border-radius:50%;background:var(--port-color);box-shadow:0 0 10px var(--port-color);transform-style:preserve-3d}.led3dCableStop.jumpEndpoint{width:14px;height:14px;margin:-7px 0 0 -7px;box-shadow:0 0 16px var(--port-color),0 0 0 3px rgba(255,255,255,.14)}.led3dCableStop b{left:10px;top:-10px;padding:3px 5px;border:1px solid color-mix(in srgb,var(--port-color) 55%,#17334f);border-radius:5px;background:rgba(4,15,25,.92);color:#fff;letter-spacing:.04em}.led3dCableStop b,.led3dJumpLabel{position:absolute;white-space:nowrap;font-size:7px}.led3dJumpLabel{left:0;top:0;padding:4px 6px;border:1px solid var(--port-color);border-radius:6px;background:rgba(4,15,25,.94);color:var(--port-color);font-weight:1000;box-shadow:0 0 10px rgba(0,0,0,.35)}.led3dCableOverlay.simple .led3dCableStop:not(.jumpEndpoint) b{display:none}.led3dCableOverlay.technical .led3dCableSegment{height:4px}@media(max-width:980px){.quickPortAssign{grid-template-columns:1fr auto auto}.quickPortAssign>div{grid-column:1/-1}.editor3dCableControls{padding-left:0;border-left:0;border-top:1px solid #1c3b54;padding-top:8px;width:100%}}.cableQuickEditBar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px solid #17334f;border-radius:11px;background:#081522;margin-bottom:8px}.cableQuickEditBar.active{border-color:#2e6c9c;background:#0b1b2b}.cableQuickEditBar button,.cableQuickEditBar select{border:1px solid #26455f;background:#0d2134;color:#e8f4fb;border-radius:8px;padding:7px 9px;font-size:11px}.cableQuickEditBar button.active{background:#153d59;border-color:#3b82ad}.cableQuickEditBar button:disabled{opacity:.35}.cableQuickEditBar span{color:#8fa9bc;font-size:11px;flex:1 1;min-width:240px}.cableQuickEditBar span b{color:#fff}.frontCabinet.quickCabinetSelected{stroke:#ffe16b!important;stroke-width:22!important;filter:drop-shadow(0 0 8px rgba(255,225,107,.7))}.novaMapCell.quickCabinetSelected{outline:4px solid #d9a600!important;outline-offset:-4px;box-shadow:inset 0 0 0 3px #fff0a6!important;cursor:pointer}.novaMapCell[role=button]{cursor:pointer}.novaMapCell[role=button]:hover{filter:brightness(.97)}.novaLogicalDiagnostic{display:flex;align-items:center;gap:10px;padding:9px 11px;border-bottom:1px solid #d0b55c;background:#fff7cf;color:#56450c;font-size:11px}.novaLogicalDiagnostic b{white-space:nowrap}.novaLogicalDiagnostic.error{background:#ffe0e4;border-color:#d97a88;color:#702430}.novaMapCell.logicalRecovered{background-image:repeating-linear-gradient(135deg,rgba(255,184,0,.1) 0 8px,transparent 8px 16px)}.novaMapCell.logicalOverflow{outline:3px solid #d64d62;outline-offset:-3px}@media(max-width:760px){.cableQuickEditBar{align-items:stretch}.cableQuickEditBar span{min-width:100%;order:3}.novaLogicalDiagnostic{align-items:flex-start;flex-direction:column}}.novaMapToolbar .integrityOk b{color:#1d7b58}.novaMapToolbar .integrityBad b{color:#b52f45}.stageNav.stageNav3dFirst{grid-template-columns:repeat(3,minmax(0,1fr))}.stageContextSimple{gap:8px}.stageContextSimple span{min-width:auto}.editor3dFirstPage{gap:10px}.compact3dHeader{padding:0 2px}.compact3dHeader h1{font-size:clamp(1.35rem,2vw,1.9rem);margin:.1rem 0}.nova3dToolbar{position:relative;z-index:30;padding:7px 9px;gap:9px}.nova3dToolbar .mainTools{flex:1 1}.nova3dToolbar .editor3dPresetGroup>span{margin-right:2px}.compactViews select{min-width:118px}.integrityPill{margin-left:auto;display:flex;flex-direction:column;gap:1px;padding:5px 9px;border:1px solid #28516e;border-radius:8px;background:#0a1c2b;white-space:nowrap}.integrityPill span{font-size:7px;letter-spacing:.11em;color:#7894a7;font-weight:1000}.integrityPill b{font-size:9px;color:#d7e7f0}.integrityPill.ok{border-color:#21654f}.integrityPill.ok b{color:#7fe0bd}.integrityPill.warn{border-color:#765a25}.integrityPill.warn b{color:#f0c56e}.editor3dFocusLayout{position:relative;display:block;min-height:720px}.editor3dFocusLayout .focusViewport{min-height:720px;width:100%}.floatingInspector,.floatingObjects{position:absolute;z-index:35;top:10px;bottom:10px;box-shadow:0 18px 46px rgba(0,0,0,.36);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .18s ease,opacity .18s ease}.floatingObjects{left:10px;width:230px;transform:translateX(calc(-100% - 22px));opacity:0;pointer-events:none}.floatingObjects.open{transform:translateX(0);opacity:1;pointer-events:auto}.floatingInspector{right:10px;width:290px;transform:translateX(calc(100% + 22px));opacity:0;pointer-events:none;overflow:auto}.floatingInspector.open{transform:translateX(0);opacity:1;pointer-events:auto}.editor3dPanelTitle button,.inspectorClose{border:0;background:transparent;color:#8fa9ba;font-size:18px;cursor:pointer}.inspectorClose{position:absolute;right:7px;top:5px;z-index:5}.compactSceneCard{margin:8px!important;padding:8px!important}.compactSceneCard>div{padding:6px!important}.focusViewport.tool-move{cursor:move}.focusViewport.tool-select{cursor:-webkit-grab;cursor:grab}.led3dObject.moveTool,.led3dObject.moveTool .led3dCabinetHit{cursor:move}.led3dCabinetHit{position:absolute;z-index:5;padding:0;border:1px solid rgba(112,190,230,.32);background:rgba(7,25,39,.05);color:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:flex-start;justify-content:flex-end;overflow:hidden}.led3dCabinetHit:hover{border-color:#79d8ff;background:rgba(73,185,231,.16)}.led3dCabinetHit.selected{border:2px solid #fff;background:rgba(91,203,246,.27);box-shadow:inset 0 0 0 2px rgba(67,185,229,.65),0 0 16px rgba(75,202,244,.42)}.led3dCabinetHit.unassigned{border-style:dashed;border-color:rgba(244,182,79,.5)}.led3dCabinetHit span{margin:2px;padding:1px 3px;border-radius:4px;background:var(--port-color,#704f1f);font-size:6px;font-weight:1000;pointer-events:none}.led3dSurfaceLabel{z-index:10;pointer-events:none}.led3dFront{overflow:visible}.led3dSelectionRing{z-index:12}.cabinetQuickInspector{display:flex;flex-direction:column;gap:7px;margin:10px;padding:10px;border:1px solid #20455f;border-radius:9px;background:#091a29}.cabinetQuickInspector p{margin:0 0 3px;color:#7f98aa;font-size:9px;line-height:1.45}.adjacentGrid button,.cabinetQuickInspector button,.cabinetQuickInspector select,.surfaceBuilderStrip button{min-height:32px;border:1px solid #274b64;border-radius:7px;background:#0e2638;color:#cfe0ea;font-size:9px;font-weight:800}.cabinetQuickInspector .primaryBtn{background:#176f98;color:#fff}.cabinetQuickInspector .dangerGhost{border-color:#6d3942;color:#f0a9b2}.portPaintRow{display:grid;grid-template-columns:78px 1fr;grid-gap:6px;gap:6px}.surfaceBuilderStrip{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px;padding:10px 10px 0}.adjacentGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px;gap:5px}.editor3dOrientationPresets>div{grid-template-columns:repeat(3,minmax(0,1fr))}.led3dContextMenu{position:fixed;z-index:9999;width:220px;padding:9px;border:1px solid #315d79;border-radius:10px;background:#071725;box-shadow:0 18px 50px rgba(0,0,0,.55);display:flex;flex-direction:column;gap:6px}.led3dContextMenu>b{font-size:10px;color:#e8f5fb}.led3dContextMenu>span{font-size:8px;color:#7993a5}.led3dContextMenu button{min-height:30px;border:1px solid #27475e;border-radius:6px;background:#0d2233;color:#cbdde8;font-size:9px;font-weight:850}.led3dContextMenu .dangerGhost{border-color:#6a3740;color:#f0a0aa}.contextPorts{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:4px;gap:4px}.contextPorts button{padding:3px;min-width:0;color:#fff;background:color-mix(in srgb,var(--port-color) 45%,#081725);border-color:var(--port-color)}.openInspectorButton{position:fixed;z-index:50;right:18px;bottom:60px;padding:9px 12px;border:1px solid #32769d;border-radius:999px;background:#10344b;color:#e6f5fc;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.3)}.editor3dStatus.error{border-color:#7e3b45}.editor3dStatus.error span{background:#57232d;color:#ffc0c7}.port-1{--port-color:#33b5e5}.port-2{--port-color:#a06cff}.port-3{--port-color:#35cf82}.port-4{--port-color:#ff9e45}.port-5{--port-color:#ed5a8c}.port-6{--port-color:#e6d34d}.port-7{--port-color:#49d7cb}.port-8{--port-color:#c48bf0}.port-9{--port-color:#ff6f61}.port-10{--port-color:#84b6ff}@media(max-width:980px){.editor3dFocusLayout,.editor3dFocusLayout .focusViewport{min-height:620px}.floatingInspector{width:min(310px,calc(100vw - 36px))}.floatingObjects{width:min(250px,calc(100vw - 36px))}.integrityPill{order:10;margin-left:0}.nova3dToolbar .mainTools{width:100%}}@media(max-width:620px){.stageNav.stageNav3dFirst{grid-template-columns:repeat(3,minmax(0,1fr))}.editor3dFocusLayout,.editor3dFocusLayout .focusViewport{min-height:520px}.nova3dToolbar{align-items:stretch}.compactViews select,.nova3dToolbar .editor3dPresetGroup{width:100%}.editor3dHeaderActions{display:grid;grid-template-columns:repeat(3,1fr)}.editor3dOrientationPresets>div{grid-template-columns:repeat(2,minmax(0,1fr))}}.advancedTechnicalIntro{display:flex;gap:8px;align-items:baseline;margin:10px 0;padding:9px 10px;border:1px solid #23465f;border-radius:9px;background:#091b2a}.advancedTechnicalIntro b{font-size:10px;color:#dceaf2}.advancedTechnicalIntro span{font-size:9px;color:#829bac}.advancedDrawer .quickPortAssign,.advancedDrawer .strategyRow{display:none}.cableQuickEditBar{position:-webkit-sticky;position:sticky;top:0;z-index:12}.cableQuickEditBar .dangerGhost{border-color:#6a3a43;color:#ef9ca8}.portPaintTool.active{border-color:var(--port-color,#3b8db9)!important;box-shadow:inset 0 0 0 1px #56c9ec}.paintPortSelect{min-width:58px!important}.focusViewport.tool-paint .led3dCabinetHit{cursor:crosshair}.focusViewport.tool-paint .led3dCabinetHit:hover{box-shadow:0 0 0 2px var(--port-color,#5bc6ed) inset,0 0 18px rgba(84,198,237,.35)}.surfacePicker{position:absolute;z-index:80;left:240px;top:48px;width:282px;padding:10px;border:1px solid #2d5e7d;border-radius:12px;background:#071725;box-shadow:0 18px 54px rgba(0,0,0,.58)}.surfacePickerHead{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.surfacePickerHead>div{display:flex;flex-direction:column;gap:2px}.surfacePickerHead b{font-size:11px;color:#e8f5fb}.surfacePickerHead span{font-size:8px;color:#7893a5}.surfacePickerHead button{width:26px;height:26px;padding:0!important;border-radius:50%!important}.surfacePickerGrid{display:grid;grid-template-columns:repeat(10,1fr);grid-gap:3px;gap:3px;padding:7px;border:1px solid #1d4058;border-radius:8px;background:#091b2a}.surfacePickerGrid button{min-height:19px!important;padding:0!important;border:1px solid #29485e!important;border-radius:3px!important;background:#0b2233!important}.surfacePickerGrid button.active{border-color:#5acbf3!important;background:#1b79a2!important;box-shadow:inset 0 0 0 1px rgba(163,231,255,.26)}.surfacePickerSummary{display:flex;flex-direction:column;gap:2px;padding:9px 2px 7px}.surfacePickerSummary b{font-size:11px;color:#e7f4fb}.surfacePickerSummary span{font-size:9px;color:#a9c0cf}.surfacePickerSummary small{font-size:8px;color:#6fd9bd}.irregularScreenBtn{width:100%;min-height:34px!important;border-color:#35627c!important;background:#102b3f!important;color:#d9eef9!important}.dataPaintActions{display:flex;align-items:center;gap:4px;padding-left:4px;border-left:1px solid #23455d}.dataPaintActions button{background:#142d3f!important}.dataPaintActions button:first-child{border-color:#785d2b!important;color:#f2ca76!important}.dataRouteButtons{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.dataRouteButtons button{min-width:0}.surfaceBuilderStrip.surfaceBuilderSix{grid-template-columns:repeat(3,1fr)}.surfaceBuilderStrip.surfaceBuilderSix button:nth-child(2),.surfaceBuilderStrip.surfaceBuilderSix button:nth-child(4){border-color:#66474e;color:#e6aab2}.surfaceBuilderStrip.surfaceBuilderSix button:nth-child(5){border-color:#2f6079;color:#a9dbef}.compactDeleteStructure{margin-top:6px}.compactDeleteStructure .dataRouteButtons button{border-color:#62434b;background:#231922;color:#e8a8b1}.deleteSurfaceButton{width:calc(100% - 20px);margin:0 10px 10px;min-height:34px;border:1px solid #743d47;border-radius:7px;background:#26161d;color:#f0a2ad;font-size:9px;font-weight:900}@media(max-width:980px){.surfacePicker{left:10px;top:92px}.dataPaintActions{width:100%;padding-left:0;border-left:0}.surfaceBuilderStrip.surfaceBuilderSix{grid-template-columns:repeat(2,1fr)}}.irregularSurface .led3dFront{border-color:transparent;background:transparent;box-shadow:none}.irregularSurface .led3dBack,.irregularSurface>.led3dSide{display:none}.irregularSurface .led3dCabinetHit{background:linear-gradient(135deg,#143c56,#0b2639);border-color:rgba(110,197,236,.62);box-shadow:inset 0 0 10px rgba(41,151,201,.1)}.irregularSurface .led3dCabinetHit.unassigned{background:linear-gradient(135deg,#17384a,#102637);border-color:rgba(244,182,79,.62)}.irregularSurface .led3dSelectionRing{border-color:rgba(97,211,251,.55)}.resolumePage{max-width:1500px;margin:0 auto;padding-bottom:48px}.resolumeHead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:24px 0 18px}.resolumeHead h1{margin:4px 0 6px;font-size:30px}.resolumeHead p{margin:0;color:var(--muted)}.resolumeStatus{border:1px solid var(--border);border-radius:999px;padding:9px 13px;font-size:11px;font-weight:800;letter-spacing:.08em}.resolumeStatus.ok{color:#5de0b7;border-color:rgba(93,224,183,.35);background:rgba(93,224,183,.07)}.resolumeStatus.warn{color:#ffca58;border-color:rgba(255,202,88,.35);background:rgba(255,202,88,.07)}.resolumeWorkflow{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(520px,1.2fr);grid-gap:14px;gap:14px}.resolumePreviewCard,.resolumeSetupCard,.resolumeValidationCard{border:1px solid var(--border);background:var(--panel);border-radius:16px;overflow:hidden}.resolumePreviewCard>.panelTitle,.resolumeSetupCard>.panelTitle,.resolumeValidationCard>.panelTitle{padding:13px 15px;border-bottom:1px solid var(--border)}.resolumeModeGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;padding:14px}.resolumeModeGrid button{min-height:86px;text-align:left;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.015);color:var(--text);padding:13px;display:flex;flex-direction:column;gap:6px}.resolumeModeGrid button span{color:var(--muted);font-size:12px;line-height:1.35}.resolumeModeGrid button.active{border-color:#38bdf8;background:rgba(56,189,248,.08);box-shadow:inset 0 0 0 1px rgba(56,189,248,.12)}.resolumeNativeNotice,.resolumeTemplateBox{margin:0 14px 14px;border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;gap:12px;align-items:center}.resolumeNativeNotice{flex-direction:column;align-items:flex-start}.resolumeNativeNotice span,.resolumeTemplateInfo small,.resolumeTemplateInfo span{color:var(--muted);font-size:12px}.resolumeTemplateInfo{display:flex;flex-direction:column;gap:3px;min-width:0}.resolumeFileButton{cursor:pointer;white-space:nowrap;border:1px solid #38bdf8;border-radius:9px;padding:9px 11px;color:#8ddcff;font-weight:700;background:rgba(56,189,248,.07)}.resolumeFileButton input{display:none}.resolumeCanvasRow{display:grid;grid-template-columns:1.2fr 1fr .7fr;grid-gap:10px;gap:10px;padding:0 14px 14px}.resolumeCanvasRow label,.resolumeCanvasRow>div{border:1px solid var(--border);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:4px}.resolumeCanvasRow select{background:transparent;border:0;color:var(--text);font-weight:700;outline:none}.resolumeCanvasRow small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.resolumePreviewCard{min-height:430px}.resolumeCanvas{position:relative;margin:18px;background:#07131f;border:1px solid #23435d;border-radius:11px;overflow:hidden;min-height:300px}.resolumeSafeArea{position:absolute;inset:0;background-image:linear-gradient(rgba(65,105,135,.09) 1px,transparent 0),linear-gradient(90deg,rgba(65,105,135,.09) 1px,transparent 0);background-size:32px 32px}.resolumeSlice{position:absolute;border:1px solid rgba(125,211,252,.8);background:rgba(14,116,144,.24);display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;min-width:2px;min-height:2px}.resolumeSlice b{font-size:11px;max-width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resolumeSlice span{font-size:9px;color:#b7d8e8}.resolumeSlice.tone-2{background:rgba(37,99,235,.23)}.resolumeSlice.tone-3{background:rgba(13,148,136,.23)}.resolumeSlice.tone-4{background:rgba(124,58,237,.22)}.resolumeSlice.tone-5{background:rgba(190,24,93,.2)}.resolumeValidationCard{margin-top:14px}.resolumeChecks{padding:12px 14px;display:grid;grid-gap:7px;gap:7px}.resolumeChecks>div{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--border);border-radius:9px;padding:9px 10px;font-size:12px}.resolumeChecks .info{border-color:rgba(93,224,183,.2)}.resolumeChecks .warning{border-color:rgba(255,202,88,.3);color:#ffd774}.resolumeChecks .error{border-color:rgba(255,91,120,.35);color:#ff91a8}.resolumeExportBar{position:-webkit-sticky;position:sticky;bottom:12px;z-index:10;margin-top:14px;border:1px solid var(--border);background:rgba(8,20,33,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 14px 34px rgba(0,0,0,.25)}.resolumeExportBar>div{display:flex;flex-direction:column;margin-right:auto}.resolumeExportBar span{color:var(--muted);font-size:11px}.resolumeExportBar button{min-height:38px}.resolumeExportBar button:disabled{opacity:.35;cursor:not-allowed}.resolumeMessage{margin-top:10px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;color:#c7e5f5}.resolumeFootnote{color:var(--muted);font-size:11px;margin:12px 4px}.loadingCard{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}@media(max-width:980px){.resolumeWorkflow{grid-template-columns:1fr}.resolumeHead{align-items:flex-start;flex-direction:column}.resolumeModeGrid{grid-template-columns:1fr}.resolumeExportBar{position:static;flex-wrap:wrap}.resolumeExportBar>div{width:100%}.resolumeCanvasRow{grid-template-columns:1fr}}