@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#173039;background:#edf1f0;font-synthesis:none;--ink:#173039;--muted:#647b80;--green:#21796f;--red:#b74550;--line:#dbe3e0}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select,input{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button,select{border:1px solid #d5dfdc;border-radius:7px;background:white;color:var(--ink);padding:9px 12px}button:hover{background:#e7efed}a{color:#24776e;text-decoration:none}a:hover{text-decoration:underline}.rail{position:fixed;inset:0 auto 0 0;width:226px;background:#10272d;color:#c7d5d5;padding:32px 22px;z-index:20;display:flex;flex-direction:column}.brand{display:flex;align-items:center;color:#f4f8f4;gap:10px;font:700 20px Manrope,Arial}.brand small{display:block;font:8px 'DM Sans';letter-spacing:2px;margin-top:5px}.brandmark{color:#a9dfc4;font-size:39px;line-height:1;position:relative}.brandmark span{font-size:24px;position:absolute;left:18px;top:-4px}.airport-id{border-top:1px solid #294149;border-bottom:1px solid #294149;display:flex;gap:15px;align-items:center;margin:42px 0 28px;padding:24px 0}.airport-id strong{font:800 36px Manrope;letter-spacing:2px}.airport-id small{display:block;font-size:10px;letter-spacing:1.5px}.swiss{width:33px;height:33px;background:#b64751;color:white;display:grid;place-items:center;font:bold 36px Arial}.rail nav{display:flex;flex-direction:column;gap:8px}.rail nav button{border:0;color:#a6bbbe;background:transparent;text-align:left;padding:14px 10px;font-size:12px}.rail nav button span{font-size:20px;margin-right:9px}.rail nav button.active{background:#28484c;color:#e0fff0;border-left:3px solid #9adbc5}.rail-bottom{margin-top:auto;font-size:9px;letter-spacing:1px;line-height:1.8}.rail-bottom p{color:#8ea7ad;font-size:11px;letter-spacing:0}.rail-bottom small{color:#6f8a91;letter-spacing:0}.status-dot,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#83d8be;margin-right:5px}main{margin-left:226px;padding:28px 32px;max-width:2000px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#647d83}.topbar h1{font:800 28px Manrope;margin:7px 0 0;letter-spacing:-1px}.top-actions{display:flex;gap:12px;align-items:center}.badge{font-size:9px;letter-spacing:1px;border:1px solid #d5dfdc;background:#f5f7f5;border-radius:4px;padding:7px 9px;display:inline-block;white-space:nowrap}.badge.green{background:#e2f1e8;color:#277665;border-color:#b9dccb}.badge.amber{background:#fff3df;color:#936b32;border-color:#ead5b5}.reference{font-size:11px}.secondary{font-size:11px;padding:10px 13px;border:1px solid #cbd7d3;border-radius:6px;background:#f7faf8;display:inline-block}.primary{background:#226b62;color:white;border-color:#226b62;font-weight:600}.primary:hover{background:#174f48}.status-banner{font-size:11px;border-left:3px solid #70a594;background:#e1eae6;padding:10px 13px;margin-bottom:20px;color:#46665e}.status-banner.error{color:#8c3c43;border-color:#bb555d;background:#f6e4e1}.tab{display:none}.tab.active{display:block}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:22px}.kpis article{background:#f9fbf8;padding:18px 20px}.kpis article>span{font-size:9px;font-weight:700;letter-spacing:1px;color:var(--muted)}.kpis strong{display:block;font:700 29px Manrope;margin-top:8px}.kpis strong small{font:11px 'DM Sans';color:#5b7275}.kpis p{margin:4px 0 0;font-size:10px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 238px;gap:18px}.scene-shell{position:relative;background:#c3d1d6;border:1px solid #b7c8c9;border-radius:10px;overflow:hidden;height:588px;display:flex;flex-direction:column}.scene-top{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#122e35ee;color:#c8dfdf;padding:13px 15px;font-size:10px;z-index:2}.scene-top strong{font-size:10px;letter-spacing:1.2px}.scene-top small{display:block;color:#8faeb3;font-size:9px;margin-top:4px}.scene-top select,.scene-top button{padding:7px;font-size:10px;background:#2b484f;color:#deebeb;border-color:#4c666c}.scene-top>div:last-child{display:flex;gap:6px}#scene{position:absolute;inset:58px 0 78px}#scene canvas{display:block;width:100%;height:100%}.scene-tools{margin-top:auto;background:#eff4f0f0;z-index:2;padding:9px 10px}.tool-group{display:flex;gap:3px;position:absolute;right:12px;bottom:115px;flex-direction:column}.tool-group button{width:31px;height:29px;padding:0;font-size:17px;background:#ecf2efed;box-shadow:0 1px 5px #193d3922}.layers{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:9px;color:#365256}.layers label{display:flex;gap:3px;align-items:center;cursor:pointer}.layers input{accent-color:#287e6a}.layers select{font-size:9px;padding:4px}.map-footer{background:#e6ece7;color:#5f787a;z-index:2;display:flex;justify-content:space-between;gap:4px;padding:7px 12px;font-size:8px}.north{position:absolute;top:74px;left:15px;font-size:11px;font-weight:700;color:#244b4f}.inspector{border:1px solid var(--line);background:#f9fbf8;border-radius:10px;padding:20px 16px}.inspector select{width:100%;margin-top:12px;font-size:12px}.flight-info{margin:15px 0;font-size:11px;line-height:1.8}.flight-info strong{font-size:21px;font-family:Manrope}.flight-info .state{color:#287a69;font-size:12px;font-weight:700;margin:7px 0}.flight-info dl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}.flight-info dd{margin:0;text-align:right;font-weight:600}.flight-info dt{color:#6a8286}.inspector>.primary{width:100%;font-size:11px}.subheading{font-size:10px;font-weight:700;margin:20px 0 10px}.task{display:flex;justify-content:space-between;border-bottom:1px solid #e5ebe7;font-size:10px;padding:7px 0;color:#7f9293}.task.active{color:#277b67;font-weight:700}.task.done{color:#4a6269}.task span:last-child{font-size:9px}.note{color:#75888b;font-size:10px;line-height:1.6;margin-top:16px}.timeline{display:flex;align-items:center;gap:15px;background:#f9fbf8;border:1px solid var(--line);border-radius:8px;padding:14px 17px;margin-top:14px}.timeline button{font-size:11px}.timeline strong{font:700 25px Manrope}.timeline small{font-size:8px;color:#6d8589;white-space:nowrap;line-height:1.5}.timeline input{flex:1;min-width:40px;accent-color:#287768}.timeline select{font-size:11px}.lower-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin-top:22px}.panel{background:#fafcf9;border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:20px}.panel h2{font:700 19px Manrope;margin:7px 0 18px;letter-spacing:-.4px}.panel h3{font-size:14px}.panel>p,.panel article p{font-size:12px;line-height:1.7;color:#627c80}.panel .note{font-size:10px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.advisory{display:grid;grid-template-columns:28px 1fr;gap:10px;border-bottom:1px solid #e0e8e3;padding:14px 0}.advisory:last-child{border:0}.advisory .number{width:24px;height:24px;background:#e3eee6;border-radius:50%;display:grid;place-items:center;font-size:10px;color:#528075}.advisory strong{display:block;font-size:12px}.advisory p{font-size:11px;color:#6f8586;line-height:1.6;margin:5px 0}form{display:grid;grid-template-columns:1fr 1fr;gap:12px}form label,.connection-controls label{font-size:10px;font-weight:500;color:#627a80}form select,.connection-controls select{display:block;width:100%;font-size:11px;margin-top:6px}form button{grid-column:1/-1;font-size:12px}.runway-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.runway-cards article{background:#edf3ef;border:1px solid #dce7df;border-radius:7px;padding:18px}.runway-cards strong{display:block;font:700 24px Manrope;margin-bottom:8px}.runway-cards p{margin:5px 0;font-size:11px!important}.heatmap{display:grid;grid-template-columns:60px repeat(96,1fr);gap:2px;min-width:650px}.heatmap>span{font-size:10px;align-self:center}.heatmap>div{height:27px;border-radius:2px;cursor:help}.heat-labels{display:flex;justify-content:space-between;margin-left:60px;margin-top:10px;font-size:9px;color:#71878a}#operations .panel:has(.heatmap){overflow:auto}.table-scroll{overflow:auto;max-height:630px}table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}th{background:#edf2ef;font-weight:600;color:#547074;position:sticky;top:0}th,td{padding:12px 10px;border-bottom:1px solid #e2e9e3;white-space:nowrap}tr:hover td{background:#eaf2ed}td button{border:0;background:none;padding:0;color:#227c70;font-weight:600}.search{font-size:10px;display:flex;gap:7px;align-items:center}.search input{padding:8px;border:1px solid var(--line);border-radius:5px;font-size:11px}.connection-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.connection-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.connection-controls input[type=range]{display:block;width:100%;accent-color:#2c7b6a;margin:12px 0}.connection-controls label:last-child{grid-column:1/-1}#connectionResult{padding:20px;background:#e4efe8;border-radius:8px;margin-top:22px}#connectionResult strong{font:800 40px Manrope;color:#246f61}#connectionResult span{font-size:12px;margin-left:8px}#connectionResult p{font-size:11px;line-height:1.8;color:#5d7878}.journey{display:flex;flex-direction:column;align-items:center;gap:8px;margin:25px 0}.journey>div{padding:15px 20px;background:#edf2ee;width:90%;text-align:center;border:1px solid #dbe5df;font:700 11px Manrope;letter-spacing:1px;border-radius:5px}.journey small{display:block;font:10px 'DM Sans';letter-spacing:0;color:#6b8387;margin-top:6px}.journey>div.accent{background:#d9eee8;color:#296c63}.confidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.source-list{margin-top:25px}.source-row{display:grid;grid-template-columns:220px 1fr;gap:25px;padding:18px 0;border-top:1px solid #dee6e1;font-size:11px;line-height:1.7}.source-row strong{font-size:12px}.source-row small{display:block;color:#8a9c9c;font-size:9px}.source-row p{margin:0;color:#6c8184}footer{font-size:9px;color:#8b9b9d;line-height:1.8;padding:25px 0}.scene-shell:fullscreen,.scene-shell.fullscreen-fallback{width:100vw;height:100vh;border:0;border-radius:0}.fullscreen-fallback{position:fixed!important;inset:0!important;z-index:100!important}.scene-shell:fullscreen #scene,.scene-shell.fullscreen-fallback #scene{bottom:68px}.scene-shell:fullscreen .scene-tools{padding:15px}.scene-shell:fullscreen .layers{font-size:12px}.scene-shell:fullscreen .layers select{font-size:12px}
@media(min-width:1650px){.scene-shell{height:680px}}@media(max-width:1250px){.rail{width:185px;padding:25px 15px}.brand{font-size:17px}main{margin-left:185px;padding:22px}.top-actions .reference{display:none}.workspace{grid-template-columns:minmax(0,1fr) 210px}.scene-top small{display:none}.scene-top strong{font-size:9px}.layers{gap:4px}.kpis article{padding:15px}.kpis strong{font-size:24px}.scene-shell{height:570px}.top-actions{gap:7px}}@media(max-width:1000px){.rail{width:75px;padding:22px 9px}.brand>span:last-child,.airport-id,.rail-bottom{display:none}.brand{justify-content:center}.rail nav{margin-top:50px}.rail nav button{font-size:0;text-align:center}.rail nav button span{font-size:24px;margin:0}main{margin-left:75px;padding:20px}.workspace{grid-template-columns:1fr}.inspector{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inspector>.eyebrow,.inspector>select,.inspector>.primary{grid-column:1}.inspector .flight-info{grid-column:1}.inspector .subheading{display:none}#tasks{grid-column:2;grid-row:2/5}.inspector .note{grid-column:1/-1}.lower-grid{grid-template-columns:1fr 1fr}.scene-shell{height:600px}.connection-layout{grid-template-columns:1fr}.top-actions .badge{display:none}.confidence-grid{gap:12px}.source-row{grid-template-columns:170px 1fr}}@media(max-width:650px){.rail{position:sticky;top:0;width:100%;height:58px;flex-direction:row;align-items:center;justify-content:space-between;padding:7px 16px}.brandmark{font-size:29px}.brandmark span{font-size:19px}.rail nav{margin:0;flex-direction:row;gap:1px}.rail nav button{padding:7px 11px}.rail nav button span{font-size:21px}.rail nav button.active{border-left:0;border-bottom:2px solid #9adbc5}main{margin:0;padding:16px 12px}.topbar h1{font-size:22px}.eyebrow{font-size:8px}.topbar{gap:4px}.top-actions button{font-size:9px;padding:8px}.kpis{grid-template-columns:1fr 1fr}.kpis strong{font-size:23px}.kpis article{padding:13px}.kpis strong small{font-size:10px}.workspace{gap:10px}.scene-shell{height:520px}.scene-top{padding:10px;gap:3px}.scene-top strong{font-size:8px}.scene-top select{max-width:110px}.scene-top button{font-size:9px}.scene-top>div:last-child{gap:4px}.scene-tools{padding:6px}.map-footer{font-size:7px}.layers{font-size:8px;gap:3px}.timeline{gap:7px;padding:10px}.timeline strong{font-size:19px}.timeline button{font-size:9px;padding:8px}.timeline small{display:none}.timeline select{padding:7px;font-size:10px}.lower-grid,.runway-cards,.confidence-grid{grid-template-columns:1fr}.panel{padding:18px}.panel-heading{align-items:flex-start}.panel h2{font-size:17px}.panel-heading .badge{font-size:7px;padding:5px}.source-row{grid-template-columns:1fr;gap:6px}.connection-controls{gap:12px}.table-scroll{max-height:500px}.search{display:none}}
