/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}html body .twin-viewer{background:radial-gradient(circle at 42% 30%,#34434a 0,#17242c 52%,#0c161d 100%);position:absolute;inset:0;overflow:hidden}html body .twin-viewer canvas{z-index:1;touch-action:none;display:block;position:relative;width:100%!important;height:100%!important}html body .twin-model-metrics{z-index:3;right:16px;bottom:calc(var(--twin-tour-safe) + var(--twin-tour-lane));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;background:#0a1922d9;border:1px solid #397084;align-items:center;gap:12px;padding:9px 11px;display:flex;position:absolute;box-shadow:0 12px 32px #0008}html body .twin-model-metrics>span{color:#74e3ff;letter-spacing:.8px;font-size:8px}html body .twin-model-metrics>span i{background:#49e2a7;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 9px #49e2a7}html body .twin-model-metrics b{color:#f1fbff;font-size:13px;line-height:1}html body .twin-model-metrics b small{color:#6f94a6;margin-top:4px;font-size:6px;font-weight:500;display:block}html body .twin-model-metrics em{color:#ffd071;border-left:1px solid #315260;padding-left:10px;font-size:8px;font-style:normal}html body .twin-streaming-note{z-index:4;left:16px;bottom:calc(var(--twin-tour-safe) + var(--twin-tour-lane));color:#e7f9ff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#081922e6;border:1px solid #3c7185;align-items:center;gap:8px;max-width:min(390px,100% - 32px);padding:9px 11px;font:700 9px Inter,PingFang SC,sans-serif;display:flex;position:absolute;box-shadow:0 12px 30px #0008}html body .twin-streaming-note:before{content:"";background:#54dcff;border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #54dcff}html body .twin-streaming-note small{color:#70a4b8;font-size:8px}html body .twin-streaming-note em{color:#ffcf72;font-size:7px;font-style:normal;font-weight:500}html body .twin-streaming-note button{color:#eaffff;cursor:pointer;background:#123b4b;border:1px solid #59dff9;margin-left:auto;padding:4px 8px;font:700 8px inherit}html body .twin-streaming-note.degraded:before{background:#ffb65b;box-shadow:0 0 10px #ff9f43}html body .twin-scene-progress{z-index:7;color:#e7f7fb;text-align:center;pointer-events:none;background:linear-gradient(#0b1929b8,#091522d8);place-content:center;justify-items:center;gap:8px;padding:24px;display:grid;position:absolute;inset:0}.twin-scene-progress strong{letter-spacing:.4px;font-size:14px}.twin-scene-progress small{color:#8eacbb;font-size:9px}.twin-scene-progress>em{background:#1d394a;width:min(260px,72%);height:3px;overflow:hidden}.twin-scene-progress>em i{background:linear-gradient(90deg,#3de5a4,#4bd8ff);height:100%;transition:width .2s;display:block;box-shadow:0 0 12px #4bd8ff}html body .twin-semantic-notice{z-index:4;color:#ffddb8;background:#25190fe8;border:1px solid #bd814b;align-items:center;gap:9px;max-width:min(440px,100% - 32px);padding:8px 10px;font:600 8px Inter,PingFang SC,sans-serif;display:flex;position:absolute;top:16px;left:16px;box-shadow:0 10px 28px #0008}html body .twin-semantic-notice button{color:#fff4df;cursor:pointer;background:#4a2e18;border:1px solid #ffc079;padding:4px 8px;font:700 8px inherit}html body .twin-viewer-loading{z-index:5;color:#eaf9ff;text-align:center;background:radial-gradient(circle,#1e3542f2,#09141df7);place-content:center;justify-items:center;gap:7px;display:grid;position:absolute;inset:0}html body .twin-viewer-loading strong{letter-spacing:.8px;font-size:12px}html body .twin-viewer-loading small{color:#7195a7;font-size:8px}html body .twin-viewer-loading>em{background:#1c3947;width:190px;height:3px;overflow:hidden}html body .twin-viewer-loading>em i{background:linear-gradient(90deg,#35dcb0,#45d5ff);height:100%;transition:width .2s;display:block;box-shadow:0 0 10px #42ddff}html body .twin-loading-orbit{width:52px;height:52px;margin-bottom:5px;animation:2.4s linear infinite spin;position:relative}html body .twin-loading-orbit i{border:1px solid #3caecb;border-radius:50%;position:absolute;inset:8px}html body .twin-loading-orbit i:nth-child(2){border-color:#42e0b0;inset:14px;transform:rotate(55deg)}html body .twin-loading-orbit i:nth-child(3){background:#69ecff;border:0;inset:22px;box-shadow:0 0 14px #4adfff}html body .twin-viewer-2d{background:linear-gradient(145deg,#10232f,#07131c)}html body .floorplan-fallback.interactive{opacity:1;pointer-events:auto;background:radial-gradient(circle at 45% 40%,#17384a,#07151f 72%);padding:58px 5% 48px;display:block;position:absolute;inset:0}html body .floorplan-heading{justify-content:space-between;align-items:flex-end;display:flex;position:absolute;top:18px;left:5%;right:5%}html body .floorplan-heading span{color:#dff8ff;font-size:11px;font-weight:700}html body .floorplan-heading small{color:#5c8da3;font-size:7px}html body .floorplan-fallback.interactive .floorplan-grid{aspect-ratio:auto;background-color:#0c2330;background-image:linear-gradient(90deg,#21485c30 1px,#0000 1px),linear-gradient(#21485c30 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:2px solid #39758b;width:100%;height:100%;position:relative;transform:none;box-shadow:0 22px 50px #0009,inset 0 0 45px #1e6b8430}html body .floorplan-fallback.interactive .floorplan-room{color:#d9f6ff;text-align:left;cursor:pointer;appearance:none;background:linear-gradient(145deg,#183b4c,#0f2a38);border:1px solid #397084;padding:7px;font:700 9px Inter,PingFang SC,sans-serif;transition:border-color .18s,filter .18s,opacity .18s;position:absolute;overflow:hidden;transform:none!important}html body .floorplan-fallback.interactive .floorplan-room:hover,html body .floorplan-fallback.interactive .floorplan-room:focus-visible{z-index:3;filter:brightness(1.25);border-color:#6be6ff;outline:1px solid #6be6ff}html body .floorplan-fallback.interactive .floorplan-room>span{z-index:2;font-size:9px;display:block;position:relative}html body .floorplan-fallback.interactive .floorplan-room>small{z-index:2;color:#6395aa;margin-top:2px;font-size:6px;display:block;position:relative}html body .floorplan-fallback.interactive .floorplan-room.selected{z-index:2;background:linear-gradient(145deg,#1d576e,#123747);border-color:#5ee6ff;box-shadow:inset 0 0 22px #2ac9f044,0 0 16px #2ad6ff35}html body .floorplan-fallback.interactive .floorplan-room.alert{background:linear-gradient(145deg,#5b2c29,#2b2529);border-color:#ff7559;box-shadow:inset 0 0 22px #ff4c3038}html body .floorplan-fallback.interactive .floorplan-room.isolated{opacity:.2;filter:saturate(.3)}html body .floorplan-fallback.interactive .furniture{width:auto;height:auto;box-shadow:none;background:#234f60;border:1px solid #71a9b8;border-radius:3px;display:block;position:absolute;bottom:auto;right:auto}html body .floorplan-fallback.interactive .furniture-main{width:42%;height:22%;top:43%;left:26%}html body .floorplan-fallback.interactive .furniture-side{background:#6a5542;border-color:#b48f66;width:18%;height:32%;bottom:12%;right:10%}html body .floorplan-fallback.interactive .room-kitchen .furniture-main,html body .floorplan-fallback.interactive .room-bath .furniture-main{background:#8d918a;border-color:#c2c7c0;width:72%;height:16%;top:25%;left:8%}html body .floorplan-fallback.interactive .room-bedroom .furniture-main,html body .floorplan-fallback.interactive .room-study .furniture-main{background:#687b78;border-color:#a4b8b2;width:48%;height:42%;top:32%;left:22%}html body .floorplan-fallback.interactive .room-balcony .furniture{height:54%;top:25%}html body .floorplan-fallback.interactive .room-sensor{background:#45e4b1;border-radius:50%;width:6px;height:6px;position:absolute;bottom:7px;right:7px;box-shadow:0 0 10px #42e4b1}html body .floorplan-fallback.interactive .alert .room-sensor{background:#ff694d;box-shadow:0 0 11px #ff543a}html body .floorplan-legend{color:#58879c;align-items:center;gap:5px;font-size:7px;display:flex;position:absolute;bottom:17px;left:5%;right:5%}html body .floorplan-legend i{background:#45e4b1;border-radius:50%;width:6px;height:6px}html body .floorplan-legend i:nth-of-type(2){background:#ff694d;margin-left:10px}html body .floorplan-legend b{color:#74cde5;margin-left:auto;font-weight:500}@media (width<=720px){html body .reset-demo:after{content:"↺";font-size:17px}html body .twin-model-metrics{gap:7px;padding:7px;bottom:9px;right:9px}html body .twin-model-metrics b{font-size:10px}html body .twin-model-metrics em{display:none}html body .floorplan-fallback.interactive{padding:48px 3% 38px}html body .floorplan-heading{top:13px;left:3%;right:3%}html body .floorplan-heading small{display:none}html body .floorplan-legend{bottom:12px;left:3%;right:3%}html body .floorplan-fallback.interactive .floorplan-room{padding:4px}html body .floorplan-fallback.interactive .floorplan-room>small{display:none}}@media (prefers-reduced-motion:reduce){html body .twin-loading-orbit{animation:none}html body .twin-viewer-loading>em i{transition:none}}html body .customer-demo-bar{z-index:12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#f4eee3;background:linear-gradient(115deg,#0c1c18ed,#142820ed 58%,#17251fed);border:1px solid #b68b4f80;align-items:center;gap:16px;min-height:68px;padding:11px 12px 11px 16px;display:flex;box-shadow:0 20px 55px #0009,inset 0 0 0 1px #f2c7790d}html body .customer-demo-bar:before{content:"";background:linear-gradient(#e9bd70,#84e4ba);width:3px;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 17px #84e4ba66}html body .demo-stage-copy{min-width:210px;max-width:300px}.demo-stage-copy>span{color:#e9bd70;letter-spacing:1.2px;text-transform:uppercase;font-size:7px;font-weight:800;display:block}.demo-stage-copy strong{letter-spacing:.3px;margin-top:3px;font-family:Georgia,Noto Serif SC,serif;font-size:15px;font-weight:600;display:block}.demo-stage-copy small{color:#9db0a8;margin-top:3px;font-size:7px;line-height:1.4;display:block}html body .demo-live-dot{background:#84e4ba;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block;box-shadow:0 0 10px #84e4ba}html body .demo-progress{gap:5px;min-width:80px;display:grid}.demo-progress b{color:#e9bd70;letter-spacing:1px;font-size:9px}.demo-progress>span{gap:4px;display:flex}.demo-progress i{background:#52645d;width:10px;height:2px;display:block}.demo-progress i.active{background:#84e4ba;box-shadow:0 0 6px #84e4ba66}html body .demo-simulated-label{color:#f2c879;white-space:nowrap;background:#4b39202e;border:1px solid #e9bd7060;align-items:center;gap:6px;padding:6px 8px;font-size:8px;font-weight:800;display:flex}.demo-simulated-label i{background:#e9bd70;border-radius:50%;width:5px;height:5px;box-shadow:0 0 8px #e9bd70}html body .demo-summary{gap:8px;display:flex}.demo-summary>span{background:#0b1915aa;border:1px solid #45635a;grid-template-columns:auto auto auto;align-items:center;gap:4px;min-width:120px;padding:6px 8px;display:grid}.demo-summary small{color:#91a79e;grid-column:1/-1;font-size:6px}.demo-summary b{color:#899b94;font-size:9px;text-decoration:line-through}.demo-summary i{color:#e9bd70;font-style:normal}.demo-summary strong{color:#84e4ba;font-size:10px}html body .demo-controls{align-items:center;gap:5px;margin-left:auto;display:flex}.demo-controls button,.customer-demo-bar.free button{color:#dce9e3;cursor:pointer;background:#10241dcc;border:1px solid #49655b;min-width:34px;height:34px;padding:0 9px;font:700 8px Inter,PingFang SC,sans-serif;transition:border-color .16s,background .16s,transform .16s}.demo-controls button:hover:not(:disabled),.customer-demo-bar.free button:hover{background:#17352a;border-color:#84e4ba;transform:translateY(-1px)}.demo-controls button:disabled{opacity:.3;cursor:default}.demo-controls button em{margin-left:5px;font-style:normal}.demo-controls .demo-primary,.customer-demo-bar.free .demo-primary{color:#0b1814;background:#e9bd70;border-color:#e9bd70;min-width:78px}.demo-controls .demo-primary span{margin-left:7px;font-size:13px}html body .customer-demo-bar.free{gap:8px;min-height:0;padding:9px 10px 9px 13px}.customer-demo-bar.free strong{font-size:9px}.customer-demo-bar.free .demo-primary{height:30px}@media (width<=900px){html body .customer-demo-bar{gap:9px;min-height:58px;padding:8px 8px 8px 11px}.demo-stage-copy{min-width:140px;max-width:190px}.demo-stage-copy small{display:none}.demo-stage-copy strong{font-size:12px}.demo-progress{min-width:48px}.demo-controls button{padding:0 7px}.demo-controls button em{display:none}.demo-summary>span{min-width:94px;padding:4px 5px}.demo-summary small{display:none}}@media (width<=620px){html body .customer-demo-bar{scrollbar-width:none;justify-content:flex-start;gap:8px;overflow-x:auto}.customer-demo-bar::-webkit-scrollbar{display:none}.demo-stage-copy{min-width:118px}.demo-progress{min-width:38px}.demo-progress>span{display:none}.demo-simulated-label{background:#2d2519ef;position:absolute;bottom:62px;left:11px}.demo-summary{justify-content:center;position:absolute;bottom:62px;left:8px;right:8px}.demo-controls{min-width:max-content;margin-left:0}.demo-controls button{height:32px}.demo-controls .demo-primary{min-width:64px}}:root{--twin-footer-safe:var(--global-footer-height,28px);--twin-nav-safe:0px;--twin-tour-safe:18px;--twin-tree-width:300px;--twin-detail-width:300px;--twin-kpi-safe:82px;--twin-tour-lane:90px}html body .app-shell{height:calc(100dvh - var(--twin-footer-safe));min-height:0;overflow-x:clip}html body .app-shell[data-sidebar-expanded=true]{grid-template-columns:226px minmax(0,1fr)}html body .sidebar{min-width:0;overflow:hidden auto}html body .workspace{min-width:0;min-height:0;overflow:hidden}.twin-workspace-layout{grid-template-columns:var(--twin-tree-width) minmax(0, 1fr) var(--twin-detail-width);background:#13283a;min-width:0;height:100%;min-height:0;display:grid;position:relative}.twin-workspace-layout[data-tree-open=false][data-detail-open=true]{grid-template-columns:0 minmax(0, 1fr) var(--twin-detail-width)}.twin-workspace-layout[data-tree-open=true][data-detail-open=false]{grid-template-columns:var(--twin-tree-width) minmax(0, 1fr) 0}.twin-workspace-layout[data-tree-open=false][data-detail-open=false]{grid-template-columns:0 minmax(0,1fr) 0}.twin-workspace-layout[data-detail-expanded=false][data-detail-open=true]{grid-template-columns:0 minmax(0, 1fr) min(240px, var(--twin-detail-width))}.twin-workspace-layout[data-detail-expanded=true][data-detail-open=true]{grid-template-columns:0 minmax(0, 1fr) var(--twin-detail-width)}.twin-tree-slot,.twin-detail-slot{min-width:0;min-height:0;overflow:hidden auto}.twin-tree-slot>*,.twin-detail-slot>*{width:100%;min-width:0;min-height:100%}html body .twin-tree-slot>.twin-left-stack{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}html body .twin-tree-content{flex:auto;min-height:0;overflow:hidden}html body .twin-tree-content>.tree-panel{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}html body .twin-tree-content>.tree-panel>.tree{flex:auto;min-height:0;overflow:auto}html body .twin-context-slot{background:#0a1827;border-top:1px solid #24445b;flex:0 42%;min-height:0;max-height:42%;overflow:auto}html body .twin-context-slot .context-detail-panel{min-height:0;overflow:visible}.twin-stage{grid-template-rows:minmax(0, 1fr) var(--twin-kpi-safe);min-width:0;min-height:0;display:grid;overflow:hidden}.smart-scene-trigger,.twin-realtime-info-trigger{color:#8db0bf;cursor:pointer;background:#0b1c2b;border:1px solid #244d65;border-radius:7px;align-items:center;gap:6px;min-height:32px;padding:0 11px;font-size:10px;display:inline-flex}.smart-scene-trigger:hover,.smart-scene-trigger:focus-visible,.twin-realtime-info-trigger:hover,.twin-realtime-info-trigger:focus-visible{color:#e4fbff;border-color:#46c9e9;outline:none}.smart-scene-trigger span{color:#56d9fa;font-size:14px}.twin-realtime-info-trigger i{background:#49dca4;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #49dca4}.twin-realtime-info-trigger[aria-expanded=true]{color:#f0fcff;background:#123348;border-color:#56d9fa}.model-realtime-wrap{align-items:center;display:inline-flex}html body .twin-realtime-info-panel{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;background:#071725ed;border:1px solid #2d647a;border-radius:12px;width:min(340px,100% - 36px);max-height:calc(100% - 36px);padding:8px;position:absolute;top:18px;right:18px;overflow:auto;box-shadow:0 22px 58px #000b}html body .twin-realtime-info-panel .twin-upper-right-dock{pointer-events:auto;gap:8px;width:100%;position:relative;top:auto;right:auto}html body .twin-realtime-info-panel .twin-upper-right-dock .alert-float,html body .twin-realtime-info-panel .twin-upper-right-dock .camera-panel,html body .twin-realtime-info-panel .twin-upper-right-dock .twin-vitals-grid{width:100%;max-width:none;position:relative;inset:auto}html body .twin-realtime-info-panel .twin-upper-right-dock .alert-float,html body .twin-realtime-info-panel .twin-upper-right-dock .camera-panel,html body .twin-realtime-info-panel .twin-upper-right-dock .twin-vital-card,html body .twin-realtime-info-panel .twin-realtime-reset{pointer-events:auto}html body .twin-realtime-info-panel .twin-upper-right-dock .camera-panel{display:grid}html body .twin-realtime-info-panel .twin-upper-right-dock .twin-vitals-grid{position:relative;bottom:auto;right:auto}html body .twin-realtime-reset{color:#a7c5d0;background:#0c2433;border-color:#315d70;width:100%;min-height:34px;margin:0}html body .twin-upper-right-dock{z-index:14;pointer-events:none;gap:8px;width:min(320px,100% - 36px);display:grid;position:absolute;top:18px;right:18px}html body .twin-upper-right-dock .alert-float,html body .twin-upper-right-dock .camera-panel,html body .twin-upper-right-dock .twin-vitals-grid{width:100%;max-width:none;position:relative;inset:auto;transform:none}html body .twin-upper-right-dock .alert-float{z-index:auto;pointer-events:auto}html body .twin-upper-right-dock .camera-panel{z-index:auto;display:grid}html body .twin-upper-right-dock .twin-vitals-grid{z-index:auto}.bim-model-action{color:#82a9b8;cursor:pointer;background:#0b1b29;border:1px solid #244257;border-radius:6px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:9px;display:inline-flex}.bim-model-action:hover,.bim-model-action:focus-visible{color:#dff9ff;border-color:#3aa9c7;outline:none}.bim-model-action span{color:#56d9fa;font-size:13px}html body .twin-vitals-grid{z-index:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;background:#081a28d9;border:1px solid #2b586c;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;padding:8px;display:grid;position:relative;box-shadow:0 16px 34px #0008}html body .twin-vital-card{background:linear-gradient(145deg,#0d2a3a,#0a1b29);border:1px solid #21485c;border-radius:7px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:62px;padding:9px 10px;display:grid}html body .twin-vital-icon{color:#66e0ff;border:1px solid #3a8398;border-radius:7px;place-items:center;width:27px;height:27px;font-size:15px;display:grid}html body .twin-vital-card small,html body .twin-vital-card strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}html body .twin-vital-card small{color:#7d9aaa;font-size:8px}html body .twin-vital-card strong{color:#f2fbff;margin-top:4px;font-size:17px;line-height:1}html body .twin-vital-card strong em{color:#7fa2b2;font-size:7px;font-style:normal;font-weight:500}html body .twin-vital-temperature .twin-vital-icon{color:#ffd27b;border-color:#806638}html body .twin-vital-air .twin-vital-icon{color:#71e4c0;border-color:#367d6c}html body .twin-vital-iot .twin-vital-icon{color:#7bd8ff;border-color:#397995}html body .twin-vital-bim .twin-vital-icon{color:#aeb7ff;border-color:#5d67a2}.twin-panel-edge{z-index:18;color:#54d7ff;cursor:pointer;background:#0b1c2be8;border:1px solid #24516a;width:28px;min-height:64px;position:absolute;top:50%;transform:translateY(-50%)}.twin-panel-edge-tree{border-left:0;left:0}.twin-panel-edge-detail{border-right:0;place-items:center;display:grid;right:0}.twin-mobile-panel-actions,.mobile-actions{display:none}.twin-view-toolbar{z-index:18;gap:6px;max-width:calc(100% - 320px);display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.twin-view-toolbar>[role=group]{background:#081825e8;border:1px solid #24516a;border-radius:8px;display:flex;overflow:hidden;box-shadow:0 10px 24px #0007}.twin-view-toolbar button{color:#7899ab;cursor:pointer;background:0 0;border:0;border-right:1px solid #173348;min-width:44px;min-height:44px;padding:5px 9px}.twin-view-toolbar button:last-child{border-right:0}.twin-view-toolbar button span,.twin-view-toolbar button em{display:block}.twin-view-toolbar button span{color:#75cce7;font-size:14px}.twin-view-toolbar button em{white-space:nowrap;margin-top:2px;font-size:8px;font-style:normal}.twin-view-toolbar button.active{color:#e5fbff;background:#123a4e}.customer-demo-bar{z-index:12;left:50%;bottom:var(--twin-tour-safe);width:min(940px,100% - 36px);position:absolute;transform:translate(-50%)}.customer-demo-bar.free{width:auto;left:auto;right:18px;transform:none}@media (width>=768px) and (width<=1599px){:root{--twin-tree-width:240px;--twin-detail-width:260px}.app-shell[data-sidebar-expanded=true]{grid-template-columns:minmax(200px,226px) minmax(0,1fr)}.app-shell[data-sidebar-expanded=true] .sidebar.expanded{width:100%}.workspace,.twin-workspace-layout,.twin-stage{min-width:0}.twin-view-toolbar{max-width:calc(100% - 220px)}.twin-view-toolbar button em{display:none}}@media (width<=767px){:root{--twin-footer-safe:var(--global-footer-height,42px);--twin-nav-safe:calc(61px + env(safe-area-inset-bottom));--twin-tour-safe:8px;--twin-tree-width:100%;--twin-detail-width:100%;--twin-kpi-safe:67px;--twin-tour-lane:64px}html body .app-shell{height:calc(100dvh - var(--twin-footer-safe));min-height:0;padding-bottom:var(--twin-nav-safe);overflow-x:clip}.twin-workspace-layout{height:auto;min-height:0;display:block}.twin-stage{height:calc(100dvh - var(--twin-footer-safe) - var(--twin-nav-safe) - 132px);grid-template-rows:minmax(0, 1fr) var(--twin-kpi-safe);min-height:420px}html body .twin-upper-right-dock{gap:6px;width:min(252px,100% - 20px);top:72px;right:10px}.smart-scene-trigger,.twin-realtime-info-trigger{justify-content:center;min-width:38px;min-height:38px;padding:0 8px;font-size:0}.smart-scene-trigger span{font-size:15px}.twin-realtime-info-trigger i{width:8px;height:8px}html body .twin-realtime-info-panel{width:min(252px,100% - 20px);max-height:calc(100% - 104px);padding:6px;top:66px;right:10px}html body .twin-realtime-info-panel .twin-upper-right-dock{gap:6px;width:100%;top:auto;right:auto}html body .twin-upper-right-dock .camera-panel{display:grid}html body .twin-upper-right-dock .twin-vitals-grid{width:100%;position:relative;bottom:auto;right:auto}html body .twin-vital-card{grid-template-columns:23px minmax(0,1fr);gap:6px;min-height:54px;padding:7px}html body .twin-vital-icon{width:23px;height:23px;font-size:12px}html body .twin-vital-card strong{font-size:14px}.bim-model-action{justify-content:center;min-width:36px;padding:0 7px;font-size:0}.twin-tree-slot,.twin-detail-slot{z-index:45;top:106px;right:0;bottom:calc(var(--twin-footer-safe) + var(--twin-nav-safe) + var(--twin-kpi-safe) + var(--twin-tour-lane) + 20px);background:#091522;width:100%;transition:transform .18s;position:fixed;left:0;transform:translateY(100%)}html body .twin-left-stack{height:auto;min-height:100%}html body .twin-context-slot{flex:none;max-height:none}.twin-tree-slot[data-open=true],.twin-detail-slot[data-open=true]{transform:translateY(0)}.twin-panel-edge{display:none}.twin-mobile-panel-actions,.mobile-actions{z-index:52;pointer-events:none;justify-content:flex-end;gap:6px;display:flex;position:absolute;inset:56px 10px auto}.twin-mobile-panel-actions button,.mobile-actions button{pointer-events:auto;background:#0b2435;border:1px solid #24526b;border-radius:22px;min-height:44px;padding:7px 12px}.twin-view-toolbar{scrollbar-width:none;justify-content:flex-start;max-width:none;top:8px;left:8px;right:8px;overflow-x:auto;transform:none}.twin-view-toolbar>[role=group]{flex:none}.twin-view-toolbar button{min-width:44px;min-height:44px;padding:5px 8px}.twin-view-toolbar button em{display:none}.customer-demo-bar{bottom:var(--twin-tour-safe);width:calc(100% - 16px)}.customer-demo-bar.free{width:auto;right:8px}}@media (prefers-reduced-motion:reduce){.twin-tree-slot,.twin-detail-slot{transition:none}}html body .workspace{position:relative}html body .scenario-bar{z-index:10;position:relative}html body .scenario-bar>.smart-scene-trigger,html body .scenario-bar>.view-summary,html body .scenario-bar>.bim-model-action,html body .scenario-bar>.model-realtime-wrap,html body .scenario-bar>.geo-locate,html body .twin-panel-edge-tree{display:none!important}html body .sidebar{scrollbar-width:none}html body .sidebar::-webkit-scrollbar{display:none}html body .live-alert-ticker{z-index:22;color:#ff8a78;min-width:0;height:34px;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:0 10px;display:flex;position:absolute;top:24px;left:250px;right:390px;overflow:hidden}html body .live-alert-ticker:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#e85447aa 18%,#e85447 50%,#e8544766 82%,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}html body .live-alert-label{white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:9px;font-weight:700;display:inline-flex}html body .live-alert-label i{color:#fff4ef;background:#e85447;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;font-style:normal;display:grid;box-shadow:0 0 12px #e8544766}html body .twin-alert-marquee{flex:auto;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}html body .twin-alert-track{gap:80px;min-width:max-content;animation:18s linear infinite twin-alert-scroll;display:inline-flex}html body .twin-alert-track span{color:#ffd2c8;white-space:nowrap;font-size:9px}@keyframes twin-alert-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (width>=768px){html body .workspace:not([data-active-module=twin]) .twin-stage{grid-template-rows:minmax(0,1fr)}html body .workspace:not([data-active-module=twin]) .module-overlay{max-height:none;inset:16px 18px}}html body .scenario-actions{z-index:23;align-items:center;gap:7px;display:flex;position:absolute;top:24px;right:18px}html body .scenario-action-button{color:#8db0bf;cursor:pointer;white-space:nowrap;background:#0b1c2b;border:1px solid #244d65;border-radius:7px;align-items:center;gap:5px;height:34px;min-height:34px;padding:0 10px;font-size:9px;display:inline-flex}html body .scenario-action-button:hover,html body .scenario-action-button:focus-visible{color:#e4fbff;border-color:#46c9e9;outline:none}html body .scenario-action-button>span{color:#56d9fa;font-size:13px}html body .scenario-action-button>i{background:#49dca4;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #49dca4}html body .scenario-action-live{display:inline-flex}html body .accordion-chevron{color:#6ae0c0;border:1px solid #32758a;border-radius:5px;flex:0 0 18px;justify-content:center;align-items:center;width:18px;height:18px;transition:transform .18s,border-color .18s,background .18s;display:inline-flex;position:relative}html body .accordion-chevron:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transform:translateY(-2px)rotate(45deg)}html body .accordion-chevron[data-open=true]{background:#12352f;border-color:#4cae9b}html body .accordion-chevron[data-open=true]:before{transform:translateY(2px)rotate(225deg)}html body .tree-row>.accordion-chevron{background:0 0;border:0;margin-right:1px}html body .tree-row>.accordion-chevron:before{width:5px;height:5px}html body .section-title>.accordion-chevron{margin-left:auto}@media (width>=768px) and (width<=1180px){html body .live-alert-ticker{left:238px;right:330px}html body .scenario-actions{gap:4px;right:10px}html body .scenario-action-button{padding:0 7px;font-size:8px}}@media (width<=767px){html body .workspace{grid-template-rows:64px 1fr!important}html body .workspace[data-active-module=twin]{grid-template-rows:128px 1fr!important}html body .scenario-bar{height:64px!important;min-height:64px!important;position:relative!important}html body .workspace[data-active-module=twin] .scenario-bar{height:128px!important;min-height:128px!important}html body .scenario-drop-wrap{position:absolute;top:8px;left:8px}html body .workspace[data-active-module=twin] .live-alert-ticker{height:34px;padding:0 7px;top:58px;left:10px;right:10px}html body .live-alert-label{gap:4px;font-size:8px}html body .live-alert-label i{width:16px;height:16px}html body .twin-alert-track span{font-size:8px}html body .workspace[data-active-module=twin] .scenario-actions{justify-content:flex-end;gap:5px;top:94px;left:8px;right:8px}html body .scenario-action-button{min-height:30px;padding:0 7px;font-size:8px}html body .scenario-action-button>span{font-size:11px}html body .workspace:not([data-active-module=twin]) .live-alert-ticker,html body .workspace:not([data-active-module=twin]) .scenario-actions{display:none!important}html body .twin-detail-slot{top:58px;right:0;bottom:calc(var(--twin-footer-safe) + var(--twin-nav-safe));border-left:1px solid #24516a;width:min(88vw,360px);left:auto;transform:translate(100%);box-shadow:-18px 0 40px #0008}html body .twin-detail-slot[data-open=true]{transform:translate(0)}html body .twin-panel-edge-detail{z-index:56;border-right:0;border-radius:10px 0 0 10px;place-items:center;width:28px;min-height:76px;position:fixed;top:50%;right:0;transform:translateY(-50%);box-shadow:-8px 0 24px #0007;display:grid!important}}@media (prefers-reduced-motion:reduce){html body .twin-alert-track{animation:none}}html body .twin-detail-slot>*{min-height:0}html body .operations-detail-panel{background:linear-gradient(#0a1928,#08131f);flex-direction:column;min-height:0;display:flex;overflow:hidden}html body .operations-detail-panel .panel-heading{background:linear-gradient(90deg,#0d2435,#0a1928);border-bottom-color:#21465b;flex:0 0 52px;height:52px;padding:0 14px}html body .operations-detail-panel .panel-heading button{color:#91b2c0;cursor:pointer;border:1px solid #2c5870;border-radius:8px;place-items:center;width:28px;height:28px;font-size:17px;line-height:1;display:grid!important}html body .operations-detail-panel .panel-heading button:hover,html body .operations-detail-panel .panel-heading button:focus-visible{color:#e6fbff;border-color:#4ed8f5;outline:none}html body .operations-detail-panel .panel-heading-actions{align-items:center;gap:6px;min-width:0;display:inline-flex}html body .operations-detail-panel .panel-heading.operations-panel-heading{justify-content:flex-end;height:36px;min-height:36px;padding:0 10px}html body .operations-detail-panel .panel-heading .panel-expand-toggle{color:#8ed8e8;white-space:nowrap;border-color:#2f6a7e;width:auto;min-width:58px;padding:0 8px;font-size:9px}html body .operations-detail-panel .panel-heading .panel-expand-toggle[aria-expanded=true]{color:#c9fff2;background:#12362f;border-color:#59d9c0}html body .operations-detail-panel:not(.details-expanded){align-self:start;height:auto;min-height:0}html body .operations-detail-panel:not(.details-expanded) .property-accordion{flex:none;overflow:visible}html body .operations-detail-panel.details-expanded{height:100%;min-height:100%}html body .operations-detail-panel .selected-card{background:linear-gradient(135deg,#0e2a3b,#0a1b2a);border:1px solid #1f485f;border-radius:11px;flex:none;margin:10px 12px;padding:10px}html body .operations-detail-panel .selected-card strong{font-size:16px}html body .operations-detail-panel .operations-direct-content{flex-direction:column;gap:10px;display:flex}html body .operations-detail-panel .operations-direct-section{background:#0b1d2c;border:1px solid #1b4056;border-radius:10px;margin:0;overflow:hidden}html body .operations-detail-panel .operations-direct-heading{color:#d9edf5;background:linear-gradient(90deg,#102b3d,#0b1d2c);border-bottom:1px solid #1b4056;align-items:center;min-height:46px;padding:0 11px;font-size:12px;display:flex}html body .operations-detail-panel .operations-direct-section>.device-list{margin:10px}html body .operations-detail-panel .operations-direct-section .device-list>.property-list{grid-column:1/-1;margin:0 0 7px}html body .operations-detail-panel .operations-direct-section>.simulated-action-strip{margin:10px}html body .operations-detail-panel .property-accordion{scrollbar-width:thin;flex:auto;min-height:0;padding:0 10px 12px;overflow:auto}html body .operations-detail-panel .property-section{background:#0b1d2c;border:1px solid #1b4056;border-radius:10px;margin:0 0 8px;overflow:hidden}html body .operations-detail-panel .property-section>.section-title{color:#d9edf5;cursor:pointer;background:linear-gradient(90deg,#102b3d,#0b1d2c);align-items:center;min-height:46px;margin:0;padding:0 11px;font-size:12px}html body .operations-detail-panel .property-section>.section-title:hover,html body .operations-detail-panel .property-section>.section-title:focus-within{color:#f1fcff;background:#123449}html body .operations-detail-panel .property-section>.property-list,html body .operations-detail-panel .property-section>.device-list{margin:0 10px 10px}html body .operations-detail-panel .property-list{border-color:#18394d;border-radius:8px;overflow:hidden}html body .operations-detail-panel .property-list div{align-items:center;min-height:34px;padding:7px 9px;font-size:10px}html body .operations-detail-panel .device-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}html body .operations-detail-panel .device-list button{background:linear-gradient(145deg,#102b3d,#0a1b2a);border-radius:9px;min-width:0;min-height:60px;padding:9px}html body .operations-detail-panel .device-list button:hover,html body .operations-detail-panel .device-list button:focus-visible{border-color:#42c7e6;outline:none}html body .operations-detail-panel .device-list button b{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}html body .operations-detail-panel .device-list button small{font-size:9px}html body .operations-detail-panel .simulated-action-strip{border-radius:9px;margin:10px}html body .operations-detail-panel .section-title{align-items:center}html body .operations-detail-panel .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 10px 10px}html body .operations-detail-panel .scene-grid button{border-radius:9px;min-height:58px;font-size:10px}html body .operations-detail-panel .scene-grid button span{font-size:15px}@media (width<=767px){html body .twin-workspace-layout[data-detail-open=true] .twin-mobile-panel-actions{display:none}html body .twin-detail-slot{height:auto;max-height:calc(100dvh - var(--twin-footer-safe) - 72px);bottom:auto;overflow:hidden}html body .operations-detail-panel .property-accordion{max-height:calc(100dvh - var(--twin-footer-safe) - 190px)}html body .twin-workspace-layout[data-detail-expanded=false] .twin-detail-slot{width:min(68vw,360px)}html body .twin-workspace-layout[data-detail-expanded=true] .twin-detail-slot{width:min(92vw,520px)}html body .module-overlay .overlay-head{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}html body .module-overlay .overlay-head>*{min-width:0}html body .module-overlay .overlay-head h2{white-space:normal;word-break:keep-all;overflow-wrap:normal;margin:3px 0 0}html body .admin-module .admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}html body .admin-module .admin-tabs button{white-space:normal;min-width:0;min-height:42px;padding:6px 8px;line-height:1.2}html body .app-shell{height:auto;min-height:100dvh;padding-bottom:calc(var(--twin-nav-safe) + var(--twin-footer-safe))}html body .workspace:not([data-active-module=twin]),html body .workspace:not([data-active-module=twin]) .content-grid.module-mode{height:auto;min-height:0;overflow:visible}html body .workspace:not([data-active-module=twin]) .twin-stage{height:auto;min-height:0;display:block;overflow:visible}html body .workspace:not([data-active-module=twin]) .canvas-wrap{height:auto;min-height:0;overflow:visible}html body .workspace:not([data-active-module=twin]) .content-grid.module-mode,html body .workspace:not([data-active-module=twin]) .twin-stage,html body .workspace:not([data-active-module=twin]) .canvas-wrap,html body .workspace:not([data-active-module=twin]) .module-overlay{width:100%;max-width:none}html body .workspace:not([data-active-module=twin]) .module-overlay{width:100%;max-width:none;max-height:none;margin:0;margin-bottom:calc(var(--twin-nav-safe) + var(--twin-footer-safe) + 14px);padding-left:14px;padding-right:14px;padding-bottom:calc(13px + var(--twin-nav-safe) + var(--twin-footer-safe));border-left:0;border-right:0;border-radius:0;position:relative;inset:auto;overflow:visible}}:root{--bg:#07111f;--panel:#0b1929;--line:#173047;--cyan:#39d6ff;--text:#e7f2f8;--muted:#7490a4;--orange:#ff7a51;--green:#4de3a5;--brand-pine:#0b1814;--brand-gold:#e9bd70;--brand-mint:#84e4ba;--brand-ivory:#f4eee3;--surface-shell:radial-gradient(circle at 52% 30%,#102a44 0,#07111f 38%,#050c16 100%);--surface-stage:#06111f;--surface-grid:#13283a;--surface-footer:#08130ff5;--control-bg:#0b2434;--control-border:#2e5a72;--control-text:#8fb4c6;--control-hover:#12384c}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;overflow:hidden}button{font:inherit;color:inherit}.app-shell{background:radial-gradient(circle at 52% 30%,#102a44 0,#07111f 38%,#050c16 100%);grid-template:64px 1fr/76px 1fr;min-height:100vh;display:grid}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#081321e8;grid-column:1/-1;align-items:center;gap:26px;padding:0 20px;display:flex}.brand{align-items:center;gap:12px;min-width:280px;display:flex}.brand strong{letter-spacing:.4px;font-size:17px}.brand small{color:#6f8ca0;letter-spacing:.6px;margin-top:3px;font-size:10px;display:block}.brand-mark{background:#0b2135;border:1px solid #1c7899;border-radius:7px;place-content:center;gap:2px;width:36px;height:36px;display:grid;transform:rotate(45deg)}.brand-mark span{background:#46d9ff;width:15px;height:3px;display:block;transform:rotate(-45deg)}.brand-mark span:nth-child(2){width:11px;margin-left:4px}.project-switcher{z-index:30;min-width:0;margin:auto;position:relative}.project-chip{color:#9db7c7;text-align:left;cursor:pointer;background:#0b1c2b;border:1px solid #24516a;border-radius:8px;align-items:center;gap:8px;width:min(520px,42vw);height:42px;padding:0 11px;display:flex}.project-chip i,.status-pill i{background:var(--green);width:7px;height:7px;box-shadow:0 0 12px var(--green);border-radius:50%;flex:none}.project-chip .tenant-name{color:#6f8ea1;white-space:nowrap;text-overflow:ellipsis;max-width:155px;font-size:9px;overflow:hidden}.project-chip strong{color:#e6f7ff;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;overflow:hidden}.project-chip em{color:#54d7ff;white-space:nowrap;border:1px solid #285370;margin-left:auto;padding:3px 6px;font-size:8px;font-style:normal}.project-chip>b{color:#5bbbd7}.project-popover{background:#081827f5;border:1px solid #28546d;border-radius:10px;width:min(620px,100vw - 32px);max-height:calc(100vh - 90px);padding:12px;position:absolute;top:calc(100% + 9px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 22px 60px #000a}.project-popover-head{border-bottom:1px solid #18384d;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:2px 3px 11px;display:grid}.project-popover-head span{color:#638398;font-size:8px}.project-popover-head strong{font-size:11px}.project-popover-head small{color:#4ecfeb;font-family:monospace;font-size:8px}.project-options{gap:7px;margin-top:10px;display:grid}.project-options>button{text-align:left;cursor:pointer;background:#0b1e2e;border:1px solid #183b50;border-radius:7px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px;display:grid}.project-options>button:hover,.project-options>button:focus-visible,.project-options>button.selected{background:#0e2b3d;border-color:#3196b8;outline:none}.project-options>button>i{color:#55dafe;background:#10384c;border-radius:7px;place-items:center;width:28px;height:28px;font-style:normal;display:grid}.project-card-copy,.project-card-copy strong,.project-card-copy small,.project-card-meta,.project-card-meta small,.project-card-meta em{display:block}.project-card-copy{min-width:0}.project-card-copy strong{font-size:11px}.project-card-copy small{color:#6b899c;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:8px;overflow:hidden}.project-card-meta{text-align:right}.project-card-meta>b{color:#59d7f4;font:9px monospace}.project-card-meta small{color:#6f8da0;margin-top:3px;font-size:7px}.project-card-meta em{color:#80a0b2;margin-top:4px;font-size:7px;font-style:normal}.project-popover>p{color:#607d90;margin:10px 3px 1px;font-size:8px}.top-actions{align-items:center;gap:9px;display:flex}.top-actions button{background:#0b1928;border:1px solid #1a3449;height:34px}.status-pill{color:#a7c1cf;align-items:center;gap:7px;padding:0 12px;font-size:11px;display:flex;border-radius:20px!important}.icon-btn{cursor:pointer;border-radius:8px;min-width:36px;font-size:12px}.notification{position:relative}.notification b{background:#f05d4f;border-radius:9px;padding:1px 4px;font-size:9px;position:absolute;top:-5px;right:-3px}.avatar{background:linear-gradient(135deg,#1b7494,#183452);border-radius:9px;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.sidebar{border-right:1px solid var(--line);background:#081321d9;flex-direction:column;gap:8px;padding:14px 8px;display:flex}.sidebar button{color:#607f93;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:57px;display:flex}.sidebar button em{white-space:nowrap;font-size:9px;font-style:normal}.sidebar button.active{color:#54dcff;background:linear-gradient(135deg,#12334a,#0c2439);box-shadow:inset 2px 0 #42d9ff}.workspace{grid-template-rows:50px 1fr;min-width:0;display:grid}.scenario-bar{border-bottom:1px solid var(--line);background:#091623b8;align-items:center;gap:18px;padding:0 14px;display:flex}.scenario-tabs{gap:5px;display:flex}.scenario-tabs button,.reset-demo{color:#7895a8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 13px;font-size:11px}.scenario-tabs button span{margin-right:6px}.scenario-tabs button.active{color:#dff8ff;background:#10283b;border-color:#24526b}.view-summary{align-items:center;gap:8px;margin-left:auto;font-size:10px;display:flex}.view-summary span{color:#658398;text-transform:uppercase}.reset-demo{border-color:#244257}.content-grid{background:#13283a;grid-template-columns:220px minmax(0,1fr) 278px;gap:1px;min-height:0;display:grid}.panel{background:#091522;min-height:0;overflow:auto}.panel-heading{border-bottom:1px solid var(--line);letter-spacing:.4px;justify-content:space-between;align-items:center;height:43px;padding:0 14px;font-size:11px;display:flex}.panel-heading button{background:0 0;border:0;font-size:20px;display:none}.tree-meta{border-bottom:1px solid #142b3d;padding:12px 14px}.tree-meta b{color:#4ad8ff;font-size:10px;display:block}.tree-meta small{color:#4d6d83;font-size:9px}.tree{padding:8px}.tree-row{color:#7997aa;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:7px;width:100%;height:34px;padding:0 8px;font-size:10px;display:flex}.tree-row i{color:#4a6a7d}.tree-row span{color:#4bbfe3}.tree-row b{color:#46677b;margin-left:auto;font-size:9px}.tree-row.level-1{padding-left:15px}.tree-row.level-2{padding-left:25px}.tree-row.level-3{cursor:pointer;padding-left:39px}.tree-row.level-3.active{color:#e3f9ff;background:#10364b}.asset-mini{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8px;margin:12px;padding-top:12px;display:grid}.asset-mini div{background:#0d1f30;padding:10px}.asset-mini small{color:#5d7a8d;font-size:9px;display:block}.asset-mini strong{margin-right:6px;font-size:18px}.asset-mini span{color:#43d4f8;font-size:8px}.canvas-wrap{background:#06111f;min-height:0;position:relative;overflow:hidden}.canvas-wrap canvas{display:block}.canvas-title{position:absolute;top:16px;left:18px}.canvas-title span{font-size:13px;display:block}.canvas-title small{color:#5c8196;margin-top:4px;font-size:9px;display:block}.model-badge{color:#59dbff;background:#0a1d2bcb;border:1px solid #20516b;padding:8px 10px;font-size:9px;position:absolute;top:15px;right:18px}.model-badge i{background:#4ce2a4;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.model-badge small{color:#567489;margin-top:3px;display:block}.sensor-float{background:#0a1b2bd9;border:1px solid #22455d;border-radius:5px;grid-template-columns:20px 1fr;min-width:105px;padding:7px 10px;display:grid;position:absolute}.sensor-float>span{color:#47d7ff;grid-row:1/3}.sensor-float b{font-size:12px}.sensor-float b em{font-size:7px;font-style:normal}.sensor-float small{color:#668397;font-size:8px}.temperature{top:35%;left:28%}.air{top:27%;right:27%}.alert-float{text-align:left;cursor:pointer;background:linear-gradient(90deg,#27171aef,#121b27ef);border:1px solid #88473d;align-items:center;gap:10px;width:min(500px,72%);padding:9px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.alert-float>i{background:#e95445;border-radius:50%;place-items:center;width:29px;height:29px;font-style:normal;display:grid}.alert-float span{min-width:0}.alert-float b,.alert-float small{display:block}.alert-float b{font-size:10px}.alert-float small{color:#8e7474;white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.alert-float strong{color:#ff8265;margin-left:auto;font-size:9px}.kpi-strip{border-top:1px solid var(--line);background:#091522;grid-template-columns:repeat(4,1fr);display:grid}.kpi{border-right:1px solid var(--line);padding:12px 16px;position:relative}.kpi>span{color:#658397;font-size:9px;display:block}.kpi strong{margin-top:4px;font-size:20px;display:block}.kpi strong small{color:#617e91;margin-left:4px;font-size:8px}.kpi em{font-size:8px;font-style:normal;position:absolute;bottom:15px;right:12px}.kpi.cyan em{color:#42d8ff}.kpi.green em{color:#45dfa2}.kpi.blue em{color:#7b9dff}.kpi.orange em{color:#ff805f}.selected-card{align-items:center;gap:10px;margin:12px;display:flex}.room-thumb{background:linear-gradient(135deg,#10364c,#081826);border:1px solid #23516a;flex-direction:column;justify-content:space-between;width:66px;height:55px;padding:6px;display:flex}.room-thumb span{color:#49d8ff;font-size:8px}.room-thumb b{font-size:9px}.selected-card small,.selected-card strong,.selected-card em{display:block}.selected-card small{color:#607f92;font-size:8px}.selected-card strong{margin:3px 0;font-size:13px}.selected-card em{color:#45dfa2;font-size:8px;font-style:normal}.selected-card em i{background:#45dfa2;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.property-list{border:1px solid #173247;margin:0 12px}.property-list div{border-bottom:1px solid #142c3e;justify-content:space-between;padding:8px;font-size:8px;display:flex}.property-list span{color:#5e7b8f}.property-list b{text-align:right;max-width:60%;font-size:8px}.property-list .mono{color:#73b9d3;font-family:monospace}.property-list .accent{color:#44dba1}.section-title{justify-content:space-between;margin:15px 12px 7px;font-size:9px;display:flex}.section-title b{color:#45d7ff;font-size:7px}.device-list{grid-template-columns:1fr 1fr;gap:6px;margin:0 12px;display:grid}.device-list button{text-align:left;cursor:pointer;background:#0b1d2d;border:1px solid #17364b;align-items:center;gap:7px;padding:7px;display:flex}.device-list button>span{color:#52d8fb}.device-list b,.device-list small{font-size:8px;display:block}.device-list small{color:#5e7b8f;margin-top:2px}.device-list button>i{background:#263f50;border-radius:8px;width:15px;height:8px;margin-left:auto;position:relative}.device-list button>i:after{content:"";background:#6f8797;border-radius:50%;width:5px;height:5px;position:absolute;top:1.5px;left:2px}.device-list button>i.on{background:#165b68}.device-list button>i.on:after{background:#45dcf9;left:8px}.scene-grid{grid-template-columns:repeat(4,1fr);gap:5px;margin:0 12px;display:grid}.scene-grid button{cursor:pointer;background:#0b1c2b;border:1px solid #17364b;padding:7px 2px;font-size:7px}.scene-grid button span{color:#48d8ff;margin-bottom:3px;font-size:13px;display:block}.demo-note{color:#536f81;gap:5px;margin:12px;font-size:8px;display:flex}.demo-note i{text-align:center;border:1px solid #36556a;border-radius:50%;width:13px;height:13px}.module-overlay{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:8;background:#091725f2;border:1px solid #21425a;padding:18px;position:absolute;inset:60px 28px 28px;overflow:auto}.overlay-head{justify-content:space-between;align-items:center;display:flex}.overlay-head small{color:#4fcff2;letter-spacing:1px;font-size:8px}.overlay-head h2{margin:4px 0 0;font-size:19px}.risk-tag,.saving-tag,.active-tag,.safe-tag{color:#ff8976;background:#4c221f;border-radius:3px;padding:6px 9px;font-size:8px}.saving-tag,.safe-tag{color:#4ce1a4;background:#103a32}.active-tag{color:#52d7ff;background:#12344a}.workflow{grid-template-columns:repeat(7,1fr);margin:20px 0;display:grid}.workflow div{text-align:center;color:#536f82;position:relative}.workflow div:after{content:"";background:#203c4f;width:80%;height:1px;position:absolute;top:10px;left:60%}.workflow div:last-child:after{display:none}.workflow i{border:1px solid #2a4a5e;border-radius:50%;place-items:center;width:21px;height:21px;margin:auto;font-size:8px;font-style:normal;display:grid}.workflow span{margin-top:5px;font-size:7px;display:block}.workflow .done{color:#4bdcff}.workflow .done i{background:#123f53;border-color:#38a4c6}.ai-grid{grid-template-columns:.8fr 1.2fr;gap:12px;display:grid}.diagnosis-card,.plan-list button,.workorder-card,.device-table{background:#0b1d2d;border:1px solid #193a50;padding:13px}.diagnosis-card small{color:#68889c;font-size:8px}.diagnosis-card h3{font-size:14px;line-height:1.5}.diagnosis-card p{color:#668295;font-size:8px}.diagnosis-card strong{color:#4ee0b0;font-size:9px}.plan-list{gap:7px;display:grid}.plan-list button{color:#7c98aa;text-align:left;align-items:center;gap:10px;display:flex;position:relative}.plan-list button.selected{background:#0d2b3d;border-color:#2785a6}.plan-list button>i{border:1px solid #315267;border-radius:50%;place-items:center;width:22px;height:22px;font-style:normal;display:grid}.plan-list button div{flex:1}.plan-list b,.plan-list span{display:block}.plan-list b{color:#ddecf4;font-size:9px}.plan-list span{margin-top:4px;font-size:7px}.plan-list strong{color:#5df}.plan-list em{color:#dffaff;background:#1b7088;padding:2px 4px;font-size:6px;font-style:normal;position:absolute;top:-5px;right:8px}.primary-action{float:right;color:#fff;cursor:pointer;background:#1591b5;border:0;margin-top:13px;padding:9px 14px;font-size:9px}.primary-action span{margin-left:12px}.energy-chart{background:linear-gradient(#12334622 1px,#0000 1px) 0 0/100% 25%;border-bottom:1px solid #29475b;align-items:flex-end;gap:5px;height:180px;margin-top:30px;display:flex}.energy-chart i{opacity:.7;background:linear-gradient(#3fdefd,#1d6f9a);flex:1;position:relative}.energy-chart i span{color:#607d91;font-size:6px;position:absolute;bottom:-18px}.energy-summary{gap:20px;margin-top:30px;display:flex}.energy-summary small{color:#607e91;font-size:8px;display:block}.workorder-card>div{justify-content:space-between;margin-bottom:14px;font-size:9px;display:flex}.progress-track{background:#102b3b;height:20px;position:relative}.progress-track i{background:#2ebee5;position:absolute;inset:0 auto 0 0}.progress-track span{position:absolute;top:4px;right:6px}.workorder-card li{color:#6b8799;padding:7px;font-size:9px}.workorder-card li.done{color:#4fd9b0}.audit-list{margin-top:20px}.audit-list>div{border-bottom:1px solid #183246;align-items:center;gap:12px;padding:10px;display:flex}.audit-list i{color:#4ed6fb;background:#12394d;border-radius:50%;place-items:center;width:24px;height:24px;font-style:normal;display:grid}.audit-list span{flex:1}.audit-list b,.audit-list small{font-size:9px;display:block}.audit-list small{color:#638094;margin-top:3px}.audit-list em{color:#4ddfa5;font-size:7px}.device-table{margin-top:18px}.device-table>div{border-bottom:1px solid #183246;grid-template-columns:1fr 1fr 1fr;padding:10px;font-size:9px;display:grid}.device-table span{color:#51d9fd}.device-table em{color:#4bdda4;font-style:normal}.mobile-nav{display:none}.model-loading{color:#638397;place-items:center;height:100%;font-size:10px;display:grid}.model-loading span{border:2px solid #183f55;border-top-color:#4bdcff;border-radius:50%;width:30px;height:30px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.content-grid{grid-template-columns:190px minmax(0,1fr) 245px}.brand{min-width:240px}.sensor-float{display:none}}@media (width<=720px){html,body{overflow:auto}.app-shell{display:block}.topbar{gap:8px;height:58px;padding:0 10px;position:sticky;top:0}.brand{flex:0 0 38px;min-width:0}.brand>div:last-child,.brand small,.status-pill,.notification,.view-summary{display:none}.project-switcher{flex:1;min-width:0;margin:0}.project-chip{width:100%;height:40px;padding:0 9px}.project-chip .tenant-name,.project-chip em{display:none}.project-chip strong{flex:1}.project-popover{width:auto;max-height:calc(100dvh - 132px);padding:10px;position:fixed;top:60px;left:8px;right:8px;transform:none}.project-options>button{grid-template-columns:28px minmax(0,1fr)}.project-card-meta{text-align:left;flex-wrap:wrap;grid-column:2;align-items:center;gap:7px;display:flex}.project-card-meta small,.project-card-meta em{margin:0}.workspace{display:block}.scenario-bar{height:48px;padding:0 8px}.scenario-tabs{flex:1;min-width:0;overflow:auto}.scenario-tabs button{white-space:nowrap;padding:7px 9px;font-size:9px}.reset-demo{margin-left:auto;font-size:0}.reset-demo:after{content:"↺";font-size:17px}.content-grid{background:#07111f;display:block}.panel-heading button{display:block}.canvas-title,.model-badge{display:none}.alert-float{width:92%;bottom:12px}.alert-float small{max-width:170px}.kpi{padding:9px}.kpi:nth-child(n+3){display:none}.kpi-strip{grid-template-columns:1fr 1fr}.module-overlay{padding:13px;inset:10px 10px 8px}.workflow{overflow:auto}.workflow div{min-width:62px}.ai-grid{grid-template-columns:1fr}.sidebar{display:none}.detail-panel{padding-bottom:20px}.mobile-actions button{background:#0b2435;border:1px solid #24526b;border-radius:18px;padding:7px 10px;font-size:8px}.mobile-nav{z-index:50;height:calc(61px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#081421;border-top:1px solid #1b3548;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#58778b;background:0 0;border:0;font-size:7px}.mobile-nav button span{margin-bottom:3px;font-size:16px;display:block}.mobile-nav button.active{color:#4bdcff}.scene-grid button{min-height:46px}.top-actions{gap:5px}.avatar{display:none}}html,body,.app-shell{max-width:100%;overflow-x:hidden}.project-trigger{min-height:44px}.module-mode{grid-template-columns:minmax(0,1fr)}.module-section-heading{color:#8aa7b8;margin:14px 0 5px;font-size:10px;font-weight:600}.overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.overview-grid article,.evidence-card,.state-card{background:#0a1c2b;border:1px solid #1c4056;border-radius:8px;min-width:0;padding:15px}.overview-grid small,.evidence-card>small,.state-card>small{color:#6f8fa2;font-size:9px;display:block}.overview-grid strong{color:#e6f8ff;margin:10px 0 6px;font-size:23px;display:block}.overview-grid span{color:#62bcd4;font-size:9px}.story-entry{text-align:left;cursor:pointer;background:linear-gradient(120deg,#0c2940,#102131);border:1px solid #285d77;border-radius:9px;justify-content:space-between;align-items:center;width:100%;min-height:92px;padding:15px;display:flex}.story-entry span,.story-entry small,.story-entry strong,.story-entry em{display:block}.story-entry small{color:#56d9fb;font-size:8px}.story-entry strong{color:#f0fbff;margin:6px 0;font-size:17px}.story-entry em{color:#89a5b5;font-size:10px;font-style:normal}.story-entry>b{color:#59dafb;font-size:11px}.event-analysis-grid{grid-template-columns:1.25fr 1fr .7fr;gap:10px;margin:13px 0;display:grid}.evidence-card>div{border-bottom:1px solid #17374a;justify-content:space-between;gap:10px;padding:9px 0;font-size:9px;display:flex}.evidence-card>div:last-child{border:0}.evidence-card span{color:#58d6f7;text-align:right}.state-card strong{color:#4bdda4;margin:14px 0 8px;font-size:20px;display:block}.state-card span{color:#7998a9;font-size:9px;line-height:1.6}.device-table>button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #183246;grid-template-columns:1fr 1fr 1fr;align-items:center;width:100%;min-height:48px;padding:10px;font-size:9px;display:grid}.device-table>button span{color:#51d9fd}.device-table>button em{color:#ef8a6a;font-style:normal}.device-table>button em.on{color:#4bdda4}.world-plans{max-height:44%;overflow:auto}.world-plans button>div small{color:#7897a9;margin:4px 0;font-size:8px;display:block}.audit-list>div{grid-template-columns:22px minmax(0,1fr) auto}.audit-list span{min-width:0}.audit-list em{word-break:break-all;text-align:right;max-width:230px}.mobile-more-menu{display:none}@media (width<=720px){html,body{overflow-x:hidden}.topbar{z-index:70}.project-trigger{height:44px}.project-popover{z-index:72}.overview-grid{grid-template-columns:1fr 1fr;gap:7px;margin:8px 0}.overview-grid article{padding:10px}.overview-grid strong{font-size:17px}.story-entry{min-height:82px;padding:11px}.story-entry em{max-width:220px}.event-analysis-grid{grid-template-columns:1fr;max-height:52%;overflow:auto}.event-analysis-grid article{padding:10px}.events-only .workflow,.world-only .workflow{margin-bottom:8px}.world-plans{max-height:42%;overflow:auto}.mobile-actions button,.mobile-nav button,.mobile-more-menu button{min-width:44px;min-height:44px}.mobile-more-menu{left:10px;right:10px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:65;background:#081827f5;border:1px solid #28546d;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid;position:fixed;box-shadow:0 18px 44px #000b}.mobile-more-menu button{color:#a8c6d6;text-align:left;background:#0b2334;border:1px solid #20475d;border-radius:8px;align-items:center;gap:9px;padding:8px 12px;display:flex}.mobile-more-menu button span{color:#54dafa;font-size:17px}.energy-chart{height:45%}.audit-list{max-height:74%;overflow:auto}.audit-list>div{grid-template-columns:20px minmax(0,1fr)}.audit-list em{text-align:left;grid-column:2;max-width:none}.module-overlay{overflow:auto}}@media (width<=390px){.module-overlay{padding:10px;inset:6px}.scenario-tabs button{min-height:44px}.overview-grid{grid-template-columns:1fr 1fr}.story-entry strong{font-size:14px}.story-entry>b{font-size:9px}.project-options>button{min-height:64px}.kpi{min-width:0}.kpi strong{font-size:17px}}@media (width<=720px){.icon-btn,.primary-action,.story-entry,.device-table>button,.project-trigger,.scenario-tabs button,.reset-demo,.panel-heading button{min-height:44px}.icon-btn,.panel-heading button{min-width:44px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.canvas-wrap canvas{z-index:1;position:relative}.canvas-title,.model-badge,.sensor-float,.alert-float{z-index:2}.plan-list button:disabled{cursor:not-allowed;opacity:.55}.plan-list button.selected:disabled{opacity:1}.simulated-action-strip{color:#ffd077;background:linear-gradient(90deg,#2a2117,#13202a);border:1px solid #8b6331;align-items:center;gap:8px;margin:12px;padding:8px;display:flex}.simulated-action-strip>i{background:#6d4a1f;border-radius:50%;place-items:center;width:24px;height:24px;font-style:normal;display:grid}.simulated-action-strip b,.simulated-action-strip small{display:block}.simulated-action-strip b{letter-spacing:.4px;font-size:9px}.simulated-action-strip small{color:#9b876d;margin-top:2px;font-size:7px}.simulated-action-strip.wide{margin:14px 0}.simulated-action-badge{color:#ffd27d;letter-spacing:.4px;background:#3b2916;border:1px solid #9b6a2e;border-radius:3px;align-items:center;gap:4px;padding:3px 6px;font-size:7px;font-style:normal;display:inline-flex}.approval-card,.execution-card,.completion-card{clear:both;background:linear-gradient(105deg,#0d2231,#101b28);border:1px solid #31536a;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.approval-card{background:linear-gradient(105deg,#2d2115,#111d27);border-color:#8c6130}.approval-card.review{display:block}.approval-card.review p{margin:7px 0}.approval-card h3,.execution-card h3,.completion-card h3{color:#f1f9fc;margin:0;font-size:11px}.approval-card p,.execution-card p,.completion-card p{color:#91a9b6;margin:4px 0 0;font-size:8px}.approval-card small{color:#9b876d;font-size:7px}.approval-person{background:linear-gradient(135deg,#b9792e,#5f3817);border-radius:10px;place-items:center;width:38px;height:38px;font-size:10px;font-style:normal;display:grid;box-shadow:0 0 18px #d6872930}.approval-card>div,.execution-card>div,.completion-card>div{flex:1}.execution-card{border-color:#26758b}.execution-card>i{color:#49ddff;border:1px solid #39d3f2;border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;animation:1.6s linear infinite spin;display:grid}.completion-card{background:linear-gradient(105deg,#102d28,#101d27);border-color:#2c8063}.completion-card>i{color:#8dffd1;background:#1e7859;border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;display:grid;box-shadow:0 0 18px #35d7983b}.completion-card button{color:#a5f8d5;cursor:pointer;background:#174d3d;border:1px solid #2f896b;padding:7px 10px;font-size:8px}.completion-card.closed h3{color:#8dffd1}.primary-action{align-items:center;gap:8px;display:flex}.primary-action .simulated-action-badge{margin-right:3px}.primary-action.stage-awaitingApproval{background:#b46d23}.primary-action:disabled{opacity:.5;cursor:not-allowed}.event-module{padding-bottom:64px}.event-module>.primary-action{margin-bottom:4px}.alert-float.resolved{background:linear-gradient(90deg,#12372bef,#101d27ef);border-color:#2b8065}.alert-float.resolved>i{background:#238c68}.alert-float.resolved strong{color:#6fe0b5}@media (width<=720px){.approval-card,.execution-card,.completion-card{gap:8px;padding:10px}.approval-card .simulated-action-badge{margin-top:-42px;position:absolute}.completion-card.closed{flex-wrap:wrap;align-items:flex-start}.completion-card.closed button{width:100%}.primary-action{float:none;justify-content:center;width:100%}.primary-action .simulated-action-badge{font-size:6px}.event-module{padding-bottom:18px}.simulated-action-strip{margin:9px}}.model-badge{font:inherit;text-align:left;cursor:pointer;border-radius:5px}.model-badge>b{color:#a8ecff;margin-top:5px;font-size:7px;font-weight:600;display:block}.model-badge:hover,.model-badge:focus-visible{background:#0c2b3d;border-color:#48d8ff;outline:none;box-shadow:0 0 0 2px #2ecded22}.bim-manager-backdrop{z-index:90;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020813d9;place-items:center;padding:74px 24px 24px 92px;display:grid;position:fixed;inset:0}.bim-manager{background:linear-gradient(145deg,#0a1a29,#07131f 68%);border:1px solid #2d607b;border-radius:12px;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1180px,100%);height:min(780px,100dvh - 100px);display:grid;overflow:hidden;box-shadow:0 32px 90px #000d}.bim-manager-head{background:#0a1c2bea;border-bottom:1px solid #19384c;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:15px 20px;display:flex}.bim-manager-head small{color:#54d9fa;letter-spacing:1.3px;font-size:8px}.bim-manager-head h2{margin:5px 0 3px;font-size:20px}.bim-manager-head p{color:#6d8a9d;margin:0;font-size:9px}.bim-runtime-badges{align-items:center;gap:10px;display:flex}.bim-runtime-badges>span{color:#83a8ba;border:1px solid #2f596d;border-radius:16px;max-width:300px;padding:7px 10px;font-size:8px}.bim-runtime-badges>span i{background:#f0a655;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 9px #f0a655}.bim-runtime-badges>span.connected i{background:#4ce2a4;box-shadow:0 0 9px #4ce2a4}.bim-runtime-badges>button{color:#aad4e5;cursor:pointer;background:#0c2638;border:1px solid #28516a;border-radius:8px;width:38px;height:38px;font-size:21px}.bim-runtime-badges>button:disabled{opacity:.35;cursor:not-allowed}.bim-manager-summary{background:#173449;border-bottom:1px solid #18374a;grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.bim-manager-summary article{background:#0a1b29;min-width:0;padding:12px 16px}.bim-manager-summary small,.bim-manager-summary span{color:#668699;font-size:8px;display:block}.bim-manager-summary strong{color:#e8f9ff;margin:5px 0 3px;font-size:20px;display:block}.bim-manager-summary span{color:#48c9e9}.bim-manager-grid{background:#19384b;grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);gap:1px;min-height:0;display:grid}.bim-import-pane,.bim-pipeline-pane{background:#081724;min-height:0;padding:14px 16px;overflow:auto}.bim-pane-title{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.bim-pane-title>span{font-size:11px;font-weight:700}.bim-pane-title>em{color:#4fd5f5;font-size:8px;font-style:normal}.bim-dropzone{text-align:center;background:radial-gradient(circle at 50% 0,#12384d66,#091b29);border:1px dashed #2f6984;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;min-height:145px;transition:all .2s;display:flex;position:relative}.bim-dropzone.dragging{background:#11384b;border-color:#52e0ff}.bim-dropzone.has-file{border-style:solid;border-color:#3194b4}.bim-dropzone input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.bim-file-icon{color:#63ddfa;background:#0e3347;border:1px solid #3a7894;border-radius:5px;place-items:end center;width:42px;height:49px;margin-bottom:7px;padding-bottom:6px;display:grid;position:relative}.bim-file-icon:after{content:"";background:#081724;border-bottom:1px solid #3a7894;border-left:1px solid #3a7894;width:13px;height:13px;position:absolute;top:-1px;right:-1px}.bim-file-icon i{background:#3f91ae;width:15px;height:1px;position:absolute;left:9px}.bim-file-icon i:first-child{top:20px}.bim-file-icon i:nth-child(2){top:25px}.bim-file-icon b{font-size:7px}.bim-dropzone>strong{white-space:nowrap;text-overflow:ellipsis;max-width:80%;font-size:11px;overflow:hidden}.bim-dropzone>small{color:#6c899a;margin-top:5px;font-size:8px}.bim-dropzone>button{color:#bfefff;cursor:pointer;background:#0d3b52;border:1px solid #2e7896;border-radius:5px;margin-top:10px;padding:7px 13px;font-size:8px}.bim-dropzone>button:disabled{opacity:.5}.bim-file-validation{color:#718fa0;background:#091a27;border:1px solid #203e51;border-radius:7px;min-height:63px;margin-top:9px;padding:9px 11px;font-size:8px}.bim-file-validation.valid{border-color:#236958}.bim-file-validation.valid>span{color:#4adfa6}.bim-file-validation.error{border-color:#723e3c}.bim-file-validation.error>span{color:#ff836f}.bim-file-validation dl{grid-template-columns:1fr 1fr 1.5fr;gap:8px;margin:8px 0 0;display:grid}.bim-file-validation dl>div{border-top:1px solid #1a3547;min-width:0;padding-top:6px}.bim-file-validation dt{color:#527184}.bim-file-validation dd{color:#a8c6d5;white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;overflow:hidden}.bim-import-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.bim-import-actions button,.activate-model{cursor:pointer;border-radius:5px;min-height:36px;padding:0 13px;font-size:8px}.bim-import-actions .secondary{color:#84a3b3;background:#0b1d2a;border:1px solid #294a5e}.bim-import-actions .primary,.activate-model{color:#f0fbff;background:linear-gradient(135deg,#1287aa,#176785);border:1px solid #189ac1}.bim-import-actions button:disabled{opacity:.45;cursor:not-allowed}.bim-import-actions button span,.activate-model span{margin-left:12px}.bim-pipeline{gap:6px;display:grid}.bim-pipeline>div{color:#607e90;background:#0a1c2a;border:1px solid #1b384b;border-radius:6px;align-items:center;gap:9px;min-height:42px;padding:7px 9px;display:flex}.bim-pipeline>div>i{border:1px solid #2a4b5f;border-radius:50%;place-items:center;width:25px;height:25px;font-size:8px;font-style:normal;display:grid}.bim-pipeline span{flex:1}.bim-pipeline b,.bim-pipeline small{display:block}.bim-pipeline b{font-size:8px}.bim-pipeline small{color:#536f80;margin-top:3px;font-size:6px}.bim-pipeline>div.done{color:#50dea9;border-color:#225b52}.bim-pipeline>div.done>i{background:#103c36;border-color:#3ecb9a}.bim-pipeline>div.active{color:#68e1ff;background:#0d2d3d;border-color:#2d8fac;box-shadow:inset 2px 0 #48d8fa}.bim-pipeline>div.active>i{border-color:#47cbea;animation:1s ease-in-out infinite bimPulse}.bim-pipeline>div.failed{color:#ff8d77;border-color:#78453e}.bim-pipeline-note{color:#648294;border:1px solid #203d4f;border-radius:6px;gap:8px;margin-top:9px;padding:8px;font-size:7px;display:flex}.bim-pipeline-note i{border:1px solid #376073;border-radius:50%;place-items:center;width:15px;height:15px;font-style:normal;display:grid}.bim-pipeline-note p{margin:1px 0}.bim-version-library{background:#091724;border-top:1px solid #1b3a4d;padding:12px 16px 15px;position:relative}.bim-version-table{border:1px solid #1e3c4f;border-radius:7px;overflow:hidden}.bim-version-table>div{border-bottom:1px solid #173347;grid-template-columns:.75fr 1.45fr .55fr .55fr .5fr 1fr .6fr;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-size:8px;display:grid}.bim-version-table>div:last-child{border-bottom:0}.bim-version-table .table-head{color:#607e90;background:#0d2637;min-height:27px;font-size:7px}.bim-version-table strong{color:#65ddf9}.bim-version-table span{white-space:nowrap;text-overflow:ellipsis;color:#8ca8b7;min-width:0;overflow:hidden}.bim-version-table em{color:#4bdda4;background:#10382f;border-radius:8px;width:max-content;padding:3px 6px;font-style:normal}.bim-version-table .archived{opacity:.64}.bim-version-table .archived em{color:#7c98a7;background:#1a2e3a}.activate-model{position:absolute;top:7px;right:16px}.activate-model i{background:#53e2ac;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 8px #53e2ac}@keyframes bimPulse{50%{box-shadow:0 0 0 5px #48d8fa22}}@media (width<=720px){.model-badge{display:none}.bim-manager-backdrop{place-items:stretch stretch;padding:0}.bim-manager{border:0;border-radius:0;width:100%;height:100dvh;display:block;overflow:auto}.bim-manager-head{z-index:3;min-height:68px;padding:10px 12px;position:sticky;top:0}.bim-manager-head h2{font-size:16px}.bim-manager-head p{white-space:nowrap;text-overflow:ellipsis;max-width:230px;overflow:hidden}.bim-runtime-badges>span{display:none}.bim-runtime-badges>button{min-width:44px;min-height:44px}.bim-manager-summary{grid-template-columns:1fr 1fr}.bim-manager-summary article{padding:9px 12px}.bim-manager-summary strong{font-size:17px}.bim-manager-grid{display:block}.bim-import-pane,.bim-pipeline-pane{padding:12px}.bim-file-validation dl{grid-template-columns:1fr}.bim-dropzone{min-height:160px}.bim-import-actions{z-index:2;background:#081724;padding:8px 0;position:sticky;bottom:0}.bim-import-actions button,.activate-model{min-height:44px}.bim-pipeline{grid-template-columns:1fr 1fr}.bim-pipeline>div{min-height:48px}.bim-version-library{padding:12px 12px 90px;overflow:auto}.bim-version-table{min-width:720px}.activate-model{z-index:4;width:calc(100% - 24px);position:fixed;inset:auto 12px 12px}.mobile-actions{max-width:calc(100vw - 20px);overflow:auto}.mobile-actions button{white-space:nowrap;min-height:44px}}.login-gate{z-index:50;background:radial-gradient(1200px 600px at 50% -10%,#0d2c40,#050d14 60%);place-items:center;display:grid;position:fixed;inset:0}.login-card{color:#d7ecf5;background:#081724;border:1px solid #1b3a4d;border-radius:12px;gap:10px;width:min(360px,100vw - 40px);padding:26px 24px;display:grid}.login-card .brand-mark{gap:4px;display:flex}.login-card .brand-mark span{background:#4fd5f5;border-radius:2px;width:8px;height:8px}.login-card .brand-mark span:nth-child(2){background:#2a9dc1}.login-card .brand-mark span:nth-child(3){background:#155e77}.login-card>small{color:#6c899a;margin-top:-6px;font-size:10px}.login-card label{color:#7fa2b3;gap:5px;font-size:10px;display:grid}.login-card input{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:38px;padding:0 10px;font-size:12px}.login-error{color:#ff836f;border:1px solid #723e3c;border-radius:7px;margin:0;padding:8px 10px;font-size:10px}.login-card button{color:#f0fbff;cursor:pointer;background:linear-gradient(135deg,#1287aa,#176785);border:0;border-radius:8px;min-height:40px;font-size:12px}.login-card button:disabled{opacity:.5}.fault-scripts{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.fault-scripts>span{color:#6c899a;width:100%;font-size:9px}.fault-scripts button{color:#9fd8ea;cursor:pointer;background:#0d2b3d;border:1px solid #2e5a72;border-radius:6px;min-height:28px;padding:0 10px;font-size:9px}.fault-scripts button.restore{color:#50dea9;border-color:#225b52}.admin-module{padding:16px 18px;overflow:auto}.admin-tabs{gap:6px;display:flex}.admin-tabs button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:30px;padding:0 14px;font-size:10px}.admin-tabs button.active{color:#d9f6ff;background:#0d3b52;border-color:#189ac1}.admin-error{color:#ff836f;border:1px solid #723e3c;border-radius:7px;margin:10px 0 0;padding:8px 10px;font-size:10px}.admin-notice{color:#50dea9;border:1px solid #225b52;border-radius:7px;margin:10px 0 0;padding:8px 10px;font-size:10px}.admin-kpis{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.admin-kpis article{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:9px;padding:10px 12px}.admin-kpis small{color:#6c899a;font-size:9px}.admin-kpis strong{color:#65ddf9;margin-top:4px;font-size:20px;display:block}.admin-grid{grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin-top:10px;display:grid}.admin-grid section{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:9px;padding:10px 12px}.admin-grid h3{color:#8fb4c6;margin:0 0 8px;font-size:10px}.admin-bars{align-items:flex-end;gap:6px;height:110px;display:flex}.admin-bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.admin-bars i{background:linear-gradient(#48d8fa,#176785);border-radius:3px 3px 0 0;width:100%;min-height:2px}.admin-bars small{color:#536f80;margin-top:4px;font-size:8px}.admin-grid ul{margin:0;padding:0;list-style:none}.admin-grid li{border-bottom:1px solid #14303f;justify-content:space-between;gap:8px;padding:5px 0;font-size:9px;display:flex}.admin-grid li:last-child{border-bottom:0}.admin-grid li b{color:#a8c6d5;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-grid li span{color:#65ddf9}.admin-create{grid-template-columns:1.2fr 1fr 1fr .8fr auto;gap:6px;margin-top:12px;display:grid}.admin-create input,.admin-create select{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:34px;padding:0 9px;font-size:10px}.admin-create button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:7px;min-height:34px;padding:0 14px;font-size:10px}.admin-users{border:1px solid #1e3c4f;border-radius:8px;margin-top:10px;overflow:hidden}.admin-users>div{border-bottom:1px solid #173347;grid-template-columns:1.3fr 1fr 1fr .6fr .6fr;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-size:9px;display:grid}.admin-users>div:last-child{border-bottom:0}.admin-users-head{color:#607e90;background:#0d2637}.admin-users span{text-overflow:ellipsis;white-space:nowrap;color:#a8c6d5;overflow:hidden}.admin-users span.on{color:#4bdda4}.admin-users span.off{color:#ff836f}.admin-users button{color:#9fd8ea;cursor:pointer;background:#0d2b3d;border:1px solid #2e5a72;border-radius:6px;justify-self:start;min-height:26px;padding:0 10px;font-size:9px}@media (width<=900px){.admin-kpis{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-create{grid-template-columns:1fr 1fr}.admin-users>div{grid-template-columns:1.2fr 1fr .8fr .8fr}}.agents-module{padding:16px 18px;overflow:auto}.agents-layout{grid-template-columns:230px 1fr;gap:10px;margin-top:12px;display:grid}.agents-roster{align-content:start;gap:8px;display:grid}.agents-roster button{text-align:left;cursor:pointer;background:#0a1c2a;border:1px solid #1b3a4d;border-radius:9px;padding:10px 12px}.agents-roster button.active{background:#0d3b52;border-color:#189ac1}.agents-roster b{color:#d9f6ff;font-size:11px;display:block}.agents-roster small{color:#6c899a;margin-top:3px;font-size:8px;display:block}.agents-chat{flex-direction:column;gap:8px;min-height:320px;display:flex}.agents-thread{background:#081724;border:1px solid #1b3a4d;border-radius:9px;flex-direction:column;flex:1;gap:8px;padding:10px;display:flex;overflow:auto}.agents-msg{border-radius:9px;max-width:82%;padding:8px 10px;font-size:10px}.agents-msg.user{color:#d9f6ff;background:#0d3b52;align-self:flex-end}.agents-msg.agent{color:#a8c6d5;background:#0a1c2a;border:1px solid #1b3a4d;align-self:flex-start}.agents-msg p{margin:0}.agents-empty{color:#536f80;margin:auto;font-size:9px}.agents-proposal{border-top:1px dashed #1b3a4d;align-items:center;gap:6px;margin-top:7px;padding-top:7px;display:flex}.agents-proposal span{color:#8fb4c6;flex:1}.agents-proposal button{cursor:pointer;border-radius:6px;min-height:24px;padding:0 10px;font-size:9px}.agents-proposal button.ok{color:#50dea9;background:#103c36;border:1px solid #225b52}.agents-proposal button.no{color:#ff836f;background:#2a1a19;border:1px solid #5a3a38}.agents-proposal em{font-size:9px;font-style:normal}.agents-proposal em.ok{color:#50dea9}.agents-proposal em.no{color:#ff836f}.agents-presets{flex-wrap:wrap;gap:6px;display:flex}.agents-presets button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:26px;padding:0 10px;font-size:9px}.agents-input{gap:6px;display:flex}.agents-input input{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;flex:1;min-height:34px;padding:0 10px;font-size:10px}.agents-input button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:7px;min-height:34px;padding:0 16px;font-size:10px}@media (width<=900px){.agents-layout{grid-template-columns:1fr}.agents-roster{grid-template-columns:1fr 1fr 1fr}}.scene-editor-toggle{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:6px;padding:3px 8px;font-size:9px}.custom-scene-row{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:8px;align-items:center;gap:6px;margin-top:6px;padding:7px 9px;display:flex}.custom-scene-row span{color:#a8c6d5;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}.custom-scene-row small{color:#536f80;font-size:8px}.custom-scene-row button{color:#9fd8ea;cursor:pointer;background:#0d2b3d;border:1px solid #2e5a72;border-radius:6px;min-height:24px;padding:0 9px;font-size:9px}.custom-scene-row button.danger{color:#ff836f;border-color:#5a3a38}.scene-editor{border:1px dashed #23506a;border-radius:9px;gap:6px;margin-top:8px;padding:9px;display:grid}.scene-editor>input{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:30px;padding:0 9px;font-size:10px}.scene-step-row{grid-template-columns:1.2fr .8fr .6fr;gap:6px;display:grid}.scene-step-row select,.scene-step-row input{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:6px;min-height:28px;padding:0 7px;font-size:9px}.scene-editor-actions{justify-content:flex-end;gap:6px;display:flex}.scene-editor-actions button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:6px;min-height:28px;padding:0 12px;font-size:9px}.rules-module{padding:16px 18px;overflow:auto}.rules-list{gap:8px;margin-top:12px;display:grid}.rule-row{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;display:flex}.rule-toggle{cursor:pointer;background:#0d2b3d;border:1px solid #2e5a72;border-radius:10px;flex:none;width:34px;height:18px;position:relative}.rule-toggle:after{content:"";background:#536f80;border-radius:50%;width:12px;height:12px;transition:all .2s;position:absolute;top:2px;left:2px}.rule-toggle.on{background:#103c36;border-color:#225b52}.rule-toggle.on:after{background:#50dea9;left:18px}.rule-copy{flex:1;min-width:0}.rule-copy b{color:#d9f6ff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.rule-copy small{color:#6c899a;margin-top:3px;font-size:8px;display:block}.rule-row .danger{color:#ff836f;cursor:pointer;background:#2a1a19;border:1px solid #5a3a38;border-radius:6px;min-height:26px;padding:0 10px;font-size:9px}.rule-editor{grid-template-columns:1.4fr 1fr .5fr .7fr 1fr .7fr .7fr auto;gap:6px;margin-top:12px;display:grid}.rule-editor input,.rule-editor select{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:32px;padding:0 8px;font-size:9px}.rule-editor button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:7px;min-height:32px;padding:0 14px;font-size:10px}.report-actions{gap:6px;margin-top:10px;display:flex}.report-actions button{color:#9fd8ea;cursor:pointer;background:#0d2b3d;border:1px solid #2e5a72;border-radius:7px;min-height:30px;padding:0 14px;font-size:9px}@media (width<=900px){.rule-editor{grid-template-columns:1fr 1fr}}.ui-scale-v2{--fs-base:14px}.app-shell{font-size:14px}.topbar{min-height:64px;padding:0 20px}.topbar .brand strong{font-size:17px}.topbar .brand small{margin-top:2px;font-size:11px}.topbar .project-chip strong{font-size:14px}.topbar .project-chip small{font-size:11px}.topbar .status-pill{min-height:34px;font-size:12px}.sidebar{width:86px}.sidebar button{gap:6px;min-height:64px}.sidebar button span{font-size:18px}.sidebar button em{letter-spacing:.02em;font-size:11px}.workspace{padding:16px 20px}.scenario-bar{min-height:52px}.scenario-tabs button{min-height:38px;padding:0 16px;font-size:13px}.view-summary strong{font-size:13px}.reset-demo{min-height:34px;font-size:12px}.kpi-strip{gap:10px}.kpi{border-radius:12px;padding:14px 16px}.kpi span,.kpi strong small{font-size:11px}.module-overlay{border-radius:14px}.module-overlay .overlay-head h2{font-size:20px}.module-section-heading{margin:14px 0 8px;font-size:13px}.overview-grid{gap:10px}.overview-grid article{border-radius:12px;padding:14px 16px}.overview-grid article small{font-size:11px}.overview-grid article span{font-size:10px}.device-table{grid-template-columns:repeat(3,1fr);gap:8px}.device-table button{border-radius:10px;min-height:56px;padding:10px 12px}.device-table button b{font-size:12px}.scene-grid button{min-height:44px;font-size:12px}.scene-grid button span{font-size:14px}.primary-action{border-radius:10px;min-height:46px;font-size:14px}.workflow>div span{font-size:10px}.workflow>div i{width:26px;height:26px;font-size:11px}.event-analysis-grid article{padding:14px}.event-analysis-grid small{font-size:10px}.device-list button b{font-size:12px}.device-list button small,.property-list div span{font-size:11px}.property-list div b,.section-title span{font-size:12px}.audit-list>div{padding:10px 12px}.admin-create input,.admin-create select{min-height:38px;font-size:12px}.rule-editor input,.rule-editor select{min-height:36px;font-size:11px}.agents-input input{min-height:40px;font-size:12px}.login-card{width:min(420px,100vw - 40px);padding:32px 28px}.login-card>strong{font-size:20px}.login-card input{min-height:44px;font-size:14px}.login-card button{min-height:46px;font-size:14px}.vitals-grid article strong{font-size:22px}.spark-card{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;margin-top:10px;padding:12px 14px}.spark-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.spark-head small{color:#6c899a;font-size:10px}.spark-head b{color:#65ddf9;font-size:14px}.spark-card svg{width:100%;height:56px;display:block}.spark-line{fill:none;stroke:#48d8fa;stroke-width:1.2px;vector-effect:non-scaling-stroke}.spark-fill{fill:#48d8fa1f;stroke:none}.event-feed{gap:6px;margin:12px 0;display:grid}.event-feed-row{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;display:flex}.event-feed-row>i{color:#9fd8ea;border:1px solid #2e5a72;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:11px;font-style:normal;display:grid}.event-feed-row.sev-warning>i{color:#ffd479;border-color:#8a6a2a}.event-feed-row.sev-critical>i{color:#ff836f;border-color:#7a3a34}.event-feed-row>span{flex:1;min-width:0}.event-feed-row b{color:#d9f6ff;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.event-feed-row small{color:#6c899a;margin-top:2px;font-size:10px;display:block}.event-feed-row>em{color:#8fb4c6;font-size:10px;font-style:normal}.wo-queue{gap:8px;margin-top:8px;display:grid}.wo-row{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;grid-template-columns:auto 1fr 140px;align-items:center;gap:12px;padding:10px 12px;display:grid}.wo-row>div b{color:#d9f6ff;font-size:12px;display:block}.wo-row>div small{color:#6c899a;margin-top:2px;font-size:10px;display:block}.wo-status{text-align:center;border-radius:8px;min-width:56px;padding:4px 8px;font-size:10px}.wo-pending{color:#ffd479;background:#3a2a12}.wo-doing{color:#68e1ff;background:#12303a}.wo-done{color:#50dea9;background:#103c36}.wo-row .progress-track{margin:0}.fleet-live{grid-template-columns:repeat(5,1fr)}.bim-registry{border:1px solid #1e3c4f;border-radius:8px;margin-top:12px;overflow:hidden}.bim-head,.bim-row{grid-template-columns:1.6fr 1fr .6fr .8fr .6fr;align-items:center;gap:8px;min-height:38px;padding:0 10px;font-size:11px;display:grid}.bim-head{color:#607e90;background:#0d2637}.bim-row{color:#a8c6d5;border-top:1px solid #173347}.bim-row .on{color:#4bdda4}.bim-row .off{color:#7c98a7}.ai-summary{color:#bfeadf;background:linear-gradient(135deg,#0d2b26,#0a1c2a);border:1px solid #23695a;border-radius:10px;margin:12px 0 0;padding:12px 14px;font-size:12px;line-height:1.7}.ai-summary>b{color:#50dea9;background:#103c36;border-radius:6px;margin-right:8px;padding:2px 8px;font-size:10px;display:inline-block}@media (width<=900px){.fleet-live{grid-template-columns:repeat(2,1fr)}.wo-row{grid-template-columns:auto 1fr}.wo-row .progress-track{display:none}.sidebar{width:64px}}.wall-overlay{z-index:80;cursor:pointer;text-align:center;background:radial-gradient(1400px 800px at 50% -10%,#0d2c40,#04101c 65%);border:0;flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex;position:fixed;inset:0}.wall-clock strong{color:#eaf7ff;letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:96px;font-weight:200}.wall-clock small{color:#6c899a;margin-top:6px;font-size:16px;display:block}.wall-title b{color:#9fd8ea;font-size:26px;display:block}.wall-title span{color:#536f80;margin-top:6px;font-size:13px;display:block}.wall-vitals{grid-template-columns:repeat(6,1fr);gap:14px;width:min(1100px,92vw);display:grid}.wall-vitals article{background:#0a1c2acc;border:1px solid #1b3a4d;border-radius:14px;padding:18px 10px}.wall-vitals small{color:#6c899a;font-size:12px;display:block}.wall-vitals strong{color:#65ddf9;font-variant-numeric:tabular-nums;margin-top:8px;font-size:34px;display:block}.wall-status{color:#50dea9;background:#103c36;border:1px solid #225b52;border-radius:999px;align-items:center;gap:10px;padding:12px 22px;font-size:15px;display:flex}.wall-status>i{background:#50dea9;border-radius:50%;width:10px;height:10px;box-shadow:0 0 12px #50dea9}.wall-status.alert{color:#ff836f;background:#2a1a19;border-color:#7a3a34}.wall-status.alert>i{background:#ff836f;box-shadow:0 0 12px #ff836f}.wall-exit-hint{color:#3d5a6b;font-size:11px;position:absolute;bottom:22px}@media (width<=900px){.wall-vitals{grid-template-columns:repeat(3,1fr)}.wall-clock strong{font-size:64px}}.scene-timeline{background:linear-gradient(90deg,#0d2b3d,#0a1c2a);border:1px solid #1b3a4d;border-radius:8px;height:34px;margin:10px 2px 2px;position:relative}.scene-timeline>i{background:#2e5a72;width:2px;height:10px;position:absolute;top:8px}.scene-timeline .tl-step{flex-direction:column;align-items:center;gap:3px;display:flex;position:absolute;top:4px;transform:translate(-50%)}.scene-timeline .tl-step i{background:#48d8fa;border-radius:50%;width:10px;height:10px;box-shadow:0 0 8px #48d8fa66}.scene-timeline .tl-step small{color:#8fb4c6;white-space:nowrap;font-size:8px}.whatif-panel{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;gap:10px;margin:12px 0;padding:14px;display:grid}.whatif-head{justify-content:space-between;align-items:center;display:flex}.whatif-head small{color:#8fb4c6;font-size:12px;font-weight:700}.whatif-head b{color:#536f80;font-size:10px;font-weight:400}.whatif-panel label{color:#a8c6d5;gap:6px;font-size:11px;display:grid}.whatif-panel input[type=range]{accent-color:#48d8fa;width:100%;height:22px}.whatif-results{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.whatif-results article{background:#081724;border:1px solid #14303f;border-radius:10px;padding:10px}.whatif-results small{color:#6c899a;font-size:10px}.whatif-results strong{color:#65ddf9;margin-top:4px;font-size:20px;display:block}.whatif-results em{font-size:10px;font-style:normal}.whatif-results em.good{color:#50dea9}.whatif-results em.bad{color:#ff836f}.login-academy{color:#8fb4c6;cursor:pointer;background:0 0;border:1px dashed #2e5a72;border-radius:8px;min-height:40px;font-size:12px}.academy-pill{z-index:60;color:#f0fbff;cursor:pointer;background:linear-gradient(135deg,#1287aa,#176785);border:1px solid #189ac1;border-radius:999px;min-height:44px;padding:0 18px;font-size:13px;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 24px #0006}.academy-dock{z-index:70;background:#081724;border-left:1px solid #1b3a4d;flex-direction:column;width:min(400px,94vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-16px 0 40px #00000073}.academy-head{border-bottom:1px solid #1b3a4d;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.academy-head small{color:#6c899a;font-size:10px;display:block}.academy-head strong{color:#d9f6ff;font-size:17px}.academy-head button{color:#ff836f;cursor:pointer;background:#2a1a19;border:1px solid #5a3a38;border-radius:7px;min-height:30px;padding:0 12px;font-size:10px}.academy-tabs{gap:6px;padding:12px 18px 0;display:flex}.academy-tabs button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:8px 8px 0 0;flex:1;min-height:34px;font-size:11px}.academy-tabs button.active{color:#d9f6ff;background:#0d3b52;border-color:#189ac1}.academy-body{flex-direction:column;flex:1;gap:8px;padding:14px 18px;display:flex;overflow:auto}.academy-unit{text-align:left;cursor:pointer;background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.academy-unit>i{color:#65ddf9;font-size:16px}.academy-unit span{flex:1;min-width:0}.academy-unit b{color:#d9f6ff;font-size:12px;display:block}.academy-unit small{color:#6c899a;margin-top:3px;font-size:10px;display:block}.academy-unit em{color:#50dea9;font-size:11px;font-style:normal}.academy-unit-detail{flex-direction:column;gap:10px;display:flex}.academy-back{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:7px;align-self:flex-start;min-height:28px;padding:0 10px}.academy-unit-detail h3{color:#d9f6ff;font-size:16px}.academy-unit-detail p{color:#8fb4c6;font-size:11px}.academy-points-title{color:#6c899a;font-size:10px}.academy-unit-detail ul{color:#a8c6d5;gap:6px;margin:0;padding-left:18px;font-size:11px;display:grid}.academy-start{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:9px;min-height:40px;font-size:12px}.tour-layer{z-index:90;pointer-events:none;position:fixed;inset:0}.tour-spot{pointer-events:none;border:2px solid #48d8fa;border-radius:10px;transition:all .25s;position:fixed;box-shadow:0 0 0 9999px #04101cb8,0 0 18px #48d8fa88}.tour-card{pointer-events:auto;background:#0d2b3d;border:1px solid #189ac1;border-radius:12px;width:360px;padding:14px 16px;position:fixed;box-shadow:0 16px 40px #00000080}.tour-card small{color:#68e1ff;font-size:10px}.tour-card p{color:#e8f7fd;margin:8px 0 10px;font-size:13px;line-height:1.6}.tour-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.tour-actions .cancel{color:#ff836f;cursor:pointer;background:#2a1a19;border:1px solid #5a3a38;border-radius:7px;width:28px;min-height:28px}.tour-actions .next{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;min-height:32px;padding:0 14px;font-size:11px}.tour-actions em{color:#6c899a;font-size:10px;font-style:normal}.exam-block{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.exam-block h4{color:#9fd8ea;margin:0;font-size:12px}.exam-q{background:#081724;border:1px solid #14303f;border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.exam-q b{color:#d9f6ff;font-size:11px}.exam-q label{color:#a8c6d5;cursor:pointer;align-items:center;gap:6px;font-size:11px;display:flex}.exam-task{background:#081724;border:1px solid #14303f;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.exam-task span{color:#a8c6d5;font-size:11px}.exam-task button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:7px;min-height:28px;padding:0 12px;font-size:10px}.exam-task button:disabled{opacity:.4;cursor:not-allowed}.exam-task em.ok{color:#50dea9;font-style:normal}.pass-line{color:#50dea9;font-size:12px}.fail-line{color:#ff836f;font-size:12px}.academy-note{color:#6c899a;font-size:10px}.academy-cert{text-align:center;background:linear-gradient(135deg,#0d2b26,#0a1c2a);border:2px solid #225b52;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:26px 18px;display:flex}.academy-cert small{color:#8fb4c6;font-size:11px}.academy-cert strong{color:#50dea9;letter-spacing:.06em;font-size:22px}.academy-cert em{color:#6c899a;font-size:10px;font-style:normal}.academy-cert button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;min-height:36px;padding:0 16px;font-size:11px}.academy-dash{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;gap:8px;padding:10px;display:grid}.dash-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.dash-row+.dash-row{grid-template-columns:repeat(3,1fr)}.dash-stat{flex-direction:column;gap:3px;min-width:0;display:flex}.dash-stat small{color:#6c899a;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.dash-stat b{color:#d9f6ff;white-space:nowrap;font-size:14px}.dash-bar{background:#14303f;border-radius:3px;height:5px;display:block;overflow:hidden}.dash-bar i{background:linear-gradient(90deg,#189ac1,#50dea9);border-radius:3px;height:100%;display:block}.badge-wall{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.badge-item{color:#a8c6d5;white-space:nowrap;background:#0b2434;border:1px solid #23506a;border-radius:999px;align-items:center;gap:4px;min-height:24px;padding:0 8px;font-size:9px;display:flex}.badge-item i{font-style:normal}.badge-item.locked{opacity:.35;filter:grayscale()}.recent-list{flex-direction:column;gap:4px;margin-top:2px;display:flex}.recent-list>small{color:#6c899a;font-size:9px}.recent-list>p{color:#536f80;margin:0;font-size:10px}.recent-list>div{grid-template-columns:16px 1fr 48px;align-items:center;gap:6px;font-size:10px;display:grid}.recent-list>div i{color:#50dea9;font-style:normal}.recent-list>div span{color:#a8c6d5;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.recent-list>div em{color:#536f80;text-align:right;font-style:normal}.academy-unit.unit-locked{opacity:.45;cursor:not-allowed}.academy-lock-hint{color:#ffd479;background:#231a0980;border:1px solid #8a6a2a;border-radius:8px;margin:0 0 8px;padding:8px 10px;font-size:10px}.exam-timer{color:#ffd479;align-items:center;gap:6px;font-size:11px;display:inline-flex}.exam-timer b{font-size:14px}.exam-timer-note{color:#ffd479;font-size:10px;font-style:normal}.review-list{background:#1d0e08;border:1px solid #8a3a2a;border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.review-list h4{color:#ff836f;margin:0;font-size:11px}.review-list>div{flex-direction:column;gap:2px;display:flex}.review-list b{color:#d9f6ff;font-size:10px}.review-list em{color:#50dea9;font-size:10px;font-style:normal}.academy-retake{margin-top:4px;color:#ffd479!important;background:#231a0966!important;border-color:#8a6a2a!important}.tutor-body{gap:10px}.tutor-thread{flex-direction:column;flex:1;gap:8px;display:flex;overflow:auto}.tutor-presets{flex-wrap:wrap;gap:6px;display:flex}.tutor-presets button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:26px;padding:0 10px;font-size:10px}.login-scenarios{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.login-scenarios button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:8px;min-height:34px;font-size:10px}.login-scenarios button.active{color:#d9f6ff;background:#0d3b52;border-color:#189ac1}.energy-sources{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:12px;display:grid}.energy-sources article{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;flex-direction:column;gap:6px;padding:12px;display:flex}.energy-sources small{color:#6c899a;font-size:10px}.energy-sources strong{color:#65ddf9;font-size:18px}.energy-sources span{color:#8fb4c6;font-size:9px}.energy-sources i{background:linear-gradient(90deg,#48d8fa,#176785);border-radius:2px;height:4px}@media (width<=900px){.energy-sources{grid-template-columns:repeat(2,1fr)}}.wo-filters{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.wo-filters button{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:999px;min-height:30px;padding:0 12px;font-size:10px}.wo-filters button.active{color:#d9f6ff;background:#0d3b52;border-color:#189ac1}.wo-row .wo-advance{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;flex:none;min-height:30px;padding:0 12px;font-size:10px}.wo-status.wo-closed{color:#7c98a7;background:#1a2e3a}.report-role{color:#d9f6ff;background:#0b2434;border:1px solid #23506a;border-radius:8px;min-height:34px;padding:0 10px;font-size:11px}.report-widgets{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0;display:flex}.report-widgets>span{color:#6c899a;width:100%;font-size:10px}.report-widgets button{color:#536f80;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:999px;min-height:28px;padding:0 12px;font-size:10px}.report-widgets button.active{color:#50dea9;background:#103c36;border-color:#225b52}.report-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.report-grid section{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;padding:12px}.report-grid h3{color:#9fd8ea;margin:0 0 8px;font-size:11px}.report-grid ul{margin:0;padding:0;list-style:none}.report-grid li{border-bottom:1px solid #14303f;justify-content:space-between;gap:8px;padding:4px 0;font-size:10px;display:flex}.report-grid li:last-child{border-bottom:0}.report-grid li b{color:#a8c6d5}.report-grid li span{color:#65ddf9}.report-grid .big-num{color:#65ddf9;font-size:30px}.spark-bars{align-items:flex-end;gap:2px;height:70px;display:flex}.spark-bars i{background:linear-gradient(#48d8fa,#176785);border-radius:2px 2px 0 0;flex:1}@media (width<=900px){.report-grid{grid-template-columns:1fr}}.sidebar button .nav3d{filter:drop-shadow(0 3px 6px #00000073);place-items:center;display:grid}.sidebar button.active .nav3d{filter:drop-shadow(0 3px 10px #48d8fa80)}.agents-strategies{gap:6px;margin-top:8px;display:grid}.agents-strategies small{color:#6c899a;font-size:9px}.agents-strategies button{text-align:left;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:9px;flex-direction:column;gap:3px;padding:8px 10px;display:flex}.agents-strategies b{color:#d9f6ff;font-size:11px}.agents-strategies span{color:#8fb4c6;font-size:9px}.lang-select{color:#d9f6ff;cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:8px;min-height:34px;padding:0 8px;font-size:11px}.sidebar{scrollbar-width:thin;overflow-y:auto}.energy-details{grid-template-columns:1fr 1fr 1.6fr;gap:10px;margin-bottom:12px;display:grid}.energy-details section{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;padding:12px}.energy-details h3{color:#9fd8ea;margin:0 0 10px;font-size:11px}.energy-donut{flex-direction:column;align-items:center;gap:10px;display:flex}.energy-donut svg{width:130px;height:130px}.donut-legend{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.donut-legend span{color:#a8c6d5;align-items:center;gap:5px;font-size:10px;display:flex}.donut-legend i{border-radius:3px;width:10px;height:10px}.peak-bars{gap:10px;display:grid}.peak-bars>div{grid-template-columns:64px 1fr auto;align-items:center;gap:8px;display:grid}.peak-bars b{color:#a8c6d5;font-size:11px}.peak-bars span{color:#65ddf9;font-size:12px}.peak-bars i{background:linear-gradient(90deg,#f4c95d,#ff815c);border-radius:6px;height:10px}.peak-note{color:#536f80;margin:8px 0 0;font-size:9px}.energy-curve .dual-bars{align-items:flex-end;gap:2px;height:110px;display:flex}.dual-bars>div{flex:1;justify-content:center;align-items:flex-end;gap:1px;height:100%;display:flex}.dual-bars i{border-radius:2px 2px 0 0;width:45%}.dual-bars i.grid{background:linear-gradient(#48d8fa,#176785)}.dual-bars i.solar{background:linear-gradient(#f4c95d,#8f6a1d)}.dual-legend{gap:12px;margin-top:8px;display:flex}.dual-legend span{color:#8fb4c6;align-items:center;gap:5px;font-size:9px;display:flex}.dual-legend i{border-radius:3px;width:10px;height:10px}.dual-legend i.grid{background:#48d8fa}.dual-legend i.solar{background:#f4c95d}@media (width<=900px){.energy-details{grid-template-columns:1fr}}.report-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;display:flex}.report-toolbar label{color:#8fb4c6;align-items:center;gap:6px;font-size:11px;display:flex}.report-toolbar select{color:#d9f6ff;background:#0b2434;border:1px solid #23506a;border-radius:8px;min-height:32px;padding:0 8px;font-size:11px}.report-toolbar button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;min-height:32px;padding:0 12px;font-size:11px}.model-detail{grid-template-columns:1fr 1.4fr;gap:10px;margin-top:12px;display:grid}.model-detail section{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;padding:12px}.model-detail h3{color:#9fd8ea;margin:0 0 8px;font-size:11px}.model-detail ul{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.model-detail li{color:#a8c6d5;justify-content:space-between;font-size:11px;display:flex}.model-detail li span{color:#65ddf9}.model-detail .bim-pipeline{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}@media (width<=900px){.model-detail{grid-template-columns:1fr}}.api-method{font-family:ui-monospace,monospace;font-weight:700}.api-method.m-post{color:#f4c95d}.api-method.m-get{color:#50dea9}.api-method.m-put{color:#9e79ff}.api-method.m-delete{color:#ff836f}.api-demo-note{color:#6c899a;border:1px dashed #23506a;border-radius:9px;margin-top:10px;padding:10px 12px;font-size:10px}.module-overlay h2{font-size:22px}.module-overlay .overlay-head small,.sidebar button em{font-size:12px}.tree-panel .tree-row{font-size:13px}.tree-row.level-3{padding-left:34px}.tree-meta small,.asset-mini small{font-size:11px}.asset-mini strong{font-size:20px}.panel-heading span{font-size:14px}.detail-panel .property-list div span{font-size:12px}.detail-panel .property-list div b,.device-list button b{font-size:13px}.device-list button small{font-size:12px}.device-list button{min-height:52px}.section-title span{font-size:13px}.section-title b{font-size:12px}.selected-card strong{font-size:15px}.selected-card small,.kpi span{font-size:12px}.kpi strong{font-size:30px}.kpi em{font-size:11px}.scenario-tabs button,.view-summary strong{font-size:14px}.reset-demo,.device-table button b{font-size:13px}.device-table button span{font-size:14px}.device-table button em,.energy-sources small{font-size:11px}.energy-sources strong{font-size:20px}.energy-sources span{font-size:10px}.energy-details h3{font-size:12px}.energy-summary b{font-size:16px}.energy-summary small{font-size:10px}.admin-users>div{min-height:44px;font-size:12px}.admin-kpis small{font-size:11px}.admin-kpis strong{font-size:22px}.rule-editor input,.rule-editor select{font-size:11px}.rule-row b{font-size:12px}.rule-row small{font-size:10px}.agents-roster b{font-size:14px}.agents-roster small{font-size:11px}.agents-msg{font-size:13px}.agents-presets button{font-size:11px}.audit-list b{font-size:13px}.audit-list small{font-size:11px}.audit-list em{font-size:10px}.event-feed-row b{font-size:13px}.event-feed-row small{font-size:11px}.event-analysis-grid h3{font-size:15px}.event-analysis-grid p{font-size:12px}.wo-row>div b{font-size:13px}.wo-row>div small,.wo-filters button{font-size:11px}.exam-q b,.exam-q label{font-size:12px}.academy-unit b{font-size:13px}.academy-unit small,.report-grid li{font-size:11px}.report-grid h3,.report-toolbar label,.whatif-panel label{font-size:12px}.whatif-results strong{font-size:22px}.login-card input{font-size:15px}.login-card label{font-size:12px}.sensor-float.temperature{top:64px;right:16px}.sensor-float.air{top:112px;right:16px}.alert-float{bottom:calc(var(--twin-tour-safe) + var(--twin-tour-lane));max-width:min(560px,86%);left:50%;transform:translate(-50%)}@media (width<=900px){.sensor-float{display:none}.alert-float{max-width:none;left:12px;right:12px;transform:none}}.print-picker{z-index:95;color:#e8f7fd;background:#0d2b3d;border:1px solid #189ac1;border-radius:14px;flex-direction:column;gap:14px;width:min(440px,92vw);padding:20px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 60px #00000080}.print-picker-head{justify-content:space-between;align-items:center;display:flex}.print-picker-head strong{font-size:15px}.print-picker-head .cancel{color:#ff836f;cursor:pointer;background:#2a1a19;border:1px solid #5a3a38;border-radius:8px;width:30px;min-height:30px}.print-picker-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.print-picker-list label{cursor:pointer;background:#0b2434;border:1px solid #23506a;border-radius:9px;align-items:center;gap:8px;padding:9px 10px;font-size:12px;display:flex}#twinops-print{display:none}.twin-streaming-note{color:#9fd8ea;z-index:4;background:#081724eb;border:1px solid #2e5a72;border-radius:999px;padding:8px 14px;font-size:11px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}@media print{body *{visibility:hidden!important}#twinops-print,#twinops-print *{visibility:visible!important}#twinops-print{color:#111;background:#fff;width:100%;padding:24px;font-size:12px;position:absolute;top:0;left:0;overflow:visible;display:block!important}#twinops-print h2{color:#111;margin:0 0 12px;font-size:18px}#twinops-print table{border-collapse:collapse;width:100%;margin-bottom:12px}#twinops-print td,#twinops-print th{text-align:left;color:#111;border:1px solid #bbb;padding:6px 8px}#twinops-print ul{columns:2;margin:0;padding:0;list-style:none}#twinops-print li{color:#111;border-bottom:1px solid #ddd;padding:4px 0}}.home-pulse-brand-mark{filter:drop-shadow(0 8px 14px #0006);width:42px;height:42px;display:block}.brand{align-items:center;gap:10px;display:flex}.brand-copy strong{color:var(--brand-ivory);font-size:15px}.brand-copy small{color:#80988f;margin-top:2px;font-size:9px;display:block}.brand-copy small b{color:var(--brand-gold);letter-spacing:1.1px;font-size:8px}.login-brand-lockup{filter:drop-shadow(0 12px 24px #0007);width:min(272px,82%);height:auto;margin:0 auto 8px;display:block}.icon-academy svg{display:block}.academy-pill{display:none!important}@media (width<=900px){.home-pulse-brand-mark{width:34px;height:34px}.brand-copy{display:none}.login-brand-lockup{width:min(240px,86%)}}.energy-insight{grid-template-columns:1.1fr 1.4fr 1.2fr 1fr;gap:10px;margin-bottom:12px;display:grid}.energy-insight section{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;padding:12px}.energy-insight h3{color:#9fd8ea;margin:0 0 10px;font-size:12px}.selfuse-card{flex-direction:column;align-items:center;gap:6px;display:flex}.selfuse-ring{width:110px;height:110px;position:relative}.selfuse-ring svg{width:110px;height:110px}.selfuse-ring span{color:#8fb4c6;place-items:center;padding-top:64px;font-size:10px;display:grid;position:absolute;inset:0}.selfuse-note{color:#536f80;text-align:center;margin:0;font-size:10px}.space-split{gap:6px;margin:0;padding:0;list-style:none;display:grid}.space-split li{color:#a8c6d5;grid-template-columns:72px 1fr 34px;align-items:center;gap:8px;font-size:10px;display:grid}.space-split i{background:#14303f;border-radius:4px;height:8px;overflow:hidden}.space-split em{background:linear-gradient(90deg,#48d8fa,#3de5a4);border-radius:4px;height:100%;display:block}.space-split span{text-align:right;color:#65ddf9}.month-bars{align-items:flex-end;gap:3px;height:90px;display:flex}.month-bars i{background:linear-gradient(#f4c95d,#8f6a1d);border-radius:2px 2px 0 0;flex:1}.cost-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.cost-list li{color:#a8c6d5;justify-content:space-between;font-size:11px;display:flex}.cost-list span{color:#65ddf9}.cost-list .good{color:#50dea9}@media (width<=1100px){.energy-insight{grid-template-columns:1fr 1fr}}.blueprint-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.blueprint-row>span{color:#6c899a;width:100%;font-size:10px}.blueprint-row button{text-align:left;cursor:pointer;background:#0d2b26;border:1px dashed #2e7a63;border-radius:10px;flex-direction:column;gap:3px;min-width:150px;padding:9px 12px;display:flex}.blueprint-row b{color:#7ee0b8;font-size:11px}.blueprint-row small{color:#6c899a;font-size:9px}.notify-card{background:#0a1c2a;border:1px dashed #2e5a72;border-radius:12px;gap:8px;margin-top:12px;padding:12px 14px;display:grid}.notify-head{justify-content:space-between;align-items:center;display:flex}.notify-head h3{color:#9fd8ea;margin:0;font-size:12px}.notify-test{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;min-height:30px;padding:0 12px;font-size:11px}.notify-row{grid-template-columns:120px 1fr;align-items:center;gap:8px;display:grid}.notify-row label{color:#a8c6d5;cursor:pointer;align-items:center;gap:6px;font-size:11px;display:flex}.notify-row input[type=text]{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:7px;min-height:32px;padding:0 9px;font-size:11px}.notify-log{gap:4px;margin:0;padding:0;list-style:none;display:grid}.notify-log li{color:#7ee0b8;background:#0d2b26;border-radius:6px;padding:4px 8px;font-size:10px}.rule-flow{gap:0;margin-top:12px;display:grid}.flow-name{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:9px;min-height:38px;margin-bottom:10px;padding:0 10px;font-size:12px}.flow-node{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:12px;grid-template-columns:auto 1fr 1fr 1fr;align-items:center;gap:8px;padding:12px 14px;display:grid;position:relative}.flow-node>i{color:#65ddf9;font-size:15px;font-style:normal}.flow-node>b{color:#9fd8ea;grid-column:2/5;font-size:12px}.flow-trigger{border-color:#225b52}.flow-condition{border-color:#8a6a2a}.flow-action{border-color:#189ac1}.flow-node select,.flow-node input{color:#e8f7fd;background:#0b2434;border:1px solid #23506a;border-radius:8px;min-height:34px;padding:0 8px;font-size:11px}.flow-cond-toggle{color:#8fb4c6;grid-column:2/5;align-items:center;gap:8px;font-size:11px;display:flex}.flow-cond-toggle input{width:16px;height:16px}.flow-connector{place-items:center;height:22px;display:grid}.flow-connector span{background:linear-gradient(#48d8fa,#3de5a4);border-radius:1px;width:2px;height:100%}.flow-save{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:9px;min-height:40px;margin-top:10px;font-size:13px}.trend-bars{align-items:flex-end;gap:2px;height:90px;display:flex}.trend-bars i{background:linear-gradient(#48d8fa,#176785);border-radius:2px 2px 0 0;flex:1;min-width:2px}.trend-note{color:#536f80;margin-top:6px;font-size:9px;display:block}.geo-pill{color:#8fb4c6;cursor:pointer;background:#0b2434;border:1px solid #2e5a72;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:34px;margin-left:8px;padding:0 12px;font-size:11px;display:inline-flex}.geo-pill.away{color:#ffd479;border-color:#8a6a2a}.presence-icon{color:currentColor;place-items:center;width:17px;height:17px;display:inline-grid}.login-entries{gap:8px;display:grid}.login-entries .login-academy.guest{color:#7ee0b8;border-color:#225b52}.camera-panel{z-index:5;background:#081724eb;border:1px solid #1b3a4d;border-radius:12px;gap:8px;width:232px;padding:10px;display:grid;position:absolute;top:172px;right:16px}.camera-head{justify-content:space-between;align-items:center;display:flex}.camera-head span{color:#9fd8ea;font-size:11px}.camera-head em{color:#50dea9;background:#103c36;border-radius:999px;padding:2px 8px;font-size:9px;font-style:normal}.camera-head em.detect{color:#ff836f;background:#2a1a19;animation:1s infinite blink}.camera-tiles{grid-template-columns:1fr 1fr;gap:6px;display:grid}.camera-tile{background:radial-gradient(120% 120% at 30% 20%,#173a4d,#0a1c2a);border:1px solid #14303f;border-radius:8px;flex-direction:column;justify-content:flex-end;height:64px;padding:6px;display:flex;position:relative;overflow:hidden}.camera-tile i{background:linear-gradient(#0000,#48d8fa47,#0000);height:40%;animation:2.6s linear infinite scan;position:absolute;top:-20%;left:0;right:0}.camera-tile b{color:#8fb4c6;z-index:1;font-size:8px}.camera-tile .det-box{border:2px solid #ff836f;border-radius:4px;width:40%;height:38%;animation:.7s infinite blink;position:absolute;top:28%;left:30%}@keyframes scan{to{top:120%}}@keyframes blink{50%{opacity:.35}}@media (width<=1100px){.camera-panel{display:none}}.ifc-parse-note{color:#7ee0b8;background:#0d2b26;border:1px dashed #2e7a63;border-radius:8px;padding:8px 10px;font-size:11px}.camera-panel{top:56px;left:12px;right:auto}@media (width<=1100px){.camera-panel{display:none}}.module-error{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px;display:flex}.module-error strong{color:#ff836f;font-size:15px}.module-error code{color:#8fb4c6;word-break:break-all;white-space:pre-wrap;max-width:80%;font-size:11px}.module-error button{color:#d9f6ff;cursor:pointer;background:#0d3b52;border:1px solid #189ac1;border-radius:8px;min-height:36px;padding:0 16px;font-size:12px}.flow-notify{color:#8fb4c6;grid-column:2/5;align-items:center;gap:8px;font-size:11px;display:flex}.flow-notify input{width:16px;height:16px}.geo-locate{color:#50dea9;cursor:pointer;background:#103c36;border:1px solid #225b52;border-radius:999px;min-height:34px;margin-left:6px;padding:0 10px;font-size:13px}.vision-center{grid-template-columns:1fr 300px;gap:12px;margin-top:10px;display:grid}.vision-bar{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;display:flex}.vision-bar>span{color:#9fd8ea;margin-right:4px;font-size:11px}.vision-bar button{color:#8fb4c6;cursor:pointer;white-space:nowrap;background:#0b2434;border:1px solid #23506a;border-radius:999px;min-height:28px;padding:0 12px;font-size:11px}.vision-bar button.active{color:#d9f6ff;background:#0d3b52;border-color:#189ac1}.vision-bar em{color:#50dea9;align-items:center;gap:6px;margin-left:auto;font-size:10px;font-style:normal;display:flex}.vision-bar em>i{background:#50dea9;border-radius:50%;width:8px;height:8px}.vision-bar em.alert{color:#ff836f}.vision-bar em.alert>i{background:#ff836f;animation:1s infinite blink}.vision-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vision-tile{background:#081724;border:1px solid #1b3a4d;border-radius:12px;overflow:hidden}.vision-feed{background:radial-gradient(120% 120% at 30% 20%,#173a4d,#0a1c2a);border-radius:10px 10px 0 0;align-items:flex-end;height:120px;padding:8px;display:flex;position:relative;overflow:hidden}.vision-feed>i{background:linear-gradient(#0000,#48d8fa47,#0000);height:38%;animation:2.6s linear infinite scan;position:absolute;top:-20%;left:0;right:0}.vision-feed b{color:#8fb4c6;z-index:1;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:9px;overflow:hidden}.vision-feed .det-box{border:2px solid #ff836f;border-radius:4px;width:44%;height:42%;animation:.7s infinite blink;position:absolute;top:24%;left:28%}.vision-tag{color:#ffd479;z-index:1;white-space:nowrap;background:#231a09d9;border:1px solid #8a6a2a;border-radius:6px;padding:2px 6px;font-size:8px;position:absolute;top:6px;right:6px}.vision-meta{color:#536f80;justify-content:space-between;padding:6px 8px;font-size:9px;display:flex}.vision-side{gap:8px;display:grid}.vision-events,.vision-snaps{background:#0a1c2a;border:1px solid #1b3a4d;border-radius:10px;padding:10px}.vision-events h4,.vision-snaps h4{color:#9fd8ea;margin:0 0 8px;font-size:11px}.vision-events>div{border-bottom:1px solid #14303f;grid-template-columns:10px 1fr 44px 64px;align-items:center;gap:6px;padding:4px 0;font-size:10px;display:grid}.vision-events>div:last-child{border-bottom:0}.vision-events .evt{border-radius:50%;width:8px;height:8px}.evt-person{background:#50dea9}.evt-intrusion,.evt-fall{background:#ff836f}.evt-smoke{background:#f4c95d}.evt-loiter,.evt-idle{background:#9e79ff}.evt-ppe{background:#6da5ff}.vision-events b{color:#d9f6ff;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vision-events em{color:#8fb4c6;font-style:normal}.vision-events small{color:#536f80;text-align:right}.vision-empty{color:#536f80;margin:0;font-size:10px}.snap-strip{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.snap{background:linear-gradient(135deg,#274a5e,#0a1c2a);border:1px solid #14303f;border-radius:8px;height:52px;position:relative;overflow:hidden}.snap small{color:#8fb4c6;font-size:8px;position:absolute;bottom:3px;left:4px}.vision-feed img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vision-rtsp{color:#ffd479;text-align:center;z-index:1;background:#1408048c;justify-content:center;align-items:center;padding:0 8px;font-size:9px;display:flex;position:absolute;inset:0}.vision-feed .zone-box{pointer-events:none;background:#50dea91a;border:2px dashed #50dea9;border-radius:4px;position:absolute}.vision-feed .zone-box.draft{background:#9e79ff24;border-color:#9e79ff}.vision-bar button.drawing{color:#e7dcff;background:#2a1d52;border-color:#9e79ff;animation:1s infinite blink}.zone-clear{z-index:2;color:#ff836f;cursor:pointer;background:#230a08d9;border:1px solid #8a3a2a;border-radius:6px;padding:2px 6px;font-size:9px;position:absolute;top:6px;right:6px}.vision-meta input{color:#d9f6ff;white-space:nowrap;text-overflow:ellipsis;background:#0b2434;border:1px solid #1b3a4d;border-radius:6px;flex:1;min-width:0;max-width:150px;padding:3px 6px;font-size:9px;overflow:hidden}.vision-meta input::placeholder{color:#536f80}@media (width<=1100px){.vision-center{grid-template-columns:1fr}.vision-side{grid-template-columns:1fr 1fr}}.sidebar button em{white-space:nowrap;text-overflow:ellipsis;max-width:100%;display:block;overflow:hidden}.scenario-tabs{min-width:0}.scenario-tabs button{white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.view-summary{min-width:0}.view-summary strong{white-space:nowrap;text-overflow:ellipsis;max-width:46vw;display:block;overflow:hidden}.brand,.brand-copy{min-width:0}.brand-copy strong,.brand-copy small{white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.camera-tile b,.energy-sources span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-users>div span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wo-filters button,.report-widgets button,.academy-tabs button,.tutor-presets button,.login-scenarios button,.agentPresets button,.agents-presets button{white-space:nowrap}.module-overlay h2{word-break:break-word}.flow-node select,.flow-node input{min-width:0}.icon-btn{min-width:36px}.exam-task span{word-break:break-word}.notify-row input[type=text]{min-width:0}.report-toolbar label{white-space:nowrap}@media (width<=900px){.scenario-tabs button{max-width:96px}}html,body{overflow:auto}.topbar{border-bottom-color:#46aad247}.brand-mark{box-shadow:0 0 16px #46d9ff59,inset 0 0 10px #46d9ff1f}.project-chip{box-shadow:inset 0 1px #ffffff0d}.status-pill{box-shadow:0 0 14px #4ce2a429}.status-pill i{animation:2.6s ease-in-out infinite uiPulse}@keyframes uiPulse{50%{opacity:.4}}.sidebar button{transition:background .18s,color .18s}.sidebar button:hover{color:#a5ddf2;background:#12334ab3}.sidebar button.active{box-shadow:inset 2px 0 #42d9ff,0 0 18px #42d9ff1f}.sidebar button.active span{filter:drop-shadow(0 0 9px #48d8faa6)}.overview-grid article,.evidence-card,.state-card,.story-entry,.spark-card,.workorder-card,.diagnosis-card{transition:transform .16s,border-color .16s,background .16s}.overview-grid article{position:relative}.overview-grid article:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#52d7ff80,#0000);height:1px;position:absolute;top:0;left:0;right:0}.overview-grid article:hover,.story-entry:hover,.spark-card:hover{background:#0c2133;border-color:#2a7ba0;transform:translateY(-2px)}.story-entry:hover{background:linear-gradient(120deg,#0f3250,#14303f)}.overview-grid article strong{font-size:clamp(21px,1.5vw6px,34px)}.story-entry strong{font-size:clamp(15px,.9vw7px,22px)}.spark-card svg{height:clamp(46px,5.5vh,66px)}@media (width>=721px){.overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,238px),1fr))}}@media (height<=820px) and (width>=721px){.module-overlay{padding:12px 16px;inset:52px 20px 16px}.overview-grid{gap:8px;margin:10px 0}.overview-grid article{padding:10px 14px}.overview-grid strong{margin:6px 0 4px}.spark-card{margin-top:8px;padding:9px 14px}.story-entry{min-height:74px;padding:10px 14px}.story-entry strong{margin:3px 0}.energy-chart{height:150px;margin-top:20px}.energy-summary{margin-top:18px}.workflow{margin:14px 0}}@media (width<=1024px) and (width>=721px){.module-overlay{padding:14px;inset:52px 16px 16px}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.event-analysis-grid{grid-template-columns:1fr 1fr}.vision-center{grid-template-columns:1fr}.vision-side{grid-template-columns:1fr 1fr}}@media (width>=1600px){.app-shell{font-size:15px}.sidebar{width:96px}.sidebar button{min-height:68px}.sidebar button em{font-size:12px}.overview-grid article strong{font-size:29px}.story-entry strong{font-size:20px}.spark-card svg{height:64px}.module-overlay{border-radius:16px}}@media (width>=2200px){.app-shell{font-size:16px}.module-overlay{width:min(2060px,92vw);padding:22px;inset:72px auto max(32px,3vh) 50%;transform:translate(-50%)}.sidebar{width:104px}.sidebar button em{font-size:13px}.overview-grid{gap:16px}.overview-grid article strong{font-size:34px}.story-entry{min-height:118px}.spark-card svg{height:72px}}@media (width<=480px){.vision-grid{grid-template-columns:1fr}.overview-grid{gap:6px}.overview-grid article{padding:9px}.overview-grid article strong{font-size:15px}.device-table,.fleet-live{grid-template-columns:1fr}.module-section-heading{margin:10px 0 4px}.dash-row,.dash-row+.dash-row{grid-template-columns:1fr 1fr}.badge-wall{gap:4px}.tutor-thread{max-height:46vh}}@media (width<=720px){.academy-dock{width:100vw;box-shadow:none;border-left:0}.academy-dock .academy-body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}}@media (width<=720px) and (orientation:landscape){.academy-dock{width:min(520px,100vw)}}.scenario-drop{color:#7895a8;cursor:pointer;background:#0b1c2b;border:1px solid #24526b;border-radius:9px;align-items:center;gap:7px;min-height:34px;padding:0 12px;display:flex}.scenario-drop>span{color:#54d7ff;font-size:14px;font-style:normal}.scenario-drop>b{color:#dff8ff;white-space:nowrap;font-size:12px;font-weight:600}.scenario-drop>i{color:#6f8ea1;white-space:nowrap;text-overflow:ellipsis;max-width:150px;font-size:10px;font-style:normal;overflow:hidden}.scenario-drop>em{color:#54d7ff;font-size:9px;font-style:normal;transition:transform .18s}.scenario-drop.open>em{transform:rotate(180deg)}.scenario-drop-wrap{position:relative}.scenario-menu{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#081827f5;border:1px solid #28546d;border-radius:12px;gap:10px;min-width:300px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 44px #000b}.scenario-menu-group{gap:5px;display:grid}.scenario-menu-group small{color:#638398;letter-spacing:.5px;padding:0 4px;font-size:9px}.scenario-menu-group button{text-align:left;cursor:pointer;background:#0b1e2e;border:1px solid #183b50;border-radius:8px;grid-template-columns:26px 1fr auto;align-items:center;gap:8px;width:100%;min-height:40px;padding:0 10px;display:grid}.scenario-menu-group button:hover,.scenario-menu-group button.active{background:#0e2b3d;border-color:#3196b8}.scenario-menu-group button>span{color:#54d7ff;font-style:normal}.scenario-menu-group button b{color:#ddecf4;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.scenario-menu-group button em{color:#5e7b8f;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-style:normal;overflow:hidden}.scenario-menu-group button>i{color:#50dea9;text-align:right;font-size:12px;font-style:normal}.top-actions .icon-btn{align-items:center;gap:6px;padding:0 10px;display:flex}.top-actions .icon-btn em{color:#a7c1cf;white-space:nowrap;font-size:10px;font-style:normal}.lang-select{appearance:none;color:#a7c1cf;cursor:pointer;background:#0b1928 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2354d7ff' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") right 8px center no-repeat;border:1px solid #1a3449;border-radius:8px;min-width:80px;height:34px;padding:0 26px 0 10px;font-size:11px}.lang-select:focus{border-color:#3196b8;outline:none}@media (width<=1280px){.top-actions .icon-btn em{display:none}.top-actions .icon-btn{padding:0 8px}}@media (width<=1100px){.scenario-drop>i{max-width:90px}.scenario-menu{min-width:min(300px,84vw)}}@media (width<=720px){.scenario-menu{top:auto;left:8px;right:8px;bottom:calc(70px + env(safe-area-inset-bottom));min-width:0;position:fixed}.scenario-drop{min-height:40px}.scenario-drop>i{max-width:110px}}.quick-actions{align-items:center;gap:10px;min-width:0;margin:auto;display:flex}.quick-actions .geo-pill{margin-left:0}.quick-actions .wall-btn{align-items:center;gap:6px;padding:0 12px;display:flex}.quick-actions .wall-btn em{color:#a7c1cf;white-space:nowrap;font-size:10px;font-style:normal}.scenario-models button{grid-template-columns:26px 1fr auto;align-items:center}.scenario-models .model-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.scenario-models .model-copy b{color:#ddecf4;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.scenario-models .model-copy em{color:#5e7b8f;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-style:normal;overflow:hidden}.scenario-models .model-meta{flex-direction:column;align-items:flex-end;gap:2px;min-width:0;display:flex}.scenario-models .model-meta small{color:#4d6d83;white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:8px;overflow:hidden}.scenario-models .model-meta i{color:#50dea9;font-size:12px;font-style:normal}@media (width<=720px){.quick-actions{flex:1;justify-content:center;gap:6px;margin:0}.quick-actions .wall-btn em{display:none}.quick-actions .wall-btn{padding:0 9px}.quick-actions .geo-pill{min-width:84px;padding-inline:9px}.scenario-models .model-meta small{max-width:110px}}.sidebar{transition:width .22s}.sidebar.expanded{width:226px;padding:14px 10px}.sidebar.expanded button{flex-direction:row;justify-content:flex-start;gap:10px;padding:0 12px}.sidebar.expanded button em{white-space:nowrap;max-width:none;font-size:12px;overflow:visible}.sidebar-toggle{border:1px solid var(--line);min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;margin-top:auto;font-size:13px;transition:color .15s,border-color .15s;flex-direction:row!important;justify-content:center!important}.sidebar-toggle:hover{color:var(--cyan);border-color:var(--line2)}.sidebar.expanded .sidebar-toggle{width:100%}@media (width<=900px){.sidebar.expanded{width:200px}}[data-theme=light]{--bg:#eef2f6;--panel:#fff;--line:#d6e0e8;--cyan:#0d8db3;--text:#16283a;--muted:#5f7484;--orange:#cf5c28;--green:#0f9d6e}[data-theme=light] html,[data-theme=light] body{background:#eef2f6}[data-theme=light] .app-shell{background:radial-gradient(circle at 52% 30%,#eef5f9 0,#e7eef4 38%,#dfe7ee 100%)}[data-theme=light] .topbar{background:#fffffff0;border-bottom-color:#d6e0e8}[data-theme=light] .sidebar{background:#f5f8fa;border-right-color:#d6e0e8}[data-theme=light] .scenario-bar{background:#f7fafcf2;border-bottom-color:#d6e0e8}[data-theme=light] .content-grid{background:#d9e2ea}[data-theme=light] .panel{background:#f7fafc}[data-theme=light] .module-overlay{background:#f2f6f9f5;border-color:#c9d5df}[data-theme=light] .overview-grid article,[data-theme=light] .evidence-card,[data-theme=light] .state-card,[data-theme=light] .spark-card,[data-theme=light] .story-entry,[data-theme=light] .workorder-card,[data-theme=light] .diagnosis-card,[data-theme=light] .plan-list button,[data-theme=light] .device-table{background:#fff;border-color:#d6e0e8}[data-theme=light] .overview-grid article:hover,[data-theme=light] .story-entry:hover,[data-theme=light] .spark-card:hover{background:#fbfdfe;border-color:#9fc4d8}[data-theme=light] .story-entry{background:linear-gradient(120deg,#f0f7fb,#eef4f8)}[data-theme=light] .overview-grid strong,[data-theme=light] .overlay-head h2,[data-theme=light] .spark-head b,[data-theme=light] .workorder-card b,[data-theme=light] .device-table b,[data-theme=light] .exam-q b,[data-theme=light] .academy-unit b,[data-theme=light] .dash-stat b,[data-theme=light] .scenario-drop b,[data-theme=light] .scenario-menu-group button b,[data-theme=light] .model-copy b,[data-theme=light] .exam-task span{color:#16283a}[data-theme=light] .overview-grid small,[data-theme=light] .overview-grid span,[data-theme=light] .spark-head small,[data-theme=light] .story-entry small,[data-theme=light] .story-entry em,[data-theme=light] .energy-summary small,[data-theme=light] .academy-unit small,[data-theme=light] .academy-unit-detail p,[data-theme=light] .dash-stat small,[data-theme=light] .recent-list span,[data-theme=light] .exam-q label,[data-theme=light] .exam-task,[data-theme=light] .academy-points-title,[data-theme=light] .view-summary span,[data-theme=light] .geo-pill{color:#5f7484}[data-theme=light] .panel-heading{color:#33495c;border-bottom-color:#d6e0e8}[data-theme=light] .tree-row{color:#4a6072}[data-theme=light] .tree-row.level-3.active{color:#12303f;background:#e3eef5}[data-theme=light] .property-list{border-color:#d6e0e8}[data-theme=light] .property-list div{border-bottom-color:#e2e9ef}[data-theme=light] .property-list span{color:#5f7484}[data-theme=light] .kpi-strip{background:#fff;border-top-color:#d6e0e8}[data-theme=light] .kpi{border-right-color:#e2e9ef}[data-theme=light] .kpi>span{color:#5f7484}[data-theme=light] .kpi strong{color:#16283a}[data-theme=light] .device-table button{border-bottom-color:#e2e9ef}[data-theme=light] .vision-tile{background:#fff;border-color:#d6e0e8}[data-theme=light] .vision-feed{background:radial-gradient(120% 120% at 30% 20%,#dcebf3,#eaf1f6)}[data-theme=light] .vision-feed b,[data-theme=light] .vision-events b{color:#33495c}[data-theme=light] .vision-meta{color:#6b7f8e}[data-theme=light] .vision-events,[data-theme=light] .vision-snaps{background:#f6f9fb;border-color:#d6e0e8}[data-theme=light] .vision-events h4,[data-theme=light] .vision-snaps h4{color:#0d7ba0}[data-theme=light] .vision-events>div{border-bottom-color:#e2e9ef}[data-theme=light] .vision-meta input{color:#16283a;background:#fff;border-color:#d6e0e8}[data-theme=light] .project-chip{color:#5f7484;background:#fff;border-color:#c9d5df}[data-theme=light] .project-chip strong{color:#16283a}[data-theme=light] .project-chip .tenant-name{color:#7b8d9b}[data-theme=light] .status-pill{color:#3d5364;border-color:#d6e0e8}[data-theme=light] .top-actions button,[data-theme=light] .lang-select{color:#3d5364;background:#fff;border-color:#d6e0e8}[data-theme=light] .quick-actions .wall-btn em,[data-theme=light] .top-actions .icon-btn em{color:#3d5364}[data-theme=light] .geo-pill{color:#33495c;background:#fff;border-color:#c9d5df}[data-theme=light] .brand strong{color:#16283a}[data-theme=light] .brand small{color:#7b8d9b}[data-theme=light] .scenario-drop{color:#5f7484;background:#fff;border-color:#c9d5df}[data-theme=light] .scenario-drop>i,[data-theme=light] .scenario-drop>em,[data-theme=light] .scenario-menu-group button>span{color:#0d8db3}[data-theme=light] .scenario-menu{background:#fffffffc;border-color:#c9d5df}[data-theme=light] .scenario-menu-group button{background:#f7fafc;border-color:#d6e0e8}[data-theme=light] .scenario-menu-group button:hover,[data-theme=light] .scenario-menu-group button.active{background:#eaf3f8;border-color:#9fc4d8}[data-theme=light] .scenario-menu-group small,[data-theme=light] .model-meta small{color:#7b8d9b}[data-theme=light] .reset-demo{color:#33495c;background:#fff;border-color:#c9d5df}[data-theme=light] .academy-dock{background:#f7fafc;border-left-color:#d6e0e8}[data-theme=light] .academy-head{border-bottom-color:#d6e0e8}[data-theme=light] .academy-tabs button{color:#5f7484}[data-theme=light] .academy-tabs button.active{color:#0d6f92;background:#eaf3f8;border-color:#9fc4d8}[data-theme=light] .academy-unit{background:#fff;border-color:#d6e0e8}[data-theme=light] .academy-unit b{color:#16283a}[data-theme=light] .academy-unit small{color:#6b7f8e}[data-theme=light] .academy-dash{background:#fff;border-color:#d6e0e8}[data-theme=light] .badge-item{color:#33495c;background:#f2f7fa;border-color:#d6e0e8}[data-theme=light] .exam-block{background:#fff;border-color:#d6e0e8}[data-theme=light] .exam-q{background:#f7fafc;border-color:#e2e9ef}[data-theme=light] .academy-cert{background:linear-gradient(135deg,#eef7f4,#f7fafc);border-color:#a8d5c8}[data-theme=light] .tutor-thread .agents-msg p{color:#33495c}[data-theme=light] .mobile-nav{background:#fff;border-top-color:#d6e0e8}[data-theme=light] .mobile-nav button{color:#5f7484}[data-theme=light] .mobile-nav button.active{color:#0d8db3}[data-theme=light] .avatar{color:#16283a;background:linear-gradient(135deg,#cfe4ee,#dceaf2)}[data-theme=light] .login-card{background:#fff;border-color:#d6e0e8}[data-theme=light] .sidebar button{color:#5f7484}[data-theme=light] .sidebar button.active{color:#0d6f92;background:linear-gradient(135deg,#e2eef5,#dceaf1);box-shadow:inset 2px 0 #0d8db3,0 0 14px #0d8db32e}[data-theme=light] .sidebar button:hover{color:#0d7ba0;background:#e9f2f7}[data-theme=light] .overview-grid strong,[data-theme=light] .overlay-head h2{color:#0f1f30;font-weight:800}[data-theme=light] .spark-head b,[data-theme=light] .story-entry strong,[data-theme=light] .big-num,[data-theme=light] .energy-summary b,[data-theme=light] .dash-stat b,[data-theme=light] .academy-cert strong{color:#0f1f30;font-weight:700}[data-theme=light] .story-entry>b,[data-theme=light] .plan-list strong,[data-theme=light] .evidence-card span,[data-theme=light] .active-tag,[data-theme=light] .scene-grid button span{color:#0a6f92}[data-theme=light] .module-section-heading{color:#2c4354;font-weight:700}[data-theme=light] .overlay-head small{color:#0a6f92;font-weight:600}[data-theme=light] .view-summary strong,[data-theme=light] .panel-heading,[data-theme=light] .workflow .done,[data-theme=light] .diagnosis-card h3,[data-theme=light] .plan-list b,[data-theme=light] .workorder-card b,[data-theme=light] .audit-list b,[data-theme=light] .event-feed-row b,[data-theme=light] .evidence-card b,[data-theme=light] .state-card strong,[data-theme=light] .device-table button b,[data-theme=light] .fleet-live button b,[data-theme=light] .rule-copy b,[data-theme=light] .report-role b,[data-theme=light] .admin-kpis b,[data-theme=light] .admin-users b,[data-theme=light] .agents-strategies b{color:#16283a}[data-theme=light] .workflow span,[data-theme=light] .workflow div,[data-theme=light] .diagnosis-card p,[data-theme=light] .diagnosis-card small,[data-theme=light] .plan-list span,[data-theme=light] .plan-list button,[data-theme=light] .energy-summary small,[data-theme=light] .energy-chart i span,[data-theme=light] .workorder-card li,[data-theme=light] .workorder-card>div,[data-theme=light] .progress-track span,[data-theme=light] .audit-list small,[data-theme=light] .audit-list em,[data-theme=light] .event-feed-row small,[data-theme=light] .evidence-card small,[data-theme=light] .state-card span,[data-theme=light] .demo-note,[data-theme=light] .section-title,[data-theme=light] .rule-copy small,[data-theme=light] .report-role small,[data-theme=light] .admin-users small,[data-theme=light] .admin-grid small,[data-theme=light] .scene-grid button,[data-theme=light] .scene-editor-actions button{color:#45596b}[data-theme=light] .workflow i{color:#45596b;background:#f2f6f9;border-color:#c9d5df}[data-theme=light] .workflow .done i{color:#0f9d6e;background:#e9f6f1;border-color:#9fd4bf}[data-theme=light] .diagnosis-card,[data-theme=light] .plan-list button,[data-theme=light] .workorder-card,[data-theme=light] .event-feed-row,[data-theme=light] .evidence-card,[data-theme=light] .state-card,[data-theme=light] .energy-details,[data-theme=light] .energy-sources,[data-theme=light] .energy-insight,[data-theme=light] .rule-row,[data-theme=light] .report-widgets,[data-theme=light] .admin-grid,[data-theme=light] .admin-users,[data-theme=light] .agents-chat,[data-theme=light] .agents-strategies,[data-theme=light] .world-plans button{background:#fff;border-color:#d6e0e8}[data-theme=light] .fault-scripts button,[data-theme=light] .rule-toggle,[data-theme=light] .scene-editor-toggle,[data-theme=light] .agents-presets button,[data-theme=light] .agents-proposal button,[data-theme=light] .report-toolbar button,[data-theme=light] .notify-row button{color:#45596b;background:#fff;border-color:#c9d5df}[data-theme=light] .fault-scripts button.restore{color:#0f7d58;border-color:#9fd4bf}[data-theme=light] .simulated-action-strip{background:#fdf4e8;border-color:#ead6b6}[data-theme=light] .simulated-action-strip b{color:#8a5a2a}[data-theme=light] .simulated-action-strip small{color:#8a6f50}[data-theme=light] .risk-tag{color:#c0392b;background:#fdeae5}[data-theme=light] .saving-tag,[data-theme=light] .safe-tag{color:#0f7d58;background:#e7f5ef}[data-theme=light] .sev-warning{color:#b7791f;background:#fdf3e2}[data-theme=light] .sev-critical{color:#c0392b;background:#fdeae5}[data-theme=light] .device-table button span,[data-theme=light] .fleet-live button span{color:#0a6f92}[data-theme=light] .device-table button em{color:#cf5c28}[data-theme=light] .device-table button em.on,[data-theme=light] .fleet-live button em.on{color:#0f9d6e}[data-theme=light] .primary-action{color:#fff;background:#0d8db3}[data-theme=light] .agents-msg.agent p{color:#16283a;background:#f2f6f9}[data-theme=light] .agents-msg.user p{color:#0f2840;background:#e3f1f8}[data-theme=light] .agents-input input,[data-theme=light] .rule-editor input,[data-theme=light] .scene-editor input{color:#16283a;background:#fff;border-color:#c9d5df}[data-theme=light] .admin-tabs button{color:#5f7484}[data-theme=light] .admin-tabs button.active{color:#0a6f92;background:#eaf3f8;border-color:#9fc4d8}[data-theme=light] .world-plans button.selected{background:#eaf3f8;border-color:#9fc4d8}.avatar{color:var(--brand-gold);letter-spacing:.8px;background:linear-gradient(145deg,#21372f,#0b1814);border:1px solid #e9bd7066;font-weight:800;box-shadow:inset 0 0 0 1px #84e4ba12}[data-theme=light] .avatar{color:#7d5625;background:linear-gradient(145deg,#f4eee3,#e5ddd0);border-color:#b57c3155}:root{--global-footer-height:28px}.global-footer{z-index:120;height:var(--global-footer-height);color:#71867d;letter-spacing:.2px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#08130ff5;border-top:1px solid #30473f;justify-content:center;align-items:center;gap:14px;padding:0 14px;font-size:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.global-footer a{color:#c8b485;text-decoration:none}.global-footer a:hover,.global-footer a:focus-visible{color:var(--brand-gold);text-decoration:underline}.footer-simulation{align-items:center;gap:5px;display:flex}.footer-simulation i{background:var(--brand-mint);border-radius:50%;width:5px;height:5px;box-shadow:0 0 7px #84e4ba88}.site-watermark{z-index:2;right:clamp(18px,2.8vw,44px);bottom:calc(var(--global-footer-height) + 16px);pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.035;mix-blend-mode:multiply;filter:grayscale()saturate(.2)brightness(1.35)contrast(.7);width:clamp(110px,8vw,130px);height:auto;position:fixed}@media (width<=720px){.site-watermark{right:12px;bottom:calc(var(--global-footer-height) + 74px);opacity:.03;width:88px}}.legal-page{height:calc(100vh - var(--global-footer-height));color:var(--brand-ivory);background:radial-gradient(circle at 82% 12%,#24473b 0,#0b1814 42%,#07100d 100%);padding:64px max(5vw,28px) 90px;overflow-y:auto}.legal-page a{color:var(--brand-gold)}.legal-hero{max-width:1120px;margin:0 auto 54px}.legal-brand{width:min(310px,72vw);height:auto}.legal-hero>p{color:var(--brand-mint);letter-spacing:2.1px;margin:28px 0 9px;font-size:9px;font-weight:800}.legal-hero h1{margin:0 0 22px;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(32px,5vw,64px);font-weight:500;line-height:1.08}.legal-hero h1 span{color:#a9bbb3;font-family:Inter,PingFang SC,sans-serif;font-size:.52em;font-weight:500}.legal-hero>a{background:#211d15;border:1px solid #79623c;padding:9px 13px;font-size:10px;text-decoration:none;display:inline-flex}.legal-section{border-top:1px solid #30473f;grid-template-columns:1fr;max-width:1120px;margin:0 auto;padding:34px 0 42px 74px;display:grid;position:relative}.legal-index{color:var(--brand-gold);letter-spacing:1px;font:700 12px ui-monospace,monospace;position:absolute;top:37px;left:0}.legal-section h2{margin:0 0 13px;font-family:Georgia,Noto Serif SC,serif;font-size:23px;font-weight:500}.legal-section p{color:#9aada5;max-width:920px;font-size:11px;line-height:1.8}.legal-section .legal-lead{color:var(--brand-ivory);font-size:14px;font-weight:700}.legal-asset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:22px;display:grid}.legal-asset-grid article{background:#0f211a;border:1px solid #30473f;padding:15px}.legal-asset-grid small{color:var(--brand-mint);letter-spacing:1.2px;font-size:7px;font-weight:800}.legal-asset-grid h3{margin:7px 0;font-size:12px}.legal-asset-grid p{margin:4px 0;font-size:9px;line-height:1.55}.license-table{border:1px solid #30473f;margin-top:20px}.license-table article{background:#0d1d17;border-bottom:1px solid #283d35;grid-template-columns:minmax(220px,1fr) 90px 130px;align-items:center;gap:14px;padding:13px 15px;display:grid}.license-table article:last-child{border-bottom:0}.license-table strong,.license-table small{display:block}.license-table strong{font-size:12px}.license-table small{color:#81958c;margin-top:4px;font-size:8px;line-height:1.5}.license-table b{color:var(--brand-mint);font:700 9px ui-monospace,monospace}.license-table a{text-align:right;font-size:9px;text-decoration:none}.legal-simulation>div{border-left:3px solid var(--brand-gold);background:#241e13;padding:19px}.legal-simulation p{color:#c7bfae;margin:4px 0}.legal-trademark{padding-bottom:20px}@media (width<=720px){:root{--global-footer-height:42px}.global-footer{height:var(--global-footer-height);text-align:center;flex-wrap:wrap;align-content:center;gap:2px 10px;padding:5px 8px;font-size:7px}.footer-simulation{flex:0 0 100%;justify-content:center}.mobile-nav{bottom:var(--global-footer-height)}.legal-page{height:calc(100dvh - var(--global-footer-height));padding:36px 18px 70px}.legal-hero{margin-bottom:34px}.legal-section{padding:27px 0 34px 40px}.legal-index{top:29px}.legal-section h2{font-size:18px}.legal-asset-grid{grid-template-columns:1fr}.license-table article{grid-template-columns:1fr auto}.license-table article a{text-align:left;grid-column:1/-1}.legal-simulation>div{padding:14px}}html[data-theme=dark]{--surface-shell:radial-gradient(circle at 52% 30%, #102a44 0, #07111f 38%, #050c16 100%);--surface-stage:#06111f;--surface-grid:#13283a;--surface-footer:#08130ff5;--control-bg:#0b2434;--control-border:#2e5a72;--control-text:#8fb4c6;--control-hover:#12384c}html[data-theme=light]{--bg:#eef2f6;--panel:#f7fafc;--line:#d6e0e8;--text:#16283a;--muted:#5f7484;--surface-shell:radial-gradient(circle at 52% 30%, #f8fbfd 0, #eef4f7 45%, #e1e9ef 100%);--surface-stage:#edf3f6;--surface-grid:#d6e1e8;--surface-footer:#f0f5f7f2;--control-bg:#fff;--control-border:#b9cfdd;--control-text:#33495c;--control-hover:#eaf3f8}html[data-theme=light] body{background:var(--bg);color:var(--text)}html[data-theme=light] .app-shell,html[data-theme=dark] .app-shell{background:var(--surface-shell)}html[data-theme=light] .canvas-wrap,html[data-theme=dark] .canvas-wrap{background:var(--surface-stage)}html[data-theme=light] .content-grid,html[data-theme=light] .twin-workspace-layout{background:var(--surface-grid)}html[data-theme=light] .global-footer{background:var(--surface-footer);border-top-color:var(--line);color:var(--muted)}html[data-theme=light] .global-footer a{color:#6f5729}html[data-theme=light] .topbar{color:var(--text);border-bottom-color:var(--line)}html[data-theme=light] .scenario-bar{color:var(--text)}html[data-theme=light] .twin-context-slot,html[data-theme=light] .twin-detail-slot,html[data-theme=light] .twin-tree-slot{border-color:var(--line);background:#edf3f6}.quick-actions .wall-btn{border:1px solid var(--control-border);background:var(--control-bg);min-width:82px;min-height:42px;color:var(--control-text);border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 13px;display:inline-flex;box-shadow:0 8px 22px #0002}.quick-actions .wall-btn svg{flex:none;width:22px;height:22px}.quick-actions .wall-btn em{color:inherit;white-space:nowrap;font-size:11px;font-style:normal;font-weight:700}.quick-actions .wall-btn:hover,.quick-actions .wall-btn:focus-visible{border-color:var(--cyan);background:var(--control-hover);outline:none;box-shadow:0 0 0 3px #39d6ff22,0 10px 26px #0003}.quick-actions .geo-pill{border-color:var(--control-border);background:var(--control-bg);min-width:112px;min-height:42px;color:var(--control-text);gap:9px;padding:0 14px;font-size:12px;font-weight:700;box-shadow:0 8px 22px #0002}.quick-actions .geo-pill:hover,.quick-actions .geo-pill:focus-visible{border-color:var(--cyan);background:var(--control-hover);outline:none;box-shadow:0 0 0 3px #39d6ff22,0 10px 26px #0003}.presence-icon{width:24px;height:24px}.presence-icon svg{width:22px;height:22px}html[data-theme=light] .quick-actions .wall-btn,html[data-theme=light] .quick-actions .geo-pill{border-color:var(--control-border);background:var(--control-bg);color:var(--control-text);box-shadow:0 8px 20px #27465a18}html[data-theme=light] .quick-actions .wall-btn:hover,html[data-theme=light] .quick-actions .wall-btn:focus-visible,html[data-theme=light] .quick-actions .geo-pill:hover,html[data-theme=light] .quick-actions .geo-pill:focus-visible{background:var(--control-hover)}@media (width<=720px){.quick-actions .wall-btn{min-width:48px;padding:0 10px}.quick-actions .wall-btn em{display:none}.quick-actions .geo-pill{min-width:100px;min-height:42px;padding-inline:11px}}html[data-theme=light]{--light-card:#fff;--light-card-soft:#f7fafc;--light-card-muted:#edf3f6;--light-border:#d6e0e8;--light-border-soft:#e2e9ef;--light-ink:#16283a;--light-copy:#45596b;--light-muted:#6b7f8e;--light-accent:#0a6f92}html[data-theme=light] .module-overlay,html[data-theme=light] .panel,html[data-theme=light] .academy-dock,html[data-theme=light] .mobile-more-menu,html[data-theme=light] .project-popover,html[data-theme=light] .print-picker{color:var(--light-ink);background:var(--light-card-soft);border-color:var(--light-border)}html[data-theme=light] .report-grid section,html[data-theme=light] .energy-details section,html[data-theme=light] .energy-sources article,html[data-theme=light] .energy-insight section,html[data-theme=light] .model-detail section,html[data-theme=light] .notify-card,html[data-theme=light] .flow-node,html[data-theme=light] .vision-tile,html[data-theme=light] .vision-events,html[data-theme=light] .vision-snaps,html[data-theme=light] .camera-panel,html[data-theme=light] .academy-unit,html[data-theme=light] .academy-block,html[data-theme=light] .academy-dash,html[data-theme=light] .exam-block,html[data-theme=light] .exam-q,html[data-theme=light] .exam-task,html[data-theme=light] .device-table,html[data-theme=light] .workorder-card,html[data-theme=light] .diagnosis-card,html[data-theme=light] .plan-list button,html[data-theme=light] .event-feed-row,html[data-theme=light] .evidence-card,html[data-theme=light] .state-card,html[data-theme=light] .energy-details,html[data-theme=light] .energy-sources,html[data-theme=light] .energy-insight,html[data-theme=light] .rule-row,html[data-theme=light] .admin-grid,html[data-theme=light] .admin-users,html[data-theme=light] .agents-chat,html[data-theme=light] .agents-strategies,html[data-theme=light] .world-plans button,html[data-theme=light] .overview-grid article,html[data-theme=light] .spark-card,html[data-theme=light] .whatif-panel,html[data-theme=light] .whatif-results article,html[data-theme=light] .wo-row,html[data-theme=light] .progress-track,html[data-theme=light] .agents-thread,html[data-theme=light] .agents-msg.agent,html[data-theme=light] .agents-msg.user,html[data-theme=light] .custom-scene-row,html[data-theme=light] .admin-grid section,html[data-theme=light] .admin-users,html[data-theme=light] .admin-users>div,html[data-theme=light] .approval-card,html[data-theme=light] .execution-card,html[data-theme=light] .completion-card{color:var(--light-ink);background:var(--light-card)!important;border-color:var(--light-border)!important}html[data-theme=light] .agents-roster button,html[data-theme=light] .agents-presets button,html[data-theme=light] .agents-input button,html[data-theme=light] .agents-strategies button,html[data-theme=light] .blueprint-row button,html[data-theme=light] .admin-users button,html[data-theme=light] .admin-tabs button{color:var(--light-copy)!important;background:var(--light-card)!important;border-color:var(--light-border)!important}html[data-theme=light] .agents-roster button.active,html[data-theme=light] .agents-input button,html[data-theme=light] .blueprint-row button:hover,html[data-theme=light] .admin-users button:hover,html[data-theme=light] .admin-tabs button.active{color:var(--light-accent)!important;background:#eaf3f8!important;border-color:#9fc4d8!important}html[data-theme=light] .whatif-results article,html[data-theme=light] .agents-msg.agent,html[data-theme=light] .agents-msg.user{background:var(--light-card-soft)!important}html[data-theme=light] .whatif-panel label,html[data-theme=light] .whatif-head small,html[data-theme=light] .whatif-head b,html[data-theme=light] .whatif-results small,html[data-theme=light] .wo-row>div small,html[data-theme=light] .workorder-card>div,html[data-theme=light] .agents-empty,html[data-theme=light] .agents-proposal span,html[data-theme=light] .custom-scene-row span,html[data-theme=light] .custom-scene-row small,html[data-theme=light] .admin-users span,html[data-theme=light] .admin-users-head,html[data-theme=light] .approval-card p,html[data-theme=light] .approval-card small,html[data-theme=light] .execution-card p,html[data-theme=light] .completion-card p{color:var(--light-copy)!important}html[data-theme=light] .whatif-results strong,html[data-theme=light] .admin-grid li span,html[data-theme=light] .admin-users span.on,html[data-theme=light] .agents-msg.agent p,html[data-theme=light] .agents-msg.user p{color:var(--light-accent)!important}html[data-theme=light] .wo-row>div b,html[data-theme=light] .admin-grid h3,html[data-theme=light] .admin-grid li b,html[data-theme=light] .rule-copy b,html[data-theme=light] .approval-card h3,html[data-theme=light] .execution-card h3,html[data-theme=light] .completion-card h3{color:var(--light-ink)!important}html[data-theme=light] .wo-advance,html[data-theme=light] .flow-save,html[data-theme=light] .agents-proposal button.ok,html[data-theme=light] .custom-scene-row button{color:var(--light-accent)!important;background:#eaf3f8!important;border-color:#9fc4d8!important}html[data-theme=light] .simulated-action-badge{color:#8a5a2a!important;background:#fdf4e8!important;border-color:#ead6b6!important}html[data-theme=light] .energy-chart{border-bottom-color:var(--light-border);background:linear-gradient(#dbe5eb 1px,#0000 1px)}html[data-theme=light] .energy-donut circle{fill:var(--light-card)}html[data-theme=light] .vision-feed,html[data-theme=light] .camera-tile,html[data-theme=light] .snap{border-color:var(--light-border-soft)!important;background:radial-gradient(120% 120% at 30% 20%,#dcebf3,#eef4f7)!important}html[data-theme=light] .vision-feed b,html[data-theme=light] .camera-tile b,html[data-theme=light] .snap small{color:var(--light-ink)!important}html[data-theme=light] .vision-rtsp{color:#8a5a2a;background:#fdf4e8e6}html[data-theme=light] .report-grid h3,html[data-theme=light] .energy-details h3,html[data-theme=light] .energy-insight h3,html[data-theme=light] .model-detail h3,html[data-theme=light] .vision-events h4,html[data-theme=light] .vision-snaps h4,html[data-theme=light] .camera-head span,html[data-theme=light] .flow-node>b,html[data-theme=light] .report-grid li b,html[data-theme=light] .model-detail li,html[data-theme=light] .energy-sources span,html[data-theme=light] .energy-summary b,html[data-theme=light] .peak-bars b,html[data-theme=light] .dual-legend span,html[data-theme=light] .cost-list li,html[data-theme=light] .vision-events b,html[data-theme=light] .academy-unit b,html[data-theme=light] .academy-unit-detail h3,html[data-theme=light] .academy-head strong,html[data-theme=light] .exam-q b,html[data-theme=light] .exam-task span,html[data-theme=light] .dash-stat b,html[data-theme=light] .agents-strategies b{color:var(--light-ink)!important}html[data-theme=light] .report-grid li,html[data-theme=light] .report-grid li:last-child,html[data-theme=light] .vision-events>div,html[data-theme=light] .device-table>button,html[data-theme=light] .model-detail li,html[data-theme=light] .evidence-card>div,html[data-theme=light] .audit-list>div{border-bottom-color:var(--light-border-soft)}html[data-theme=light] .report-grid li span,html[data-theme=light] .report-grid .big-num,html[data-theme=light] .model-detail li span,html[data-theme=light] .energy-sources strong,html[data-theme=light] .energy-details h3,html[data-theme=light] .evidence-card span,html[data-theme=light] .state-card strong,html[data-theme=light] .device-table>button span,html[data-theme=light] .fleet-live button span,html[data-theme=light] .plan-list strong,html[data-theme=light] .primary-action{color:var(--light-accent)!important}html[data-theme=light] .report-grid li small,html[data-theme=light] .report-grid .trend-note,html[data-theme=light] .energy-sources small,html[data-theme=light] .energy-summary small,html[data-theme=light] .peak-note,html[data-theme=light] .energy-chart i span,html[data-theme=light] .dual-legend span,html[data-theme=light] .cost-list li,html[data-theme=light] .vision-meta,html[data-theme=light] .vision-events em,html[data-theme=light] .vision-events small,html[data-theme=light] .academy-unit small,html[data-theme=light] .academy-unit-detail p,html[data-theme=light] .academy-points-title,html[data-theme=light] .academy-note,html[data-theme=light] .exam-q label,html[data-theme=light] .exam-task,html[data-theme=light] .dash-stat small,html[data-theme=light] .agents-strategies small,html[data-theme=light] .agents-strategies span,html[data-theme=light] .flow-cond-toggle,html[data-theme=light] .flow-notify,html[data-theme=light] .notify-row label,html[data-theme=light] .notify-log,html[data-theme=light] .api-demo-note{color:var(--light-copy)!important}html[data-theme=light] .report-role,html[data-theme=light] .report-toolbar select,html[data-theme=light] .report-toolbar button,html[data-theme=light] .report-widgets,html[data-theme=light] .report-widgets button,html[data-theme=light] .wo-filters button,html[data-theme=light] .flow-name,html[data-theme=light] .flow-node select,html[data-theme=light] .flow-node input,html[data-theme=light] .notify-row input[type=text],html[data-theme=light] .tutor-presets button,html[data-theme=light] .login-scenarios button,html[data-theme=light] .agents-presets button,html[data-theme=light] .academy-tabs button,html[data-theme=light] .academy-back,html[data-theme=light] .badge-item,html[data-theme=light] .exam-task button,html[data-theme=light] .academy-start{color:var(--light-copy);background:var(--light-card)!important;border-color:var(--light-border)!important}html[data-theme=light] .report-widgets button.active,html[data-theme=light] .academy-tabs button.active,html[data-theme=light] .login-scenarios button.active,html[data-theme=light] .world-plans button.selected{color:var(--light-accent)!important;background:#eaf3f8!important;border-color:#9fc4d8!important}html[data-theme=dark] .site-watermark,html[data-theme=light] .site-watermark{opacity:.022;mix-blend-mode:normal;filter:grayscale()saturate(0)contrast(.72);width:clamp(96px,7vw,122px)}@media (width<=720px){html[data-theme=dark] .site-watermark,html[data-theme=light] .site-watermark{right:12px;bottom:calc(var(--global-footer-height) + 74px);opacity:.018;width:78px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
