@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Fraunces:wght@500;700&display=swap";.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--bg:#f5f7fb;--panel:#fff;--ink:#2b324b;--muted:#7a8495;--accent:#1a9ac7;--accent-2:#2b5fd7;--accent-3:#e8f4fb;--stroke:#d6e0ee;--shadow:0 18px 40px #1723401f;--accent-gradient:linear-gradient(135deg, #2b5fd7 0%, #1aa6c9 55%, #6cc36e 100%);--page-max:1200px}.app-shell.app-shell-sidebar{background:var(--bg);grid-template-rows:auto minmax(0,1fr);grid-template-columns:252px minmax(0,1fr);display:grid}.app-shell-sidebar>.app-main{grid-area:2/2;min-width:0}.app-sidebar{z-index:30;border-right:1px solid var(--stroke);background:var(--panel);min-width:0;height:100vh;color:var(--ink);flex-direction:column;grid-area:1/1/-1;display:flex;position:sticky;top:0;overflow:hidden}.app-sidebar-brand{border-bottom:1px solid var(--stroke);align-items:center;gap:11px;min-height:78px;padding:15px 18px;display:flex}.app-sidebar-brand img{object-fit:contain;flex:0 0 38px;width:38px;height:38px}.app-sidebar-brand>span{flex-direction:column;min-width:0;display:flex}.app-sidebar-brand b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:Fraunces,serif;font-size:14px;line-height:1.15;overflow:hidden}.app-sidebar-brand small{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin-top:4px;font-size:8px;font-weight:700}.app-sidebar-brand>button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:24px;display:none}.app-sidebar-nav{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;padding:0 11px 18px;overflow-y:auto}.app-sidebar-nav section>p{color:#96a3b5;letter-spacing:.16em;text-transform:uppercase;margin:16px 10px 7px;font-size:8px;font-weight:800}.app-sidebar-nav a{color:#596980;border-radius:8px;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:4px;min-height:37px;margin:1px 0;padding:8px 10px;font-size:10px;font-weight:700;text-decoration:none;transition:background .16s,color .16s;display:grid}.app-sidebar-nav a>i{color:#8090a7;text-align:center;width:20px;font-size:14px;font-style:normal}.app-sidebar-nav a:hover{color:var(--ink);background:#2b5fd70f}.app-sidebar-nav a.active{background:var(--accent-3);color:#173d6b}.app-sidebar-nav a.active>i{color:var(--accent-2)}.app-sidebar-footer{border-top:1px solid var(--stroke);background:var(--panel);padding:13px 16px 15px}.app-sidebar-footer>p{color:var(--muted);align-items:center;gap:8px;margin:0 4px 12px;font-size:8px;display:flex}.app-sidebar-footer>p>i,.app-health-indicator>i{background:#37b77d;border-radius:50%;flex:0 0 7px;width:7px;height:7px;box-shadow:0 0 0 4px #37b77d1f}.app-sidebar-user{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.app-sidebar-user-profile{align-items:center;gap:9px;min-width:0;display:flex}.app-sidebar-user-profile>span{background:var(--accent-3);width:31px;height:31px;color:var(--accent-2);border-radius:50%;flex:0 0 31px;place-items:center;font-size:9px;font-weight:800;display:grid}.app-sidebar-user-profile>div{min-width:0}.app-sidebar-user b,.app-sidebar-user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-sidebar-user b{font-size:9px}.app-sidebar-user small{color:var(--muted);margin-top:3px;font-size:8px}.app-sidebar-user>button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;font-size:16px}.app-sidebar-user>button:hover{background:var(--accent-3);color:var(--accent-2)}.app-topbar{z-index:20;border-bottom:1px solid var(--stroke);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;grid-area:1/2;grid-template-columns:minmax(190px,auto) minmax(40px,1fr) auto;align-items:center;gap:16px;min-height:64px;padding:10px 22px;display:grid;position:sticky;top:0}body.dark-mode .app-sidebar,body.dark-mode .app-sidebar-footer,body.dark-mode .app-topbar{background:#172134f7}body.dark-mode .app-sidebar-nav a{color:#b4c1d3}body.dark-mode .app-sidebar-nav a.active{color:#dceaff}.app-topbar-context{align-items:center;gap:11px;min-width:0;display:flex}.app-menu-toggle{border:1px solid var(--stroke);background:var(--panel);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:8px;font-size:18px;display:none}.app-topbar-context>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.app-topbar-context b{color:#b9c4d0;margin:0 8px}.app-topbar-context strong{color:var(--ink)}.app-topbar-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.app-topbar-actions .button{min-height:34px;padding:7px 10px;font-size:9px}.app-health-indicator{color:#39775f;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:7px;font-size:8px;font-weight:800;display:inline-flex}.app-health-indicator.failed{color:#b42318}.app-health-indicator.failed>i{background:#d64545;box-shadow:0 0 0 4px #d645451f}.app-topbar .emergency-banner{grid-column:1/-1;margin:2px 0 0}.app-sidebar-overlay{display:none}@media (width<=1180px){.app-shell.app-shell-sidebar{grid-template-columns:220px minmax(0,1fr)}.app-topbar{gap:10px;padding-inline:16px}.app-health-indicator{width:10px;overflow:hidden}}@media (width<=900px){.app-shell.app-shell-sidebar{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.app-shell-sidebar>.app-main,.app-topbar{grid-column:1}.app-sidebar{width:min(290px,88vw);transition:transform .2s;position:fixed;left:0;transform:translate(-105%);box-shadow:18px 0 45px #14233733}.app-sidebar.open{transform:translate(0)}.app-sidebar-brand>button,.app-menu-toggle{place-items:center;display:grid}.app-sidebar-overlay{z-index:29;opacity:0;pointer-events:none;background:#0e182770;border:0;transition:opacity .2s;display:block;position:fixed;inset:0}.app-sidebar-overlay.visible{opacity:1;pointer-events:auto}.app-topbar{padding-inline:14px}}@media (width<=640px){.app-topbar{grid-template-columns:minmax(140px,1fr) auto;min-height:58px;padding:8px 11px}.app-topbar>div:empty{display:none}.app-topbar-context>span{max-width:45vw}.app-health-button{display:none}.app-topbar-actions .theme-toggle{width:34px;height:34px;padding:7px}.app-main{padding:20px 16px 52px}}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 20% 20%, #fff 0%, #eef6fb 45%, var(--bg) 100%);margin:0;font-family:Manrope,system-ui,sans-serif}body.dark-mode{--bg:#101725;--panel:#172134;--ink:#edf4ff;--muted:#9fb0c8;--accent:#38b8df;--accent-2:#7ca7ff;--accent-3:#20334d;--stroke:#2d3c53;--shadow:0 18px 40px #00000057;background:linear-gradient(135deg,#0c1220 0%,#111c2e 55%,#0f241f 100%)}body.dark-mode .top-nav,body.dark-mode .auth-card,body.dark-mode .card,body.dark-mode .hero,body.dark-mode .hero-metric,body.dark-mode .status-card{background:var(--panel)}body.dark-mode .auth-shell{background:linear-gradient(135deg,#0c1220 0%,#111c2e 58%,#142923 100%)}body.dark-mode .form input,body.dark-mode .form select,body.dark-mode .form textarea{color:var(--ink);border-color:var(--stroke);background:#101827}body.dark-mode .button.ghost{color:var(--accent);border-color:var(--accent)}body.dark-mode .status-banner{color:#c9e2ff;background:#15263e;border-color:#315274}.app-shell{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.top-nav{z-index:20;background:#f7f9fc;border-bottom:1px solid #c8d3e3;grid-template-columns:minmax(220px,max-content) minmax(0,1fr) max-content;align-items:center;gap:28px;padding:14px 30px;display:grid;position:sticky;top:0}.emergency-banner{background:var(--alert-banner-bg,#b42318);color:var(--alert-banner-ink,#fff);box-shadow:var(--alert-banner-shadow,0 12px 30px #b4231840);border-radius:14px;grid-column:1/-1;align-items:center;gap:16px;margin-top:12px;padding:12px 16px;font-weight:600;display:flex}.emergency-banner span{opacity:.98;font-weight:500}.emergency-banner .button{background:var(--alert-banner-button-bg,#fff3);border-color:var(--alert-banner-button-border,#fff6);color:var(--alert-banner-button-ink,#fff);margin-left:auto}.emergency-banner--critical{--alert-banner-bg:#b42318;--alert-banner-ink:#fff;--alert-banner-shadow:0 12px 30px #b4231840;--alert-banner-button-bg:#fff3;--alert-banner-button-border:#ffffff6b;--alert-banner-button-ink:#fff}.emergency-banner--warning{--alert-banner-bg:#fde68a;--alert-banner-ink:#7c2d12;--alert-banner-shadow:0 12px 30px #ca8a043d;--alert-banner-button-bg:#7c2d121a;--alert-banner-button-border:#7c2d1259;--alert-banner-button-ink:#7c2d12}.emergency-banner--blue{--alert-banner-bg:#1d4ed8;--alert-banner-ink:#eff6ff;--alert-banner-shadow:0 12px 30px #1d4ed84d;--alert-banner-button-bg:#eff6ff29;--alert-banner-button-border:#eff6ff59;--alert-banner-button-ink:#eff6ff}.emergency-banner--silver{--alert-banner-bg:#d1d5db;--alert-banner-ink:#1f2937;--alert-banner-shadow:0 12px 30px #6b728038;--alert-banner-button-bg:#1f293714;--alert-banner-button-border:#1f293740;--alert-banner-button-ink:#1f2937}.brand-block{align-items:center;gap:12px;display:flex}.brand-mark{object-fit:contain;width:34px;height:34px}.brand-mark-large{width:180px;height:120px}.brand-block-login{justify-content:center}.brand-sub-login{text-align:center;margin-top:-4px}.brand{letter-spacing:.2px;color:var(--ink);font-family:Fraunces,serif;font-size:36px;line-height:1.05}.brand-sub{text-transform:uppercase;letter-spacing:1.4px;color:#7f8a9a;font-size:11px}.nav-links{scrollbar-width:none;justify-content:center;align-items:center;gap:10px;min-width:0;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{color:#6e7e94;border-radius:8px;padding:8px 10px;font-size:15px;font-weight:600;text-decoration:none;transition:color .18s}.nav-links a.active,.nav-links a:hover{color:#4f627c;background:0 0}.nav-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.top-nav .button{white-space:nowrap}.theme-toggle{border-radius:999px;flex:none;place-items:center;width:40px;height:40px;display:inline-grid;padding:0!important}.theme-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.theme-icon circle{fill:currentColor;stroke:currentColor}.theme-card-toggle{color:var(--ink);align-items:center;gap:12px;font-weight:700;display:flex}.branding-preview{border:1px dashed var(--stroke);background:#f8faffcc;border-radius:14px;place-items:center;min-height:132px;margin-bottom:14px;padding:18px;display:grid}.branding-preview img{object-fit:contain;max-width:260px;max-height:92px}body.dark-mode .branding-preview{background:#101827}.top-nav .button{box-shadow:none;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700}.top-nav .button.ghost{color:#1a95c4;background:0 0;border:1px solid #1a95c4}.top-nav .button:not(.ghost){background:#1f98c7}.top-nav .button:hover{filter:brightness(.98)}.health-status{color:var(--muted);grid-column:1/-1;margin-top:8px;font-size:12px}.app-main{padding:32px 36px 70px}.page{width:min(var(--page-max), 100%);gap:32px;min-width:0;margin:0 auto;display:grid}.page.ivr-builder{width:100%;max-width:none}.section{gap:16px;min-width:0;display:grid}.hero{border:1px solid var(--stroke);box-shadow:var(--shadow);background:linear-gradient(135deg,#fff 0%,#eef5ff 100%);border-radius:24px;grid-template-columns:minmax(280px,1.1fr) minmax(240px,.9fr);gap:28px;padding:36px;display:grid}.hero.compact{grid-template-columns:1fr}.hero-copy h1{margin:10px 0;font-family:Fraunces,serif;font-size:34px}.hero-copy p{color:var(--muted);margin:0}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--accent-2);margin:0;font-size:12px;font-weight:700}.hero-panel{gap:12px;display:grid}.hero-metric{background:var(--panel);border:1px solid var(--stroke);border-radius:18px;gap:6px;padding:16px;display:grid}.hero-metric strong{font-size:26px}.hero-metric span{text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);font-size:12px}.hero-metric em{color:var(--muted);font-size:13px;font-style:normal}.section h2{margin:0 0 6px;font-family:Fraunces,serif}.muted{color:var(--muted);margin:0 0 18px}.help-text{color:var(--muted);margin:0;font-size:13px}.inline-panel{border:1px dashed var(--stroke);background:#f4f8fcb3;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.inline-label{text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);font-size:11px;font-weight:600}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.stack{gap:10px;display:grid}.row{align-items:center;gap:10px;display:flex}.chip-row{border:1px solid var(--stroke);background:#f8fbff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.card-grid.compact{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.code-block{color:#e7f2ff;background:#0f1c2e;border-radius:12px;padding:12px;font-size:12px;overflow-x:auto}.engineering-summary{grid-template-columns:minmax(240px,1.2fr) minmax(220px,1fr) minmax(200px,.7fr);align-items:center;gap:18px;display:grid}.engineering-metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.engineering-metrics button{border:1px solid var(--stroke);background:var(--accent-3);cursor:pointer;text-align:left;border-radius:14px;gap:6px;padding:12px;font-family:inherit;display:grid}.engineering-metrics button:hover{background:#e2f1fb}.engineering-metrics button:focus-visible{outline-offset:2px;outline:2px solid #1a9ac766}.engineering-metrics button.active{background:#d8eef9;border-color:#9ecbe0}.engineering-metrics div{background:var(--accent-3);border:1px solid var(--stroke);border-radius:14px;gap:6px;padding:12px;display:grid}.engineering-metrics span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:11px}.engineering-metrics strong{font-size:20px}.engineering-actions{justify-items:start;gap:10px;display:grid}.engineering-toggle{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.engineering-view-toggle{border:1px solid var(--stroke);background:#edf5fb;border-radius:999px;gap:6px;padding:4px;display:inline-flex}.engineering-view-toggle button{letter-spacing:.6px;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600}.engineering-view-toggle button.active{color:var(--ink);background:#fff;box-shadow:0 8px 16px #0f172a1f}.engineering-grid{gap:20px;display:grid}.engineering-collapsible-card{padding:0;overflow:hidden}.engineering-collapsible-card>summary{cursor:pointer;border-bottom:1px solid var(--stroke);background:#f5f8ff;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;list-style:none;display:flex}.engineering-collapsible-card>summary::-webkit-details-marker{display:none}.engineering-collapsible-card>summary h3{margin:0}.engineering-collapsible-card>summary .muted{margin:4px 0 0}.engineering-collapsible-card .engineering-collapsible-body{padding:14px 16px}.engineering-collapse-indicator{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.engineering-collapsible-card .engineering-collapse-indicator:before{content:"Open"}.engineering-collapsible-card[open] .engineering-collapse-indicator:before{content:"Close"}.floor-card{background:var(--panel);border:1px solid var(--stroke);border-radius:20px;padding:16px;box-shadow:0 14px 30px #18223a14}.floor-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.floor-header span{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:12px}.room-icon-grid{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:10px;display:grid}.room-icon{border:1px solid var(--stroke);text-align:center;cursor:default;background:#fff;border-radius:12px;align-items:center;gap:6px;padding:10px 8px;font-family:inherit;display:grid;position:relative}.room-icon.clickable{cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}.room-icon.clickable:hover{border-color:#9ecbe0;transform:translateY(-1px);box-shadow:0 10px 18px #1a9ac729}.room-icon:disabled{opacity:.6;cursor:not-allowed}.room-icon-mark{background:#c4c8d1;border-radius:8px;width:20px;height:20px;margin:0 auto;position:relative}.room-icon-mark:after{content:"";border:2px solid #fff;border-bottom-width:3px;border-radius:6px 6px 4px 4px;position:absolute;inset:5px 6px}.room-icon-label{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;line-height:1.1;overflow:hidden}.room-icon-sub{color:var(--muted);font-size:10px;line-height:1}.room-icon.ok .room-icon-mark{background:#1fa86b}.room-icon.warn .room-icon-mark{background:#f2b01e}.room-icon.down .room-icon-mark{background:#d92d20}.room-icon.muted .room-icon-mark{background:#aeb5c1}.room-detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.room-tile{border:1px solid var(--stroke);background:#fff;border-radius:16px;gap:10px;padding:12px;display:grid}.room-tile-header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.room-device-list{gap:10px;display:grid}.room-device-line{border:1px solid var(--stroke);background:#f8fbfe;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex;position:relative}.room-device-meta{color:var(--muted);gap:4px;font-size:12px;display:grid}.room-device-title{color:var(--ink);font-size:13px;font-weight:600}.room-device-actions{margin-left:auto}.status-dot{background:#c4c8d1;border-radius:50%;width:10px;height:10px;display:inline-block}.status-dot.ok{background:#1fa86b}.status-dot.warn{background:#f2b01e}.status-dot.down{background:#d92d20}.status-dot.muted{background:#aeb5c1}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.admin-grid.compact .room-icon-label{font-size:11px;font-weight:600}.has-tooltip .tooltip{opacity:0;pointer-events:none;color:#e7f2ff;z-index:5;background:#0f1c2e;border-radius:12px;gap:4px;min-width:180px;padding:10px 12px;font-size:11px;line-height:1.4;display:grid;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,6px);box-shadow:0 12px 24px #0f172a40}.has-tooltip:hover .tooltip,.has-tooltip:focus-visible .tooltip{opacity:1;transform:translate(-50%)}.tooltip strong{color:#fff;font-size:12px}@media (width<=960px){.engineering-summary{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:18px;min-width:0;padding:18px}.card.readiness-alert-card{background:#fff1f1;border-color:#f3b6b6;box-shadow:0 12px 28px #b91c1c24}.card.readiness-alert-card h3,.card.readiness-alert-card .muted{color:#9f1239}.card.link-card{color:inherit;border-style:dashed;flex-direction:column;gap:10px;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.card.link-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 12px 30px #2454be2e}.card.link-card .link-cta{color:var(--accent);font-weight:600}.users-page{gap:16px;display:grid}.users-page h2{margin:0}.users-toolbar-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.users-toolbar-card{background:#f5f9fe;border:1px solid #c2cfdf;border-radius:14px;align-content:start;gap:8px;min-height:96px;padding:12px 14px 14px;display:grid;position:relative}.users-toolbar-card h3{margin:0;padding-right:26px;font-family:Fraunces,serif}.users-toolbar-card p{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.35;display:-webkit-box;overflow:hidden}.users-toolbar-link{color:inherit;text-decoration:none}.users-toolbar-card-active{background:#fff;border-color:#1176e0;box-shadow:inset 0 0 0 1px #1176e0}.users-toolbar-open{color:#7f8ea7;cursor:pointer;background:#fff;border:1px solid #c2cfdf;border-radius:999px;place-items:center;width:20px;height:20px;padding:0;font-size:16px;font-weight:700;line-height:1;display:grid;position:absolute;top:10px;right:10px}.users-toolbar-link .users-toolbar-open{pointer-events:none}.users-panel-modal{width:min(1100px,96vw)}.users-panel-modal .card{box-shadow:none}.users-page .table{table-layout:auto;margin-top:2px}.users-page .table th,.users-page .table td{padding:11px 8px}.users-page-grid{margin-top:20px}.users-page-grid .users-card-wide{grid-column:1/-1}.users-existing-management-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.users-existing-management-item{border:1px solid var(--stroke);background:#f8fbff;border-radius:14px;padding:12px}@media (width<=720px){.users-page-grid .users-card-wide{grid-column:auto}}.collapsible{background:linear-gradient(#ffffffeb,#f4f8fceb);border-radius:20px;padding:16px 20px;box-shadow:0 12px 32px #0f172a14}.collapsible summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;list-style:none;display:flex}.collapsible summary::-webkit-details-marker{display:none}.collapsible summary h2{margin:0}.collapsible[open] summary{padding-bottom:12px}.card h3{margin-top:0;font-family:Fraunces,serif}.action-row{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.action-row.compact{gap:8px;margin-top:0}.action-row.compact .button,.button.table-action{padding:6px 12px;font-size:12px}.button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:10px 18px;font-weight:600}.button.secondary{background:var(--accent-2)}.button.ghost{color:var(--accent);border:1px solid var(--accent);background:0 0}.button:disabled,.button.ghost:disabled{opacity:.45;cursor:not-allowed;border-color:var(--stroke);color:var(--muted);background:0 0}.auth-shell{background:radial-gradient(circle at 100% 0,#eaf3ff 0%,#f5f8ff 60%,#fff 100%);place-items:center;min-height:100vh;display:grid}.auth-layout{grid-template-columns:minmax(320px,1fr) minmax(260px,.9fr);align-items:stretch;gap:24px;width:min(920px,92vw);display:grid}.auth-layout.single{grid-template-columns:minmax(320px,1fr);width:min(520px,92vw)}.auth-card{background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:18px;gap:16px;padding:28px;display:grid}.auth-aside{background:linear-gradient(160deg,#1aa6c91f,#2b5fd71f);border:1px solid #2b5fd733;border-radius:18px;gap:14px;padding:28px;display:grid}.auth-aside h2{margin:0;font-family:Fraunces,serif}.auth-kpi{gap:10px;display:grid}.auth-kpi div{background:#fffc;border:1px solid #2b5fd72e;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.auth-kpi span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:11px}.auth-kpi strong{font-size:15px}.form{gap:12px;display:grid}.form .button{place-self:start}.form label{color:var(--muted);gap:6px;min-width:0;font-size:14px;display:grid}.form input,.form select,.form textarea{box-sizing:border-box;border:1px solid var(--stroke);border-radius:10px;width:100%;padding:10px 12px;font-family:Manrope,system-ui,sans-serif;font-size:15px}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ha-backend-row{grid-template-columns:1fr 140px auto;align-items:end;gap:12px;margin-bottom:12px;display:grid}@media (width<=900px){.ha-backend-row{grid-template-columns:1fr}}.form input:focus,.form select:focus,.form textarea:focus{border-color:#1a9ac799;outline:2px solid #1a9ac740}.speed-dial-editor{border:1px solid var(--stroke);background:#f8fbff;border-radius:10px;gap:12px;padding:14px;display:grid}.speed-dial-editor-header,.speed-dial-row-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.speed-dial-editor-header h4{color:var(--ink);margin:0;font-size:15px}.speed-dial-list{gap:10px;display:grid}.speed-dial-row{background:#fff;border:1px solid #dce6f4;border-radius:8px;gap:10px;padding:12px;display:grid}.speed-dial-row-header strong{color:var(--ink);font-size:13px}.speed-dial-fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:10px;display:grid}.speed-dial-preview{margin:0;font-size:12px}.status{margin-top:16px;font-weight:600}.code-input{resize:vertical;width:100%;min-height:120px;font-family:Source Code Pro,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.error{color:#b42318;font-weight:600}.table{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:12px}.table th,.table td{text-align:left;border-bottom:1px solid var(--stroke);white-space:normal;overflow-wrap:anywhere;padding:10px 8px;font-size:14px}.table.compact th,.table.compact td{font-size:12px}.table td.table-action{white-space:nowrap}.routing-groups-table{table-layout:auto;min-width:1120px}.routing-groups-table th,.routing-groups-table td{vertical-align:middle}.routing-groups-table th:nth-child(7),.routing-groups-table td:nth-child(7){min-width:120px}.routing-groups-table th:nth-child(8),.routing-groups-table td:nth-child(8),.routing-groups-table th:nth-child(9),.routing-groups-table td:nth-child(9){min-width:180px}.routing-groups-table th:nth-child(10),.routing-groups-table td:nth-child(10){min-width:92px}.routing-group-control{box-sizing:border-box;border:1px solid var(--stroke);background:#fff;border-radius:8px;width:100%;min-width:0;padding:6px 8px;font-family:Manrope,system-ui,sans-serif;font-size:14px}.kv-list{gap:12px;display:grid}.kv-item{border:1px dashed var(--stroke);background:#f4f8fc99;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.kv-content{gap:6px;display:grid}.kv-label{text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);font-size:11px;font-weight:600}.upload,.upload-card{gap:10px;margin-top:12px;display:grid}.upload-meta{border:1px dashed var(--stroke);background:#f4f8fcb3;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.upload-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.upload-input{display:none}.upload-preview{border:1px solid var(--stroke);background:#fff;border-radius:14px;margin-top:12px;overflow:hidden}.upload-preview-header{color:var(--muted);border-bottom:1px solid var(--stroke);background:#f2f5fb;padding:10px 12px;font-size:12px;font-weight:600}.upload-preview-table{max-height:240px;overflow:auto}.plain-list{color:var(--muted);gap:8px;margin:0;padding:0;list-style:none;display:grid}.template-links{gap:10px;display:grid}.template-link{border:1px solid var(--stroke);color:var(--ink);background:#fffc;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-weight:600;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.template-link:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 10px 20px #2454be1f}.template-sub{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-size:11px}.template-note{color:var(--muted);margin:12px 0 0;font-size:12px}.hint-list{gap:6px;margin-top:12px;display:grid}.hint-item{color:#1f3b78;background:#e6f2ff80;border:1px dashed #cfe0f7;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.callout{color:#2b4d7a;background:#e6f2ffb3;border:1px solid #cfe0f7;border-radius:14px;max-width:320px;padding:10px 12px;font-size:12px}.callout strong{margin-bottom:4px;display:block}.import-grid{align-items:stretch}.import-grid>*{height:100%}.card-collapsed{cursor:pointer;align-content:start;gap:10px;min-height:250px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.card-collapsed:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 12px 28px #2454be24}.card-collapsed:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.card-collapsed .collapsed-copy{-webkit-line-clamp:3;-webkit-box-orient:vertical;min-height:64px;margin:0;display:-webkit-box;overflow:hidden}.card-collapsed .collapsed-meta{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.card-collapsed .card-actions{align-items:center;gap:10px;margin-top:auto;display:flex}.inline-status{color:#1f3b78;background:#e6f2ff99;border:1px solid #cfe0f7;border-radius:999px;align-items:center;gap:6px;margin:8px 0 0;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.field-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:12px;display:grid}.modal-overlay{z-index:50;background:#10182873;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--stroke);width:min(760px,96vw);box-shadow:var(--shadow);border-radius:20px;gap:12px;padding:20px;display:grid}.upload-modal{width:min(980px,96vw);max-height:90vh;overflow:auto}.modal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.template-links a{color:var(--accent);font-weight:600;text-decoration:none}.wearable-gps-card{gap:12px;display:grid}.wearable-gps-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:end;gap:12px;display:grid}.wearable-gps-grid label,.wearable-geofence-form label{color:var(--muted);gap:6px;font-size:14px;display:grid}.wearable-gps-grid input,.wearable-gps-grid select,.wearable-geofence-form input,.wearable-geofence-form select{box-sizing:border-box;border:1px solid var(--stroke);width:100%;font:inherit;color:var(--text);background:#fff;border-radius:12px;padding:10px 12px}.wearable-map-modal{width:min(1180px,96vw)}.wearable-map-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:16px;display:grid}.wearable-map-frame{border:1px solid var(--stroke);background:#eef4f8;border-radius:14px;min-height:460px;overflow:hidden}.wearable-map-frame iframe{border:0;width:100%;height:100%;min-height:460px;display:block}.wearable-map-panel{align-content:start;gap:14px;display:grid}.wearable-map-details{gap:8px;margin:0;display:grid}.wearable-map-details div{border:1px solid var(--stroke);background:#f8fbff;border-radius:12px;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:8px 10px;display:grid}.wearable-map-details dt{color:var(--muted);font-weight:700}.wearable-map-details dd{overflow-wrap:anywhere;min-width:0;margin:0}.wearable-geofence-form{border:1px solid var(--stroke);background:#fff;border-radius:14px;gap:10px;padding:12px;display:grid}.wearable-geofence-form h3,.wearable-geofence-list h3{margin:0}.wearable-geofence-list{gap:10px;display:grid}.chip-list{flex-wrap:wrap;gap:8px;display:flex}@media (width<=960px){.top-nav{grid-template-columns:1fr;justify-items:start}.nav-links{flex-wrap:wrap;justify-content:flex-start}.hero,.wearable-map-grid{grid-template-columns:1fr}}@media (width<=720px){.app-main{padding:22px}}.call-alerts{grid-template-columns:repeat(auto-fit,minmax(180px,220px));gap:12px;margin-top:16px;display:grid}.call-alert-card{color:#f8fafc;aspect-ratio:1;background:#0f172a;border-radius:14px;align-content:center;gap:6px;padding:16px;display:grid;box-shadow:0 12px 30px #0f172a38}.call-alert-title{letter-spacing:.08em;text-transform:uppercase;color:#93c5fd;font-size:14px;font-weight:700}.call-alert-meta{justify-content:space-between;font-size:15px;display:flex}.desk-page{gap:18px}.desk-hero{color:#f8fbff;background:linear-gradient(135deg,#1f4b6e 0%,#2d6c95 55%,#3a7aa6 100%)}.desk-hero .hero-copy p,.desk-hero .hero-copy .eyebrow{color:#d7e6f4}.desk-hero .hero-copy h1{color:#fff}.desk-hero-metrics{place-self:center end;gap:10px;min-width:240px;display:grid}.desk-hero-metrics div{background:#ffffff14;border:1px solid #ffffff40;border-radius:14px;gap:4px;padding:10px 12px;display:grid}.desk-hero-metrics strong{color:#fff;font-size:18px}.desk-hero-metrics em,.desk-hero-metrics span{color:#d7e6f4;font-size:12px}.desk-console-strip{padding:0 6px}.desk-hero-ops{padding:6px}.desk-hero-surface{color:#f8fbff;background:radial-gradient(circle at 15% 10%,#ffffff38,#0000 55%),linear-gradient(135deg,#1b3f5f 0%,#255d86 55%,#2e77a4 100%);border:1px solid #fff3;border-radius:26px;grid-template-columns:minmax(240px,1fr) minmax(320px,1.2fr) minmax(240px,1fr);align-items:center;gap:18px;padding:26px 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 50px #0a1e3059}.desk-hero-left .eyebrow{color:#e6f2ffd9}.desk-hero-left h1{color:#fff}.desk-hero-left p{color:#e1efffd9}.desk-hero-center{justify-content:center;display:flex}.desk-action-rail{background:#ffffff2e;border:1px solid #ffffff40;border-radius:999px;flex-wrap:wrap;justify-content:center;gap:10px;padding:10px 14px;display:flex;box-shadow:inset 0 1px #fff3}.desk-action-rail button{color:#1b3b57;cursor:pointer;background:#ffffffeb;border:1px solid #fff6;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .15s}.desk-action-rail button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f2d4640}.desk-action-rail button.active{color:#124266;background:linear-gradient(120deg,#fff 0%,#dff2ff 100%);box-shadow:0 10px 22px #0f375a40}.desk-hero-right{justify-self:end;gap:12px;display:grid}.desk-live-card{background:#ffffff24;border:1px solid #ffffff40;border-radius:16px;gap:4px;min-width:180px;padding:12px 14px;display:grid}.desk-live-card span{text-transform:uppercase;letter-spacing:.12em;color:#dbecffd9;font-size:11px}.desk-live-card strong{color:#fff;font-size:22px}.desk-live-card em{color:#dcedffcc;font-size:12px}.desk-mode-card .desk-toggle{color:#ebf5ffe6;align-items:center;gap:10px;font-size:12px;display:flex}.desk-mode-card .desk-toggle input{accent-color:#dff2ff;width:16px;height:16px}@media (width<=1100px){.desk-hero-surface{text-align:center;grid-template-columns:1fr}.desk-hero-center{justify-content:center}.desk-hero-right{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));justify-self:center;width:100%}}.desk-console-tabs{background:#d8dde4;border:1px solid #c3cad3;border-radius:12px;flex-wrap:wrap;gap:8px;padding:8px 10px;display:flex}.desk-console-tabs button{color:#2f3b4a;cursor:pointer;background:#fff6;border:1px solid #0000;border-radius:8px;padding:6px 14px;font-size:12px}.desk-console-tabs button.active{background:#fff;border:1px solid #b9c2ce;font-weight:600}.ops-hero .hero-metric strong.health-critical{color:#b42318}.ops-hero .hero-metric strong.health-warning{color:#b45309}@keyframes riseFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero,.card,.auth-card,.auth-aside{animation:.45s both riseFade}@media (prefers-reduced-motion:reduce){.hero,.card,.auth-card,.auth-aside{animation:none}}@media (width<=1024px){.page{width:100%}.auth-layout{grid-template-columns:1fr}}@media (width<=900px){.top-nav{grid-template-columns:1fr;gap:12px}.nav-links{flex-wrap:wrap;justify-content:flex-start}}.desk-ops-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.desk-link-card{background:#f7f9fc}.desk-alerts-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.desk-table{overflow:auto}.desk-table .table{border-collapse:collapse;table-layout:fixed;background:#fff;border:1px solid #cbd5e1;width:100%;min-width:980px;font-size:12px}.desk-table .table th:nth-child(5),.desk-table .table td:nth-child(5){width:220px}.desk-table .table th:nth-child(6),.desk-table .table td:nth-child(6){text-align:center;width:140px}.desk-table .table th:nth-child(7),.desk-table .table td:nth-child(7){width:140px}.desk-table .table th{color:#2f3b4a;text-transform:uppercase;letter-spacing:.04em;background:#d6dde6;border-bottom:1px solid #c3cad3;padding:8px 12px;font-size:11px;font-weight:600}.desk-table .table td{vertical-align:middle;text-overflow:ellipsis;border-bottom:1px solid #e2e8f0;padding:10px 12px;overflow:hidden}.desk-table .table th.desk-center,.desk-table .table td.desk-center{text-align:center}.desk-table .table td.desk-center>*,.desk-call-actions.compact{margin-left:auto;margin-right:auto}.desk-table .table tr:nth-child(2n) td{background:#f8fafc}.desk-table-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.desk-table-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.desk-search{border:1px solid var(--stroke);background:#f8fafc;border-radius:12px;align-items:center;gap:8px;min-width:240px;padding:8px 12px;display:flex}.desk-search-icon{color:var(--muted);font-size:12px}.desk-table-search{color:#1b2b4b;background:0 0;border:none;outline:none;width:100%;font-size:13px}.desk-table select{color:#1f2937;background:#fff;border:1px solid #c7d0db;border-radius:999px;min-width:190px;height:32px;padding:0 12px;font-size:12px}.desk-permission-select{box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;width:100%;max-width:180px;margin:0 auto;display:block;overflow:hidden}.desk-call-actions select{min-width:110px}.desk-status-row{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.desk-extension-list{gap:10px;margin-top:12px;display:grid}.desk-extension-row{border:1px solid var(--stroke);background:#f8fbffcc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.desk-extension-meta{gap:4px;display:grid}.desk-extension-meta strong{font-size:14px}.desk-extension-meta span{color:var(--muted);font-size:12px}.desk-extension-meta em{color:var(--muted);font-size:11px;font-style:normal}.desk-call-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.desk-call-actions.compact{flex-direction:column;align-items:center;gap:6px;min-width:120px}.desk-call-mode{color:#1f2937;white-space:nowrap;background:#f8fafc;border:1px solid #c7d0db;border-radius:999px;justify-content:center;align-items:center;height:26px;padding:0 10px;font-size:11px;font-weight:600;display:inline-flex}.desk-call-mode.soft{color:#1d4ed8;background:#3b82f61a;border-color:#3b82f680}.desk-call-mode.desk{color:#0f766e;background:#10b9811f;border-color:#10b98166}.desk-call-mode.none{color:#64748b;background:#94a3b81f;border-color:#94a3b899}.desk-call-actions .button{border-radius:999px;height:32px;padding:0 14px;font-size:12px}.desk-call-actions .button.ghost{color:#1d4ed8;background:#fff;border:1px solid #1d4ed8}.desk-resident-cell{gap:2px;display:grid}.desk-resident-button{text-align:left;cursor:pointer;background:0 0;border:none;gap:2px;padding:0;display:grid}.desk-resident-button:disabled{cursor:default;opacity:.7}.desk-resident-button:focus-visible{outline-offset:2px;border-radius:8px;outline:2px solid #1d4ed8}.desk-resident-name{color:#1f2937;font-weight:600}.desk-room-meta{color:#64748b;font-size:11px}.desk-wakeup-pill{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.desk-wakeup-cell{align-items:center;gap:8px;margin:0 auto;display:inline-flex}.desk-wakeup-button{cursor:pointer;background:0 0;border:none;padding:0}.desk-wakeup-button:focus-visible{outline-offset:2px;border-radius:999px;outline:2px solid #1d4ed8}.desk-wakeup-icon{border:2px solid #cbd5e1;border-radius:50%;width:16px;height:16px;position:relative}.desk-wakeup-icon.active{background:#dcfce7;border-color:#16a34a}.desk-wakeup-icon.active:after{content:"";border:2px solid #16a34a;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.desk-wakeup-icon.inactive{background:#f3f4f6;border-color:#d1d5db}.desk-wakeup-pill.active{color:#1f7a3d;background:#e7f8ed;border:1px solid #bfe7cc}.desk-wakeup-pill.inactive{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb}.desk-resident-modal{grid-template-rows:auto 1fr}.desk-resident-body{gap:16px;padding-right:6px;display:grid;overflow:auto}.desk-resident-summary{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.desk-resident-meta{color:var(--muted);gap:4px;margin-top:8px;font-size:12px;display:grid}.desk-resident-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:10px 0;display:grid}.desk-resident-stats div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.desk-resident-stats strong{color:#0f172a;font-size:16px}.desk-resident-stats span{color:var(--muted);font-size:11px}.desk-voicemail-list{gap:12px;display:grid}.desk-voicemail-item{background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.desk-voicemail-item audio{width:100%;margin-top:8px}.desk-voicemail-actions{flex-direction:column;gap:8px;display:flex}.dialplan-panel{background:#fff;border-radius:18px;padding:18px;box-shadow:0 18px 40px #0f172a14}.dialplan-toolbar{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;display:flex}.dialplan-actions{flex-wrap:wrap;gap:8px;display:flex}.dialplan-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dialplan-meta label{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.dialplan-meta input,.dialplan-meta select{border:1px solid #dbe4f0;border-radius:8px;padding:6px 10px}.dialplan-table{gap:8px;margin-top:16px;display:grid}.dialplan-header,.dialplan-row{grid-template-columns:1fr 1fr 1fr 1fr .8fr 1fr .8fr;align-items:center;gap:16px;display:grid}.dialplan-header{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:12px}.dialplan-row{color:#0f172a;background:#f8fafc;border-radius:10px;padding:10px 14px;font-size:14px}.dialplan-footer{color:#64748b;justify-content:space-between;margin-top:16px;font-size:12px;display:flex}.rates-table{gap:8px;margin-top:16px;display:grid}.rates-header,.rates-row{grid-template-columns:1.2fr .8fr .9fr 1fr 1fr .5fr .6fr;align-items:center;gap:16px;display:grid}.rates-header{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:12px}.rates-row{color:#0f172a;background:#f8fafc;border-radius:10px;padding:10px 14px;font-size:14px}button.rates-row{text-align:left;cursor:pointer;border:none;width:100%;transition:transform .12s,box-shadow .12s}button.rates-row:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a14}button.rates-row.selected{background:#e0f2fe;box-shadow:inset 0 0 0 1px #38bdf8}button.dialplan-row{text-align:left;cursor:pointer;border:none;width:100%;transition:transform .12s,box-shadow .12s}button.dialplan-row:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a14}button.dialplan-row.selected{background:#e0f2fe;box-shadow:inset 0 0 0 1px #38bdf8}.dialplan-graph{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:24px;display:grid}.dialplan-graph-column{background:#f8fafc;border-radius:14px;padding:14px;box-shadow:inset 0 0 0 1px #e2e8f0}.dialplan-graph-column h3{text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-top:0;font-size:14px}.dialplan-graph-node{background:#fff;border-radius:10px;gap:4px;margin-top:10px;padding:10px 12px;display:grid;box-shadow:0 10px 20px #0f172a14}.dialplan-graph-node strong{font-size:14px}.dialplan-graph-node span{color:#0f172a}.dialplan-graph-node em{color:#64748b;font-size:12px}.dialplan-actions-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.dialplan-import{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dialplan-import>.button,.dialplan-import>.dialplan-file-button,.dialplan-import>.dialplan-file-name{height:38px}.dialplan-import>.dialplan-file-button,.dialplan-import>.dialplan-file-name{justify-content:center;align-items:center;display:inline-flex}.dialplan-file-input{display:none}.dialplan-file-button{border-radius:999px;padding:0 18px;font-weight:600;position:relative;overflow:hidden}.dialplan-file-name{border:1px solid var(--stroke);color:var(--muted);white-space:nowrap;background:0 0;border-radius:999px;padding:0 18px;font-size:13px;line-height:1}.dialplan-file-name.has-file{color:#0f172a}.wizard-overlay{z-index:1000;background:#0a121e80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.wizard-card{background:#fff;border-radius:20px;gap:20px;width:min(720px,100%);padding:28px;display:grid;box-shadow:0 20px 60px #0f172a33}.wizard-header h2{margin:6px 0}.wizard-note{background:#0f766e14;border:1px solid #0f766e33;border-radius:16px;padding:16px}.issue-banner{background:#fef9c3bf;border:1px solid #facc1573;border-radius:16px;gap:12px;margin:20px 0;padding:16px 20px;display:grid}.issue-banner-header{justify-content:space-between;align-items:center;display:flex}.license-banner{background:#fee2e2a6;border:1px solid #ef444466;border-radius:16px;gap:10px;margin:20px 0;padding:18px 22px;display:grid}.license-banner-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.issue-list{gap:12px;display:grid}.issue-item{background:#fff;border:1px solid #94a3b84d;border-radius:12px;padding:12px 16px}.issue-item.critical{background:#fee2e273;border-color:#ef444473}.issue-item.warning{background:#fef9c399;border-color:#facc1580}.health-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:12px 0 16px;display:grid}.health-label{text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);font-size:11px;display:block}.health-critical{color:#b42318}.health-warning{color:#b54708}.issue-title{margin:0 0 4px;font-weight:600}.issue-action{color:#0f766e;margin:6px 0 0;font-weight:600;text-decoration:none;display:inline-block}.issue-action:hover{text-decoration:underline}.issue-link{color:#475569;word-break:break-all;margin:4px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.anchor-target{scroll-margin-top:120px}.ivr-builder{gap:20px}.ivr-header{border:1px solid var(--stroke);box-shadow:var(--shadow);background:linear-gradient(135deg,#fff 0%,#eef4ff 100%);border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 24px;display:flex}.ivr-header h1{margin:4px 0 6px;font-family:Fraunces,serif}.ivr-header-meta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;min-width:min(520px,100%);display:grid}.ivr-header-meta div{border:1px solid var(--stroke);background:#fffc;border-radius:14px;gap:4px;padding:10px 12px;display:grid}.ivr-header-meta span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:11px}.ivr-header-meta strong{font-size:18px}.ivr-header-meta em{color:var(--muted);font-size:12px;font-style:normal}.ivr-toolbar{background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex}.ivr-toolbar h2{margin:0;font-family:Fraunces,serif}.ivr-toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ivr-toolbar-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ivr-toolbar-actions label{color:var(--muted);gap:6px;font-size:12px;display:grid}.ivr-layout{grid-template-columns:240px 1fr 300px;gap:18px;min-height:520px;display:grid}.ivr-palette,.ivr-config{background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:18px;align-self:start;gap:12px;max-height:calc(100vh - 160px);padding:16px;display:grid;position:sticky;top:120px;overflow:auto}.ivr-palette h3,.ivr-config h3{margin:0;font-family:Fraunces,serif}.ivr-palette-list{gap:8px;display:grid}.ivr-palette-search{color:var(--muted);gap:6px;font-size:12px;display:grid}.ivr-palette-search input{border:1px solid var(--stroke);border-radius:999px;padding:8px 12px}.ivr-canvas-panel{gap:12px;display:grid}.ivr-canvas-header{border:1px solid var(--stroke);background:#ffffffd9;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.ivr-canvas-header strong{display:block}.ivr-canvas-header .muted{margin:2px 0 0}.ivr-canvas-meta{color:var(--muted);gap:12px;font-size:12px;display:flex}.ivr-canvas{border:1px solid var(--stroke);box-shadow:var(--shadow);background:#f8fbff;border-radius:18px;min-height:520px;overflow:hidden}.ivr-node{border:2px solid var(--accent);background:#fff;border-radius:12px;min-width:160px;overflow:hidden;box-shadow:0 12px 24px #00000014}.ivr-node-header{color:#fff;text-transform:uppercase;letter-spacing:.8px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:12px;display:flex}.ivr-node-header strong{text-transform:none;letter-spacing:0;font-size:13px}.ivr-node-body{color:var(--muted);padding:10px;font-size:12px}.ivr-node-badges{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ivr-node-badge{color:#1f3b78;background:#eef5ff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600}.ivr-node-badge strong{margin-right:4px;font-weight:700}.ivr-node-next{color:var(--muted);gap:4px;margin-top:8px;font-size:11px;display:grid}.ivr-node-next select{width:100%}.ivr-edge-list{gap:8px;display:grid}.ivr-audio-preview{width:100%;margin-top:6px}.ivr-audio-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.ivr-audio-actions .inline{color:var(--muted);gap:6px;font-size:12px;display:grid}.ivr-audio-stock-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:12px;display:flex}.ivr-audio-stock-controls label{color:var(--muted);gap:6px;font-size:12px;display:grid}.ivr-audio-tts-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px;display:grid}.ivr-audio-tts-grid label{color:var(--muted);gap:6px;font-size:12px;display:grid}.ivr-audio-tts-grid textarea{resize:vertical;min-height:96px}.ivr-audio-tts-grid .span-3{grid-column:1/-1}.ivr-placeholder-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ivr-placeholder-header h2{margin-bottom:6px}.ivr-placeholder-summary{border:1px solid var(--border);text-align:center;background:#f8fafc;border-radius:8px;gap:2px;min-width:88px;padding:10px 12px;display:grid}.ivr-placeholder-summary strong{color:var(--accent);font-size:20px}.ivr-placeholder-summary span,.ivr-placeholder-card-header span,.ivr-placeholder-meta{color:var(--muted);font-size:12px}.ivr-placeholder-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:14px;display:grid}.ivr-placeholder-card{border:1px solid var(--border);background:#fff;border-radius:8px;gap:10px;padding:12px;display:grid}.ivr-placeholder-card.missing{background:#fffbeb;border-color:#d9770659}.ivr-placeholder-card.ready{border-color:#16a34a3d}.ivr-placeholder-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ivr-placeholder-card-header div{gap:3px;display:grid}.ivr-placeholder-card p{margin:0;font-size:13px;line-height:1.45}.ivr-placeholder-meta{flex-wrap:wrap;gap:10px;display:flex}.ivr-placeholder-card audio{width:180px;height:32px}.chip.success{color:#15803d;background:#16a34a1f}.chip.warning{color:#a16207;background:#d9770621}.moh-file{border-bottom:1px dashed var(--stroke);gap:6px;padding:8px 0;display:grid}.moh-file:last-child{border-bottom:none}.moh-file-meta{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.moh-file audio{width:220px}.wizard-steps{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.wizard-step{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-weight:600;display:flex}.wizard-step.complete{color:#1d4ed8;background:#2563eb14;border-color:#2563eb66}.wizard-step strong{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px}.ivr-audio-stock-table{margin-top:12px}.ivr-audio-stock-table audio{width:180px}.ivr-choice-grid{gap:10px;margin-top:8px;display:grid}.ivr-choice-row{grid-template-columns:80px 1fr auto;align-items:center;gap:8px;display:grid}.chip{background:var(--accent-3);color:var(--accent);text-align:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.ivr-audio-tip{color:var(--muted);background:#eef6fb;border-radius:12px;margin-top:12px;padding:10px 12px;font-size:12px}.edge-label{color:var(--muted);gap:4px;font-size:12px;display:grid}.button.danger{background:#b42318}.ivr-timeline{background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);border-radius:16px;margin-top:16px;padding:16px}.ivr-timeline ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ivr-timeline li{color:var(--muted);justify-content:space-between;align-items:flex-start;gap:12px;font-size:12px;display:flex}.ivr-timeline-main{gap:6px;display:grid}.ivr-timeline-details{color:var(--muted);background:#f6f7fb;border-radius:10px;gap:4px;padding:8px 10px;font-size:11px;display:grid}.template-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.template-card{border:1px solid var(--stroke);background:#fff;border-radius:16px;gap:10px;padding:16px;display:grid}.template-card h3{margin:0;font-family:Fraunces,serif}.template-card p{color:var(--muted);margin:0;font-size:13px}.status-banner{color:#1f3b78;background:#e6f2ffb3;border:1px solid #cfe0f7;border-radius:12px;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:600}.status-banner.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.status-banner.warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.status-banner.success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.status-card{border:1px solid var(--stroke);background:#f8faffe6;border-radius:14px;gap:8px;margin-top:10px;padding:12px;display:grid}.status-card .code-block{margin:0}.ivr-analytics-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.ivr-analytics-header h3{margin:0}.ivr-analytics-actions{align-items:center;gap:12px;display:flex}.ivr-analytics-actions label{color:var(--muted);gap:4px;font-size:12px;display:grid}.ivr-analytics-grid{gap:16px;display:grid}.ivr-analytics-panel{border:1px solid var(--stroke);background:#fff;border-radius:16px;gap:12px;padding:16px;display:grid}.ivr-analytics-panel h4{margin:0;font-size:14px}.ivr-analytics-table{border-collapse:collapse;width:100%;font-size:12px}.ivr-analytics-table th,.ivr-analytics-table td{border-bottom:1px solid var(--stroke);text-align:left;vertical-align:top;padding:8px 6px}.ivr-analytics-table th{color:var(--muted);font-weight:600}.ivr-analytics-rationale{max-width:320px}.ivr-modal-backdrop{z-index:80;background:#0f172a66;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ivr-modal{background:var(--panel);border:1px solid var(--stroke);width:min(1100px,96vw);max-height:90vh;box-shadow:var(--shadow);border-radius:20px;grid-template-rows:auto auto 1fr auto;gap:12px;padding:18px;display:grid;overflow:hidden}.ivr-modal-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.ivr-modal-header h3{margin:0}.ivr-modal-header p{color:var(--muted);margin:4px 0 0;font-size:12px}.ivr-preview-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.ivr-preview-pages{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;padding-right:6px;display:grid;overflow:auto}.ivr-preview-page{border:1px solid var(--stroke);background:#fff;border-radius:14px;gap:8px;padding:10px;display:grid}.ivr-preview-page img{border-radius:10px;width:100%;height:auto}.ivr-preview-label{color:var(--muted);font-size:12px}.ivr-preview-actions{justify-content:flex-end;gap:10px;display:flex}@media (width>=980px){.ivr-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.intent-chart-list{gap:16px;display:grid}.intent-chart{gap:8px;display:grid}.intent-chart-title{color:var(--muted);font-size:13px}.intent-chart-bars{gap:6px;display:grid}.intent-chart-bar{color:var(--muted);grid-template-columns:56px 1fr 24px;align-items:center;gap:8px;font-size:11px;display:grid}.intent-chart-track{background:#eef2f7;border-radius:999px;height:10px;overflow:hidden}.intent-chart-fill{background:linear-gradient(90deg,#2b5fd7,#5b8def);height:100%}.intent-chart-count{text-align:right;color:var(--muted)}.ivr-audio-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.ivr-audio-filters label{color:var(--muted);gap:6px;font-size:12px;display:grid}@media (width<=1100px){.ivr-layout{grid-template-columns:1fr}.ivr-palette,.ivr-config{max-height:none;position:static}.ivr-header{align-items:flex-start}}.table-sub{color:var(--muted);font-size:12px}.table-wrap{max-width:100%;overflow-x:auto}.table-wrap .table{min-width:640px}.dlr-pool-table{table-layout:auto;min-width:1220px}.dlr-pool-table th,.dlr-pool-table td{vertical-align:top;white-space:nowrap;overflow-wrap:normal}.dlr-pool-table th:first-child,.dlr-pool-table td:first-child{width:44px}.dlr-pool-table th:nth-child(2),.dlr-pool-table td:nth-child(2){min-width:120px}.dlr-pool-table th:nth-child(4),.dlr-pool-table td:nth-child(4){white-space:normal;min-width:180px}.dlr-pool-table th:nth-child(5),.dlr-pool-table td:nth-child(5){white-space:normal;min-width:140px}.dlr-pool-table th:nth-child(6),.dlr-pool-table td:nth-child(6){min-width:120px}.dlr-pool-table th:nth-child(7),.dlr-pool-table td:nth-child(7){white-space:normal;min-width:180px}.dlr-pool-table th:nth-child(8),.dlr-pool-table td:nth-child(8){white-space:normal;min-width:220px}.dlr-pool-table th:nth-child(9),.dlr-pool-table td:nth-child(9){min-width:130px}.superuser-page .form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch}.superuser-page .form.single{grid-template-columns:1fr}.form-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:16px;display:grid}.form-row.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-row.tight{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.superuser-page .form .action-row,.superuser-page .form .muted,.superuser-page .form textarea,.superuser-page .form .inline-status,.superuser-page .form .status-banner,.superuser-page .form .manual-field-list,.superuser-action-row{grid-column:1/-1}.manual-field-help code{font-weight:600}.manual-field-list{flex-direction:column;gap:12px;display:flex}.manual-field-row{grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) auto;align-items:end;gap:12px;display:grid}.template-scope-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.template-scope-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 16px;display:grid}.template-scope-item{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.template-editor{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.template-editor-left,.template-editor-right{gap:12px;display:grid}.template-scope-panel{border:1px solid var(--stroke);background:#f4f8fc99;border-radius:14px;gap:12px;padding:14px;display:grid}.template-scope-panel .template-scope-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media (width<=980px){.template-editor{grid-template-columns:1fr}}.action-row.compact{gap:8px}.manual-field-row label{min-height:auto}.manual-field-actions{align-items:center;display:flex}.superuser-grid label{word-break:break-word;grid-template-rows:auto 1fr;align-content:start;min-width:0;height:100%;min-height:86px}.superuser-grid label input,.superuser-grid label select,.superuser-grid label textarea{width:100%;min-width:0}.superuser-grid label select{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.superuser-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.superuser-action-right{flex-wrap:wrap;gap:8px;display:flex}.superuser-callouts{grid-column:1/-1;gap:10px;display:grid}.superuser-section .card{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #0e3c6d14}.superuser-section>h2{align-items:center;gap:10px;margin-bottom:12px;display:flex}.superuser-section>h2:after{content:"";background:#0e3c6d1f;flex:1;height:1px}.superuser-section details summary{background:#f5f8ff;border-radius:12px;padding:12px 14px}.superuser-section details[open] summary{margin-bottom:12px}.superuser-section .status-banner{margin-top:10px}.superuser-property-compact{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:12px}.superuser-property-compact>h2,.superuser-property-compact>.superuser-action-row,.superuser-property-compact>.inline-status{grid-column:1/-1}.superuser-property-compact .card{border-radius:14px;padding:14px;box-shadow:0 10px 24px #1723401a}.superuser-property-compact .superuser-collapsible-card{padding:0;overflow:hidden}.superuser-property-compact .superuser-collapsible-card>summary{cursor:pointer;border-bottom:1px solid var(--stroke);background:#f5f8ff;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:0;padding:12px 14px;list-style:none;display:flex}.superuser-property-compact .superuser-collapsible-card>summary::-webkit-details-marker{display:none}.superuser-property-compact .superuser-collapsible-card>summary h3{margin:0}.superuser-property-compact .superuser-collapsible-card>summary .muted{margin:4px 0 0}.superuser-property-compact .superuser-collapsible-body{padding:12px 14px}.superuser-property-compact .superuser-collapse-indicator{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.superuser-property-compact .superuser-collapsible-card .superuser-collapse-indicator:before{content:"Open"}.superuser-property-compact .superuser-collapsible-card[open] .superuser-collapse-indicator:before{content:"Close"}.superuser-property-compact .card>h3{margin-bottom:8px}.superuser-property-compact .form{gap:10px 12px}.superuser-property-compact .form label{min-height:58px}.superuser-property-compact .form .status-banner,.superuser-property-compact .form .inline-status,.superuser-property-compact .form .action-row,.superuser-property-compact .form .muted{margin-top:0}.upload-summary .table th,.upload-summary .table td{font-size:12px}.upload-summary .summary-alert{color:#b45309;font-weight:700}.upload-summary .summary-row.warning{background:#fffbeb}.ivr-config-meta{color:var(--muted);flex-wrap:wrap;gap:10px;margin-bottom:10px;font-size:12px;display:flex}.field-warning{color:#b45309;font-size:12px}.has-warning input,.has-warning select{background:#fffbeb;border-color:#d9770699}.admin-hero-panel .hero-metric strong{font-size:22px}.engineering-hero{background:linear-gradient(135deg,#fff 0%,#f0f6ff 100%)}.superuser-hero{background:linear-gradient(135deg,#fff 0%,#edf4ff 100%)}.superuser-nav{border:1px solid var(--stroke);background:#fffc;border-radius:14px;flex-wrap:wrap;gap:10px;padding:10px 12px;display:flex}.superuser-nav a{color:var(--muted);text-transform:uppercase;letter-spacing:.9px;border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s}.superuser-nav a.active,.superuser-nav a:hover{color:var(--accent);background:var(--accent-3);border-color:#1a9ac759}.superuser-workspace-grid .card{align-content:start;gap:10px;min-height:164px;display:grid}.superuser-workspace-grid .button{justify-self:start}.superuser-property-modal{width:min(1240px,97vw);max-height:92vh;overflow:auto}.superuser-property-modal .section{box-shadow:none;border:none;margin:0;padding:0}.bi-warning-list{gap:8px;margin-top:14px;display:grid}.bi-warning{color:#6b5a00;background:#fff7d6;border:1px solid #f2db8b;border-radius:10px;padding:8px 10px;font-size:12px}.bi-control-row{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.bi-period-picker{gap:8px;display:grid}.bi-period-picker span{text-transform:uppercase;letter-spacing:.9px;color:var(--muted);font-size:12px;font-weight:700}.bi-period-toggle{background:#f3f7fd;border:1px solid #cfdae8;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.bi-period-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;min-width:52px;padding:7px 14px;font-size:12px;font-weight:700}.bi-period-toggle button:hover{color:var(--ink);background:#e9f2ff}.bi-period-toggle button.active{color:#194f8f;background:#fff;border-color:#b5cce8;box-shadow:0 4px 10px #1f47801f}.bi-chip-list{flex-wrap:wrap;gap:8px;display:flex}.bi-chip{border:1px solid var(--stroke);color:var(--ink);cursor:pointer;text-align:left;background:#f6f9ff;border-radius:12px;gap:2px;min-width:110px;padding:8px 10px;display:grid}.bi-chip span{font-size:12px;font-weight:700}.bi-chip small{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-size:10px}.bi-chip.active{background:#dff0ff;border-color:#8eb8db}.bi-toggle-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.bi-toggle{border:1px solid var(--stroke);color:var(--ink);text-align:left;cursor:pointer;background:#f6f9ff;border-radius:12px;padding:10px 12px;font-weight:600}.bi-toggle.active{background:#dff0ff;border-color:#8eb8db}.bi-metric-value{margin-bottom:6px;font-size:28px;font-weight:800}.bi-trend-bars{align-items:end;gap:6px;width:100%;max-width:100%;min-height:190px;padding-bottom:6px;display:flex;overflow:hidden}.bi-trend-bars.compact{gap:3px;min-height:150px}.bi-trend-col{flex:1 1 0;justify-items:center;gap:6px;min-width:0;display:grid}.bi-trend-col span{color:var(--muted);font-size:10px;line-height:1}.bi-trend-col strong{color:var(--ink);font-size:11px}.bi-trend-bar-wrap{justify-content:center;align-items:end;width:100%;height:150px;display:flex}.bi-trend-bar{background:linear-gradient(#30a4de 0%,#2451be 100%);border-radius:8px 8px 4px 4px;width:100%;max-width:26px}.bi-trend-bars.compact .bi-trend-col{gap:4px}.bi-trend-bars.compact .bi-trend-bar-wrap{height:105px}.bi-trend-bars.compact .bi-trend-bar{border-radius:6px 6px 3px 3px;max-width:14px}.bi-trend-bars.compact .bi-trend-col span{font-size:9px}.bi-trend-empty{text-align:center;min-height:140px;color:var(--muted);place-content:center;gap:8px;display:grid}.bi-trend-empty strong{color:var(--ink);font-size:16px}.bi-trend-empty span{font-size:13px}.bi-trend-head{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.bi-trend-head div{border:1px solid var(--stroke);background:#f8fbff;border-radius:10px;gap:4px;padding:8px 10px;display:grid}.bi-trend-head span{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-size:11px}.bi-trend-head strong{color:var(--ink);font-size:20px}.bi-spark-wrap{border:1px solid var(--stroke);background:linear-gradient(#f8fbff 0%,#f3f8ff 100%);border-radius:12px;height:170px;overflow:hidden}.bi-spark-wrap.dense{height:140px}.bi-spark-svg{width:100%;height:100%;display:block}.bi-spark-baseline{stroke:#d8e1ee;stroke-width:1px}.bi-spark-area{fill:#2d8fc71f}.bi-spark-line{fill:none;stroke:#2d8fc7;stroke-width:2px}.bi-spark-trend{fill:none;stroke:#2451be;stroke-width:2px;stroke-dasharray:6 4;opacity:.75}.bi-spark-axis{color:var(--muted);justify-content:space-between;gap:8px;margin-top:8px;font-size:11px;display:flex}.bi-sentiment-grid{gap:8px;display:grid}.bi-sentiment-row{grid-template-columns:110px 1fr 40px;align-items:center;gap:10px;display:grid}.bi-sentiment-label{text-transform:capitalize;font-size:12px;font-weight:600}.bi-sentiment-track{background:#e8edf5;border-radius:999px;height:12px;overflow:hidden}.bi-sentiment-fill{width:0;height:100%}.bi-sentiment-fill.positive{background:#22a06b}.bi-sentiment-fill.neutral{background:#2d8fc7}.bi-sentiment-fill.negative{background:#d64545}.bi-sentiment-fill.mixed{background:#9256d9}.bi-sentiment-fill.unknown{background:#8a93a5}.bi-sentiment-value{text-align:right;font-size:12px;font-weight:700}.metric{margin:8px 0 14px;font-family:Fraunces,serif;font-size:32px;line-height:1}.superuser-workspace-shell{grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:start;gap:18px;width:100%;min-width:0;display:grid}.superuser-workspace-sidebar{gap:16px;min-width:0;display:grid;position:sticky;top:88px}.superuser-workspace-sidebar-header h3{margin-bottom:6px}.superuser-workspace-sidebar-groups{gap:14px;display:grid}.superuser-workspace-group{gap:8px;display:grid}.superuser-workspace-group-label{letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:700}.superuser-workspace-links{gap:8px;display:grid}.superuser-workspace-link{text-align:left;border:1px solid var(--stroke);cursor:pointer;background:#fff;border-radius:14px;gap:4px;width:100%;min-width:0;padding:12px 14px;transition:border-color .2s,background-color .2s,transform .2s;display:grid}.superuser-workspace-link strong{color:var(--ink);font-size:14px}.superuser-workspace-link span{color:var(--muted);font-size:12px;line-height:1.4}.superuser-workspace-link:hover,.superuser-workspace-link.active{background:var(--accent-3);border-color:#1a9ac759;transform:translateY(-1px)}.superuser-workspace-main{min-width:0}.setup-center-page{justify-self:center;width:100%;max-width:1320px}.setup-center-hero{align-items:start}.setup-center-shell{grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:start}.setup-center-sidebar{top:96px;overflow:visible}.setup-center-main{gap:20px;min-width:0;display:grid}.setup-center-group{border:1px solid var(--stroke);background:#f7faffe6;border-radius:16px;gap:10px;padding:12px}.setup-center-link{align-items:stretch;gap:8px}.setup-center-link-row{gap:8px;display:grid}.setup-center-link-badges{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.setup-step-review{color:#0f766e;background:#0f766e1f;border-radius:999px;justify-content:center;align-items:center;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.setup-step-status{letter-spacing:.02em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.setup-step-status.complete{color:#1f7a3d;background:#e7f8ed}.setup-step-status.in_progress{color:#2855b7;background:#eef5ff}.setup-step-status.attention{color:#8a5a00;background:#fff6db}.setup-step-status.optional{color:#6b7280;background:#f3f4f6}@media (width<=980px){.superuser-workspace-shell{grid-template-columns:1fr}.superuser-workspace-sidebar{position:static}}.properties-page{gap:20px;display:grid}.properties-hero{gap:8px}.properties-hero .muted{max-width:720px;margin-bottom:0}.properties-card{gap:22px;padding:24px;display:grid}.properties-toolbar{grid-template-columns:minmax(0,1.45fr) minmax(260px,.85fr);align-items:end;gap:18px;display:grid}.properties-toolbar-copy{gap:8px;display:grid}.properties-toolbar-copy h2{color:#22314d;margin:0;font-family:Fraunces,serif;font-size:28px;line-height:1.05}.properties-toolbar-copy .muted{margin-bottom:0}.properties-picker,.properties-field{gap:7px;min-width:0;display:grid}.properties-picker>span,.properties-field>span{letter-spacing:.01em;color:#44536d;font-size:13px;font-weight:700}.properties-form{gap:18px}.properties-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.properties-field-wide{grid-column:span 2}.properties-actions{padding-top:4px}.properties-status{color:var(--muted);margin:0;font-size:14px;line-height:1.5}@media (width<=900px){.properties-toolbar,.properties-form-grid{grid-template-columns:1fr}.properties-field-wide{grid-column:auto}.properties-card{padding:18px}}
