:root{--pink:#ea3355;--ink:#292c32;--muted:#80848d;--paper:#f3f4f6;--line:#e7e9ee;--green:#287c58;--amber:#b5791b;--blue:#637a91}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 'Avenir Next','Montserrat','Century Gothic',Arial,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button{border:0;transition:background .2s,box-shadow .2s,transform .2s}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid #ea335580;outline-offset:3px}button:disabled{cursor:default;opacity:.45}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}header{height:76px;padding:0 30px;background:#fff;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex}.brand img{width:132px;height:auto}.header-center{font-size:10px;font-weight:600;letter-spacing:2px;color:#8c919a;border-left:1px solid #ddd;padding-left:24px}.header-right{display:flex;align-items:center;gap:22px;margin-left:auto}.demo-pill{padding:5px 10px;background:#fff0f3;color:#c72949;border-radius:30px;font-size:10px}.text-button{color:#777c86;background:none;font-size:12px;padding:8px 0}main{max-width:1800px;margin:auto;padding:24px 24px 0}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.panel{border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 32px #1d263606;overflow:hidden;background:#fff;animation:panel-in .7s ease both}.operations{animation-delay:.1s}.main-map{position:sticky;top:20px}.panel-top{display:flex;align-items:center;justify-content:space-between;padding:19px 22px;border-bottom:1px solid var(--line);min-height:70px}.panel-title{display:flex;align-items:center;gap:10px}.surface-icon{font-size:24px;color:#9daab5}.surface-tag{font-size:10px;color:#9ba1ab;margin-left:8px}h2{font-size:16px;font-weight:600;letter-spacing:-.3px;margin:0}p{margin:0}.live-dot{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--green)}.live-dot:before,.sync-hint i{content:'';width:5px;height:5px;background:#38a776;box-shadow:0 0 0 4px #38a77611;border-radius:50%;animation:status-pulse 3s ease-in-out infinite}.live-dot.paused{color:#8f939b}.live-dot.paused:before{background:#9a9fa6;box-shadow:none;animation:none}.map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:8px;min-height:60px}.segmented{display:flex;padding:3px;gap:2px;background:#f3f4f6;border:1px solid #eff0f2;border-radius:8px}.segmented button{font-size:10px;color:#858c96;padding:7px 10px;background:transparent;border-radius:5px;white-space:nowrap}.segmented button.active{background:#fff;color:#343942;box-shadow:0 1px 4px #0000000a}.segmented span{font-size:8px;margin-left:4px;color:#929aa5}.small-button{padding:7px 10px;font-size:10px;color:#7b8490;border:1px solid #e2e6eb;background:white;border-radius:6px;white-space:nowrap}.small-button.active{color:var(--pink);border-color:#f6cbd5;background:#fff7f9}.map-wrap{position:relative;overflow:auto;background:#f3f5f6;touch-action:pan-x pan-y}.map-wrap svg{width:100%;height:auto;display:block;touch-action:pan-x pan-y}.map-wrap svg.is-dragging{touch-action:none}#map-empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 18px;background:#ffffffed;border-radius:8px;color:#8491a0;font-size:12px;pointer-events:none}.gate{cursor:pointer;outline:none}.gate-zone{transition:fill .3s,stroke .3s}.open-gate .gate-zone,.collection-area .gate-zone{stroke:transparent;fill:transparent}.open-gate.flight-target .gate-zone{fill:#ea335506}.gate:hover .gate-zone,.gate:focus-visible .gate-zone,.gate.drop .gate-zone{stroke:#ea335575;stroke-width:1.5;stroke-dasharray:3 5;fill:#ea335509}.gate-sign{font-size:12px;fill:#fff;font-weight:700;letter-spacing:1px}.gate-furniture{pointer-events:none}.gate-label{font-size:10px;font-weight:600;fill:#7b9787}.zone-hint{opacity:0;font-size:8px;fill:#cf3554;letter-spacing:1px}.gate.drop .zone-hint{opacity:1}.cart{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;outline:none}.cart.held,.cart.dragging{cursor:grabbing}.cart.dragging .trolley-visual{filter:drop-shadow(0 6px 7px #27364350)}.cart-hit{pointer-events:all}.trolley-visual{pointer-events:none;transition:filter .2s}.cart .selected-ring{opacity:0;transform-box:fill-box;transform-origin:center}.cart.selected .selected-ring,.cart:focus-visible .selected-ring{opacity:1;animation:selection-orbit 18s linear infinite}.cart-label{font-size:11px;font-weight:700;fill:#6d7a88}.cart.selected .cart-label{fill:#cf2e4d}.cart.selected .label-bg{stroke:#ea335560;stroke-width:1px}#route-layer{pointer-events:none}.route{fill:none;stroke:var(--pink);stroke-width:2.5;stroke-dasharray:6 5;animation:flow 1.5s linear infinite}.drag-help{display:flex;align-items:center;gap:7px;padding:12px 20px;color:#8c94a0;font-size:11px;border-top:1px solid #edf0f3}.drag-help>span:first-child{font-size:18px;color:#cf536f}.sync-hint{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:9px;color:#92a39a}.sync-hint i{display:block;width:4px;height:4px}.map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:18px;padding:3px 20px 16px;font-size:9px;color:#89939d}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend i{display:block;width:5px;height:5px;border-radius:50%}.green{background:var(--green)}.pink{background:var(--pink)}.blue{background:var(--blue)}.amber{background:var(--amber)}.map-bottom{padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line)}.simulation-clock strong{font-size:22px;letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-weight:500}.play-controls{display:flex;gap:6px}.scenario-controls{padding:13px 16px;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center;min-height:62px;flex-wrap:wrap}.scenarios{display:flex;gap:5px;flex-wrap:wrap}.scenarios button{background:none;border-radius:5px;color:#9a9fa8;font-size:10px;padding:7px 8px}.scenarios button.active{color:#535e6d;background:#edf0f4}.primary{background:var(--pink);color:#fff;padding:9px 14px;border-radius:7px;font-weight:600;font-size:11px;box-shadow:0 4px 10px #ea335517;white-space:nowrap}.scenario-controls .primary{margin-left:auto;font-size:10px;padding:7px 11px}#scenario-status{font-size:10px;color:#6e9a88;margin-left:auto}
/* The right surface is a compact location console, not another physical scene. */
.operations{--line:#263547;background:#111d2b;color:#dce7ee;border-color:#263547;box-shadow:0 12px 40px #10203014}.operations .panel-top{background:#152231}.rtls-symbol{font-size:28px;color:#ed5271;line-height:1}.operations h2{font-size:15px;letter-spacing:0;font-weight:500}.operations h2 b{font-size:11px;font-weight:500;color:#768da3;margin-left:6px;letter-spacing:1px}.rtls-connection{display:flex;gap:7px;align-items:center;color:#63c6ac;font-size:8px;letter-spacing:1px}.rtls-connection i{width:5px;height:5px;border-radius:50%;background:#5dd0ae;box-shadow:0 0 12px #50d4ac80;animation:status-pulse 3s ease-in-out infinite}.rtls-connection small{font-size:7px;letter-spacing:.8px;color:#8a9aaf;background:#263548;border-radius:3px;padding:2px 4px;margin-left:3px}.rtls-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 19px;color:#92a6bb;font-size:10px;min-height:60px}.rtls-toolbar b{color:#4f657b;margin:0 9px;font-weight:400}.rtls-map-controls{display:flex;gap:5px}.rtls-map-controls button{width:27px;height:27px;border:1px solid #2a3d52;background:#1a2b3e;border-radius:5px;color:#a3b4c6;font-size:17px;line-height:1}.rtls-map-wrap{position:relative;background:#101c29;overflow:hidden}.rtls-map-wrap svg{width:100%;display:block;height:auto;aspect-ratio:940/540;transition:view-box .3s}.rtls-map-footer{position:absolute;bottom:11px;left:19px;right:19px;display:flex;justify-content:space-between;font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:#667d94;pointer-events:none}.rtls-map-footer>span:first-child{display:flex;align-items:center;gap:6px}.rtls-map-footer i{width:4px;height:4px;background:#59bca6;border-radius:50%}.digital-zone{fill:#1a2c3f;fill-opacity:.35;stroke:#37536d;stroke-width:1;stroke-dasharray:4 5;transition:fill .3s,stroke .3s}.digital-zone.target{fill:#ea3355;fill-opacity:.04;stroke:#a65c72}.rtls-tag{cursor:pointer;outline:none}.rtls-tag .tag-halo{opacity:0;fill:none;stroke-width:1.5;transform-box:fill-box;transform-origin:center}.rtls-tag.selected .tag-halo{opacity:.6;animation:tag-pulse 2.6s ease-out infinite}.rtls-tag .tag-core{transition:fill .3s,r .2s}.rtls-tag.selected .tag-core{r:8px}.rtls-tag:focus-visible .tag-core{stroke:#fff;stroke-width:4}.rtls-tag text{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;fill:#afc3d4;pointer-events:none}.rtls-tag.selected text{fill:#fff}.digital-route{fill:none;stroke:#e95879;stroke-width:2;stroke-dasharray:6 5;opacity:.7;animation:flow 1.5s linear infinite}.rtls-beacon{fill:#7293b2;stroke:#1b3045;stroke-width:4}.kpis{display:grid;grid-template-columns:repeat(3,1fr);padding:14px 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kpis>div{text-align:center;border-right:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:8px}.kpis>div:last-child{border:0}.kpis strong{font-size:21px;font-weight:500;line-height:1.2;font-variant-numeric:tabular-nums}.kpis>div:first-child strong{color:#69c6aa}.kpis>div:last-child strong{color:#dfae66}.kpis span{color:#758ba0;font-size:9px}.asset-selector{margin:18px 20px 0;display:flex;align-items:center;justify-content:space-between}.asset-selector label{font-size:8px;letter-spacing:1.4px;color:#667c93}.asset-selector select{font-size:10px;width:85px;padding:4px 7px}.asset-head{display:flex;align-items:center;margin:12px 20px 15px;gap:9px}.asset-head h3{font-size:23px;letter-spacing:-.5px;margin:0;font-weight:500}.asset-head small{font-size:9px;color:#74899e;margin-left:3px}.asset-head>.badge{margin-left:auto}.badge{display:inline-block;font-size:9px;white-space:nowrap;border-radius:4px;padding:3px 6px;color:#70c3a8;background:#1b3c36}.badge.moving{color:#f17a94;background:#3b2738}.badge.gate{color:#91b6d4;background:#21384e}.badge.alert{color:#e9bb79;background:#473827}.asset-details{margin:0 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.asset-details>div{display:flex;flex-direction:column;gap:3px}.asset-details span{font-size:9px;color:#6c8298}.asset-details strong{font-size:11px;font-weight:500;color:#b6c7d6}.asset-details .warn{color:#d7ab6e}.dispatch{padding:16px 20px}.dispatch>div{display:flex;gap:8px}select{min-width:0;background:#192a3c;border:1px solid #2a4056;border-radius:6px;padding:9px;color:#a5bbce;font-size:11px}.dispatch select{flex:1;width:160px}.dispatch .primary{padding:9px 15px}.alert-card{margin:0 20px 15px;font-size:10px;color:#8da5ba;display:none}.alert-card.warning{display:flex;align-items:center;justify-content:space-between;background:#3d302333;padding:10px 12px;border:1px solid #6d542e;border-radius:6px;color:#dfb475;gap:10px}.alert-card button{background:none;color:#e7b878;font-size:10px;text-decoration:underline;white-space:nowrap}.fleet-panel{border-top:1px solid var(--line)}.fleet-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 20px;border-bottom:1px solid var(--line)}.bottom-tabs{display:flex;gap:20px}.bottom-tabs button{font-size:11px;font-weight:500;color:#6c839a;background:none;padding:6px 0;position:relative}.bottom-tabs button.active{color:#d4e2ed}.bottom-tabs button.active:after{content:'';height:2px;position:absolute;bottom:-14px;left:0;right:0;background:var(--pink)}.bottom-tabs span{font-size:8px;background:#24384a;border-radius:3px;padding:2px 4px;margin-left:4px;color:#92a9bc}.search{display:flex;gap:5px;align-items:center;padding:5px 8px;border:1px solid #2a3d50;border-radius:5px;color:#738ba1}.search>span{font-size:18px;line-height:1}.search input{border:0;background:transparent;width:84px;font-size:10px;outline:none;color:#a7bacb}.search input::placeholder{color:#647c93}.table-wrap{overflow:auto;max-height:185px}table{border-collapse:collapse;width:100%;font-size:10px;white-space:nowrap}th{text-align:left;position:sticky;top:0;background:#142232;color:#617b94;z-index:1;letter-spacing:.6px;font-size:8px;font-weight:500;padding:9px 19px;border-bottom:1px solid var(--line)}td{padding:9px 19px;border-bottom:1px solid #1c2c3d;color:#92a8bc}tbody tr:last-child td{border-bottom:0}tr.selected td{background:#203042}td strong{color:#b0c3d3;font-weight:500}td button{color:#adc4d7;background:none;padding:0;font-size:10px}td .dot{display:inline-block;width:5px;height:5px;background:#66a283;border-radius:50%;margin-right:7px}.empty-row{padding:24px;text-align:center;color:#778fa5}.gate-progress{display:flex;align-items:center;gap:8px}.gate-progress i{display:block;width:38px;height:3px;border-radius:5px;background:#2b4053;overflow:hidden}.gate-progress b{display:block;height:100%;background:#5b9d7e;transition:width .5s}footer{display:flex;align-items:center;gap:6px;padding:16px 2px 24px;color:#a1a6af;font-size:9px}.footer-dot{width:4px;height:4px;background:#bac0c9;border-radius:50%}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);z-index:20;box-shadow:0 10px 40px #2128342a;background:#273443;color:#fff;padding:11px 18px;border-radius:9px;max-width:calc(100vw - 30px);font-size:12px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.toast.show{transform:translate(-50%,0);opacity:1}@keyframes flow{to{stroke-dashoffset:-22}}@keyframes selection-orbit{to{transform:rotate(360deg)}}@keyframes status-pulse{50%{opacity:.55}}@keyframes tag-pulse{0%{transform:scale(.6);opacity:.8}80%,100%{transform:scale(1.7);opacity:0}}@keyframes panel-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){main{padding-top:30px}.workspace{gap:24px}.panel-top{min-height:76px}.map-toolbar,.rtls-toolbar{min-height:66px}}
@media(max-width:1100px){main{padding:18px 16px 0}.workspace{gap:14px}.panel-top{padding:17px 16px}.surface-tag{display:none}.segmented button{padding:7px;font-size:9px}.map-toolbar{padding:12px 10px}.kpis span{font-size:8px}.kpis>div{gap:5px}.asset-details{grid-template-columns:repeat(2,1fr)}.fleet-header{padding:13px 15px}.bottom-tabs{gap:15px}th,td{padding:9px 14px}.sync-hint{font-size:8px}.scenario-controls{padding:12px 10px}.scenarios{gap:2px}.scenarios button{font-size:9px;padding:7px 6px}}
@media(max-width:800px){.workspace{grid-template-columns:1fr}.main-map{position:relative;top:auto}.surface-tag{display:inline}.map-wrap svg{min-width:0}.asset-details{grid-template-columns:repeat(4,1fr)}.operations .table-wrap{max-height:210px}.segmented button{padding:7px 10px;font-size:10px}.kpis span{font-size:9px}.scenario-controls{padding:13px 16px}.scenarios button{font-size:10px;padding:7px 8px}}
@media(max-width:480px){header{height:62px;padding:0 16px;gap:15px}.brand img{width:106px}.header-center{font-size:8px;letter-spacing:1.3px;padding-left:15px}.header-right{gap:12px}.text-button{font-size:20px}.text-button span{display:none}.demo-pill{font-size:9px;padding:4px 7px}main{padding:14px 10px 0}.workspace{gap:16px}.panel{border-radius:12px}.panel-top{min-height:64px;padding:15px}.surface-tag{display:none}h2{font-size:15px}.map-toolbar{min-height:58px;padding:10px}.segmented button{font-size:9px;padding:7px}.segmented span{display:none}.small-button{font-size:9px;padding:7px 8px}.map-wrap svg{min-width:570px}.trolley-visual{transform:scale(1.08)}.cart-hit{r:34px}.drag-help{padding:11px 14px;font-size:10px}.sync-hint{font-size:8px;gap:6px}.map-legend{gap:12px;padding:3px 14px 14px;font-size:8px}.map-bottom{padding:12px 14px;gap:8px}.simulation-clock strong{font-size:20px}.play-controls{gap:5px}.scenario-controls{padding:10px;gap:5px}.scenarios{gap:0}.scenarios button{padding:7px 6px;font-size:9px}.scenario-controls .primary{font-size:9px;padding:7px 8px}#scenario-status{font-size:9px}.rtls-toolbar{min-height:58px;padding:10px 15px}.rtls-map-wrap svg{min-height:240px}.rtls-map-footer{font-size:8px;left:14px;right:14px}.asset-selector,.asset-head,.asset-details{margin-left:16px;margin-right:16px}.asset-details{grid-template-columns:repeat(2,1fr);gap:12px}.dispatch{padding:16px}.alert-card{margin-left:16px;margin-right:16px}.bottom-tabs{gap:17px}.search input{width:60px}.fleet-header{gap:10px}.rtls-connection{font-size:7px}footer{padding:13px 3px 22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:480px){.rtls-tag text{opacity:0}.rtls-tag.selected text{opacity:1;font-size:22px}#rtls-base text{font-size:18px}.rtls-tag .tag-core{r:8px}.rtls-tag.selected .tag-core{r:10px}}

/* White Komete desktop application and monitor, matched to the order demo. */
.software-panel{min-width:0;animation:panel-in .7s .1s ease both}.monitor{width:100%;background:#34373d;border:1px solid #24272d;border-radius:18px 18px 11px 11px;padding:0 10px;box-shadow:0 15px 40px #1d293329}.monitor-top{height:16px;display:grid;place-items:center}.monitor-top>span{width:5px;height:5px;border-radius:50%;background:#16191e;box-shadow:0 0 0 2px #44474d}.monitor-display{background:#f5f5f6;border:1px solid #171a20;border-radius:5px;overflow:hidden;height:clamp(570px,43vw,730px);display:flex;flex-direction:column}.monitor-chin{height:25px;text-align:center;position:relative;font-size:8px;letter-spacing:3px;color:#b3b6bd;padding-top:7px}.monitor-chin>span{position:absolute;right:12px;color:#99bca2;font-size:6px}.monitor-stand{height:26px;width:110px;margin:auto;background:linear-gradient(90deg,#999da4,#d4d6da,#9ca0a7);clip-path:polygon(20% 0,80% 0,93% 100%,7% 100%)}.monitor-base{height:9px;width:225px;margin:auto;border-radius:50% 50% 3px 3px;background:linear-gradient(#e4e6e9,#9fa3aa);box-shadow:0 4px 6px #30343b15}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;background:#fff;border-bottom:1px solid #e6e6e8;flex-shrink:0}.app-topbar>img{width:100px;height:auto}.app-menu{display:flex;gap:19px;align-items:center}.app-menu>button{display:flex;align-items:center;flex-direction:column;gap:4px;font-size:9px;color:#7c7e85;background:none;padding:0}.app-menu svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.app-menu .active{color:var(--pink);font-weight:600}.app-profile{height:27px;width:27px;display:grid;place-items:center;flex-shrink:0;background:#f0f1f3;color:#777b83;font-size:9px;border-radius:50%}.app-breadcrumb{padding:8px 15px;border-bottom:1px solid #e7e7e9;background:#fcfcfc;font-size:9px;color:#85868d;flex-shrink:0}.app-breadcrumb>span:not(.app-demo){padding:0 10px;color:#b3b3ba}.app-demo{float:right;display:flex;align-items:center;gap:5px;font-size:8px;color:#719782}.app-demo i{width:4px;height:4px;border-radius:50%;background:#4d9a6e;box-shadow:0 0 0 3px #287c4210}.operations{--line:#e7e8ed;background:#f5f5f6;color:#292929;border:0;box-shadow:none;position:relative;overflow:auto;min-height:0;flex:1;padding:0 16px 16px;scrollbar-width:thin;scrollbar-color:#d9dce1 transparent;animation:none}.rtls-toolbar{padding:12px 0;min-height:55px;color:#73747c}.rtls-toolbar h2{font-size:14px;display:flex;gap:6px;align-items:center}.rtls-symbol{font-size:24px;color:var(--pink)}.rtls-map-controls button{background:#fff;border-color:#dfe3e9;color:#8b929e}.rtls-map-wrap{background:#fff;border:1px solid #e5e6ed;border-radius:10px;overflow:hidden}.rtls-map-wrap svg{background:#f8f9fc}.rtls-map-footer{color:#8d929b;bottom:10px;left:12px;right:12px;font-family:inherit}.rtls-map-footer i{background:#4b9674}.digital-zone{fill:#fff;fill-opacity:.75;stroke:#d5dae3;stroke-width:1.3;stroke-dasharray:4 5}.digital-zone.target{fill:#fff0f4;fill-opacity:.8;stroke:#ea3355}.rtls-tag text{fill:#7e8793}.rtls-tag.selected text{fill:#b62444;font-weight:600}.rtls-tag:focus-visible .tag-core{stroke:#34373d;stroke-width:3}.rtls-tag .tag-core{stroke:#fff;stroke-width:3}.rtls-tag.selected .tag-core{filter:drop-shadow(0 1px 3px #ea335533)}.digital-route{stroke:#ea3355;opacity:.6}.rtls-beacon{fill:#a4adb9;stroke:#edf0f4}.kpis{margin:12px 0;padding:12px 2px;border:1px solid #e5e6eb;border-radius:8px;background:#fff}.kpis strong{color:#52545b}.kpis>div:first-child strong{color:#4b9674}.kpis>div:last-child strong{color:#bb812b}.kpis span{color:#8b8e97}.asset-selector{margin:14px 0 0}.asset-selector label{color:#9b9da5}.asset-head{margin:10px 0 12px}.asset-head h3{font-size:22px;color:#393c43}.asset-head small{color:#969aa4}.badge{color:#3e8060;background:#eaf5ef}.badge.moving{color:#c52f50;background:#ffe9ef}.badge.gate{color:#68819a;background:#eaf0f6}.badge.alert{color:#b07b25;background:#fff2dc}.asset-details{margin:0;gap:10px}.asset-details span{color:#9599a2}.asset-details strong{color:#606a78}.asset-details .warn{color:#b07b25}.dispatch{padding:14px 0}.operations select{background:#fff;border-color:#dde1e8;color:#737b89}.alert-card{margin:0 0 14px;color:#7c8794}.alert-card.warning{background:#fff8ec;border-color:#eed8b2;color:#b07b25}.alert-card button{color:#a5782b}.fleet-panel{background:#fff;border:1px solid #e5e6eb;border-radius:8px;overflow:hidden;margin-top:1px}.fleet-header{padding:12px;gap:10px;border-color:#eceef3}.bottom-tabs{gap:18px}.bottom-tabs button{color:#9296a1}.bottom-tabs button.active{color:#454852}.bottom-tabs button.active:after{bottom:-13px}.bottom-tabs span{background:#f0f1f5;color:#989da8}.search{border-color:#e4e6eb;color:#9ea4af;background:#fff}.search input{color:#737b88}.search input::placeholder{color:#a1a7b1}.table-wrap{max-height:180px}th{background:#fafafb;color:#969ca6;border-color:#eceef2}td{color:#7d8694;border-color:#f0f1f4}tr.selected td{background:#fff2f6}td strong,td button{color:#666f7d}.empty-row{color:#969eaa}.gate-progress i{background:#edf0f4}.gate-progress b{background:#5c9f7d}
@media(min-width:1600px){.monitor-display{height:730px}.operations{padding:0 20px 20px}.app-topbar{padding:14px 20px}.app-menu{gap:24px}.app-menu>button{font-size:10px}.app-menu svg{width:22px;height:22px}.rtls-toolbar{min-height:62px}.rtls-toolbar h2{font-size:15px}.monitor-top{height:18px}.monitor-chin{height:28px;padding-top:8px}}
@media(min-width:801px) and (max-width:1100px){.app-topbar{padding:10px;gap:9px}.app-topbar>img{width:82px}.app-menu{gap:12px}.app-menu>button{font-size:8px}.app-menu svg{width:18px;height:18px}.app-profile{height:23px;width:23px}.operations{padding:0 12px 14px}.monitor-display{height:600px}.app-breadcrumb{font-size:8px;padding:7px 12px}.asset-details{grid-template-columns:repeat(4,1fr)}.asset-details strong{font-size:10px}.asset-details span{font-size:8px}.kpis>div{flex-direction:column;gap:3px}.kpis{padding:9px 0}}
@media(max-width:800px){.software-panel{max-width:100%}.monitor-display{height:auto;max-height:none}.operations{overflow:visible;flex:none;padding:0 16px 16px}.monitor-stand{height:25px}.monitor-base{width:190px}.app-menu{gap:24px}.rtls-map-wrap svg{min-height:0}.operations .table-wrap{max-height:200px}}
@media(max-width:480px){.monitor{padding:0 6px;border-radius:15px 15px 10px 10px}.monitor-top{height:14px}.monitor-chin{height:25px;padding-top:7px}.app-topbar{padding:10px;gap:10px}.app-topbar>img{width:75px}.app-menu{gap:12px}.app-menu>button{font-size:8px}.app-menu svg{width:17px;height:17px}.app-profile{width:20px;height:20px;font-size:8px}.app-breadcrumb{font-size:8px;padding:8px 10px}.app-demo{font-size:7px}.operations{padding:0 10px 12px}.rtls-toolbar{min-height:53px}.rtls-toolbar h2{font-size:13px}.rtls-map-wrap svg{min-height:220px}.rtls-map-footer{font-size:7px;left:8px;right:8px;bottom:8px}.asset-details{grid-template-columns:repeat(2,1fr);gap:12px}.kpis>div{flex-direction:column;gap:3px}.kpis span{font-size:8px}.kpis strong{font-size:20px}.kpis{padding:9px 0}.fleet-header{padding:10px 9px;gap:8px}.bottom-tabs{gap:12px}.bottom-tabs button{font-size:10px}.bottom-tabs button.active:after{bottom:-11px}.search{padding:4px 6px}.search input{width:49px;font-size:9px}.bottom-tabs span{font-size:7px;margin-left:3px}th,td{padding:9px 11px}.monitor-stand{height:24px;width:90px}.monitor-base{width:165px}}
/* Healthcare adaptation: physical rooms, individual instruments and a compact digital twin. */
:root{--paper:#f3f5f6}.surface-icon{font-size:19px;color:#8da9a2}.main-map{position:relative;top:auto}.monitor-display{height:clamp(640px,51vw,820px)}.map-wrap{background:#f1f5f5}.map-wrap svg{min-width:0;aspect-ratio:940/620}.rtls-map-wrap svg{aspect-ratio:940/620}.map-toolbar{padding:12px 15px}.drag-help{border-bottom:1px solid #edf0f3}.help-secondary{margin-left:auto;font-size:9px;color:#a2aab3}.scene-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;background:#fcfdfd}.scene-selection{display:flex;align-items:center;gap:8px;color:#626e7a;font-size:11px}.selection-dot{height:6px;width:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 4px #ea335510}.scene-bottom .small-button{border-color:#eed0d8;color:#c93351;background:#fff8fa}.scene-bottom .small-button.active{background:#ea3355;color:#fff}.room{cursor:pointer;outline:none}.room-hit{fill:transparent;stroke:transparent;stroke-width:2}.room:hover .room-hit,.room:focus-visible .room-hit,.room.drop .room-hit{fill:#ea335506;stroke:#ea335570;stroke-dasharray:5 5}.room-label{font-size:12px;fill:#5c747e;font-weight:600;letter-spacing:.65px}.room-sublabel{font-size:9px;fill:#9cabb2;letter-spacing:.5px}.door-sign{fill:#d0dddf}.asset{cursor:grab;touch-action:none;user-select:none;outline:none;-webkit-user-select:none}.asset.dragging{cursor:grabbing}.asset-icon{pointer-events:none;filter:drop-shadow(0 3px 3px #546a7020)}.asset.dragging .asset-icon{filter:drop-shadow(0 7px 6px #546a7040)}.asset .selected-ring{opacity:0;transition:opacity .2s}.asset.selected .selected-ring,.asset:focus-visible .selected-ring{opacity:1}.asset.selected .asset-label{fill:#bd2f4c}.asset-label{font-size:11px;font-weight:600;fill:#6e7d88;pointer-events:none}.asset.selected .label-bg{stroke:#efb3c0}.asset .selected-ring{fill:#ea335508;stroke:#ea3355;stroke-width:1.4;stroke-dasharray:4 3}.asset-icon .tag-light{fill:#ea3355;stroke:white;stroke-width:1.4}.asset-selector select{width:150px;max-width:60%;font-size:10px}.asset-head{align-items:start;margin-bottom:12px}.asset-head h3{font-size:18px;line-height:1.3;letter-spacing:-.4px}.asset-head small{display:block;margin:3px 0 0;font-size:9px}.asset-head .badge{margin-top:2px}.asset-details{grid-template-columns:repeat(3,1fr)}.asset-details strong{font-size:10px}.badge.located{color:#4c8978;background:#e9f4ef}.badge.alert{color:#a87827}.asset-table{text-align:left;display:flex;align-items:center;gap:6px}.asset-table .dot{margin:0;flex-shrink:0}.asset-table small{display:block;color:#a2aab3;font-size:8px}.table-wrap{max-height:182px}.scene-selection{min-width:0}.scene-selection>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rtls-map-footer{bottom:9px}.digital-zone{fill:#fff;stroke-dasharray:none;stroke:#d1d9e1}.digital-zone.target{fill:#fff4f7;stroke:#ea3355}.rtls-tag .tag-core{r:7px}.rtls-tag.selected .tag-core{r:9px}.rtls-tag text{font-size:12px;font-family:inherit}.rtls-toolbar{min-height:49px}.kpis{padding:10px 2px;margin:10px 0}.dispatch{padding:12px 0}.app-breadcrumb{font-size:9px}.room-count{font-size:12px;fill:#81939d}.rtls-tag.selected text{fill:#c72f4d}.route{stroke-width:2;opacity:.65}.digital-route{stroke-width:2.4}.table-wrap th,.table-wrap td{padding:9px 12px}.badge{font-size:8px}.operations{padding-bottom:14px}
@media(min-width:1600px){.monitor-display{height:820px}.rtls-toolbar{min-height:55px}.main-map .panel-top{min-height:76px}.scene-bottom{padding:18px 22px}.asset-head h3{font-size:21px}}
@media(min-width:801px) and (max-width:1100px){.monitor-display{height:700px}.help-secondary{display:none}.scene-bottom{padding:12px}.scene-selection{font-size:10px}.asset-head h3{font-size:16px}.asset-details{grid-template-columns:repeat(3,1fr)}.bottom-tabs{gap:12px}.bottom-tabs button{font-size:10px}}
@media(max-width:800px){.monitor-display{height:auto}.map-wrap svg{min-width:0}.workspace{gap:24px}.software-panel{padding:0 4px}.main-map .map-wrap{max-height:none}.asset-details{grid-template-columns:repeat(3,1fr)}.rtls-map-wrap svg{min-height:0}}
@media(max-width:480px){.header-center{font-size:7px;letter-spacing:1px;padding-left:11px}.brand img{width:96px}.header-right{gap:10px}.map-wrap svg{min-width:570px}.map-wrap{overflow-x:auto}.help-secondary{display:none}.scene-bottom{padding:13px}.scene-selection{font-size:10px;max-width:46%}.scene-bottom .small-button{font-size:9px;padding:7px}.asset-selector select{width:145px}.asset-head h3{font-size:17px}.asset-details{gap:6px}.rtls-map-wrap svg{min-height:230px}.rtls-tag text{opacity:1;font-size:15px}.rtls-tag.selected text{font-size:16px}#rtls-base text{font-size:14px}.rtls-tag .tag-core{r:8px}.rtls-tag.selected .tag-core{r:10px}.app-breadcrumb{font-size:8px}.surface-tag{display:none}.segmented button{font-size:8.5px;padding:7px 6px}.map-toolbar{padding:10px}.map-toolbar .small-button{font-size:9px;padding:7px}.bottom-tabs{gap:12px}.search input{width:49px}}
.room-label{font-size:14px}.asset-label{font-size:13px}.rtls-tag text{font-size:15px}
