@font-face{font-family:__DM_Sans_0d7163;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__DM_Sans_0d7163;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__DM_Sans_Fallback_0d7163;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0d7163{font-family:__DM_Sans_0d7163,__DM_Sans_Fallback_0d7163;font-style:normal}.__variable_0d7163{--font-app:"__DM_Sans_0d7163","__DM_Sans_Fallback_0d7163"}:root{--hv-bg:#07131f;--hv-bg-deep:#02070d;--hv-panel:rgba(11,29,45,.94);--hv-panel-soft:rgba(18,45,66,.78);--hv-panel-border:rgba(114,214,215,.18);--hv-accent:#18d5c7;--hv-accent-soft:rgba(24,213,199,.14);--hv-danger:#ff365e;--hv-warning:#ff9f1c;--hv-success:#40e38a;--hv-muted:#5d7287;--hv-text:#eaf8ff;--hv-text-muted:#8fa6b8;--hv-grid:rgba(80,220,220,.07);--hv-shadow:0 20px 70px rgba(0,0,0,.42)}*{box-sizing:border-box}body,html{min-height:100%;margin:0;background:radial-gradient(circle at 18% 12%,rgba(24,213,199,.12),transparent 28rem),radial-gradient(circle at 82% 0,rgba(255,159,28,.08),transparent 24rem),linear-gradient(135deg,var(--hv-bg-deep),var(--hv-bg) 50%,#0a1a29);color:var(--hv-text);font-family:Aptos,Segoe UI,Helvetica Neue,sans-serif}button,input,select,textarea{font:inherit}button{border:1px solid var(--hv-panel-border);border-radius:10px;background:linear-gradient(180deg,rgba(24,213,199,.16),rgba(24,213,199,.06));color:var(--hv-text);cursor:pointer;padding:.65rem .9rem;transition:border-color .16s ease,transform .16s ease,background .16s ease}button:hover:not(:disabled){border-color:rgba(24,213,199,.55);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}.hv-object-symbol{--object-symbol-size:1.5rem;--object-symbol-color:var(--hv-accent);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.32rem;color:var(--object-symbol-color);line-height:1;vertical-align:middle}.hv-object-symbol__glyph{position:relative;box-sizing:border-box;display:inline-grid;width:var(--object-symbol-size);min-width:var(--object-symbol-size);height:var(--object-symbol-size);place-items:center;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--object-symbol-color);font-size:calc(var(--object-symbol-size) * .88);line-height:1;text-align:center}.hv-object-symbol--cad,.hv-object-symbol--context,.hv-object-symbol--image,.hv-object-symbol--map{width:var(--object-symbol-size);height:var(--object-symbol-size);gap:0}.hv-object-symbol--cad .hv-object-symbol__glyph,.hv-object-symbol--context .hv-object-symbol__glyph,.hv-object-symbol--image .hv-object-symbol__glyph,.hv-object-symbol--map .hv-object-symbol__glyph,.hv-object-symbol--palette .hv-object-symbol__glyph{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;filter:none}.hv-object-symbol__label{overflow:hidden;min-width:0;color:var(--hv-text);text-overflow:ellipsis;white-space:nowrap}.hv-object-status-badge,.hv-object-symbol__status{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;border:1px solid color-mix(in srgb,var(--object-symbol-color),#fff 18%);border-radius:999px;background:rgba(2,9,16,.9);color:var(--object-symbol-color);font-size:.52rem;font-weight:900;letter-spacing:.06em;padding:.08rem .28rem;text-transform:uppercase}.hv-object-symbol--xs{--object-symbol-size:1rem}.hv-object-symbol--sm{--object-symbol-size:1.35rem}.hv-object-symbol--md{--object-symbol-size:1.75rem}.hv-object-symbol--lg{--object-symbol-size:2.35rem}.hv-object-symbol--tree{--object-symbol-size:1.12rem}.hv-object-symbol--table{--object-symbol-size:1.05rem}.hv-object-symbol--context{--object-symbol-size:2rem}.hv-object-symbol--palette{--object-symbol-size:1.45rem}.hv-object-symbol--cad,.hv-object-symbol--image,.hv-object-symbol--map{--object-symbol-size:1.55rem}.hv-object-symbol--selected .hv-object-symbol__glyph,.hv-object-symbol.hv-object-symbol--selected{filter:drop-shadow(0 0 6px var(--hv-accent))}.hv-object-symbol--pulse .hv-object-symbol__glyph,.hv-object-symbol--pulse .hv-object-symbol__status{animation:hv-spatial-pulse 1.15s ease-in-out infinite}.hv-object-symbol--alarm .hv-object-symbol__glyph,.hv-object-symbol--alarmRing .hv-object-symbol__glyph,.hv-object-symbol--critical .hv-object-symbol__glyph{filter:drop-shadow(0 0 8px var(--hv-danger))}.hv-object-symbol--event .hv-object-symbol__glyph,.hv-object-symbol--new .hv-object-symbol__glyph{filter:drop-shadow(0 0 6px var(--hv-warning))}.hv-object-symbol--cad .hv-object-symbol__label,.hv-object-symbol--cad .hv-object-symbol__status,.hv-object-symbol--context .hv-object-symbol__label,.hv-object-symbol--context .hv-object-symbol__status,.hv-object-symbol--image .hv-object-symbol__label,.hv-object-symbol--image .hv-object-symbol__status,.hv-object-symbol--map .hv-object-symbol__label,.hv-object-symbol--map .hv-object-symbol__status{display:none}.hv-object-symbol--alarmRing .hv-object-symbol__glyph:after{position:absolute;inset:-8px;border:2px solid var(--object-symbol-color);border-radius:999px;content:"";animation:hv-alarm-ring 1.15s ease-out infinite}.hv-object-symbol--disabled .hv-object-symbol__glyph,.hv-object-symbol--offline .hv-object-symbol__glyph{filter:grayscale(.65)}.hv-object-type-badge{color:var(--hv-text-muted);font-size:.72rem}.hv-object-reference,.hv-object-type-badge{display:inline-flex;align-items:center;gap:.34rem}.hv-object-reference{min-width:0}.hv-object-reference span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-forbidden,.hv-loading-screen{display:grid;min-height:100vh;place-items:center;padding:2rem;text-align:center}.hv-forbidden span{color:var(--hv-danger);font-size:5rem;font-weight:800}.hv-login-page{display:grid;min-height:100vh;place-items:center;padding:2rem;position:relative;overflow:hidden}.hv-login-backdrop{position:absolute;inset:0;pointer-events:none;background:linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:radial-gradient(circle,#000,transparent 72%);mask-image:radial-gradient(circle,#000,transparent 72%)}.hv-module-login-card{background:rgba(5,18,30,.86);border:1px solid var(--hv-panel-border);border-radius:26px;box-shadow:var(--hv-shadow);max-width:460px;padding:2.25rem;position:relative;width:min(100%,460px)}.hv-brand{display:flex;gap:.8rem;align-items:center;margin-bottom:1rem}.hv-brand-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(24,213,199,.5);border-radius:12px;background:var(--hv-accent-soft);color:var(--hv-accent);font-weight:900}.hv-brand-title{display:block;font-size:1.2rem;font-weight:800;letter-spacing:.04em}.hv-brand-subtitle,.hv-login-label,.hv-muted{color:var(--hv-text-muted)}.hv-login-label{display:block;font-size:.78rem;margin:1rem 0 .4rem;text-transform:uppercase}.hv-field input,.hv-field select,.hv-field textarea,.hv-login-input{width:100%;border:1px solid var(--hv-panel-border);border-radius:11px;background:rgba(3,12,20,.72);color:var(--hv-text);outline:none;padding:.72rem .8rem}.hv-login-button,.hv-primary{width:100%;border-color:rgba(24,213,199,.5);background:linear-gradient(135deg,rgba(24,213,199,.35),rgba(24,213,199,.08));font-weight:800;margin-top:1.3rem}.hv-error,.hv-login-error{border:1px solid rgba(255,54,94,.35);border-radius:12px;background:rgba(255,54,94,.12);color:#ffd7df;margin-top:1rem;padding:.7rem}.hv-shell{display:grid;min-height:100vh;grid-template-columns:280px 1fr}.hv-config-shell{background:linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),linear-gradient(135deg,#05101b,#071a2a);background-size:42px 42px,42px 42px,auto}.hv-sidebar{border-right:1px solid var(--hv-panel-border);background:rgba(3,11,19,.78);padding:1.1rem}.hv-sidebar__brand{border:1px solid var(--hv-panel-border);border-radius:18px;background:var(--hv-panel);margin-bottom:1rem;padding:1rem}.hv-sidebar__brand strong{display:block;font-size:1.35rem;letter-spacing:.07em}.hv-sidebar nav{display:grid;gap:.35rem}.hv-nav-link{border:1px solid transparent;border-radius:12px;color:var(--hv-text-muted);padding:.75rem .8rem}.hv-nav-link.active,.hv-nav-link:hover{border-color:var(--hv-panel-border);background:var(--hv-accent-soft);color:var(--hv-text)}.hv-main{min-width:0;padding:1.1rem}.hv-bottom-dock,.hv-card,.hv-context,.hv-modal,.hv-table-card,.hv-topbar,.hv-workspace{border:1px solid var(--hv-panel-border);border-radius:18px;background:var(--hv-panel);box-shadow:var(--hv-shadow)}.hv-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.1rem}.hv-topbar h1{margin:0}.hv-kicker,.hv-topbar span{color:var(--hv-accent);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hv-actions{display:flex;flex-wrap:wrap;gap:.5rem}.hv-grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.9rem}.hv-card{padding:1rem}.hv-card strong{display:block;font-size:2rem}.hv-demo-scenarios-panel{display:grid;gap:.85rem;margin-bottom:1rem;border:1px solid rgba(114,214,215,.2);border-radius:18px;background:linear-gradient(135deg,rgba(3,16,26,.96),rgba(9,30,45,.86));box-shadow:var(--hv-shadow);padding:1rem}.hv-demo-scenarios-controls,.hv-demo-scenarios-head,.hv-panel-title{display:flex;align-items:center;justify-content:space-between;gap:.85rem}.hv-demo-scenarios-head h2{margin:.2rem 0}.hv-demo-scenarios-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.hv-demo-scenarios-controls{align-items:end;border-top:1px solid rgba(114,214,215,.12);border-bottom:1px solid rgba(114,214,215,.12);padding:.75rem 0}.hv-demo-scenarios-controls .hv-field{width:min(420px,100%)}.hv-demo-scenario-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.hv-demo-scenario-card{display:grid;gap:.45rem;border:1px solid rgba(114,214,215,.14);border-radius:14px;background:rgba(2,9,16,.58);padding:.7rem}.hv-demo-scenario-card.selected{border-color:rgba(24,213,199,.58);box-shadow:inset 0 0 0 1px rgba(24,213,199,.18)}.hv-demo-scenario-card.active{border-color:rgba(64,227,138,.58)}.hv-demo-scenario-card>button{display:grid;gap:.35rem;width:100%;border:0;background:transparent;color:var(--hv-text);padding:0;text-align:left}.hv-demo-scenario-card strong{font-size:.96rem}.hv-demo-scenario-card p{color:var(--hv-text-muted);font-size:.75rem;line-height:1.35;margin:0}.hv-demo-scenario-card em{width:-moz-fit-content;width:fit-content;border:1px solid rgba(64,227,138,.36);border-radius:999px;background:rgba(64,227,138,.12);color:var(--hv-success);font-size:.62rem;font-style:normal;font-weight:900;padding:.15rem .42rem}.hv-demo-scenario-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem}.hv-demo-scenario-metrics span{border:1px solid rgba(114,214,215,.12);border-radius:7px;background:rgba(4,15,25,.74);color:var(--hv-text-muted);font-size:.66rem;padding:.28rem .35rem}.hv-demo-scenario-preview,.hv-demo-scenario-result{display:grid;gap:.75rem;border:1px solid rgba(114,214,215,.16);border-radius:14px;background:rgba(4,15,25,.74);padding:.8rem}.hv-demo-preview-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.hv-table-card{overflow:hidden}.hv-table{border-collapse:collapse;width:100%}.hv-table td,.hv-table th{border-bottom:1px solid rgba(114,214,215,.1);color:var(--hv-text-muted);font-size:.86rem;padding:.72rem;text-align:left;vertical-align:top}.hv-table th{letter-spacing:.1em;text-transform:uppercase}.hv-pill,.hv-table th{color:var(--hv-text);font-size:.72rem}.hv-pill{display:inline-flex;border:1px solid var(--hv-panel-border);border-radius:999px;background:var(--hv-accent-soft);margin:.12rem;padding:.22rem .5rem}.hv-pill.danger{border-color:rgba(255,54,94,.4);background:rgba(255,54,94,.13)}.hv-modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(0,4,9,.72);padding:1rem}.hv-modal{max-height:min(88vh,920px);overflow:auto;padding:1.2rem;width:min(960px,100%)}.hv-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.hv-form-grid--compact{gap:.55rem;margin-top:.65rem}.hv-field{display:grid;gap:.35rem}.hv-field.full{grid-column:1/-1}.hv-field label{color:var(--hv-text-muted);font-size:.76rem;text-transform:uppercase}.hv-check-list{display:grid;gap:.35rem;max-height:210px;overflow:auto;padding:.2rem}.hv-check-item{display:flex;align-items:center;gap:.5rem;border:1px solid rgba(114,214,215,.1);border-radius:10px;padding:.48rem}.hv-app-shell{grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 50% 0,rgba(24,213,199,.1),transparent 30rem),linear-gradient(135deg,#030910,#071b2a)}.hv-app-top{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;border-bottom:1px solid var(--hv-panel-border);background:rgba(2,8,14,.9);padding:.75rem 1rem}.hv-tabs{display:flex;gap:.35rem;min-width:0;overflow:auto}.hv-tab{align-items:center;display:inline-flex;gap:.5rem;min-width:-moz-max-content;min-width:max-content;padding:.55rem .7rem}.hv-tab.active{border-color:rgba(24,213,199,.55);background:var(--hv-accent-soft)}.hv-app-body{grid-template-columns:320px 1fr 360px;gap:.85rem;padding:.85rem}.hv-area-tree,.hv-bottom-dock,.hv-context,.hv-workspace{min-height:0;overflow:auto;padding:1rem}.hv-tree-node{border-left:1px solid rgba(114,214,215,.15);margin-left:.4rem;padding-left:.7rem}.hv-tree-button{display:flex;justify-content:space-between;width:100%;margin:.25rem 0;text-align:left}.hv-object-group{margin:.4rem 0 .4rem .8rem}.hv-floorplan{position:relative;min-height:360px;border:1px solid rgba(114,214,215,.18);border-radius:18px;background:linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(24,213,199,.08),transparent 20rem);background-size:28px 28px,28px 28px,auto;overflow:hidden}.hv-marker{position:absolute;display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(24,213,199,.8);border-radius:50%;background:rgba(4,18,28,.92);box-shadow:0 0 24px rgba(24,213,199,.28);transform:translate(-50%,-50%)}.hv-marker.alarm{border-color:var(--hv-danger);box-shadow:0 0 0 8px rgba(255,54,94,.14),0 0 28px rgba(255,54,94,.5)}.hv-bottom-dock{border-radius:0;border-inline:0;border-bottom:0;max-height:260px}.hv-dock-tabs{display:flex;gap:.5rem;margin-bottom:.75rem}.hv-danger-zone{border:1px solid rgba(255,54,94,.24);border-radius:18px;background:rgba(255,54,94,.08);margin-bottom:1rem;padding:1rem}@media (max-width:1100px){.hv-app-body,.hv-shell{grid-template-columns:1fr}.hv-sidebar{position:static}.hv-app-top,.hv-form-grid{grid-template-columns:1fr}}.hv-psim-topbar{grid-template-columns:300px minmax(420px,1fr) 410px;gap:.7rem;align-items:stretch;border-bottom:1px solid var(--hv-panel-border);background:linear-gradient(180deg,rgba(2,8,14,.98),rgba(4,15,25,.96));box-shadow:0 10px 34px rgba(0,0,0,.28);padding:.55rem;z-index:20}.hv-psim-brand,.hv-psim-center,.hv-session-panel{border:1px solid rgba(114,214,215,.16);border-radius:12px;background:rgba(7,22,35,.82)}.hv-psim-brand{grid-template-columns:auto 1fr auto;gap:.7rem;padding:.7rem}.hv-psim-brand strong,.hv-session-panel strong,.hv-workspace-state strong{display:block;letter-spacing:.04em}.hv-psim-brand span,.hv-session-meta,.hv-session-panel span,.hv-workspace-state span{color:var(--hv-text-muted);font-size:.72rem}.hv-link-bad,.hv-link-ok,.hv-priority,.hv-status-chip{border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:900;padding:.22rem .48rem;text-transform:uppercase}.hv-link-ok,.hv-status-chip.ok{background:rgba(64,227,138,.14);border:1px solid rgba(64,227,138,.35);color:var(--hv-success)}.hv-status-chip.warn{background:rgba(255,159,28,.14);border:1px solid rgba(255,159,28,.35);color:var(--hv-warning)}.hv-link-bad,.hv-status-chip.danger{background:rgba(255,54,94,.14);border:1px solid rgba(255,54,94,.35);color:var(--hv-danger)}.hv-psim-center{display:grid;grid-template-columns:190px 1fr 330px;gap:.55rem;padding:.55rem;position:relative}.hv-workspace-state{border-right:1px solid rgba(114,214,215,.15);padding-right:.65rem}.hv-actions,.hv-command-strip,.hv-dock-tabs,.hv-session-actions{display:flex;flex-wrap:wrap;gap:.35rem}.hv-actions button,.hv-command-strip button,.hv-dock-tabs button,.hv-session-actions button,.hv-view-switch button{border-radius:8px;font-size:.72rem;min-height:28px;padding:.36rem .54rem}.hv-session-actions .danger,button.danger{border-color:rgba(255,54,94,.4);background:rgba(255,54,94,.16)}.hv-alert-search{grid-template-columns:1fr auto;gap:.35rem}.hv-alert-search input,.hv-dock-toolbar input{border:1px solid var(--hv-panel-border);border-radius:9px;background:rgba(3,12,20,.78);color:var(--hv-text);padding:.48rem .6rem}.hv-command-message{position:absolute;bottom:-2rem;left:.6rem;z-index:5;border:1px solid var(--hv-panel-border);border-radius:10px;background:rgba(2,8,14,.94);color:var(--hv-accent);padding:.45rem .7rem}.hv-session-panel{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.55rem}.hv-session-actions,.hv-session-meta{justify-content:flex-end}.hv-session-meta{display:flex;flex-wrap:wrap;gap:.35rem}.hv-app-shell{grid-template-rows:auto minmax(0,1fr) 260px;min-height:100vh}.hv-app-body{grid-template-columns:315px minmax(0,1fr) 380px}.hv-workspace-panel{grid-template-rows:auto minmax(0,1fr);min-height:0}.hv-workspace-panel .hv-workspace{height:100%}.hv-layout-wide-context .hv-app-body{grid-template-columns:290px minmax(0,1fr) 460px}.hv-layout-wide-map .hv-app-body{grid-template-columns:285px minmax(0,1.35fr) 330px}.hv-area-tree,.hv-context--operator,.hv-workspace--operator{border-radius:14px;box-shadow:none}.hv-dock-toolbar,.hv-panel-title,.hv-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.65rem}.hv-workspace-head h1,.hv-workspace-head h2{margin:.1rem 0 0}.hv-tabs--operator{margin-bottom:.65rem}.hv-tab-close{border-left:1px solid rgba(114,214,215,.18);color:var(--hv-text-muted);margin-left:.25rem;padding-left:.35rem}.hv-tree-button.alarm,.hv-tree-object.alarm,.row-alarm{background:rgba(255,54,94,.1);border-color:rgba(255,54,94,.32)}.hv-tree-object{font-size:.72rem;margin-left:.4rem}.hv-context-grid,.hv-ops-ribbon{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:.45rem;margin-bottom:.65rem}.hv-metric{padding:.55rem}.hv-metric strong{font-size:1rem}.hv-view-switch{display:inline-flex;gap:.35rem}.hv-view-switch .active{border-color:rgba(24,213,199,.52);background:var(--hv-accent-soft)}.hv-workspace--operator .hv-floorplan{min-height:calc(100vh - 365px)}.hv-floorplan--map{background:radial-gradient(circle at 20% 30%,rgba(24,213,199,.12),transparent 11rem),radial-gradient(circle at 75% 62%,rgba(255,159,28,.12),transparent 12rem),linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),#06131f;background-size:auto,auto,46px 46px,46px 46px,auto}.hv-floorplan--cad{background:linear-gradient(30deg,transparent 49%,rgba(24,213,199,.06) 50%,transparent 51%),linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),#06131f;background-size:88px 88px,24px 24px,24px 24px,auto}.hv-map-label{left:1rem;position:absolute;top:1rem;z-index:2;border:1px solid var(--hv-panel-border);border-radius:12px;background:rgba(2,8,14,.72);padding:.6rem .8rem}.hv-map-label span{color:var(--hv-accent);display:block;font-size:.72rem;text-transform:uppercase}.hv-marker{font-size:.62rem;font-weight:900}.hv-marker.offline{border-color:rgba(143,166,184,.38);color:var(--hv-muted)}.hv-alarm-pulse{position:absolute;display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--hv-danger);border-radius:50%;background:rgba(255,54,94,.2);color:#fff;font-weight:900;transform:translate(-50%,-50%);animation:hvPulse 1.8s ease-in-out infinite}@keyframes hvPulse{0%,to{box-shadow:0 0 0 0 rgba(255,54,94,.38)}50%{box-shadow:0 0 0 14px rgba(255,54,94,0)}}.hv-operational-tables{max-height:calc(100vh - 355px)}.hv-app-shell--compact .hv-table td,.hv-app-shell--compact .hv-table th,.hv-table--dense td,.hv-table--dense th{font-size:.72rem;padding:.42rem .5rem}.hv-priority-critical,.hv-priority-high{background:rgba(255,54,94,.18);color:#ffd6de}.hv-priority-medium{background:rgba(255,159,28,.18);color:#ffe3b8}.hv-priority-info,.hv-priority-low{background:rgba(24,213,199,.13);color:#c8fffa}.hv-context--operator pre,.hv-workspace--operator pre{border:1px solid rgba(114,214,215,.12);border-radius:12px;background:rgba(1,7,13,.58);color:var(--hv-text-muted);font-size:.7rem;max-height:260px;overflow:auto;padding:.7rem;white-space:pre-wrap}.hv-sop,.hv-video-preview{margin-top:.65rem}.hv-floating-video__surface,.hv-video-placeholder{display:grid;min-height:150px;place-items:center;border:1px solid rgba(114,214,215,.16);border-radius:12px;background:linear-gradient(135deg,rgba(24,213,199,.08),transparent),repeating-linear-gradient(0deg,hsla(0,0%,100%,.03),hsla(0,0%,100%,.03) 1px,transparent 0,transparent 7px),#030a11;color:var(--hv-text-muted);font-weight:900;letter-spacing:.08em;margin:.55rem 0}.hv-bottom-dock--operator{max-height:260px;padding-top:.65rem}.hv-dock-toolbar input{min-width:240px}.hv-floating-video{position:fixed;z-index:90;display:grid;grid-template-rows:auto 1fr auto;min-width:320px;min-height:48px;resize:both;overflow:auto;border:1px solid rgba(24,213,199,.35);border-radius:14px;background:rgba(2,9,16,.96);box-shadow:0 28px 90px rgba(0,0,0,.55)}.hv-floating-video footer,.hv-floating-video header{display:flex;align-items:center;gap:.4rem;justify-content:space-between;background:rgba(10,30,46,.92);padding:.45rem}.hv-floating-video header{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hv-floating-video header button{cursor:pointer}.hv-floating-video.minimized{resize:none}.hv-build-badge{position:fixed;right:8px;bottom:6px;z-index:200;max-width:360px;overflow:hidden;border:1px solid rgba(24,213,199,.24);border-radius:999px;background:rgba(1,7,13,.78);color:rgba(219,246,246,.78);font-size:.58rem;letter-spacing:.04em;padding:.14rem .42rem;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.hv-floating-video__resize-handle{position:absolute;right:2px;bottom:2px;width:18px;height:18px;cursor:nwse-resize}.hv-floating-video__resize-handle:after{position:absolute;right:4px;bottom:4px;width:9px;height:9px;border-right:2px solid rgba(24,213,199,.72);border-bottom:2px solid rgba(24,213,199,.72);content:""}.hv-object-context-menu{position:fixed;z-index:140;width:270px;overflow:hidden;border:1px solid rgba(24,213,199,.32);border-radius:12px;background:rgba(2,10,18,.98);box-shadow:0 24px 80px rgba(0,0,0,.58),inset 0 0 0 1px hsla(0,0%,100%,.03);color:var(--hv-text)}.hv-object-context-menu header{display:flex;gap:.58rem;align-items:center;border-bottom:1px solid rgba(114,214,215,.12);background:linear-gradient(135deg,rgba(24,213,199,.12),rgba(3,17,27,.86));padding:.65rem .72rem}.hv-object-context-menu header div{display:grid;min-width:0}.hv-object-context-menu button strong,.hv-object-context-menu header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-object-context-menu button small,.hv-object-context-menu header span{overflow:hidden;color:var(--hv-text-muted);font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.hv-object-context-menu__section{display:grid;gap:.2rem;border-bottom:1px solid rgba(114,214,215,.08);padding:.45rem}.hv-object-context-menu__section:last-child{border-bottom:0}.hv-object-context-menu__section>span{color:var(--hv-accent);font-size:.58rem;font-weight:900;letter-spacing:.1em;padding:.12rem .22rem;text-transform:uppercase}.hv-object-context-menu button{display:grid;gap:.1rem;width:100%;min-height:0;justify-items:start;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--hv-text);padding:.42rem .48rem;text-align:left}.hv-object-context-menu button:focus-visible:not(:disabled),.hv-object-context-menu button:hover:not(:disabled){border-color:rgba(24,213,199,.28);background:rgba(24,213,199,.12);color:#e8fffd}.hv-object-context-menu button.is-danger:focus-visible:not(:disabled),.hv-object-context-menu button.is-danger:hover:not(:disabled){border-color:rgba(255,54,94,.42);background:rgba(255,54,94,.12)}.hv-object-context-menu button:disabled{cursor:not-allowed;opacity:.45}.hv-console-modal{width:min(880px,calc(100vw - 2rem))}@media (max-width:1300px){.hv-psim-center,.hv-psim-topbar{grid-template-columns:1fr}}body,html{height:100%}.hv-app-shell{display:grid;grid-template-rows:72px minmax(0,1fr) var(--bottom-dock-height,clamp(180px,30vh,55vh));width:100vw;height:100vh;min-height:0;max-height:100vh;overflow:hidden;background:radial-gradient(circle at 50% 0,rgba(24,213,199,.08),transparent 24rem),linear-gradient(135deg,#02070d,#061522 54%,#030911)}.hv-psim-topbar{display:grid;grid-template-rows:42px 30px;grid-template-columns:1fr;height:72px;max-height:72px;gap:0;overflow:visible;position:relative;z-index:30;border-bottom:1px solid rgba(114,214,215,.22);background:linear-gradient(180deg,rgba(2,8,14,.98),rgba(4,14,22,.96));padding:0}.hv-top-main{display:grid;grid-template-columns:245px minmax(0,1fr) max-content;align-items:center;min-width:0;border-bottom:1px solid rgba(114,214,215,.1)}.hv-operator-strip,.hv-psim-brand,.hv-session-panel{border:0;border-radius:0;background:transparent;box-shadow:none}.hv-psim-brand{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:.45rem;align-items:center;height:42px;border-right:1px solid rgba(114,214,215,.12);padding:0 .55rem}.hv-psim-brand .hv-brand-mark{width:28px;height:28px;border-radius:7px;font-size:.72rem}.hv-psim-brand strong{font-size:.82rem;line-height:1}.hv-psim-brand span{display:block;overflow:hidden;color:var(--hv-text-muted);font-size:.63rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.hv-link-bad,.hv-link-ok,.hv-priority,.hv-status-chip{align-items:center;min-height:19px;font-size:.58rem;line-height:1;padding:.18rem .38rem}.hv-operator-strip{display:grid;grid-template-columns:155px minmax(260px,1fr) auto;gap:.38rem;align-items:center;min-width:0;height:42px;padding:0 .45rem;position:relative}.hv-workspace-state{min-width:0;border-right:1px solid rgba(114,214,215,.12);padding-right:.45rem}.hv-workspace-state span{display:block;color:var(--hv-accent);font-size:.58rem;font-weight:900;letter-spacing:.1em}.hv-workspace-state strong{display:block;overflow:hidden;font-size:.76rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.hv-actions,.hv-command-strip,.hv-dock-tabs,.hv-map-tools,.hv-session-actions,.hv-workspace-tools{display:flex;flex-wrap:nowrap;gap:.25rem;min-width:0}.hv-command-strip{overflow:hidden}.hv-actions button,.hv-command-strip button,.hv-dock-tabs button,.hv-map-tools button,.hv-session-panel button,.hv-view-switch button{min-height:26px;border-radius:5px;font-size:.64rem;line-height:1;padding:.28rem .44rem;white-space:nowrap}.hv-alert-search{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.25rem;align-items:center;min-width:0}.hv-alert-search>span{color:var(--hv-accent);font-size:.75rem;line-height:1;opacity:.82}.hv-alert-search input,.hv-area-tree input,.hv-dock-toolbar input{height:26px;min-height:26px;border-radius:5px;font-size:.68rem;padding:.22rem .42rem}.hv-alert-search input{width:100%}.hv-search-results{position:absolute;top:calc(100% + .38rem);left:0;z-index:80;width:min(560px,62vw);max-height:min(560px,calc(100vh - 90px));overflow:auto;border:1px solid rgba(24,213,199,.28);border-radius:7px;background:rgba(2,10,17,.98);box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 0 0 1px hsla(0,0%,100%,.03);padding:.35rem}.hv-search-group{display:grid;gap:.18rem;padding:.2rem 0}.hv-search-group>span{color:var(--hv-accent);font-size:.56rem;font-weight:900;letter-spacing:.12em;padding:0 .28rem;text-transform:uppercase}.hv-search-results button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"icon title meta" "icon subtitle meta";align-items:center;gap:.1rem .45rem;min-height:38px;width:100%;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--hv-text);text-align:left;padding:.25rem .35rem}.hv-search-results button.active,.hv-search-results button:hover{border-color:rgba(24,213,199,.32);background:rgba(24,213,199,.1)}.hv-search-icon{grid-area:icon;display:grid;place-items:center;min-width:30px;height:24px;border-radius:4px;background:rgba(24,213,199,.12);color:var(--hv-accent);font-size:.56rem;font-weight:900}.hv-search-results strong{grid-area:title;font-size:.72rem}.hv-search-results small,.hv-search-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-search-results small{grid-area:subtitle;color:var(--hv-text-muted);font-size:.62rem}.hv-search-results em{grid-area:meta;color:var(--hv-text-muted);font-size:.58rem;font-style:normal;text-align:right}.hv-search-results p{color:var(--hv-text-muted);font-size:.68rem;margin:.25rem}.hv-session-panel{display:flex;align-items:center;gap:.3rem;height:42px;max-width:560px;border-left:1px solid rgba(114,214,215,.12);padding:0 .45rem;white-space:nowrap}.hv-session-panel strong{max-width:150px;overflow:hidden;font-size:.72rem;text-overflow:ellipsis}.hv-session-panel span{color:var(--hv-text-muted);font-size:.62rem}.hv-server-state{display:inline-flex;gap:.28rem;align-items:center;min-height:22px;border:1px solid rgba(114,214,215,.18);border-radius:999px;background:rgba(4,15,25,.72);color:var(--hv-text);font-size:.56rem;line-height:1;padding:.18rem .42rem}.hv-server-state i{width:6px;height:6px;border-radius:999px;background:currentColor;box-shadow:0 0 9px currentColor}.hv-server-state.ok{color:var(--hv-success)}.hv-server-state.danger{color:var(--hv-danger)}.hv-session-panel button.danger{color:#ffd6de}.hv-menu-anchor{position:relative;display:inline-flex;align-items:center}.hv-header-menu-button,.hv-user-menu-button{display:inline-flex;align-items:center;gap:.32rem;min-height:26px;border-radius:5px;font-size:.64rem;line-height:1;padding:.28rem .5rem}.hv-user-menu-button{max-width:260px;padding-right:.42rem}.hv-user-menu-button small,.hv-user-menu-button strong{overflow:hidden;max-width:110px;text-overflow:ellipsis;white-space:nowrap}.hv-user-menu-button small{max-width:92px;color:var(--hv-text-muted);font-size:.58rem}.hv-header-dropdown{position:absolute;top:calc(100% + .38rem);right:0;z-index:90;display:grid;gap:.12rem;min-width:245px;border:1px solid rgba(24,213,199,.24);border-radius:7px;background:rgba(2,10,17,.98);box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 0 0 1px hsla(0,0%,100%,.03);padding:.35rem}.hv-command-menu{left:0;right:auto;min-width:285px}.hv-header-dropdown button{justify-content:flex-start;width:100%;min-height:32px;border-color:transparent;background:transparent;color:var(--hv-text);text-align:left;padding:.34rem .42rem}.hv-header-dropdown button:focus-visible:not(:disabled),.hv-header-dropdown button:hover:not(:disabled){border-color:rgba(24,213,199,.26);background:rgba(24,213,199,.1)}.hv-header-dropdown button:disabled{cursor:not-allowed;opacity:.45}.hv-header-dropdown button strong{display:block;font-size:.68rem}.hv-header-dropdown button span{display:block;color:var(--hv-text-muted);font-size:.58rem}.hv-header-dropdown hr{width:100%;border:0;border-top:1px solid rgba(114,214,215,.14);margin:.2rem 0}.hv-alarm-notification-anchor{z-index:95}.hv-alarm-notification-button{position:relative;min-width:46px;justify-content:center;gap:.22rem;border-color:rgba(114,214,215,.22);background:rgba(4,15,25,.72)}.hv-alarm-notification-button.has-alarms{border-color:color-mix(in srgb,var(--alarm-notification-color,var(--hv-danger)),#fff 12%);background:color-mix(in srgb,var(--alarm-notification-color,var(--hv-danger)),transparent 86%);color:var(--alarm-notification-color,var(--hv-danger))}.hv-alarm-notification-button.is-none{--alarm-notification-color:var(--hv-muted);color:var(--hv-text-muted)}.hv-alarm-notification-button.is-low{--alarm-notification-color:var(--hv-accent)}.hv-alarm-notification-button.is-medium{--alarm-notification-color:var(--hv-warning)}.hv-alarm-notification-button.is-critical,.hv-alarm-notification-button.is-high{--alarm-notification-color:var(--hv-danger)}.hv-alarm-notification-button.is-critical.has-alarms{animation:hv-alarm-notification-pulse 1.45s ease-in-out infinite}.hv-alarm-notification-icon{font-size:.9rem;line-height:1}.hv-alarm-notification-badge{display:inline-grid;min-width:17px;height:17px;place-items:center;border-radius:999px;background:var(--alarm-notification-color,rgba(114,214,215,.36));color:#02070d;font-size:.56rem;font-weight:1000;line-height:1;padding:0 .25rem}.hv-alarm-notification-button.is-empty .hv-alarm-notification-badge{background:rgba(114,214,215,.12);color:var(--hv-text-muted)}.hv-alarm-notification-dropdown{width:min(420px,calc(100vw - 1rem));max-height:min(640px,calc(100vh - 92px));overflow:hidden;gap:.35rem;border-color:color-mix(in srgb,var(--alarm-notification-color,var(--hv-accent)),transparent 58%);padding:.5rem}.hv-alarm-notification-dropdown.is-low,.hv-alarm-notification-dropdown.is-none{--alarm-notification-color:var(--hv-accent)}.hv-alarm-notification-dropdown.is-medium{--alarm-notification-color:var(--hv-warning)}.hv-alarm-notification-dropdown.is-critical,.hv-alarm-notification-dropdown.is-high{--alarm-notification-color:var(--hv-danger)}.hv-alarm-notification-actions,.hv-alarm-notification-head,.hv-alarm-notification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.hv-alarm-notification-head{border-bottom:1px solid rgba(114,214,215,.14);padding:.12rem .1rem .42rem}.hv-alarm-notification-head strong{display:block;font-size:.84rem}.hv-alarm-notification-severity{border:1px solid color-mix(in srgb,var(--alarm-notification-color),#fff 14%);border-radius:999px;background:color-mix(in srgb,var(--alarm-notification-color),transparent 84%);color:var(--alarm-notification-color);font-size:.56rem;font-weight:1000;letter-spacing:.08em;padding:.18rem .4rem;text-transform:uppercase}.hv-alarm-notification-toolbar{justify-content:flex-start}.hv-header-dropdown .hv-alarm-notification-actions button,.hv-header-dropdown .hv-alarm-notification-more,.hv-header-dropdown .hv-alarm-notification-toolbar button{width:auto;min-height:24px;border-color:rgba(114,214,215,.16);background:rgba(4,15,25,.72);font-size:.58rem;padding:.22rem .42rem}.hv-alarm-notification-list{display:grid;gap:.35rem;max-height:min(420px,calc(100vh - 205px));overflow:auto;padding-right:.1rem}.hv-alarm-notification-item{display:grid;gap:.3rem;border:1px solid rgba(114,214,215,.13);border-left:3px solid var(--alarm-item-color,var(--hv-accent));border-radius:7px;background:rgba(4,15,25,.76);padding:.35rem}.hv-alarm-notification-item.is-low{--alarm-item-color:var(--hv-accent)}.hv-alarm-notification-item.is-medium{--alarm-item-color:var(--hv-warning)}.hv-alarm-notification-item.is-critical,.hv-alarm-notification-item.is-high{--alarm-item-color:var(--hv-danger)}.hv-header-dropdown .hv-alarm-notification-item-main{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"severity title" "severity meta" "severity time";gap:.1rem .42rem;min-height:0;border-radius:5px;padding:.22rem}.hv-alarm-notification-item-main .hv-priority{grid-area:severity;align-self:start}.hv-alarm-notification-item-main strong{grid-area:title;overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.hv-alarm-notification-item-main em,.hv-alarm-notification-item-main small{overflow:hidden;color:var(--hv-text-muted);font-size:.6rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.hv-alarm-notification-item-main small{grid-area:meta}.hv-alarm-notification-item-main em{grid-area:time}.hv-alarm-notification-actions{justify-content:flex-end}.hv-alarm-notification-empty{margin:.35rem .15rem;color:var(--hv-text-muted);font-size:.68rem}.hv-header-dropdown .hv-alarm-notification-more{justify-content:center;width:100%;color:var(--hv-accent)}@keyframes hv-alarm-notification-pulse{0%,to{box-shadow:0 0 0 rgba(255,54,94,0)}50%{box-shadow:0 0 18px rgba(255,54,94,.42)}}.hv-command-message{top:38px;bottom:auto;left:.5rem;z-index:30;padding:.3rem .5rem;font-size:.68rem}.hv-tabs--operator{align-items:end;height:30px;min-height:0;gap:0;overflow-x:auto;overflow-y:hidden;border-top:1px solid hsla(0,0%,100%,.02);margin:0;padding:0 .45rem;scrollbar-width:none}.hv-tabs--operator::-webkit-scrollbar{display:none}.hv-tabs--operator .hv-tab{height:28px;min-height:28px;border:1px solid rgba(114,214,215,.14);border-bottom-color:rgba(24,213,199,.26);border-radius:6px 6px 0 0;background:rgba(5,18,29,.72);color:var(--hv-text-muted);font-size:.66rem;padding:.18rem .5rem}.hv-tabs--operator .hv-tab.active{border-color:rgba(24,213,199,.5) rgba(24,213,199,.5) rgba(24,213,199,.95);background:rgba(24,213,199,.16);color:var(--hv-text)}.hv-tab-close{margin-left:.2rem;padding-left:.28rem}.hv-app-body{display:grid;gap:0;min-height:0;overflow:hidden;padding:.35rem}.hv-app-body,.hv-layout-wide-context .hv-app-body{grid-template-columns:var(--area-tree-width,300px) 7px minmax(0,1fr) 7px var(--context-panel-width,360px)}.hv-layout-wide-map .hv-app-body{grid-template-columns:var(--area-tree-width,300px) 7px minmax(0,1.35fr) 7px var(--context-panel-width,360px)}.hv-layout-splitter{position:relative;display:grid;place-items:center;min-width:7px;height:100%;cursor:col-resize;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hv-layout-splitter:before{position:absolute;inset:0 -5px;content:""}.hv-layout-splitter span{position:relative;z-index:1;width:2px;height:42px;border-radius:999px;background:rgba(114,214,215,.22);transition:background .14s ease,box-shadow .14s ease,height .14s ease}.hv-layout-splitter.is-resizing span,.hv-layout-splitter:focus-visible span,.hv-layout-splitter:hover span{height:78px;background:rgba(24,213,199,.9);box-shadow:0 0 18px rgba(24,213,199,.26)}.hv-layout-splitter:focus-visible{outline:0}body.hv-resizing-layout-panel,body.hv-resizing-layout-panel *{cursor:col-resize!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.hv-area-tree,.hv-bottom-dock,.hv-context,.hv-workspace,.hv-workspace-panel{min-height:0}.hv-area-tree,.hv-bottom-dock--operator,.hv-context--operator,.hv-workspace--operator{border-radius:5px;background:rgba(5,17,27,.92);box-shadow:none;padding:.45rem}.hv-area-tree{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.hv-panel-title--stacked{display:grid;gap:.35rem;align-items:stretch;margin-bottom:.35rem}.hv-panel-title--stacked strong{font-size:.78rem}.hv-area-tree-body{min-height:0;overflow:auto;padding-right:.1rem}.hv-tree-filter{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem;align-items:center}.hv-tree-filter span{color:var(--hv-text-muted);font-size:.62rem}.hv-tree-filter select{height:26px;min-width:0;border:1px solid rgba(114,214,215,.18);border-radius:5px;background:rgba(2,10,17,.82);color:var(--hv-text);font-size:.68rem;padding:.18rem .38rem}.hv-tree-empty-toggle{min-height:20px;color:var(--hv-text-muted);font-size:.62rem}.hv-tree-node{border-left:1px solid rgba(114,214,215,.12);margin-left:.18rem;padding-left:.42rem}.hv-tree-area-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:.08rem;align-items:center}.hv-tree-disclosure{display:grid;place-items:center;width:18px;height:22px;min-height:22px;border:0;border-radius:4px;background:transparent;color:var(--hv-text-muted);font-size:.62rem;padding:0}.hv-tree-disclosure:hover:not(:disabled){background:rgba(24,213,199,.08);color:var(--hv-accent)}.hv-tree-disclosure:disabled{opacity:.35}.hv-tree-children{display:grid;gap:.04rem;margin-left:.42rem}.hv-tree-button{min-height:24px;align-items:center;border-color:transparent;border-radius:4px;background:transparent;font-size:.68rem;margin:.08rem 0;padding:.18rem .28rem}.hv-tree-button:hover:not(:disabled){background:rgba(24,213,199,.08);transform:none}.hv-tree-button span:first-child{display:inline-flex;align-items:center;gap:.28rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-tree-button span:last-child{color:var(--hv-text-muted);font-size:.58rem;text-transform:uppercase}.hv-object-group{margin:.15rem 0 .25rem .45rem}.hv-object-group .hv-pill{margin:.08rem 0;border:0;background:transparent;color:var(--hv-accent);font-size:.58rem;letter-spacing:.08em;padding:0;text-transform:uppercase}.hv-tree-object{margin-left:0;font-size:.64rem}.hv-tree-area-button span:last-child{min-width:-moz-max-content;min-width:max-content}.hv-tree-area-icon{display:inline-grid;place-items:center;width:16px;color:var(--hv-accent);font-size:.68rem}.hv-tree-object-direct{min-height:26px;gap:.35rem;padding-left:.42rem}.hv-tree-object-direct span:first-child{gap:.32rem}.hv-tree-object-direct strong{overflow:hidden;min-width:0;color:var(--hv-text);font-size:.66rem;text-overflow:ellipsis}.hv-tree-object-direct small{overflow:hidden;max-width:74px;color:var(--hv-text-muted);font-size:.55rem;text-overflow:ellipsis;white-space:nowrap}.hv-object-tree-icon{display:inline-grid;place-items:center;width:18px;min-width:18px;font-size:.78rem;line-height:1;filter:drop-shadow(0 0 8px color-mix(in srgb,currentColor 35%,transparent))}.hv-tree-status-badge{display:inline-flex;justify-content:center;min-width:34px;border:1px solid;border-radius:999px;font-size:.52rem;font-weight:900;line-height:1;padding:.16rem .24rem}.hv-tree-status-badge.online{color:var(--hv-success)}.hv-tree-status-badge.event{color:#f59e0b}.hv-tree-status-badge.alarm{color:var(--hv-danger);animation:hvPulse 1.4s ease-in-out infinite}.hv-tree-status-badge.acknowledged,.hv-tree-status-badge.offline{color:#94a3b8}.hv-tree-object-direct.is-offline{opacity:.58}.hv-workspace-panel{display:grid;grid-template-rows:minmax(0,1fr);overflow:hidden}.hv-workspace--operator{display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.hv-workspace-head{min-height:33px;margin-bottom:.28rem;gap:.4rem}.hv-workspace-head h1,.hv-workspace-head h2{overflow:hidden;max-width:48vw;font-size:.94rem;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.hv-workspace-tools{align-items:center;justify-content:flex-end}.hv-view-switch{gap:.15rem}.hv-map-tools button,.hv-view-switch button{height:24px;min-height:24px;font-size:.61rem}.hv-ops-ribbon{display:flex;flex-wrap:wrap;gap:.25rem;margin:0 0 .3rem}.hv-context-grid .hv-card,.hv-ops-ribbon .hv-card{display:flex;align-items:center;justify-content:space-between;min-width:0;gap:.35rem;border-radius:4px;padding:.24rem .36rem}.hv-ops-ribbon .hv-card{width:auto;min-width:118px;background:rgba(2,10,17,.78)}.hv-context-grid .hv-card strong,.hv-ops-ribbon .hv-card strong{font-size:.72rem;line-height:1}.hv-context-grid .hv-kicker,.hv-ops-ribbon .hv-kicker{font-size:.52rem;letter-spacing:.08em}.hv-floorplan,.hv-workspace--operator .hv-floorplan{width:100%;height:100%;min-height:0;border-radius:5px}.hv-floorplan--map{background:radial-gradient(circle at 22% 34%,rgba(24,213,199,.16),transparent 12rem),radial-gradient(circle at 76% 64%,rgba(255,159,28,.11),transparent 13rem),linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),#04101b;background-size:auto,auto,36px 36px,36px 36px,auto}.hv-map-label{top:.55rem;left:.55rem;max-width:min(540px,calc(100% - 1rem));border-radius:5px;padding:.38rem .5rem}.hv-map-label span{font-size:.58rem}.hv-map-label strong{display:block;overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.hv-map-label__actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.42rem}.hv-map-label__actions button{min-height:28px;padding:.28rem .5rem}.hv-map-label--controls{z-index:4}.hv-marker{width:28px;height:28px;font-size:.54rem}.hv-spatial-view{position:relative;overflow:hidden;border:1px solid rgba(114,214,215,.14);background:#03101a}.hv-spatial-workspace{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.24rem;min-height:0;height:100%}.hv-spatial-view-selector{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:30px;min-width:0;border:1px solid rgba(114,214,215,.12);border-radius:6px;background:linear-gradient(90deg,rgba(2,12,20,.9),rgba(5,19,31,.72));padding:.18rem .26rem .18rem .42rem}.hv-spatial-view-selector label{display:grid;grid-template-columns:auto minmax(180px,330px);align-items:center;gap:.38rem;min-width:0}.hv-spatial-view-selector label>span{color:var(--hv-text-muted);font-size:.57rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.hv-spatial-view-selector select{width:100%;min-width:0;height:24px;border:1px solid rgba(114,214,215,.22);border-radius:4px;background:rgba(3,13,22,.95);color:var(--hv-text);font-size:.68rem;line-height:1;padding:0 1.6rem 0 .45rem}.hv-spatial-view-selector__meta{display:flex;align-items:center;justify-content:flex-end;gap:.24rem;min-width:0}.hv-spatial-view-selector__meta span{overflow:hidden;max-width:150px;border:1px solid rgba(114,214,215,.14);border-radius:999px;background:rgba(114,214,215,.08);color:var(--hv-text-muted);font-size:.56rem;font-weight:700;letter-spacing:.05em;padding:.14rem .38rem;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.hv-spatial-empty{display:grid;place-content:center;gap:.35rem;color:var(--hv-text-muted);padding:1rem;text-align:center}.hv-spatial-configure-link{justify-self:center;border:1px solid rgba(64,227,138,.28);border-radius:6px;background:rgba(64,227,138,.1);color:var(--hv-accent);font-size:.68rem;font-weight:700;letter-spacing:.05em;padding:.42rem .7rem;text-decoration:none;text-transform:uppercase}.hv-spatial-empty--overlay{position:absolute;inset:auto 1rem 1rem auto;z-index:3;border:1px solid rgba(114,214,215,.18);border-radius:7px;background:rgba(2,9,16,.82);font-size:.72rem}.hv-object-overlay-layer,.hv-spatial-base-image,.hv-spatial-grid{position:absolute;inset:0}.hv-spatial-base-image{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;opacity:.86}.hv-spatial-grid{background:linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),radial-gradient(circle at 45% 45%,rgba(24,213,199,.1),transparent 20rem),#04101b;background-size:42px 42px,42px 42px,auto,auto}.hv-spatial-grid--geo{background:radial-gradient(circle at 50% 50%,rgba(24,213,199,.12),transparent 10rem),linear-gradient(30deg,rgba(24,213,199,.07) 12%,transparent 12% 88%,rgba(24,213,199,.06) 88%),linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),#03101a;background-size:auto,auto,34px 34px,34px 34px,auto}.hv-object-overlay-layer{z-index:2}.hv-spatial-marker{position:absolute;display:grid;width:auto;height:auto;place-items:center;border-color:transparent;color:var(--marker-color,#18d5c7)}.hv-spatial-marker,.hv-spatial-marker-shell{background:transparent;box-shadow:none;transform-origin:center}.hv-spatial-marker-shell{position:absolute;display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:0;border:0;color:inherit;padding:0}button.hv-spatial-marker-shell:hover:not(:disabled){border-color:transparent;background:transparent;box-shadow:none}.hv-google-object-marker.hv-spatial-marker-shell,.hv-google-object-marker.hv-spatial-marker-shell:hover:not(:disabled){position:relative;transform:translate(-50%,-50%)}.hv-planar-draft-marker.hv-spatial-marker-shell,.hv-planar-object-marker.hv-spatial-marker-shell,.hv-planar-object-marker.hv-spatial-marker-shell:hover:not(:disabled){transform:translate(-50%,-50%)}.hv-google-object-marker.is-selected,.hv-spatial-marker.is-selected,.hv-spatial-marker.selected{box-shadow:0 0 0 2px hsla(0,0%,100%,.96),0 0 0 5px rgba(24,213,199,.26),0 0 28px color-mix(in srgb,var(--marker-color,#18d5c7),transparent 22%);outline:1px solid rgba(24,213,199,.92)}.hv-marker-trail{position:absolute;right:70%;width:54px;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--marker-color,#ff9f1c));opacity:.8}.hv-spatial-marker.is-pulse{animation:hv-spatial-pulse 1.15s ease-in-out infinite}.hv-spatial-marker.is-alarmRing:after{position:absolute;inset:-8px;border:2px solid var(--marker-color,#ff365e);border-radius:999px;content:"";animation:hv-alarm-ring 1.15s ease-out infinite}.hv-spatial-marker.has-trail .hv-marker-trail,.hv-spatial-marker.is-movingTrail .hv-marker-trail{animation:hv-moving-trail .9s linear infinite}@keyframes hv-spatial-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.65)}}@keyframes hv-alarm-ring{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.8)}}@keyframes hv-moving-trail{0%{opacity:.25;transform:translateX(10px)}to{opacity:.95;transform:translateX(-8px)}}.hv-alarm-pulse{width:30px;height:30px}.hv-operational-tables{height:100%;max-height:none;overflow:auto}.hv-context--operator{overflow:auto}.hv-context--operator h2{margin:.35rem 0;font-size:.96rem}.hv-context-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.28rem;margin-bottom:.45rem}.hv-context-list{display:grid;gap:.18rem;border-top:1px solid rgba(114,214,215,.1);margin-top:.45rem;padding-top:.45rem}.hv-context-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.35rem;align-items:center;min-height:24px;border:1px solid rgba(114,214,215,.08);border-radius:4px;background:rgba(1,8,14,.58);color:var(--hv-text-muted);font-size:.65rem;padding:.18rem .28rem}.hv-context-row strong{overflow:hidden;color:var(--hv-text);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.hv-context--operator pre,.hv-workspace--operator pre{max-height:150px;border-radius:4px;font-size:.62rem;padding:.45rem}.hv-floating-video__surface,.hv-video-placeholder{min-height:118px;border-radius:5px;font-size:.72rem;margin:.35rem 0}.hv-camera-context,.hv-camera-operational-header,.hv-camera-tab,.hv-object-context-header{display:grid;gap:.55rem}.hv-camera-operational-header,.hv-object-context-header{border:1px solid rgba(114,214,215,.14);border-radius:10px;background:linear-gradient(135deg,rgba(24,213,199,.08),rgba(3,16,26,.88));padding:.65rem}.hv-camera-operational-header{gap:.22rem;background:linear-gradient(135deg,rgba(24,213,199,.1),rgba(3,16,26,.72))}.hv-camera-operational-header h2{margin:0;font-size:1.05rem}.hv-camera-operational-header p,.hv-object-context-header p{margin:.08rem 0;color:var(--hv-text-muted);font-size:.68rem}.hv-camera-actions,.hv-camera-meta-strip,.hv-camera-tabs,.hv-object-context-badges{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.hv-live-badge,.hv-status-chip{border:1px solid color-mix(in srgb,var(--chip-color,#18d5c7),#fff 14%);border-radius:999px;background:color-mix(in srgb,var(--chip-color,#18d5c7),transparent 88%);color:color-mix(in srgb,var(--chip-color,#18d5c7),#fff 18%);font-size:.58rem;font-weight:900;letter-spacing:.08em;padding:.16rem .42rem;text-transform:uppercase}.hv-status-chip.is-normal,.hv-status-chip.is-online{--chip-color:#18d5c7}.hv-status-chip.is-offline{--chip-color:#8da1ad}.hv-status-chip.is-alarm{--chip-color:#ff365e}.hv-status-chip.is-event{--chip-color:#ff9f1c}.hv-context-grid--tight{margin-bottom:0}.hv-camera-tabs{position:sticky;top:0;z-index:2;border-bottom:1px solid rgba(114,214,215,.14);background:rgba(2,9,16,.94);padding-bottom:.35rem}.hv-camera-tabs button{min-height:28px;border-color:rgba(114,214,215,.18);background:rgba(4,19,30,.82)}.hv-camera-tabs button.active{border-color:rgba(24,213,199,.58);background:rgba(24,213,199,.14);color:#cffff9}.hv-camera-player{overflow:hidden;border:1px solid rgba(114,214,215,.16);border-radius:12px;background:#020912;box-shadow:inset 0 0 0 1px rgba(24,213,199,.04)}.hv-camera-player footer,.hv-camera-player header{display:flex;align-items:center;gap:.42rem;justify-content:space-between;background:rgba(7,24,36,.88);color:var(--hv-text-muted);font-size:.64rem;padding:.4rem .5rem}.hv-live-badge.is-live{--chip-color:#ff365e;box-shadow:0 0 14px rgba(255,54,94,.34)}.hv-camera-player__surface{position:relative;display:grid;min-height:220px;place-items:center;background:repeating-linear-gradient(0deg,hsla(0,0%,100%,.025),hsla(0,0%,100%,.025) 1px,transparent 0,transparent 7px),radial-gradient(circle at 50% 40%,rgba(24,213,199,.08),transparent 14rem),#01050a}.hv-camera-snapshot,.hv-camera-video,.hv-floating-video__surface img,.hv-floating-video__surface video{width:100%;height:100%;min-height:220px;-o-object-fit:cover;object-fit:cover}.hv-live-unavailable{display:grid;min-height:210px;place-content:center;gap:.45rem;color:var(--hv-text-muted);text-align:center}.hv-live-unavailable strong{color:var(--hv-text);font-size:.98rem}.hv-live-unavailable span{color:var(--hv-text-muted);font-size:.72rem}.hv-camera-meta-strip{color:var(--hv-text-muted);font-size:.64rem}.hv-camera-meta-strip span,.hv-playback-search label{border:1px solid rgba(114,214,215,.1);border-radius:6px;background:rgba(3,16,26,.72);padding:.28rem .38rem}.hv-playback-search{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.hv-playback-search button{grid-column:1/-1}.hv-playback-search label{display:grid;gap:.18rem;color:var(--hv-text-muted);font-size:.6rem;text-transform:uppercase}.hv-playback-search input{width:100%;border:1px solid rgba(114,214,215,.16);border-radius:5px;background:rgba(1,8,14,.9);color:var(--hv-text);font:inherit;padding:.25rem}.hv-playback-timeline{overflow:hidden;height:8px;border-radius:999px;background:rgba(114,214,215,.12)}.hv-playback-timeline span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#18d5c7,#ff9f1c)}.hv-ptz-controls{display:grid;gap:.35rem;border:1px solid rgba(114,214,215,.12);border-radius:10px;background:rgba(3,16,26,.68);padding:.55rem}.hv-ptz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem}.hv-camera-event-row{display:grid;gap:.35rem;border:1px solid rgba(114,214,215,.1);border-radius:8px;background:rgba(1,8,14,.62);padding:.45rem}.hv-camera-event-row>div:first-child{display:flex;justify-content:space-between;gap:.35rem}.hv-camera-event-row p{margin:0;color:var(--hv-text-muted);font-size:.66rem}.hv-camera-event-meta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.45rem;color:var(--hv-text-muted);font-size:.6rem}.hv-camera-event-meta img{width:54px;height:40px;border-radius:5px;-o-object-fit:cover;object-fit:cover}.hv-camera-event-meta div{display:flex;flex-wrap:wrap;gap:.28rem}.hv-camera-technical-details{border-top:1px solid rgba(114,214,215,.12);margin-top:.25rem;padding-top:.45rem}.hv-camera-technical-details>summary{cursor:pointer;color:var(--hv-text-muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;list-style-position:inside;text-transform:uppercase}.hv-camera-technical-details[open]{display:grid;gap:.5rem}.hv-technical-group{display:grid;gap:.22rem}.hv-permission-block{border:1px dashed rgba(255,159,28,.42);border-radius:10px;background:rgba(255,159,28,.08);color:#ffe3b8;font-size:.72rem;padding:.75rem}.hv-bottom-dock--operator{display:grid;grid-template-rows:10px minmax(0,1fr);height:100%;max-height:none;overflow:hidden;border-inline:0;border-bottom:0;padding:0 .35rem .35rem;transition:box-shadow .14s ease,border-color .14s ease}.hv-bottom-dock--operator.is-resizing{border-color:rgba(24,213,199,.55);box-shadow:0 -10px 34px rgba(24,213,199,.1)}.hv-bottom-dock__resize-handle{position:relative;display:flex;align-items:center;justify-content:center;min-height:10px;margin:0 -.35rem .2rem;border-top:1px solid rgba(114,214,215,.28);cursor:ns-resize;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hv-bottom-dock__resize-handle:before{position:absolute;inset:-7px 0 -5px;content:""}.hv-bottom-dock--operator.is-resizing .hv-bottom-dock__resize-handle,.hv-bottom-dock__resize-handle:focus-visible,.hv-bottom-dock__resize-handle:hover{border-top-color:rgba(24,213,199,.9);outline:0}.hv-bottom-dock__resize-grip{position:relative;z-index:1;width:74px;height:4px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(24,213,199,.9),transparent);box-shadow:0 0 18px rgba(24,213,199,.2);opacity:.7}.hv-bottom-dock--operator.is-resizing .hv-bottom-dock__resize-grip,.hv-bottom-dock__resize-handle:focus-visible .hv-bottom-dock__resize-grip,.hv-bottom-dock__resize-handle:hover .hv-bottom-dock__resize-grip{opacity:1}.hv-bottom-dock__content{display:grid;grid-template-rows:33px minmax(0,1fr);min-height:0;overflow:hidden}body.hv-resizing-bottom-dock,body.hv-resizing-bottom-dock *{cursor:ns-resize!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.hv-dock-toolbar{min-height:0;margin-bottom:.28rem}.hv-dock-tabs{align-items:center;gap:.18rem;margin-bottom:0}.hv-dock-tabs .hv-tab{height:25px;min-height:25px;border-radius:4px;font-size:.62rem;padding:.22rem .42rem}.hv-dock-toolbar input{width:min(28vw,310px);min-width:190px}.hv-dock-table{min-height:0;overflow:auto}.hv-event-log{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.25rem;min-height:0;overflow:hidden}.hv-event-log-toolbar{display:flex;align-items:center;gap:.24rem;min-width:0;overflow:visible}.hv-column-menu summary,.hv-event-log-toolbar button,.hv-inline-select select{min-height:24px;border-radius:4px;font-size:.6rem;line-height:1;padding:.18rem .38rem}.hv-toggle-pill.is-on{border-color:rgba(64,227,138,.45);background:rgba(64,227,138,.12);color:#bfffe0}.hv-live-dot{display:inline-flex;align-items:center;gap:.28rem;color:var(--hv-text-muted);font-size:.6rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.hv-live-dot:before{width:7px;height:7px;border-radius:999px;background:#40e38a;box-shadow:0 0 10px rgba(64,227,138,.6);content:""}.hv-live-dot.is-paused:before{background:#f59e0b;box-shadow:0 0 10px rgba(245,158,11,.45)}.hv-inline-select{display:inline-flex;align-items:center;gap:.28rem;color:var(--hv-text-muted);font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hv-column-menu{position:relative}.hv-column-menu summary{border:1px solid rgba(114,214,215,.16);background:rgba(4,15,25,.82);color:var(--hv-text);cursor:pointer;list-style:none}.hv-column-menu summary::-webkit-details-marker{display:none}.hv-column-menu>div{position:absolute;right:0;bottom:30px;z-index:20;display:grid;gap:.22rem;min-width:210px;max-height:280px;overflow:auto;border:1px solid rgba(114,214,215,.22);border-radius:7px;background:rgba(2,10,18,.98);padding:.45rem;box-shadow:0 18px 40px rgba(0,0,0,.35)}.hv-column-menu label{display:flex;align-items:center;gap:.35rem;color:var(--hv-text-muted);font-size:.65rem}.hv-event-badge,.hv-new-events-badge{border:1px solid rgba(245,158,11,.35);border-radius:999px;background:rgba(245,158,11,.12);color:#ffd18a;font-size:.55rem;font-weight:900;letter-spacing:.05em;padding:.12rem .36rem;text-transform:uppercase;white-space:nowrap}.hv-event-badge.is-critical{border-color:rgba(255,54,94,.45);background:rgba(255,54,94,.14);color:#ffb2c0}.hv-event-details-cell{display:flex;align-items:center;gap:.3rem;max-width:360px}.hv-event-details-cell>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-event-plate,.hv-plate-chip{border:1px solid hsla(0,0%,96%,.28);border-radius:4px;background:hsla(0,0%,96%,.1);color:#f8fafc;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;padding:.08rem .28rem}.hv-event-profile-card,.hv-json-details{margin:.45rem 0;border:1px solid rgba(114,214,215,.14);border-radius:8px;background:rgba(3,12,20,.58);padding:.55rem}.hv-event-profile-card{display:grid;gap:.22rem}.hv-json-details summary{color:var(--hv-text-muted);cursor:pointer;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hv-row-actions{min-width:-moz-max-content;min-width:max-content}.hv-app-shell--compact .hv-table td,.hv-app-shell--compact .hv-table th,.hv-table--dense td,.hv-table--dense th{height:28px;font-size:.64rem;padding:.24rem .38rem;vertical-align:middle}.hv-table--dense th{position:sticky;top:0;z-index:2;background:rgba(5,17,27,.98)}.hv-filter-row th{top:28px;z-index:3;background:rgba(3,12,20,.99)}.hv-sort-header{display:inline-flex;align-items:center;gap:.24rem;width:100%;min-height:18px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:900;letter-spacing:inherit;padding:0;text-align:left;text-transform:inherit}.hv-sort-header.is-active,.hv-sort-header:focus-visible,.hv-sort-header:hover{color:#bfffe0;outline:0}.hv-sort-header.is-disabled{cursor:default;opacity:.72}.hv-sort-indicator{color:#40e38a;font-size:.56rem;line-height:1}.hv-filter-row input,.hv-filter-row select{width:100%;min-width:84px;height:22px;border:1px solid rgba(114,214,215,.16);border-radius:4px;background:rgba(2,9,16,.9);color:var(--hv-text);font-size:.58rem;padding:.12rem .28rem}.hv-table--dense .hv-actions{flex-wrap:nowrap}.hv-table--dense .hv-actions button{min-height:22px;font-size:.58rem;padding:.18rem .3rem}@media (max-width:1450px){.hv-top-main{grid-template-columns:220px minmax(0,1fr) max-content}.hv-operator-strip{grid-template-columns:145px minmax(250px,1fr) minmax(190px,260px)}.hv-session-panel span:nth-of-type(2),.hv-session-panel span:nth-of-type(3){display:none}}@media (max-width:1100px){.hv-app-shell{grid-template-rows:auto minmax(0,1fr) var(--bottom-dock-height,clamp(180px,30vh,55vh))}.hv-psim-topbar{height:auto;max-height:none}.hv-app-body,.hv-operator-strip,.hv-top-main{grid-template-columns:1fr}.hv-layout-splitter{display:none}.hv-session-panel{max-width:none;overflow-x:auto}}.hv-config-shell{height:100vh;min-height:0;grid-template-columns:260px minmax(0,1fr);overflow:hidden;background:linear-gradient(var(--hv-grid) 1px,transparent 1px),linear-gradient(90deg,var(--hv-grid) 1px,transparent 1px),linear-gradient(135deg,#02070d,#061523 55%,#03101a);background-size:36px 36px,36px 36px,auto}.hv-config-shell .hv-sidebar{min-height:0;overflow:auto;border-right:1px solid rgba(114,214,215,.18);background:rgba(2,9,16,.92);padding:.65rem}.hv-config-shell .hv-sidebar__brand{border-radius:8px;margin-bottom:.6rem;padding:.65rem}.hv-config-shell .hv-sidebar__brand strong{font-size:1rem}.hv-config-shell .hv-nav-link{border-radius:6px;font-size:.75rem;padding:.48rem .55rem}.hv-config-shell .hv-main{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;overflow:hidden;padding:.55rem}.hv-config-content{display:grid;align-content:start;gap:1rem;min-height:0;overflow:auto;padding-right:.15rem}.hv-config-shell .hv-topbar{min-height:58px;border-radius:8px;margin-bottom:.55rem;padding:.55rem .7rem}.hv-config-shell .hv-topbar h1{font-size:1.15rem;margin:.05rem 0}.hv-breadcrumbs{color:var(--hv-text-muted);font-size:.68rem;margin:0}.hv-config-shell .hv-grid-cards{overflow:auto}.hv-config-shell .hv-table-card{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;border-radius:8px}.hv-data-table{display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;min-height:0;overflow:hidden;background:rgba(4,15,25,.88)}.hv-table-toolbar{display:grid;grid-template-columns:minmax(150px,220px) minmax(260px,1fr) repeat(7,auto);gap:.35rem;align-items:center;border-bottom:1px solid rgba(114,214,215,.12);padding:.45rem}.hv-table-toolbar strong{display:block;font-size:.78rem}.hv-table-toolbar__search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem}.hv-pagination select,.hv-table-filters select,.hv-table-toolbar input{height:28px;border:1px solid var(--hv-panel-border);border-radius:6px;background:rgba(3,12,20,.82);color:var(--hv-text);font-size:.72rem;padding:.25rem .45rem}.hv-bulk-actions button,.hv-filter-badges button,.hv-mini-link,.hv-pagination button,.hv-table-toolbar button,.hv-table-view-switch button{min-height:26px;border-radius:6px;font-size:.68rem;padding:.25rem .45rem}.hv-refresh-status{align-self:center;color:var(--hv-text-muted);font-size:.66rem;white-space:nowrap}.hv-refresh-status.error,.hv-refresh-warning{color:#ffe3b8}.hv-refresh-warning{border-bottom:1px solid rgba(255,159,28,.16);background:rgba(255,159,28,.08);font-size:.72rem;padding:.35rem .45rem}.hv-primary-action{border-color:rgba(64,227,138,.4);background:rgba(64,227,138,.14)}.hv-table-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.45rem;border-bottom:1px solid rgba(114,214,215,.1);background:rgba(2,9,16,.54);padding:.45rem}.hv-bulk-actions,.hv-filter-badges,.hv-table-view-switch{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;border-bottom:1px solid rgba(114,214,215,.08);padding:.35rem .45rem}.hv-filter-badges button{border-color:rgba(255,159,28,.28);background:rgba(255,159,28,.1);color:#ffe3b8}.hv-table-toolbar button.active,.hv-table-view-switch .active{border-color:rgba(24,213,199,.5);background:var(--hv-accent-soft)}.hv-column-manager{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.3rem;max-height:170px;overflow:auto;border-bottom:1px solid rgba(114,214,215,.1);padding:.45rem}.hv-column-manager .hv-check-item,.hv-data-table .hv-check-item{border-radius:6px;font-size:.72rem;padding:.28rem}.hv-data-table__scroll{min-height:0;overflow:auto}.hv-data-table .hv-table{min-width:960px}.hv-data-table .hv-table th{position:sticky;top:0;z-index:2;background:rgba(5,17,27,.98);cursor:default}.hv-data-table .hv-table th.sortable{cursor:pointer}.hv-data-table .hv-table tr:hover td{background:rgba(24,213,199,.05)}.hv-data-table .hv-table tr.selected td{background:rgba(24,213,199,.12)}.hv-pagination{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;justify-content:flex-end;border-top:1px solid rgba(114,214,215,.12);color:var(--hv-text-muted);font-size:.7rem;padding:.4rem .45rem}.hv-empty-state{display:grid;place-items:center;min-height:160px;color:var(--hv-text-muted);text-align:center}.hv-empty-state strong{color:var(--hv-text)}.hv-table-skeleton{display:grid;gap:.35rem;padding:.7rem}.hv-table-skeleton__row{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem}.hv-table-skeleton__row span{height:24px;border-radius:5px;background:linear-gradient(90deg,rgba(114,214,215,.06),rgba(114,214,215,.16),rgba(114,214,215,.06))}.hv-config-tree-view{min-height:0;overflow:auto;padding:.45rem}.hv-config-tree-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px 100px 80px;gap:.5rem;align-items:center;min-height:30px;border-bottom:1px solid rgba(114,214,215,.08);color:var(--hv-text-muted);font-size:.72rem}.hv-config-tree-row strong{color:var(--hv-text)}.hv-mini-link{display:inline-flex;align-items:center;border:1px solid var(--hv-panel-border);background:rgba(24,213,199,.08)}.hv-spatial-editor-card,.hv-spatial-editor-shell .hv-main{grid-template-rows:auto minmax(0,1fr)}.hv-spatial-editor-card{display:grid;min-height:0;overflow:hidden;border:1px solid rgba(114,214,215,.16);border-radius:8px;background:rgba(4,15,25,.86)}.hv-spatial-editor-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.45rem;border-bottom:1px solid rgba(114,214,215,.12);padding:.55rem}.hv-spatial-editor{display:grid;grid-template-columns:320px minmax(0,1fr) 300px;min-height:0}.hv-spatial-editor__sidebar{grid-template-rows:auto minmax(0,1fr) auto;border-right:1px solid rgba(114,214,215,.14)}.hv-spatial-editor__placed,.hv-spatial-editor__sidebar{display:grid;gap:.55rem;min-height:0;background:rgba(2,9,16,.72);padding:.65rem}.hv-spatial-editor__placed{grid-template-rows:auto minmax(0,1fr);border-left:1px solid rgba(114,214,215,.14)}.hv-spatial-object-list{display:grid;align-content:start;gap:.35rem;min-height:0;overflow:auto}.hv-spatial-object-filters{display:grid;grid-template-columns:minmax(0,1fr) 105px 105px;gap:.35rem}.hv-spatial-object-filters input,.hv-spatial-object-filters select{width:100%;border:1px solid rgba(114,214,215,.18);border-radius:7px;background:rgba(3,16,26,.88);color:var(--hv-text);font:inherit;min-height:34px;padding:.35rem .45rem}.hv-spatial-object-list button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.1rem .45rem;align-items:center;min-height:48px;border-radius:7px;text-align:left}.hv-spatial-object-list button.active{border-color:rgba(64,227,138,.5);background:rgba(64,227,138,.12)}.hv-spatial-object-list button.is-draggable{cursor:grab}.hv-spatial-object-list button.is-draggable:active{cursor:grabbing}.hv-spatial-object-list button.is-readonly{opacity:.72}.hv-spatial-object-list button small,.hv-spatial-object-list button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-spatial-object-list button small{grid-column:2;color:var(--hv-text-muted);font-size:.66rem}.hv-spatial-editor__inspector{border-radius:8px}.hv-spatial-toggle{min-height:34px;font-size:.72rem}.hv-placement-feedback{border:1px solid rgba(64,227,138,.22);border-radius:7px;background:rgba(64,227,138,.08);color:#b9f8d1;font-size:.72rem;margin:0;padding:.45rem}.hv-spatial-integrated-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(1680px,100%);height:min(92vh,980px);max-height:92vh;overflow:hidden;padding:0}.hv-spatial-integrated-footer,.hv-spatial-integrated-header{display:flex;gap:.75rem;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(114,214,215,.14);background:rgba(2,9,16,.88);padding:.85rem 1rem}.hv-spatial-integrated-header h2{margin:.1rem 0}.hv-spatial-integrated-header p{margin:0}.hv-spatial-integrated-editor{display:grid;grid-template-columns:330px minmax(0,1fr) 360px;min-height:0}.hv-spatial-integrated-config,.hv-spatial-integrated-objects{display:grid;align-content:start;gap:.65rem;min-height:0;overflow:auto;background:rgba(2,9,16,.72);padding:.75rem}.hv-spatial-integrated-config{border-right:1px solid rgba(114,214,215,.14)}.hv-spatial-integrated-objects{grid-template-rows:auto auto auto minmax(0,1fr) minmax(190px,.75fr);border-left:1px solid rgba(114,214,215,.14)}.hv-spatial-integrated-canvas{min-height:0;background:#020912}.hv-form-grid--single{grid-template-columns:1fr;gap:.55rem}.hv-spatial-config-block{display:grid;gap:.55rem;border:1px solid rgba(114,214,215,.12);border-radius:8px;background:rgba(3,16,26,.54);padding:.65rem}.hv-spatial-config-actions{align-items:center}.hv-spatial-upload{display:grid;gap:.55rem;border:1px solid rgba(24,213,199,.18);border-radius:8px;background:rgba(2,9,16,.58);padding:.6rem}.hv-spatial-upload.is-dragging{border-color:rgba(64,227,138,.62);background:rgba(64,227,138,.1)}.hv-spatial-upload.has-error{border-color:rgba(255,54,94,.45)}.hv-spatial-upload__head{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.hv-spatial-upload__dropzone{display:grid;gap:.25rem;place-items:center;min-height:104px;border:1px dashed rgba(114,214,215,.34);border-radius:8px;background:radial-gradient(circle at 50% 30%,rgba(24,213,199,.12),transparent 7rem),rgba(3,16,26,.68);color:var(--hv-text);cursor:pointer;padding:.8rem;text-align:center}.hv-spatial-upload__dropzone span,.hv-spatial-upload__meta span{color:var(--hv-text-muted);font-size:.68rem}.hv-spatial-upload__meta{display:grid;gap:.18rem;border:1px solid rgba(114,214,215,.1);border-radius:7px;background:rgba(3,16,26,.56);padding:.5rem}.hv-upload-progress{overflow:hidden;height:6px;border-radius:999px;background:rgba(114,214,215,.14)}.hv-upload-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#18d5c7,#40e38a);transition:width .24s ease}.hv-upload-warning{border:1px solid rgba(255,159,28,.34);border-radius:7px;background:rgba(255,159,28,.1);color:#ffe3b8;font-size:.72rem;padding:.45rem}.hv-advanced-file-url{border:1px solid rgba(114,214,215,.12);border-radius:8px;background:rgba(2,9,16,.4);padding:.55rem}.hv-advanced-file-url summary{color:var(--hv-text-muted);cursor:pointer;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hv-spatial-object-list--integrated{gap:.55rem}.hv-spatial-object-group{display:grid;gap:.32rem}.hv-spatial-object-group>span{color:var(--hv-accent);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hv-spatial-object-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.08rem .45rem;align-items:center;min-height:54px;border:1px solid rgba(114,214,215,.12);border-radius:8px;background:rgba(3,16,26,.72);color:var(--hv-text);padding:.45rem}.hv-spatial-object-row.active{border-color:rgba(64,227,138,.5);background:rgba(64,227,138,.12)}.hv-spatial-object-row.is-draggable{cursor:grab}.hv-spatial-object-row.is-draggable:active{cursor:grabbing}.hv-spatial-object-row.is-readonly{opacity:.72}.hv-spatial-object-row small,.hv-spatial-object-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-spatial-object-row small{grid-column:2;color:var(--hv-text-muted);font-size:.66rem}.hv-object-row-actions{display:inline-flex;grid-column:3;grid-row:1/span 2;gap:.25rem;align-items:center}.hv-object-row-actions button{min-height:24px;padding:.24rem .42rem}.hv-spatial-integrated-placed{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;border-top:1px solid rgba(114,214,215,.14);padding-top:.65rem}.hv-spatial-integrated-footer{border-top:1px solid rgba(114,214,215,.14);border-bottom:0}.hv-spatial-integrated-footer>div:first-child{display:grid;gap:.18rem;min-width:0}.hv-spatial-integrated-footer span{color:var(--hv-text-muted);font-size:.72rem}.hv-unsaved-warning{color:#ffe3b8!important;font-weight:800}.hv-integrated-marker.selected{box-shadow:0 0 0 2px #fff,0 0 24px var(--marker-color,#18d5c7)}.hv-google-object-marker--visual{pointer-events:auto}.hv-placed-object-list{display:grid;align-content:start;gap:.4rem;min-height:0;overflow:auto}.hv-placed-object-list article{display:grid;gap:.22rem;border:1px solid rgba(114,214,215,.14);border-radius:8px;background:rgba(3,16,26,.7);padding:.55rem}.hv-placed-object-list article.active{border-color:rgba(24,213,199,.58);box-shadow:inset 0 0 0 1px rgba(24,213,199,.14)}.hv-placed-object-list article small,.hv-placed-object-list article span{color:var(--hv-text-muted);font-size:.68rem}.hv-google-spatial,.hv-spatial-editor__map{position:relative;min-height:0;overflow:hidden}.hv-spatial-editor__map{height:100%}.hv-planar-canvas .hv-drop-target-overlay,.hv-spatial-editor__map.is-drop-active:after{position:absolute;inset:.65rem;z-index:8;display:grid;place-items:center;border:2px dashed rgba(24,213,199,.72);border-radius:10px;background:rgba(24,213,199,.12);color:#bffff8;font-size:.82rem;font-weight:800;letter-spacing:.08em;pointer-events:none;text-transform:uppercase}.hv-spatial-editor__map.is-drop-active:after{content:"Drop object to place it"}.hv-google-map-canvas,.hv-google-spatial{width:100%;height:100%}.hv-google-map-canvas{min-height:360px;background:#03101a}.hv-google-map-fallback{display:grid;width:100%;height:100%;min-height:360px;place-content:center;gap:.45rem;border:1px dashed rgba(255,159,28,.36);border-radius:8px;background:rgba(255,159,28,.08);color:#ffe3b8;padding:1rem;text-align:center}.hv-google-maps-debug{position:absolute;right:.65rem;top:.65rem;z-index:5;display:inline-grid;gap:.15rem;border:1px solid rgba(114,214,215,.22);border-radius:7px;background:rgba(2,9,16,.86);color:var(--hv-text-muted);font-size:.66rem;padding:.35rem .45rem;text-align:left}.hv-google-object-marker{position:relative;transform:translate(-50%,-50%)}.hv-map-viewport-picker{display:grid;gap:.55rem;margin-top:.75rem}.hv-map-viewport-picker__search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem}.hv-map-viewport-picker__search input{width:100%;border:1px solid rgba(114,214,215,.18);border-radius:7px;background:rgba(3,16,26,.88);color:var(--hv-text);font:inherit;min-height:36px;padding:.42rem .55rem}.hv-map-viewport-picker__canvas{min-height:420px;overflow:hidden;border:1px solid rgba(114,214,215,.18);border-radius:8px;background:#03101a}.hv-google-map-viewport-canvas{width:100%;height:100%;min-height:420px}.hv-map-viewport-picker__actions{display:flex;flex-wrap:wrap;gap:.4rem}.hv-map-viewport-picker__summary{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:.4rem}.hv-planar-editor-shell{display:grid;grid-template-rows:auto minmax(0,1fr);background:#020912}.hv-planar-toolbar{position:relative;z-index:4;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(114,214,215,.16);background:rgba(2,9,16,.88);color:var(--hv-text-muted);font-size:.72rem;padding:.45rem .6rem}.hv-planar-toolbar label{display:inline-flex;align-items:center;gap:.45rem}.hv-planar-toolbar input{accent-color:var(--hv-accent)}.hv-planar-editor-viewport{position:relative;min-height:0;overflow:auto;padding:1rem}.hv-planar-canvas{position:relative;width:min(100%,1400px);min-width:720px;margin:0 auto;overflow:hidden;border:1px solid rgba(114,214,215,.22);border-radius:8px;background:#03101a;box-shadow:0 18px 50px rgba(0,0,0,.32);cursor:crosshair;transform-origin:top center}.hv-planar-canvas--cad{outline:1px solid rgba(255,159,28,.12)}.hv-planar-draft-marker,.hv-planar-object-marker{transform:translate(-50%,-50%)}.hv-planar-object-marker{cursor:grab;touch-action:none}.hv-planar-object-marker:active{cursor:grabbing}.hv-planar-object-marker.selected{box-shadow:0 0 0 2px #fff,0 0 24px var(--marker-color,#18d5c7)}.hv-planar-draft-marker{border-style:dashed;pointer-events:none}@media (max-width:1100px){.hv-spatial-editor,.hv-spatial-editor-summary{grid-template-columns:1fr}.hv-spatial-editor{grid-template-rows:auto minmax(420px,1fr)}}.hv-config-shell .hv-brand{margin-bottom:0}.hv-config-shell .hv-topbar .hv-brand{margin-bottom:.2rem}.hv-config-shell .hv-topbar .hv-brand-mark{width:28px;height:28px;border-radius:8px;font-size:.7rem}.hv-config-dashboard{min-height:0;overflow:auto}.hv-dashboard-cards,.hv-dashboard-hero,.hv-dashboard-panels{display:grid;gap:.55rem}.hv-dashboard-hero{grid-template-columns:minmax(260px,1fr) auto;align-items:center;border:1px solid rgba(114,214,215,.16);border-radius:8px;background:linear-gradient(135deg,rgba(24,213,199,.12),rgba(4,15,25,.88));padding:.7rem}.hv-dashboard-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-top:.55rem}.hv-dashboard-cards .hv-card strong{display:block;font-size:1.25rem;margin:.25rem 0}.hv-dashboard-panels{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:.55rem}.hv-dashboard-panel{min-height:170px}.hv-dashboard-panel p{border-bottom:1px solid rgba(114,214,215,.08);color:var(--hv-text-muted);font-size:.72rem;margin:0;padding:.34rem 0}.hv-dashboard-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.35rem;margin-top:.5rem}.hv-dashboard-actions a{border:1px solid rgba(24,213,199,.22);border-radius:6px;background:rgba(24,213,199,.08);color:var(--hv-text);font-size:.72rem;padding:.45rem}.hv-form-sections{display:grid;gap:.75rem}.hv-form-section{border:1px solid rgba(114,214,215,.12);border-radius:8px;background:rgba(2,9,16,.28);padding:.7rem}.hv-form-section.full{grid-column:1/-1}.hv-assignment-head{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.hv-assignment-search{width:100%;height:30px;border:1px solid var(--hv-panel-border);border-radius:6px;background:rgba(3,12,20,.82);color:var(--hv-text);font-size:.72rem;margin:.45rem 0;padding:.25rem .45rem}.hv-chip-row{display:flex;flex-wrap:wrap;gap:.28rem;margin-bottom:.45rem}.hv-chip-row button{border-color:rgba(24,213,199,.25);background:rgba(24,213,199,.08);font-size:.68rem}.hv-assignment-list{display:grid;gap:.3rem;max-height:240px;overflow:auto}.hv-assignment-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:.55rem;align-items:start;border:1px solid rgba(114,214,215,.1);border-radius:7px;background:rgba(5,17,27,.5);color:var(--hv-text);padding:.42rem}.hv-assignment-row em,.hv-assignment-row small,.hv-assignment-row strong{display:block}.hv-assignment-row em,.hv-assignment-row small{color:var(--hv-text-muted);font-size:.68rem;font-style:normal;margin-top:.12rem}.hv-row-action-menu{position:relative;display:inline-flex;gap:.25rem;align-items:center}.hv-row-action-menu__panel{position:absolute;right:0;top:calc(100% + .25rem);z-index:10;display:grid;min-width:180px;gap:.25rem;border:1px solid rgba(114,214,215,.22);border-radius:8px;background:rgba(3,12,20,.98);box-shadow:0 18px 32px rgba(0,0,0,.35);padding:.35rem}.hv-row-action-menu__panel button{justify-content:flex-start;text-align:left}@media (max-width:1300px){.hv-table-toolbar{grid-template-columns:1fr 1fr repeat(3,auto)}}