@charset "UTF-8";.sk-gui-launcher,.sk-gui-modal,.sk-gui,.sk-synth{--sk-gui-bg: var(--card-bg, #1a1d24);--sk-gui-fg: var(--text-color, #e6e8eb);--sk-gui-muted: var(--text-muted, #8a8f99);--sk-gui-accent: var(--primary-color, #6366f1);--sk-gui-border: var(--border-color, #2a2e36);--sk-gui-radius: 8px;--sk-gui-pad: 12px}.sk-gui-launcher{position:fixed;bottom:24px;right:24px;z-index:50;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--sk-gui-accent);color:#fff;border:none;border-radius:999px;font-weight:600;cursor:pointer;box-shadow:0 8px 24px #00000059}.sk-gui-launcher:hover{filter:brightness(1.1)}.sk-gui-launcher svg{display:block}.sk-gui-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.sk-gui-modal__inner{background:var(--sk-gui-bg);color:var(--sk-gui-fg);border-radius:var(--sk-gui-radius);width:min(1280px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080}.sk-gui-modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--sk-gui-border)}.sk-gui-modal__header h3{margin:0;font-size:15px}.sk-gui-modal__close{background:none;border:none;color:var(--sk-gui-muted);font-size:24px;cursor:pointer;line-height:1}.sk-gui-modal__close:hover{color:var(--sk-gui-fg)}.sk-gui-modal__body{padding:var(--sk-gui-pad);overflow:auto}.sk-gui{display:flex;flex-direction:column;gap:var(--sk-gui-pad)}.sk-gui__loading{padding:32px;text-align:center;color:var(--sk-gui-muted)}.sk-gui__banner{padding:8px 12px;border-radius:6px;font-size:13px}.sk-gui__banner--info{background:#6366f126;color:var(--sk-gui-fg)}.sk-gui__banner--error{background:#ef444426;color:#fca5a5}.sk-gui__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;background:#ffffff0a;border-radius:6px}.sk-gui__mode{display:inline-flex;gap:0;background:var(--sk-gui-border);border-radius:6px;overflow:hidden;padding:2px}.sk-gui__mode-btn{padding:4px 12px;background:transparent;border:none;color:var(--sk-gui-muted);font-size:12px;font-weight:600;cursor:pointer;border-radius:4px}.sk-gui__mode-btn:hover:not(:disabled){color:var(--sk-gui-fg)}.sk-gui__mode-btn:disabled{opacity:.4;cursor:not-allowed}.sk-gui__mode-btn--active{background:var(--sk-gui-accent);color:#fff}.sk-gui__cap-active{color:var(--sk-gui-accent);font-weight:600}.sk-gui__viewport-btn{position:absolute;top:8px;left:8px;z-index:2;padding:4px 10px;background:#0009;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:12px;cursor:pointer}.sk-gui__viewport-btn:hover{background:#000c}.sk-gui__cap{font-family:ui-monospace,monospace;font-size:12px;color:var(--sk-gui-muted)}.sk-gui__btn{padding:6px 12px;background:var(--sk-gui-border);border:1px solid transparent;border-radius:6px;color:var(--sk-gui-fg);font-size:13px;cursor:pointer}.sk-gui__btn:hover{border-color:var(--sk-gui-accent)}.sk-gui__field{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--sk-gui-muted)}.sk-gui__field select,.sk-gui__field input[type=range]{background:var(--sk-gui-border);color:var(--sk-gui-fg);border:1px solid transparent;border-radius:4px;padding:4px 6px;font-size:12px}.sk-gui__field-num{font-family:ui-monospace,monospace;color:var(--sk-gui-fg);min-width:22px;text-align:right}.sk-gui__viewport{position:relative;background:#000;border-radius:6px;min-height:360px;display:flex;align-items:center;justify-content:center;overflow:hidden}.sk-gui__frame{max-width:100%;max-height:calc(100vh - 220px);display:block}.sk-gui__stamp{position:absolute;bottom:6px;right:8px;padding:2px 6px;background:#0009;color:#cbd5e1;font-family:ui-monospace,monospace;font-size:11px;border-radius:4px}.sk-synth{display:flex;flex-direction:column;height:540px;border-radius:6px;overflow:hidden;background:linear-gradient(135deg,#1e293b,#0f172a);color:var(--sk-gui-fg)}.sk-synth__wallpaper{flex:1;position:relative;padding:16px;overflow:auto}.sk-synth__hostname{position:absolute;top:12px;right:16px;font-family:ui-monospace,monospace;color:var(--sk-gui-muted);font-size:12px}.sk-synth__windows{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:24px}.sk-synth__window{background:var(--sk-gui-bg);border:1px solid var(--sk-gui-border);border-radius:6px;overflow:hidden;box-shadow:0 4px 16px #0000004d}.sk-synth__titlebar{display:flex;justify-content:space-between;padding:6px 10px;background:#ffffff0a;font-size:12px}.sk-synth__title{font-weight:600}.sk-synth__controls{color:var(--sk-gui-muted);font-family:ui-monospace,monospace}.sk-synth__body{padding:10px;font-size:12px;max-height:220px;overflow:auto}.sk-synth__list{list-style:none;margin:0;padding:0}.sk-synth__list li{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:4px 0;border-bottom:1px solid var(--sk-gui-border);font-family:ui-monospace,monospace}.sk-synth__list li:last-child{border-bottom:none}.sk-synth__kv{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:0}.sk-synth__kv dt{color:var(--sk-gui-muted)}.sk-synth__kv dd{margin:0;font-family:ui-monospace,monospace}.sk-synth__taskbar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#00000073;border-top:1px solid var(--sk-gui-border);font-size:12px}.sk-synth__start{font-size:18px;color:var(--sk-gui-accent);margin-right:4px}.sk-synth__task{padding:3px 8px;background:#ffffff0f;border-radius:4px;white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis}.sk-synth__clock{margin-left:auto;color:var(--sk-gui-muted);font-family:ui-monospace,monospace}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.react-flow{direction:ltr;--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: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--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: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--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 rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.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: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--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: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--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 rgba(0, 0, 0, .08);--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{position:absolute;width:100%;height:100%;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{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.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;-moz-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:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.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:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;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%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;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{position:absolute;z-index:5;margin:15px}.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{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.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{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;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))}.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{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.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-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.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))}/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-sm:.25rem;--radius-md:.375rem;--radius-xl:.75rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--default-mono-font-family:"JetBrains Mono", "Fira Code", "Monaco", "Consolas", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.-start{inset-inline-start:calc(var(--spacing) * -1)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.left-2{left:calc(var(--spacing) * 2)}.isolate{isolation:isolate}.z-50{z-index:50}.col-span-full{grid-column:1/-1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing) * 4)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-full{height:100%}.h-px{height:1px}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[300px\]{max-height:300px}.w-2\/5{width:40%}.w-3\/5{width:60%}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-32{width:calc(var(--spacing) * 32)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[200px\]{max-width:200px}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[8rem\]{min-width:8rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow\!{flex-grow:1!important}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing) * 0)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.5rem}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-blue-500\/20{border-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/20{border-color:color-mix(in oklab,var(--color-blue-500) 20%,transparent)}}.border-border{border-color:var(--border-default)}.border-destructive\/20{border-color:#ef444433}.border-yellow-500\/20{border-color:#edb20033}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/20{border-color:color-mix(in oklab,var(--color-yellow-500) 20%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-blue-400{background-color:var(--color-blue-400)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500) 10%,transparent)}}.bg-border{background-color:var(--border-default)}.bg-card{background-color:var(--bg-card)}.bg-destructive\/10{background-color:#ef44441a}.bg-green-400{background-color:var(--color-green-400)}.bg-muted{background-color:var(--bg-secondary)}.bg-muted-foreground\/60{background-color:var(--text-tertiary)}@supports (color:color-mix(in lab,red,red)){.bg-muted-foreground\/60{background-color:color-mix(in oklab,var(--text-tertiary) 60%,transparent)}}.bg-popover{background-color:var(--bg-elevated)}.bg-primary{background-color:var(--accent-primary)}.bg-red-400{background-color:var(--color-red-400)}.bg-secondary{background-color:var(--bg-secondary)}.bg-transparent{background-color:#0000}.bg-yellow-400{background-color:var(--color-yellow-400)}.bg-yellow-500\/10{background-color:#edb2001a}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/10{background-color:color-mix(in oklab,var(--color-yellow-500) 10%,transparent)}}.fill-current{fill:currentColor}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,Fira Code,Monaco,Consolas,monospace}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--bg-hover)}.text-blue-400{color:var(--color-blue-400)}.text-destructive{color:#ef4444}.text-foreground{color:var(--text-primary)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-muted{color:var(--bg-secondary)}.text-muted-foreground{color:var(--text-tertiary)}.text-popover-foreground{color:var(--text-primary)}.text-primary{color:var(--accent-primary)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-secondary{color:var(--bg-secondary)}.text-yellow-400{color:var(--color-yellow-400)}.text-yellow-600{color:var(--color-yellow-600)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.\!filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}.running{animation-play-state:running}.placeholder\:text-muted-foreground::placeholder{color:var(--text-tertiary)}@media (hover:hover){.hover\:bg-primary\/90:hover{background-color:var(--accent-primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--accent-primary) 90%,transparent)}}.hover\:text-destructive:hover{color:#ef4444}}.focus\:bg-accent:focus{background-color:var(--bg-hover)}.focus\:text-accent-foreground:focus{color:var(--text-primary)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--bg-hover)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--text-primary)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:.5rem}.data-\[state\=closed\]\:animate-out[data-state=closed]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-name:exit;animation-duration:.15s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--bg-hover)}.data-\[state\=open\]\:animate-in[data-state=open]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-4xl{max-width:var(--container-4xl)}.sm\:max-w-6xl{max-width:var(--container-6xl)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:max-w-xl{max-width:var(--container-xl)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:justify-center{justify-content:center}.sm\:justify-end{justify-content:flex-end}.sm\:text-center{text-align:center}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--text-tertiary)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing) * 0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:size-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:size-5 [cmdk-item] svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}:root{--bg-body: #0a0b0e;--bg-sidebar: #0d0f15;--bg-card: #101218;--bg-hover: #1a1e27;--bg-elevated: #161922;--bg-secondary: #161922;--bg-tertiary: #1c2029;--surface: #101218;--surface-2: #161922;--surface-3: #1c2029;--surface-hover: #1a1e27;--border-default: #23272f;--border-subtle: #191c23;--border-active: #2c313b;--border-hover: #2c313b;--border: #23272f;--border-soft: #191c23;--border-strong: #2c313b;--text-primary: #e9ebf0;--text-secondary: #9aa1af;--text-tertiary: #646b7a;--text: #e9ebf0;--text-dim: #9aa1af;--text-faint: #646b7a;--text-ghost: #444b58;--accent-primary: #6d7cff;--accent-hover: #5a67e8;--accent-glow: rgba(109, 124, 255, .35);--accent-shadow: rgba(109, 124, 255, .3);--accent: #6d7cff;--accent-bright: #8b93ff;--accent-dim: #4954cc;--accent-bg: rgba(109, 124, 255, .13);--accent-bg-soft: rgba(109, 124, 255, .07);--green: #3ddc97;--green-bg: rgba(61, 220, 151, .12);--amber: #f5b945;--amber-bg: rgba(245, 185, 69, .12);--red: #fb6f6f;--red-bg: rgba(251, 111, 111, .12);--cyan: #49c7f0;--cyan-bg: rgba(73, 199, 240, .12);--violet: #b07bf5;--violet-bg: rgba(176, 123, 245, .12);--radius: 10px;--radius-sm: 7px;--radius-lg: 14px;--sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px -8px rgba(0, 0, 0, .55);--shadow-lg: 0 20px 48px -12px rgba(0, 0, 0, .65);--scrollbar-track: #101218;--scrollbar-thumb: #2a2f3a;--scrollbar-thumb-hover: #363c49;--bg-code: #0d1017;--text-code: #e2e8f0;--grid-color: rgba(255, 255, 255, .02)}[data-theme=light]{--bg-body: #f6f7fb;--bg-sidebar: #f1f3f9;--bg-card: #ffffff;--bg-hover: #eef1f7;--bg-elevated: #ffffff;--bg-secondary: #f1f3f9;--bg-tertiary: #e6e9f2;--surface: #ffffff;--surface-2: #f6f7fb;--surface-3: #eef1f7;--surface-hover: #eef1f7;--border-default: #e2e6ef;--border-subtle: #eef1f7;--border-active: #cdd3e0;--border-hover: #cdd3e0;--border: #e2e6ef;--border-soft: #eef1f7;--border-strong: #cdd3e0;--text-primary: #161a23;--text-secondary: #515a6b;--text-tertiary: #79818f;--text: #161a23;--text-dim: #515a6b;--text-faint: #79818f;--text-ghost: #a6adba;--accent-bg: rgba(109, 124, 255, .1);--accent-bg-soft: rgba(109, 124, 255, .05);--accent-glow: rgba(109, 124, 255, .22);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-md: 0 6px 16px -6px rgba(16, 24, 40, .12);--shadow-lg: 0 16px 40px -12px rgba(16, 24, 40, .18);--scrollbar-track: #f1f3f9;--scrollbar-thumb: #cdd3e0;--scrollbar-thumb-hover: #aab2c2;--bg-code: #f1f3f9;--text-code: #334155;--grid-color: rgba(109, 124, 255, .06)}@media (prefers-color-scheme: light){[data-theme=system]{--bg-body: #f6f7fb;--bg-sidebar: #f1f3f9;--bg-card: #ffffff;--bg-hover: #eef1f7;--bg-elevated: #ffffff;--bg-secondary: #f1f3f9;--bg-tertiary: #e6e9f2;--surface: #ffffff;--surface-2: #f6f7fb;--surface-3: #eef1f7;--surface-hover: #eef1f7;--border-default: #e2e6ef;--border-subtle: #eef1f7;--border-active: #cdd3e0;--border-hover: #cdd3e0;--border: #e2e6ef;--border-soft: #eef1f7;--border-strong: #cdd3e0;--text-primary: #161a23;--text-secondary: #515a6b;--text-tertiary: #79818f;--text: #161a23;--text-dim: #515a6b;--text-faint: #79818f;--text-ghost: #a6adba;--accent-bg: rgba(109, 124, 255, .1);--accent-bg-soft: rgba(109, 124, 255, .05);--accent-glow: rgba(109, 124, 255, .22);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-md: 0 6px 16px -6px rgba(16, 24, 40, .12);--shadow-lg: 0 16px 40px -12px rgba(16, 24, 40, .18);--scrollbar-track: #f1f3f9;--scrollbar-thumb: #cdd3e0;--scrollbar-thumb-hover: #aab2c2;--bg-code: #f1f3f9;--text-code: #334155;--grid-color: rgba(109, 124, 255, .06)}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-500.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-600.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-sans-700.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-600.woff2) format("woff2")}*{margin:0;padding:0;box-sizing:border-box}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-body);color:var(--text-primary);font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%;height:auto}ul,ol{list-style:none}::selection{background:var(--accent-primary);color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-body)}::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.spinner-ring,[class*=spinner]{animation-duration:.8s!important;animation-iteration-count:infinite!important}}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;letter-spacing:-.5px}h1{font-size:24px}h2{font-size:18px}h3{font-size:16px}h4{font-size:14px}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-success{color:#3ddc97}.text-warning{color:#f5b945}.text-danger{color:#fb6f6f}.text-accent{color:var(--accent-primary)}.font-normal{font-weight:400}.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subtitle{color:var(--text-tertiary);margin-top:4px;font-size:14px}.section-title{font-size:18px;margin-bottom:20px;font-weight:600}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-x-2>*+*{margin-left:.5rem}.space-x-4>*+*{margin-left:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-12{padding-top:3rem;padding-bottom:3rem}.w-full{width:100%}.w-auto{width:auto}.w-\[1px\]{width:1px}.min-w-0{min-width:0}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.h-6{height:1.5rem}.h-full{height:100%}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-gray-300,.text-gray-400{color:var(--text-tertiary)}.text-gray-500,.text-gray-600{color:var(--text-secondary)}.text-blue-600{color:var(--accent-primary)}.text-green-600{color:#3ddc97}.text-red-600{color:#fb6f6f}.text-green-400,.text-green-500{color:#3ddc97}.text-red-500{color:#fb6f6f}.text-yellow-600,.text-yellow-700{color:#f5b945}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-tertiary)}.bg-gray-700{background-color:var(--bg-hover)}.bg-gray-100{background-color:var(--bg-elevated)}.bg-blue-100{background-color:#6d7cff1a}.bg-green-100{background-color:#3ddc971a}.bg-red-100{background-color:#fb6f6f1a}.bg-body{background-color:var(--bg-body)}.border{border:1px solid var(--border-default)}.border-b{border-bottom:1px solid var(--border-subtle)}.rounded{border-radius:6px}.rounded-lg{border-radius:8px}.block{display:block}.inline-flex{display:inline-flex}.hidden{display:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.cursor-pointer{cursor:pointer}.inline-block{display:inline-block}.btn-dismiss{float:right;background:none;border:none;cursor:pointer;color:inherit}.align-middle{vertical-align:middle}.max-h-24{max-height:6rem}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sidebar{width:250px;background:linear-gradient(180deg,var(--bg-sidebar),var(--bg-body));border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:30;padding:0 1rem}@media (max-width: 768px){.sidebar{top:0;left:0;height:100dvh;width:min(280px,86vw);padding-left:max(1rem,env(safe-area-inset-left));padding-top:env(safe-area-inset-top);z-index:50;transform:translate(-100%);transition:transform .28s cubic-bezier(.22,1,.36,1);will-change:transform}.sidebar.sidebar--mobile-open{transform:translate(0);box-shadow:8px 0 32px #00000073}}@media (max-width: 768px) and (prefers-reduced-motion: reduce){.sidebar{transition:none}}.sidebar__close{display:none}@media (max-width: 768px){.sidebar__close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:8px 0 4px auto;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;cursor:pointer;transition:color .2s ease}.sidebar__close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.sidebar__close:hover{color:var(--text-primary);background:#ffffff0f}}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:40;animation:sidebarBackdropIn .2s ease-out}@media (prefers-reduced-motion: reduce){.sidebar-backdrop{animation:none}}@keyframes sidebarBackdropIn{0%{opacity:0}to{opacity:1}}.mobile-topbar{display:none}@media (max-width: 768px){.mobile-topbar{display:flex;align-items:center;gap:8px;position:fixed;top:0;left:0;right:0;height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-right:max(16px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left));background-color:var(--bg-sidebar);border-bottom:1px solid var(--border-default);z-index:20}}.mobile-topbar__toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:none;background:transparent;color:var(--text-primary);border-radius:6px;cursor:pointer;transition:background .2s ease}.mobile-topbar__toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.mobile-topbar__toggle:hover{background:var(--bg-hover)}.mobile-topbar__brand{display:flex;align-items:center;gap:8px;min-width:0}.mobile-topbar__logo{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0}.mobile-topbar__logo img{width:100%;height:100%;object-fit:contain}.mobile-topbar__name{font-size:1.05rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-section{height:70px;display:flex;align-items:center;gap:10px;margin-bottom:1rem;padding:0 .5rem;flex-shrink:0}.brand-logo{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;color:#fff;background:linear-gradient(160deg,var(--accent-bright),var(--accent));box-shadow:0 4px 14px -2px var(--accent-glow),inset 0 1px #ffffff40}.brand-logo svg{stroke:#fff}.brand-logo img{width:100%;height:100%}.brand-text{font-size:1.15rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.brand-star{margin-left:auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:var(--text-tertiary);transition:color .2s ease,background-color .2s ease}.brand-star:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.brand-star:hover{color:#f59e0b;background:#f59e0b1f}.brand-section--custom{justify-content:flex-start}.brand-custom-logo{width:32px;height:32px;border-radius:6px;overflow:hidden;display:grid;place-items:center;flex-shrink:0;color:var(--text-tertiary);background:var(--bg-secondary)}.brand-custom-logo img{width:100%;height:100%;object-fit:contain}.brand-custom-banner{width:100%;max-height:50px;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text-tertiary)}.brand-custom-banner img{max-width:100%;max-height:50px;object-fit:contain}.brand-custom-text{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-switcher__trigger.ui-select-trigger{width:calc(100% - 24px);margin:0 12px 8px;padding:4px 8px;background-color:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;color:var(--text-primary);font-size:12px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.workspace-switcher__trigger.ui-select-trigger:hover{border-color:var(--border-active);background-color:var(--bg-hover)}.workspace-switcher__trigger.ui-select-trigger:focus-visible{outline:2px solid var(--accent-primary);outline-offset:1px}.workspace-switcher__trigger.ui-select-trigger .workspace-switcher__icon{flex-shrink:0;color:var(--text-secondary)}.workspace-switcher__trigger.ui-select-trigger>span:first-of-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.nav-scroll::-webkit-scrollbar{display:none}.nav-category{font-family:var(--mono);font-size:.66rem;font-weight:500;color:var(--text-ghost);text-transform:uppercase;letter-spacing:.12em;margin:1.5rem 0 .5rem .65rem}.nav-category:first-of-type{margin-top:.75rem}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:11px;padding:.5rem .625rem;border-radius:8px;color:var(--text-dim);text-decoration:none;font-size:.84rem;font-weight:450;transition:background-color .14s ease,color .14s ease;margin-bottom:2px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-item:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.nav-item .nav-icon{stroke:var(--text-faint);transition:stroke .14s ease}.nav-item:hover{color:var(--text-primary);background-color:var(--surface-hover)}.nav-item:hover .nav-icon{stroke:var(--text-dim)}.nav-item.active{background:linear-gradient(90deg,var(--accent-bg),var(--accent-bg-soft));color:var(--text-primary);font-weight:500}.nav-item.active .nav-icon{stroke:var(--accent-bright)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:18px;border-radius:0 3px 3px 0;background:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.nav-item-row{display:flex;align-items:center}.nav-item-row .nav-item{flex:1;min-width:0}.nav-item-row.has-children .nav-item{padding-right:0}.nav-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:4px;flex-shrink:0;transition:all .15s ease;margin-right:4px}.nav-expand-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.nav-expand-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.nav-expand-btn svg{transition:transform .2s ease}.nav-expand-btn.expanded svg{transform:rotate(90deg)}.nav-sub-item{padding-left:2.25rem;font-size:.8rem}.nav-icon{width:18px;height:18px;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;fill:none;opacity:1;flex-shrink:0}.sidebar-footer{padding:1rem 0;margin-top:auto;border-top:1px solid var(--border-subtle);flex-shrink:0;position:relative}.user-context-menu{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:4px;z-index:60;animation:contextMenuIn .15s ease-out}@keyframes contextMenuIn{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.context-menu-section{padding:6px 8px}.context-menu-label{font-family:var(--mono);font-size:.6rem;font-weight:500;color:var(--text-ghost);text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.theme-switcher{display:flex;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:3px}.theme-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:6px 0;border:none;background:transparent;color:var(--text-faint);border-radius:6px;cursor:pointer;transition:all .15s ease}.theme-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.theme-btn:hover{color:var(--text-primary)}.theme-btn.active{background:var(--accent-bg);color:var(--accent-bright)}.view-switcher{display:flex;flex-wrap:wrap;gap:4px}.view-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-faint);font-size:.65rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s ease}.view-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.view-btn:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--surface-3)}.view-btn.active{border-color:var(--accent-dim);color:var(--accent-bright);background:var(--accent-bg)}.context-menu-divider{height:1px;background:var(--border-soft);margin:4px 0}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:transparent;color:var(--text-secondary);font-size:.82rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s ease;text-align:left}.context-menu-item:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.context-menu-item:hover{background:var(--surface-3);color:var(--text-primary)}.context-menu-item.danger{color:#fb6f6f}.context-menu-item.danger:hover{background:var(--red-bg);color:#fb6f6f}.context-menu-arrow{margin-left:auto;opacity:.4}.user-mini{display:flex;align-items:center;gap:10px;width:auto;padding:.5rem;cursor:pointer;border:none;background:transparent;color:inherit;font:inherit;text-align:left;border-radius:8px;transition:all .2s ease}.user-mini:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.user-mini:hover{background:var(--surface-2)}.user-avatar{width:32px;height:32px;background:linear-gradient(150deg,var(--surface-3),var(--surface-2));border:1px solid var(--border-strong);border-radius:9px;display:grid;place-items:center;font-family:var(--mono);font-size:.78rem;font-weight:600;color:var(--text-primary)}.user-menu-arrow{margin-left:auto;color:var(--text-tertiary);opacity:.5;transition:transform .2s ease,opacity .2s ease}.user-menu-arrow.open{opacity:1;transform:rotate(180deg)}.user-mini:hover .user-menu-arrow{opacity:.8}.user-meta{display:flex;flex-direction:column}.user-handle{font-size:.8rem;font-weight:550;color:var(--text-primary)}.user-status{font-family:var(--mono);font-size:.64rem;color:var(--green);display:flex;align-items:center;gap:5px;margin-top:1px}.user-status:before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%;box-shadow:0 0 6px currentColor}@media (min-width: 769px){[data-layout=rail] .main-content{margin-left:64px}[data-layout=rail] .sidebar{width:64px;transition:width .18s cubic-bezier(.22,1,.36,1)}}@media (min-width: 769px) and (prefers-reduced-motion: reduce){[data-layout=rail] .sidebar{transition:none}}@media (min-width: 769px){[data-layout=rail] .sidebar:hover,[data-layout=rail] .sidebar:focus-within{width:250px;box-shadow:8px 0 32px #00000047}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .nav-item{justify-content:center;gap:0;font-size:0}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .nav-sub-item{padding-left:.625rem}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .brand-section,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .workspace-switcher__trigger,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .user-mini{justify-content:center;gap:0}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .brand-text,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .brand-star,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .nav-category,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .nav-expand-btn,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .workspace-switcher__trigger>span,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .workspace-switcher__trigger .ui-select-icon,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .user-meta,[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .user-menu-arrow{display:none}}@media (min-width: 769px){[data-layout=topbar] .main-content{margin-left:0;margin-top:64px}[data-layout=topbar] .main-content--full-page,[data-layout=topbar] .main-content:has(.workflow-page.fullscreen),[data-layout=topbar] .main-content:has(.page-container--full-bleed){height:calc(100vh - 64px)}[data-layout=topbar] .sidebar{top:0;left:0;right:0;width:100%;height:64px;flex-direction:row;align-items:center;gap:12px;padding:0 16px;border-right:none;border-bottom:1px solid var(--border-subtle);background:var(--bg-sidebar)}[data-layout=topbar] .brand-section{height:auto;margin-bottom:0;padding:0;flex-shrink:0}[data-layout=topbar] .workspace-switcher__trigger{margin:0;flex-shrink:0;max-width:170px}[data-layout=topbar] .nav-scroll{flex:1;display:flex;flex-direction:row;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden}[data-layout=topbar] .nav{flex-direction:row;align-items:center;gap:4px}[data-layout=topbar] .nav-category,[data-layout=topbar] .nav-expand-btn,[data-layout=topbar] .nav-sub-item{display:none}[data-layout=topbar] .nav-item{white-space:nowrap;margin-bottom:0}[data-layout=topbar] .nav-item.active:before{inset:auto 0 -2px 0;width:auto;height:2px;transform:none;border-radius:2px 2px 0 0}[data-layout=topbar] .sidebar-footer{margin:0 0 0 auto;padding:0;border-top:none;flex-shrink:0}[data-layout=topbar] .user-context-menu{top:calc(100% + 4px);bottom:auto;left:auto;right:0;min-width:240px}}.dashboard-layout{display:flex;min-height:100vh}.main-content{margin-left:250px;flex:1;min-width:0;padding:40px;overflow-y:auto;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:40px 40px}@media (max-width: 768px){.main-content{margin-left:0;padding:calc(76px + env(safe-area-inset-top)) 20px 20px}}.main-content--full-page,.main-content:has(.workflow-page.fullscreen),.main-content:has(.page-container--full-bleed){padding:0;overflow:hidden;height:100vh}@media (max-width: 768px){.main-content--full-page,.main-content:has(.workflow-page.fullscreen),.main-content:has(.page-container--full-bleed){height:calc(100dvh - 56px - env(safe-area-inset-top));margin-top:calc(56px + env(safe-area-inset-top))}}.top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.top-bar h1{font-size:24px;font-weight:600;letter-spacing:-.5px}@media (max-width: 768px){.top-bar{flex-direction:column;align-items:flex-start;gap:16px}}.top-bar-actions{display:flex;gap:12px}.page-container{width:100%;max-width:1400px;margin:0 auto;padding-bottom:40px}.page-container--full-bleed{max-width:none;margin:0;padding-bottom:0}.sk-tabgroup{height:100%;min-height:0;display:flex;flex-direction:column}.sk-tabgroup>.sk-topbar{flex-shrink:0;padding:10px 16px;margin:0}.sk-tabgroup>.sk-topbar .sk-topbar__ico svg{width:18px;height:18px}.sk-tabgroup__content{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.sk-tabgroup__content>.servers-page--ops,.sk-tabgroup__content>.sk-tabgroup__fill{flex:1;min-height:0}.sk-tabgroup__inner{width:100%;max-width:1400px;margin-inline:auto;padding:24px 24px 40px}@media (max-width: 768px){.sk-tabgroup>.sk-topbar{padding:10px 12px}.sk-tabgroup__inner{padding:16px 16px 32px}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-header .page-header-content h1,.page-header .header-info h1{font-size:24px;font-weight:600;margin:0 0 4px;color:var(--text-primary)}.page-header .page-header-content .page-description,.page-header .page-header-content p,.page-header .header-info .page-description,.page-header .header-info p{color:var(--text-secondary);font-size:12px;margin:0}.page-header .page-header-actions,.page-header .header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}@media (max-width: 768px){.page-header{flex-direction:column;align-items:stretch}.page-header .page-header-actions,.page-header .header-actions{justify-content:flex-end}}.loading{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--text-secondary)}.loading-state{min-height:40vh}.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:32px}@media (max-width: 1280px){.stats-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-strip{grid-template-columns:1fr}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:24px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}@media (max-width: 768px){.overview-grid{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;white-space:nowrap;text-align:center;vertical-align:middle;height:40px;min-width:96px;padding:0 20px;border-radius:8px;border:1px solid transparent;font-family:inherit;font-size:14px;font-weight:500;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;background:none;color:inherit;transition:all .2s ease}.btn svg{width:16px;height:16px;flex-shrink:0}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn-primary{background-color:var(--accent-primary);color:#fff;box-shadow:0 4px 12px var(--accent-shadow)}.btn-primary:hover:not(:disabled){background-color:var(--accent-hover)}.btn-secondary{background-color:transparent;border-color:var(--border-active);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-hover)}.btn-soft{background-color:var(--bg-secondary);color:var(--text-primary)}.btn-soft:hover:not(:disabled){background-color:var(--bg-hover)}.btn-danger{background:#fb6f6f;color:#fff}.btn-danger:hover:not(:disabled){background:#e95f5f}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--bg-hover);color:var(--text-primary)}.btn-link{height:auto;min-width:0;padding:0;background:transparent;color:var(--accent-primary);text-decoration:none}.btn-link:hover:not(:disabled){text-decoration:underline}.btn-sm{height:32px;min-width:72px;padding:0 14px;font-size:13px;border-radius:6px;gap:6px}.btn-sm svg{width:14px;height:14px}.btn-lg{height:44px;min-width:128px;padding:0 28px;font-size:16px}.btn-lg svg{width:18px;height:18px}.btn-icon{width:40px;height:40px;min-width:0;padding:0}.btn-icon svg{width:18px;height:18px}.btn-icon.btn-sm{width:32px;height:32px}.btn-icon.btn-sm svg{width:16px;height:16px}.btn-icon.btn-lg{width:44px;height:44px}.btn-icon.btn-lg svg{width:20px;height:20px}.btn-full{width:100%}.btn-expand{background:none;border:none;color:var(--text-tertiary);cursor:pointer;height:auto;min-width:0;padding:4px 8px;font-size:12px;display:flex;align-items:center;justify-content:flex-start;gap:4px;transition:color .2s ease}.btn-expand:hover{color:var(--text-primary)}.card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.card:hover{border-color:var(--border-active)}.card{padding:24px;position:relative;overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.card h3{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.card-link{color:var(--text-secondary);text-decoration:none;font-size:13px;transition:color .2s ease}.card-link:hover{color:var(--accent-primary)}.app-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:10px;font-size:18px;font-weight:700;color:#fff}.metric-row{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-secondary)}.metric-item{display:flex;flex-direction:column;gap:4px}.metric-value{font-weight:600;color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;margin-bottom:24px}.stat-strip__item{display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px 20px;background:var(--bg-card)}.stat-strip__label{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-strip__value{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--text-primary);line-height:1.2;font-variant-numeric:tabular-nums;min-width:0}.stat-strip__value>:not(.stat-strip__dot):not(.stat-strip__suffix){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-strip__suffix{font-size:12px;font-weight:500;color:var(--text-tertiary)}.stat-strip__detail{font-size:10px;color:var(--text-tertiary)}.stat-strip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-tertiary)}.stat-strip__item.is-success .stat-strip__dot{background:#3ddc97}.stat-strip__item.is-success .stat-strip__value{color:#3ddc97}.stat-strip__item.is-warning .stat-strip__dot{background:#f5b945}.stat-strip__item.is-warning .stat-strip__value{color:#f5b945}.stat-strip__item.is-danger .stat-strip__dot{background:#fb6f6f}.stat-strip__item.is-danger .stat-strip__value{color:#fb6f6f}.stat-strip__item.is-info .stat-strip__dot{background:#49c7f0}.stat-strip__item.is-info .stat-strip__value{color:#49c7f0}.stat-strip__item--clickable{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;text-align:left;color:inherit;cursor:pointer;transition:background .2s ease}.stat-strip__item--clickable:hover{background:var(--bg-hover)}.stat-strip__item--clickable.is-active{background:var(--bg-hover);box-shadow:inset 3px 0 0 var(--accent-primary)}.stat-strip__item--clickable:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}@media (max-width: 640px){.stat-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.stat-strip__value{font-size:16px}}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}@media (max-width: 1280px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--bg-card);padding:20px;border-radius:12px;border:1px solid var(--border-subtle);display:flex;align-items:center;gap:16px}.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.stat-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none}.stat-icon,.stat-icon.backups{background:#6d7cff1a;color:var(--accent-primary)}.stat-icon.apps{background:#3ddc971a;color:#3ddc97}.stat-icon.databases{background:#3367911a;color:#336791}.stat-icon.size{background:#f5b9451a;color:#f5b945}.stat-icon.alerts{background:#fb6f6f1a;color:#fb6f6f}.stat-icon.schedules{background:#2496ed1a;color:#2496ed}.stat-content{display:flex;flex-direction:column;gap:4px;min-width:0}.stat-label{font-size:12px;color:var(--text-tertiary);font-weight:500}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.stat-suffix{font-size:14px;color:var(--text-tertiary);font-weight:400}.stat-detail{font-size:10px;color:var(--text-tertiary);margin-top:2px}.stat-card--clickable{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;cursor:pointer;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.stat-card--clickable:hover,.stat-card--clickable.active{transform:translateY(-1px);border-color:var(--border-active)}.stat-card--clickable.active{border-color:var(--accent-primary)}.progress-bar{height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden;margin-top:4px}.progress-fill{height:100%;border-radius:2px;transition:width .2s ease}.empty-state{text-align:center;padding:64px 20px;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-subtle)}.empty-state h3{font-size:16px;font-weight:600;margin-bottom:8px}.card .empty-state,.card-body .empty-state{background:transparent;border:none;border-radius:0;padding:40px 20px}.card-body{padding:0}.card-actions{display:flex;gap:8px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-header h3{font-size:16px;font-weight:600}.danger-zone{display:flex;align-items:center;justify-content:space-between;padding:24px;border:1px solid rgba(251,111,111,.3);background:#fb6f6f0d;border-radius:12px}.danger-zone h3,.danger-zone h4{color:#fb6f6f;margin-bottom:8px}.danger-zone p{color:var(--text-secondary);margin:0}.table{width:100%;border-collapse:collapse;font-size:12px}.table thead th{padding:12px 16px;text-align:left;font-weight:600;font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-default);white-space:nowrap}.table tbody tr{border-bottom:1px solid var(--border-subtle);transition:background .2s ease}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr:last-child{border-bottom:none}.table tbody td{padding:12px 16px;color:var(--text-primary);vertical-align:middle}.table tbody td code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;background:var(--bg-elevated);padding:4px 8px;border-radius:4px;color:var(--text-secondary)}.alert{display:flex;align-items:flex-start;gap:8px;padding:12px 16px;border-radius:6px;font-size:12px;line-height:1.5;margin-bottom:16px}.alert>svg{flex-shrink:0;margin-top:2px}.alert.alert-success,.alert.alert--success{background:#3ddc971f;border:1px solid rgba(61,220,151,.22);color:#3ddc97}.alert.alert-danger,.alert.alert--danger,.alert.alert--error{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);color:#fb6f6f}.alert.alert-warning,.alert.alert--warning{background:#f5b9451f;border:1px solid rgba(245,185,69,.22);color:#f5b945}.alert.alert-info,.alert.alert--info{background:#49c7f01f;border:1px solid rgba(73,199,240,.22);color:#49c7f0}.alert-close{margin-left:auto;background:none;border:none;font-size:18px;color:inherit;opacity:.6;cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0}.alert-close:hover{opacity:1}.error-message,.error-banner{display:flex;align-items:flex-start;gap:8px;line-height:1.5}.error-message>svg,.error-banner>svg{flex-shrink:0;margin-top:2px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:40;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal::-webkit-scrollbar{width:6px;height:6px}.modal::-webkit-scrollbar-track{background:var(--bg-body)}.modal::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.modal::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.modal-lg{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid var(--border-subtle)}.modal-header h2{font-size:18px;font-weight:600}.modal-close{background:none;border:none;color:var(--text-tertiary);font-size:24px;cursor:pointer;line-height:1;padding:4px;transition:color .2s ease}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:24px;max-height:60vh;overflow-y:auto}.modal-body::-webkit-scrollbar{width:6px;height:6px}.modal-body::-webkit-scrollbar-track{background:var(--bg-body)}.modal-body::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.modal form{padding:24px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-subtle)}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--border-subtle)}.app-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;padding:24px}.app-type-card{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:12px;padding:24px;text-align:center;cursor:pointer;transition:all .2s ease}.app-type-card:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.app-type-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:12px;font-size:20px;font-weight:700;color:#fff;margin:0 auto 16px}.app-type-card h3{font-size:14px;font-weight:600;margin-bottom:4px;color:var(--text-primary)}.app-type-card p{font-size:12px;color:var(--text-tertiary);line-height:1.5}.confirm-dialog{max-width:400px;text-align:center}.confirm-dialog-content{padding:32px 24px 24px}.confirm-dialog-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;margin:0 auto 16px}.confirm-dialog-icon svg{width:32px;height:32px}.confirm-dialog-icon-danger{background:#fb6f6f26;color:#fb6f6f}.confirm-dialog-icon-warning{background:#f5b94526;color:#f5b945}.confirm-dialog-icon-info{background:#6d7cff26;color:var(--accent-primary)}.confirm-dialog-title{font-size:18px;font-weight:600;margin-bottom:8px}.confirm-dialog-message{font-size:12px;color:var(--text-secondary);line-height:1.6}.confirm-dialog-actions{display:flex;gap:12px;justify-content:center;padding:16px 24px 24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-primary);outline:none}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2371717a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.form-group textarea{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;resize:vertical;min-height:120px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.form-field{margin-bottom:16px}.form-field__label{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.form-field__required{color:#fb6f6f}.form-field__control>*{width:100%}.form-field__hint{font-size:11px;color:var(--text-tertiary);margin-top:4px;margin-bottom:0}.form-field__error{font-size:11px;color:#fb6f6f;margin-top:4px;margin-bottom:0}.install-form,.env-form,.command-input{display:flex;gap:12px;margin-bottom:24px}.install-form input,.env-form input,.command-input input{flex:1;width:100%;padding:12px 16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.install-form input:focus,.env-form input:focus,.command-input input:focus{border-color:var(--accent-primary);outline:none}.install-form input::placeholder,.env-form input::placeholder,.command-input input::placeholder{color:var(--text-tertiary)}.hint{color:var(--text-tertiary);font-size:13px;margin-bottom:16px}.error-message{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);color:#fb6f6f;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:13px}.error-banner{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);color:#fb6f6f;padding:12px 16px;border-radius:8px;margin-bottom:24px}.error-banner__close{float:right;background:none;border:none;cursor:pointer;color:inherit;font-size:18px;line-height:1}.filter-toggle{display:flex;align-items:center;justify-content:flex-start;gap:8px}.filter-toggle label{display:flex;align-items:center;justify-content:flex-start;gap:8px;color:var(--text-secondary);font-size:13px;cursor:pointer}.filter-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary)}.form-input{width:100%;padding:12px 16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.form-input:focus{border-color:var(--accent-primary);outline:none}.form-input::placeholder{color:var(--text-tertiary)}.form-select{width:100%;padding:12px 16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.form-select:focus{border-color:var(--accent-primary);outline:none}.form-select::placeholder{color:var(--text-tertiary)}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2371717a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.code-editor{width:100%;min-height:400px;padding:16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:13px;line-height:1.6;resize:vertical;transition:border-color .2s ease}.code-editor:focus{border-color:var(--accent-primary)}.status-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:24px;padding:4px 12px;border-radius:9999px;font-size:10px;font-weight:600;line-height:1;border:1px solid transparent;white-space:nowrap}.status-dot{width:6px;height:6px;background:currentColor;border-radius:9999px}.status-active{background:#3ddc971f;color:#3ddc97;border-color:#3ddc9738}.status-warning{background:#f5b9451f;color:#f5b945;border-color:#f5b94538}.status-stopped{background:#646b7a1a;color:var(--text-tertiary);border-color:#646b7a33}.status-error{background:#fb6f6f1f;color:#fb6f6f;border-color:#fb6f6f38}.app-type{background:var(--bg-hover);padding:5px 12px;border-radius:6px;font-weight:600;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.ssl-badge{display:inline-flex;align-items:center;gap:4px;background:#3ddc971f;color:#3ddc97;padding:6px 12px;border-radius:6px;font-size:10px;font-weight:600}.active-badge{background:#3ddc971f;color:#3ddc97;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:600}.db-type-badge{display:inline-flex;align-items:center;gap:4px;background:var(--bg-hover);padding:5px 12px;border-radius:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.db-type-badge.mysql{color:#f29111}.db-type-badge.postgresql{color:#336791}.privilege-tag{background:var(--accent-glow);color:var(--accent-primary);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.table-tag{background:var(--bg-hover);border:1px solid var(--border-subtle);padding:6px 12px;border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-secondary)}.env-badge{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;border:1px solid transparent}.env-badge.env-production{background:#3ddc9726;color:#3ddc97;border-color:#3ddc974d}.env-badge.env-development{background:#6d7cff26;color:var(--accent-primary);border-color:#6d7cff4d}.env-badge.env-staging{background:#f5b94526;color:#f5b945;border-color:#f5b9454d}.env-badge .env-linked-icon{opacity:.7}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.5rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;line-height:1;border-radius:9999px;white-space:nowrap}.badge-info{background-color:#49c7f026;color:#49c7f0}.badge-success{background-color:#3ddc9726;color:#3ddc97}.badge-error{background-color:#fb6f6f26;color:#fb6f6f}.badge-warning{background-color:#f5b94526;color:#f5b945}.badge-default{background-color:#646b7a26;color:var(--text-tertiary)}[data-slot=badge]{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:22px;padding:4px 8px;border:1px solid transparent;border-radius:6px;font-size:10px;font-weight:600;line-height:1;letter-spacing:0;white-space:nowrap;overflow:visible;text-shadow:none;box-shadow:none}[data-slot=badge][data-variant=default]{background:var(--accent-primary);color:#fff;border-color:transparent}[data-slot=badge][data-variant=secondary]{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-active)}[data-slot=badge][data-variant=destructive]{background:#fb6f6f;color:#fff;border-color:transparent}[data-slot=badge][data-variant=outline]{background:transparent;color:var(--text-primary);border-color:var(--border-active)}[data-slot=badge][data-variant=success]{background:#3ddc971f;color:#3ddc97;border-color:#3ddc9738}[data-slot=badge][data-variant=warning]{background:#f5b9451f;color:#f5b945;border-color:#f5b94538}[data-slot=badge][data-variant=info]{background:#49c7f01f;color:#49c7f0;border-color:#49c7f038}[data-slot=badge].status-badge-token{min-height:24px;padding:4px 9px;border-radius:9999px;gap:6px}.tabs-container{overflow:hidden}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-subtle);margin-bottom:24px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{width:6px;height:6px}.tabs::-webkit-scrollbar-track{background:var(--bg-body)}.tabs::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.tabs::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.tabs::-webkit-scrollbar{display:none}@media (max-width: 768px){.tabs{-webkit-overflow-scrolling:touch}}.tab{display:inline-flex;align-items:center;gap:8px;background:none;border:none;padding:12px 20px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease;white-space:nowrap}.tab:hover{color:var(--text-primary)}.tab.active,.tab[data-state=active]{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.tab:disabled{opacity:.5;pointer-events:none}.tab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:4px}.tab-content{min-height:400px}.tabs-overflow-trigger{padding-left:12px;padding-right:12px;flex-shrink:0}.tabs-overflow-trigger[data-state=open]{color:var(--accent-primary)}.tabs-overflow-list{display:flex;flex-direction:column;gap:2px}.tabs-overflow-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:500;text-align:left;cursor:pointer;border-radius:4px;width:100%;transition:all .2s ease}.tabs-overflow-item:hover{background:var(--bg-hover);color:var(--text-primary)}.tabs-overflow-item[data-state=active]{color:var(--accent-primary);background:var(--bg-hover)}.tabs-overflow-item:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.tabs-nav{display:flex;gap:4px;border-bottom:1px solid var(--border-subtle);margin-bottom:24px}.tabs-nav.tabs-nav-scrollable{overflow-x:auto;scrollbar-width:none}.tabs-nav.tabs-nav-scrollable::-webkit-scrollbar{display:none}.tab-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:none;padding:12px 20px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease;white-space:nowrap}.tab-btn.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.tab-embedded>.page-container>.page-header,.tab-embedded>.page-header,.tab-embedded>.top-bar,.tab-embedded>div>.page-header,.tab-embedded>div>.top-bar{display:none}.tab-embedded>[class*=-page]>.page-header,.tab-embedded>[class*=-page]>header.top-bar,.tab-embedded>[class*=-page]>.top-bar{display:none}.list-base{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.info-label{color:var(--text-tertiary);font-size:13px}.info-value{color:var(--text-primary);font-weight:500}.info-value.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.packages-list{display:flex;flex-direction:column;gap:8px}.package-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.package-item:hover{border-color:var(--border-active)}.package-name{font-weight:500}.package-version{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.env-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.env-key{font-weight:600;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--accent-primary);min-width:150px}.env-value{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all}.plugins-list,.themes-list{display:flex;flex-direction:column;gap:8px}.plugin-item,.theme-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.plugin-item:hover,.theme-item:hover{border-color:var(--border-active)}.plugin-item.active,.theme-item.active{border-color:#3ddc97;background:#3ddc970d}.plugin-info,.theme-info{display:flex;align-items:center;justify-content:flex-start;gap:12px}.plugin-name,.theme-name{font-weight:500}.plugin-version,.theme-version{color:var(--text-tertiary);font-size:12px}.plugin-actions,.theme-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px}.wp-update-badge{display:inline-flex;align-items:center;padding:2px 8px;margin-left:8px;border-radius:4px;font-size:12px;font-weight:500;color:#f5b945;background:#f5b9451f;white-space:nowrap}.bulk-update-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:12px;border-radius:6px;background:#f5b94514;font-size:12px}.backups-list{display:flex;flex-direction:column;gap:8px}.backup-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.backup-item:hover{border-color:var(--border-active)}.backup-info{display:flex;align-items:center;justify-content:flex-start;gap:20px}.backup-name{font-weight:500;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.backup-size,.backup-date{color:var(--text-tertiary);font-size:13px}.domains-list{display:flex;flex-direction:column;gap:8px}.domain-item{display:flex;align-items:center;justify-content:flex-start;gap:8px}.domain-item a{color:var(--accent-primary);transition:color .2s ease}.domain-item a:hover{text-decoration:underline}.tables-list{display:flex;flex-wrap:wrap;gap:8px}.privileges-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-subtle)}.services-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.service-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;font-size:13px}.service-dot{width:8px;height:8px;border-radius:9999px}.service-dot.running{background:#3ddc97;box-shadow:0 0 8px #3ddc97}.service-dot.stopped{background:var(--text-tertiary)}.service-name{font-weight:500;color:var(--text-primary)}.service-status{color:var(--text-tertiary);font-size:12px}.live-indicator{color:#3ddc97;font-size:12px;font-weight:500}.live-indicator:before{content:"";display:inline-block;width:6px;height:6px;background:#3ddc97;border-radius:9999px;margin-right:4px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.log-viewer{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.log-viewer::-webkit-scrollbar{width:6px;height:6px}.log-viewer::-webkit-scrollbar-track{background:var(--bg-body)}.log-viewer::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.log-viewer::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.log-viewer{max-height:500px;overflow-y:auto;line-height:1.5}.log-controls{display:flex;align-items:center;justify-content:flex-start;gap:12px}.log-controls select{padding:8px 12px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:13px}.logs-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);height:100%;min-height:320px;overflow:hidden;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px}.logs-sidebar{min-width:0;border-right:1px solid var(--border-subtle);background:#0a0b0e59;display:flex;flex-direction:column}.logs-sidebar .sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid var(--border-subtle)}.logs-sidebar .sidebar-header h3{margin:0;color:var(--text-primary);font-size:12px;font-weight:600}.log-files-list{flex:1;min-height:0;overflow-y:auto;padding:8px}.log-files-list::-webkit-scrollbar{width:6px;height:6px}.log-files-list::-webkit-scrollbar-track{background:var(--bg-body)}.log-files-list::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.log-files-list::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.log-file-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid transparent;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.log-file-item:hover{background:var(--bg-hover);color:var(--text-primary)}.log-file-item.active{background:var(--accent-glow);border-color:#6d7cff59;color:var(--text-primary)}.log-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--bg-elevated);color:var(--text-tertiary)}.log-icon.error{color:#fb6f6f;background:#fb6f6f1f}.log-icon.access{color:#49c7f0;background:#49c7f01f}.log-file-info{min-width:0;display:flex;flex-direction:column;gap:2px}.log-file-name{color:inherit;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-file-path,.log-file-size{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.logs-viewer{min-width:0;display:flex;flex-direction:column;background:var(--bg-card)}.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.viewer-toolbar .toolbar-left,.viewer-toolbar .toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.viewer-toolbar .search-input{position:relative;min-width:220px}.viewer-toolbar .search-input svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.viewer-toolbar .search-input input{padding-left:32px}.viewer-toolbar .lines-select{height:36px;min-width:120px;padding:0 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-body);color:var(--text-primary);font-size:12px}.auto-refresh-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:10px;white-space:nowrap}.log-content{flex:1;min-height:0;overflow:auto;background:var(--bg-code);padding:16px}.log-content::-webkit-scrollbar{width:6px;height:6px}.log-content::-webkit-scrollbar-track{background:var(--bg-body)}.log-content::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.log-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.log-content pre{margin:0;color:var(--text-code);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.logs-viewer__loading,.logs-viewer__empty,.empty-hint{color:var(--text-tertiary);font-size:12px;padding:16px}@media (max-width: 768px){.logs-layout{grid-template-columns:1fr}.logs-sidebar{max-height:180px;border-right:0;border-bottom:1px solid var(--border-subtle)}}.command-output{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin-top:20px}.command-output pre{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;white-space:pre-wrap;word-break:break-all;color:var(--text-primary)}.command-output.error{border-color:#fb6f6f}.command-output .stderr{color:#fb6f6f}.quick-commands{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.credentials-box{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin:16px 0}.credentials-box h4{font-size:14px;font-weight:600;margin-bottom:12px;color:#3ddc97}.credentials-box .warning{font-size:12px;color:#f5b945;margin-bottom:12px;display:flex;align-items:center;justify-content:flex-start;gap:6px}.credential-row{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.credential-row:last-child{border-bottom:none}.credential-label{font-size:12px;color:var(--text-tertiary);min-width:80px}.credential-value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;font-size:13px;color:var(--text-primary);background:var(--bg-hover);padding:4px 8px;border-radius:4px;flex:1}.credential-copy{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;transition:color .2s ease}.credential-copy:hover{color:var(--accent-primary)}.toast-container{position:fixed;top:16px;right:16px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:6px;background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-slide-in .3s ease-out}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-icon svg{width:18px;height:18px}.toast-message{flex:1;font-size:12px;line-height:1.4;color:var(--text-primary)}.toast-dismiss{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;color:var(--text-tertiary);border-radius:4px;transition:all .2s ease}.toast-dismiss:hover{color:var(--text-primary);background:var(--bg-hover)}.toast-success{border-color:#3ddc974d;background:#3ddc971a}.toast-success .toast-icon{color:#3ddc97}.toast-error{border-color:#fb6f6f4d;background:#fb6f6f1a}.toast-error .toast-icon{color:#fb6f6f}.toast-warning{border-color:#f5b9454d;background:#f5b9451a}.toast-warning .toast-icon{color:#f5b945}.toast-info{border-color:#6d7cff4d;background:#6d7cff1a}.toast-info .toast-icon{color:var(--accent-primary)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner-sm{width:16px;height:16px}.spinner-sm .spinner-ring{width:16px;height:16px;border-width:2px}.spinner-md{width:24px;height:24px}.spinner-md .spinner-ring{width:24px;height:24px;border-width:3px}.spinner-lg{width:40px;height:40px}.spinner-lg .spinner-ring{width:40px;height:40px;border-width:4px}.spinner-ring{border-radius:50%;border-style:solid;border-color:#6d7cff4d;border-top-color:var(--accent-primary);animation:spinner-rotate .8s linear infinite}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;color:var(--text-secondary)}.loading-state span{font-size:12px}.btn-loading{position:relative;pointer-events:none;color:transparent!important}.btn-loading .spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-loading .spinner .spinner-ring{border-color:var(--border-subtle);border-top-color:var(--text-primary)}.btn-loading.btn-primary .spinner .spinner-ring{border-color:#ffffff4d;border-top-color:#fff}.btn-loading.btn-secondary .spinner .spinner-ring{border-color:#e9ebf04d;border-top-color:var(--text-primary)}.btn-loading.btn-danger .spinner .spinner-ring{border-color:#ffffff4d;border-top-color:#fff}.uptime-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:24px}.uptime-card.loading,.uptime-card.error{display:flex;align-items:center;justify-content:center;gap:12px;min-height:200px;color:var(--text-tertiary)}.uptime-card.error{color:#fb6f6f}.uptime-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.uptime-title{display:flex;align-items:center;gap:12px}.uptime-title .uptime-icon{color:#3ddc97}.uptime-title h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.uptime-status{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.uptime-status .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary)}.uptime-status.online{color:#3ddc97}.uptime-status.online .status-dot{background:#3ddc97;box-shadow:0 0 8px #3ddc97;animation:pulse-dot 2s ease-in-out infinite}.uptime-status.degraded{color:#f5b945}.uptime-status.degraded .status-dot{background:#f5b945}.uptime-status.offline{color:#fb6f6f}.uptime-status.offline .status-dot{background:#fb6f6f}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.uptime-percentage{text-align:right}.uptime-percentage .percentage-value{display:block;font-size:24px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.uptime-percentage .percentage-value.excellent,.uptime-percentage .percentage-value.good{color:#3ddc97}.uptime-percentage .percentage-value.fair{color:#f5b945}.uptime-percentage .percentage-value.poor{color:#fb6f6f}.uptime-percentage .percentage-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.uptime-counter{display:flex;align-items:center;justify-content:center;gap:8px;padding:20px;background:linear-gradient(135deg,#6d7cff0d,#3ddc970d);border:1px solid var(--border-subtle);border-radius:8px;margin-bottom:24px}.uptime-counter-item{display:flex;flex-direction:column;align-items:center;min-width:60px}.uptime-counter-item .counter-value{font-size:32px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary);line-height:1}.uptime-counter-item .counter-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.counter-separator{font-size:32px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-tertiary);margin:0 4px 16px}.uptime-graph-section{margin-bottom:20px}.uptime-graph-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.uptime-graph-header .graph-title{font-size:12px;font-weight:500;color:var(--text-secondary)}.period-selector{display:flex;gap:4px;background:var(--bg-hover);padding:4px;border-radius:6px}.period-btn{padding:4px 12px;font-size:10px;font-weight:500;color:var(--text-tertiary);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.period-btn:hover{color:var(--text-primary)}.period-btn.active{background:var(--accent-primary);color:#fff}.uptime-graph{display:flex;gap:2px;height:32px;background:var(--bg-hover);border-radius:6px;overflow:hidden;padding:4px}.graph-bar{flex:1;border-radius:2px;transition:transform .15s ease,opacity .15s ease;cursor:pointer;min-width:4px}.graph-bar:hover{transform:scaleY(1.1);opacity:.8}.graph-bar.up{background:#3ddc97}.graph-bar.degraded{background:#f5b945}.graph-bar.down{background:#fb6f6f}.graph-bar.no_data,.graph-bar.no-data{background:var(--border-subtle)}.uptime-graph-labels{display:flex;justify-content:space-between;margin-top:8px;font-size:10px;color:var(--text-tertiary)}.uptime-legend{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:20px}.legend-item{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:2px}.legend-dot.up{background:#3ddc97}.legend-dot.degraded{background:#f5b945}.legend-dot.down{background:#fb6f6f}.legend-dot.no-data{background:var(--border-subtle)}.uptime-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.uptime-stat{display:flex;flex-direction:column;align-items:center;padding:12px;background:var(--bg-hover);border-radius:6px}.uptime-stat .stat-period{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;margin-bottom:4px}.uptime-stat .stat-value{font-size:16px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.uptime-stat .stat-value.excellent,.uptime-stat .stat-value.good{color:#3ddc97}.uptime-stat .stat-value.fair{color:#f5b945}.uptime-stat .stat-value.poor{color:#fb6f6f}.uptime-compact{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.uptime-compact-status{display:flex;align-items:center;gap:12px}.uptime-compact-status .uptime-compact-label{font-size:12px;color:var(--text-secondary)}.uptime-compact-status .uptime-compact-percent{font-size:14px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;padding:4px 8px;border-radius:4px;background:#3ddc971f;color:#3ddc97}.uptime-compact-status .uptime-compact-percent.fair{background:#f5b9451f;color:#f5b945}.uptime-compact-status .uptime-compact-percent.poor{background:#fb6f6f1f;color:#fb6f6f}.uptime-compact-time{display:flex;align-items:baseline;gap:2px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.uptime-compact-time .value{font-size:18px;font-weight:700;color:var(--text-primary)}.uptime-compact-time .unit{font-size:12px;color:var(--text-tertiary);margin-right:4px}@media (max-width: 768px){.uptime-counter-item{min-width:50px}.uptime-counter-item .counter-value,.counter-separator{font-size:24px}.uptime-stats-grid{grid-template-columns:repeat(2,1fr)}.uptime-legend{flex-wrap:wrap;gap:12px}}.metrics-graph-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:24px;margin-bottom:24px}.metrics-graph-card.loading,.metrics-graph-card.error,.metrics-graph-card.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;color:var(--text-tertiary)}.metrics-graph-card.loading .muted,.metrics-graph-card.error .muted,.metrics-graph-card.empty .muted{font-size:12px}.metrics-graph-card.error{color:#fb6f6f}.metrics-graph-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.graph-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.metrics-summary-row{display:flex;gap:24px;padding:16px;background:var(--bg-hover);border-radius:8px;margin-bottom:20px}.summary-stat{display:flex;align-items:center;gap:12px}.summary-stat svg{color:var(--text-tertiary)}.summary-stat .stat-label{display:block;font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.summary-stat .stat-value{display:block;font-size:18px;font-weight:700;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.metrics-chart-container{margin-bottom:16px;background:linear-gradient(180deg,var(--bg-hover) 0%,transparent 100%);border-radius:8px;padding:8px 0}.metrics-chart-container.compact{margin-bottom:12px;background:transparent;padding:0}.metrics-chart-container .recharts-area-area{animation:fadeIn .6s ease-out}.metrics-chart-container .recharts-area-curve{animation:drawLine 1s ease-out}@keyframes drawLine{0%{stroke-dasharray:1000;stroke-dashoffset:1000}to{stroke-dasharray:1000;stroke-dashoffset:0}}.metrics-tooltip{background:var(--surface-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:8px;padding:12px 16px;box-shadow:var(--shadow-lg);min-width:140px}.metrics-tooltip .tooltip-time{font-size:10px;color:var(--text-tertiary);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);text-align:center}.metrics-tooltip .tooltip-row{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px 0}.metrics-tooltip .tooltip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.metrics-tooltip .tooltip-label{color:var(--text-secondary);flex:1}.metrics-tooltip .tooltip-value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:700;min-width:48px;text-align:right}.metrics-filter-legend{display:flex;align-items:center;gap:8px;background:var(--bg-hover);padding:4px;border-radius:6px;border:1px solid var(--border-subtle)}.filter-btn{background:transparent;border:1px solid transparent;color:var(--text-tertiary);padding:6px 12px;font-size:10px;font-weight:600;border-radius:4px;cursor:pointer;transition:all .15s ease;text-transform:uppercase}.filter-btn:hover{color:var(--text-primary)}.filter-btn.active{opacity:1}.filter-btn.cpu.active{background:var(--accent-bg);color:var(--accent-bright);border-color:var(--accent-dim)}.filter-btn.memory.active{background:var(--green-bg);color:var(--green);border-color:#3ddc974d}.filter-btn.disk.active{background:var(--amber-bg);color:var(--amber);border-color:#f5b9454d}.metrics-legend{display:flex;align-items:center;justify-content:center;gap:32px;padding-top:16px;margin-top:8px;border-top:1px solid var(--border-subtle)}.legend-item{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-secondary);padding:4px 12px;border-radius:9999px;transition:.15s ease}.legend-item:hover{background:var(--bg-hover);color:var(--text-primary)}.legend-line{width:24px;height:3px;border-radius:2px;position:relative}.legend-line:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:inherit}.legend-line.cpu{background:var(--accent-bright);box-shadow:0 0 8px var(--accent-glow)}.legend-line.memory{background:var(--green);box-shadow:0 0 8px #3ddc9780}.legend-line.disk{background:var(--amber);box-shadow:0 0 8px #f5b94580}.metrics-graph-compact{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:16px;margin-bottom:24px}.metrics-graph-compact .metrics-graph-header{margin-bottom:12px}.metrics-graph-compact .metrics-graph-header .graph-title{font-size:12px}.metrics-summary-compact{display:flex;align-items:center;justify-content:center;gap:20px;padding-top:12px;border-top:1px solid var(--border-subtle)}.metrics-summary-compact .summary-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.metrics-summary-compact .summary-item svg{color:var(--text-tertiary)}.metrics-summary-compact .summary-item span{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:500}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--border-subtle);opacity:.5}.recharts-text{fill:var(--text-secondary)}.recharts-tooltip-cursor{stroke:var(--text-tertiary);stroke-dasharray:4 4}@media (max-width: 768px){.metrics-summary-row{flex-wrap:wrap;gap:16px}.summary-stat{flex:1 1 calc(50% - 8px);min-width:140px}.metrics-legend{flex-wrap:wrap;gap:12px}}@media (max-width: 640px){.metrics-graph-header{flex-direction:column;gap:12px;align-items:flex-start}.summary-stat{flex:1 1 100%}}.env-vars-container .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.env-vars-container .section-header h3{margin:0}.env-vars-container .section-header .header-actions{display:flex;gap:8px}.env-vars-container .hint{color:var(--text-tertiary);font-size:12px;margin-bottom:24px}.env-add-form{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:16px;margin-bottom:24px}.env-add-form .env-form-row{display:flex;gap:8px;margin-bottom:8px}.env-add-form .env-key-input{width:200px;flex-shrink:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;text-transform:uppercase}.env-add-form .env-value-input{flex:1}.env-add-form .env-secret-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:4px;cursor:pointer;color:var(--text-tertiary);transition:all .2s}.env-add-form .env-secret-toggle input{display:none}.env-add-form .env-secret-toggle:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.env-add-form .env-secret-toggle:has(input:checked){background:#6d7cff33;border-color:var(--accent-primary);color:var(--accent-primary)}.env-add-form .env-description-input{width:100%;font-size:12px;color:var(--text-secondary)}.env-filter{position:relative;margin-bottom:16px}.env-filter input{width:100%;padding-right:36px}.env-filter .filter-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:4px 8px}.env-filter .filter-clear:hover{color:var(--text-primary)}.env-list{display:flex;flex-direction:column;gap:8px}.env-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:16px;transition:border-color .2s}.env-item:hover{border-color:var(--border-active)}.env-item.is-secret{border-left:3px solid #f5b945}.env-item .env-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.env-item .env-key{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:4px}.env-item .env-key .secret-badge{color:#f5b945}.env-item .env-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.env-item:hover .env-item-actions{opacity:1}.env-item .env-value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all;padding:4px 0}.env-item .env-description{font-size:10px;color:var(--text-tertiary);margin-top:4px;font-style:italic}.env-item .env-edit-row{display:flex;gap:8px;margin-top:8px}.env-item .env-edit-row input{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.btn-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;transition:all .2s}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-icon.btn-danger:hover{background:#fb6f6f33;color:#fb6f6f}.env-empty{text-align:center;padding:32px;color:var(--text-tertiary);background:var(--bg-card);border:1px dashed var(--border-subtle);border-radius:6px}.env-footer{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-subtle)}.env-footer .env-count{color:var(--text-tertiary);font-size:12px}.import-file-upload{margin-bottom:16px}.import-textarea{width:100%;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:4px;padding:16px;resize:vertical;min-height:200px}.import-textarea::placeholder{color:var(--text-tertiary)}.modal-lg{max-width:700px}.private-url-section{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:20px;margin-bottom:20px}.private-url-section .section-header{margin-bottom:16px}.private-url-section .section-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:500;color:var(--text-primary)}.private-url-section .section-header h3 svg{color:var(--accent-primary)}.private-url-disabled .hint{color:var(--text-secondary);font-size:12px;margin-bottom:16px;line-height:1.5}.private-url-disabled .slug-hint{color:var(--text-tertiary);font-size:10px;margin-top:8px}.private-url-form,.slug-edit-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.private-url-form .input-group,.slug-edit-form .input-group{display:flex;align-items:center;flex:1;min-width:200px}.private-url-form .input-prefix,.slug-edit-form .input-prefix{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-right:none;border-radius:4px 0 0 4px;padding:8px 12px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;height:40px;display:flex;align-items:center}.private-url-form .slug-input,.slug-edit-form .slug-input{flex:1;border-radius:0 4px 4px 0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;min-width:150px}.private-url-enabled .private-url-display{background:#3ddc971a;border:1px solid rgba(61,220,151,.3);border-radius:6px;padding:16px;margin-bottom:16px}.private-url-enabled .url-box{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.private-url-enabled .url-label{color:var(--text-secondary);font-size:12px}.private-url-enabled .url-value{background:var(--bg-secondary);padding:8px 12px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);word-break:break-all;-webkit-user-select:all;user-select:all}.private-url-enabled .url-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;padding:0;font-size:12px}.btn-link:hover{text-decoration:underline}.slug-edit-form,.private-url-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.private-url-indicator{display:inline-flex;align-items:center;gap:4px;color:#3ddc97;font-size:12px}.private-url-indicator svg{width:14px;height:14px}.totp-inputs{display:flex;justify-content:center;gap:8px;margin:24px 0}.totp-input{width:48px;height:56px;font-size:24px;font-weight:600;text-align:center;border:2px solid var(--border-subtle);border-radius:6px;background:var(--bg-card);color:var(--text-primary);transition:all .2s}.totp-input:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #6d7cff33}.totp-input::placeholder{color:var(--text-tertiary)}.auth-footer-links{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:24px}.link-button{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:12px;padding:0}.link-button:hover{text-decoration:underline}.two-fa-card{border:1px solid var(--border-subtle);border-radius:8px;padding:24px;margin-bottom:24px}.two-fa-header{display:flex;gap:16px;margin-bottom:24px}.two-fa-header .two-fa-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#6d7cff26;border-radius:6px;color:var(--accent-primary);flex-shrink:0}.two-fa-header h3{margin:0 0 4px}.two-fa-header p{margin:0;color:var(--text-secondary);font-size:12px}.two-fa-disabled .two-fa-description{color:var(--text-secondary);margin-bottom:16px}.two-fa-enabled .two-fa-status{display:flex;align-items:center;gap:8px;margin-bottom:16px}.two-fa-enabled .two-fa-info{color:var(--text-secondary);font-size:12px}.two-fa-enabled .two-fa-backup-info{background:var(--bg-hover);padding:8px 16px;border-radius:4px;margin-bottom:16px;display:flex;flex-direction:column;gap:4px}.two-fa-enabled .two-fa-backup-info .warning-text{color:#f5b945;font-size:12px}.two-fa-enabled .two-fa-actions{display:flex;gap:8px}.setup-steps{display:flex;flex-direction:column;gap:24px}.setup-step{display:flex;gap:16px}.setup-step .step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:#fff;border-radius:50%;font-weight:600;font-size:12px;flex-shrink:0}.setup-step .step-content{flex:1}.setup-step .step-content h4{margin:0 0 4px}.setup-step .step-content p{color:var(--text-secondary);margin:0 0 16px;font-size:12px}.qr-code-container{display:flex;justify-content:center;padding:16px;background:#fff;border-radius:6px;margin-bottom:16px}.qr-code{width:200px;height:200px}.qr-fallback{background:var(--bg-hover);padding:16px;border-radius:6px;text-align:center}.qr-fallback .secret-key{display:block;font-size:18px;padding:8px;margin-top:8px;background:var(--bg-body);border-radius:4px;word-break:break-all}.manual-entry{margin-top:16px;font-size:12px;color:var(--text-secondary)}.manual-entry summary{cursor:pointer;color:var(--accent-primary)}.manual-entry summary:hover{text-decoration:underline}.manual-entry p{margin:4px 0}.manual-entry code{background:var(--bg-hover);padding:2px 6px;border-radius:4px}.verification-input{font-size:24px;font-weight:600;text-align:center;letter-spacing:.5em;padding:16px;width:100%;max-width:200px}.warning-box{display:flex;gap:16px;padding:16px;background:#f5b9451a;border:1px solid rgba(245,185,69,.3);border-radius:6px;margin-bottom:24px}.warning-box svg{flex-shrink:0;color:#f5b945}.warning-box p{margin:0;color:var(--text-primary);font-size:12px}.error-text{color:#fb6f6f;font-size:12px;margin-top:4px}.backup-codes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px}.backup-code{display:block;padding:8px 16px;background:var(--bg-hover);border-radius:4px;text-align:center;font-size:16px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.backup-codes-actions{display:flex;justify-content:center;gap:8px}.backup-codes-actions .btn svg{margin-right:4px}.modal-md{max-width:500px}.loading-sm{color:var(--text-tertiary);font-size:12px}.notification-tabs{display:flex;gap:8px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.notification-tab{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.notification-tab svg{stroke-width:2}.notification-tab:hover{background:var(--bg-hover);border-color:var(--border-default);color:var(--text-primary)}.notification-tab.active{background:var(--accent-glow);border-color:var(--accent-primary);color:var(--accent-primary)}.notification-tab.active svg{stroke:var(--accent-primary)}.user-notification-prefs{display:flex;flex-direction:column;gap:16px}.channel-toggles,.category-toggles{display:flex;flex-wrap:wrap;gap:12px}.channel-toggle,.category-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer;transition:all .15s ease}.channel-toggle input[type=checkbox],.category-toggle input[type=checkbox]{accent-color:var(--accent-primary)}.channel-toggle span,.category-toggle span{font-size:12px;color:var(--text-secondary)}.channel-toggle:hover,.category-toggle:hover{background:var(--bg-hover);border-color:var(--border-default)}.channel-toggle:has(input:checked),.category-toggle:has(input:checked){background:var(--accent-glow);border-color:#6d7cff66}.channel-toggle:has(input:checked) span,.category-toggle:has(input:checked) span{color:var(--text-primary)}.notification-channels{display:flex;flex-direction:column;gap:16px}.notification-channel-card{border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);overflow:hidden;transition:border-color .2s}.notification-channel-card.enabled{border-color:#3ddc9766}.channel-header{display:flex;align-items:center;gap:16px;padding:16px 24px;cursor:pointer;transition:background .2s}.channel-header:hover{background:var(--bg-hover)}.channel-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-hover);border-radius:6px;flex-shrink:0}.channel-icon svg{color:var(--text-secondary)}.notification-channel-card.enabled .channel-icon svg{color:var(--accent-primary)}.channel-info{flex:1;min-width:0}.channel-info h3{margin:0 0 4px;font-size:16px}.channel-info p{margin:0;color:var(--text-secondary);font-size:12px}.channel-status{display:flex;align-items:center;gap:16px}.expand-icon{color:var(--text-tertiary);transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.channel-config{padding:24px;border-top:1px solid var(--border-subtle);background:var(--bg-body)}.toggle-switch-label{display:flex;justify-content:space-between;align-items:center}.toggle-switch-label span{font-weight:500}.severity-toggles{display:flex;flex-wrap:wrap;gap:8px}.severity-toggle{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;background:var(--bg-hover);cursor:pointer;transition:all .2s;font-size:12px}.severity-toggle input{display:none}.severity-toggle span{padding:2px 4px;border-radius:4px}.severity-toggle.critical span{background:#fb6f6f33;color:#fb6f6f}.severity-toggle.warning span{background:#f5b94533;color:#f5b945}.severity-toggle.info span{background:#6d7cff33;color:var(--accent-primary)}.severity-toggle.success span{background:#3ddc9733;color:#3ddc97}.severity-toggle input:checked+span{font-weight:600}.severity-toggle:has(input:not(:checked)){opacity:.5}.severity-toggle:hover{opacity:1}.channel-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-subtle)}.sk-notif{position:relative;display:flex}.sk-notif__bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-subtle);border-radius:9px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.sk-notif__bell:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.sk-notif__badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#fb6f6f;color:#fff;font-size:10px;font-weight:700;line-height:17px;text-align:center;box-shadow:0 0 0 2px var(--bg-card)}.sk-notif__panel{position:absolute;bottom:calc(100% + 10px);left:0;right:auto;width:340px;max-width:calc(100vw - 32px);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:12px;box-shadow:0 18px 48px #00000047;z-index:1000;overflow:hidden;display:flex;flex-direction:column;animation:skNotifPanelIn .18s ease-out;transform-origin:bottom left}.sk-notif__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border-subtle)}.sk-notif__heading{font-weight:600;font-size:14px;color:var(--text-primary)}.sk-notif__markall{display:inline-flex;align-items:center;gap:4px;border:none;background:none;cursor:pointer;color:var(--accent-primary);font-size:12px;font-weight:500}.sk-notif__markall:hover{text-decoration:underline}.sk-notif__list{max-height:380px;overflow-y:auto}.sk-notif__empty{padding:28px 14px;text-align:center;color:var(--text-secondary);font-size:13px}.sk-notif__item{display:flex;gap:10px;width:100%;padding:11px 14px;border:none;background:none;cursor:pointer;text-align:left;border-bottom:1px solid var(--border-subtle)}.sk-notif__item:hover{background:var(--bg-hover)}.sk-notif__item.is-unread{background:var(--accent-bg)}.sk-notif__item:last-child{border-bottom:none}.sk-notif__dot{flex:0 0 auto;width:8px;height:8px;margin-top:6px;border-radius:50%}.sk-notif__content{display:flex;flex-direction:column;gap:2px;min-width:0}.sk-notif__title{font-size:13px;font-weight:600;color:var(--text-primary)}.sk-notif__text{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sk-notif__time{font-size:11px;color:var(--text-secondary);opacity:.8}.sk-notif__item.is-notice{cursor:default}.sk-notif__hit{display:flex;gap:10px;flex:1;min-width:0;padding:0;border:none;background:none;cursor:pointer;text-align:left;color:inherit}.sk-notif__dismiss{flex:0 0 auto;align-self:flex-start;margin-top:2px;padding:2px;border:none;background:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);line-height:0}.sk-notif__dismiss:hover{background:var(--bg-hover);color:var(--text-primary)}.sk-notif__seeall{padding:11px 14px;border:none;background:none;cursor:pointer;color:var(--accent-primary);font-size:13px;font-weight:500;border-top:1px solid var(--border-subtle)}.sk-notif__seeall:hover{background:var(--bg-hover)}.sidebar-footer__row{display:flex;align-items:stretch;gap:8px}.sidebar-footer__row .user-mini{flex:1;min-width:0}.sidebar-footer__row .sk-notif{display:flex;align-items:stretch}.sidebar-footer__row .sk-notif__bell{width:38px;height:auto;min-height:34px;align-self:stretch}.mobile-topbar__actions{margin-left:auto;display:flex;align-items:center}.mobile-topbar .sk-notif__panel{top:calc(100% + 10px);bottom:auto;left:auto;right:8px;transform-origin:top right}@keyframes skNotifPanelIn{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (min-width: 769px){[data-layout=topbar] .sk-notif__panel{top:calc(100% + 10px);bottom:auto;left:auto;right:0;transform-origin:top right}}@media (min-width: 769px){[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .sidebar-footer__row{flex-direction:column;align-items:center;gap:6px}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .sidebar-footer__row .user-mini{flex:0 0 auto;width:auto}[data-layout=rail] .sidebar:not(:hover):not(:focus-within) .sidebar-footer__row .sk-notif__bell{width:34px;min-height:34px;align-self:center}}.query-runner-overlay.modal-overlay{padding:0;background:#000c}.query-runner-modal{width:100%;height:100%;max-width:100%;max-height:100%;display:flex;flex-direction:column;background:var(--bg-body);border-radius:0;overflow:hidden}.query-runner-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.query-runner-title{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:var(--text-primary)}.query-runner-title svg{color:var(--accent-primary)}.query-runner-title .db-type-badge{font-size:10px;padding:4px 8px;border-radius:4px;font-weight:500}.query-runner-title .db-type-badge.mysql{background:#f2911126;color:#f29111}.query-runner-title .db-type-badge.postgresql{background:#33679126;color:#5f9ab8}.query-runner-title .db-type-badge.sqlite{background:#6d7cff26;color:var(--accent-primary)}.query-runner-actions{display:flex;align-items:center;gap:12px}.query-runner-actions .readonly-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer}.query-runner-actions .readonly-toggle input[type=checkbox]{accent-color:#f5b945}.query-runner-actions .modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;border-radius:6px;transition:all .15s ease}.query-runner-actions .modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.query-runner-body{flex:1;display:flex;overflow:hidden}.query-runner-sidebar{width:260px;flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden}.sidebar-section{display:flex;flex-direction:column;overflow:hidden}.sidebar-section:first-child{flex:1;min-height:150px}.sidebar-section:last-child{border-top:1px solid var(--border-subtle);max-height:40%}.sidebar-section h4{padding:12px 16px;margin:0;font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--bg-card);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.sidebar-section h4 .btn-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:4px;transition:all .15s ease}.sidebar-section h4 .btn-icon:hover{background:var(--bg-hover);color:var(--accent-primary)}.tables-list,.columns-list{flex:1;overflow-y:auto;padding:8px}.table-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .15s ease}.table-item:hover{background:var(--bg-hover)}.table-item.selected{background:var(--accent-glow);border:1px solid rgba(109,124,255,.3)}.table-item .table-name{font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-item .table-rows{font-size:10px;color:var(--text-tertiary);flex-shrink:0;margin-left:8px}.column-item{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;border-radius:4px;cursor:pointer;transition:all .15s ease}.column-item:hover{background:var(--bg-hover)}.column-item .column-name{font-size:12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.column-item .column-type{font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-tertiary)}.query-runner-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-body)}.query-editor{flex-shrink:0;padding:16px;border-bottom:1px solid var(--border-subtle)}.query-editor textarea{width:100%;height:150px;padding:12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);resize:vertical;transition:border-color .15s ease}.query-editor textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.query-editor textarea::placeholder{color:var(--text-tertiary)}.query-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.query-hints{display:flex;align-items:center;gap:8px}.query-hints .hint{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-tertiary)}.query-hints .hint svg{color:#f5b945}.query-error{display:flex;align-items:flex-start;gap:8px;padding:12px 16px;background:#fb6f6f1f;border-bottom:1px solid rgba(251,111,111,.22);color:#fb6f6f;font-size:12px}.query-error svg{flex-shrink:0;margin-top:2px}.query-results{flex:1;display:flex;flex-direction:column;overflow:hidden}.results-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--bg-card);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.results-header .results-info{font-size:12px;color:var(--text-secondary)}.results-table-container{flex:1;overflow:auto}.results-table{width:100%;border-collapse:collapse;font-size:12px}.results-table th,.results-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-subtle);white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}.results-table th{position:sticky;top:0;background:var(--bg-card);font-weight:500;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.results-table th:hover{background:var(--bg-hover)}.results-table th.sorted-asc,.results-table th.sorted-desc{color:var(--accent-primary)}.results-table th .sort-indicator{font-size:10px;margin-left:4px}.results-table td{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.results-table td.null-value{color:var(--text-tertiary);font-style:italic}.results-table tbody tr:hover{background:#1a1e2780}.query-history-panel{position:absolute;top:60px;right:0;width:400px;max-height:calc(100% - 80px);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:50;margin:16px;overflow:hidden}.history-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.history-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.history-list{flex:1;overflow-y:auto;padding:8px}.history-item{padding:12px;border-radius:6px;cursor:pointer;transition:all .15s ease}.history-item:hover{background:var(--bg-hover)}.history-item code{display:block;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.history-item .history-time{font-size:10px;color:var(--text-tertiary)}.db-item-icon.sqlite{color:var(--accent-primary)}.deploy-tab{display:flex;flex-direction:column;gap:24px}.deploy-setup .empty-state{text-align:center;padding:48px 32px;background:var(--bg-card);border:1px dashed var(--border-subtle);border-radius:8px}.deploy-setup .empty-state svg{color:var(--text-tertiary);margin-bottom:16px}.deploy-setup .empty-state h3{margin-bottom:8px}.deploy-setup .empty-state p{color:var(--text-secondary);margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto}.deploy-header{margin-bottom:16px}.deploy-status-card{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.deploy-repo-info{display:flex;align-items:center;gap:12px}.deploy-repo-info svg{color:var(--text-secondary)}.deploy-repo-info .repo-url{display:block;font-weight:500;color:var(--text-primary)}.deploy-repo-info .repo-branch{display:block;font-size:12px;color:var(--text-secondary)}.deploy-actions{display:flex;gap:12px}.deploy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.webhook-url{display:flex;gap:8px;align-items:center;margin-top:12px;padding:12px;background:var(--bg-hover);border-radius:6px;overflow:hidden}.webhook-url code{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.webhook-logs-toggle{margin-top:16px}.webhook-logs{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.webhook-logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.webhook-logs-header h4{margin:0;font-size:12px;font-weight:600;color:var(--text-secondary)}.webhook-logs-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.webhook-log-item{padding:12px;background:var(--bg-hover);border-radius:6px;border:1px solid var(--border-subtle)}.webhook-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.provider-badge{display:inline-block;padding:4px 8px;font-size:10px;font-weight:500;border-radius:4px;text-transform:capitalize}.provider-badge.github{background:#33333326;color:#333}.provider-badge.gitlab{background:#fc6d2626;color:#fc6d26}.provider-badge.bitbucket{background:#0052cc26;color:#0052cc}.webhook-log-time{font-size:10px;color:var(--text-tertiary)}.webhook-log-details{margin-bottom:8px}.webhook-log-size{font-size:12px;color:var(--text-secondary)}.webhook-log-preview{margin:0;padding:8px;background:var(--bg-body);border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all;max-height:100px;overflow-y:auto}.input-with-action .btn{flex-shrink:0}.scripts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.scripts-grid{grid-template-columns:1fr}}.script-section h4{margin:0 0 8px;font-size:12px;color:var(--text-secondary)}.script-code{margin:0;padding:12px;background:var(--bg-hover);border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);white-space:pre-wrap;word-break:break-all}.deploy-setup .card-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.git-connect{display:grid;gap:16px}.git-connect--card{max-width:640px;padding:20px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.git-connect__intro{display:flex;align-items:flex-start;gap:12px}.git-connect__intro-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:8px;background:var(--accent-bg);color:var(--accent-bright)}.git-connect__intro-text strong{display:block;color:var(--text-primary);font-size:14px;font-weight:600}.git-connect__intro-text span{display:block;margin-top:2px;color:var(--text-tertiary);font-size:10px;line-height:1.5}.git-connect__providers{display:grid;grid-template-columns:repeat(auto-fit,minmax(122px,1fr));gap:8px}.git-connect__provider{display:grid;gap:4px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s ease,background .15s ease}.git-connect__provider--active{border-color:var(--accent-dim);background:var(--accent-bg)}.git-connect__provider--btn{font:inherit;text-align:left;cursor:pointer;width:100%}.git-connect__provider--btn:hover{border-color:var(--border-strong)}.git-connect__provider--btn:focus-visible{outline:2px solid var(--accent-bright);outline-offset:1px}.git-connect__provider-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:var(--surface-2);color:var(--text-dim);transition:background .15s ease,color .15s ease}.git-connect__provider--active .git-connect__provider-icon{background:var(--accent-bg);color:var(--accent-bright)}.git-connect__provider-label{color:var(--text-primary);font-size:12px;font-weight:600}.git-connect__provider-hint{color:var(--text-faint);font-size:11.5px;line-height:1.4}.git-connect__detected{display:inline-flex;align-items:center;gap:6px;width:max-content;margin-top:4px;padding:3px 8px;border:1px solid var(--accent-dim);border-radius:9999px;background:var(--accent-bg);color:var(--accent-bright);font-size:10px;font-weight:500;line-height:1}.git-connect__field{display:grid;gap:8px}.git-connect__field label{color:var(--text-secondary);font-size:12px;font-weight:500}.git-connect__field-hint{color:var(--text-tertiary);font-size:10px;line-height:1.45}.git-connect__toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;background:var(--surface);border:1px solid var(--border-soft);border-radius:6px}.git-connect__toggle strong,.git-connect__toggle span{display:block}.git-connect__toggle strong{color:var(--text-primary);font-size:12px;font-weight:500}.git-connect__toggle span{margin-top:2px;color:var(--text-tertiary);font-size:10px;line-height:1.4}.git-connect__advanced-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease}.git-connect__advanced-toggle:hover{background:var(--surface-2);border-color:var(--border-strong)}.git-connect__advanced-toggle>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500}.git-connect__advanced-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.git-connect__advanced-toggle>svg{transition:transform .15s ease}.git-connect__advanced{display:grid;gap:16px}.git-connect__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid var(--border-soft)}.git-connect__actions-spacer{margin-right:auto}.git-connect-status{display:grid;gap:16px;max-width:640px;padding:20px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.git-connect-status__header{display:flex;align-items:flex-start;gap:12px}.git-connect-status__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:8px;background:var(--green-bg);color:var(--green)}.git-connect-status__title{min-width:0}.git-connect-status__title strong{display:block;color:var(--text-primary);font-size:14px;font-weight:600}.git-connect-status__url{font-family:var(--mono);font-size:12.5px;color:var(--accent-bright);text-decoration:none;overflow-wrap:anywhere}.git-connect-status__url:hover{text-decoration:underline}.git-connect-status__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;padding:16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px}.git-connect-status__meta-item span{display:block;margin-bottom:3px;font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.git-connect-status__meta-item strong{color:var(--text-primary);font-size:13px;font-weight:400}.git-connect-status__meta-item strong.mono{font-family:var(--mono);font-size:12px}.git-connect-status__actions{display:flex;justify-content:flex-end}.git-connect__or{display:flex;align-items:center;gap:12px;color:var(--text-faint);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em}.git-connect__or:before,.git-connect__or:after{content:"";flex:1;height:1px;background:var(--border-soft)}.git-connect__gh{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.git-connect__gh--hint{display:flex;align-items:center;gap:9px;padding:11px 13px;font-size:12.5px;color:var(--text-dim)}.git-connect__gh--hint a{color:var(--accent-bright)}.git-connect__gh--hint svg{color:var(--text-faint);flex-shrink:0}.git-connect__gh--connect{display:flex;align-items:center;gap:12px;padding:14px 15px}.git-connect__gh--connect>svg{color:var(--text);flex-shrink:0}.git-connect__gh-text{display:flex;flex-direction:column;flex:1;min-width:0}.git-connect__gh-text strong{font-size:13.5px}.git-connect__gh-text span{font-size:12px;color:var(--text-faint)}.git-connect__gh--picker{padding:12px;display:grid;gap:10px}.git-connect__gh-account{display:flex;align-items:center;gap:9px}.git-connect__gh-account img{width:26px;height:26px;border-radius:50%}.git-connect__gh-account .git-connect__gh-account-name{display:flex;flex-direction:column;line-height:1.25}.git-connect__gh-account .git-connect__gh-account-name strong{font-size:13px}.git-connect__gh-account .git-connect__gh-account-name small{font-size:11px;color:var(--text-faint)}.git-connect__gh-account>.ui-button{margin-left:auto}.git-connect__gh-search{display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--surface);border:1px solid var(--border-soft);border-radius:8px}.git-connect__gh-search svg{color:var(--text-faint);flex-shrink:0}.git-connect__gh-search .ui-input{border:none;background:none;padding-left:0;height:34px}.git-connect__gh-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.git-connect__gh-state{padding:12px;font-size:12.5px;color:var(--text-faint);text-align:center}.git-connect__gh-repo{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface);text-align:left;cursor:pointer;transition:border-color .14s,background .14s}.git-connect__gh-repo:hover{border-color:var(--border-strong)}.git-connect__gh-repo.is-active{border-color:var(--accent-bright);background:var(--accent-bg)}.git-connect__gh-repo.is-active svg{color:var(--accent-bright);margin-left:auto;flex-shrink:0}.git-connect__gh-repo-main{display:flex;flex-direction:column;flex:1;min-width:0}.git-connect__gh-repo-main strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.git-connect__gh-repo-main small{font-size:11.5px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.git-connect__gh-repo-vis{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);flex-shrink:0}.git-connect__gh-branch{display:flex;align-items:center;gap:10px;font-size:12.5px}.git-connect__gh-branch label{color:var(--text-dim)}.git-connect__gh-branch select{flex:1;height:34px;padding:0 10px;background:var(--surface);border:1px solid var(--border-soft);border-radius:8px;color:var(--text)}.git-connect__provider--live{border-color:var(--green-dim, rgba(74, 222, 128, .35));background:var(--green-bg)}.git-connect__provider--live .git-connect__provider-icon{background:var(--green-bg);color:var(--green)}.git-connect__provider--live .git-connect__provider-hint{color:var(--green)}.git-path-selector{display:grid;gap:12px}.git-path-selector__label{color:var(--text-secondary);font-size:12px;font-weight:500}.git-path-selector__quick{display:flex;flex-wrap:wrap;gap:8px}.git-path-selector__chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border);border-radius:9999px;background:var(--surface);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.git-path-selector__chip:hover{border-color:var(--border-strong);background:var(--surface-2)}.git-path-selector__chip--quick.is-active{border-color:var(--accent-dim);background:var(--accent-bg);color:var(--accent-bright)}.git-path-selector__add{display:flex;align-items:center;gap:8px}.git-path-selector__add .ui-input{flex:1;min-width:0}.git-path-selector__add-icon{display:inline-flex;color:var(--text-faint);flex-shrink:0}.git-path-selector__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.git-path-selector__item{display:inline-flex;align-items:center;gap:4px;padding:4px 8px 4px 10px;background:var(--bg-code);border:1px solid var(--border-soft);border-radius:6px;font-size:12.5px}.git-path-selector__item code{font-family:var(--mono);color:var(--text-code)}.git-path-selector__remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--text-faint);cursor:pointer}.git-path-selector__remove:hover{background:var(--red-bg);color:var(--red)}.git-path-selector__empty{margin:0;color:var(--text-faint);font-size:10px}.build-tab{display:flex;flex-direction:column;gap:24px}.detection-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:16px}.detection-item{display:flex;flex-direction:column;gap:4px}.detection-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.detection-value{font-size:16px;font-weight:500;color:var(--text-primary);text-transform:capitalize}.detection-value.text-success{color:#3ddc97}.build-actions{display:flex;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.info-label{font-size:12px;color:var(--text-secondary)}.info-value{font-size:12px;font-weight:500;color:var(--text-primary)}.info-value.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.current-deployment{background:linear-gradient(135deg,#3ddc970d,#6d7cff0d);border-color:#3ddc974d}.current-deployment .deployment-current-info{display:flex;flex-direction:column;gap:12px;margin-top:16px}.current-deployment .deployment-version{display:flex;align-items:center;gap:12px}.current-deployment .version-number{font-size:24px;font-weight:700;color:var(--text-primary)}.current-deployment .deployment-commit{display:flex;align-items:center;gap:8px}.current-deployment .commit-hash{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;padding:4px 8px;background:var(--bg-hover);border-radius:4px}.current-deployment .commit-message{font-size:12px;color:var(--text-secondary);max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-deployment .deployment-meta{display:flex;gap:16px;font-size:12px;color:var(--text-tertiary)}.current-deployment .deployment-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.version-tag{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;font-weight:500}.build-logs-list{display:flex;flex-direction:column;gap:8px}.build-log-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-hover);border-radius:6px;cursor:pointer;transition:all .15s ease}.build-log-item:hover{background:var(--bg-card);box-shadow:var(--shadow-sm)}.build-log-item .build-log-method{font-size:12px;font-weight:500;color:var(--text-primary);text-transform:capitalize}.build-log-item .build-log-time{font-size:12px;color:var(--text-secondary)}.build-log-item .build-log-lines{font-size:10px;color:var(--text-tertiary);margin-left:auto}.build-log-meta{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.build-log-meta span{font-size:12px;color:var(--text-secondary)}.build-log-output{margin:0;padding:16px;background:var(--bg-body);border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6;color:var(--text-primary);max-height:500px;overflow:auto;white-space:pre-wrap;word-break:break-all}.btn-xs{padding:4px 8px;font-size:10px}.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.setup-card{max-width:480px}.setup-info{display:flex;gap:16px;padding:16px;background:#6d7cff1a;border-radius:6px;margin-bottom:24px}.setup-info .setup-info-icon{flex-shrink:0;color:var(--accent-primary)}.setup-info p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.setup-footer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-default);color:var(--text-tertiary);font-size:12px}.setup-footer svg{color:#3ddc97}.users-tab .tab-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.users-tab .tab-header .tab-header-content h3{margin:0 0 4px;font-size:18px;font-weight:600}.users-tab .tab-header .tab-header-content p{margin:0;color:var(--text-secondary);font-size:12px}.users-table-container{overflow-x:auto;border:1px solid var(--border-default);border-radius:6px}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:16px;text-align:left;border-bottom:1px solid var(--border-default)}.users-table th{background:var(--bg-hover);font-weight:500;font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:var(--bg-card)}.users-table tr.inactive{opacity:.6}.users-table tr.inactive td{background:#f5b9450d}.users-table .user-info{display:flex;align-items:center;gap:16px}.users-table .user-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;flex-shrink:0}.users-table .user-details{display:flex;flex-direction:column;gap:2px}.users-table .user-details .username{font-weight:500;display:flex;align-items:center;gap:8px}.users-table .user-details .email{font-size:12px;color:var(--text-secondary)}.users-table .you-badge{font-size:10px;padding:2px 6px;background:var(--accent-primary);color:#fff;border-radius:4px;font-weight:500}.users-table .status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:10px;font-weight:500}.users-table .status-badge.active{background:#3ddc9726;color:#3ddc97}.users-table .status-badge.inactive{background:#f5b94526;color:#f5b945}.users-table .date-cell{font-size:12px;color:var(--text-secondary);white-space:nowrap}.users-table .actions-cell{display:flex;gap:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label .checkbox-text{font-weight:400}.form-help{display:block;margin-top:4px;font-size:10px;color:var(--text-tertiary)}.role-descriptions{margin-top:24px;padding:16px;background:var(--bg-hover);border-radius:6px}.role-descriptions h4{margin:0 0 16px;font-size:12px;font-weight:600;color:var(--text-secondary)}.role-descriptions .role-item{display:flex;gap:8px;padding:8px 0}.role-descriptions .role-item:not(:last-child){border-bottom:1px solid var(--border-default)}.role-descriptions .role-item .role-name{font-weight:500;min-width:80px;font-size:12px}.role-descriptions .role-item .role-desc{font-size:12px;color:var(--text-secondary)}.audit-log-tab .tab-header{margin-bottom:24px}.audit-log-tab .tab-header h3{margin:0 0 4px;font-size:18px;font-weight:600}.audit-log-tab .tab-header p{margin:0;color:var(--text-secondary);font-size:12px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-default)}.pagination .pagination-info{font-size:12px;color:var(--text-secondary)}.settings-nav-divider{padding:12px 12px 4px;margin-top:12px;font-family:var(--mono);font-size:.62rem;font-weight:500;color:var(--text-ghost);text-transform:uppercase;letter-spacing:.12em}.settings-nav-divider:first-child{margin-top:0}.loading-state,.empty-state{padding:40px;text-align:center;color:var(--text-secondary)}.btn.text-warning{color:#f5b945}.btn.text-warning:hover{background:#f5b9451a}.btn.text-success{color:#3ddc97}.btn.text-success:hover{background:#3ddc971a}.btn.text-danger{color:#fb6f6f}.btn.text-danger:hover{background:#fb6f6f1a}.permission-editor{margin-top:16px;border:1px solid var(--border-default);border-radius:6px;max-height:400px;overflow-y:auto}.permission-header-row{display:grid;grid-template-columns:1fr 60px 60px;gap:8px;padding:8px 16px;background:var(--bg-hover);font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-default);position:sticky;top:0;z-index:1}.permission-level-label{text-align:center}.permission-group:not(:last-child){border-bottom:1px solid var(--border-default)}.permission-group-label{padding:8px 16px;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;background:#1a1e2780}.permission-row{display:grid;grid-template-columns:1fr 60px 60px;gap:8px;align-items:center;padding:8px 16px}.permission-row:hover{background:var(--bg-hover)}.permission-feature-name{font-size:12px}.permission-checkbox{display:flex;justify-content:center}.permission-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.customize-permissions-section{margin-top:16px}.customize-permissions-section>.btn{margin-bottom:8px}.invitations-section{margin-top:32px;padding-top:32px;border-top:1px solid var(--border-default)}.invitations-section .tab-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.invitations-section .tab-header .tab-header-content h4{margin:0 0 4px;font-size:16px;font-weight:600}.invitations-section .tab-header .tab-header-content p{margin:0;color:var(--text-secondary);font-size:12px}.invite-link-display{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-hover);border:1px solid var(--border-default);border-radius:6px;margin-top:8px}.invite-link-display code{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;word-break:break-all;color:var(--text-primary)}.invitation-status{display:inline-flex;align-items:center;padding:3px 8px;border-radius:9999px;font-size:10px;font-weight:500;text-transform:capitalize}.invitation-status.pending{background:#6d7cff26;color:var(--accent-primary)}.invitation-status.accepted{background:#3ddc9726;color:#3ddc97}.invitation-status.expired{background:#646b7a26;color:var(--text-tertiary)}.invitation-status.revoked{background:#fb6f6f26;color:#fb6f6f}.activity-tab .tab-header{margin-bottom:24px}.activity-tab .tab-header h3{margin:0 0 4px;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.activity-tab .tab-header p{margin:0;color:var(--text-secondary);font-size:16px}.activity-stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:12px}.activity-stats__item{display:inline-flex;align-items:baseline;gap:8px}.activity-stats__value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:18px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.most-active-users{margin-bottom:32px;padding:24px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;box-shadow:var(--shadow-sm)}.most-active-users h4{margin:0 0 24px;font-size:18px;font-weight:600;color:var(--text-primary)}.active-users-list{display:flex;flex-direction:column;gap:16px}.active-user-item{display:flex;align-items:center;gap:16px}.active-user-item .active-user-rank{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-hover);border-radius:50%;font-weight:700;font-size:10px;color:var(--text-tertiary)}.active-user-item .active-user-info{flex:1;display:flex;flex-direction:column;gap:4px}.active-user-item .active-user-name{font-size:12px;font-weight:600;color:var(--text-primary)}.active-user-item .active-user-bar-wrapper{height:6px;background:var(--bg-hover);border-radius:9999px;overflow:hidden}.active-user-item .active-user-bar{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-hover));border-radius:9999px;transition:width .6s cubic-bezier(.16,1,.3,1)}.active-user-item .active-user-count{font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.activity-feed-section{margin-top:32px}.activity-feed-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.activity-feed-section .section-header h4{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.filters-bar{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:24px;padding:20px;background:var(--bg-hover);border-radius:8px;border:1px solid var(--border-default)}.filters-bar .filter-group{display:flex;flex-direction:column;gap:8px}.filters-bar .filter-group label{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.filters-bar .filter-group select.form-control{min-width:200px;height:38px;padding:0 12px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;font-size:12px;color:var(--text-primary);cursor:pointer;transition:border-color .2s,box-shadow .2s}.filters-bar .filter-group select.form-control:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6d7cff1a}.filters-bar .filter-group select.form-control:hover{border-color:var(--border-active)}.filters-bar .btn-clear{height:38px;display:flex;align-items:center;gap:8px;padding:0 16px;color:var(--text-tertiary)}.filters-bar .btn-clear:hover{color:#fb6f6f;background:#fb6f6f1a}.audit-log-list{border:1px solid var(--border-default);border-radius:8px;overflow:hidden;background:var(--bg-card)}.log-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:8px 16px;border-bottom:1px solid var(--border-subtle);font-size:12px;transition:background-color .15s ease}.log-row:last-child{border-bottom:none}.log-row:hover{background:var(--bg-hover)}.log-row .log-row__dot{flex-shrink:0;align-self:center;width:7px;height:7px;border-radius:50%;background:var(--text-tertiary)}.log-row.action-success .log-row__dot{background:#3ddc97}.log-row.action-warning .log-row__dot{background:#f5b945}.log-row.action-danger .log-row__dot{background:#fb6f6f}.log-row.action-info .log-row__dot{background:var(--accent-primary)}.log-row .log-row__time{flex-shrink:0;width:124px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap}.log-row .log-row__action{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:500;color:var(--text-primary)}.log-row .log-row__user{color:var(--accent-primary);font-weight:500;white-space:nowrap}.log-row .log-row__target{color:var(--text-tertiary);white-space:nowrap}.log-row .log-row__meta{margin-left:auto;display:inline-flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:4px 12px;min-width:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.log-row .log-row__detail{color:var(--text-secondary);max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-row .log-row__detail-key,.log-row .log-row__ip{color:var(--text-tertiary)}.linked-apps-section{margin-top:16px}.linked-apps-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.linked-apps-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.linked-apps-content{display:flex;flex-direction:column;gap:16px}.current-environment{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-hover);border-radius:6px}.current-environment .env-label{font-size:12px;color:var(--text-secondary)}.linked-apps-divider{display:flex;align-items:center;gap:12px;color:var(--text-tertiary);font-size:12px}.linked-apps-divider:before,.linked-apps-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.linked-apps-list{display:flex;flex-direction:column;gap:12px}.linked-app-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;transition:border-color .15s ease}.linked-app-item:hover{border-color:var(--border-default)}.linked-app-info{display:flex;align-items:center;gap:12px}.linked-app-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--accent-glow);color:var(--accent-primary);border-radius:6px}.linked-app-details{display:flex;flex-direction:column;gap:4px}.linked-app-name{font-weight:500;color:var(--text-primary)}.linked-app-meta{display:flex;align-items:center;gap:8px;font-size:12px}.linked-app-port{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.linked-app-actions{display:flex;gap:8px}.linked-apps-empty,.linked-apps-info{padding:16px;text-align:center;background:var(--bg-hover);border-radius:6px}.linked-apps-empty p,.linked-apps-info p{margin:0 0 12px;color:var(--text-secondary);font-size:12px}.linked-apps-empty .btn,.linked-apps-info .btn{margin-top:8px}.linked-apps-info p{margin:0}.shared-config-info{padding:12px;background:#6d7cff1a;border:1px solid rgba(109,124,255,.2);border-radius:6px}.shared-config-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--accent-primary);margin-bottom:8px}.shared-config-details{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.shared-config-details span{background:var(--bg-card);padding:4px 8px;border-radius:4px}.link-app-modal{max-width:500px}.link-app-modal .modal-header h2{display:flex;align-items:center;gap:8px}.link-app-current{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-hover);border-radius:6px;margin-bottom:16px}.link-app-current .link-app-label{color:var(--text-tertiary);font-size:12px}.link-app-current .link-app-name{font-weight:500;color:var(--text-primary)}.link-app-empty{text-align:center;padding:24px}.link-app-empty svg{color:var(--text-tertiary);margin-bottom:12px}.link-app-empty h3{margin:0 0 8px;font-size:18px}.link-app-empty p{color:var(--text-secondary);font-size:12px;margin-bottom:16px}.env-radio-group{display:flex;gap:8px}.env-radio-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:var(--bg-card);border:2px solid var(--border-subtle);border-radius:6px;cursor:pointer;transition:all .15s ease}.env-radio-option input{display:none}.env-radio-option:hover{border-color:var(--border-default)}.env-radio-option.selected{border-color:var(--accent-primary);background:var(--accent-glow)}.env-radio-option .env-radio-label{font-size:10px;color:var(--text-secondary)}.link-preview{margin:16px 0;padding:16px;background:var(--bg-hover);border-radius:6px}.link-preview-title{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.link-preview-diagram{display:flex;align-items:center;justify-content:center;gap:16px}.link-preview-app{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;min-width:120px}.link-preview-name{font-size:12px;font-weight:500;color:var(--text-primary)}.link-preview-connector{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--accent-glow);color:var(--accent-primary);border-radius:50%}.modal-loading{padding:24px;text-align:center;color:var(--text-secondary)}.status-badge-sm{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:9999px;font-size:10px;font-weight:500}.status-badge-sm .status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.status-badge-sm.status-active{background:#3ddc971f;color:#3ddc97}.status-badge-sm.status-stopped{background:#646b7a1a;color:var(--text-tertiary)}.status-badge-sm.status-error{background:#fb6f6f1f;color:#fb6f6f}.status-badge-sm.status-warning{background:#f5b9451f;color:#f5b945}.api-settings{display:flex;flex-direction:column;gap:24px}.api-settings__table-wrap{overflow-x:auto}.api-settings__table{width:100%;border-collapse:collapse;font-size:12px}.api-settings__table th,.api-settings__table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-subtle)}.api-settings__table th{color:var(--text-secondary);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.api-settings__table td{color:var(--text-primary)}.api-settings__table tbody tr:hover{background:var(--bg-hover)}.api-settings__table code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;padding:2px 6px;background:var(--bg-elevated);border-radius:4px}.api-settings__table--compact th,.api-settings__table--compact td{padding:4px 8px}.api-settings__key-name{font-weight:500}.api-settings__key-prefix{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.api-settings__muted{color:var(--text-tertiary);font-size:10px}.api-settings__actions{display:flex;gap:4px}.api-settings__error-count{color:#fb6f6f;font-weight:600}.api-settings__rate-limits{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px}.api-settings__rate-limits .form-group--inline{display:flex;flex-direction:column;gap:4px}.api-settings__rate-limits .form-group--inline label{font-size:12px;font-weight:500;color:var(--text-secondary)}.api-settings__webhooks{display:flex;flex-direction:column;gap:8px;padding:8px}.api-settings__webhook-card{border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden}.api-settings__webhook-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .15s}.api-settings__webhook-header:hover{background:var(--bg-hover)}.api-settings__webhook-info{display:flex;flex-direction:column;gap:4px;min-width:0}.api-settings__webhook-name{font-weight:600;color:var(--text-primary)}.api-settings__webhook-url{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-settings__webhook-events{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.api-settings__webhook-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.api-settings__webhook-details{border-top:1px solid var(--border-subtle);padding:12px 16px}.api-settings__webhook-actions{display:flex;gap:8px;margin-bottom:12px}.api-settings__deliveries h4{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.api-settings__period-select{display:flex;gap:4px}.api-settings__stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px}.api-settings__stat-card{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-elevated);border-radius:6px;text-align:center}.api-settings__stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.api-settings__stat-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.api-settings__chart{padding:16px}.api-settings__chart h4{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.api-settings__bar-chart{display:flex;align-items:flex-end;gap:2px;height:120px;padding:8px 0}.api-settings__bar-col{flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;height:100%;min-width:4px}.api-settings__bar{background:var(--accent-primary);border-radius:4px 4px 0 0;min-height:2px;transition:height .3s ease}.api-settings__bar--error{background:#fb6f6f;border-radius:0}.api-settings__top-endpoints{padding:16px}.api-settings__top-endpoints h4{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.badge--method{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px}.badge--get{background:#3ddc971f;color:#3ddc97}.badge--post{background:#49c7f01f;color:#49c7f0}.badge--put{background:#f5b9451f;color:#f5b945}.badge--delete{background:#fb6f6f1f;color:#fb6f6f}.badge--patch{background:#49c7f01f;color:#49c7f0}.badge--standard{background:var(--bg-elevated);color:var(--text-secondary)}.badge--elevated{background:#49c7f01f;color:#49c7f0}.badge--unlimited{background:#f5b9451f;color:#f5b945}.badge--subtle{background:var(--bg-elevated);color:var(--text-secondary);font-size:10px;padding:1px 6px;border-radius:4px}.api-key-modal{max-width:520px}.api-key-modal .api-key-modal__warning{display:flex;align-items:center;gap:8px;padding:12px;background:#f5b9451f;border:1px solid rgba(245,185,69,.22);border-radius:6px;color:#f5b945;font-size:12px;margin-bottom:16px}.api-key-modal .api-key-modal__key-display{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-elevated);border-radius:6px;overflow-x:auto}.api-key-modal .api-key-modal__key-display code{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;word-break:break-all}.api-key-modal .api-key-modal__tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.api-key-modal .api-key-modal__tier-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;border:1px solid var(--border-subtle);border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s}.api-key-modal .api-key-modal__tier-btn:hover{border-color:var(--border-default);background:var(--bg-hover)}.api-key-modal .api-key-modal__tier-btn.active{border-color:var(--accent-primary);background:#6d7cff14;color:var(--accent-primary)}.api-key-modal .api-key-modal__tier-label{font-weight:600;font-size:12px}.api-key-modal .api-key-modal__tier-desc{font-size:10px;opacity:.7}.api-key-modal .api-key-modal__scopes{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid var(--border-subtle);border-radius:6px}.api-key-modal .api-key-modal__scope-item{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px;cursor:pointer}.api-key-modal .api-key-modal__scope-item:hover{background:var(--bg-hover);border-radius:4px}.api-key-modal .api-key-modal__scope-item input[type=checkbox]{accent-color:var(--accent-primary)}.webhook-modal{max-width:600px}.webhook-modal .webhook-modal__events{max-height:300px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:6px;padding:8px}.webhook-modal .webhook-modal__event-group{margin-bottom:8px}.webhook-modal .webhook-modal__event-group:last-child{margin-bottom:0}.webhook-modal .webhook-modal__category{display:flex;align-items:center;gap:8px;padding:4px;cursor:pointer;font-size:12px}.webhook-modal .webhook-modal__category input[type=checkbox]{accent-color:var(--accent-primary)}.webhook-modal .webhook-modal__event-list{padding-left:24px}.webhook-modal .webhook-modal__event-item{display:flex;align-items:center;gap:8px;padding:4px;cursor:pointer;font-size:12px}.webhook-modal .webhook-modal__event-item:hover{background:var(--bg-hover);border-radius:4px}.webhook-modal .webhook-modal__event-item input[type=checkbox]{accent-color:var(--accent-primary)}.webhook-modal .webhook-modal__event-type{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-primary)}.webhook-modal .webhook-modal__event-desc{color:var(--text-tertiary);font-size:10px}.webhook-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.api-settings__stats-grid{grid-template-columns:repeat(2,1fr)}.api-settings__rate-limits,.api-key-modal__tiers,.api-key-modal__scopes{grid-template-columns:1fr}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;text-align:center;min-height:200px}.empty-state__icon{color:var(--text-tertiary);margin-bottom:16px;opacity:.5}.empty-state__title{font-size:18px;font-weight:600;color:var(--text-secondary);margin:0 0 8px}.empty-state__description{font-size:13px;color:var(--text-tertiary);max-width:400px;margin:0 0 16px}.empty-state__action{margin-top:8px}.empty-state--lg{padding:64px 32px;min-height:400px}.empty-state--lg .empty-state__icon{opacity:.4;margin-bottom:24px}.empty-state--lg .empty-state__title{font-size:24px}.empty-state--lg .empty-state__description{font-size:14px;max-width:480px;margin-bottom:24px}.empty-state--lg .empty-state__action{margin-top:16px}.empty-state .spinner{margin-bottom:16px}html .empty-state{padding:32px;color:var(--text-secondary)}html .empty-state p{margin:0}.status-badge{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:4px 8px;border-radius:9999px;font-size:10px;font-weight:600;line-height:1;white-space:nowrap}.status-badge__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-badge--success{background:#3ddc9726;color:#3ddc97}.status-badge--success .status-badge__dot{background:#3ddc97}.status-badge--danger{background:#fb6f6f26;color:#fb6f6f}.status-badge--danger .status-badge__dot{background:#fb6f6f}.status-badge--warning{background:#f5b94526;color:#f5b945}.status-badge--warning .status-badge__dot{background:#f5b945}.status-badge--info{background:#6d7cff26;color:var(--accent-primary)}.status-badge--info .status-badge__dot{background:var(--accent-primary)}.status-badge--muted{background:var(--bg-hover);color:var(--text-tertiary)}.status-badge--muted .status-badge__dot{background:var(--text-tertiary)}.server-selector{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 12px}.server-selector svg{color:var(--text-tertiary);flex-shrink:0}.server-selector select{background:transparent;border:none;color:var(--text-primary);font-size:12px;cursor:pointer;padding-right:16px;min-width:140px}.server-selector select:focus{outline:none}.server-selector select option{background:var(--bg-card);color:var(--text-primary)}.server-selector select option:disabled{color:var(--text-tertiary)}.contribution-graph-container{padding:16px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;margin-bottom:24px}.contribution-graph-container .graph-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.contribution-graph-container .graph-header h4{margin:0;font-size:16px;font-weight:600}.contribution-graph-container .graph-header h4 .username{color:var(--accent-primary);margin-left:8px;font-weight:500}.contribution-graph-container .graph-header .graph-legend{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-tertiary)}.contribution-graph-container .graph-header .graph-legend .legend-cells{display:flex;gap:2px}.contribution-graph-container .graph-header .graph-legend .legend-cells .cell{width:10px;height:10px;border-radius:2px}.contribution-graph-container .graph-grid-wrapper{overflow-x:auto;padding-bottom:8px}.contribution-graph-container .graph-grid-wrapper::-webkit-scrollbar{height:6px}.contribution-graph-container .graph-grid-wrapper::-webkit-scrollbar-track{background:transparent}.contribution-graph-container .graph-grid-wrapper::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:9999px}.contribution-graph-container .graph-grid{display:flex;gap:3px;min-width:fit-content}.contribution-graph-container .graph-week{display:flex;flex-direction:column;gap:3px}.contribution-graph-container .graph-cell{width:12px;height:12px;border-radius:2px;transition:transform .1s ease}.contribution-graph-container .graph-cell:hover{transform:scale(1.2);z-index:10}.contribution-graph-container .level-0{background-color:var(--bg-hover)}.contribution-graph-container .level-1{background-color:#6d7cff4d}.contribution-graph-container .level-2{background-color:#6d7cff8c}.contribution-graph-container .level-3{background-color:#6d7cffcc}.contribution-graph-container .level-4{background-color:var(--accent-primary)}.command-palette-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;justify-content:center;padding-top:15vh}.command-palette{width:560px;max-height:460px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:palette-enter .15s ease-out}@keyframes palette-enter{0%{opacity:0;transform:scale(.96) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.command-palette__input-wrapper{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-subtle);color:var(--text-tertiary)}.command-palette__input-wrapper svg{flex-shrink:0}.command-palette__input{flex:1;background:none;border:none;outline:none;font-size:16px;color:var(--text-primary);font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.command-palette__input::placeholder{color:var(--text-tertiary)}.command-palette__kbd{font-size:10px;font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;padding:2px 6px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-tertiary);flex-shrink:0}.command-palette__results{flex:1;overflow-y:auto;padding:8px 0}.command-palette__empty{padding:32px 20px;text-align:center;color:var(--text-tertiary);font-size:12px}.command-palette__group:not(:first-child){margin-top:8px}.command-palette__group-label{padding:8px 20px;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.command-palette__item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 20px;background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-secondary);text-align:left;transition:background .15s ease,color .15s ease}.command-palette__item:hover,.command-palette__item--active{background:var(--bg-hover);color:var(--text-primary)}.command-palette__item--active{background:var(--bg-hover)}.command-palette__item-label{font-weight:500}.command-palette__item-path{font-size:10px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}@keyframes sk-overlay-blink{0%,to{opacity:1}50%{opacity:.3}}.logs-drawer{position:fixed;bottom:0;left:250px;right:0;z-index:30;background:var(--surface);border-top:1px solid var(--border-strong);display:flex;flex-direction:column}@media (max-width: 768px){.logs-drawer{left:0}}.logs-drawer--collapsed{height:36px;cursor:pointer;transition:background .15s ease}.logs-drawer--collapsed:hover{background:var(--surface-hover)}.logs-drawer--expanded{box-shadow:0 -16px 48px -12px #00000080}.logs-drawer__resize-handle{height:4px;cursor:ns-resize;background:transparent;transition:background .15s ease;flex-shrink:0}.logs-drawer__resize-handle:hover,.logs-drawer__resize-handle:active{background:var(--accent)}.logs-drawer__collapsed-bar{display:flex;align-items:center;gap:12px;padding:0 16px;height:36px;min-width:0;overflow:hidden}.logs-drawer__collapsed-actions{margin-left:auto;flex-shrink:0}.logs-drawer__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.logs-drawer__header-left{display:flex;align-items:center;gap:12px;min-width:0}.logs-drawer__header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.logs-drawer__ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--cyan-bg);color:var(--cyan);flex-shrink:0}.logs-drawer__titles{display:flex;flex-direction:column;min-width:0}.logs-drawer__service-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap}.logs-drawer__source{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logs-drawer__live{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;color:var(--text-faint);white-space:nowrap}.logs-drawer__live-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 7px var(--green);animation:sk-overlay-blink 1.4s infinite;flex-shrink:0}.logs-drawer__last-line{flex:1;font-family:var(--mono);font-size:11px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logs-drawer__toggle{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);cursor:pointer;-webkit-user-select:none;user-select:none}.logs-drawer__content{flex:1;overflow-y:auto;padding:8px 16px;font-family:var(--mono);font-size:12px;line-height:1.7;background:var(--bg-code);scrollbar-width:thin}.logs-drawer__empty{font-family:var(--mono);color:var(--text-faint);padding:16px;text-align:center}.logs-drawer__line{color:var(--text-dim);white-space:pre-wrap;word-break:break-all}.logs-drawer__line--error{color:var(--red)}.logs-drawer__line--warn{color:var(--amber)}.remote-terminal-container{display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.remote-terminal-container .terminal-header{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border-soft);flex-shrink:0}.remote-terminal-container .terminal-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--green-bg);color:var(--green);flex-shrink:0}.remote-terminal-container .terminal-titles{display:flex;flex-direction:column;min-width:0;flex:1}.remote-terminal-container .terminal-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap}.remote-terminal-container .terminal-status{width:7px;height:7px;border-radius:50%;background:var(--text-ghost);flex-shrink:0}.remote-terminal-container .terminal-status.connected{background:var(--green);box-shadow:0 0 7px var(--green);animation:sk-overlay-blink 1.4s infinite}.remote-terminal-container .terminal-status.disconnected{background:var(--red)}.remote-terminal-container .session-id{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remote-terminal-container .terminal-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.remote-terminal-container .terminal-close-btn{width:28px;height:28px;display:grid;place-items:center;background:transparent;border:none;border-radius:6px;color:var(--text-faint);cursor:pointer;transition:background .15s ease,color .15s ease}.remote-terminal-container .terminal-close-btn:hover{background:var(--surface-2);color:var(--text)}.remote-terminal-container .terminal-content{flex:1;min-height:0;padding:8px 12px;background:#0a0b0e}.remote-terminal-container .terminal-content .xterm{height:100%}.remote-terminal-container .terminal-alert{padding:8px 12px;border-top:1px solid var(--border-soft);background:var(--red-bg);color:var(--red);font-family:var(--mono);font-size:12px}.sk-ai-overlay,.sk-ai-bubble{--sk-ai-bg: var(--bg-card, #101218);--sk-ai-bg-body: var(--bg-body, #0a0b0e);--sk-ai-hover: var(--bg-hover, #1a1e27);--sk-ai-elevated: var(--bg-elevated, #161922);--sk-ai-border: var(--border-subtle, #191c23);--sk-ai-fg: var(--text-primary, #e9ebf0);--sk-ai-fg-2: var(--text-secondary, #9aa1af);--sk-ai-fg-3: var(--text-tertiary, #646b7a);--sk-ai-accent: var(--accent-primary, #6d7cff);--sk-ai-accent-hover: var(--accent-hover, #5a67e8);--sk-ai-glow: var(--accent-glow, rgba(109, 124, 255, .15));--sk-ai-shadow: var(--shadow-lg, 0 20px 60px rgba(0, 0, 0, .5));--sk-ai-code-bg: var(--bg-code, var(--bg-body, #0c0c0f));--sk-ai-code-fg: var(--text-code, var(--text-primary, #e9ebf0));--sk-ai-mono: "JetBrains Mono", "Fira Code", ui-monospace, monospace;--sk-ai-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--sk-ai-radius: 14px}.sk-ai-bubble{position:fixed;bottom:24px;right:24px;z-index:1099;width:52px;height:52px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;background:var(--sk-ai-accent);color:#fff;cursor:pointer;box-shadow:0 6px 20px var(--sk-ai-glow),0 2px 8px #00000040;transition:transform .18s cubic-bezier(.22,1,.36,1),background .18s ease}.sk-ai-bubble:hover{background:var(--sk-ai-accent-hover);transform:translateY(-2px)}.sk-ai-bubble:focus-visible{outline:2px solid var(--sk-ai-accent);outline-offset:3px}.sk-ai-bubble.is-raised{bottom:92px}.sk-ai-bubble.is-busy{animation:sk-ai-pulse 1.6s ease-in-out infinite}@media (max-width: 768px){.sk-ai-bubble{bottom:88px;right:16px;width:48px;height:48px}.sk-ai-bubble.is-raised{bottom:152px}}.sk-ai-bubble__dot{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:#fb6f6f;border:2px solid var(--sk-ai-accent)}.sk-ai-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;pointer-events:none}.sk-ai-overlay[data-mobile=true]{pointer-events:auto}.sk-ai-overlay__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;animation:sk-ai-fade .15s ease}.sk-ai-drawer{--sk-ai-drawer-w: 420px;pointer-events:auto;position:absolute;top:0;right:0;bottom:0;width:var(--sk-ai-drawer-w);max-width:100vw;display:flex;flex-direction:column;background:var(--sk-ai-bg);border-left:1px solid var(--sk-ai-border);box-shadow:var(--sk-ai-shadow);font-family:var(--sk-ai-sans);color:var(--sk-ai-fg);animation:sk-ai-slide-in .22s cubic-bezier(.16,1,.3,1)}@media (max-width: 768px){.sk-ai-drawer{width:100vw;height:100dvh;border-left:none}}.sk-ai-drawer__resize{position:absolute;top:0;left:-3px;width:6px;height:100%;cursor:col-resize;z-index:2}.sk-ai-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--sk-ai-border)}.sk-ai-header__title{display:flex;flex-direction:column;line-height:1.1}.sk-ai-header__name{font-weight:600;font-size:14px}.sk-ai-header__by{font-size:11px;color:var(--sk-ai-fg-3)}.sk-ai-header__actions{display:flex;align-items:center;gap:6px}.sk-ai-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--sk-ai-fg-2);cursor:pointer;transition:background .15s ease,color .15s ease}.sk-ai-iconbtn:hover{background:var(--sk-ai-hover);color:var(--sk-ai-fg)}.sk-ai-iconbtn:focus-visible{outline:2px solid var(--sk-ai-accent);outline-offset:1px}.sk-ai-modes{display:inline-flex;background:var(--sk-ai-bg-body);border:1px solid var(--sk-ai-border);border-radius:999px;padding:2px}.sk-ai-modes__item{border:none;background:transparent;color:var(--sk-ai-fg-2);font-size:12px;padding:4px 10px;border-radius:999px;cursor:pointer}.sk-ai-modes__item.is-active{background:var(--sk-ai-accent);color:#fff}.sk-ai-context-chip{display:inline-flex;align-items:center;gap:6px;margin:10px 14px 0;padding:4px 10px;border-radius:999px;font-size:12px;cursor:pointer;border:1px solid var(--sk-ai-border);background:var(--sk-ai-glow);color:var(--sk-ai-fg-2);align-self:flex-start}.sk-ai-context-chip.is-off{background:transparent;color:var(--sk-ai-fg-3)}.sk-ai-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;position:relative}.sk-ai-message{display:flex;flex-direction:column;gap:8px;max-width:100%}.sk-ai-message--user{align-items:flex-end}.sk-ai-message--user .sk-ai-message__bubble{background:var(--sk-ai-accent);color:#fff;padding:8px 12px;border-radius:14px 14px 4px;max-width:85%;white-space:pre-wrap;word-break:break-word}.sk-ai-message--assistant{align-items:stretch}.sk-ai-message__error{color:#fca5a5;font-size:13px;border:1px solid rgba(251,111,111,.4);border-radius:8px;padding:8px 10px}.sk-ai-markdown{font-size:14px;line-height:1.55;color:var(--sk-ai-fg)}.sk-ai-markdown p{margin:0 0 8px}.sk-ai-markdown p:last-child{margin-bottom:0}.sk-ai-markdown a{color:var(--sk-ai-accent)}.sk-ai-markdown strong{font-weight:600}.sk-ai-code{background:var(--sk-ai-code-bg);color:var(--sk-ai-code-fg);font-family:var(--sk-ai-mono);font-size:12.5px;border:1px solid var(--sk-ai-border);border-radius:8px;padding:10px 12px;overflow-x:auto;margin:6px 0;position:relative}.sk-ai-code code{font-family:inherit;white-space:pre}.sk-ai-code__lang{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--sk-ai-fg-3);margin-bottom:4px}.sk-ai-inline-code{font-family:var(--sk-ai-mono);font-size:.9em;background:var(--sk-ai-hover);padding:1px 5px;border-radius:4px}.sk-ai-tool-card{border:1px solid var(--sk-ai-border);border-radius:10px;background:var(--sk-ai-bg-body);overflow:hidden}.sk-ai-tool-card--error{border-color:#fb6f6f80}.sk-ai-tool-card__head{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:none;color:var(--sk-ai-fg);font-size:13px;cursor:pointer;text-align:left}.sk-ai-tool-card__name{font-family:var(--sk-ai-mono);font-size:12.5px;flex:1}.sk-ai-tool-card__status{display:inline-flex;color:var(--sk-ai-fg-2)}.sk-ai-tool-card__status--done{color:#4ade80}.sk-ai-tool-card__status--error{color:#f87171}.sk-ai-tool-card__chev{color:var(--sk-ai-fg-3);transition:transform .15s ease}.sk-ai-tool-card__chev.is-open{transform:rotate(180deg)}.sk-ai-tool-card__body{padding:0 10px 10px}.sk-ai-tool-card__label{font-size:11px;color:var(--sk-ai-fg-3);margin:6px 0 2px}.sk-ai-tool-card__result{max-height:240px;overflow:auto}.sk-ai-spin{animation:sk-ai-spin 1s linear infinite}.sk-ai-confirm{border:1px solid var(--sk-ai-accent);border-radius:10px;background:var(--sk-ai-glow);padding:12px;display:flex;flex-direction:column;gap:8px}.sk-ai-confirm__head{display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px}.sk-ai-confirm__summary{font-size:13px;color:var(--sk-ai-fg);margin:0}.sk-ai-confirm__params{max-height:160px;overflow:auto}.sk-ai-confirm__actions{display:flex;justify-content:flex-end;gap:8px}.sk-ai-btn{border-radius:8px;padding:6px 14px;font-size:13px;cursor:pointer;border:1px solid var(--sk-ai-border);background:var(--sk-ai-bg);color:var(--sk-ai-fg)}.sk-ai-btn--ghost{background:transparent}.sk-ai-btn--danger{background:var(--sk-ai-accent);border-color:var(--sk-ai-accent);color:#fff}.sk-ai-btn:focus-visible{outline:2px solid var(--sk-ai-accent);outline-offset:1px}.sk-ai-composer{display:flex;align-items:flex-end;gap:8px;padding:12px 14px;border-top:1px solid var(--sk-ai-border)}.sk-ai-composer__input{flex:1;resize:none;border-radius:10px;border:1px solid var(--sk-ai-border);background:var(--sk-ai-bg-body);color:var(--sk-ai-fg);padding:10px 12px;font-family:var(--sk-ai-sans);font-size:14px;line-height:1.4;max-height:160px}.sk-ai-composer__input:focus{outline:none;border-color:var(--sk-ai-accent);box-shadow:0 0 0 3px var(--sk-ai-glow)}@media (max-width: 768px){.sk-ai-composer__input{font-size:16px}}.sk-ai-composer__btn{flex:none;width:40px;height:40px;border-radius:10px;border:none;background:var(--sk-ai-accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sk-ai-composer__btn:disabled{opacity:.5;cursor:not-allowed}.sk-ai-composer__btn--stop{background:var(--sk-ai-hover);color:var(--sk-ai-fg)}.sk-ai-typing{display:flex;align-items:center;gap:8px;color:var(--sk-ai-fg-3);font-size:12px}.sk-ai-typing__dots{display:inline-flex;gap:3px}.sk-ai-typing__dots i{width:6px;height:6px;border-radius:50%;background:var(--sk-ai-fg-3);animation:sk-ai-bounce 1.2s infinite ease-in-out}.sk-ai-typing__dots i:nth-child(2){animation-delay:.15s}.sk-ai-typing__dots i:nth-child(3){animation-delay:.3s}.sk-ai-empty{margin:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px}.sk-ai-empty__icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--sk-ai-glow);color:var(--sk-ai-accent)}.sk-ai-empty__title{margin:6px 0 0;font-size:16px}.sk-ai-empty__sub{margin:0;font-size:12px;color:var(--sk-ai-fg-3)}.sk-ai-empty__hint{font-size:13px;color:var(--sk-ai-fg-2);max-width:260px}.sk-ai-empty__prompts{display:flex;flex-direction:column;gap:8px;margin-top:10px;width:100%}.sk-ai-suggested{border:1px solid var(--sk-ai-border);background:var(--sk-ai-bg-body);color:var(--sk-ai-fg);border-radius:10px;padding:8px 12px;font-size:13px;cursor:pointer;text-align:left}.sk-ai-suggested:hover{background:var(--sk-ai-hover)}.sk-ai-convo{position:relative}.sk-ai-convo__menu{position:absolute;right:0;top:36px;width:240px;background:var(--sk-ai-elevated);border:1px solid var(--sk-ai-border);border-radius:10px;box-shadow:var(--sk-ai-shadow);padding:6px;z-index:3}.sk-ai-convo__new{width:100%;display:flex;align-items:center;gap:6px;padding:8px;border:none;background:transparent;color:var(--sk-ai-fg);border-radius:8px;cursor:pointer;font-size:13px}.sk-ai-convo__new:hover{background:var(--sk-ai-hover)}.sk-ai-convo__list{max-height:280px;overflow-y:auto;margin-top:4px}.sk-ai-convo__empty{color:var(--sk-ai-fg-3);font-size:12px;padding:8px;text-align:center}.sk-ai-convo__item{display:flex;align-items:center;gap:4px;border-radius:8px}.sk-ai-convo__item:hover{background:var(--sk-ai-hover)}.sk-ai-convo__item.is-active{background:var(--sk-ai-glow)}.sk-ai-convo__title{flex:1;text-align:left;border:none;background:transparent;color:var(--sk-ai-fg);padding:7px 8px;font-size:13px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-ai-convo__del{border:none;background:transparent;color:var(--sk-ai-fg-3);padding:6px;cursor:pointer;border-radius:6px}.sk-ai-convo__del:hover{color:#f87171}.sk-ai-jump{position:sticky;bottom:4px;align-self:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--sk-ai-border);background:var(--sk-ai-elevated);color:var(--sk-ai-fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #0000004d}@keyframes sk-ai-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes sk-ai-fade{0%{opacity:0}to{opacity:1}}@keyframes sk-ai-pulse{0%,to{box-shadow:0 6px 20px var(--sk-ai-glow),0 2px 8px #00000040}50%{box-shadow:0 0 0 6px var(--sk-ai-glow)}}@keyframes sk-ai-spin{to{transform:rotate(360deg)}}@keyframes sk-ai-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.sk-ai-drawer,.sk-ai-bubble,.sk-ai-overlay__backdrop{animation:none!important;transition:none!important}.sk-ai-bubble.is-busy{animation:none!important}}.ui-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;line-height:1;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.ui-label[data-disabled=true],.peer:disabled~.ui-label{opacity:.5;cursor:not-allowed}.ui-select-trigger,.ui-textarea,.ui-input{display:block;width:100%;padding:0 13px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.5;transition:border-color .2s ease}.ui-select-trigger::placeholder,.ui-textarea::placeholder,.ui-input::placeholder{color:var(--text-tertiary)}.ui-select-trigger:focus,.ui-textarea:focus,.ui-input:focus,.ui-select-trigger:focus-visible,.ui-textarea:focus-visible,.ui-input:focus-visible{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #6d7cff2e}.ui-select-trigger:disabled,.ui-textarea:disabled,.ui-input:disabled,[aria-disabled=true].ui-select-trigger,[aria-disabled=true].ui-textarea,[aria-disabled=true].ui-input{opacity:.55;cursor:not-allowed}[aria-invalid=true].ui-select-trigger,[aria-invalid=true].ui-textarea,[aria-invalid=true].ui-input{border-color:#fb6f6f;box-shadow:0 0 0 3px #fb6f6f2e}.ui-input{height:40px}.ui-input::file-selector-button{margin-right:12px;padding:0 8px;height:28px;background:transparent;border:none;color:var(--text-primary);font-weight:500;font-size:13px;cursor:pointer}.ui-textarea{min-height:80px;padding-top:9px;padding-bottom:9px;resize:vertical}.ui-checkbox{flex-shrink:0;width:16px;height:16px;border:1px solid var(--border-active);border-radius:4px;background:var(--bg-body);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;color:#fff}.ui-checkbox:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.ui-checkbox:disabled,.ui-checkbox[data-disabled]{opacity:.5;cursor:not-allowed}.ui-checkbox[data-state=checked]{background:var(--accent-primary);border-color:var(--accent-primary)}.ui-checkbox svg{width:12px;height:12px}.ui-switch{position:relative;flex-shrink:0;width:36px;height:20px;padding:0;border:none;border-radius:9999px;background:var(--bg-tertiary);cursor:pointer;transition:background-color .2s ease}.ui-switch:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.ui-switch:disabled,.ui-switch[data-disabled]{opacity:.5;cursor:not-allowed}.ui-switch[data-state=checked]{background:var(--accent-primary)}.ui-switch .ui-switch-thumb{display:block;width:16px;height:16px;margin:2px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0000004d;transition:transform .15s ease;transform:translate(0)}.ui-switch[data-state=checked] .ui-switch-thumb{transform:translate(16px)}.ui-card{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.ui-card-header{display:flex;flex-direction:column;gap:6px;padding:24px}.ui-card-title{font-size:16px;font-weight:600;line-height:1.2;color:var(--text-primary);margin:0}.ui-card-description{font-size:13px;color:var(--text-tertiary);line-height:1.45;margin:0}.ui-card-content{padding:0 24px 24px;flex:1}.ui-card-footer{display:flex;align-items:center;gap:8px;padding:0 24px 24px}.ui-table-wrapper{position:relative;width:100%;overflow-x:auto}.ui-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.ui-table-wrapper::-webkit-scrollbar-track{background:var(--bg-body)}.ui-table-wrapper::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.ui-table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.ui-table{width:100%;caption-side:bottom;border-collapse:collapse;font-size:13px}.ui-table-header tr{border-bottom:1px solid var(--border-default)}.ui-table-body tr:not(:last-child){border-bottom:1px solid var(--border-subtle)}.ui-table-footer{border-top:1px solid var(--border-default);background:#1a1e2780;font-weight:500}.ui-table-footer tr:last-child{border-bottom:0}.ui-table-row{transition:background-color .2s ease}.ui-table-row:hover{background:#1a1e2780}.ui-table-row[data-state=selected]{background:var(--bg-hover)}.ui-table-head{height:40px;padding:0 16px;text-align:left;vertical-align:middle;color:var(--text-tertiary);font-weight:500;font-size:11px}.ui-table-cell{padding:13px 16px;vertical-align:middle;color:var(--text-primary)}.ui-table-caption{margin-top:16px;color:var(--text-tertiary);font-size:13px}.ui-dialog-overlay,.ui-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ui-dialog-content{position:fixed;left:50%;top:50%;z-index:41;width:calc(100% - 32px);max-width:560px;max-height:calc(100vh - 40px);transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;box-shadow:var(--shadow-lg);overflow-y:auto}.ui-dialog-content::-webkit-scrollbar{width:6px;height:6px}.ui-dialog-content::-webkit-scrollbar-track{background:var(--bg-body)}.ui-dialog-content::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.ui-dialog-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.ui-dialog-content:focus,.ui-dialog-content:focus-visible{outline:none}.ui-dialog-close,.ui-sheet-close{position:absolute;top:16px;right:16px;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.ui-dialog-close:hover,.ui-sheet-close:hover{color:var(--text-primary);background:var(--bg-hover)}.ui-dialog-close:focus-visible,.ui-sheet-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.ui-dialog-close svg,.ui-sheet-close svg{width:16px;height:16px}.ui-dialog-header,.ui-sheet-header{display:flex;flex-direction:column;gap:6px;text-align:left}.ui-dialog-footer,.ui-sheet-footer{display:flex;flex-direction:column-reverse;gap:8px;margin-top:8px}@media (min-width: 640px){.ui-dialog-footer,.ui-sheet-footer{flex-direction:row;justify-content:flex-end}}.ui-dialog-title,.ui-sheet-title{font-size:18px;font-weight:600;line-height:1.2;color:var(--text-primary);margin:0}.ui-dialog-description,.ui-sheet-description{font-size:13px;color:var(--text-tertiary);line-height:1.5;margin:0}.ui-sheet-content{position:fixed;z-index:41;display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--bg-card);border-color:var(--border-subtle);box-shadow:var(--shadow-lg);overflow-y:auto}.ui-sheet-content::-webkit-scrollbar{width:6px;height:6px}.ui-sheet-content::-webkit-scrollbar-track{background:var(--bg-body)}.ui-sheet-content::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.ui-sheet-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.ui-sheet-content:focus,.ui-sheet-content:focus-visible{outline:none}.ui-sheet-content--top{top:0;left:0;right:0;border-bottom:1px solid var(--border-subtle)}.ui-sheet-content--bottom{bottom:0;left:0;right:0;border-top:1px solid var(--border-subtle)}.ui-sheet-content--left{top:0;bottom:0;left:0;width:100%;max-width:28rem;border-right:1px solid var(--border-subtle)}.ui-sheet-content--right{top:0;bottom:0;right:0;width:100%;max-width:28rem;border-left:1px solid var(--border-subtle)}.ui-select-trigger{height:40px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;text-align:left}.ui-select-trigger[data-placeholder]{color:var(--text-tertiary)}.ui-select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select-trigger .ui-select-icon{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.ui-select-content{position:relative;z-index:60;min-width:8rem;max-height:24rem;overflow:hidden;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-md);color:var(--text-primary)}.ui-select-viewport{padding:4px}.ui-select-scroll-button{display:flex;align-items:center;justify-content:center;height:24px;cursor:default;color:var(--text-tertiary)}.ui-select-label{padding:6px 8px;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.ui-select-item{position:relative;display:flex;align-items:center;width:100%;padding:8px 8px 8px 32px;border-radius:6px;font-size:13px;color:var(--text-primary);cursor:default;-webkit-user-select:none;user-select:none;outline:none;transition:background-color .2s ease}.ui-select-item[data-highlighted],.ui-select-item:focus{background:var(--bg-hover);color:var(--text-primary)}.ui-select-item[data-disabled]{opacity:.5;pointer-events:none}.ui-select-item .ui-select-item-indicator{position:absolute;left:8px;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--accent-primary)}.ui-select-item .ui-select-item-indicator svg{width:14px;height:14px}.ui-select-separator{height:1px;margin:4px -4px;background:var(--border-subtle)}.ui-popover-content{z-index:60;min-width:12rem;padding:4px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-md);color:var(--text-primary);outline:none}.sk-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:6px;font-size:11.5px;font-weight:500;font-family:var(--mono);letter-spacing:.02em;white-space:nowrap}.sk-pill__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sk-pill--green{background:var(--green-bg);color:var(--green)}.sk-pill--green .sk-pill__dot{background:var(--green);box-shadow:0 0 6px var(--green)}.sk-pill--amber{background:var(--amber-bg);color:var(--amber)}.sk-pill--amber .sk-pill__dot{background:var(--amber);box-shadow:0 0 6px var(--amber)}.sk-pill--red{background:var(--red-bg);color:var(--red)}.sk-pill--red .sk-pill__dot{background:var(--red)}.sk-pill--cyan{background:var(--cyan-bg);color:var(--cyan)}.sk-pill--cyan .sk-pill__dot{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}.sk-pill--violet{background:var(--violet-bg);color:var(--violet)}.sk-pill--violet .sk-pill__dot{background:var(--violet);box-shadow:0 0 6px var(--violet)}.sk-pill--gray{background:var(--surface-3);color:var(--text-faint)}.sk-pill--gray .sk-pill__dot{background:var(--text-faint)}.status-pages-page .inc-state,.status-pages-page .inc-impact,.git-page .git-chip,.security-page .sec-state,.backups-page .bk-type,.monitoring-page .mon-state,.sk-state{display:inline-flex;align-items:center;padding:3px 9px;border-radius:6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.sk-state--red{color:var(--red);background:var(--red-bg)}.sk-state--amber{color:var(--amber);background:var(--amber-bg)}.sk-state--green{color:var(--green);background:var(--green-bg)}.sk-state--cyan{color:var(--cyan);background:var(--cyan-bg)}.sk-state--violet{color:var(--violet);background:var(--violet-bg)}.sk-state--accent{color:var(--accent-bright);background:var(--accent-bg)}.sk-state--gray{color:var(--text-faint);background:var(--surface-3)}.sk-tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;border:1px solid var(--border-strong);color:var(--text-dim);background:var(--surface-2)}.sk-tag--prod{color:var(--green);border-color:#3ddc974d;background:var(--green-bg)}.sk-tag--dev{color:var(--cyan);border-color:#49c7f04d;background:var(--cyan-bg)}.sk-tag--staging{color:var(--amber);border-color:#f5b9454d;background:var(--amber-bg)}.sk-seg{display:inline-flex;gap:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:3px}.sk-seg__btn{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:6px;font-size:12.5px;color:var(--text-faint);font-weight:500;font-family:inherit;background:none;border:none;cursor:pointer;transition:.14s}.sk-seg__btn:hover{color:var(--text-dim)}.sk-seg__btn.is-on{background:var(--surface-3);color:var(--text);box-shadow:var(--shadow-sm)}.sk-seg__btn .sk-seg__count{font-family:var(--mono);font-size:10.5px;opacity:.7}.sk-kpi{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 17px;position:relative;overflow:hidden;transition:border-color .15s}.sk-kpi:hover{border-color:var(--border-strong)}.sk-kpi__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sk-kpi__icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--surface-2);color:var(--text-dim)}.sk-kpi__icon--accent{background:var(--accent-bg);color:var(--accent-bright)}.sk-kpi__icon--green{background:var(--green-bg);color:var(--green)}.sk-kpi__icon--cyan{background:var(--cyan-bg);color:var(--cyan)}.sk-kpi__icon--amber{background:var(--amber-bg);color:var(--amber)}.sk-kpi__icon--red{background:var(--red-bg);color:var(--red)}.sk-kpi__icon--violet{background:var(--violet-bg);color:var(--violet)}.sk-kpi__val{font-family:var(--mono);font-size:27px;font-weight:600;letter-spacing:-.02em;line-height:1}.sk-kpi__val small{font-size:14px;color:var(--text-faint);font-weight:500}.sk-kpi__label{font-size:12.5px;color:var(--text-dim);margin-top:6px}.sk-kpi__sub{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);margin-top:8px;display:flex;gap:14px;flex-wrap:wrap}.sk-kpi__trend{font-family:var(--mono);font-size:11px;display:flex;align-items:center;gap:4px}.sk-kpi__trend--up{color:var(--green)}.sk-kpi__trend--down{color:var(--red)}.sk-kpi__trend--flat{color:var(--text-faint)}.sk-gauge{height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.sk-gauge__fill{display:block;height:100%;border-radius:3px;transition:width .6s cubic-bezier(.4,0,.2,1)}.sk-tile{border-radius:10px;display:grid;place-items:center;font-family:var(--mono);font-weight:700;color:#fff;flex-shrink:0;text-shadow:0 1px 2px rgba(0,0,0,.4)}.sk-spark{display:block;overflow:visible}.sk-area{display:block;width:100%}.sk-score{position:relative;display:inline-grid;place-items:center}.sk-score__svg{transform:rotate(-90deg)}.sk-score__center{position:absolute;text-align:center}.sk-score__num{font-family:var(--mono);font-weight:600;line-height:1}.sk-score__label{font-size:11px;color:var(--text-faint);margin-top:3px}.sk-feed__item{display:flex;gap:13px;padding:11px 0;position:relative}.sk-feed__item+.sk-feed__item{border-top:1px solid var(--border-soft)}.sk-feed__dot{width:30px;height:30px;border-radius:8px;flex-shrink:0;display:grid;place-items:center;background:var(--surface-2)}.sk-feed__body{flex:1;min-width:0}.sk-feed__txt{font-size:13px;line-height:1.45}.sk-feed__txt b{font-weight:600;color:var(--text)}.sk-feed__time{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);margin-top:2px}.sk-dtable{width:100%;border-collapse:collapse;font-size:13px}.sk-dtable thead th{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:11px 16px;border-bottom:1px solid var(--border)}.sk-dtable tbody td{padding:13px 16px;border-bottom:1px solid var(--border-soft);vertical-align:middle}.sk-dtable tbody tr{transition:background .12s}.sk-dtable tbody tr.is-clickable{cursor:pointer}.sk-dtable tbody tr:hover{background:var(--surface-2)}.sk-dtable tbody tr:last-child td{border-bottom:none}.sk-dtable tbody tr.is-selected{background:var(--accent-bg-soft)}.sk-dtable tbody tr.is-selected:hover{background:var(--accent-bg)}.sk-dtable .sk-cell-name{font-weight:550;display:flex;align-items:center;gap:11px}.sk-dtable .sk-cell-mono{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.sk-dtable .sk-cell-sub{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);margin-top:3px}.sk-dtable .is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sk-dtable__head-inner{display:inline-flex;align-items:center;gap:5px}.sk-dtable__sort{display:inline-flex;color:var(--accent-bright)}.sk-dtable__sort-placeholder{color:var(--text-faint);opacity:.35}.sk-dtable-wrap{overflow-x:auto}.sk-dtable__loading{display:flex;align-items:center;justify-content:center;min-height:180px;color:var(--text-faint)}.sk-topbar{display:flex;align-items:center;gap:14px;min-height:60px;padding:10px 4px;margin-bottom:4px;border-bottom:1px solid var(--border-soft)}.sk-topbar__ico{color:var(--accent-bright);display:inline-flex;flex-shrink:0}.sk-topbar__titles{display:flex;align-items:baseline;gap:10px;min-width:0}.sk-topbar__title{margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.sk-topbar__meta{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.sk-topbar__spacer{flex:1}.sk-topbar__actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.sk-topbar__tabs{display:flex;align-items:center;gap:2px;margin-left:6px;flex:1 1 auto;min-width:0;overflow:hidden}.sk-topbar__tab{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:8px;font-size:13px;font-weight:450;color:var(--text-dim);text-decoration:none;white-space:nowrap;transition:background .14s,color .14s}.sk-topbar__tab svg{width:15px;height:15px}.sk-topbar__tab:hover{background:var(--surface-hover);color:var(--text)}.sk-topbar__tab.is-active{background:var(--accent-bg);color:var(--accent-bright);font-weight:500}.sk-topbar__more{flex-shrink:0;border:none;background:transparent;font:inherit;cursor:pointer}.sk-topbar__more[data-state=open]{background:var(--surface-hover);color:var(--text)}@media (max-width: 768px){.sk-topbar{flex-wrap:wrap}.sk-topbar__tabs{order:3;width:100%;margin-left:0}}.sk-spec-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:14px 15px}.sk-spec-card__label{font-size:11px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;font-family:var(--mono)}.sk-spec-card__value{font-size:15px;font-weight:600;color:var(--text);margin-top:8px}.sk-spec-card__sub{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:6px}.sk-info-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-top:1px solid var(--border-soft);font-size:13px}.sk-info-row:first-child{border-top:none}.sk-info-row .k{color:var(--text-faint);font-family:var(--mono);font-size:12px}.sk-info-row .v{font-family:var(--mono);color:var(--text);text-align:right;font-size:12.5px;overflow-wrap:anywhere}.sk-drawer__head{display:flex;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.sk-drawer__ico{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--text-dim)}.sk-drawer__title{font-weight:600;font-size:14.5px}.sk-drawer__sub{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:1px}.sk-drawer__body{flex:1;overflow:auto;min-height:0}.sk-resource-list{display:flex;flex-direction:column;border:1px solid var(--border-soft);border-radius:12px;background:var(--surface);overflow:hidden}.sk-resource-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-soft);background:var(--surface);transition:background .12s}.sk-resource-card:last-child{border-bottom:none}.sk-resource-card.is-clickable{cursor:pointer}.sk-resource-card.is-clickable:hover{background:var(--surface-2)}.sk-resource-card.is-selected{background:var(--accent-bg-soft)}.sk-resource-card__select{display:inline-flex;align-items:center}.sk-resource-card__icon{color:var(--accent-bright);display:inline-flex;flex-shrink:0}.sk-resource-card__identity{min-width:0;flex:1 1 auto}.sk-resource-card__title-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.sk-resource-card__title{font-weight:550;font-size:13.5px;color:var(--text)}.sk-resource-card__subtitle{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.sk-resource-card__meta{display:flex;align-items:center;gap:12px;margin-top:4px;flex-wrap:wrap}.sk-resource-card__meta-item{display:inline-flex;align-items:center;gap:4px}.sk-resource-card__meta-label{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);text-transform:uppercase}.sk-resource-card__meta-value{font-family:var(--mono);font-size:11.5px;color:var(--text-dim)}.sk-resource-card__status{flex-shrink:0}.sk-resource-card__actions{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.sk-resource-card__chevron{color:var(--text-faint);flex-shrink:0;margin-left:4px}.sk-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:220px;padding:32px;text-align:center;border:1px dashed var(--border);border-radius:14px;background:var(--surface)}.sk-error-state__icon{color:var(--danger);margin-bottom:14px}.sk-error-state__title{font-size:15px;font-weight:600;color:var(--text);margin:0 0 6px}.sk-error-state__message{font-size:13px;color:var(--text-dim);max-width:420px;margin:0 0 16px}.sk-search-filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sk-search-filter-bar__search{position:relative;flex:1 1 220px;min-width:180px}.sk-search-filter-bar__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none}.sk-search-filter-bar__input{padding-left:32px}.sk-search-filter-bar__clear{position:absolute;right:2px;top:50%;transform:translateY(-50%);color:var(--text-faint)}.sk-search-filter-bar__filters{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.sk-search-filter-bar__chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:7px;font-size:12.5px;font-weight:450;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border-soft);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.sk-search-filter-bar__chip:hover{background:var(--surface-3)}.sk-search-filter-bar__chip.is-active{color:var(--accent-bright);background:var(--accent-bg-soft);border-color:var(--accent-soft)}.sk-search-filter-bar__count{font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.is-active .sk-search-filter-bar__count{color:var(--accent-bright)}.sk-search-filter-bar__sort select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:6px 24px 6px 10px;border-radius:7px;border:1px solid var(--border-soft);background:var(--surface-2);color:var(--text-dim);font-size:12.5px;cursor:pointer}.copy-button.is-copied{color:var(--green)}.copy-button__label{margin-left:6px}.system-notices{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.system-notice{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:6px;border:1px solid transparent;font-size:12px;line-height:1.5;background:var(--bg-card)}.system-notice__icon{flex-shrink:0;margin-top:1px}.system-notice__body{flex:1;min-width:0}.system-notice__title{font-weight:600;color:var(--text-primary)}.system-notice__message{color:var(--text-secondary);margin-top:2px}.system-notice__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.system-notice__action{height:auto;min-width:0;padding:4px 8px;font-size:12px;gap:4px}.system-notice__dismiss{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:inherit;opacity:.6;cursor:pointer;border-radius:4px;transition:opacity .15s ease,background .15s ease}.system-notice__dismiss:hover{opacity:1;background:#ffffff14}.system-notice--warning{background:#f5b9451f;border-color:#f5b94538;color:#f5b945}.system-notice--warning .system-notice__title,.system-notice--warning .system-notice__message,.system-notice--warning .system-notice__icon{color:#f5b945}.system-notice--info{background:#49c7f01f;border-color:#49c7f038;color:#49c7f0}.system-notice--info .system-notice__title,.system-notice--info .system-notice__message,.system-notice--info .system-notice__icon{color:#49c7f0}.system-notice--error{background:#fb6f6f1f;border-color:#fb6f6f38;color:#fb6f6f}.system-notice--error .system-notice__title,.system-notice--error .system-notice__message,.system-notice--error .system-notice__icon{color:#fb6f6f}@media (max-width: 768px){.system-notice{flex-wrap:wrap}.system-notice__actions{width:100%;justify-content:flex-end;margin-top:8px}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.auth-card{width:100%;max-width:400px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:40px}.auth-header{text-align:center;margin-bottom:32px}.auth-header .brand-logo{width:48px;height:48px;margin:0 auto 16px}.auth-header h1{font-size:24px;font-weight:700;margin-bottom:8px}.auth-header p{color:var(--text-secondary)}.auth-footer{text-align:center;margin-top:24px;color:var(--text-secondary)}.auth-footer a{color:var(--accent-primary);font-weight:500}.auth-footer a:hover{text-decoration:underline}.sso-providers{display:flex;flex-direction:column;gap:12px}.btn-sso{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:12px 16px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);color:var(--text-primary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-sso:hover:not(:disabled){border-color:var(--border-active);background:var(--bg-hover)}.btn-sso:disabled{opacity:.6;cursor:not-allowed}.btn-sso svg{flex-shrink:0}.sso-divider{display:flex;align-items:center;gap:16px;margin:24px 0;color:var(--text-tertiary);font-size:12px}.sso-divider:before,.sso-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.sso-loading{display:flex;justify-content:center;margin-bottom:16px}.sso-loading .spinning{animation:spin 1s linear infinite}.dashboard-page{display:flex;flex-direction:column;gap:24px;min-height:100%}.dashboard-page>.top-bar{margin-bottom:0}.top-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.server-identity h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:10px;color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.srv-switch{display:inline-flex;align-items:center;gap:10px;padding:2px 4px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:var(--text-primary)}.srv-switch:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.srv-switch__name{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.srv-switch__chev{color:var(--text-faint);transition:transform .15s ease;flex-shrink:0}.srv-switch--open .srv-switch__chev{transform:rotate(180deg)}.env-menu{min-width:280px;padding:7px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--text)}.env-menu__head{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-ghost);padding:7px 10px 5px}.env-opt{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:none;background:transparent;border-radius:9px;text-align:left;cursor:pointer;transition:background .1s ease}.env-opt:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.env-opt:hover{background:var(--surface-3)}.env-opt__dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.env-opt__dot--online{background:var(--green);box-shadow:0 0 6px var(--green)}.env-opt__dot--offline{background:var(--red)}.env-opt__body{flex:1;min-width:0;display:flex;flex-direction:column}.env-opt__name{font-weight:600;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.env-opt__meta{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);margin-top:1px}.env-opt__check{margin-left:auto;color:var(--accent-bright);flex-shrink:0;display:inline-flex}.conn-status{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.conn-status .conn-status__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.conn-status--live .conn-status__dot{background:#3ddc97;box-shadow:0 0 8px #3ddc97}.conn-status--down .conn-status__dot{background:#f5b945;box-shadow:0 0 8px #f5b945}.server-details{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:12px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.server-details .detail-separator{color:var(--border-default);-webkit-user-select:none;user-select:none}.top-bar-right{display:flex;align-items:center;gap:20px}.clock-widget{display:flex;flex-direction:column;align-items:flex-end}.clock-time{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.clock-zone{color:var(--accent-primary);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.grid-container{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;max-width:1800px;margin:0 auto;width:100%}.metric-tile{grid-column:span 3;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;padding:20px;position:relative;overflow:hidden}.metric-tile:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--accent-primary),transparent);opacity:.5}@media (max-width: 1280px){.metric-tile{grid-column:span 6}}@media (max-width: 768px){.metric-tile{grid-column:span 12}}.dash-kpi{grid-column:span 3}@media (max-width: 1280px){.dash-kpi{grid-column:span 6}}@media (max-width: 768px){.dash-kpi{grid-column:span 12}}.tile-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tile-title{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.05em}.tile-icon.cpu{color:var(--accent-primary)}.tile-icon.memory{color:#3ddc97}.tile-icon.network{color:#f5b945}.tile-icon.disk{color:#fb6f6f}.tile-val{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.tile-val-unit{font-size:14px;font-weight:400;color:var(--text-tertiary);margin-left:4px}.tile-sub{font-size:12px;color:var(--text-tertiary);margin-top:8px;display:flex;justify-content:space-between}.trend-up{color:#f5b945}.trend-down{color:#3ddc97}.chart-panel{grid-column:span 8;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;padding:20px;min-height:450px;display:flex;flex-direction:column}.chart-panel .metrics-graph-card{background:transparent;border:none;padding:0;margin-bottom:0;height:100%;display:flex;flex-direction:column}.chart-panel .metrics-graph-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.chart-panel .graph-title{font-weight:600;font-size:14px;color:var(--text-primary)}.chart-panel .metrics-chart-container{flex-grow:1;margin-bottom:0}@media (max-width: 1024px){.chart-panel{grid-column:span 12;min-height:400px}}@media (max-width: 768px){.chart-panel .metrics-graph-header{flex-wrap:wrap;gap:12px}}.spec-panel{grid-column:span 4;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;padding:20px;display:flex;flex-direction:column;gap:16px}@media (max-width: 1024px){.spec-panel{grid-column:span 12}}.spec-panel-title{font-size:12px;text-transform:uppercase;color:var(--text-tertiary);font-weight:600;letter-spacing:.05em}.spec-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--border-subtle);padding-bottom:12px;font-size:12px}.spec-row:last-child{border:none;padding-bottom:0}.spec-label{color:var(--text-tertiary)}.spec-data{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary);text-align:right;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-action{width:100%;padding:12px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-weight:600;font-size:12px;cursor:pointer;text-align:left;display:flex;justify-content:space-between;align-items:center;transition:all .15s ease}.btn-action:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn-action:hover{border-color:var(--accent-primary);background:var(--accent-glow)}.btn-action svg{color:var(--text-tertiary)}.table-panel{grid-column:span 8;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;overflow:hidden}@media (max-width: 1024px){.table-panel{grid-column:span 12}}.activity-panel{grid-column:span 4;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;padding:20px;display:flex;flex-direction:column;min-width:0}@media (max-width: 1024px){.activity-panel{grid-column:span 12}}.activity-panel__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.activity-panel__title{font-size:12px;text-transform:uppercase;color:var(--text-tertiary);font-weight:600;letter-spacing:.05em}.activity-panel__link{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-tertiary);text-decoration:none;border-radius:4px;transition:color .15s ease}.activity-panel__link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.activity-panel__link:hover{color:var(--accent-primary)}.activity-panel__empty{padding:20px 0;text-align:center;font-size:12px;color:var(--text-tertiary)}.table-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-subtle);font-weight:600;color:var(--text-primary)}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{text-align:left;padding:16px 20px;background:var(--bg-hover);color:var(--text-tertiary);font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.05em}.data-table td{padding:16px 20px;border-bottom:1px solid var(--border-subtle);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-secondary)}.data-table tr:hover{background:var(--bg-hover)}.app-name-cell{display:flex;align-items:center;gap:8px;color:var(--text-primary)}.app-name-link{color:var(--text-primary);text-decoration:none;border-radius:4px}.app-name-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.app-name-link:hover{color:var(--accent-primary);text-decoration:underline}.app-icon-mini{display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.badge{padding:2px 8px;border-radius:4px;font-size:10px;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.badge-running{color:#3ddc97;background:#3ddc971f;border:1px solid rgba(61,220,151,.22)}.badge-warning{color:#f5b945;background:#f5b9451f;border:1px solid rgba(245,185,69,.22)}.badge-stopped{color:#fb6f6f;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22)}@media (max-width: 768px){.top-bar{flex-direction:column;align-items:flex-start;gap:16px}.server-details{flex-wrap:wrap;gap:12px}.clock-widget{text-align:left}.data-table th:nth-child(3),.data-table th:nth-child(5),.data-table td:nth-child(3),.data-table td:nth-child(5){display:none}}@media (max-width: 640px){.server-details{flex-direction:column;gap:4px}.metric-tile{padding:16px}.tile-val{font-size:1.5rem}}.refresh-control{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding-left:20px;border-left:1px solid var(--border-subtle)}.refresh-control .refresh-select,.refresh-control .btn-refresh{width:100%}.refresh-select{background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;padding:4px 8px;cursor:pointer;outline:none}.refresh-select:hover{border-color:var(--accent-primary)}.refresh-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.btn-refresh{display:flex;align-items:center;justify-content:center;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);padding:8px;cursor:pointer;transition:all .15s ease}.btn-refresh:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn-refresh:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-glow)}@media (max-width: 768px){.refresh-control{width:100%;justify-content:flex-start;margin-left:0;padding-left:0}}.applications-page{display:flex;flex-direction:column;gap:16px}.apps-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1024px){.apps-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.apps-kpis{grid-template-columns:1fr}}.apps-list-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.apps-list-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--border-soft)}.apps-search{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:0 12px;min-width:230px;transition:border-color .15s ease}.apps-search:focus-within{border-color:var(--accent-primary)}.apps-search svg{color:var(--text-faint);flex-shrink:0}.apps-search input{flex:1;background:none;border:none;padding:7px 0;color:var(--text);font-size:13px;outline:none;box-shadow:none;min-width:0}.apps-search input::placeholder{color:var(--text-faint)}.apps-table th:last-child,.apps-table td:last-child{text-align:right}.apps-table .sk-cell-name>div{min-width:0}.apps-type-ico{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;font-family:var(--mono);font-size:14px;font-weight:700}.apps-type-chip{display:inline-flex;align-items:center;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;border:1px solid;white-space:nowrap}.apps-domain{display:flex;flex-direction:column;gap:3px;font-family:var(--mono);font-size:12px}.apps-domain a{display:inline-flex;align-items:center;gap:5px;color:var(--text-dim);text-decoration:none}.apps-domain a svg{color:var(--text-faint);flex-shrink:0}.apps-domain a:hover{color:var(--accent-bright)}.apps-none{font-family:var(--mono);font-size:12px;color:var(--text-ghost)}.apps-res{display:flex;align-items:center;gap:8px}.apps-res+.apps-res{margin-top:6px}.apps-res .sk-gauge{width:88px;flex-shrink:0}.apps-res__label{width:28px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);flex-shrink:0}.apps-res__val{width:36px;font-family:var(--mono);font-size:11px;color:var(--text-dim);text-align:right;flex-shrink:0}.is-faded{opacity:.45}.apps-actions-cell{display:inline-flex;align-items:center;justify-content:flex-end;gap:2px;white-space:nowrap}.apps-icon-action{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:7px;color:var(--text-faint);cursor:pointer;transition:background .12s,color .12s}.apps-icon-action:hover{background:var(--surface-3);color:var(--text)}.apps-icon-action:disabled{opacity:.5;pointer-events:none}.apps-icon-action--green:hover{background:var(--green-bg);color:var(--green)}.apps-icon-action--red:hover{background:var(--red-bg);color:var(--red)}.app-logs-modal .app-logs-controls{display:flex;justify-content:flex-end;margin-bottom:12px}.app-logs-modal .app-logs-select{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 10px;color:var(--text);font-size:13px;cursor:pointer}.app-logs-modal .app-logs-select:focus{outline:none;border-color:var(--accent-primary)}.app-logs-modal .log-viewer{background:var(--bg-code);border:1px solid var(--border-soft);border-radius:var(--radius);color:var(--text-code);font-family:var(--mono);font-size:12.5px}.app-type-badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-bright);background:var(--accent-bg);padding:2px 7px;border-radius:5px}.port-status{font-size:10px;margin-left:8px}.port-status.accessible{color:#3ddc97}.port-status.not-accessible{color:#fb6f6f}.panel-empty{text-align:center;padding:24px;color:var(--text-faint);font-size:13px}.btn-icon{padding:8px!important}.btn-icon svg{margin:0!important}.app-detail-page{display:flex;flex-direction:column;gap:16px}.app-detail-page--wide{width:100%;max-width:none}.app-detail-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.app-detail-breadcrumbs{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;color:var(--text-faint)}.app-detail-breadcrumbs a{color:var(--text-faint);text-decoration:none;transition:color .2s ease}.app-detail-breadcrumbs a:hover{color:var(--accent-bright)}.app-detail-breadcrumbs>span{color:var(--text-ghost)}.app-detail-breadcrumbs .current{color:var(--text-dim);font-weight:500}.app-detail-actions{display:flex;gap:8px}.app-detail-header{position:relative;display:flex;align-items:center;gap:16px;padding:20px 22px;background:linear-gradient(120deg,var(--surface) 0%,var(--surface-2) 100%);border:1px solid var(--border-soft);border-radius:var(--radius-lg)}.app-detail-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);background:radial-gradient(420px 200px at 0% 0%,var(--accent-bg-soft),transparent 70%);pointer-events:none}.app-detail-icon{position:relative;width:52px;height:52px;border-radius:13px;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px;font-weight:700;color:#fff}.app-detail-icon img{width:100%;height:100%;object-fit:contain;border-radius:13px}.app-detail-icon svg{color:currentColor}.app-detail-title-block{flex:1;min-width:0}.app-detail-title-block h1{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:0;font-size:21px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.app-detail-title-block h1 .sk-tag svg{margin-left:4px}.app-detail-subtitle{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:4px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.app-detail-subtitle a{color:var(--accent-bright);text-decoration:none}.app-detail-subtitle a:hover{text-decoration:underline}.app-detail-subtitle .separator{color:var(--text-ghost)}.app-status-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:6px;font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:.02em;white-space:nowrap}.app-status-badge.running{background:var(--green-bg);color:var(--green)}.app-status-badge.stopped{background:var(--surface-3);color:var(--text-faint)}.app-status-badge.error{background:var(--red-bg);color:var(--red)}.pulse-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.running .pulse-dot{box-shadow:0 0 6px currentColor;animation:pulse-green 2s ease-in-out infinite}@keyframes pulse-green{0%,to{box-shadow:0 0 #3ddc9766}50%{box-shadow:0 0 0 4px #3ddc9700}}.app-detail-tabs{display:flex;gap:2px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);border-radius:0;padding:0;overflow-x:auto}.app-detail-tabs::-webkit-scrollbar{height:0}.app-detail-tab{display:flex;align-items:center;gap:7px;padding:11px 14px;background:transparent;border:none;border-radius:0;border-bottom:2px solid transparent;color:var(--text-faint);font-size:13px;font-weight:400;cursor:pointer;white-space:nowrap;transition:color .14s}.app-detail-tab svg{color:var(--text-ghost);transition:color .14s;flex-shrink:0}.app-detail-tab:hover{background:none;color:var(--text-dim)}.app-detail-tab:hover svg{color:var(--text-faint)}.app-detail-tab.active{background:none;color:var(--text);border-bottom-color:var(--accent);font-weight:500}.app-detail-tab.active svg{color:var(--accent-bright)}.app-detail-content{min-height:400px}.app-overview-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}@media (max-width: 1024px){.app-overview-grid{grid-template-columns:1fr}}.app-overview-grid:not(:has(.app-overview-right)){grid-template-columns:1fr}.app-overview-left,.app-overview-right{display:flex;flex-direction:column;gap:16px}.app-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.app-panel-header{display:flex;align-items:center;justify-content:flex-start;gap:7px;padding:12px 17px;border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.app-panel-header svg{width:13px;height:13px;color:var(--accent-bright)}.app-panel-header-actions{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:400;text-transform:none;letter-spacing:normal}.app-panel-body{padding:16px 17px}.app-panel-body .hint:last-child{margin-bottom:0}.app-panel-body .app-detail-actions{flex-wrap:wrap;align-items:center;margin-bottom:12px}.app-panel-body .app-detail-actions:last-child{margin-bottom:0}.app-panel-body .app-info-grid+.app-detail-actions,.app-panel-body .app-info-grid+.hint{margin-top:12px}.app-panel-hint{margin:0 0 12px;font-size:13px;line-height:1.5;color:var(--text-dim)}.app-panel-hint:last-child{margin-bottom:0}.app-info-grid{display:flex;flex-direction:column;gap:0}.app-info-item{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-top:1px solid var(--border-soft)}.app-info-item:first-child{border-top:none;padding-top:0}.app-info-item:last-child{padding-bottom:0}.app-info-label{font-family:var(--mono);font-size:12px;color:var(--text-faint);min-width:0;overflow-wrap:anywhere}.app-info-value{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:12.5px;color:var(--text);text-align:right;min-width:0;overflow-wrap:anywhere}.app-info-value a{color:var(--accent-bright);text-decoration:none}.app-info-value a:hover{text-decoration:underline}.app-path-value{display:inline-block;font-family:var(--mono);font-size:11.5px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border-soft);padding:3px 8px;border-radius:5px;overflow-wrap:anywhere}.port-indicator{font-family:var(--mono);font-size:11px;color:var(--red)}.port-indicator.accessible{color:var(--green)}.app-detail-page .tabs{gap:2px;border-bottom:1px solid var(--border-soft);padding-bottom:8px;margin-bottom:20px}.app-detail-page .tab{padding:7px 12px;border-bottom:none;margin-bottom:0;border-radius:8px;color:var(--text-dim);font-size:13px;font-weight:400}.app-detail-page .tab:hover{background:var(--surface-hover);color:var(--text)}.app-detail-page .tab.active,.app-detail-page .tab[data-state=active]{background:var(--accent-bg);color:var(--accent-bright);font-weight:500}.app-detail-page .app-eyebrow,.app-detail-page h3.app-eyebrow{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.app-detail-page .section-header{margin-bottom:16px}.app-detail-page .section-header h3{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.app-detail-page .card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:none}.app-detail-page .card>h3,.app-detail-page .card .card-header-row h3{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.app-detail-page .card h4{font-size:12px;font-weight:600;color:var(--text)}.app-detail-page .card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.app-detail-page .card-header-row h3{margin:0}.app-detail-page .card-actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}.app-detail-page .info-item{padding:10px 0;border-bottom:1px solid var(--border-soft)}.app-detail-page .info-item:last-child{border-bottom:none}.app-detail-page .info-label{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.app-detail-page .info-value{font-family:var(--mono);font-size:12.5px;color:var(--text);overflow-wrap:anywhere;text-align:right}.app-detail-page .detection-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--text-faint)}.app-detail-page .detection-value{font-size:13px;font-weight:500;color:var(--text)}.app-detail-page .deployments-list{display:flex;flex-direction:column}.app-detail-page .deployment-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border-soft)}.app-detail-page .deployment-item:first-child{border-top:none}.app-detail-page .deployment-item.current{background:#3ddc970d;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:4px}.app-detail-page .deployment-item>.btn,.app-detail-page .deployment-item>button{margin-left:auto}.app-detail-page .deployment-info{display:flex;align-items:center;gap:8px}.app-detail-page .deployment-version{font-family:var(--mono);font-size:11.5px;color:var(--accent-bright);background:var(--accent-bg);padding:2px 7px;border-radius:5px}.app-detail-page .deployment-meta{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.app-detail-page .deployment-date{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.app-detail-page .domains-list{display:flex;flex-direction:column}.app-detail-page .domain-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--border-soft)}.app-detail-page .domain-item:first-child{border-top:none;padding-top:0}.app-detail-page .domain-item:last-child{padding-bottom:0}.app-detail-page .domain-item a{font-family:var(--mono);font-size:12.5px;color:var(--accent-bright);text-decoration:none;overflow-wrap:anywhere}.app-detail-page .domain-item a:hover{text-decoration:underline}.app-detail-page .ssl-badge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--green-bg);color:var(--green);padding:2px 7px;border-radius:5px;flex-shrink:0}.app-detail-page .resource-bar-container{display:flex;flex-direction:column;gap:7px}.app-detail-page .resource-bar-container+.resource-bar-container{margin-top:16px}.app-detail-page .resource-bar-header{display:flex;justify-content:space-between;align-items:center}.app-detail-page .resource-bar-label{font-size:13px;color:var(--text-dim)}.app-detail-page .resource-bar-value{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--text)}.app-detail-page .resource-bar-track{height:5px;background:var(--surface-3);border-radius:3px;overflow:hidden}.app-detail-page .resource-bar-fill{display:block;height:100%;border-radius:3px;transition:width .6s cubic-bezier(.4,0,.2,1)}.app-detail-page .resource-bar-fill.cpu{background:var(--accent-bright)}.app-detail-page .resource-bar-fill.ram{background:var(--cyan)}.app-detail-page .resource-hint{margin:12px 0 0;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.app-detail-page .diag-status{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-sm)}.app-detail-page .diag-status.healthy{background:var(--green-bg)}.app-detail-page .diag-status.unhealthy{background:var(--red-bg)}.app-detail-page .diag-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;font-family:var(--mono);font-size:14px;font-weight:700;flex-shrink:0}.app-detail-page .diag-icon.healthy{color:var(--green)}.app-detail-page .diag-icon.unhealthy{color:var(--red)}.app-detail-page .diag-text{min-width:0}.app-detail-page .diag-text h4{margin:0;font-size:13px;font-weight:600;color:var(--text)}.app-detail-page .diag-text p{margin:2px 0 0;font-family:var(--mono);font-size:11px;color:var(--text-dim)}.app-detail-page .diag-issues{margin:12px 0 0;padding-left:20px;font-size:12.5px;color:var(--red)}.app-detail-page .diag-issues li{margin-bottom:4px}.app-detail-page .diag-issues li:last-child{margin-bottom:0}.app-detail-page .packages-list{display:flex;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.app-detail-page .package-item{background:transparent;border:none;border-radius:0;box-shadow:none;padding:11px 16px}.app-detail-page .package-item+.package-item{border-top:1px solid var(--border-soft)}.app-detail-page .package-name{font-family:var(--mono);font-size:12.5px;color:var(--accent-bright)}.app-detail-page .package-version{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.app-detail-page .install-form{margin-bottom:16px}.app-detail-page .code-editor{background:var(--bg-code);border-color:var(--border-soft);color:var(--text-code);font-family:var(--mono);font-size:12px}.app-detail-page .command-output{background:var(--bg-code);border-color:var(--border-soft);border-radius:var(--radius)}.app-detail-page .command-output pre{color:var(--text-code);font-size:12px}.app-detail-page .command-output.error{border-color:#fb6f6f66}.app-detail-page .command-output .stderr{color:var(--red)}.app-detail-page .log-viewer{background:var(--bg-code);border:1px solid var(--border-soft);border-radius:var(--radius);color:var(--text-code);font-family:var(--mono);font-size:12.5px}.app-detail-page .logs-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.app-detail-page .logs-header h3{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.app-detail-page .logs-controls{display:flex;align-items:center;gap:12px}.app-detail-page .logs-controls .hint{margin:0;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.app-detail-page .checkbox-inline{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-dim);cursor:pointer;white-space:nowrap}.app-detail-page .checkbox-inline input{accent-color:var(--accent-primary)}.app-detail-page .modal .form-group>label:not(.checkbox-label){font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.deploy-tab{display:flex;flex-direction:column;gap:20px}.deploy-tab .deploy-setup{padding:32px 0}.deploy-tab .deploy-header{margin-bottom:0}.deploy-tab .deploy-status-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}@media (max-width: 768px){.deploy-tab .deploy-status-card{flex-direction:column;align-items:flex-start}}.deploy-tab .deploy-repo-info{display:flex;align-items:center;gap:12px}.deploy-tab .deploy-repo-info svg{flex-shrink:0;color:var(--text-faint)}.deploy-tab .deploy-repo-info>div{display:flex;flex-direction:column;gap:4px}.deploy-tab .deploy-repo-info .repo-url{font-family:var(--mono);font-size:12px;color:var(--text);word-break:break-all}.deploy-tab .deploy-repo-info .repo-branch{font-family:var(--mono);font-size:11px;color:var(--accent-bright)}.deploy-tab .deploy-actions{display:flex;gap:8px;flex-shrink:0}.deploy-tab .deploy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.deploy-tab .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.deploy-tab .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary)}.deploy-tab .checkbox-label span{font-size:12px;color:var(--text)}.deploy-tab .form-help{display:block;margin-top:4px;font-size:10px;color:var(--text-faint)}.deploy-tab textarea{font-family:var(--mono);font-size:12px;resize:vertical;min-height:80px}.deploy-tab .text-danger{color:#fb6f6f;font-size:12px}.deploy-tab .text-muted{color:var(--text-faint);font-size:12px}@media (max-width: 768px){.apps-list-head{flex-direction:column;align-items:stretch}.apps-list-head .apps-search{min-width:0}.app-detail-header{flex-wrap:wrap}}.container-ops{display:flex;flex-direction:column;gap:24px}.container-ops__actions{display:flex;gap:8px;margin-top:12px}.container-ops__field{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--border-soft)}.container-ops__field:first-of-type{border-top:none}.container-ops__field-text{display:flex;flex-direction:column;gap:2px;min-width:0}.container-ops__field-hint{font-size:12px;color:var(--text-faint);line-height:1.4}.container-ops__num{max-width:120px;text-align:right}.container-ops__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px}@media (max-width: 640px){.container-ops__grid{grid-template-columns:1fr}}.container-ops__input{display:flex;flex-direction:column;gap:6px}.container-ops__input label{font-size:12.5px;color:var(--text-dim)}.container-ops__manual{display:flex;align-items:flex-end;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}.container-ops__manual .container-ops__input{flex:1;max-width:200px}.waf-panel{display:flex;flex-direction:column;gap:24px}.waf-panel__banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-2, var(--bg-card))}.waf-panel__banner-text{display:flex;flex-direction:column;gap:2px;min-width:0}.waf-panel__banner-text span{font-size:12.5px;color:var(--text-dim);line-height:1.4}.waf-panel__mode{display:flex;flex-direction:column;gap:8px;margin-top:12px}.waf-panel__mode .sk-seg{align-self:flex-start}.waf-panel__mode-hint{font-size:12.5px;color:var(--text-dim);line-height:1.4}.waf-panel__rules{display:flex;flex-direction:column;gap:6px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}.waf-panel__rules-input{display:flex;align-items:center;gap:8px;margin-top:4px}.waf-panel__rules-input .input,.waf-panel__rules-input input{max-width:200px}.waf-panel__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.waf-panel__chip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;border:1px solid var(--border-soft);border-radius:9999px;background:var(--surface-2, var(--bg-card));font-size:12.5px}.waf-panel__chip-remove{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;width:18px;height:18px;background:transparent;color:var(--text-faint);cursor:pointer;transition:color .15s ease,background .15s ease}.waf-panel__chip-remove:hover{color:var(--danger, #ef4444);background:var(--border-soft)}.waf-panel__table-wrap{overflow-x:auto}.waf-panel__table{width:100%;border-collapse:collapse;font-size:13px}.waf-panel__table th,.waf-panel__table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--border-soft);vertical-align:top}.waf-panel__table th{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.waf-panel__table tbody tr:last-child td{border-bottom:none}.waf-panel__msg{max-width:320px}.waf-panel__uri{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.waf-panel__time{white-space:nowrap;color:var(--text-dim)}.docker-page-new{padding:0}.docker-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.docker-page-title h2{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.docker-page-subtitle{color:var(--text-secondary);font-size:12px;margin-top:4px}.docker-page-actions{display:flex;align-items:center;gap:12px}.docker-page-actions .server-selector{margin-right:8px}.docker-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}@media (max-width: 1024px){.docker-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.docker-stats-row{grid-template-columns:1fr}}.docker-stat-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:20px}.docker-stat-label{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:8px;letter-spacing:.05em}.docker-stat-value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:24px;font-weight:700;color:var(--text-primary)}.docker-stat-meta{font-size:10px;color:var(--text-tertiary);margin-top:4px;display:flex;align-items:center;gap:12px}.docker-stat-running{color:#3ddc97}.docker-stat-running:before{content:"";display:inline-block;width:6px;height:6px;background:#3ddc97;border-radius:50%;margin-right:4px}.docker-stat-stopped{color:var(--text-tertiary)}.docker-stat-stopped:before{content:"";display:inline-block;width:6px;height:6px;background:var(--text-tertiary);border-radius:50%;margin-right:4px}.docker-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden}.docker-panel-header{padding:16px 20px;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center}.docker-panel-tabs{display:flex;gap:24px}.docker-panel-tab{color:var(--text-tertiary);font-size:12px;font-weight:500;cursor:pointer;padding-bottom:4px;border-bottom:2px solid transparent;transition:all .2s}.docker-panel-tab:hover{color:var(--text-primary)}.docker-panel-tab.active{color:var(--text-primary);border-color:var(--accent-primary)}.docker-panel-actions{display:flex;gap:8px}.docker-table-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border-subtle);background:var(--bg-hover)}.docker-filter-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer}.docker-filter-toggle input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-primary)}.docker-search{background:var(--bg-card);border:1px solid var(--border-subtle);padding:8px 12px;border-radius:4px;color:var(--text-primary);font-size:10px;width:200px}.docker-search::placeholder{color:var(--text-tertiary)}.docker-search:focus{outline:none;border-color:var(--accent-primary)}.docker-table{width:100%;border-collapse:collapse;font-size:12px}.docker-table th{text-align:left;padding:12px 20px;background:var(--bg-hover);color:var(--text-tertiary);font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.docker-table td{padding:16px 20px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.docker-table tr:hover{background:var(--bg-hover)}.docker-table tr:last-child td{border-bottom:none}.docker-container-name{font-weight:600;color:var(--text-primary);font-size:12px;display:block;margin-bottom:4px}.docker-container-id{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--accent-primary);font-size:10px}.docker-image-tag{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-secondary);font-size:10px;background:var(--bg-hover);padding:4px 8px;border-radius:4px}.docker-status-pill{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:600;padding:4px 8px;border-radius:9999px}.docker-status-pill.running{background:#3ddc971a;color:#3ddc97;border:1px solid rgba(61,220,151,.2)}.docker-status-pill.exited{background:#fb6f6f1a;color:#fb6f6f;border:1px solid rgba(251,111,111,.2)}.docker-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.docker-status-detail{font-size:10px;color:var(--text-tertiary);margin-top:4px}.docker-ports{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary);font-size:10px;line-height:1.6}.docker-ports.faded{opacity:.4}.docker-res-container{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-tertiary);margin-bottom:4px}.docker-res-container:last-child{margin-bottom:0}.docker-res-label{width:28px;flex-shrink:0}.docker-res-track{width:50px;height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden}.docker-res-fill{height:100%;border-radius:2px;transition:width .3s ease}.docker-res-value{width:32px;text-align:right;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.faded{opacity:.3}.docker-actions-cell{text-align:right;white-space:nowrap}.docker-icon-action{background:transparent;border:1px solid transparent;color:var(--text-tertiary);width:28px;height:28px;border-radius:4px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;padding:0}.docker-icon-action:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-subtle)}.docker-icon-action:disabled{opacity:.5;cursor:not-allowed}.docker-icon-action svg{width:14px;height:14px}.docker-empty{text-align:center;padding:48px;color:var(--text-secondary)}.docker-empty h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.docker-empty p{margin:0;font-size:12px}.docker-loading{text-align:center;padding:48px;color:var(--text-secondary)}.docker-list{display:flex;flex-direction:column;gap:12px}.docker-item{display:flex;align-items:center;gap:20px;padding:16px 20px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.docker-item:hover{border-color:var(--border-active)}.docker-item-info{display:flex;align-items:center;justify-content:flex-start;gap:16px;flex:1;min-width:0}.docker-item-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--bg-hover);border-radius:8px;color:#2496ed}.docker-item-icon.image-icon{color:#b07bf5}.docker-item-icon.network-icon{color:#3ddc97}.docker-item-icon.volume-icon{color:#f5b945}.docker-item-details{min-width:0}.docker-item-details h3{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docker-item-meta{display:flex;align-items:center;justify-content:flex-start;gap:12px;font-size:12px;color:var(--text-tertiary);flex-wrap:wrap}.docker-item-meta .mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;background:var(--bg-hover);padding:2px 6px;border-radius:4px}.docker-item-status{flex-shrink:0}.docker-item-actions{display:flex;gap:8px;flex-shrink:0}.exec-modal-body{display:flex;flex-direction:column;height:400px}.exec-output{flex:1;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:16px;overflow-y:auto;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;margin-bottom:12px}.exec-welcome{color:var(--text-secondary);text-align:center;padding:32px 0}.exec-welcome p{margin-bottom:8px}.exec-welcome code{background:var(--bg-hover);padding:4px 8px;border-radius:4px;color:var(--accent-primary)}.exec-line{margin-bottom:8px}.exec-line pre{margin:0;white-space:pre-wrap;word-break:break-all}.exec-line.exec-command{color:var(--accent-primary);font-weight:500}.exec-line.exec-output{color:var(--text-primary)}.exec-line.exec-error{color:#fb6f6f}.exec-line.exec-info{color:var(--text-tertiary);font-size:10px}.exec-line.exec-loading{color:var(--text-secondary);display:flex;align-items:center;gap:8px}.spinner-inline{display:inline-block;width:14px;height:14px;border:2px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}.exec-input-form{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 12px}.exec-input-form:focus-within{border-color:var(--accent-primary)}.exec-prompt{color:var(--accent-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:600}.exec-input{flex:1;border:none;background:transparent;color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;outline:none}.exec-input::placeholder{color:var(--text-tertiary)}.exec-input:disabled{opacity:.5}.docker-page{padding:40px}@media (max-width: 768px){.docker-page{padding:20px}}.docker-page .page-header{margin-bottom:24px}.docker-page .page-header .page-header-content h1{font-size:24px;font-weight:600;margin:0 0 4px}.docker-page .page-header .page-header-content .page-description{color:var(--text-secondary);margin:0}.docker-unavailable{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;max-width:600px;margin:0 auto}.docker-unavailable .docker-unavailable-icon{width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:#2496ed1a;border-radius:12px;margin-bottom:24px}.docker-unavailable .docker-unavailable-icon svg{stroke:#2496ed;opacity:.6}.docker-unavailable h2{font-size:20px;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.docker-unavailable .docker-unavailable-message{color:var(--text-secondary);font-size:14px;margin:0 0 16px}.docker-unavailable .docker-unavailable-details{width:100%;margin-bottom:24px}.docker-unavailable .docker-unavailable-details code{display:block;padding:12px 16px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary);word-break:break-all;text-align:left}.docker-unavailable .docker-unavailable-help{width:100%;padding:20px;background:var(--bg-hover);border-radius:8px;text-align:left;margin-bottom:24px}.docker-unavailable .docker-unavailable-help h4{font-size:12px;font-weight:600;margin:0 0 12px;color:var(--text-primary)}.docker-unavailable .docker-unavailable-help ul{margin:0;padding-left:20px}.docker-unavailable .docker-unavailable-help ul li{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.docker-unavailable .docker-unavailable-help ul li:last-child{margin-bottom:0}.docker-unavailable .btn{display:inline-flex;align-items:center;gap:8px}.docker-unavailable .btn svg{width:16px;height:16px}.dx-page{display:flex;flex-direction:column;gap:12px}.dx-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.dx-stat{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;transition:all .2s ease}.dx-stat:hover{border-color:var(--border-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.dx-stat[data-kind=containers] .dx-stat-icon{color:#49c7f0;background:#49c7f01f}.dx-stat[data-kind=images] .dx-stat-icon{color:#b07bf5;background:#b07bf51f}.dx-stat[data-kind=volumes] .dx-stat-icon{color:#3ddc97;background:#3ddc971f}.dx-stat[data-kind=networks] .dx-stat-icon{color:#f5b945;background:#f5b9451f}.dx-stat-icon{width:40px;height:40px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dx-stat-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.dx-stat-label{font-size:9px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.dx-stat-value{font-size:24px;font-weight:600;color:var(--text-primary);line-height:1}.dx-stat-meta{display:flex;gap:8px;margin-top:2px;flex-wrap:wrap}.dx-stat-sub{font-size:10px;color:var(--text-tertiary)}.dx-pill{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:9999px;font-size:10px;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary)}.dx-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary)}.dx-pill.running{background:#3ddc971f;color:#3ddc97}.dx-pill.running .dot{background:#3ddc97}.dx-pill.stopped{background:var(--bg-tertiary);color:var(--text-tertiary)}.dx-tabs{display:flex;gap:4px;padding:4px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;overflow-x:auto;scrollbar-width:thin}.dx-tab{background:transparent;border:none;padding:8px 16px;border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.dx-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.dx-tab.active{background:var(--accent-glow);color:var(--accent-primary)}.dx-panel{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;overflow:hidden;min-height:400px}.dx-tab-pane{padding:12px}.dx-tab-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.dx-tab-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dx-container-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.dx-container-card{position:relative;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:8px;padding:12px 16px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:all .2s ease;overflow:hidden}.dx-container-card.is-running{border-color:#3ddc9766}.dx-container-card.is-stopped{border-color:var(--border-default)}.dx-container-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.dx-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.dx-card-title{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.dx-card-title h4{margin:0;font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dx-status-dot.running{background:#3ddc97;box-shadow:0 0 0 3px #3ddc9729}.dx-status-dot.stopped{background:var(--text-tertiary)}.dx-status-pill{display:inline-flex;padding:1px 8px;border-radius:9999px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:var(--bg-tertiary);color:var(--text-tertiary)}.dx-status-pill.running{background:#3ddc9724;color:#3ddc97}.dx-status-pill.stopped{background:var(--bg-tertiary);color:var(--text-tertiary)}.dx-card-image{display:flex;align-items:center;gap:4px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.dx-card-image span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-card-image svg{color:#b07bf5;flex-shrink:0}.dx-card-detail{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-card-ports{display:flex;flex-wrap:wrap;gap:4px}.dx-port-pill{display:inline-flex;align-items:center;padding:1px 6px;background:var(--bg-tertiary);border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.dx-port-more{display:inline-flex;align-items:center;padding:1px 6px;background:var(--bg-tertiary);border-radius:4px;font-size:10px;color:var(--text-tertiary)}.dx-card-resources{display:flex;flex-direction:column;gap:4px;margin-top:4px}.dx-res{display:grid;grid-template-columns:50px 1fr 50px;gap:8px;align-items:center}.dx-res-label{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.dx-res-track{height:4px;background:var(--border-default);border-radius:4px;overflow:hidden}.dx-res-fill{height:100%;transition:width .2s ease}.dx-res-fill.cpu{background:var(--accent-primary)}.dx-res-fill.mem{background:#3ddc97}.dx-res-value{text-align:right;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary)}.dx-card-actions{display:flex;gap:4px;flex-wrap:wrap;padding-top:8px;margin-top:auto;border-top:1px solid var(--border-subtle)}.docker-page-new.dx-page{height:100vh;min-height:0;padding:20px;overflow:hidden}.docker-page-new.dx-page .page-header,.docker-page-new.dx-page .lv-header,.docker-page-new.dx-page .dx-stats-row,.docker-page-new.dx-page .dx-tabs{flex-shrink:0}.docker-page-new.dx-page .page-header{margin-bottom:0}.dx-panel{flex:1;min-height:0;display:flex;flex-direction:column}.dx-panel>div{min-height:0;overflow:auto}.dx-panel>.dx-tab-pane{overflow:hidden}.dx-containers-pane{flex:1;min-height:0;display:flex;flex-direction:column}.dx-filter-chips{display:inline-flex;align-items:center;gap:2px;flex-wrap:wrap;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:3px}.dx-filter-chips .filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-tertiary);font-size:10px;font-weight:500;cursor:pointer;transition:all .2s ease}.dx-filter-chips .filter-chip:hover:not(:disabled){color:var(--text-primary)}.dx-filter-chips .filter-chip.active{background:var(--surface-3);color:var(--text-primary);box-shadow:var(--shadow-sm)}.dx-filter-chips .filter-chip:disabled{opacity:.45;cursor:not-allowed}.dx-filter-chips .filter-chip-count{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10.5px;color:inherit;opacity:.7}.dx-kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}@media (max-width: 1024px){.dx-kpi-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.dx-kpi-strip{grid-template-columns:1fr}}.dx-search-field{position:relative;display:flex;align-items:center;min-width:280px}.dx-search-field .lv-search-field-icon{position:absolute;left:12px;color:var(--text-tertiary);pointer-events:none}.dx-search-field input{width:100%;height:32px;border:1px solid var(--border-default);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);padding:0 32px;font-size:12px}.dx-search-field input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.dx-search-field .lv-search-field-clear{position:absolute;right:8px;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer}.dx-search-field .lv-search-field-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.dx-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:10px;cursor:pointer}.dx-toggle input{width:14px;height:14px;accent-color:var(--accent-primary)}.dx-manager-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:12px;overflow:hidden}.dx-resource-list,.dx-inspector{min-height:0;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:8px}.dx-resource-list{overflow:hidden}.dx-table-wrap{height:100%;overflow:auto}.dx-manager-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.dx-manager-table th,.dx-manager-table td{padding:12px 16px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.dx-manager-table th{position:sticky;top:0;z-index:1;background:var(--bg-card);color:var(--text-tertiary);text-align:left;font-size:10px;font-weight:600}.dx-manager-table th:nth-child(1){width:20%}.dx-manager-table th:nth-child(2){width:22%}.dx-manager-table th:nth-child(3){width:17%}.dx-manager-table th:nth-child(4){width:15%}.dx-manager-table th:nth-child(5){width:16%}.dx-manager-table th:nth-child(6){width:10%}.dx-manager-table th:nth-child(7){width:116px}.dx-manager-table tbody tr{cursor:pointer;transition:background .2s ease}.dx-manager-table tbody tr:hover,.dx-manager-table tbody tr.is-selected{background:var(--bg-hover)}.dx-manager-table tbody tr.is-selected{box-shadow:inset 3px 0 0 var(--accent-primary)}.dx-name-stack{display:flex;flex-direction:column;gap:3px;min-width:0}.dx-name-line{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-primary);font-weight:600}.dx-name-line span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-muted-line{display:block;color:var(--text-tertiary);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-muted-line.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.dx-code-pill{display:inline-flex;max-width:100%;padding:2px 8px;border-radius:4px;background:var(--bg-tertiary);color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-port-list{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}.dx-port-list .dx-port-pill{max-width:150px}.dx-port-list .dx-port-pill.is-empty{opacity:.55}.dx-mini-resources{display:flex;flex-direction:column;gap:5px;min-width:150px}.dx-mini-resources.is-muted{opacity:.55}.dx-mini-resource{display:grid;grid-template-columns:34px minmax(48px,1fr) 44px;align-items:center;gap:8px}.dx-mini-resource span{color:var(--text-tertiary);font-size:10px;font-weight:600}.dx-mini-resource strong{color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:500;text-align:right}.dx-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.dx-row-action{width:28px;height:28px;border:1px solid var(--border-default);border-radius:4px;background:transparent;color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.dx-row-action:hover{border-color:var(--border-hover);background:var(--bg-hover);color:var(--text-primary)}.dx-row-action.is-danger:hover{border-color:#fb6f6f59;color:#fb6f6f}.dx-row-action.is-success:hover{border-color:#3ddc9759;color:#3ddc97}.dx-action-btn{min-height:30px;border:1px solid var(--border-default);border-radius:4px;background:var(--bg-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;font-size:10px;cursor:pointer;transition:all .2s ease}.dx-action-btn:hover{border-color:var(--border-hover);background:var(--bg-hover);color:var(--text-primary)}.dx-action-btn.is-danger:hover{border-color:#fb6f6f59;color:#fb6f6f}.dx-action-btn.is-success:hover{border-color:#3ddc9759;color:#3ddc97}.dx-inspector{display:flex;flex-direction:column;overflow:hidden}.dx-inspector-empty{align-items:center;justify-content:center;text-align:center;padding:32px;color:var(--text-secondary)}.dx-inspector-empty h3{margin:12px 0 8px;color:var(--text-primary);font-size:14px}.dx-inspector-empty p{margin:0;max-width:260px;font-size:12px}.dx-inspector-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-subtle)}.dx-inspector-icon{width:38px;height:38px;border-radius:6px;background:#49c7f01f;color:#49c7f0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dx-inspector-title{min-width:0;flex:1}.dx-inspector-title h3{margin:0;color:var(--text-primary);font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-inspector-title span{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.dx-inspector-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:10px}.dx-inspector-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px;border-bottom:1px solid var(--border-subtle)}.dx-inspector-tabs{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid var(--border-subtle);overflow-x:auto}.dx-inspector-tabs button{border:none;border-radius:4px;background:transparent;color:var(--text-secondary);font-size:10px;padding:8px 12px;text-transform:capitalize;cursor:pointer}.dx-inspector-tabs button:hover,.dx-inspector-tabs button.active{background:var(--bg-hover);color:var(--text-primary)}.dx-inspector-body{flex:1;min-height:0;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.dx-inspector-loading{color:var(--text-secondary);font-size:12px;padding:16px 0}.dx-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dx-detail-grid div{min-width:0;border:1px solid var(--border-subtle);border-radius:4px;padding:12px;background:var(--bg-card)}.dx-detail-grid span{display:block;color:var(--text-tertiary);font-size:10px;margin-bottom:4px}.dx-detail-grid strong{display:block;color:var(--text-primary);font-size:10px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-section-title{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:10px;font-weight:600}.dx-details-list{display:grid;grid-template-columns:minmax(90px,.42fr) minmax(0,1fr);gap:8px 12px;align-items:center}.dx-details-list span{min-width:0;color:var(--text-tertiary);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-details-list code{min-width:0;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;padding:3px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-inspector-list{display:flex;flex-direction:column;gap:8px}.dx-inspector-list code{display:block;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;padding:8px;white-space:pre-wrap;word-break:break-word}.dx-inspector-list code.is-empty{color:var(--text-tertiary)}@media (max-width: 1280px){.dx-manager-layout{grid-template-columns:1fr;overflow:auto}.dx-resource-list{min-height:420px}.dx-inspector{min-height:460px}}@media (max-width: 768px){.docker-page-new.dx-page{height:auto;min-height:100vh;overflow:auto;padding:16px}.dx-tab-toolbar,.dx-tab-toolbar-right{align-items:stretch}.dx-search-field{min-width:100%}.dx-manager-table{min-width:960px}.dx-detail-grid,.dx-inspector-actions{grid-template-columns:1fr}}.docker-page-new.dx-page{padding:24px 20px 20px;gap:12px;background:transparent}.docker-page-new.dx-page .page-header,.docker-page-new.dx-page .lv-header,.docker-page-new.dx-page .dx-stats-row,.docker-page-new.dx-page .dx-tabs{display:none}.dx-workspace{flex:1;min-height:0;display:grid;grid-template-columns:252px minmax(0,1fr);gap:12px;overflow:hidden}.dx-docker-sidebar{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;scrollbar-width:thin}.dx-docker-sidebar::-webkit-scrollbar{width:4px}.dx-docker-sidebar::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}.dx-sidebar-section{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;overflow:hidden;flex-shrink:0}.dx-sidebar-section-header{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:12px;font-weight:500}.dx-sidebar-section-header svg{color:var(--accent-primary);flex-shrink:0}.dx-sidebar-section-content{padding:8px}.dx-sidebar-section-content .btn,.dx-sidebar-section-content button{width:100%;justify-content:center}.dx-resource-nav{display:grid;gap:2px;padding:8px}.dx-resource-nav-item{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 8px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;text-align:left;cursor:pointer;transition:all .2s ease}.dx-resource-nav-item svg{color:var(--text-tertiary)}.dx-resource-nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-resource-nav-item strong{min-width:24px;padding:1px 7px;border-radius:9999px;background:var(--bg-tertiary);color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:500;text-align:center}.dx-resource-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dx-resource-nav-item.active{background:var(--accent-glow);color:var(--accent-primary)}.dx-resource-nav-item.active svg{color:var(--accent-primary)}.dx-resource-nav-item.active strong{background:#6d7cff2e;color:var(--accent-primary)}.dx-inventory-list{display:grid;gap:1px;padding:8px}.dx-inventory-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px;padding:0 8px;border-radius:6px}.dx-inventory-item span{color:var(--text-secondary);font-size:10px}.dx-inventory-item strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-main{min-width:0;min-height:0;display:flex;flex-direction:column;gap:8px}.dx-workbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:8px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;flex-shrink:0}.dx-workbar-title{display:flex;align-items:baseline;gap:8px;min-width:0}.dx-workbar-title span{color:var(--text-tertiary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.dx-workbar-title strong{color:var(--text-primary);font-size:14px;font-weight:600}.dx-workbar-title em{color:var(--text-tertiary);font-size:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dx-workbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dx-workbar-actions .btn,.dx-workbar-actions button{min-height:32px}.dx-panel{flex:1;min-height:0;background:transparent;border:none;border-radius:0;box-shadow:none}.dx-tab-pane{padding:0}.dx-containers-pane{gap:8px}.dx-tab-toolbar{margin:0;padding:8px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px}.dx-tab-toolbar-right{margin-left:auto}.dx-sort-control{display:inline-flex;align-items:center;gap:4px}.dx-sort-control span{color:var(--text-tertiary);font-size:10px;font-weight:600}.dx-sort-control select{height:32px;min-width:108px;padding:0 24px 0 8px;border:1px solid var(--border-default);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);font-size:10px;outline:none}.dx-sort-control select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.dx-manager-layout{grid-template-columns:minmax(0,1fr);gap:0}.dx-resource-list{background:var(--bg-card);border-color:var(--border-default)}.dx-table-wrap{background:var(--bg-card)}.dx-manager-table th{background:var(--bg-elevated)}.dx-manager-table th,.dx-manager-table td{padding:12px}.dx-manager-table tbody tr{background:var(--bg-card)}.dx-manager-table tbody tr:hover{background:var(--bg-hover)}.dx-manager-table tbody tr.is-selected{background:var(--accent-glow)}.dx-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000014;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:40;animation:drawer-fade .18s ease}.dx-inspector-drawer{position:fixed;top:0;right:0;bottom:0;width:min(540px,100vw);max-width:100%;box-sizing:border-box;background:var(--bg-card);border:none;border-left:1px solid var(--border-default);border-radius:0;box-shadow:-10px 0 36px #0000006b;z-index:50;animation:drawer-slide .24s cubic-bezier(.32,.72,.24,1)}@media (max-width: 1280px){.dx-workspace{grid-template-columns:220px minmax(0,1fr)}}@media (max-width: 1024px){.dx-workspace{grid-template-columns:1fr;overflow:auto}.dx-docker-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.dx-main{min-height:620px}}@media (max-width: 768px){.dx-docker-sidebar{grid-template-columns:1fr}.dx-workbar{align-items:stretch;flex-direction:column}.dx-workbar-actions{width:100%}.dx-workbar-actions>*{flex:1}.dx-tab-toolbar-right{margin-left:0}.dx-inspector-drawer{width:100%}}.db-explorer{display:flex;flex-direction:column;height:100%;width:100%;max-width:none;margin:0;padding:0;gap:0;box-sizing:border-box;overflow:hidden}.db-explorer .dbx-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.db-explorer .dbx-icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-icon-btn:disabled{opacity:.4;cursor:not-allowed}.db-explorer .dbx-icon-btn.is-danger:hover:not(:disabled){background:#fb6f6f1f;color:#fb6f6f}.db-explorer .dbx-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid transparent;border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.db-explorer .dbx-chip:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-chip.is-active{background:var(--accent-glow);color:var(--accent-primary);border-color:#6d7cff4d}.db-explorer .dbx-chip:disabled{opacity:.45;cursor:not-allowed}.db-explorer .dbx-chip svg{flex-shrink:0}.db-explorer .dbx-primary{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:var(--accent-primary);border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px var(--accent-shadow);transition:background .15s ease,transform .15s ease}.db-explorer .dbx-primary:hover{background:var(--accent-hover)}.db-explorer .dbx-primary:active{transform:translateY(1px)}.db-explorer .dbx-primary svg{flex-shrink:0}.db-explorer .dbx-mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.db-explorer .dbx-spin{animation:dbx-spin 1s linear infinite}@keyframes dbx-spin{to{transform:rotate(360deg)}}.db-explorer .dbx-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:8px 12px;background:var(--bg-card);border-bottom:1px solid var(--border-default);flex-shrink:0}.db-explorer .dbx-toolbar-left{display:flex;align-items:center;gap:8px;min-width:0}.db-explorer .dbx-toolbar-right{display:flex;align-items:center;gap:8px}.db-explorer .dbx-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.db-explorer .dbx-title svg{color:var(--accent-primary)}.db-explorer .dbx-new{position:relative}.db-explorer .dbx-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:230px;padding:4px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;box-shadow:var(--shadow-lg);z-index:10;animation:dbx-pop .12s cubic-bezier(.25,1,.5,1)}.db-explorer .dbx-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:4px;color:var(--text-primary);font-size:12px;text-align:left;cursor:pointer;transition:background .15s ease}.db-explorer .dbx-menu button:hover:not(:disabled){background:var(--bg-hover)}.db-explorer .dbx-menu button:disabled{opacity:.4;cursor:not-allowed}.db-explorer .dbx-menu button svg{flex-shrink:0;color:var(--text-secondary)}.db-explorer .dbx-menu-hint{margin-left:auto;font-size:10px;color:var(--text-tertiary);font-style:italic}.db-explorer .dbx-menu-sep{height:1px;background:var(--border-default);margin:4px 2px}@keyframes dbx-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.db-explorer .dbx-body{display:grid;grid-template-columns:280px 1fr;gap:0;flex:1;min-height:0;overflow:hidden}.db-explorer .dbx-body.is-collapsed{grid-template-columns:1fr}@media (max-width: 1024px){.db-explorer .dbx-body{grid-template-columns:240px 1fr}}@media (max-width: 768px){.db-explorer .dbx-body{grid-template-columns:1fr;grid-template-rows:minmax(140px,240px) 1fr}}.db-explorer .dbx-tree-panel{display:flex;flex-direction:column;min-height:0;background:var(--bg-card);border-right:1px solid var(--border-default);overflow:hidden}@media (max-width: 768px){.db-explorer .dbx-tree-panel{border-right:none;border-bottom:1px solid var(--border-default)}}.db-explorer .dbx-tree-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-default);background:var(--bg-elevated);flex-shrink:0}.db-explorer .dbx-tree-search>svg{color:var(--text-tertiary);flex-shrink:0}.db-explorer .dbx-tree-search input{flex:1;min-width:0;background:transparent;border:none;color:var(--text-primary);font-size:12px;outline:none}.db-explorer .dbx-tree-search input::placeholder{color:var(--text-tertiary)}.db-explorer .dbx-tree-search button{display:flex;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;border-radius:4px}.db-explorer .dbx-tree-search button:hover{background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-tree-scroll{flex:1;min-height:0;overflow-y:auto;padding:8px;scrollbar-width:thin}.db-explorer .dbx-tree-scroll::-webkit-scrollbar{width:6px}.db-explorer .dbx-tree-scroll::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.db-explorer .dbx-tree-loading{display:flex;align-items:center;gap:8px;padding:16px;color:var(--text-secondary);font-size:12px}.db-explorer .dbx-tree,.db-explorer .dbx-tree-children{list-style:none;margin:0;padding:0}.db-explorer .dbx-tree-row{display:flex;align-items:center;gap:4px;padding:5px 4px;border-radius:4px;cursor:pointer;color:var(--text-primary);-webkit-user-select:none;user-select:none;transition:background .15s ease}.db-explorer .dbx-tree-row:hover{background:var(--bg-hover)}.db-explorer .dbx-tree-row:hover .dbx-tree-more{opacity:1}.db-explorer .dbx-tree-row:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.db-explorer .dbx-tree-row.is-selected{background:var(--accent-glow)}.db-explorer .dbx-tree-row.is-selected .dbx-tree-label{color:var(--accent-primary);font-weight:500}.db-explorer .dbx-tree-row.is-mysql .dbx-tree-icon{color:#f29111}.db-explorer .dbx-tree-row.is-postgresql .dbx-tree-icon{color:#336791}.db-explorer .dbx-tree-row.is-mariadb .dbx-tree-icon{color:#c0765a}.db-explorer .dbx-tree-row.is-mongodb .dbx-tree-icon{color:#00ed64}.db-explorer .dbx-tree-row.is-redis .dbx-tree-icon{color:#ff4438}.db-explorer .dbx-tree-row.is-sqlite .dbx-tree-icon{color:#3d8fd1}.db-explorer .dbx-tree-row.is-docker .dbx-tree-icon{color:#2496ed}.db-explorer .dbx-tree-row.is-table .dbx-tree-icon{color:var(--text-tertiary)}.db-explorer .dbx-tree-source{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;margin-left:4px;padding:1px 6px;font-size:10px;font-weight:500;line-height:1.5;border-radius:9999px;color:#2496ed;background:#2496ed1f}.db-explorer .dbx-tree-source svg{flex-shrink:0}.db-explorer .dbx-tree-chevron{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px}.db-explorer .dbx-tree-chevron:hover{color:var(--text-primary)}.db-explorer .dbx-tree-chevron--leaf{cursor:default}.db-explorer .dbx-tree-icon{display:flex;flex-shrink:0}.db-explorer .dbx-tree-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.db-explorer .dbx-tree-badge{flex-shrink:0;padding:0 6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:9999px;line-height:16px}.db-explorer .dbx-tree-status{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;font-size:10px;font-weight:500;color:var(--text-tertiary)}.db-explorer .dbx-tree-status .dbx-status-dot{width:7px;height:7px;border-radius:9999px;background:currentColor}.db-explorer .dbx-tree-status.is-active{color:#3ddc97}.db-explorer .dbx-tree-status.is-active .dbx-status-dot{box-shadow:0 0 6px currentColor}.db-explorer .dbx-tree-status.is-inactive{color:#f5b945}.db-explorer .dbx-tree-status.is-inactive .dbx-status-dot{box-shadow:0 0 6px currentColor}.db-explorer .dbx-tree-status.is-missing{color:var(--text-tertiary)}.db-explorer .dbx-tree-more{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease}.db-explorer .dbx-tree-more:hover{background:var(--bg-tertiary);color:var(--text-primary)}.db-explorer .dbx-tree-leaf-msg{padding:4px 6px;font-size:10px;color:var(--text-tertiary);font-style:italic}.db-explorer .dbx-tree-leaf-msg.is-error{color:#fb6f6f}.db-explorer .dbx-workspace{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-card);overflow:hidden}.db-explorer .dbx-tabbar{display:flex;align-items:stretch;gap:2px;padding:4px 4px 0;background:var(--bg-elevated);border-bottom:1px solid var(--border-default);overflow-x:auto;flex-shrink:0;scrollbar-width:thin}.db-explorer .dbx-tabbar::-webkit-scrollbar{height:4px}.db-explorer .dbx-tabbar::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.db-explorer .dbx-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;max-width:220px;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;color:var(--text-secondary);font-size:12px;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.db-explorer .dbx-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-tab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.db-explorer .dbx-tab.is-active{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-default);position:relative;box-shadow:inset 0 2px 0 var(--accent-primary)}.db-explorer .dbx-tab.is-mysql>svg:first-child{color:#f29111}.db-explorer .dbx-tab.is-postgresql>svg:first-child{color:#336791}.db-explorer .dbx-tab.is-sqlite>svg:first-child{color:#3d8fd1}.db-explorer .dbx-tab.is-docker>svg:first-child{color:#2496ed}.db-explorer .dbx-tab>svg:first-child{flex-shrink:0}.db-explorer .dbx-tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-explorer .dbx-tab-new{padding:8px;align-self:center;border-radius:6px;color:var(--text-tertiary)}.db-explorer .dbx-tab-new:disabled{opacity:.4;cursor:not-allowed}.db-explorer .dbx-tab-new:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-tab-close{display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;flex-shrink:0}.db-explorer .dbx-tab-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.db-explorer .dbx-panes{flex:1;min-height:0;display:flex}.db-explorer .dbx-tabpane{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.db-explorer .dbx-tabpane[hidden]{display:none}.db-explorer .dbx-welcome{flex:1;display:flex;align-items:center;justify-content:center;padding:32px}.db-explorer .dbx-welcome .empty-state,.db-explorer .dbx-grid-status .empty-state{background:transparent;border:none;border-radius:0;padding:24px 20px}.db-explorer .dbx-console{display:flex;flex-direction:column;height:100%;min-height:0}.db-explorer .dbx-console-toolbar,.db-explorer .dbx-table-toolbar,.db-explorer .dbx-backups-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-default);background:var(--bg-elevated);flex-shrink:0}.db-explorer .dbx-console-toolbar-spacer,.db-explorer .dbx-table-toolbar-spacer{flex:1}.db-explorer .dbx-run{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--accent-primary);border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px var(--accent-shadow);transition:background .15s ease,transform .15s ease}.db-explorer .dbx-run:hover:not(:disabled){background:var(--accent-hover)}.db-explorer .dbx-run:active:not(:disabled){transform:translateY(1px)}.db-explorer .dbx-run:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.db-explorer .dbx-run kbd{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;padding:1px 5px;background:#ffffff2e;border-radius:4px}.db-explorer .dbx-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid transparent;border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease}.db-explorer .dbx-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.db-explorer .dbx-toggle.is-write{background:#f5b9451f;border-color:#f5b94538;color:#f5b945}.db-explorer .dbx-console-split{display:flex;min-height:0;flex-shrink:0}.db-explorer .dbx-editor-wrap{position:relative;flex:1;min-width:0}.db-explorer .dbx-sqled{display:flex;height:184px;min-height:96px;max-height:50vh;resize:vertical;overflow:hidden;background:var(--bg-body);border-bottom:1px solid var(--border-default)}.db-explorer .dbx-sqled__gutter{flex-shrink:0;min-width:40px;padding:12px 10px 12px 12px;overflow:hidden;text-align:right;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6;color:var(--text-tertiary);border-right:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none}.db-explorer .dbx-sqled__stack{position:relative;flex:1;min-width:0}.db-explorer .dbx-sqled__hl,.db-explorer .dbx-sqled__input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:12px 16px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6;white-space:pre;-moz-tab-size:4;tab-size:4}.db-explorer .dbx-sqled__hl{overflow:hidden;pointer-events:none;color:var(--text-primary)}.db-explorer .dbx-sqled__hl .tok-kw{color:var(--accent-bright);font-weight:600}.db-explorer .dbx-sqled__hl .tok-str{color:#3ddc97}.db-explorer .dbx-sqled__hl .tok-num{color:#f5b945}.db-explorer .dbx-sqled__hl .tok-cmt{color:var(--text-ghost);font-style:italic}.db-explorer .dbx-sqled__input{background:transparent;border:none;resize:none;outline:none;color:transparent;caret-color:var(--text-primary);overflow:auto}.db-explorer .dbx-sqled__input::placeholder{color:var(--text-tertiary)}.db-explorer .dbx-sqled__input::selection{background:#6d7cff47}.db-explorer .dbx-editor-badge{position:absolute;bottom:10px;right:14px;display:inline-flex;align-items:center;gap:4px;padding:2px 7px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:9999px;font-size:10px;font-weight:500;color:var(--text-tertiary);pointer-events:none}.db-explorer .dbx-history{width:280px;flex-shrink:0;border-left:1px solid var(--border-default);border-bottom:1px solid var(--border-default);background:var(--bg-elevated);overflow-y:auto}.db-explorer .dbx-history .dbx-history-head{padding:8px 12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle)}.db-explorer .dbx-history .dbx-history-empty{padding:12px;font-size:12px;color:var(--text-tertiary)}.db-explorer .dbx-history ul{list-style:none;margin:0;padding:0}.db-explorer .dbx-history li button{display:block;width:100%;text-align:left;padding:8px 12px;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background .15s ease}.db-explorer .dbx-history li button:hover{background:var(--bg-hover)}.db-explorer .dbx-history li button code{display:block;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-explorer .dbx-history .dbx-history-time{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:10px;color:var(--text-tertiary)}.db-explorer .dbx-results{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.db-explorer .dbx-results-head{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.db-explorer .dbx-results-head .dbx-results-count{font-size:10px;color:#3ddc97;font-weight:500}.db-explorer .dbx-results-head .dbx-results-time{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.db-explorer .dbx-console-hint{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:12px}.db-explorer .dbx-console-hint p{margin:0}.db-explorer .dbx-console-hint kbd{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;padding:1px 6px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:4px;color:var(--text-secondary)}.db-explorer .dbx-table-tab{display:flex;flex-direction:column;height:100%;min-height:0}.db-explorer .dbx-table-body{flex:1;min-height:0;display:flex;overflow:hidden}.db-explorer .dbx-segmented{display:inline-flex;gap:2px;padding:2px;background:var(--bg-tertiary);border-radius:6px}.db-explorer .dbx-segmented button{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:transparent;border:none;border-radius:4px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease}.db-explorer .dbx-segmented button:hover{color:var(--text-primary)}.db-explorer .dbx-segmented button.is-active{background:var(--bg-card);color:var(--accent-primary);box-shadow:var(--shadow-sm)}.db-explorer .dbx-segmented button svg{flex-shrink:0}.db-explorer .dbx-pager{display:inline-flex;align-items:center;gap:4px}.db-explorer .dbx-pager .dbx-pager-label{font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.db-explorer .dbx-pager .dbx-pager-total{color:var(--text-tertiary)}.db-explorer .dbx-grid-scroll{flex:1;min-width:0;min-height:0;overflow:auto;background:var(--bg-card);scrollbar-width:thin}.db-explorer .dbx-grid-scroll::-webkit-scrollbar{width:10px;height:10px}.db-explorer .dbx-grid-scroll::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.db-explorer .dbx-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px}.db-explorer .dbx-grid thead th{position:sticky;top:0;z-index:1;background:var(--bg-elevated);border-bottom:1px solid var(--border-default);border-right:1px solid var(--border-subtle);text-align:left;font-weight:600;color:var(--text-secondary);white-space:nowrap;padding:0}.db-explorer .dbx-grid thead th:last-child{border-right:none}.db-explorer .dbx-grid .dbx-grid-th{display:flex;align-items:center;gap:4px;width:100%;padding:8px 12px;background:transparent;border:none;color:inherit;font:inherit;font-weight:600;cursor:pointer;text-align:left}.db-explorer .dbx-grid .dbx-grid-th:hover{color:var(--text-primary)}.db-explorer .dbx-grid .dbx-grid-th svg{color:var(--accent-primary)}.db-explorer .dbx-grid .dbx-grid-th-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-explorer .dbx-grid tbody td{max-width:380px;padding:6px 12px;border-bottom:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-explorer .dbx-grid tbody td:last-child{border-right:none}.db-explorer .dbx-grid tbody td.is-null{color:var(--text-tertiary);font-style:italic}.db-explorer .dbx-grid tbody td.is-strv,.db-explorer .dbx-grid tbody td.is-pos{color:#3ddc97}.db-explorer .dbx-grid tbody td.is-neg{color:#f5b945}.db-explorer .dbx-grid tbody tr:hover td{background:var(--bg-hover)}.db-explorer .dbx-grid .dbx-grid-rownum{position:sticky;left:0;z-index:1;min-width:44px;width:44px;text-align:right;color:var(--text-tertiary);background:var(--bg-elevated);border-right:1px solid var(--border-default);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;-webkit-user-select:none;user-select:none}.db-explorer .dbx-grid thead .dbx-grid-rownum{z-index:2}.db-explorer .dbx-grid tbody tr:hover .dbx-grid-rownum{background:var(--bg-tertiary)}.db-explorer .dbx-structure tbody td,.db-explorer .dbx-backups-table tbody td{font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:12px}.db-explorer .dbx-structure .dbx-mono,.db-explorer .dbx-backups-table .dbx-mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary)}.db-explorer .dbx-col-name{display:flex;align-items:center;gap:6px;color:var(--text-primary)!important;font-weight:500}.db-explorer .dbx-col-name .dbx-pk{color:#f59e0b;flex-shrink:0}.db-explorer .dbx-engine-tag{display:inline-block;padding:1px 8px;border-radius:9999px;font-size:11px;font-weight:500}.db-explorer .dbx-engine-tag.is-mysql{background:#f2911129;color:#f29111}.db-explorer .dbx-engine-tag.is-postgresql{background:#33679133;color:#5f9ab8}.db-explorer .dbx-grid-actions{text-align:right}.db-explorer .dbx-grid-status,.db-explorer .dbx-grid-error,.db-explorer .dbx-structure-fallback{flex:1;min-height:0}.db-explorer .dbx-grid-status{display:flex;align-items:center;justify-content:center;width:100%}.db-explorer .dbx-grid-error{display:flex;align-items:flex-start;gap:8px;padding:16px;margin:16px;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:6px;color:#fb6f6f;font-size:12px}.db-explorer .dbx-grid-error svg{flex-shrink:0;margin-top:2px}.db-explorer .dbx-grid-error pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.db-explorer .dbx-structure-fallback{padding:24px;color:var(--text-secondary);font-size:12px}.db-explorer .dbx-backups{display:flex;flex-direction:column;height:100%;min-height:0}.db-explorer .dbx-backups-body{flex:1;min-height:0;overflow:auto}.db-explorer .dbx-backups-table{width:100%}.db-explorer .dbx-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:32px;padding:4px 12px;background:var(--bg-card);border-top:1px solid var(--border-default);flex-shrink:0;flex-wrap:wrap}.db-explorer .dbx-statusbar-left,.db-explorer .dbx-statusbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.db-explorer .dbx-status-item{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--text-secondary)}.db-explorer .dbx-status-item svg{color:var(--text-tertiary)}.db-explorer .dbx-status-item.is-write{color:#f5b945;font-weight:500}.db-explorer .dbx-status-item.dbx-status-muted{color:var(--text-tertiary)}.db-explorer .dbx-status-item.is-connected{color:#3ddc97;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.db-explorer .dbx-status-item.is-connected:before{content:"";width:6px;height:6px;border-radius:9999px;background:currentColor;box-shadow:0 0 6px currentColor}.db-explorer .dbx-context{position:fixed;min-width:200px;padding:4px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;box-shadow:var(--shadow-lg);z-index:60;animation:dbx-pop .12s cubic-bezier(.25,1,.5,1)}.db-explorer .dbx-context button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:4px;color:var(--text-primary);font-size:12px;text-align:left;cursor:pointer;transition:background .15s ease}.db-explorer .dbx-context button:hover{background:var(--bg-hover)}.db-explorer .dbx-context button.is-danger{color:#fb6f6f}.db-explorer .dbx-context button.is-danger:hover{background:#fb6f6f1f}.db-explorer .dbx-context button svg{flex-shrink:0;opacity:.85}@media (prefers-reduced-motion: reduce){.db-explorer .dbx-menu,.db-explorer .dbx-context,.db-explorer .dbx-spin{animation:none}}.domains-page{display:flex;flex-direction:column}.domains-body{max-width:1320px;width:100%;margin:0 auto;padding-top:20px}.dom-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}@media (max-width: 1024px){.dom-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.dom-kpis{grid-template-columns:1fr}}.dom-listhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.dom-listhead__title{margin:0;font-size:15px;font-weight:600;color:var(--text-primary)}.dom-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.dom-empty{padding:40px;text-align:center;color:var(--text-tertiary);font-size:12px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.dom-fav{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--accent-bg);color:var(--accent-bright)}.dom-primary{margin-left:8px;padding:1px 6px;border-radius:4px;background:var(--accent-bg);color:var(--accent-bright);font-family:var(--mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.dom-dash{color:var(--text-ghost);font-family:var(--mono);font-size:12px}.dom-chev{color:var(--text-ghost)}.dom-drawer{padding:20px 20px 32px;display:flex;flex-direction:column;gap:20px}.dom-drawer__actions{display:flex;flex-wrap:wrap;gap:8px}.dom-drawer__section{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.dom-drawer__sectiontitle{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.dom-drawer__hint{margin:0;font-size:12px;color:var(--text-tertiary)}.dom-drawer__danger{padding-top:16px;border-top:1px solid var(--border-soft)}.dom-dns{width:100%}.dom-dns__count{margin-left:8px;font-family:var(--mono);font-size:11px;font-weight:400;color:var(--text-faint)}.dom-dns__error{color:var(--red)}.dom-dns__table{width:100%;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.dom-dns__col-type,.dom-dns__col-ttl{width:70px}.dom-dns__value{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.dom-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 640px){.dom-specs{grid-template-columns:1fr}}.dom-delete-btn{color:#fb6f6f}.dom-delete-btn:hover{background:var(--red-bg);color:#fb6f6f}.ssl-info-box{display:flex;align-items:center;justify-content:flex-start;gap:16px;padding:20px;background:#3ddc971f;border:1px solid rgba(61,220,151,.22);border-radius:8px;margin-bottom:20px;color:#3ddc97}.ssl-info-box h4{font-size:14px;font-weight:600;margin-bottom:4px}.ssl-info-box p{font-size:12px;color:var(--text-secondary)}.ssl-info-box p strong{color:var(--text-primary)}.checkbox-label{display:flex;align-items:center;justify-content:flex-start;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary)}.monitoring-page .mon-section-head h3,.monitoring-page .monitoring-panel__header h3{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.monitoring-page .mon-ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-3);color:var(--text-dim)}.monitoring-page .mon-ico--sm{width:26px;height:26px;border-radius:7px}.monitoring-page .monitoring-overview,.monitoring-page .monitoring-delivery-layout{display:grid;gap:20px}.monitoring-page .monitoring-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 24px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface)}.monitoring-page .monitoring-hero.is-active{border-color:#3ddc9740}.monitoring-page .monitoring-hero h2{margin:12px 0 4px;font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.15}.monitoring-page .monitoring-hero p{margin:0;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.monitoring-page .monitoring-hero__actions{flex:0 0 auto;display:flex;gap:8px}@media (max-width: 760px){.monitoring-page .monitoring-hero{flex-direction:column}}.monitoring-page .mon-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1024px){.monitoring-page .mon-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.monitoring-page .mon-kpis{grid-template-columns:1fr}}.monitoring-page .mon-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.monitoring-page .monitoring-panel{min-width:0;padding:20px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface)}.monitoring-page .monitoring-panel--warning{border-color:#fb6f6f47}.monitoring-page .monitoring-panel__header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.monitoring-page .monitoring-panel__header>div{display:flex;flex-wrap:wrap;gap:8px}@media (max-width: 640px){.monitoring-page .monitoring-panel__header{align-items:flex-start;flex-direction:column}}.monitoring-page .mon-firing-count{font-family:var(--mono);font-size:11px;color:var(--red)}.monitoring-page .mon-host-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.monitoring-page .mon-host-card{min-width:0;padding:15px 16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface);transition:border-color .15s ease}.monitoring-page .mon-host-card:hover{border-color:var(--border-strong)}.monitoring-page .mon-host-card.is-alerting{border-color:#f5b94559}.monitoring-page .mon-host-card__head{display:flex;align-items:center;gap:9px;margin-bottom:12px}.monitoring-page .mon-host-card__head .sk-pill{margin-left:auto}.monitoring-page .mon-host-card__name{flex:1;min-width:0;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monitoring-page .mon-host-card__value{margin-bottom:10px;font-family:var(--mono);font-size:23px;font-weight:600;letter-spacing:-.02em;line-height:1}.monitoring-page .mon-host-card__mini{display:flex;justify-content:space-between;gap:10px;margin-top:10px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.monitoring-page .mon-host-card__mini span{white-space:nowrap}.monitoring-page .mon-host-card__mini b{color:var(--text-dim);font-weight:600}.monitoring-page .mon-alert-list{display:flex;flex-direction:column}.monitoring-page .mon-alert-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--border-soft)}.monitoring-page .mon-alert-row:first-child{border-top:none;padding-top:0}.monitoring-page .mon-alert-row:last-child{padding-bottom:0}.monitoring-page .mon-alert-row__body{flex:1;min-width:0}.monitoring-page .mon-alert-row__title{font-size:13.5px;font-weight:550;color:var(--text)}.monitoring-page .mon-alert-row__sub{margin-top:2px;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.monitoring-page .mon-alert-row__end{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.monitoring-page .mon-alert-row__time{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);white-space:nowrap}@media (max-width: 640px){.monitoring-page .mon-alert-row,.monitoring-page .mon-alert-row__end{align-items:flex-start}}.monitoring-page .mon-sev{width:9px;height:9px;border-radius:3px;flex-shrink:0;background:var(--text-ghost)}.monitoring-page .mon-sev--critical{background:var(--red)}.monitoring-page .mon-sev--warning{background:var(--amber)}.monitoring-page .mon-sev--info{background:var(--cyan)}.monitoring-page .mon-state--red{color:var(--red);background:var(--red-bg)}.monitoring-page .mon-state--amber{color:var(--amber);background:var(--amber-bg)}.monitoring-page .mon-state--cyan{color:var(--cyan);background:var(--cyan-bg)}.monitoring-page .mon-state--green{color:var(--green);background:var(--green-bg)}.monitoring-page .mon-state--gray{color:var(--text-faint);background:var(--surface-3)}.monitoring-page .metric-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 1024px){.monitoring-page .metric-rule-grid{grid-template-columns:1fr}}.monitoring-page .metric-rule-editor{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:16px;align-items:center;padding:15px 16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.monitoring-page .metric-rule-editor.is-alerting{border-color:#f5b94559}.monitoring-page .metric-rule-editor__main{display:flex;gap:12px;align-items:center;min-width:0}.monitoring-page .metric-rule-editor__main h4{margin:0 0 3px;font-size:13.5px;font-weight:600}.monitoring-page .metric-rule-editor__main span{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.monitoring-page .metric-rule-editor__threshold{display:grid;gap:8px}.monitoring-page .metric-rule-editor>.sk-pill{justify-self:end}@media (max-width: 820px){.monitoring-page .metric-rule-editor{grid-template-columns:1fr;align-items:start}.monitoring-page .metric-rule-editor>.sk-pill{justify-self:start}}.monitoring-page .metric-rule-editor__threshold label,.monitoring-page .monitoring-delivery-layout .form-group label{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.monitoring-page .monitoring-delivery-layout{grid-template-columns:minmax(280px,420px) minmax(0,1fr)}@media (max-width: 1000px){.monitoring-page .monitoring-delivery-layout{grid-template-columns:1fr}}.monitoring-page .monitoring-switch-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;margin-bottom:16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.monitoring-page .monitoring-switch-row strong{display:block;font-size:13px;font-weight:600}.monitoring-page .monitoring-switch-row span{display:block;margin-top:3px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.monitoring-page .notification-channel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.monitoring-page .notification-channel-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.monitoring-page .notification-channel-tile.is-ready{border-color:#3ddc974d}.monitoring-page .notification-channel-tile.is-ready .mon-ico{background:var(--green-bg);color:var(--green)}.monitoring-page .notification-channel-tile>div{min-width:0}.monitoring-page .notification-channel-tile strong{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monitoring-page .notification-channel-tile span{display:block;margin-top:2px;font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.monitoring-page .form-help{display:block;margin-top:4px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.backups-page .bk-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}@media (max-width: 640px){.backups-page .bk-kpis{grid-template-columns:1fr}}.backups-page .bk-listhead{display:flex;align-items:center;gap:12px;margin-bottom:12px}.backups-page .bk-listhead h2{flex:1;min-width:0;margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}@media (max-width: 768px){.backups-page .bk-listhead{flex-wrap:wrap}.backups-page .bk-listhead h2{flex-basis:100%}}.backups-page .bk-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.backups-page .bk-empty{padding:40px;text-align:center;color:var(--text-faint);font-size:13px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.backups-page .bk-table th:last-child{width:1%}.backups-page .bk-table td:last-child{white-space:nowrap}.backups-page .bk-table tbody tr.is-disabled{opacity:.55}.backups-page .bk-table tbody tr.is-disabled .bk-ico{background:var(--surface-3);color:var(--text-faint)}.backups-page .bk-ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--text-dim)}.backups-page .bk-ico--application{background:var(--accent-bg);color:var(--accent-bright)}.backups-page .bk-ico--database{background:var(--violet-bg);color:var(--violet)}.backups-page .bk-ico--files{background:var(--amber-bg);color:var(--amber)}.backups-page .bk-type{padding:2px 7px;border-radius:5px;font-size:10.5px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim)}.backups-page .bk-type--application{background:var(--accent-bg);border-color:#6d7cff4d;color:var(--accent-bright)}.backups-page .bk-type--database{background:var(--violet-bg);border-color:#b07bf54d;color:var(--violet)}.backups-page .bk-type--files{background:var(--amber-bg);border-color:#f5b9454d;color:var(--amber)}.backups-page .bk-when{font-family:var(--mono);font-size:12px;color:var(--text-faint);white-space:nowrap}.backups-page .bk-actions{display:flex;justify-content:flex-end;gap:4px}.backups-page .bk-sched{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;font-family:var(--mono);font-size:11.5px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:6px;white-space:nowrap}.backups-page .bk-sched svg{color:var(--text-faint);flex-shrink:0}.backups-page .bk-remote-on{color:var(--green)}.backups-page .bk-remote-off{color:var(--text-ghost)}.backups-page .sk-pill svg{flex-shrink:0}@media (max-width: 768px){.backups-page .bk-card{overflow-x:auto}.backups-page .bk-table{min-width:720px}.backups-page .bk-table--schedules{min-width:880px}}.backups-page .bk-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}@media (max-width: 640px){.backups-page .bk-specs{grid-template-columns:1fr}}.backups-page .card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.backups-page .card-header h3{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.backups-page .storage-provider-config{margin:16px 0;padding:16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.backups-page .storage-provider-config h4{margin:0 0 16px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.backups-page .form-group>label:not(.checkbox-label){font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.backups-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.backups-page .form-row{grid-template-columns:1fr}}.backups-page .form-help{display:block;margin-top:8px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.backups-page .form-help-inline{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--text-ghost)}.backups-page .form-actions{display:flex;gap:8px;margin-top:20px}.backups-page .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.backups-page .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.backups-page .checkbox-label span{font-size:13px;color:var(--text)}.backups-page .bk-restore-warn{display:flex;gap:11px;padding:13px 15px;margin-bottom:20px;border-radius:11px;background:var(--amber-bg);border:1px solid rgba(245,185,69,.28);font-size:12.5px;line-height:1.5;color:var(--text-dim)}.backups-page .bk-restore-warn svg{color:var(--amber);flex-shrink:0;margin-top:1px}.backups-page .bk-restore-warn b{color:var(--text)}.backups-page .bk-restore-details{padding:4px 16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.backups-page .spinning{animation:spin 1s linear infinite}.protection-panel{grid-template-columns:1fr}.protection-panel .app-overview-left{display:flex;flex-direction:column;gap:16px}.protection-status-card__toggle{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border-soft)}.protection-status-card__toggle label{display:flex;flex-direction:column;gap:2px;cursor:pointer}.protection-status-card__toggle-title{font-weight:600;color:var(--text)}.protection-status-card__toggle-sub{font-size:12px;color:var(--text-faint)}.protection-status-card__status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:16px 0;font-size:13px;color:var(--text-dim)}.protection-status-card__kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}@media (max-width: 640px){.protection-status-card__kpis{grid-template-columns:1fr}}.protection-status-card__actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.schedule-card .app-panel-body{display:flex;flex-direction:column;gap:16px}.schedule-card__field{display:flex;flex-direction:column;gap:8px}.schedule-card__field>label{font-size:12px;font-weight:600;color:var(--text)}.schedule-card__days{display:flex;gap:8px}.schedule-card__day{width:32px;height:32px;border:1px solid var(--border-soft);background:var(--surface-2);color:var(--text-dim);border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.schedule-card__day:hover{border-color:var(--accent-bright)}.schedule-card__day.is-active{background:var(--accent-bg);color:var(--accent-bright);border-color:var(--accent-bright)}.schedule-card__preview{display:flex;align-items:center;gap:8px}.schedule-card__preview code{font-family:var(--mono);font-size:12px;color:var(--text);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:4px;padding:2px 8px}.schedule-card__preview-label{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.schedule-card__retention-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim)}.schedule-card__retention-row input{width:80px}.schedule-card__remote{flex-direction:row;align-items:flex-start;gap:12px}.schedule-card__remote label{display:flex;flex-direction:column;gap:2px;cursor:pointer}.schedule-card__actions{margin-top:4px}.backup-history-list{width:100%}.backup-history-list__row.is-clickable{cursor:pointer}.backup-history-list__ico{display:inline-flex;color:var(--text-faint)}.backup-history-list__when{color:var(--text-dim);font-size:13px;white-space:nowrap}.backup-history-list__actions{display:flex;justify-content:flex-end;gap:4px}.backup-history-list__storage{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-dim)}.backup-history-card__tools{display:flex;align-items:center;gap:8px}.backup-history-card__toggle{display:inline-flex;border:1px solid var(--border-soft);border-radius:4px;overflow:hidden}.backup-history-card__toggle button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:26px;background:var(--surface-2);color:var(--text-dim);border:none;cursor:pointer}.backup-history-card__toggle button.is-active{background:var(--accent-bg);color:var(--accent-bright)}.backup-history-card__toggle button+button{border-left:1px solid var(--border-soft)}.backup-history-card__chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:12px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:9999px;cursor:pointer}.backup-history-card__chip:hover{color:var(--text)}.backup-calendar__head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.backup-calendar__month{flex:1;font-weight:600;color:var(--text)}.backup-calendar__nav,.backup-calendar__today{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 8px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:4px;color:var(--text-dim);cursor:pointer}.backup-calendar__nav:hover,.backup-calendar__today:hover{border-color:var(--accent-bright);color:var(--text)}.backup-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.backup-calendar__dow{text-align:center;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);padding-bottom:4px}.backup-calendar__cell{position:relative;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--border-soft);border-radius:4px;background:var(--surface-2);color:var(--text-dim);font-size:12px}.backup-calendar__cell--empty{background:transparent;border-color:transparent}.backup-calendar__cell--has{cursor:pointer}.backup-calendar__cell--has:hover{border-color:var(--accent-bright)}.backup-calendar__cell--has.is-success{border-color:var(--green);background:var(--green-bg)}.backup-calendar__cell--has.is-failed{border-color:var(--red);background:var(--red-bg)}.backup-calendar__cell--has.is-running{border-color:var(--cyan);background:var(--cyan-bg)}.backup-calendar__badge{position:absolute;top:2px;right:3px;font-size:9px;font-weight:600;color:var(--text-faint)}.backup-detail-drawer{display:flex;flex-direction:column;gap:16px}.backup-detail-drawer__error{padding:8px 12px;font-size:13px;color:var(--red);background:var(--red-bg);border:1px solid var(--border-soft);border-radius:4px}.backup-detail-drawer__meta{display:grid;gap:4px}.backup-detail-drawer__row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--border-soft);font-size:13px}.backup-detail-drawer__row span:first-child{color:var(--text-faint)}.backup-detail-drawer__row span:last-child{color:var(--text)}.backup-detail-drawer__cost{font-size:13px;color:var(--text-dim);font-family:var(--mono)}.backup-detail-drawer__actions{display:flex;flex-wrap:wrap;gap:8px}.backup-detail-drawer__joblink{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--accent-bright)}.restore-drawer{display:flex;flex-direction:column;gap:16px}.restore-drawer__section{display:flex;flex-direction:column;gap:8px}.restore-drawer__label{font-size:12px;font-weight:600;color:var(--text)}.restore-drawer__tables{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;padding:8px;border:1px solid var(--border-soft);border-radius:4px}.restore-drawer__tables label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim)}.restore-drawer__options{display:flex;flex-direction:column;gap:12px}.restore-drawer__option{display:flex;align-items:flex-start;gap:12px}.restore-drawer__option label{display:flex;flex-direction:column;font-size:13px;color:var(--text);cursor:pointer}.restore-drawer__warning{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;font-size:13px;color:var(--amber);background:var(--amber-bg);border:1px solid var(--border-soft);border-radius:4px}.deployments-page{--deployments-panel-min-height: 430px}.deployments-page__header{align-items:flex-start;gap:16px;margin-bottom:20px}.deployments-page__header .page-title{display:flex;align-items:center;gap:8px;margin:0}.deployments-page__header .page-title svg{color:var(--text-secondary)}.deployments-page__heading{min-width:0}.deployments-page__description{margin:4px 0 0;color:var(--text-tertiary);font-size:12px;line-height:1.45}.deployments-page__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.deployments-page__toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.deployments-page__filter{display:grid;gap:3px;min-width:180px}.deployments-page__filter label{color:var(--text-tertiary);font-size:10px;font-weight:600}.deployments-page__filter select{min-height:34px;padding:4px 32px 4px 8px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px;cursor:pointer}.deployments-page__filter select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.deployments-page__workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1.12fr);gap:16px}.deployments-page__panel{min-height:var(--deployments-panel-min-height);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.deployments-page__panel-header{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.deployments-page__panel-header h2{margin:0;color:var(--text-primary);font-size:14px;font-weight:600}.deployments-page__panel-header span{display:block;margin-top:2px;color:var(--text-tertiary);font-size:10px}.deployments-page__empty{min-height:calc(var(--deployments-panel-min-height) - 52px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px;color:var(--text-tertiary);text-align:center}.deployments-page__empty svg{color:var(--text-tertiary);opacity:.72}.deployments-page__empty strong{color:var(--text-secondary);font-size:12px;font-weight:600}.deployments-page__empty span{max-width:280px;font-size:12px;line-height:1.45}.deployments-page__jobs-table{width:100%;border-collapse:collapse;font-size:12px}.deployments-page__jobs-table th{padding:12px 16px;color:var(--text-tertiary);font-size:10px;font-weight:600;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--border-subtle);white-space:nowrap}.deployments-page__jobs-table td{padding:12px 16px;color:var(--text-primary);border-bottom:1px solid var(--border-subtle);vertical-align:middle}.deployments-page__jobs-table tbody tr{cursor:pointer;transition:background .15s ease}.deployments-page__jobs-table tbody tr:hover,.deployments-page__jobs-table tbody tr.is-selected{background:var(--bg-hover)}.deployments-page__jobs-table tbody tr.is-selected{box-shadow:inset 3px 0 0 var(--accent-primary)}.deployments-page__jobs-table tbody tr:last-child td{border-bottom:none}.deployments-page__server-cell{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);white-space:nowrap}.deployments-page__progress{width:100%;min-width:88px;height:6px;background:var(--bg-elevated);border-radius:9999px;overflow:hidden}.deployments-page__progress>div{height:100%;border-radius:inherit;transition:width .2s ease}.deployments-page__progress-meta,.deployments-page__time-cell{color:var(--text-tertiary);font-size:10px}.deployments-page__progress-meta{margin-top:3px}.deployments-page__detail-panel{display:flex;flex-direction:column}.deployments-page__detail-content{display:flex;min-height:calc(var(--deployments-panel-min-height) - 52px);flex-direction:column;padding:16px}.deployments-page__detail-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.deployments-page__detail-title h3{margin:0;color:var(--text-primary);font-size:18px}.deployments-page__detail-title div div{margin-top:3px;color:var(--text-tertiary);font-size:10px;word-break:break-all}.deployments-page__detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.deployments-page__detail-metric{padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.deployments-page__detail-metric span{display:block;margin-bottom:3px;color:var(--text-tertiary);font-size:10px;font-weight:600;text-transform:uppercase}.deployments-page__detail-metric div{color:var(--text-primary);font-size:12px;word-break:break-word}.deployments-page__notice{display:flex;align-items:center;gap:8px;margin-top:12px;padding:12px;border-radius:6px;font-size:12px}.deployments-page__notice--running{background:#6d7cff1a;color:#818cf8}.deployments-page__notice--error{background:#fb6f6f1a;border:1px solid rgba(251,111,111,.3);color:#fb6f6f}.deployments-page__logs-title{margin:20px 0 8px;color:var(--text-primary);font-size:12px;font-weight:600}.deployments-page__logs{flex:1;min-height:260px;max-height:420px;padding:12px;overflow-y:auto;background:#0b0f1a;border:1px solid rgba(148,163,184,.16);border-radius:6px;color:#cbd5e1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;line-height:1.6;white-space:pre-wrap}.deployments-page__log-time{color:#64748b}.deployments-page__log-level{color:#94a3b8}.deployments-page__status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:9999px;font-size:10px;font-weight:600;line-height:1;text-transform:capitalize;white-space:nowrap}.deployments-page__spin{animation:deployments-spin 1s linear infinite}@keyframes deployments-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1280px){.deployments-page__detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1024px){.deployments-page__workspace{grid-template-columns:1fr}}@media (max-width: 768px){.deployments-page__header{flex-direction:column}.deployments-page__actions,.deployments-page__toolbar{width:100%}.deployments-page__toolbar{flex-direction:column;align-items:stretch}.deployments-page__filter{min-width:0}.deployments-page__jobs-panel{overflow-x:auto}.deployments-page__jobs-table{min-width:760px}}@media (max-width: 640px){.deployments-page__detail-grid{grid-template-columns:1fr}.deployments-page__actions{flex-direction:column;align-items:stretch}}.terminal-page .tabs .tab{display:flex;align-items:center;gap:8px}.terminal-page .tabs .tab svg{stroke:currentColor;fill:none;stroke-width:2}.terminal-page .spinning,.lv-page .spinning{animation:spin 1s linear infinite}.term-shell{display:grid;grid-template-columns:260px 1fr;height:calc(100vh - 220px);min-height:420px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden}.term-shell__rail{border-right:1px solid var(--border-soft);overflow-y:auto;padding:8px 0}.term-shell__grp{padding:8px 14px 6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-ghost)}.term-shell__hint{padding:8px 14px;font-size:12.5px;color:var(--text-faint)}.term-shell__row{display:flex;align-items:center;gap:9px;width:100%;padding:8px 14px;background:transparent;border:none;text-align:left;font-size:13px;color:var(--text-dim);cursor:pointer;transition:background .12s,color .12s}.term-shell__row:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.term-shell__row.is-active{background:var(--accent-bg);color:var(--accent-bright)}.term-shell__row:disabled{opacity:.5;cursor:not-allowed}.term-shell__ico{flex-shrink:0;color:var(--text-faint)}.term-shell__dot{width:7px;height:7px;border-radius:50%;background:var(--text-ghost);flex-shrink:0}.term-shell__dot.is-on{background:var(--green);box-shadow:0 0 5px var(--green)}.term-shell__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.term-shell__sub{font-family:var(--mono);font-size:10.5px;color:var(--text-ghost)}.term-shell__main{min-width:0;min-height:0;display:flex}.term-shell__main .remote-terminal-container{flex:1;min-width:0;border:none;border-radius:0;box-shadow:none}.term-shell__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;color:var(--text-faint);text-align:center}.term-shell__empty p{max-width:400px;margin:0;font-size:13px;line-height:1.6}@media (max-width: 768px){.term-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.term-shell__rail{border-right:none;border-bottom:1px solid var(--border-soft);max-height:180px}}.lv-page{display:flex;flex-direction:column;height:calc(100vh - 220px);min-height:540px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.lv-page.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;height:100vh;min-height:0;border:none;border-radius:0}.lv-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:9px 16px;background:var(--surface);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;flex-shrink:0}.lv-header-target{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lv-header-label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-ghost)}.lv-header-label.is-indented{padding-left:8px}.lv-header-hint{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#f5b9451f;border:1px solid rgba(245,185,69,.22);border-radius:6px;color:#f5b945;font-family:var(--mono);font-size:11px}.lv-header-hint svg{flex-shrink:0}.lv-header-hint--info{background:#49c7f01f;border-color:#49c7f038;color:#49c7f0}.lv-header-stats{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--text-faint);font-size:12px}.lv-stat{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim)}.lv-stat svg{color:var(--text-faint)}.lv-stat-label{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-ghost)}.lv-stat-value{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.lv-stat-divider{width:1px;height:12px;background:var(--border)}.lv-error{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fb6f6f1f;border-bottom:1px solid rgba(251,111,111,.22);color:#fb6f6f;font-size:12px;flex-shrink:0}.lv-error>svg{flex-shrink:0}.lv-error>span{flex:1}.lv-error button{background:transparent;border:none;color:#fb6f6f;cursor:pointer;font-size:18px;line-height:1;padding:0 4px;opacity:.7}.lv-error button:hover{opacity:1}.lv-layout{display:grid;grid-template-columns:280px 1fr;gap:0;flex:1;min-height:0}@media (max-width: 1024px){.lv-layout{grid-template-columns:1fr;grid-template-rows:240px 1fr}.lv-layout .lv-sidebar{border-right:none;border-bottom:1px solid var(--border-soft)}}.lv-sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;overflow:hidden;min-height:0}.lv-sidebar-header{display:flex;align-items:center;gap:8px;padding:8px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.lv-search{position:relative;flex:1;display:flex;align-items:center}.lv-search .lv-search-icon{position:absolute;left:8px;color:var(--text-faint);pointer-events:none}.lv-search input{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 8px 6px 28px;font-size:12.5px;color:var(--text-primary);transition:all .2s ease}.lv-search input::placeholder{color:var(--text-faint)}.lv-search input:focus{outline:none;border-color:var(--accent-dim);background:var(--surface)}.lv-search.has-no-icon input{padding-left:8px}.lv-sidebar-body{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin}.lv-sidebar-body::-webkit-scrollbar{width:4px}.lv-sidebar-body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.lv-empty-hint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 12px;color:var(--text-faint);text-align:center}.lv-empty-hint svg{opacity:.6}.lv-empty-hint p{margin:0;font-size:12px}.lv-empty-hint.is-compact{padding:12px}.lv-empty-hint.is-medium{min-height:320px}.lv-empty-hint.is-tall{min-height:400px}.lv-empty-hint__title{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.lv-group{display:flex;flex-direction:column;margin-bottom:4px}.lv-group-header{display:flex;align-items:center;gap:4px;padding:9px 6px 4px;background:transparent;border:none;color:var(--text-ghost);font-family:var(--mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;border-radius:4px}.lv-group-header.is-static{cursor:default}.lv-group-header__spacer{width:12px}.lv-group-header{transition:color .2s ease}.lv-group-header:hover{background:transparent;color:var(--text-faint)}.lv-group-header>svg:first-of-type{color:inherit}.lv-group-header .lv-group-icon{color:inherit;margin-right:2px}.lv-group-header>span{flex:1;text-align:left}.lv-group-count{font-family:var(--mono);background:transparent;color:var(--text-ghost);padding:0 2px;font-size:10px;font-weight:600;line-height:14px;letter-spacing:0;text-transform:none}.lv-group-files{display:flex;flex-direction:column;gap:1px;padding:2px 0 8px}.lv-file{display:grid;grid-template-columns:8px 1fr auto;grid-template-rows:auto auto;grid-template-areas:"dot name size" "dot name time";align-items:center;gap:2px 8px;padding:6px 9px;background:transparent;border:none;border-radius:8px;color:var(--text-dim);font-size:13px;text-align:left;cursor:pointer;transition:background .2s ease}.lv-file:hover{background:var(--surface-2)}.lv-file.active{background:var(--accent-bg)}.lv-file.active .lv-file-name{color:var(--text);font-weight:500}.lv-file--compact{grid-template-columns:8px 1fr;grid-template-areas:"dot name" "dot name"}.lv-file-dot{grid-area:dot;width:7px;height:7px;border-radius:50%;background:#646b7a}.lv-file-dot.is-accent{background:var(--accent)}.lv-file-dot.kind-error{background:#fb6f6f}.lv-file-dot.kind-access{background:#3ddc97}.lv-file-dot.kind-nginx{background:#6d7cff}.lv-file-dot.kind-apache{background:#f59e0b}.lv-file-dot.kind-database{background:#b07bf5}.lv-file-dot.kind-php{background:#777bb4}.lv-file-dot.kind-system{background:#9aa1af}.lv-file-dot.kind-security{background:#ec4899}.lv-file-dot.kind-mail{background:#14b8a6}.lv-file-name{grid-area:name;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-file-size{grid-area:size;font-family:var(--mono);font-size:10.5px;color:var(--text-ghost)}.lv-file-time{grid-area:time;font-family:var(--mono);font-size:10px;color:var(--text-ghost)}.lv-viewer{background:var(--surface);display:flex;flex-direction:column;overflow:hidden;min-height:0}.lv-viewer-path{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--border-soft);flex-shrink:0}.lv-viewer-path code{font-family:var(--mono);font-size:12px;color:var(--text-dim);background:transparent;padding:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-viewer-path-dot{width:7px;height:7px;border-radius:50%;background:#646b7a;flex-shrink:0}.lv-viewer-path-dot.kind-error{background:#fb6f6f}.lv-viewer-path-dot.kind-access{background:#3ddc97}.lv-viewer-path-dot.kind-nginx{background:#6d7cff}.lv-viewer-path-dot.kind-apache{background:#f59e0b}.lv-viewer-path-dot.kind-database{background:#b07bf5}.lv-viewer-path-dot.kind-php{background:#777bb4}.lv-viewer-path-dot.kind-system{background:#9aa1af}.lv-viewer-path-dot.kind-security{background:#ec4899}.lv-viewer-path-dot.kind-mail{background:#14b8a6}.lv-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--border-soft);background:var(--surface);flex-wrap:wrap;flex-shrink:0}.lv-toolbar-left,.lv-toolbar-right{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.lv-search-field{position:relative;display:flex;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;min-width:220px;transition:all .2s ease}.lv-search-field.is-wide{min-width:260px}.lv-search-field:focus-within{border-color:var(--accent-dim);background:var(--surface)}.lv-search-field .lv-search-field-icon{position:absolute;left:12px;color:var(--text-faint);pointer-events:none}.lv-search-field input{background:transparent;border:none;padding:6px 12px 6px 30px;font-size:12.5px;color:var(--text-primary);width:100%}.lv-search-field input::placeholder{color:var(--text-faint)}.lv-search-field input:focus{outline:none}.lv-search-field .lv-search-field-clear{position:absolute;right:6px;background:transparent;border:none;padding:4px;color:var(--text-faint);cursor:pointer;border-radius:4px;display:flex;align-items:center}.lv-search-field .lv-search-field-clear:hover{background:var(--surface-3);color:var(--text)}.lv-select{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-size:12.5px;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.lv-select:focus,.lv-select:hover{border-color:var(--border-strong);outline:none}.lv-icon-btn{background:transparent;border:none;padding:6px;border-radius:8px;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.lv-icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.lv-icon-btn:disabled{opacity:.4;cursor:not-allowed}.lv-icon-btn.active{background:var(--accent-bg);color:var(--accent-bright)}.lv-icon-btn.danger:hover:not(:disabled){background:#fb6f6f1f;color:#fb6f6f}.lv-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 11px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-dim);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .2s ease}.lv-chip:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)}.lv-chip:disabled{opacity:.5;cursor:not-allowed}.lv-chip.active{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-bright)}.lv-pulse{width:8px;height:8px;border-radius:50%;background:var(--text-faint)}.lv-pulse.on{background:var(--green);box-shadow:0 0 #3ddc9799;animation:lv-pulse 1.6s ease-out infinite}@keyframes lv-pulse{0%{box-shadow:0 0 #3ddc9799}70%{box-shadow:0 0 0 8px #3ddc9700}to{box-shadow:0 0 #3ddc9700}}.lv-content{flex:1;overflow:auto;background:var(--bg-code);font-family:var(--mono);font-size:12px;line-height:1.65;min-height:0;scrollbar-width:thin}.lv-content::-webkit-scrollbar{width:8px;height:8px}.lv-content::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.lv-content::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.lv-content.wrap .lv-line-text{white-space:pre-wrap;word-break:break-word}.lv-content.nowrap .lv-line-text{white-space:pre}.lv-content-wrap{position:relative;flex:1;min-height:0;display:flex}.lv-live-badge{position:absolute;top:10px;right:16px;z-index:4;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--red, #dc2626);box-shadow:0 2px 10px #0000004d;pointer-events:none}.lv-live-dot{width:7px;height:7px;border-radius:50%;background:#fff;animation:lv-live-pulse 1.3s ease-in-out infinite}@keyframes lv-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}.terminal-page.page-container--full-bleed{height:100%;min-height:0;display:flex;flex-direction:column;padding:12px 16px;overflow:hidden}.terminal-page.page-container--full-bleed>.sk-topbar{flex-shrink:0}.terminal-page.page-container--full-bleed>.tab-content{flex:1;min-height:0;display:flex;flex-direction:column}.terminal-page.page-container--full-bleed .term-shell,.terminal-page.page-container--full-bleed .lv-page:not(.fullscreen),.terminal-page.page-container--full-bleed .proc-page,.terminal-page.page-container--full-bleed .svc-page{flex:1;height:auto;min-height:0}.lv-content-loading,.lv-content-empty{display:flex;align-items:center;justify-content:center;color:var(--text-faint);text-align:center;padding:32px}.lv-content-loading p,.lv-content-empty p{margin:0;max-width:360px;line-height:1.5}.lv-content-loading.is-medium,.lv-content-empty.is-medium{min-height:320px}.lv-lines{padding:8px 0}.lv-line{display:flex;align-items:flex-start;padding:0 16px;color:var(--text-code);transition:background .2s ease}.lv-line:hover{background:#6d7cff0a}.lv-line.sev-fatal{color:#fb6f6f;background:#fb6f6f0f}.lv-line.sev-error{color:#fc8d8d}.lv-line.sev-warn{color:#f5b945}.lv-line.sev-info{color:#49c7f0}.lv-line.sev-debug{color:#9aa1af;opacity:.85}.lv-line.sev-fatal:hover{background:#fb6f6f1f}.lv-line.sev-error:hover{background:#fc8d8d14}.lv-line.sev-warn:hover{background:#f5b94514}.lv-line-no{flex-shrink:0;width:52px;padding-right:12px;text-align:right;color:var(--text-ghost);-webkit-user-select:none;user-select:none;font-size:11px;line-height:inherit}.lv-line-text{flex:1;min-width:0}.lv-match{background:#f5b945;color:#0a0b0e;padding:0 2px;border-radius:2px;font-weight:600}.proc-page{display:flex;flex-direction:column;height:calc(100vh - 220px);min-height:540px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.proc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;flex-shrink:0}.proc-filter-chips{display:flex;gap:7px;flex-wrap:wrap}.proc-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-faint);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .2s ease}.proc-chip:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong)}.proc-chip:disabled{opacity:.45;cursor:not-allowed}.proc-chip.active{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-bright)}.proc-chip-count{font-family:var(--mono);font-size:10.5px;opacity:.75}.proc-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.proc-layout{display:grid;grid-template-columns:220px 1fr;gap:0;flex:1;min-height:0}@media (max-width: 1024px){.proc-layout{grid-template-columns:1fr;grid-template-rows:200px 1fr}.proc-layout .proc-sidebar{border-right:none;border-bottom:1px solid var(--border-soft)}}.proc-sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;overflow:hidden;min-height:0}.proc-main{background:var(--surface);overflow:hidden;display:flex;flex-direction:column;min-height:0}.proc-table-wrap{flex:1;overflow:auto;scrollbar-width:thin}.proc-table-wrap::-webkit-scrollbar{width:8px;height:8px}.proc-table-wrap::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.proc-table{width:100%;border-collapse:collapse;font-size:13px}.proc-table thead th{position:sticky;top:0;background:var(--surface);text-align:left;padding:10px 16px;font-family:var(--mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);cursor:pointer;transition:color .2s ease;z-index:1;border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.proc-table thead th:hover{color:var(--text-dim)}.proc-table thead th.active{color:var(--accent-bright)}.proc-table tbody tr{border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background .2s ease}.proc-table tbody tr:hover{background:var(--surface-2)}.proc-table tbody tr.selected{background:var(--accent-bg-soft)}.proc-table tbody tr.selected:hover{background:var(--accent-bg)}.proc-table td{padding:9px 16px;vertical-align:middle}.proc-table .mono{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.proc-name-cell{display:flex;flex-direction:column;min-width:0;max-width:320px}.proc-name{color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proc-cmd{font-family:var(--mono);font-size:10.5px;color:var(--text-ghost);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proc-user-tag{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-size:12.5px}.proc-user-dot{width:6px;height:6px;border-radius:50%}.proc-bar-cell{display:flex;flex-direction:column;gap:4px;min-width:80px}.proc-bar-value{font-family:var(--mono);font-size:11.5px;color:var(--text-dim)}.proc-bar{height:4px;background:var(--surface-3);border-radius:3px;overflow:hidden}.proc-bar-fill{height:100%;border-radius:3px;transition:width .2s ease}.proc-bar-fill.cpu{background:var(--accent-bright)}.proc-bar-fill.mem{background:var(--cyan)}.proc-actions{display:flex;gap:2px;justify-content:flex-end}.proc-command{font-family:var(--mono);font-size:12px;color:var(--text-code);background:var(--bg-code);border:1px solid var(--border-soft);padding:12px;border-radius:6px;margin:0;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.svc-page{display:flex;flex-direction:column;gap:12px}.svc-page>.lv-header{border:1px solid var(--border);border-radius:var(--radius-lg)}.svc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap}.svc-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.svc-card{position:relative;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:all .2s ease;overflow:hidden}.svc-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--border);transition:background .2s ease}.svc-card.status-running:before{background:var(--green)}.svc-card.status-failed:before{background:var(--red)}.svc-card.status-stopped:before{background:var(--text-ghost)}.svc-card.status-other:before{background:var(--amber)}.svc-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-md)}.svc-card.status-failed{background:linear-gradient(135deg,rgba(251,111,111,.05),var(--surface) 60%)}.svc-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.svc-card-title{display:flex;align-items:center;gap:8px;min-width:0}.svc-card-title h4{margin:0;font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--mono)}.svc-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--text-ghost);flex-shrink:0}.svc-status-dot.is-large{width:12px;height:12px}.svc-status-dot.status-running{background:var(--green);box-shadow:0 0 0 3px #3ddc972e}.svc-status-dot.status-failed{background:var(--red);box-shadow:0 0 0 3px #fb6f6f2e}.svc-status-dot.status-stopped{background:var(--text-ghost)}.svc-status-dot.status-other{background:var(--amber)}.svc-card-desc{margin:0;font-size:12px;color:var(--text-dim);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.svc-card-meta{display:flex;gap:16px;font-size:11.5px;color:var(--text-faint);font-family:var(--mono)}.svc-meta-label{color:var(--text-ghost);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-right:2px;font-size:9.5px}.svc-card-actions{display:flex;gap:4px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-soft);flex-wrap:wrap}.svc-action-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.svc-action-btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.svc-action-btn:disabled{opacity:.5;cursor:not-allowed}.svc-action-btn.primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.svc-action-btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.svc-action-btn.danger{background:#fb6f6f;border-color:#fb6f6f;color:#fff}.svc-action-btn.danger:hover:not(:disabled){background:#e95f5f;border-color:#e95f5f}.svc-action-btn.ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.svc-action-btn.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.journal-container{display:flex;flex-direction:column;gap:24px;height:calc(100vh - 280px);min-height:500px}.journal-controls{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}.journal-controls .control-group{display:flex;flex-direction:column;gap:8px}.journal-controls .control-group label{font-size:10px;font-weight:500;color:var(--text-secondary)}.journal-controls .control-group input,.journal-controls .control-group select{min-height:36px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card);font-size:12px}.journal-controls .control-group input{width:200px}.input-with-suggestions{display:flex;flex-direction:column;gap:8px}.quick-units{display:flex;flex-wrap:wrap;gap:4px}.unit-chip{min-height:24px;padding:4px 12px;border:1px solid var(--border-subtle);border-radius:9999px;background:var(--bg-card);font-size:10px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.unit-chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.unit-chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.journal-source-notice{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;font-size:10px;color:var(--text-secondary);margin-top:-16px}.journal-source-notice svg{stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}.journal-source-notice strong{color:var(--text-primary)}.journal-viewer{flex:1;background:var(--bg-code);border-radius:8px;overflow:auto;padding:1rem}.journal-viewer pre{margin:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.4;color:var(--text-code);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.processes-container{display:flex;flex-direction:column;gap:24px}.processes-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.processes-toolbar .toolbar-left,.processes-toolbar .toolbar-right{display:flex;align-items:center;gap:8px}.processes-toolbar select{padding:4px 8px;border:1px solid var(--border-subtle);border-radius:4px;background:var(--bg-card);font-size:12px}.processes-table-wrapper{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.processes-table{width:100%;min-width:800px;table-layout:fixed;border-collapse:collapse}.processes-table th,.processes-table td{padding:8px 12px;text-align:left;vertical-align:middle;font-size:12px}.processes-table th{position:sticky;top:0;background:var(--bg-card);z-index:1;font-weight:600;color:var(--text-secondary);font-size:10px;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-subtle)}.processes-table th:nth-child(1),.processes-table td:nth-child(1){width:70px}.processes-table th:nth-child(2),.processes-table td:nth-child(2){width:auto}.processes-table th:nth-child(3),.processes-table td:nth-child(3){width:90px}.processes-table th:nth-child(4),.processes-table td:nth-child(4){width:110px}.processes-table th:nth-child(5),.processes-table td:nth-child(5){width:110px}.processes-table th:nth-child(6),.processes-table td:nth-child(6){width:90px}.processes-table th:nth-child(7),.processes-table td:nth-child(7){width:80px}.processes-table th:nth-child(8),.processes-table td:nth-child(8){width:110px}.processes-table tr{cursor:pointer;transition:background .15s ease}.processes-table tr:hover{background:var(--bg-hover)}.processes-table tr.selected{background:#49c7f01a}.processes-table tbody tr{border-bottom:1px solid var(--border-subtle)}.processes-table .mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.processes-table .process-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.processes-table .usage-cell{position:relative}.processes-table .usage-cell .usage-bar{position:absolute;left:0;bottom:0;height:3px;border-radius:2px;opacity:.4}.processes-table .usage-cell .usage-bar.cpu{background:var(--accent-primary)}.processes-table .usage-cell .usage-bar.memory{background:#a855f7}.processes-table .usage-cell span{position:relative;font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.processes-table .action-buttons{display:flex;gap:4px;align-items:center}.processes-table .process-action-button{width:28px;height:28px}.btn-xs{padding:2px 6px;font-size:11px}.btn-xs svg{stroke:currentColor;fill:none;stroke-width:2}.process-details-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.process-details-panel .panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-subtle)}.process-details-panel .panel-header h3{font-size:16px;font-weight:600;margin:0}.process-details-panel .panel-body{padding:16px}.process-details-panel .details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.process-details-panel .detail-item{display:flex;flex-direction:column;gap:4px}.process-details-panel .detail-item .detail-label{font-size:10px;color:var(--text-tertiary)}.process-details-panel .detail-item .detail-value{font-size:12px;font-weight:500}.process-details-panel .detail-item .detail-value.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.process-details-panel .command-line{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.process-details-panel .command-line .detail-label{display:block;font-size:10px;color:var(--text-tertiary);margin-bottom:4px}.process-details-panel .command-line code{display:block;padding:8px;background:var(--bg-hover);border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;word-break:break-all}.services-container{display:flex;flex-direction:column;gap:24px}.services-toolbar{display:flex;align-items:center;gap:8px}.services-toolbar .btn svg{stroke:currentColor;fill:none;stroke-width:2}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.service-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:8px;flex:1 1 240px;min-width:240px}.service-card .service-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.service-card .service-header .service-info{display:flex;align-items:center;gap:8px}.service-card .service-header .service-info .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.service-card .service-header .service-info .status-dot.success{background:#3ddc97}.service-card .service-header .service-info .status-dot.danger{background:#fb6f6f}.service-card .service-header .service-info .status-dot.warning{background:#f5b945}.service-card .service-header .service-info .status-dot.secondary{background:var(--text-tertiary)}.service-card .service-header .service-info h4{font-size:12px;font-weight:600;margin:0}.service-card .service-description{font-size:10px;color:var(--text-secondary);margin:0}.service-card .service-meta{display:flex;gap:16px;font-size:10px;color:var(--text-tertiary)}.service-card .service-meta .meta-label{color:var(--text-secondary)}.service-card .service-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-subtle)}.service-card .service-actions .size-8,.service-card .service-actions button{min-width:64px}.modal-lg{max-width:900px;width:90%}.modal-log-viewer{max-height:500px;overflow:auto;background:var(--bg-code);border-radius:6px;padding:1rem}.modal-log-viewer pre{margin:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.4;color:var(--text-code);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.settings-layout{display:grid;grid-template-columns:206px 1fr;gap:24px;min-height:calc(100vh - 200px)}@media (max-width: 1024px){.settings-layout{grid-template-columns:1fr}}.settings-nav{display:flex;flex-direction:column;gap:4px;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}.settings-nav::-webkit-scrollbar{width:4px}.settings-nav::-webkit-scrollbar-track{background:transparent}.settings-nav::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:9999px}@media (max-width: 1024px){.settings-nav{flex-direction:row;flex-wrap:wrap;position:static;max-height:none;overflow-y:visible;background:var(--bg-card);padding:8px;border-radius:8px}}.settings-nav-groups{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:12px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px}@media (max-width: 1024px){.settings-nav-groups{flex-basis:100%;width:100%}}.settings-nav-group{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:8px 12px;border-radius:4px;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.settings-nav-group:hover{color:var(--text-primary);background:var(--bg-hover)}.settings-nav-group.active{background:var(--accent-bg);color:var(--accent-bright)}.settings-nav-item,.settings-nav-item.settings-nav-item{display:flex;align-items:center;justify-content:flex-start!important;gap:12px;padding:12px 16px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.settings-nav-item svg,.settings-nav-item.settings-nav-item svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}.settings-nav-item:hover,.settings-nav-item.settings-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-nav-item.active,.settings-nav-item.settings-nav-item.active{background:var(--accent-bg);color:var(--accent-bright)}.settings-nav-item.active svg,.settings-nav-item.settings-nav-item.active svg{stroke:var(--accent-bright)}@media (max-width: 1024px){.settings-nav-item,.settings-nav-item.settings-nav-item{width:auto;padding:8px 12px}}.settings-nav-spacer{flex:1;min-height:16px}.settings-content{min-width:0}.settings-section{display:flex;flex-direction:column;gap:20px}.settings-section .section-header{display:block;margin-bottom:8px}.settings-section .section-header h2{font-size:18px;font-weight:600;margin:0 0 4px}.settings-section .section-header p{color:var(--text-secondary);margin:0;font-size:12px}.settings-section h3{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--text-primary)}.settings-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:20px}.settings-card h3{margin:0}.settings-card>p{color:var(--text-secondary);font-size:12px;margin:0 0 16px}.settings-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.settings-card__header-left{display:flex;align-items:flex-start;gap:12px}.settings-card__header-left>svg{flex-shrink:0;color:var(--text-tertiary);margin-top:2px}.settings-card__header-left h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.settings-card__header-left p{color:var(--text-secondary);font-size:12px;margin:4px 0 0}.settings-card__empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;color:var(--text-tertiary);text-align:center}.settings-card__empty>svg{opacity:.4}.settings-card__empty p{margin:0;font-size:12px;color:var(--text-tertiary)}.source-connections .source-connection-status{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--border-subtle);border-radius:9999px;color:var(--text-tertiary);font-size:10px;font-weight:500}.source-connections .source-connection-status--connected{border-color:#3ddc9738;background:#3ddc971f;color:#3ddc97}.source-connections .source-connection-profile,.source-connections .source-connection-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.source-connections .source-connection-profile img{width:42px;height:42px;border-radius:9999px}.source-connections .source-connection-profile strong,.source-connections .source-connection-profile span{display:block}.source-connections .source-connection-profile strong{color:var(--text-primary);font-size:12px;font-weight:600}.source-connections .source-connection-profile span{margin-top:2px;color:var(--text-tertiary);font-size:10px}.source-connections .source-connection-empty>svg{color:var(--accent-primary)}.source-connections .source-connection-empty strong,.source-connections .source-connection-empty span{display:block}.source-connections .source-connection-empty strong{color:var(--text-primary);font-size:12px;font-weight:600}.source-connections .source-connection-empty span{margin-top:3px;color:var(--text-tertiary);font-size:10px;line-height:1.45}.source-oauth-config__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.source-oauth-config__callback{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-tertiary);font-size:10px;overflow-wrap:anywhere}.source-oauth-config__callback svg{flex-shrink:0;color:var(--text-secondary)}@media (max-width: 768px){.source-connections .source-connection-profile,.source-connections .source-connection-empty{grid-template-columns:1fr}.source-connections .source-connection-profile .btn,.source-connections .source-connection-profile button,.source-connections .source-connection-empty .btn,.source-connections .source-connection-empty button{width:100%}.source-oauth-config__grid{grid-template-columns:1fr}}.settings-card__loading{padding:24px;text-align:center;color:var(--text-tertiary);font-size:12px}.settings-card__footer{display:flex;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-subtle)}.settings-form{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:20px}.settings-form .form-group{margin-bottom:16px}.settings-form .form-group:last-of-type{margin-bottom:0}.settings-form .form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.settings-form .form-group input:not([type=checkbox]):not([type=radio]),.settings-form .form-group select,.settings-form .form-group textarea{width:100%;padding:12px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px;transition:border-color .15s ease}.settings-form .form-group input:not([type=checkbox]):not([type=radio]):focus,.settings-form .form-group select:focus,.settings-form .form-group textarea:focus{outline:none;border-color:var(--accent-primary)}.settings-form .form-group input:not([type=checkbox]):not([type=radio]):disabled,.settings-form .form-group input:not([type=checkbox]):not([type=radio]).input-disabled,.settings-form .form-group select:disabled,.settings-form .form-group select.input-disabled,.settings-form .form-group textarea:disabled,.settings-form .form-group textarea.input-disabled{opacity:.6;cursor:not-allowed;background:var(--bg-body)}.settings-form .form-group .form-help{display:block;margin-top:4px;font-size:10px;color:var(--text-tertiary)}.settings-form .form-actions{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-subtle);display:flex;gap:8px}.session-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-hover);border-radius:6px;margin-top:12px}.session-item .session-info{display:flex;align-items:center;gap:12px}.session-item .session-info svg{stroke:var(--text-secondary);fill:none;stroke-width:2}.session-item .session-info .session-device{display:block;font-weight:500;color:var(--text-primary)}.session-item .session-info .session-details{display:block;font-size:10px;color:var(--text-tertiary)}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 768px){.theme-options{grid-template-columns:1fr}}.theme-option{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;background:transparent;border:2px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease}.theme-option:hover{border-color:var(--border-active)}.theme-option.active{border-color:var(--accent-primary);background:#6d7cff0d}.theme-option span{font-size:12px;font-weight:500;color:var(--text-primary)}.theme-preview{width:100%;height:80px;border-radius:6px;display:flex;overflow:hidden}.theme-preview .preview-sidebar{width:25%;background:#18181b}.theme-preview .preview-content{flex:1;padding:8px;display:flex;flex-direction:column;gap:4px}.theme-preview .preview-card{flex:1;border-radius:4px}.theme-preview.dark{border:1px solid var(--border-subtle)}.theme-preview.dark .preview-sidebar{background:#0d0f15}.theme-preview.dark .preview-content{background:#0a0b0e}.theme-preview.dark .preview-card{background:#101218}.theme-preview.light{border:1px solid #e5e5e5}.theme-preview.light .preview-sidebar{background:#f5f5f5}.theme-preview.light .preview-content{background:#fff}.theme-preview.light .preview-card{background:#f5f5f5}.theme-preview.system{border:1px solid var(--border-subtle);background:linear-gradient(135deg,#0a0b0e 50%,#fff 50%)}.theme-preview.system .preview-sidebar{background:linear-gradient(180deg,#0d0f15 50%,#f1f3f9 50%)}.theme-preview.system .preview-content{background:transparent}.theme-preview.system .preview-card{background:linear-gradient(135deg,#101218 50%,#f1f3f9 50%)}.density-options{display:flex;gap:16px}.radio-option{display:flex;align-items:center;gap:8px;cursor:pointer}.radio-option input[type=radio]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer}.radio-option span{font-size:12px;color:var(--text-primary)}.notification-options{display:flex;flex-direction:column;gap:12px}.notification-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-hover);border-radius:6px;gap:16px}.notification-item .notification-info{flex:1}.notification-item .notification-info .notification-title{display:block;font-weight:500;color:var(--text-primary);margin-bottom:4px}.notification-item .notification-info .notification-desc{display:block;font-size:10px;color:var(--text-tertiary)}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(160deg,var(--accent-bright),var(--accent-primary))}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px var(--accent-bg)}.toggle-switch .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--surface-3);border:1px solid var(--border);border-radius:24px;transition:all .15s ease}.toggle-switch .toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .15s ease}.toggle-switch:not(:has(input)){width:44px;height:24px;background:var(--surface-3);border:1px solid var(--border);border-radius:24px;cursor:pointer;transition:background .15s ease;flex-shrink:0}.toggle-switch:not(:has(input)).on{background:linear-gradient(160deg,var(--accent-bright),var(--accent-primary));border-color:transparent}.toggle-switch:not(:has(input)).on .toggle-knob{transform:translate(20px)}.toggle-switch:not(:has(input)) .toggle-knob{position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .15s ease;box-shadow:0 1px 3px #00000026}.toggle-label{display:flex!important;align-items:center;gap:12px;cursor:pointer}.toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.toggle-label span{font-size:12px;font-weight:500;color:var(--text-primary)}.system-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (max-width: 768px){.system-info-grid{grid-template-columns:1fr}}.info-list .info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.info-list .info-item:last-child{border-bottom:none}.info-list .info-item .info-label{font-size:12px;color:var(--text-tertiary)}.info-list .info-item .info-value{font-size:12px;font-weight:500;color:var(--text-primary)}.timezone-selector{display:flex;gap:12px;align-items:center}.timezone-selector select{flex:1;max-width:300px}.timezone-selector .btn{flex-shrink:0}.timezone-message{margin-top:8px;padding:8px 12px;border-radius:6px;font-size:12px}.timezone-message.success{background:#3ddc9726;color:#3ddc97}.timezone-message.error{background:#fb6f6f26;color:#fb6f6f}.about-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:32px;text-align:center}.about-card .about-logo{width:80px;height:80px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center}.about-card h3{font-size:20px;margin-bottom:4px}.about-card .version{color:var(--text-tertiary);font-size:12px;margin-bottom:16px}.about-card .description{color:var(--text-secondary);font-size:12px;line-height:1.6;max-width:500px;margin:0 auto}.about-card .update-check{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.about-card .update-check .btn-sm{font-size:10px;padding:8px 12px;display:inline-flex;align-items:center;gap:4px}.about-card .update-check .btn-sm .spinning{animation:spin 1s linear infinite}.about-card .update-check .update-status{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px}.about-card .update-check .update-status.current{color:#3ddc97}.about-card .update-check .update-status.available{color:#f5b945;flex-wrap:wrap}.about-card .update-check .update-status.available .btn{margin-left:8px;display:inline-flex;align-items:center;gap:4px}.about-card .update-check .update-status.error{color:#fb6f6f}.about-card .update-check .update-status.error .btn-link{background:none;border:none;color:var(--accent-primary);cursor:pointer;text-decoration:underline;font-size:12px;padding:0;margin-left:8px}.about-card .update-check .update-status.error .btn-link:hover{color:var(--accent-hover)}.star-prompt-card{position:relative;background:linear-gradient(135deg,var(--accent-glow) 0%,rgba(109,124,255,.08) 100%);border:1px solid rgba(109,124,255,.3);border-radius:8px;padding:24px;display:flex;align-items:flex-start;gap:16px}.star-prompt-card .dismiss-btn{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:4px;transition:all .15s ease}.star-prompt-card .dismiss-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.star-prompt-card .star-icon{flex-shrink:0;width:48px;height:48px;background:linear-gradient(135deg,#f5b945,#f2a715);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.star-prompt-card .star-content{flex:1;padding-right:24px}.star-prompt-card .star-content h4{margin:0 0 8px;font-size:16px;font-weight:600}.star-prompt-card .star-content p{margin:0 0 16px;font-size:12px;color:var(--text-secondary);line-height:1.6}.star-prompt-card .star-content .btn{display:inline-flex;align-items:center;gap:8px}@media (max-width: 640px){.star-prompt-card{flex-direction:column;text-align:center}.star-prompt-card .star-content{padding-right:0}}.feature-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 768px){.feature-list{grid-template-columns:1fr}}.feature-list li{display:flex;align-items:center;gap:8px;padding:8px;font-size:12px;color:var(--text-secondary)}.feature-list li svg{stroke:#3ddc97;fill:none;stroke-width:2;flex-shrink:0}.link-list{display:flex;flex-direction:column;gap:8px}.link-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-hover);border-radius:6px;color:var(--text-secondary);text-decoration:none;font-size:12px;transition:all .15s ease}.link-item svg{stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}.link-item:hover{background:var(--accent-primary);color:#fff}.license-text{color:var(--text-secondary);font-size:12px;margin:0}.loading{display:flex;align-items:center;justify-content:center;padding:48px;color:var(--text-secondary);font-size:12px}.settings-row{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:var(--bg-hover);border-radius:6px;gap:16px}.settings-row:not(:last-child){margin-bottom:12px}.settings-row.settings-linked-warning{background:#f5b9451a;border:1px solid rgba(245,185,69,.2)}.settings-label{flex:1}.settings-label>span:first-child{display:block;font-weight:500;color:var(--text-primary);margin-bottom:4px}.settings-label .settings-hint{display:block;font-size:10px;color:var(--text-tertiary)}.settings-control{display:flex;align-items:center;gap:8px;flex-shrink:0}.settings-select{min-width:160px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px;cursor:pointer;transition:border-color .15s ease}.settings-select:hover{border-color:var(--border-default)}.settings-select:focus{outline:none;border-color:var(--accent-primary)}.settings-select:disabled{opacity:.6;cursor:not-allowed}.settings-saving{font-size:10px;color:var(--text-tertiary);font-style:italic}.icon-reference-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:12px}.icon-reference-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1px solid var(--border-default);border-radius:6px;background:var(--bg-card);cursor:pointer;transition:all .15s ease}.icon-reference-item:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.icon-reference-item.copied{border-color:#3ddc97;background:#3ddc971f}.icon-reference-item svg{color:var(--text-primary);opacity:.8}.icon-reference-item .icon-reference-name{font-size:10px;color:var(--text-secondary);text-align:center;word-break:break-word;line-height:1.2}.icon-reference-item.copied .icon-reference-name{color:#3ddc97;font-weight:500}.accent-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}@media (max-width: 640px){.accent-presets{grid-template-columns:repeat(2,1fr)}}.accent-preset{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:2px solid var(--border-subtle);border-radius:6px;cursor:pointer;transition:all .15s ease}.accent-preset:hover{border-color:var(--border-active)}.accent-preset.active{border-color:var(--accent-primary);background:var(--bg-hover)}.accent-swatch{width:20px;height:20px;border-radius:9999px;flex-shrink:0}.accent-label{font-size:12px;font-weight:500;color:var(--text-primary)}.accent-custom{padding-top:12px;border-top:1px solid var(--border-subtle)}.accent-custom-label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.accent-custom-row{display:flex;align-items:center;gap:12px}.accent-custom-input{width:40px;height:32px;padding:0;border:1px solid var(--border-subtle);border-radius:6px;background:transparent;cursor:pointer}.accent-custom-input::-webkit-color-swatch-wrapper{padding:2px}.accent-custom-input::-webkit-color-swatch{border:none;border-radius:4px}.accent-custom-hex{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-secondary)}.widget-list{display:flex;flex-direction:column;gap:8px}.widget-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-hover);border-radius:6px;transition:opacity .15s ease}.widget-item--hidden{opacity:.5}.widget-item__info{display:flex;align-items:center;gap:12px}.widget-item__label{font-size:12px;font-weight:500;color:var(--text-primary)}.widget-item__controls{display:flex;gap:4px}.widget-move-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.widget-move-btn:hover:not(:disabled){background:var(--bg-card);color:var(--text-primary);border-color:var(--border-active)}.widget-move-btn:disabled{opacity:.3;cursor:not-allowed}.whitelabel-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}@media (max-width: 768px){.whitelabel-modes{grid-template-columns:1fr}}.whitelabel-mode{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;background:transparent;border:2px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:center;color:var(--text-secondary)}.whitelabel-mode svg{opacity:.7}.whitelabel-mode:hover{border-color:var(--border-active)}.whitelabel-mode.active{border-color:var(--accent-primary);background:#6d7cff0d;color:var(--text-primary)}.whitelabel-mode.active svg{color:var(--accent-primary);opacity:1}.whitelabel-mode .whitelabel-mode__label{font-size:12px;font-weight:500;color:var(--text-primary)}.whitelabel-mode .whitelabel-mode__desc{font-size:10px;color:var(--text-tertiary)}.whitelabel-fields{margin-top:16px;display:flex;flex-direction:column;gap:16px}.whitelabel-fields .form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.whitelabel-fields .form-group input[type=text]{width:100%;max-width:320px;padding:12px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px;transition:border-color .15s ease}.whitelabel-fields .form-group input[type=text]:focus{outline:none;border-color:var(--accent-primary)}.whitelabel-upload{border:2px dashed var(--border-subtle);border-radius:8px;padding:20px;cursor:pointer;transition:all .15s ease;text-align:center}.whitelabel-upload:hover{border-color:var(--accent-primary);background:#6d7cff08}.whitelabel-upload .whitelabel-upload__placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-tertiary)}.whitelabel-upload .whitelabel-upload__placeholder svg{opacity:.5}.whitelabel-upload .whitelabel-upload__placeholder span{font-size:12px}.whitelabel-upload .whitelabel-upload__hint{font-size:10px!important;color:var(--text-tertiary);opacity:.7}.whitelabel-logo-preview{display:flex;align-items:center;gap:16px;justify-content:center}.whitelabel-logo-preview img{width:48px;height:48px;object-fit:contain;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-hover);padding:4px}.whitelabel-preview{margin-top:16px}.whitelabel-preview .whitelabel-preview__label{display:block;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.whitelabel-preview .whitelabel-preview__box{display:flex;align-items:center;gap:10px;height:70px;padding:0 16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px}.whitelabel-star-prompt{margin-top:16px;background:linear-gradient(135deg,var(--accent-glow) 0%,rgba(109,124,255,.08) 100%);border:1px solid rgba(109,124,255,.3);border-radius:8px;padding:20px;display:flex;align-items:flex-start;gap:16px}.whitelabel-star-prompt .star-icon{flex-shrink:0;width:44px;height:44px;background:linear-gradient(135deg,#f5b945,#f2a715);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.whitelabel-star-prompt .star-content{flex:1}.whitelabel-star-prompt .star-content h4{margin:0 0 8px;font-size:16px;font-weight:600}.whitelabel-star-prompt .star-content p{margin:0 0 12px;font-size:12px;color:var(--text-secondary);line-height:1.6}.whitelabel-star-prompt .star-content .btn{display:inline-flex;align-items:center;gap:8px}@media (max-width: 640px){.whitelabel-star-prompt{flex-direction:column}}.sso-config{display:flex;flex-direction:column;gap:20px}.sso-general-form{display:flex;flex-direction:column;gap:16px}.sso-general-form .form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.sso-general-form .form-group select,.sso-general-form .form-group input[type=text]{width:100%;padding:12px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px}.sso-general-form .form-group select:focus,.sso-general-form .form-group input[type=text]:focus{outline:none;border-color:var(--accent-primary)}.sso-provider-config{border:1px solid var(--border-subtle)}.sso-provider-config--enabled{border-color:var(--accent-primary)}.sso-provider-config .sso-provider-config__header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:16px}.sso-provider-config .sso-provider-config__header:hover{background:var(--bg-hover)}.sso-provider-config .sso-provider-config__title{display:flex;align-items:center;gap:12px}.sso-provider-config .sso-provider-config__title h3{margin:0}.sso-provider-config .sso-provider-config__status{font-size:10px;padding:4px 8px;border-radius:9999px;font-weight:500}.sso-provider-config .sso-provider-config__status--active{background:#3ddc9726;color:#3ddc97}.sso-provider-config .sso-provider-config__body{padding:16px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:16px}.sso-provider-config .sso-provider-config__body .form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.sso-provider-config .sso-provider-config__body .form-group input,.sso-provider-config .sso-provider-config__body .form-group textarea{width:100%;padding:12px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.sso-provider-config .sso-provider-config__body .form-group input:focus,.sso-provider-config .sso-provider-config__body .form-group textarea:focus{outline:none;border-color:var(--accent-primary)}.sso-provider-config .sso-provider-config__body .form-group textarea{resize:vertical;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.sso-provider-config .sso-provider-config__actions{display:flex;gap:12px;padding-top:8px}.linked-accounts-list{display:flex;flex-direction:column;gap:12px;margin:16px 0}.linked-account{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-subtle)}.linked-account .linked-account__info{display:flex;align-items:center;gap:12px}.linked-account .linked-account__info div{display:flex;flex-direction:column}.linked-account .linked-account__provider{font-weight:500;text-transform:capitalize}.linked-account .linked-account__email{font-size:12px;color:var(--text-secondary)}.linked-accounts-available{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}.linked-accounts-available .btn{display:flex;align-items:center;gap:8px}.sidebar-settings{display:flex;flex-direction:column;gap:32px}.sidebar-settings .settings-section-desc{color:var(--text-secondary);font-size:12px;margin:0;line-height:1.5}.sidebar-settings .settings-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.sidebar-settings .settings-section-header h3{margin-bottom:0}.sidebar-item-count{font-size:10px;color:var(--text-tertiary);background:var(--bg-secondary);padding:4px 8px;border-radius:9999px;font-weight:500}.sidebar-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:8px}.sidebar-preset-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;width:100%;position:relative}.sidebar-preset-card:hover{border-color:var(--border-hover);background:var(--bg-hover)}.sidebar-preset-card.active{border-color:var(--accent-primary);background:var(--bg-card);box-shadow:0 0 0 1px var(--accent-primary)}.sidebar-preset-card .preset-card-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:6px;color:var(--text-secondary)}.sidebar-preset-card .preset-card-icon svg{stroke-width:1.5}.sidebar-preset-card.active .preset-card-icon{background:#6d7cff26;color:var(--accent-primary)}.sidebar-preset-card .preset-card-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.sidebar-preset-card .preset-card-label{font-size:12px;font-weight:600;color:var(--text-primary)}.sidebar-preset-card .preset-card-desc{font-size:10px;color:var(--text-tertiary);line-height:1.5}.sidebar-preset-card .preset-card-check{position:absolute;top:12px;right:12px;color:var(--accent-primary)}.migration-pending-banner{display:flex;align-items:flex-start;gap:12px;padding:16px;margin-bottom:16px;background:#f5b9451a;border:1px solid rgba(245,185,69,.2);border-radius:6px}.migration-pending-banner .migration-pending-icon{color:#f5b945;flex-shrink:0;margin-top:1px}.migration-pending-banner .migration-pending-body{flex:1;min-width:0}.migration-pending-banner .migration-pending-title{margin:0 0 4px;font-weight:600;color:var(--text-primary)}.migration-pending-banner .migration-pending-desc{margin:0 0 12px;font-size:12px;color:var(--text-secondary)}.migration-pending-banner .migration-pending-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.migration-pending-banner .migration-backup-toggle{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.migration-pending-banner .migration-backup-toggle input{accent-color:var(--accent-primary);cursor:pointer}.migration-uptodate{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;color:var(--text-secondary)}.migration-uptodate svg{color:#3ddc97;flex-shrink:0}.migration-pending-desc code,.migration-uptodate code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;padding:1px 5px;background:var(--bg-tertiary);border-radius:4px;color:var(--text-primary)}.sidebar-items-list{display:flex;flex-direction:column;gap:20px;margin-top:8px}.sidebar-items-group{display:flex;flex-direction:column;gap:0}.sidebar-items-group-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:0 0 8px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.sidebar-item-toggle{display:flex;align-items:center;justify-content:space-between;padding:12px 8px;border-radius:6px;cursor:pointer;transition:all .15s ease}.sidebar-item-toggle:hover{background:var(--bg-hover)}.sidebar-item-toggle.hidden-item .sidebar-item-toggle-info{opacity:.5}.sidebar-item-toggle-info{display:flex;align-items:center;gap:12px;transition:opacity .15s ease}.sidebar-item-toggle-info span{font-size:12px;color:var(--text-primary);font-weight:500}.sidebar-item-toggle-icon{width:18px;height:18px;stroke:var(--text-secondary);fill:none;stroke-width:2;flex-shrink:0}.sidebar-settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--border-subtle)}.sk-notif-page{max-width:760px;margin:0 auto;padding:20px 24px 40px}.sk-notif-page__filters{display:inline-flex;gap:4px;margin-bottom:16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:9px;padding:3px}.sk-notif-page__filters button{border:none;background:none;cursor:pointer;padding:6px 14px;border-radius:7px;font-size:13px;font-weight:500;color:var(--text-secondary)}.sk-notif-page__filters button:hover{color:var(--text-primary)}.sk-notif-page__filters button.is-active{background:var(--accent-bg);color:var(--accent-primary)}.sk-notif-page__state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:60px 20px;color:var(--text-secondary)}.sk-notif-page__state svg{opacity:.5}.sk-notif-page__state p{margin:0;font-size:14px}.sk-notif-page__list{list-style:none;margin:0;padding:0;border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;background:var(--bg-card)}.sk-notif-page__more{display:flex;justify-content:center;margin-top:16px}.sk-notif-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;cursor:pointer;border-bottom:1px solid var(--border-subtle)}.sk-notif-row:last-child{border-bottom:none}.sk-notif-row:hover{background:var(--bg-hover)}.sk-notif-row.is-unread{background:var(--accent-bg)}.sk-notif-row__dot{flex:0 0 auto;width:9px;height:9px;margin-top:5px;border-radius:50%}.sk-notif-row__body{flex:1;min-width:0}.sk-notif-row__title{font-size:14px;font-weight:600;color:var(--text-primary)}.sk-notif-row__text{margin-top:2px;font-size:13px;color:var(--text-secondary)}.sk-notif-row__time{flex:0 0 auto;font-size:12px;color:var(--text-secondary);opacity:.8;white-space:nowrap}.sk-notif-row__action{margin-top:4px;font-size:12px;font-weight:500;color:var(--accent-primary)}.sk-notif-row__dismiss{flex:0 0 auto;align-self:flex-start;padding:2px;border:none;background:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);line-height:0}.sk-notif-row__dismiss:hover{background:var(--bg-hover);color:var(--text-primary)}.sk-dlog{max-width:1000px;margin:0 auto;padding:20px 24px 40px}.sk-dlog__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.sk-dlog__filters{display:flex;gap:16px;margin-bottom:14px}.sk-dlog__filters label{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.sk-dlog__filters select{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;color:var(--text-primary);padding:6px 10px;font-size:13px;text-transform:capitalize}.sk-dlog__empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:50px 20px;color:var(--text-secondary)}.sk-dlog__empty svg{opacity:.5}.sk-dlog__empty p{margin:0}.sk-dlog__table-wrap{border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;background:var(--bg-card)}.sk-dlog__table{width:100%;border-collapse:collapse;font-size:13px}.sk-dlog__table th{text-align:left;padding:10px 14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.sk-dlog__table td{padding:11px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:top}.sk-dlog__table tr:last-child td{border-bottom:none}.sk-dlog__status{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize}.sk-dlog__status.is-sent{background:#3ddc9726;color:#1f9d6b}.sk-dlog__status.is-pending{background:#6d7cff26;color:#5560d6}.sk-dlog__status.is-failed{background:#fb6f6f26;color:#d2544f}.sk-dlog__status.is-skipped{background:#9aa1b22e;color:var(--text-secondary)}.sk-dlog__target{font-family:SFMono-Regular,ui-monospace,Consolas,monospace;font-size:12px;color:var(--text-secondary);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sk-dlog__title{font-weight:600}.sk-dlog__error{margin-top:3px;font-size:12px;color:#d2544f;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sk-dlog__when{color:var(--text-secondary);white-space:nowrap}@media (max-width: 720px){.sk-dlog__stats{grid-template-columns:repeat(2,1fr)}}.sk-eprov{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:16px 18px;margin-bottom:18px}.sk-eprov__head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.sk-eprov__title{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--text-primary)}.sk-eprov__sub{font-size:12px;color:var(--text-secondary)}.sk-eprov__empty{font-size:13px;color:var(--text-secondary);padding:6px 0 12px}.sk-eprov__list{list-style:none;margin:0 0 12px;padding:0}.sk-eprov__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-subtle)}.sk-eprov__item:last-child{border-bottom:none}.sk-eprov__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.sk-eprov__name{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-primary)}.sk-eprov__badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:1px 7px;border-radius:999px;background:var(--accent-bg);color:var(--accent-primary)}.sk-eprov__type{font-size:12px;color:var(--text-secondary)}.sk-eprov__actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.sk-eprov__add{display:flex;flex-wrap:wrap;gap:8px}.sk-eprov__form{border-top:1px solid var(--border-subtle);margin-top:6px;padding-top:14px}.sk-eprov__form-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.sk-eprov__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sk-eprov__field{display:flex;flex-direction:column;gap:5px}.sk-eprov__check{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--text-secondary);padding-top:6px}.sk-eprov__form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}@media (max-width: 720px){.sk-eprov__grid{grid-template-columns:1fr}}.connections-hub{display:flex;flex-direction:column;gap:24px}.connections-hub__loading{padding:32px;text-align:center;color:var(--text-tertiary);font-size:12px}.connections-hub__warning{display:flex;align-items:flex-start;gap:8px;padding:12px 16px;background:#f5b9451a;border:1px solid rgba(245,185,69,.3);border-radius:6px;font-size:12px;color:var(--text-secondary)}.connections-hub__warning svg{color:#f5b945;flex-shrink:0;margin-top:1px}.connections-hub__warning code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary)}.connections-hub__category{display:flex;flex-direction:column;gap:12px}.connections-hub__category-head h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.connections-hub__category-head p{margin:2px 0 0;font-size:10px;color:var(--text-tertiary)}.connections-hub__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.conn-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;transition:border-color .15s ease,background .15s ease}.conn-card:hover{border-color:var(--border-active)}.conn-card--soon{opacity:.7}.conn-card--soon:hover{border-color:var(--border-subtle)}.conn-card__top{display:flex;align-items:flex-start;gap:12px}.conn-card__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:6px;background:var(--surface-2);color:var(--text-primary)}.conn-card__heading{flex:1;min-width:0}.conn-card__name{margin:0;font-size:12px;font-weight:600;color:var(--text-primary)}.conn-card__blurb{margin:2px 0 0;font-size:10px;color:var(--text-tertiary);line-height:1.45}.conn-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.conn-card__subtitle{font-size:10px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.conn-card__scopes{display:inline-flex;flex-wrap:wrap;gap:4px}.conn-card__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.conn-card__actions button{display:inline-flex;align-items:center;gap:4px}.conn-card__crosslink{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:500;color:var(--text-tertiary);text-decoration:none;transition:color .15s ease}.conn-card__crosslink:hover{color:var(--accent-bright)}.conn-card__soon-tag{font-size:10px;font-weight:500;color:var(--text-tertiary)}.conn-status{flex-shrink:0;display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--border-subtle);border-radius:9999px;font-size:10px;font-weight:500;color:var(--text-tertiary);white-space:nowrap}.conn-status--ok{color:#3ddc97;background:#3ddc971f;border-color:#3ddc9738}.conn-pill{display:inline-flex;align-items:center;padding:1px 8px;border:1px solid var(--border-subtle);border-radius:9999px;font-size:11px;font-weight:500;color:var(--text-secondary)}.conn-pill--ok{color:#3ddc97;background:#3ddc971f;border-color:#3ddc9738}.conn-pill--warn{color:#f5b945;background:#f5b9451f;border-color:#f5b94547}.conn-pill--danger{color:#fb6f6f;background:#fb6f6f1f;border-color:#fb6f6f38}.conn-pill--neutral{color:var(--text-tertiary)}.ui-dialog-content.conn-modal{max-width:560px}.conn-modal__title{display:flex;align-items:flex-start;gap:12px}.conn-modal__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:6px;background:var(--surface-2);color:var(--text-primary)}.conn-modal__body{display:flex;flex-direction:column;gap:16px;margin-top:8px;max-height:62vh;overflow-y:auto}.conn-modal__note{display:flex;align-items:center;gap:8px;margin:0;font-size:12px;color:var(--text-tertiary)}.conn-modal__link{color:var(--accent-bright);text-decoration:none;font-weight:500}.conn-modal__link:hover{text-decoration:underline}.conn-modal .form-group{display:flex;flex-direction:column;gap:6px}.conn-profile,.conn-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.conn-profile img{width:40px;height:40px;border-radius:9999px}.conn-profile__id{min-width:0}.conn-profile__id strong{display:block;color:var(--text-primary);font-size:12px;font-weight:600}.conn-profile__id span{display:block;margin-top:2px;color:var(--text-tertiary);font-size:10px}.conn-empty__icon{display:inline-flex;color:var(--accent-bright)}.conn-empty__text{min-width:0}.conn-empty__text strong{display:block;color:var(--text-primary);font-size:12px;font-weight:600}.conn-empty__text span{display:block;margin-top:3px;color:var(--text-tertiary);font-size:10px;line-height:1.45}.conn-list{display:flex;flex-direction:column;gap:8px}.conn-list__item{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden}.conn-list__row{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.conn-list__item .conn-list__row{border:0;border-radius:0}.conn-list__chev{transition:transform .15s ease}.conn-list__chev.is-open{transform:rotate(180deg)}.conn-list__info{flex:1;min-width:0}.conn-list__info strong{display:block;color:var(--text-primary);font-size:12px;font-weight:600}.conn-list__key{display:block;margin-top:2px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;color:var(--text-tertiary)}.conn-list__actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.dns-activity{border-top:1px solid var(--border-subtle);background:var(--bg-card);max-height:320px;overflow-y:auto}.dns-activity__status{padding:12px 16px;font-size:10px;color:var(--text-tertiary)}.dns-activity__status--error{color:#fb6f6f}.dns-activity__empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;font-size:12px;color:var(--text-tertiary)}.dns-activity__table{width:100%;border-collapse:collapse;font-size:10px}.dns-activity__table th{position:sticky;top:0;text-align:left;padding:8px 12px;background:var(--bg-elevated);color:var(--text-tertiary);font-weight:600;white-space:nowrap}.dns-activity__table td{padding:8px 12px;border-top:1px solid var(--border-subtle);vertical-align:top;color:var(--text-secondary)}.dns-activity__time{color:var(--text-tertiary);white-space:nowrap}.dns-activity__action{text-transform:capitalize;font-weight:500;color:var(--text-secondary)}.dns-activity__action--create{color:#3ddc97}.dns-activity__action--update{color:#49c7f0}.dns-activity__action--delete{color:#fb6f6f}.dns-activity__record{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.dns-activity__name{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-primary);overflow-wrap:anywhere}.dns-activity__error{flex-basis:100%;margin-top:2px;color:#fb6f6f;line-height:1.4}.conn-form{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.conn-form__heading{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-primary)}.conn-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.conn-form__wide{grid-column:1/-1}.conn-form__callback{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:10px;color:var(--text-tertiary)}.conn-form__callback code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-secondary);overflow-wrap:anywhere}.conn-form__doc{display:inline-flex;align-items:center;gap:4px;width:max-content;font-size:10px;color:var(--accent-bright);text-decoration:none}.conn-form__doc:hover{text-decoration:underline}.conn-form__actions{display:flex;justify-content:flex-end;gap:8px}.conn-form__actions--split{justify-content:space-between}.conn-scope{display:grid;grid-template-columns:1fr 1fr;gap:8px}.conn-scope__opt{display:flex;flex-direction:column;gap:4px;padding:12px;text-align:left;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.conn-scope__opt:hover{border-color:var(--border-active)}.conn-scope__opt.is-active{border-color:var(--accent-dim);background:var(--accent-bg)}.conn-scope__head{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--text-primary)}.conn-scope__rec{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:#3ddc97}.conn-scope__desc{font-size:10px;color:var(--text-tertiary);line-height:1.45}.conn-presets{display:flex;flex-wrap:wrap;gap:8px}.conn-presets__opt{padding:5px 12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:9999px;font-size:10px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.conn-presets__opt:hover{border-color:var(--border-active);color:var(--text-primary)}.conn-presets__opt.is-active{border-color:var(--accent-dim);background:var(--accent-bg);color:var(--accent-bright)}.conn-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer}.conn-form__actions-group{display:flex;align-items:center;gap:8px}@media (max-width: 640px){.conn-scope,.conn-form__grid{grid-template-columns:1fr}}.reg-portfolio{margin-bottom:20px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.reg-portfolio__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.reg-portfolio__title{display:flex;align-items:center;gap:8px;color:var(--text-secondary)}.reg-portfolio__title h2{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.reg-portfolio__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:9999px;background:var(--surface-2);font-size:10px;font-weight:600;color:var(--text-secondary)}.reg-portfolio__warn{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:500;color:#f5b945}.reg-portfolio__refresh{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;font-size:10px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,color .15s ease}.reg-portfolio__refresh:hover:not(:disabled){border-color:var(--border-active);color:var(--text-primary)}.reg-portfolio__refresh:disabled{opacity:.6;cursor:default}.reg-portfolio__refresh .is-spinning{animation:reg-portfolio-spin .8s linear infinite}.reg-portfolio__list{display:flex;flex-direction:column}.reg-portfolio__row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:12px 16px}.reg-portfolio__row+.reg-portfolio__row{border-top:1px solid var(--border-subtle)}.reg-portfolio__domain{font-size:12px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reg-portfolio__via{font-size:10px;color:var(--text-tertiary)}.reg-portfolio__expiry{font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap;text-align:center}.reg-portfolio__expiry--ok{color:#3ddc97;background:#3ddc971f}.reg-portfolio__expiry--warn{color:#f5b945;background:#f5b9451f}.reg-portfolio__expiry--danger,.reg-portfolio__expiry--expired{color:#fb6f6f;background:#fb6f6f1f}.reg-portfolio__expiry--neutral{color:var(--text-tertiary);background:var(--surface-2)}.reg-portfolio__date{font-size:10px;color:var(--text-tertiary);white-space:nowrap}.reg-portfolio__renew{font-size:11px;font-weight:500;color:var(--text-tertiary)}.reg-portfolio__renew.is-on{color:#3ddc97}@keyframes reg-portfolio-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.reg-portfolio__row{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}.reg-portfolio__via,.reg-portfolio__date{display:none}}.file-manager{display:flex;flex-direction:column;gap:0;position:relative;height:min(900px,100vh - 72px);min-height:560px;overflow:hidden}.file-manager.fullscreen{width:100%;max-width:none;height:100vh;min-height:0;margin:0;padding:0;box-sizing:border-box}.file-manager>.sk-topbar{flex-shrink:0;padding-left:16px;padding-right:16px;margin-bottom:0}.file-manager .upload-tray{background:var(--surface);border:1px solid var(--border-default);border-radius:8px;overflow:hidden;margin:8px 16px 0;flex-shrink:0}.file-manager .upload-tray-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-default);font-size:12px;font-weight:500;color:var(--text-primary)}.file-manager .upload-tray-header>svg{color:var(--accent-primary);flex-shrink:0}.file-manager .upload-tray-header .upload-tray-percent{margin-left:auto;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary)}.file-manager .upload-tray-header .upload-tray-percent+.toolbar-icon-btn{margin-left:4px}.file-manager .upload-tray-header>.toolbar-icon-btn:last-child{margin-left:auto}.file-manager .upload-tray-list{max-height:220px;overflow-y:auto;padding:8px 0}.file-manager .upload-tray-item{display:grid;grid-template-columns:1fr 140px 60px;gap:12px;align-items:center;padding:8px 16px;font-size:10px}.file-manager .upload-tray-item .upload-name{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-manager .upload-tray-item .upload-bar{height:4px;background:var(--surface-3);border-radius:4px;overflow:hidden}.file-manager .upload-tray-item .upload-bar .upload-bar-fill{height:100%;background:var(--accent-primary);transition:width .2s ease}.file-manager .upload-tray-item .upload-status{text-align:right;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.file-manager .upload-tray-item.status-done .upload-bar-fill{background:#3ddc97}.file-manager .upload-tray-item.status-done .upload-status{color:#3ddc97}.file-manager .upload-tray-item.status-error .upload-bar-fill{background:#fb6f6f}.file-manager .upload-tray-item.status-error .upload-status{color:#fb6f6f}.file-manager .file-manager-toolbar{display:flex;justify-content:space-between;align-items:center;padding:9px 16px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);border-radius:0;gap:8px;flex-wrap:nowrap;flex-shrink:0}.file-manager .file-manager-toolbar .toolbar-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.file-manager .file-manager-toolbar .toolbar-right{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-width:0}.file-manager .nav-buttons{display:flex;gap:2px}.file-manager .nav-buttons .nav-btn{background:transparent;border:none;width:30px;height:30px;border-radius:8px;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.file-manager .nav-buttons .nav-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.file-manager .nav-buttons .nav-btn:disabled{opacity:.32;cursor:not-allowed}.file-manager .path-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;min-width:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12.5px;gap:1px}.file-manager .path-breadcrumb .crumb-segment{display:inline-flex;align-items:center}.file-manager .path-breadcrumb .crumb-separator{color:var(--text-ghost);margin:0 1px;font-family:var(--mono);font-size:11px;-webkit-user-select:none;user-select:none}.file-manager .path-breadcrumb .crumb{background:transparent;border:none;padding:4px 8px;border-radius:4px;color:var(--text-dim);cursor:pointer;font:inherit;white-space:nowrap;transition:all .2s ease}.file-manager .path-breadcrumb .crumb:hover{background:var(--surface-2);color:var(--text)}.file-manager .path-breadcrumb .crumb.crumb-active{color:var(--text);font-weight:500;cursor:default}.file-manager .path-breadcrumb .crumb.crumb-active:hover{background:none}.file-manager .search-field{position:relative;display:flex;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;width:clamp(160px,18vw,220px);transition:all .2s ease}.file-manager .search-field:focus-within{border-color:var(--accent-dim);background:var(--surface)}.file-manager .search-field .search-field-icon{position:absolute;left:12px;color:var(--text-tertiary);pointer-events:none}.file-manager .search-field input{background:transparent;border:none;padding:6px 12px 6px 32px;font-size:12px;color:var(--text-primary);width:100%}.file-manager .search-field input::placeholder{color:var(--text-tertiary)}.file-manager .search-field input:focus{outline:none}.file-manager .search-field .search-field-clear{position:absolute;right:6px;background:transparent;border:none;padding:4px;color:var(--text-tertiary);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.file-manager .search-field .search-field-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.file-manager .toolbar-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-dim);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.file-manager .toolbar-chip:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.file-manager .toolbar-chip.active{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-bright)}.file-manager .toolbar-chip:disabled{opacity:.5;cursor:not-allowed}.file-manager .toolbar-chip svg{flex-shrink:0}.file-manager .toolbar-icon-btn{background:transparent;border:none;padding:7px;border-radius:8px;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.file-manager .toolbar-icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.file-manager .toolbar-icon-btn.active{background:var(--accent-bg);color:var(--accent-bright)}.file-manager .toolbar-icon-btn.small{padding:4px}.file-manager .file-manager-toolbar .target-picker{flex-shrink:0}.file-manager .file-manager-toolbar .target-picker .target-picker__select{max-width:170px}.file-manager .view-toggle{display:flex;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.file-manager .view-toggle .view-toggle-btn{background:transparent;border:none;width:30px;height:26px;border-radius:6px;color:var(--text-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.file-manager .view-toggle .view-toggle-btn:hover{color:var(--text)}.file-manager .view-toggle .view-toggle-btn.active{background:var(--surface-3);color:var(--text)}.file-manager .bulk-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--accent-bg-soft);border:none;border-bottom:1px solid var(--accent-dim);border-radius:0;flex-shrink:0;animation:slide-down .2s ease}@keyframes slide-down{0%{transform:translateY(-6px);opacity:0}to{transform:translateY(0);opacity:1}}.file-manager .bulk-bar-info{display:flex;align-items:center;gap:8px;color:var(--accent-bright);font-size:12px;font-weight:500}.file-manager .bulk-bar-info svg{background:var(--accent-primary);color:#fff;padding:2px;border-radius:9999px;box-sizing:content-box}.file-manager .bulk-bar-actions{display:flex;gap:4px}.file-manager .bulk-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.file-manager .bulk-btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.file-manager .bulk-btn.danger{color:#fb6f6f;border-color:transparent}.file-manager .bulk-btn.danger:hover{background:#fb6f6f1f;border-color:#fb6f6f38}.file-manager .bulk-btn.ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.file-manager .bulk-btn.ghost:hover{background:var(--surface-2);color:var(--text-primary)}.file-manager .file-manager-body{display:grid;grid-template-columns:240px 1fr;gap:0;min-height:0;flex:1;overflow:hidden;align-items:stretch}.file-manager .file-manager-body.has-preview{grid-template-columns:240px minmax(0,1fr) 380px}@media (max-width: 1024px){.file-manager .file-manager-body{grid-template-columns:1fr}.file-manager .file-manager-body.has-preview{grid-template-columns:minmax(0,1fr) 380px}}.file-manager:not(.sidebar-open) .file-manager-body{grid-template-columns:1fr}.file-manager:not(.sidebar-open) .file-manager-body.has-preview{grid-template-columns:minmax(0,1fr) 380px}.file-manager .file-manager-main{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column}.file-manager .file-preview-pane{position:static;inset:auto;width:100%;max-width:none;height:100%;min-height:0;min-width:0;border-left:1px solid var(--border-soft);box-shadow:none;animation:none;background:var(--bg-sidebar);overflow:hidden}@media (max-width: 640px){.file-manager .file-preview-pane{width:100%}}.file-manager .file-manager-sidebar.left{display:flex;flex-direction:column;gap:0;height:100%;max-height:none;overflow-y:auto;position:relative;top:auto;padding:12px 8px;background:var(--bg-sidebar);border-right:1px solid var(--border-soft);scrollbar-width:thin}.file-manager .file-manager-sidebar.left::-webkit-scrollbar{width:4px}.file-manager .file-manager-sidebar.left::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}@media (max-width: 1024px){.file-manager .file-manager-sidebar.left{position:fixed;left:0;top:64px;bottom:0;width:100%;max-width:320px;max-height:none;background:var(--bg-body);padding:16px;z-index:50;box-shadow:4px 0 20px #0000004d}}@media (max-width: 1024px){.file-manager:not(.sidebar-open) .file-manager-sidebar.left{transform:translate(-100%)}}.file-manager .sidebar-section{background:transparent;border:none;border-radius:0;overflow:visible}.file-manager .sidebar-section+.sidebar-section{margin-top:8px}.file-manager .sidebar-section-header{display:flex;align-items:center;gap:8px;padding:10px 8px 5px;background:transparent;border:none;width:100%;text-align:left;cursor:pointer;color:var(--text-ghost);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:color .2s ease}.file-manager .sidebar-section-header:hover{background:transparent;color:var(--text-faint)}.file-manager .sidebar-section-header.static{cursor:default}.file-manager .sidebar-section-header.static:hover{color:var(--text-ghost)}.file-manager .sidebar-section-header svg{color:inherit;flex-shrink:0}.file-manager .sidebar-section-header>svg:first-child{width:13px;height:13px}.file-manager .sidebar-section-header span{flex:1}.file-manager .sidebar-section-header--split{padding:0;cursor:default}.file-manager .sidebar-section-header--split:hover{background:transparent}.file-manager .sidebar-section-header--split .sidebar-section-toggle{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:10px 8px 5px;background:transparent;border:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer;transition:color .2s ease}.file-manager .sidebar-section-header--split .sidebar-section-toggle:hover{background:transparent;color:var(--text-faint)}.file-manager .sidebar-section-header--split .sidebar-section-toggle>svg:first-child{width:13px;height:13px;color:inherit}.file-manager .sidebar-section-header--split .sidebar-section-toggle span{flex:1}.file-manager .sidebar-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:2px;background:transparent;border:none;border-radius:4px;color:var(--text-faint);cursor:pointer;transition:all .2s ease}.file-manager .sidebar-action-btn:hover:not(:disabled){background:var(--surface-2);color:var(--accent-bright)}.file-manager .sidebar-action-btn:disabled{opacity:.45;cursor:not-allowed}.file-manager .sidebar-section-content,.file-manager .tree-content{padding:4px 0}.file-manager .quick-access-list{display:grid;gap:1px}.file-manager .quick-access-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:transparent;border:none;border-radius:4px;color:var(--text-dim);font-size:12.5px;text-align:left;cursor:pointer;transition:all .2s ease}.file-manager .quick-access-item svg{color:var(--text-faint);flex-shrink:0}.file-manager .quick-access-item:hover{background:var(--surface-2);color:var(--text)}.file-manager .quick-access-item.active{background:var(--accent-bg);color:var(--accent-bright)}.file-manager .quick-access-item.active svg{color:var(--accent-bright)}.file-manager .type-filter-panel{padding:4px 0}.file-manager .type-filter-list{display:grid;gap:1px}.file-manager .type-filter-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:5px 8px;background:transparent;border:none;border-radius:4px;color:var(--text-dim);cursor:pointer;font-size:10px;font-weight:500;text-align:left;transition:all .2s ease}.file-manager .type-filter-item:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.file-manager .type-filter-item.active{background:var(--accent-bg);color:var(--accent-bright)}.file-manager .type-filter-item:disabled{opacity:.38;cursor:not-allowed}.file-manager .type-filter-item span:last-child{min-width:20px;color:var(--text-ghost);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;text-align:right}.file-manager .type-filter-item.active span:last-child{color:var(--accent-bright);opacity:.8}.file-manager .sidebar-sort-control{display:grid;gap:4px;margin-top:8px;padding:8px 8px 0;border-top:1px solid var(--border-soft)}.file-manager .sidebar-sort-control>span{display:flex;align-items:center;gap:4px;color:var(--text-ghost);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.file-manager .sidebar-sort-control select{width:100%;min-height:28px;padding:4px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:10px;outline:none;cursor:pointer}.file-manager .sidebar-sort-control select:focus{border-color:var(--accent-dim)}.file-manager .folder-tree{display:flex;flex-direction:column;font-size:13px}.file-manager .tree-node{display:flex;flex-direction:column}.file-manager .tree-row{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:4px;cursor:pointer;color:var(--text-dim);transition:background .2s ease;-webkit-user-select:none;user-select:none}.file-manager .tree-row:hover{background:var(--surface-2)}.file-manager .tree-row.active{background:var(--accent-bg)}.file-manager .tree-row.active .tree-name{color:var(--text);font-weight:500}.file-manager .tree-row.active .tree-folder-icon{color:var(--accent-bright)}.file-manager .tree-chevron{background:transparent;border:none;padding:0;width:14px;height:14px;display:flex;align-items:center;justify-content:center;color:var(--text-faint);cursor:pointer;flex-shrink:0;border-radius:4px}.file-manager .tree-chevron:hover{background:var(--surface-3);color:var(--text)}.file-manager .tree-chevron-spinner{display:flex;align-items:center;justify-content:center;transform:scale(.5);transform-origin:center}.file-manager .tree-folder-icon{color:#f5b945;flex-shrink:0}.file-manager .tree-folder-icon.open{color:#f5b945}.file-manager .tree-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.file-manager .tree-children{display:flex;flex-direction:column}.file-manager .tree-empty{padding:4px 8px;font-size:10px;color:var(--text-tertiary);font-style:italic}.file-manager .disk-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 8px}.file-manager .disk-updated{display:flex;align-items:center;gap:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-ghost)}.file-manager .disk-mount-item{padding:8px;border-bottom:1px solid var(--border-soft)}.file-manager .disk-mount-item:last-child{border-bottom:none;padding-bottom:0}.file-manager .disk-mount-item:first-child{padding-top:0}.file-manager .disk-mount-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.file-manager .disk-mount-point{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary)}.file-manager .disk-percent{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;font-weight:500}.file-manager .disk-percent.healthy{color:#3ddc97}.file-manager .disk-percent.warning{color:#f5b945}.file-manager .disk-percent.critical{color:#fb6f6f}.file-manager .disk-progress{height:5px;background:var(--surface-3);border-radius:3px;overflow:hidden;margin-bottom:8px}.file-manager .disk-progress .disk-progress-fill{height:100%;border-radius:3px;transition:width .2s ease}.file-manager .disk-progress.healthy .disk-progress-fill{background:#3ddc97}.file-manager .disk-progress.warning .disk-progress-fill{background:#f5b945}.file-manager .disk-progress.critical .disk-progress-fill{background:#fb6f6f}.file-manager .disk-mount-info{display:flex;justify-content:space-between;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10.5px;color:var(--text-tertiary)}.file-manager .disk-device{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.file-manager .file-list-container{background:transparent;border:none;border-radius:0;overflow:auto;position:relative;min-height:0;height:100%}.file-manager .loading-state,.file-manager .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:var(--text-tertiary);text-align:center;min-height:400px}.file-manager .loading-state svg,.file-manager .empty-state svg{margin-bottom:16px;opacity:.6}.file-manager .loading-state h3,.file-manager .empty-state h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.file-manager .loading-state p,.file-manager .empty-state p{margin:0;color:var(--text-secondary);max-width:360px;font-size:12px;line-height:1.5}.file-manager .drag-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#6d7cff1f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;display:flex;align-items:center;justify-content:center;pointer-events:none;border:2px dashed var(--accent-primary);border-radius:8px}.file-manager .drag-overlay .drag-overlay-inner{text-align:center}.file-manager .drag-overlay .drag-overlay-inner svg{color:var(--accent-primary);margin-bottom:12px}.file-manager .drag-overlay .drag-overlay-inner h3{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--text-primary)}.file-manager .drag-overlay .drag-overlay-inner p{margin:0;color:var(--text-secondary);font-size:12px}.file-manager .drag-overlay .drag-overlay-inner p code{background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--accent-primary)}.file-manager .file-grid{display:grid;gap:8px;padding:12px 16px;grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.file-manager.grid-sm .file-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.file-manager.grid-sm .file-grid .file-card{padding:12px 8px}.file-manager.grid-sm .file-grid .file-card-thumb{width:56px;height:56px;margin-bottom:8px}.file-manager.grid-sm .file-grid .file-card-thumb>svg{width:32px;height:32px}.file-manager.grid-lg .file-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.file-manager.grid-lg .file-grid .file-card{padding:20px 16px 16px}.file-manager.grid-lg .file-grid .file-card-thumb{width:110px;height:110px;margin-bottom:12px}.file-manager.grid-lg .file-grid .file-card-thumb>svg{width:64px;height:64px}.file-manager .file-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:transparent;border:1px solid transparent;border-radius:11px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.file-manager .file-card:hover{background:var(--surface-2)}.file-manager .file-card:hover .file-card-check,.file-manager .file-card:hover .ext-badge{opacity:1}.file-manager .file-card.selected{background:var(--accent-bg);border-color:var(--accent-dim)}.file-manager .file-card.selected .file-card-check,.file-manager .file-card.select-mode .file-card-check{opacity:1}.file-manager .file-card.type-folder .file-card-thumb{background:#f5b9451f}.file-manager .file-card.type-code .file-card-thumb{background:#b07bf51f}.file-manager .file-card.type-image .file-card-thumb{background:#3ddc971f}.file-manager .file-card.type-video .file-card-thumb{background:#ec48991f}.file-manager .file-card.type-audio .file-card-thumb{background:#f59e0b1f}.file-manager .file-card.type-archive .file-card-thumb{background:#ef44441f}.file-manager .file-card.type-data .file-card-thumb{background:#49c7f01f}.file-manager .file-card.type-text .file-card-thumb{background:#9aa1af1f}.file-manager .file-card.type-terminal .file-card-thumb{background:#3ddc971f}.file-manager .file-card.type-default .file-card-thumb{background:#646b7a1f}.file-manager .file-card-thumb{position:relative;width:68px;height:68px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;border-radius:9px;overflow:hidden;transition:all .2s ease}.file-manager .file-card-thumb>svg{width:38px;height:38px}.file-manager .file-card-thumb .thumb-image{width:100%;height:100%;object-fit:cover;display:block}.file-manager .file-card-thumb .link-badge{position:absolute;bottom:2px;right:2px;width:18px;height:18px;background:var(--surface);border:1px solid var(--border);border-radius:9999px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-tertiary)}.file-manager .ext-badge{position:absolute;bottom:4px;left:4px;padding:1px 5px;background:#0009;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:9px;font-weight:700;color:#fff;letter-spacing:.04em;opacity:1}.file-manager .file-card-body{width:100%;text-align:center;min-width:0}.file-manager .file-card-name{font-size:10px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.file-manager .file-card-meta{font-size:10px;color:var(--text-ghost);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.file-manager .file-card-check{position:absolute;top:8px;left:8px;background:transparent;border:none;padding:4px;cursor:pointer;opacity:0;transition:opacity .2s ease;z-index:2}.file-manager .checkbox{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:5px;color:#fff;transition:all .2s ease}.file-manager .checkbox.checked{background:var(--accent-primary);border-color:var(--accent-primary)}.file-manager .checkbox-btn{background:transparent;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.file-manager .file-list .file-list-header{display:grid;grid-template-columns:36px 1fr 110px 130px 120px 110px 140px;padding:8px 16px;position:sticky;top:0;z-index:2;background:var(--bg-body);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10.5px;font-weight:600;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border-soft);letter-spacing:.06em;align-items:center}.file-manager .file-list .file-list-header .col-actions{text-align:right}.file-manager .file-list .file-list-header .col-check{display:flex;align-items:center;justify-content:center;opacity:0}.file-manager .file-list .file-item{display:grid;grid-template-columns:36px 1fr 110px 130px 120px 110px 140px;padding:7px 16px;border-bottom:1px solid var(--border-soft);cursor:pointer;align-items:center;-webkit-user-select:none;user-select:none;transition:background .2s ease}.file-manager .file-list .file-item:last-child{border-bottom:none}.file-manager .file-list .file-item:hover{background:var(--surface-2)}.file-manager .file-list .file-item:hover .col-actions .row-action{opacity:1}.file-manager .file-list .file-item:hover .col-check .checkbox{border-color:var(--border-hover)}.file-manager .file-list .file-item.selected{background:var(--accent-bg)}.file-manager .file-list .file-item .col-check{display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.file-manager .file-list .file-item .col-name{display:flex;align-items:center;gap:11px;overflow:hidden;min-width:0}.file-manager .file-list .file-item .col-name .file-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:13px}.file-manager .file-list .file-item .col-name .link-indicator{color:var(--text-tertiary);font-size:10px}.file-manager .file-list .file-item .col-size,.file-manager .file-list .file-item .col-modified{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-dim)}.file-manager .file-list .file-item .col-permissions,.file-manager .file-list .file-item .col-owner{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11.5px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-manager .file-list .file-item .col-actions{display:flex;gap:2px;justify-content:flex-end}.file-manager.select-mode .file-list .file-list-header .col-check,.file-manager.select-mode .file-list .file-item .col-check,.file-manager .file-list .file-item:hover .col-check,.file-manager .file-list .file-item.selected .col-check{opacity:1}.file-manager .row-action{background:transparent;border:none;padding:5px;border-radius:4px;color:var(--text-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s ease}.file-manager .row-action:hover{background:var(--surface-3);color:var(--text)}.file-manager .row-action.danger:hover{background:#fb6f6f1f;color:#fb6f6f}.file-manager .file-icon-svg{flex-shrink:0}.file-manager .file-icon-svg.folder{color:#f5b945}.file-manager .file-icon-svg.code{color:#b07bf5}.file-manager .file-icon-svg.image{color:#3ddc97}.file-manager .file-icon-svg.video{color:#ec4899}.file-manager .file-icon-svg.audio{color:#f59e0b}.file-manager .file-icon-svg.archive{color:#ef4444}.file-manager .file-icon-svg.data{color:#49c7f0}.file-manager .file-icon-svg.text{color:#9aa1af}.file-manager .file-icon-svg.terminal{color:#3ddc97}.file-manager .file-icon-svg.default{color:#646b7a}.file-manager .status-bar{display:flex;justify-content:space-between;align-items:center;padding:7px 16px;background:transparent;border:none;border-top:1px solid var(--border-soft);border-radius:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;color:var(--text-faint);flex-wrap:wrap;gap:12px;flex-shrink:0}.file-manager .status-bar .status-bar-left,.file-manager .status-bar .status-bar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.file-manager .status-bar .status-item{display:inline-flex;align-items:center;gap:4px}.file-manager .status-bar .status-item svg{color:var(--text-ghost)}.file-manager .status-bar .status-label{color:var(--text-ghost);text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:9px}.file-manager .status-bar .status-value{color:var(--text-dim)}.file-manager .status-bar .status-divider{width:1px;height:12px;background:var(--border)}.file-manager .status-bar .status-selection{color:var(--accent-bright);font-weight:500}.file-manager .status-bar .status-shortcuts{color:var(--text-ghost);display:none}@media (min-width: 1024px){.file-manager .status-bar .status-shortcuts{display:inline}}.file-manager .context-menu{position:fixed;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:11px;box-shadow:var(--shadow-lg);min-width:200px;padding:5px;z-index:60;animation:ctx-pop .12s ease-out}.file-manager .context-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;background:transparent;border:none;border-radius:4px;color:var(--text-primary);font-size:12px;text-align:left;cursor:pointer;transition:background .2s ease}.file-manager .context-menu button:hover{background:var(--surface-3)}.file-manager .context-menu button.danger{color:#fb6f6f}.file-manager .context-menu button.danger:hover{background:#fb6f6f1f}.file-manager .context-menu button svg{flex-shrink:0;opacity:.85}.file-manager .context-menu-divider{height:1px;background:var(--border);margin:4px 0}@keyframes ctx-pop{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.file-manager .permissions-help{margin-top:16px;padding:12px;background:var(--bg-tertiary);border-radius:6px;font-size:12px}.file-manager .permissions-help p{margin:0 0 8px;font-weight:500}.file-manager .permissions-help ul{margin:0;padding-left:20px}.file-manager .permissions-help ul li{margin-bottom:4px}.file-manager .permissions-help ul code{background:var(--bg-body);padding:2px 8px;border-radius:4px}.file-manager .spinning{animation:spin 1s linear infinite}.preview-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;animation:drawer-fade .2s ease}.preview-drawer{position:fixed;top:0;right:0;bottom:0;width:520px;max-width:100%;background:var(--surface);border-left:1px solid var(--border-soft);box-shadow:-8px 0 32px #0006;z-index:50;display:flex;flex-direction:column;animation:drawer-slide .25s cubic-bezier(.32,.72,.24,1)}@media (max-width: 640px){.preview-drawer{width:100%}}@keyframes drawer-fade{0%{opacity:0}to{opacity:1}}@keyframes drawer-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.preview-drawer-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-soft)}.preview-drawer-header>svg{flex-shrink:0}.preview-drawer-header>svg.is-accent{color:var(--accent-primary)}.preview-drawer-header .preview-drawer-title{flex:1;min-width:0}.preview-drawer-header .preview-drawer-title h3{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-drawer-header .preview-drawer-title .preview-drawer-path{margin:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-drawer-header .preview-drawer-close{background:transparent;border:none;padding:6px;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.preview-drawer-header .preview-drawer-close:hover{background:var(--surface-2);color:var(--text-primary)}.preview-drawer-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-soft)}.preview-drawer-meta .meta-item{display:flex;flex-direction:column;gap:2px;min-width:0}.preview-drawer-meta .meta-item.meta-item-wide{grid-column:span 2}.preview-drawer-meta .meta-label{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-ghost)}.preview-drawer-meta .meta-value{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-drawer-meta .meta-value.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.preview-drawer-actions{display:flex;flex-wrap:wrap;gap:4px;padding:12px 16px;border-bottom:1px solid var(--border-soft)}.drawer-action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:10px;font-weight:500;cursor:pointer;transition:all .2s ease}.drawer-action-btn:hover{background:var(--surface-3);border-color:var(--border-strong)}.drawer-action-btn.danger{color:#fb6f6f;border-color:transparent}.drawer-action-btn.danger:hover{background:#fb6f6f1f;border-color:#fb6f6f38}.drawer-action-btn svg{flex-shrink:0;opacity:.8}.preview-drawer-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.preview-drawer-body.is-padded{padding:16px}.preview-drawer-body .meta-label{color:var(--text-tertiary);font-size:10px;font-weight:500}.preview-drawer-body .meta-label.is-spaced{margin-bottom:6px}.preview-drawer-body .preview-image-wrap{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(45deg,var(--bg-tertiary) 25%,transparent 25%),linear-gradient(-45deg,var(--bg-tertiary) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--bg-tertiary) 75%),linear-gradient(-45deg,transparent 75%,var(--bg-tertiary) 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:var(--bg-body);padding:16px;overflow:auto}.preview-drawer-body .preview-image-wrap img{max-width:100%;max-height:100%;border-radius:6px;box-shadow:var(--shadow-lg)}.preview-drawer-body .editor-wrap{flex:1;display:flex;flex-direction:column;min-height:0}.preview-drawer-body .editor-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-soft)}.preview-drawer-body .editor-toolbar .editor-status{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-ghost);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.preview-drawer-body .editor-toolbar .editor-buttons{display:flex;gap:8px}.preview-drawer-body .file-editor{flex:1;padding:16px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6;background:var(--bg-body);border:none;resize:none;color:var(--text-primary);min-height:280px}.preview-drawer-body .file-editor:focus{outline:none}.preview-drawer-body .file-editor[readonly]{background:var(--bg-body)}.preview-drawer-body .pv-code{flex:1;min-height:280px;overflow:auto;padding:12px 0;background:var(--bg-code);font-family:var(--mono);font-size:12px;line-height:1.65}.preview-drawer-body .pv-code__line{display:flex}.preview-drawer-body .pv-code__line:hover{background:var(--surface-2)}.preview-drawer-body .pv-code__n{flex-shrink:0;width:44px;padding-right:12px;text-align:right;color:var(--text-ghost);-webkit-user-select:none;user-select:none}.preview-drawer-body .pv-code__c{flex:1;min-width:0;padding-right:12px;white-space:pre;color:var(--text-code, var(--text))}.preview-drawer-body .pv-code__c .tok-kw{color:var(--accent-bright);font-weight:500}.preview-drawer-body .pv-code__c .tok-str{color:var(--green)}.preview-drawer-body .pv-code__c .tok-num{color:var(--amber)}.preview-drawer-body .pv-code__c .tok-cmt{color:var(--text-ghost)}.preview-drawer-body .pv-code__c .tok-var{color:var(--cyan)}.preview-drawer-body .preview-unavailable{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:var(--text-tertiary);text-align:center}.preview-drawer-body .preview-unavailable svg{margin-bottom:16px;opacity:.6}.preview-drawer-body .preview-unavailable p{margin-bottom:16px;color:var(--text-secondary)}@media (max-width: 768px){.file-manager .file-manager-toolbar{flex-direction:column;align-items:stretch}.file-manager .file-manager-toolbar .toolbar-left,.file-manager .file-manager-toolbar .toolbar-right{justify-content:space-between}.file-manager .file-manager-toolbar .search-field{flex:1;min-width:0}.file-manager .file-list .file-list-header,.file-manager .file-list .file-item{grid-template-columns:36px 1fr 90px 110px}.file-manager .file-list .file-list-header .col-permissions,.file-manager .file-list .file-list-header .col-modified,.file-manager .file-list .file-list-header .col-owner,.file-manager .file-list .file-item .col-permissions,.file-manager .file-list .file-item .col-modified,.file-manager .file-list .file-item .col-owner{display:none}.file-manager .file-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))!important}.file-manager .bulk-bar{flex-direction:column;align-items:stretch;gap:8px}.file-manager .bulk-bar .bulk-bar-actions{justify-content:flex-end;flex-wrap:wrap}}@media (max-width: 640px){.file-manager .file-list .file-list-header,.file-manager .file-list .file-item{grid-template-columns:36px 1fr 80px}.file-manager .file-list .file-list-header .col-size,.file-manager .file-list .file-item .col-size{display:none}.file-manager .file-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important}}.file-manager-target-banner{margin:8px 16px 0;padding:8px 12px;border-radius:6px;background:var(--accent-bg-soft);color:var(--text-primary);font-size:12px;border:1px solid rgba(109,124,255,.25);flex-shrink:0}.target-picker{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.target-picker .target-picker__select,.target-picker .target-picker__single{background:transparent;border:none;color:var(--text-primary);font-size:12px;outline:none}.target-picker .target-picker__select{cursor:pointer}.target-picker .target-picker__single{padding-right:4px;white-space:nowrap}.target-picker .target-picker__icon{color:var(--text-secondary)}.ftp-server .ftp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 16px}@media (max-width: 1024px){.ftp-server .ftp-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.ftp-server .ftp-kpis{grid-template-columns:1fr}}.ftp-server .section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.ftp-server .section-header h3{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ftp-server .overview-tab{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 900px){.ftp-server .overview-tab{grid-template-columns:1fr}}.ftp-server .overview-tab .config-section,.ftp-server .overview-tab .info-section{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 20px}.ftp-server .overview-tab .config-section h3,.ftp-server .overview-tab .info-section h3{margin:0 0 12px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ftp-server .overview-tab .config-grid,.ftp-server .overview-tab .info-grid{display:grid}.ftp-server .overview-tab .config-item,.ftp-server .overview-tab .info-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid var(--border-soft);font-size:13px}.ftp-server .overview-tab .config-item:first-child,.ftp-server .overview-tab .info-item:first-child{padding-top:0}.ftp-server .overview-tab .config-item:last-child,.ftp-server .overview-tab .info-item:last-child{border-bottom:none;padding-bottom:0}.ftp-server .overview-tab .config-item .config-label,.ftp-server .overview-tab .config-item .info-label,.ftp-server .overview-tab .info-item .config-label,.ftp-server .overview-tab .info-item .info-label{color:var(--text-dim)}.ftp-server .overview-tab .config-item .config-value,.ftp-server .overview-tab .info-item .config-value{font-family:var(--mono);font-size:12.5px;font-weight:500;color:var(--text)}.ftp-server .overview-tab .config-item .config-value.success,.ftp-server .overview-tab .info-item .config-value.success{color:var(--green)}.ftp-server .overview-tab .config-item .config-value.warning,.ftp-server .overview-tab .info-item .config-value.warning{color:var(--amber)}.ftp-server .overview-tab .config-item code,.ftp-server .overview-tab .info-item code{font-family:var(--mono);font-size:12px;color:var(--text);background:var(--surface-2);border:1px solid var(--border-soft);padding:2px 7px;border-radius:6px}.ftp-server .users-table,.ftp-server .connections-table{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow-x:auto}.ftp-server .users-table .sk-dtable .user-name,.ftp-server .connections-table .sk-dtable .user-name{font-size:13px;font-weight:550;color:var(--text);margin-right:8px}.ftp-server .users-table .sk-dtable code,.ftp-server .connections-table .sk-dtable code{font:inherit;color:inherit;background:none;border:none;padding:0;overflow-wrap:anywhere}.ftp-server .users-table .sk-dtable code+[data-slot=badge],.ftp-server .connections-table .sk-dtable code+[data-slot=badge]{margin-left:8px}.ftp-server .users-table .sk-dtable .actions,.ftp-server .connections-table .sk-dtable .actions{display:flex;align-items:center;gap:4px}.ftp-server .logs-tab .log-viewer{background:var(--bg-code);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;max-height:500px;overflow:auto}.ftp-server .logs-tab .log-viewer pre{margin:0;font-family:var(--mono);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-all;color:var(--text-dim)}.ftp-server .install-info{padding:16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);margin-top:16px}.ftp-server .install-info p{margin:0;font-size:13px;line-height:1.6;color:var(--text-secondary)}.ftp-server .install-info p strong{color:var(--accent-bright);font-weight:600}.firewall-page .page-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.firewall-page .empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;background:var(--bg-card);border-radius:12px;text-align:center}.firewall-page .empty-state-large .icon{font-size:64px;color:var(--text-tertiary);margin-bottom:24px}.firewall-page .empty-state-large h2{margin:0 0 12px;font-size:24px;font-weight:600}.firewall-page .empty-state-large p{margin:0 0 24px;color:var(--text-secondary);max-width:400px}.firewall-page .tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border-subtle)}.firewall-page .tabs .tab{padding:12px 20px;background:none;border:none;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;position:relative;transition:color .15s ease}.firewall-page .tabs .tab:hover{color:var(--text-primary)}.firewall-page .tabs .tab.active{color:var(--accent-primary)}.firewall-page .tabs .tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent-primary)}.firewall-page .tab-content .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.firewall-page .tab-content .section-header h3{margin:0;font-size:16px;font-weight:600}.firewall-page .tab-content .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;background:var(--bg-card);border-radius:8px;color:var(--text-tertiary)}.firewall-page .tab-content .empty-state .icon{font-size:48px;margin-bottom:16px}.firewall-page .tab-content .empty-state p{margin-bottom:16px}.firewall-page .overview-tab{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 768px){.firewall-page .overview-tab{grid-template-columns:1fr}}.firewall-page .overview-tab .info-card,.firewall-page .overview-tab .protection-summary{background:var(--bg-card);border-radius:8px;padding:20px}.firewall-page .overview-tab .info-card h3,.firewall-page .overview-tab .protection-summary h3{margin:0 0 16px;font-size:16px;font-weight:600}.firewall-page .overview-tab .info-grid{display:grid;gap:12px}.firewall-page .overview-tab .info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.firewall-page .overview-tab .info-item:last-child{border-bottom:none}.firewall-page .overview-tab .info-item .info-label{font-size:12px;color:var(--text-secondary)}.firewall-page .overview-tab .info-item .info-value{font-size:12px;font-weight:500}.firewall-page .overview-tab .info-item .info-value.text-success{color:#3ddc97}.firewall-page .overview-tab .info-item .info-value.text-danger{color:#fb6f6f}.firewall-page .overview-tab .summary-grid{display:flex;flex-direction:column;gap:12px}.firewall-page .overview-tab .summary-item{display:flex;align-items:center;gap:12px}.firewall-page .overview-tab .summary-item .summary-icon.text-success{color:#3ddc97}.firewall-page .overview-tab .summary-item .summary-icon.text-danger{color:#fb6f6f}.firewall-page .overview-tab .summary-item .summary-text{font-size:12px}.firewall-page .rules-tab .rules-table{background:var(--bg-card);border-radius:8px;overflow:hidden}.firewall-page .rules-tab .rules-table table{width:100%;border-collapse:collapse}.firewall-page .rules-tab .rules-table table th,.firewall-page .rules-tab .rules-table table td{padding:12px 16px;text-align:left}.firewall-page .rules-tab .rules-table table th{background:var(--bg-hover);font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary)}.firewall-page .rules-tab .rules-table table td{border-bottom:1px solid var(--border-subtle);font-size:12px}.firewall-page .rules-tab .rules-table table td .rule-code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;background:var(--bg-hover);padding:4px 8px;border-radius:4px}.firewall-page .rules-tab .rules-table table tr:last-child td{border-bottom:none}.firewall-page .blocked-tab .blocked-list{display:flex;flex-direction:column;gap:12px}.firewall-page .blocked-tab .blocked-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-subtle)}.firewall-page .blocked-tab .blocked-item .blocked-info{display:flex;flex-direction:column;gap:4px}.firewall-page .blocked-tab .blocked-item .blocked-info .blocked-ip{font-weight:600;color:#fb6f6f}.firewall-page .blocked-tab .blocked-item .blocked-info .blocked-rule{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.firewall-page .quick-tab h3{margin:0 0 8px;font-size:16px;font-weight:600}.firewall-page .quick-tab .quick-ports{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:24px}.firewall-page .quick-tab .quick-port-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-subtle)}.firewall-page .quick-tab .quick-port-item .port-info{display:flex;flex-direction:column;gap:4px}.firewall-page .quick-tab .quick-port-item .port-info .port-name{font-weight:500}.firewall-page .quick-tab .quick-port-item .port-info .port-number{font-size:12px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.firewall-page .install-info{padding:16px;background:var(--bg-hover);border-radius:8px;margin-top:16px}.firewall-page .install-info p{margin:0;font-size:12px;line-height:1.6}.firewall-page .install-info p strong{color:var(--accent-primary)}.firewall-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cron-page .cron-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}@media (max-width: 1024px){.cron-page .cron-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.cron-page .cron-kpis{grid-template-columns:1fr}}.cron-page .cron-listhead{display:flex;align-items:center;gap:12px;margin-bottom:12px}.cron-page .cron-listhead h2{flex:1;min-width:0;margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}@media (max-width: 768px){.cron-page .cron-listhead{flex-wrap:wrap}.cron-page .cron-listhead h2{flex-basis:100%}.cron-page .cron-listhead .cron-search{flex:1;width:auto}}.cron-page .cron-search{display:flex;align-items:center;gap:8px;width:240px;height:34px;padding:0 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;transition:border-color .2s ease}.cron-page .cron-search:focus-within{border-color:var(--accent)}.cron-page .cron-search svg{color:var(--text-faint);flex-shrink:0}.cron-page .cron-search input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text);font-size:13px}.cron-page .cron-search input::placeholder{color:var(--text-faint)}.cron-page .cron-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.cron-page .cron-empty{padding:40px;text-align:center;color:var(--text-faint);font-size:13px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.cron-page .cron-table th:nth-child(2){width:200px}.cron-page .cron-table th:nth-child(3){width:110px}.cron-page .cron-table th:last-child{width:1%}.cron-page .cron-table td:last-child{white-space:nowrap}.cron-page .cron-table tbody tr.is-disabled{opacity:.55}.cron-page .cron-table tbody tr.is-disabled .cron-ico{background:var(--surface-3);color:var(--text-faint)}.cron-page .cron-ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--accent-bg);color:var(--accent-bright)}.cron-page .cron-jobcell{min-width:0}.cron-page .cron-jobcell__desc{margin-top:2px;font-size:12px;font-weight:400;color:var(--text-dim)}.cron-page .cron-jobcell__cmd{max-width:460px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cron-page .cron-sched{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;font-family:var(--mono);font-size:11.5px;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:6px;white-space:nowrap}.cron-page .cron-sched svg{color:var(--text-faint);flex-shrink:0}.cron-page .cron-sched-readable{margin-top:3px;font-size:11px;color:var(--text-faint)}.cron-page .cron-actions{display:flex;justify-content:flex-end;gap:4px}@media (max-width: 768px){.cron-page .cron-card{overflow-x:auto}.cron-page .cron-table{min-width:640px}}.cron-page .modal .form-group>label:not(.checkbox-label){font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.cron-page .modal .form-help{display:block;margin-top:8px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.cron-page .run-output{display:flex;flex-direction:column;gap:16px}.cron-page .run-output-exit{display:flex;align-items:center;gap:12px}.cron-page .run-output-label{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.cron-page .run-output-section{display:flex;flex-direction:column;gap:8px}.cron-page .run-output-pre{margin:0;padding:12px 16px;font-family:var(--mono);font-size:12px;line-height:1.62;background:var(--bg-code);color:var(--text-code);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:300px;overflow:auto;white-space:pre-wrap;word-break:break-all}.cron-page .run-output-pre::-webkit-scrollbar{width:6px;height:6px}.cron-page .run-output-pre::-webkit-scrollbar-track{background:var(--bg-body)}.cron-page .run-output-pre::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.cron-page .run-output-pre::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.cron-page .run-output-pre--error{color:var(--red);border-color:#fb6f6f47}.cron-page .spinner-inline{display:inline-block;width:14px;height:14px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.security-page .tab-content .card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px;box-shadow:none}.security-page .tab-content .card-header{margin-bottom:16px}.security-page .tab-content .card-header h3{margin:0;display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.security-page .tab-content .card-header h3.sec-listtitle--green{color:var(--green)}.security-page .tab-content .card-header h3.sec-listtitle--red{color:var(--red)}.security-page .tab-content .card.sec-flush{padding:0}.security-page .tab-content .card.sec-flush .card-header{padding:20px 16px 0}.security-page .tab-content .card.sec-flush>.card-body{padding:0 16px 20px}.security-page .tab-content .card.scan-progress{border-color:var(--accent-dim)}.security-page .tab-content .card.card-warning{border-color:#f5b94559}.security-page .card-actions{display:flex;gap:8px}.security-page .sec-count{font-weight:500;color:var(--text-faint);letter-spacing:0}.security-page .sec-state--red{color:var(--red);background:var(--red-bg)}.security-page .sec-state--amber{color:var(--amber);background:var(--amber-bg)}.security-page .sec-state--cyan{color:var(--cyan);background:var(--cyan-bg)}.security-page .sec-state--green{color:var(--green);background:var(--green-bg)}.security-page .sec-state--violet{color:var(--violet);background:var(--violet-bg)}.security-page .sec-state--accent{color:var(--accent-bright);background:var(--accent-bg)}.security-page .sec-state--gray{color:var(--text-faint);background:var(--surface-3)}.security-page .sec-dot{width:8px;height:8px;border-radius:3px;flex-shrink:0;margin-top:5px;background:var(--text-ghost)}.security-page .sec-dot--red{background:var(--red)}.security-page .sec-dot--amber{background:var(--amber)}.security-page .sec-dot--cyan{background:var(--cyan)}.security-page .sec-dot--green{background:var(--green)}.security-page .sec-rows .sk-info-row .v.sec-v-amber{color:var(--amber)}.security-page .sec-chiprow{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.security-page .sec-finding-list{display:flex;flex-direction:column}.security-page .sec-finding{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-top:1px solid var(--border-soft);font-size:13px;line-height:1.45}.security-page .sec-finding:first-child{border-top:none}.security-page .sec-finding .sec-state{margin-top:1px}.security-page .sec-finding__msg{flex:1;min-width:0;overflow-wrap:anywhere}.security-page .sec-finding--more{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.security-page .sec-mono{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.security-page .sec-faint,.security-page .sk-dtable .sec-faint{color:var(--text-faint)}.security-page .sec-dash{font-family:var(--mono);color:var(--text-ghost)}.security-page .sk-dtable .sec-ip--green{color:var(--green)}.security-page .sk-dtable .sec-ip--red{color:var(--red)}.security-page .sk-dtable .sec-path{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}.security-page .sk-dtable .sec-path--red{color:var(--red)}.security-page .sk-dtable .sec-proto{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.security-page .sk-dtable .sec-rich-rule,.security-page .sk-dtable .sec-fp{font-size:11px;word-break:break-all}.security-page .sk-dtable .sec-rowend{text-align:right}.security-page .sec-hint{margin:16px 0 0;font-size:12px;line-height:1.55;color:var(--text-faint)}.security-page .sec-hint--lead{margin:0 0 16px}.security-page .sec-note{margin-top:20px;padding:16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-size:12px;color:var(--text-dim)}.security-page .sec-note p{margin:0;line-height:1.55}.security-page .sec-note strong{color:var(--text)}.security-page .scanner-tab,.security-page .quarantine-tab,.security-page .integrity-tab,.security-page .events-tab,.security-page .fail2ban-tab,.security-page .ssh-keys-tab,.security-page .ip-lists-tab,.security-page .audit-tab,.security-page .vulnerability-tab,.security-page .auto-updates-tab,.security-page .firewall-tab,.security-page .settings-tab{display:flex;flex-direction:column;align-items:stretch;gap:16px}.security-page .scanner-tab>.alert,.security-page .quarantine-tab>.alert,.security-page .integrity-tab>.alert,.security-page .events-tab>.alert,.security-page .fail2ban-tab>.alert,.security-page .ssh-keys-tab>.alert,.security-page .ip-lists-tab>.alert,.security-page .audit-tab>.alert,.security-page .vulnerability-tab>.alert,.security-page .auto-updates-tab>.alert,.security-page .firewall-tab>.alert,.security-page .settings-tab>.alert{margin:0}.security-overview{display:flex;flex-direction:column;gap:16px}.security-overview .sec-posture-card .card-header{display:flex;align-items:center;justify-content:space-between}.security-overview .sec-posture__top{display:flex;align-items:center;gap:24px;padding-bottom:16px;margin-bottom:8px;border-bottom:1px solid var(--border-soft)}@media (max-width: 640px){.security-overview .sec-posture__top{flex-direction:column;align-items:flex-start;gap:16px}}.security-overview .sec-posture__pending{display:grid;place-items:center;gap:8px;width:104px;height:104px;flex-shrink:0;font-size:11.5px;color:var(--text-faint)}.security-overview .sec-posture__pending svg{color:var(--text-faint)}.security-overview .sec-posture__summary{flex:1;min-width:0}.security-overview .sec-posture__verdict{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text)}.security-overview .sec-posture__kpis{display:flex;flex-wrap:wrap;gap:8px 20px}.security-overview .sec-kpi{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:7px;align-items:center}.security-overview .sec-kpi__icon{grid-row:1/span 2;color:var(--text-faint)}.security-overview .sec-kpi__val{font-family:var(--mono);font-size:19px;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:var(--text)}.security-overview .sec-kpi__val--text{font-size:14px}.security-overview .sec-kpi__label{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.security-overview .sec-kpi--amber .sec-kpi__val,.security-overview .sec-kpi--amber .sec-kpi__icon{color:var(--amber)}.security-overview .sec-kpi--red .sec-kpi__val,.security-overview .sec-kpi--red .sec-kpi__icon{color:var(--red)}.security-overview .sec-kpi--green .sec-kpi__icon{color:var(--green)}.security-overview .sec-kpi--cyan .sec-kpi__val,.security-overview .sec-kpi--cyan .sec-kpi__icon{color:var(--cyan)}.security-overview .sec-posture__checks{display:flex;flex-direction:column}.security-overview .sec-posture__check{display:flex;align-items:center;gap:12px;min-height:46px;padding:6px 0;border-top:1px solid var(--border-soft);font-size:13px}.security-overview .sec-posture__check:first-child{border-top:none}.security-overview .sec-posture__check--pass .sec-posture__ico{color:var(--green)}.security-overview .sec-posture__check--warn .sec-posture__ico{color:var(--amber)}.security-overview .sec-posture__check--unknown .sec-posture__ico{color:var(--text-ghost)}.security-overview .sec-posture__ico{flex-shrink:0}.security-overview .sec-posture__label{flex:1;min-width:0;color:var(--text)}.security-overview .sec-posture__detail{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);white-space:nowrap}.security-overview .sec-posture__fix{flex-shrink:0;min-width:124px;justify-content:center}.security-overview .sec-posture__foot{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}.security-overview .sec-posture__inline{height:auto;padding:0;font-size:inherit;vertical-align:baseline}.sec-spin{animation:sec-spin .8s linear infinite}@keyframes sec-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.sec-spin{animation:none}}.scanner-tab .scan-options{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 768px){.scanner-tab .scan-options{grid-template-columns:1fr}}.scanner-tab .scan-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 16px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,transform .15s}.scanner-tab .scan-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.scanner-tab .scan-card h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text)}.scanner-tab .scan-card .scan-desc{margin-bottom:16px;font-size:12px;color:var(--text-faint)}.scanner-tab .scan-card>button{margin-top:auto}.scanner-tab .scan-card-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:12px;border-radius:10px;background:var(--surface-2);color:var(--text-dim)}.scanner-tab .scan-card--quick .scan-card-icon{background:var(--accent-bg);color:var(--accent-bright)}.scanner-tab .scan-card--full .scan-card-icon{background:var(--violet-bg);color:var(--violet)}.scanner-tab .scan-card--custom .scan-card-icon{background:var(--cyan-bg);color:var(--cyan)}.scanner-tab .scan-card--custom{cursor:default}.scanner-tab .scan-card--custom:hover{border-color:var(--border-soft);transform:none}.scanner-tab .scan-custom-input{display:flex;gap:8px;width:100%;margin-top:auto}.scanner-tab .scan-custom-input input{flex:1;min-width:0}.scanner-tab .scan-toolbar{display:flex;justify-content:flex-end}.scan-progress .progress-info{display:flex;align-items:center;gap:16px}.scan-progress .progress-info .spinner{width:32px;height:32px}.scan-progress .progress-info p{margin:0;font-size:13px}.scan-progress .progress-info p:not(:last-child){margin-bottom:4px}.quarantine-tab .empty-state svg{color:var(--green)}.integrity-tab .description{margin-bottom:20px;font-size:13px;line-height:1.55;color:var(--text-dim)}.integrity-tab .integrity-actions{display:flex;gap:12px}.integrity-tab .sk-dtable .sec-state{text-transform:lowercase}.events-tab .failed-login-summary{display:flex;align-items:baseline;gap:12px}.events-tab .failed-login-summary .count{font-family:var(--mono);font-size:26px;font-weight:600;letter-spacing:-.02em}.events-tab .failed-login-summary .count.danger{color:var(--red)}.events-tab .failed-login-summary .label{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.events-tab .recent-failures{margin-top:16px}.events-tab .recent-failures summary{cursor:pointer;font-size:12.5px;color:var(--accent-bright)}.events-tab .recent-failures summary:hover{text-decoration:underline}.events-tab .recent-failures pre{margin-top:8px;padding:16px;max-height:200px;overflow:auto;background:var(--bg-code);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-family:var(--mono);font-size:11px;line-height:1.6;color:var(--text-code)}.settings-tab .card{max-width:860px}.settings-tab .form-group{margin:0;padding:2px 0}.settings-tab .form-group+.form-group{border-top:1px solid var(--border-soft)}.settings-tab .form-group>label{display:block;margin:10px 0 6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.settings-tab .toggle-switch-label{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:9px 0}.settings-tab .toggle-switch-label label{margin:0;font-size:13.5px;font-weight:500;color:var(--text);cursor:pointer}.settings-tab .form-actions{display:flex;justify-content:flex-start}.firewall-tab .firewall-status-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 20px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.firewall-tab .status-indicator{display:flex;align-items:center;gap:11px}.firewall-tab .status-indicator .sec-shield{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;flex-shrink:0}.firewall-tab .status-indicator.active .sec-shield{background:var(--green-bg);color:var(--green)}.firewall-tab .status-indicator.inactive .sec-shield{background:var(--red-bg);color:var(--red)}.firewall-tab .status-indicator__label{font-size:13.5px;font-weight:600;color:var(--text)}.firewall-tab .status-indicator .firewall-type{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--text-faint)}.firewall-tab .firewall-actions{display:flex;flex-wrap:wrap;gap:8px}.firewall-tab .firewall-stats{display:flex;flex-wrap:wrap;gap:12px}.firewall-tab .stat-mini{display:flex;flex-direction:column;min-width:120px;padding:12px 16px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.firewall-tab .stat-mini .stat-value{font-family:var(--mono);font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.1}.firewall-tab .stat-mini .stat-label{margin-top:5px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.firewall-tab .sec-subseg{align-self:flex-start}.firewall-tab .quick-ports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.firewall-tab .quick-port-card{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.firewall-tab .quick-port-card.is-allowed{border-color:#3ddc974d}.firewall-tab .quick-port-card .port-info{display:flex;flex-direction:column;min-width:0}.firewall-tab .quick-port-card .port-info .port-name{font-size:13px;font-weight:500}.firewall-tab .quick-port-card .port-info .port-number{margin-top:2px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.firewall-tab .blocked-list{display:flex;flex-direction:column}.firewall-tab .blocked-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;border-top:1px solid var(--border-soft)}.firewall-tab .blocked-item .blocked-ip{font-family:var(--mono);font-size:12.5px;font-weight:500;color:var(--red)}.firewall-tab .install-info{margin-top:16px;padding:16px;background:var(--surface-2);border-radius:var(--radius-sm)}.firewall-tab .install-info p{margin:0;font-size:12px}.ip-lists-tab .ip-lists-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px;align-items:start}@media (max-width: 640px){.ip-lists-tab .ip-lists-grid{grid-template-columns:1fr}}.audit-tab .loading-state{display:flex;flex-direction:column;align-items:center;padding:32px;gap:16px}.audit-tab .loading-state .spinner{width:40px;height:40px}.audit-tab .audit-results{display:flex;flex-direction:column;gap:20px}.audit-tab .sec-audit-score{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:8px}.audit-tab .sec-audit-meta{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.audit-tab .audit-section h4{margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.audit-tab .audit-section.recommendations{padding:16px;background:var(--accent-bg-soft);border:1px solid var(--accent-bg);border-radius:var(--radius-sm)}.audit-tab .audit-section.recommendations h4{border-bottom:none;padding-bottom:0;color:var(--accent-bright)}.audit-tab .audit-section.recommendations ul{margin:0;padding-left:20px}.audit-tab .audit-section.recommendations ul li{margin-bottom:8px;font-size:13px;line-height:1.5;color:var(--text-dim)}.audit-tab .audit-section.recommendations ul li:last-child{margin-bottom:0}.vulnerability-tab .sec-hardening{display:flex;align-items:center;gap:24px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--border-soft)}.vulnerability-tab .sec-hardening__title{font-size:14px;font-weight:600}.vulnerability-tab .sec-hardening__sub{margin-top:5px;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.vulnerability-tab .scan-section{margin-bottom:20px}.vulnerability-tab .scan-section:last-child{margin-bottom:0}.vulnerability-tab .scan-section h4{margin:0 0 8px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.auto-updates-tab .auto-updates-actions{display:flex;gap:12px;margin-top:20px}.not-installed{text-align:center;padding:24px}.not-installed p{margin-bottom:16px;color:var(--text-secondary)}.info-list{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.info-item:last-child{border-bottom:none}.info-item .info-label{color:var(--text-secondary)}.info-item .info-value{font-weight:500}.help-text{color:var(--text-secondary);font-size:12px}.loading-sm{color:var(--text-tertiary);font-size:12px;padding:16px}.tabs-nav-scrollable{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.tabs-nav-scrollable::-webkit-scrollbar{height:4px}.tabs-nav-scrollable::-webkit-scrollbar-track{background:transparent}.tabs-nav-scrollable::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:4px}.empty-state{display:flex;flex-direction:column;align-items:center;padding:32px;text-align:center}.empty-state>svg,.empty-state__icon svg{color:var(--text-tertiary);margin-bottom:16px}.empty-state h3{margin-bottom:8px}.empty-state p{color:var(--text-secondary);margin-bottom:24px}.empty-state-sm{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:24px;color:var(--text-secondary)}.empty-state-sm svg{color:var(--text-tertiary);opacity:.7;flex-shrink:0}.empty-state-sm p{margin:0}.fail2ban-tab .f2b-jails{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:16px}.fail2ban-tab .f2b-jail{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:14px 16px}.fail2ban-tab .f2b-jail__name{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13.5px;margin-bottom:12px}.fail2ban-tab .f2b-jail__name svg{color:var(--accent-bright)}.fail2ban-tab .f2b-jail__stats{display:flex;gap:20px}.fail2ban-tab .f2b-jail__v{font-family:var(--mono);font-size:18px;font-weight:600}.fail2ban-tab .f2b-jail__v--amber{color:var(--amber)}.fail2ban-tab .f2b-jail__l{font-size:10px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.templates-page .empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px;color:var(--text-tertiary)}.templates-page .empty-state svg{opacity:.5}.templates-page .empty-state p{margin:0;font-size:18px}.templates-page .templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(264px,1fr));gap:14px;padding-top:4px}.templates-page .tpl-card{position:relative;display:flex;flex-direction:column;padding:16px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);cursor:pointer;transition:border-color .14s,transform .14s,box-shadow .14s}.templates-page .tpl-card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-md)}.templates-page .tpl-card:hover .tpl-deploy{opacity:1;pointer-events:auto}.templates-page .tpl-top{display:flex;align-items:center;gap:12px;margin-bottom:11px}.templates-page .tpl-ico{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;overflow:hidden;background:var(--surface-2);color:var(--accent-bright)}.templates-page .tpl-ico img{width:100%;height:100%;object-fit:contain;padding:6px}.templates-page .tpl-ico svg{flex-shrink:0}.templates-page .tpl-id{min-width:0}.templates-page .tpl-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.templates-page .tpl-ver{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);margin-top:1px}.templates-page .tpl-ft{position:absolute;top:13px;right:13px;color:var(--amber)}.templates-page .tpl-ft svg{fill:currentColor}.templates-page .tpl-desc{margin:0;font-size:12.5px;color:var(--text-faint);line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.templates-page .tpl-tags{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:12px;min-height:26px}.templates-page .tpl-tags .tg{font-family:var(--mono);font-size:10px;padding:2px 7px;border-radius:5px;background:var(--surface-2);color:var(--text-dim);text-transform:capitalize;white-space:nowrap}.templates-page .tpl-link{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;background:var(--surface-2);color:var(--text-faint)}.templates-page .tpl-deploy{margin-left:auto;height:26px;padding:3px 10px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .14s}.templates-page .tpl-deploy:focus-visible{opacity:1;pointer-events:auto}.templates-filters{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.templates-page .search-box{position:relative;max-width:400px;width:min(400px,42vw)}.templates-page .search-box .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.templates-page .search-box input{width:100%;min-height:36px;padding:8px 40px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:13px}.templates-page .search-box input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-bg-soft)}.templates-page .search-box input::placeholder{color:var(--text-faint)}.templates-page .search-box .search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:4px;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.templates-page .search-box .search-clear:hover{color:var(--text-primary);background:var(--surface-hover)}.category-filters{display:flex;flex-wrap:wrap;gap:7px;min-width:0}.category-btn{display:flex;align-items:center;gap:6px;padding:5px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-faint);font-size:12.5px;font-weight:500;cursor:pointer;transition:.12s;text-transform:capitalize}.category-btn svg{color:var(--text-ghost);transition:color .12s}.category-btn:hover{color:var(--text-primary);border-color:var(--border-strong)}.category-btn:hover svg{color:var(--text-faint)}.category-btn.active{color:var(--accent-bright);background:var(--accent-bg);border-color:var(--accent-dim)}.category-btn.active svg{color:var(--accent-bright)}.category-btn--more{color:var(--accent-bright);border-style:dashed}.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-8px 0 16px}.filter-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 4px 4px 8px;background:var(--accent-bg);border:1px solid var(--accent-dim);border-radius:9999px;font-family:var(--mono);font-size:12px;color:var(--accent-bright)}.filter-chip svg:first-child{flex-shrink:0}.filter-chip button{display:flex;align-items:center;justify-content:center;padding:4px;margin-left:4px;background:transparent;border:none;border-radius:9999px;color:var(--accent-bright);cursor:pointer;transition:all .15s ease}.filter-chip button:hover{background:var(--accent-bg);color:var(--text)}.clear-all-btn{padding:4px 12px;background:transparent;border:1px solid var(--border);border-radius:9999px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.clear-all-btn:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-primary)}.templates-results-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-soft)}.results-count{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);white-space:nowrap}.sort-dropdown{display:flex;align-items:center;gap:8px;position:relative}.sort-dropdown label{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.sort-dropdown select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:8px 32px 8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:13px;color:var(--text-primary);cursor:pointer}.sort-dropdown select:focus{outline:none;border-color:var(--accent-primary)}.sort-dropdown .dropdown-icon{position:absolute;right:8px;pointer-events:none;color:var(--text-faint)}.template-icon-large{width:80px;height:80px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border-radius:8px;overflow:hidden;color:var(--accent-bright)}.template-icon-large img{width:100%;height:100%;object-fit:contain;padding:8px}.template-icon-large .template-icon-placeholder{font-size:30px}.template-icon-placeholder{font-size:24px;font-weight:700;color:var(--accent-bright)}.template-full-description{margin-bottom:16px;color:var(--text-secondary);line-height:1.6}.template-version{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--accent-bright);padding:4px 8px;background:var(--accent-bg);border-radius:4px}.template-categories{display:flex;flex-wrap:wrap;gap:4px}.category-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;font-family:var(--mono);font-size:10.5px;color:var(--text-dim);background:var(--surface-2);border-radius:5px;text-transform:capitalize}.template-detail-drawer{position:fixed;top:0;right:0;bottom:0;width:520px;max-width:100vw;max-height:none;border-radius:16px 0 0 16px;border-left:1px solid var(--border-soft);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:drawer-slide-in .28s cubic-bezier(.16,1,.3,1)}.template-detail-drawer .modal-header{flex-shrink:0;align-items:flex-start;padding:24px;border-bottom:1px solid var(--border-soft);background:var(--surface-2)}.template-detail-drawer .modal-body{flex:1;min-height:0;max-height:none;overflow-y:auto}.template-detail-drawer .modal-body::-webkit-scrollbar{width:6px;height:6px}.template-detail-drawer .modal-body::-webkit-scrollbar-track{background:var(--bg-body)}.template-detail-drawer .modal-body::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.template-detail-drawer .modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.template-detail-drawer .modal-footer{flex-shrink:0}.template-detail-header{display:flex;align-items:center;gap:16px}.template-detail-header h2{margin:0}.template-links{display:flex;gap:8px;margin-bottom:24px}.template-links .btn{display:inline-flex;align-items:center;gap:8px}.template-details-grid{display:flex;flex-direction:column;gap:24px}.detail-section h4{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em}.detail-section h4 svg{flex-shrink:0}.detail-section h4 .copy-btn{margin-left:auto;padding:4px;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:4px;display:flex;align-items:center;transition:all .15s ease}.detail-section h4 .copy-btn:hover{color:var(--accent-bright);background:var(--surface-hover)}.requirements-list{display:flex;flex-wrap:wrap;gap:12px}.requirement-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface-2);border-radius:6px}.requirement-item .requirement-label{font-size:12px;color:var(--text-tertiary)}.requirement-item .requirement-value{font-size:12px;font-weight:500;color:var(--text-primary);font-family:var(--mono)}.variables-list{display:flex;flex-direction:column;gap:12px}.variable-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--surface-2);border-radius:6px;border:1px solid var(--border-soft)}.variable-item.required{border-color:#6d7cff73;background:var(--accent-bg-soft)}.variable-item .variable-header{display:flex;align-items:center;gap:8px}.variable-name{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--accent-bright)}.required-badge{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;background:var(--accent-bg);color:var(--accent-bright);border-radius:4px;font-weight:600}.auto-badge{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;background:var(--green-bg);color:var(--green);border-radius:4px;font-weight:600}.variable-description{font-size:12px;color:var(--text-secondary)}.variable-default{font-size:12px;color:var(--text-faint);font-family:var(--mono)}.ports-list{display:flex;flex-wrap:wrap;gap:8px}.port-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface-2);border-radius:6px}.port-number{font-family:var(--mono);font-weight:500;color:var(--text-primary)}.port-protocol{font-family:var(--mono);font-size:10px;padding:4px;background:var(--surface-3);border-radius:4px;color:var(--text-secondary);text-transform:uppercase}.port-description{font-size:12px;color:var(--text-secondary)}.compose-preview{padding:16px;background:var(--bg-code);border-radius:6px;border:1px solid var(--border-soft)}.compose-preview code{font-family:var(--mono);font-size:12px;color:var(--text-code)}.install-modal h4{margin:16px 0 12px;font-size:14px;font-weight:600;padding-top:16px;border-top:1px solid var(--border-soft)}.deployment-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-bottom:12px}.deployment-progress span{font-family:var(--mono);font-size:12px;color:var(--text-secondary);text-transform:capitalize;white-space:nowrap}.deployment-progress-track{height:5px;background:var(--surface-3);border-radius:3px;overflow:hidden}.deployment-progress-fill{height:100%;border-radius:3px;background:var(--accent-primary);transition:width .18s ease}@media (max-width: 768px){.templates-page .templates-grid{grid-template-columns:1fr}.templates-page .tpl-deploy{opacity:1;pointer-events:auto}.search-box{width:100%;max-width:none}.templates-results-header{grid-template-columns:1fr;align-items:flex-start;gap:12px}.category-filters,.sort-dropdown{width:100%}.sort-dropdown select{flex:1}}.workflow-page{display:flex;flex-direction:column;height:calc(100vh - 24px);padding:16px}.workflow-page.fullscreen{height:100vh;padding:0}.workflow-page.fullscreen .workflow-canvas{border-radius:0;border:none}.workflow-canvas{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-body);border:1px solid var(--border-soft);border-radius:8px;overflow:hidden;position:relative}.workflow-canvas .react-flow{background:var(--bg-body)}.workflow-canvas .react-flow__controls{background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-md);overflow:hidden}.workflow-canvas .react-flow__controls button{background:var(--surface);border:none;border-bottom:1px solid var(--border-soft);color:var(--text-secondary);width:28px;height:28px}.workflow-canvas .react-flow__controls button:hover{background:var(--surface-hover);color:var(--text-primary)}.workflow-canvas .react-flow__controls button:last-child{border-bottom:none}.workflow-canvas .react-flow__controls button svg{fill:currentColor}.workflow-canvas .react-flow__minimap{background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-md);overflow:hidden}.workflow-canvas .react-flow__minimap-mask{fill:var(--bg-body);fill-opacity:.85}.workflow-canvas .react-flow__minimap-node{stroke:none}.workflow-canvas .react-flow__background{background:var(--bg-body)}.workflow-canvas .react-flow__connection-path{stroke:var(--accent);stroke-width:2}.workflow-canvas .react-flow__selection{background:var(--accent-bg-soft);border:1px dashed var(--accent-dim)}.workflow-canvas .react-flow__attribution{background:transparent}.workflow-canvas .react-flow__attribution a{color:var(--text-ghost)}.wf-head{position:relative;z-index:25;display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex-shrink:0;padding:9px 16px 9px 10px;border-bottom:1px solid var(--border-soft)}.wf-head__main{flex:1;min-width:200px}.wf-head__titlerow{display:flex;align-items:center;gap:10px}.wf-head__meta{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:1px;padding-left:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-head__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workflow-name-input{width:220px;height:auto;padding:5px 10px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text-primary);font-size:15px;font-weight:600;letter-spacing:-.01em;transition:border-color .15s ease,background .15s ease}.workflow-name-input:hover{border-color:var(--border)}.workflow-name-input:focus,.workflow-name-input:focus-visible{outline:none;border-color:var(--accent);background:var(--surface-2);box-shadow:none}.workflow-name-input::placeholder{color:var(--text-ghost)}.wf-active-toggle{display:inline-flex;align-items:center;gap:8px;margin-right:4px;cursor:pointer}.wf-active-toggle span{font-size:12px;color:var(--text-faint)}.toolbar-btn{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 11px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.toolbar-btn svg{flex-shrink:0}.toolbar-btn:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text-primary)}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn-execute{color:var(--green)}.toolbar-btn-execute:hover:not(:disabled){background:var(--green-bg);border-color:#3ddc9759;color:var(--green)}.toolbar-btn-primary{background:linear-gradient(180deg,var(--accent),var(--accent-dim));border-color:var(--accent-dim);color:#fff}.toolbar-btn-primary:hover:not(:disabled){background:linear-gradient(180deg,var(--accent-bright),var(--accent));border-color:var(--accent-dim);color:#fff}.toolbar-divider{width:1px;height:22px;background:var(--border);margin:0 4px}.toolbar-message{position:absolute;top:100%;right:16px;margin-top:6px;padding:5px 10px;background:#3ddc971f;border:1px solid rgba(61,220,151,.22);border-radius:6px;color:var(--green);font-family:var(--mono);font-size:11px;white-space:nowrap;z-index:30;animation:slideDown .2s ease-out}.wf-body{flex:1;display:flex;min-height:0;position:relative}.wf-rail{width:248px;flex-shrink:0;display:flex;flex-direction:column;padding:6px 10px 14px;border-right:1px solid var(--border-soft);background:var(--bg-sidebar);overflow-y:auto;scrollbar-width:thin}.wf-rail::-webkit-scrollbar{width:4px}.wf-rail::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}@media (max-width: 768px){.wf-rail{width:160px;padding:4px 7px 10px}}.wf-rail__grp{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-ghost);padding:11px 8px 6px}.wf-rail__node{display:flex;align-items:center;gap:9px;width:100%;padding:7px 9px;margin-bottom:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:12.5px;font-weight:500;text-align:left;cursor:pointer;transition:all .15s ease}.wf-rail__node span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-rail__node:hover{background:var(--surface-3);border-color:#6d7cff73;color:var(--text-primary)}.wf-rail__pi{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-3);color:var(--text-secondary)}.wf-rail__pi--trigger{color:var(--green)}.wf-rail__pi--action{color:var(--accent-bright)}.wf-rail__pi--logic{color:var(--amber)}.wf-rail__hint{margin-top:auto;padding:12px 8px 0;border-top:1px solid var(--border-soft);font-size:11px;line-height:1.5;color:var(--text-faint)}.wf-stage{flex:1;min-width:0;position:relative;overflow:hidden}.workflow-node{min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);transition:border-color .15s ease,box-shadow .15s ease}.workflow-node:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.workflow-node.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow),var(--shadow-lg)}.workflow-node-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-soft);border-top-left-radius:12px;border-top-right-radius:12px}.workflow-node-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(140deg,var(--accent),var(--accent-dim));border-radius:8px;color:#fff;flex-shrink:0}.workflow-node-type{font-family:var(--mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.workflow-node-body{padding:12px}.workflow-node-label{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.workflow-node-status{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-family:var(--mono);font-size:10px;font-weight:500}.workflow-node-status.status-running{background:#3ddc971f;color:var(--green)}.workflow-node-status.status-stopped{background:var(--surface-3);color:var(--text-faint)}.workflow-node-status.status-error{background:#fb6f6f1f;color:var(--red)}.node-trigger,.node-script,.node-logic,.node-notification{display:flex;align-items:center;gap:12px;padding:12px;min-width:180px;position:relative}.node-trigger.node-selected,.node-script.node-selected,.node-logic.node-selected,.node-notification.node-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow),var(--shadow-lg)}.node-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;background:var(--surface-2);border-radius:8px;color:var(--text-secondary)}.node-content{flex:1;min-width:0}.node-label{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-sublabel{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-icon-manual{color:var(--cyan)}.node-icon-cron{color:var(--violet)}.node-icon-webhook{color:var(--green)}.node-icon-event{color:var(--amber)}.node-icon-bash{color:var(--text-secondary)}.node-icon-python{color:var(--cyan)}.node-icon-logic{color:#f97316}.node-icon-discord{color:var(--violet)}.node-icon-slack{color:#ec4899}.node-icon-email{color:var(--cyan)}.node-status-active{border-color:var(--cyan);box-shadow:0 0 10px #49c7f04d}.node-status-success{border-color:var(--green);box-shadow:0 0 10px #3ddc974d}.node-status-error{border-color:var(--red);box-shadow:0 0 10px #fb6f6f4d}.node-status-inactive{border-color:var(--border-soft)}.node-outputs{display:flex;justify-content:space-around;width:100%;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-soft)}.node-output-branch{display:flex;flex-direction:column;align-items:center}.node-branch-label{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.05em;margin-bottom:4px}.node-branch-label.node-branch-true{color:var(--green)}.node-branch-label.node-branch-false{color:var(--red)}.handle-input,.handle-output{width:10px!important;height:10px!important;background:var(--surface-3)!important;border:2px solid var(--border-strong)!important;transition:all .15s ease}.handle-input:hover,.handle-output:hover{background:var(--accent)!important;border-color:var(--accent)!important;transform:scale(1.2)}.handle-true{border-color:var(--green)!important}.handle-true:hover{background:var(--green)!important}.handle-false{border-color:var(--red)!important}.handle-false:hover{background:var(--red)!important}.workflow-handle{width:12px!important;height:12px!important;background:var(--surface-3)!important;border:2px solid var(--border-strong)!important;transition:all .15s ease}.workflow-handle:hover{background:var(--accent)!important;border-color:var(--accent)!important;transform:scale(1.2)}.workflow-handle-target{left:-6px!important}.workflow-handle-source{right:-6px!important}.react-flow__edge-path{stroke:var(--border-active);stroke-width:2}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--accent-bright)}.react-flow__edge:hover .react-flow__edge-path{stroke:var(--accent)}.react-flow__edge.animated path{stroke-dasharray:5;animation:flowAnimation .5s linear infinite}@keyframes flowAnimation{0%{stroke-dashoffset:10}to{stroke-dashoffset:0}}.workflow-node-docker .node-icon-docker{background:linear-gradient(140deg,#2496ed,#1d77c4)}.workflow-node-database .node-icon-database{background:linear-gradient(140deg,#f5b945,#cf9430)}.workflow-node-domain .node-icon-domain{background:linear-gradient(140deg,#3ddc97,#2aa873)}.workflow-node-domain .node-label-domain{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:13.5px;font-weight:600}.workflow-node-service .node-icon-service{background:linear-gradient(140deg,#6d7cff,#4a5cd0)}.node-detail{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:10px}.node-detail .node-detail-label{color:var(--text-ghost);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.node-detail .node-detail-value{color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px}.node-detail-image .node-detail-value{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-detail-memory,.node-detail-size{color:var(--text-tertiary)}.node-detail-memory svg,.node-detail-size svg{opacity:.7}.node-description{font-size:10px;color:var(--text-tertiary);margin-top:4px}.node-ports{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.node-port-pill{display:inline-flex;align-items:center;padding:2px 8px;background:var(--accent-bg);border:1px solid rgba(109,124,255,.3);border-radius:5px;font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--accent-bright)}.node-type-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:5px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.04em;color:#fff;margin-top:4px}.node-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.node-ssl-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid;border-radius:5px;background:var(--surface-2);font-family:var(--mono);font-size:10px;font-weight:500}.node-dns-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:5px;font-family:var(--mono);font-size:10px;font-weight:500}.node-dns-badge.dns-propagated{background:#3ddc971f;color:var(--green)}.node-dns-badge.dns-pending{background:#f5b9451f;color:var(--amber)}.node-status-dot{width:8px;height:8px;border-radius:50%;margin-left:auto}.node-status-dot.status-running{background:var(--green);box-shadow:0 0 0 2px #3ddc974d;animation:pulseRunning 2s ease-in-out infinite}.node-status-dot.status-stopped{background:var(--text-ghost)}.node-status-dot.status-error{background:var(--red);box-shadow:0 0 0 2px #fb6f6f4d;animation:pulseError 1s ease-in-out infinite}@keyframes pulseRunning{0%,to{box-shadow:0 0 0 2px #3ddc974d}50%{box-shadow:0 0 0 4px #3ddc9726}}@keyframes pulseError{0%,to{box-shadow:0 0 0 2px #fb6f6f4d}50%{box-shadow:0 0 0 4px #fb6f6f26}}.workflow-handle-database{bottom:-6px!important;left:50%!important;transform:translate(-50%)}.config-panel{position:absolute;top:0;right:0;width:320px;height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:20;display:flex;flex-direction:column;transform:translate(100%);opacity:0;transition:transform .25s ease-out,opacity .2s ease-out;pointer-events:none}.config-panel.open{transform:translate(0);opacity:1;pointer-events:auto}.config-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.config-panel-title{display:flex;align-items:center;gap:12px}.config-panel-title h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.config-panel-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;color:#fff}.config-panel-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.config-panel-close:hover{background:var(--bg-hover);color:var(--text-primary)}.config-panel-body{flex:1;overflow-y:auto;padding:16px}.config-panel-body::-webkit-scrollbar{width:6px;height:6px}.config-panel-body::-webkit-scrollbar-track{background:var(--bg-body)}.config-panel-body::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.config-panel-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.config-panel-body .form-group{margin-bottom:16px}.config-panel-body .form-group label{display:block;font-family:var(--mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);margin-bottom:8px}.config-panel-body .form-group input,.config-panel-body .form-group select,.config-panel-body .form-group textarea{width:100%;padding:8px 12px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:12px;transition:border-color .15s ease}.config-panel-body .form-group input:focus,.config-panel-body .form-group select:focus,.config-panel-body .form-group textarea:focus{outline:none;border-color:var(--accent-primary)}.config-panel-body .form-group input::placeholder,.config-panel-body .form-group select::placeholder,.config-panel-body .form-group textarea::placeholder{color:var(--text-tertiary)}.config-panel-body .form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23646b7a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.config-panel-body .form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.config-panel-body .form-group .input-readonly{background:var(--bg-hover);cursor:not-allowed;color:var(--text-tertiary)}.config-panel-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.config-panel-body .form-hint{display:block;font-size:10px;color:var(--text-tertiary);margin-top:4px;text-transform:none;letter-spacing:normal}.config-panel-footer{padding:16px;border-top:1px solid var(--border-soft);flex-shrink:0}.trigger-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.trigger-type-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;background:var(--bg-body);border:1px solid var(--border);border-radius:8px;color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.trigger-type-btn:hover{border-color:var(--border-strong);color:var(--text-secondary)}.trigger-type-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-bright)}.trigger-type-btn .trigger-type-name{font-size:12px;font-weight:500}.trigger-type-btn .trigger-type-desc{font-size:10px;color:var(--text-tertiary);text-align:center;line-height:1.25}.channel-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.channel-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;color:var(--text-tertiary);font-size:10px;cursor:pointer;transition:all .15s ease}.channel-btn:hover{border-color:var(--border-strong);color:var(--text-secondary)}.channel-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-bright)}.lang-toggle{display:flex;gap:8px}.lang-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;color:var(--text-tertiary);font-size:12px;cursor:pointer;transition:all .15s ease}.lang-btn:hover{border-color:var(--border-strong);color:var(--text-secondary)}.lang-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-bright)}.script-editor{min-height:240px;background:var(--bg-code)!important;color:var(--text-code)!important;font-size:10px;line-height:1.6;-moz-tab-size:4;tab-size:4}.toggle-label{display:flex!important;align-items:center;justify-content:space-between}.input-with-action{display:flex;gap:8px}.input-with-action input{flex:1}.input-action-btn{display:flex;align-items:center;justify-content:center;padding:8px 12px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.input-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.panel-info-box{padding:12px;background:var(--accent-bg-soft);border:1px solid rgba(109,124,255,.2);border-radius:6px;font-size:10px;color:var(--text-secondary);line-height:1.6;margin-top:12px}.panel-info-box code{background:var(--surface-3);padding:1px 4px;border-radius:3px;font-family:var(--mono);font-size:10px;color:var(--accent-bright)}.panel-info-box.panel-info-warning{background:#f5b9451f;border-color:#f5b94538}.panel-info-box.panel-info-warning code{color:var(--amber)}.btn-delete-node{width:100%;padding:8px 16px;background:transparent;border:1px solid #fb6f6f;border-radius:6px;color:#fb6f6f;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-delete-node:hover{background:#fb6f6f;color:#fff}.branch-legend{display:flex;flex-direction:column;gap:8px;margin-top:16px}.branch-legend-item{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-secondary)}.branch-dot{width:8px;height:8px;border-radius:50%}.branch-dot.branch-dot-true{background:var(--green)}.branch-dot.branch-dot-false{background:var(--red)}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.font-mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace!important}.port-list{display:flex;flex-direction:column;gap:8px}.port-item{display:flex;gap:8px}.port-item input{flex:1}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:6px;flex-shrink:0}.btn-danger-ghost{background:transparent;border:1px solid transparent;color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.btn-danger-ghost:hover{background:#fb6f6f1f;border-color:#fb6f6f38;color:#fb6f6f}.connection-error-toast{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:30;padding:8px 16px;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:6px;color:#fb6f6f;font-size:12px;font-weight:500;box-shadow:var(--shadow-lg);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.edge-label{display:flex;align-items:center;gap:5px;padding:2px 8px;background:var(--surface-2);border:1px solid var(--edge-c, var(--accent));border-radius:6px;font-family:var(--mono);font-size:10px;font-weight:500;color:var(--edge-c, var(--accent));white-space:nowrap;transition:opacity .15s ease;opacity:0}.react-flow__edge:hover .edge-label,.edge-label.edge-label-selected{opacity:1}.edge-label.edge-label-selected{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-bright)}.edge-label-text{line-height:1.5}.edge-delete-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;margin-left:2px;background:#fb6f6f;border:none;border-radius:4px;color:#fff;cursor:pointer;transition:all .15s ease}.edge-delete-btn:hover{background:#fa3d3d}.workflow-handle{transition:all .15s ease}.workflow-handle:hover{transform:scale(1.3)}.react-flow__handle-connecting.react-flow__handle-valid{background:#3ddc97!important;box-shadow:0 0 6px #3ddc9799}.react-flow__handle-connecting:not(.react-flow__handle-valid){background:#fb6f6f!important;box-shadow:0 0 6px #fb6f6f99}.react-flow__edge{cursor:pointer}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--accent-bright)!important;stroke-width:2!important}.workflow-modal{width:500px;max-width:90vw}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.workflow-modal-content{flex:1;overflow-y:auto}.workflow-modal-content::-webkit-scrollbar{width:6px;height:6px}.workflow-modal-content::-webkit-scrollbar-track{background:var(--bg-body)}.workflow-modal-content::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.workflow-modal-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.workflow-list-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--text-tertiary)}.workflow-list-loading .spin{animation:spin 1s linear infinite}.workflow-list-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:#fb6f6f}.workflow-list-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px;color:var(--text-ghost)}.workflow-list-empty p{margin:0;font-size:14px;font-weight:500;color:var(--text-secondary)}.workflow-list-empty span{font-size:12px;color:var(--text-tertiary)}.workflow-list{display:flex;flex-direction:column;gap:8px}.workflow-list-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:8px;cursor:pointer;transition:all .15s ease}.workflow-list-item:hover{border-color:var(--accent);background:var(--accent-bg-soft)}.workflow-item-main{flex:1;min-width:0}.workflow-item-name{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden}.workflow-item-name>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-item-desc{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.workflow-item-meta{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.workflow-item-stats{display:flex;gap:12px}.workflow-item-stats .stat{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10px;color:var(--text-tertiary)}.workflow-item-date{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10px;color:var(--text-ghost)}.workflow-item-delete{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-tertiary);cursor:pointer;transition:all .15s ease;flex-shrink:0}.workflow-item-delete:hover{background:#fb6f6f1f;border-color:#fb6f6f38;color:#fb6f6f}.workflow-item-delete:disabled{opacity:.5;cursor:not-allowed}.workflow-item-delete .spin{animation:spin 1s linear infinite}.deployment-modal{width:520px;max-width:90vw}.deployment-modal-content{flex:1;overflow-y:auto}.deployment-modal-content::-webkit-scrollbar{width:6px;height:6px}.deployment-modal-content::-webkit-scrollbar-track{background:var(--bg-body)}.deployment-modal-content::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.deployment-modal-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.deployment-modal-footer{padding:16px 0 0;display:flex;justify-content:flex-end}.deployment-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--text-tertiary)}.deployment-loading .spin{animation:spin 1s linear infinite}.deployment-loading p{margin:0;font-size:14px;font-weight:500;color:var(--text-secondary)}.deployment-loading span{font-size:12px}.deployment-summary{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:12px;font-weight:500}.deployment-summary.success{background:#3ddc971f;border:1px solid rgba(61,220,151,.22);color:var(--green)}.deployment-summary.has-errors{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);color:var(--red)}.deployment-results{display:flex;flex-direction:column;gap:8px}.deployment-result-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;transition:all .15s ease}.deployment-result-item.success{border-color:#3ddc9738}.deployment-result-item.error{border-color:#fb6f6f38;background:#fb6f6f1f}.deployment-result-item.pending{opacity:.6}.result-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#fff;flex-shrink:0}.result-info{flex:1;min-width:0}.result-name{font-size:12px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-type{font-family:var(--mono);font-size:10px;color:var(--text-tertiary)}.result-status{display:flex;align-items:center;flex-shrink:0}.result-status .spin{animation:spin 1s linear infinite;color:var(--text-tertiary)}.result-status .status-success{color:var(--green)}.result-status .status-error{color:var(--red)}.result-status .status-pending{font-family:var(--mono);font-size:10px;color:var(--text-tertiary)}.result-link{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text-tertiary);text-decoration:none;transition:all .15s ease;flex-shrink:0}.result-link:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.deployment-errors{margin-top:16px;padding:12px;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:6px}.deployment-errors h4{margin:0 0 8px;font-size:12px;font-weight:600;color:#fb6f6f}.error-item{display:flex;align-items:flex-start;gap:8px;padding:8px 0;font-size:10px;color:#fb6f6f}.error-item svg{flex-shrink:0;margin-top:2px}.error-item:not(:last-child){border-bottom:1px solid rgba(251,111,111,.2)}.wf-history{display:flex;height:min(62vh,600px);border:1px solid var(--border-soft);border-radius:8px;background:var(--surface);overflow:hidden}.wf-history__list{width:230px;flex-shrink:0;border-right:1px solid var(--border-soft);background:var(--bg-sidebar);overflow-y:auto}.wf-history__list::-webkit-scrollbar{width:6px;height:6px}.wf-history__list::-webkit-scrollbar-track{background:var(--bg-body)}.wf-history__list::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.wf-history__list::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (max-width: 640px){.wf-history__list{width:150px}}.wf-history__item{padding:11px 14px;border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background .15s ease}.wf-history__item:hover{background:var(--surface-2)}.wf-history__item.is-on{background:var(--accent-bg);box-shadow:inset 2px 0 0 var(--accent)}.wf-history__item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.wf-history__id{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wf-history__trigger{font-size:12.5px;font-weight:500;color:var(--text-primary)}.wf-history__time{display:flex;align-items:center;gap:5px;margin-top:4px;font-family:var(--mono);font-size:10px;color:var(--text-faint)}.wf-history__time svg{flex-shrink:0}.wf-history__detail{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.wf-history__head{padding:13px 16px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.wf-history__title{display:flex;align-items:center;gap:9px;margin:0;font-size:13.5px;font-weight:600;color:var(--text-primary)}.wf-history__dur{margin-top:4px;font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.wf-history__logs{flex:1;overflow-y:auto;padding:12px 16px;background:var(--bg-code);font-family:var(--mono);font-size:11.5px}.wf-history__logs::-webkit-scrollbar{width:6px;height:6px}.wf-history__logs::-webkit-scrollbar-track{background:var(--bg-body)}.wf-history__logs::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.wf-history__logs::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.wf-history__logs-label{display:flex;align-items:center;gap:7px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--border-soft);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.wf-history__lines{display:flex;flex-direction:column;gap:2px}.wf-log{display:flex;gap:10px;padding:1px 4px;border-radius:4px;transition:background .15s ease}.wf-log:hover{background:var(--surface-2)}.wf-log__ts{color:var(--text-ghost);flex-shrink:0}.wf-log__lvl{flex-shrink:0;width:56px;font-weight:700}.wf-log__lvl--error{color:var(--red)}.wf-log__lvl--warning{color:var(--amber)}.wf-log__lvl--debug{color:var(--text-faint)}.wf-log__lvl--info{color:var(--cyan)}.wf-log__node{color:var(--accent-bright);flex-shrink:0}.wf-log__msg{color:var(--text-code);overflow-wrap:anywhere}.wf-history__nolog{color:var(--text-faint);font-style:italic}.wf-history__loading{display:flex;justify-content:center;padding:32px;color:var(--text-faint)}.wf-history__empty{padding:24px 16px;text-align:center;font-size:12.5px;color:var(--text-faint)}.wf-history__placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-ghost)}.wf-history__placeholder svg{opacity:.35}.wf-history__placeholder p{margin:0;font-size:13px;color:var(--text-faint)}.workflow-node.deployed{border-color:var(--green)}.workflow-node.deployed:after{content:"";position:absolute;top:-4px;right:-4px;width:12px;height:12px;background:var(--green);border:2px solid var(--surface);border-radius:50%}.workflow-node.is-real{border-color:#6d7cff66}.workflow-node.is-real.selected{border-color:var(--accent)}.workflow-node.is-real .workflow-node-header{background:var(--accent-bg-soft)}.node-domains{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.node-domain-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#3ddc971f;border:1px solid rgba(61,220,151,.3);border-radius:5px;font-family:var(--mono);font-size:10px;color:var(--green)}.node-domain-pill svg{opacity:.7}.node-domain-more{font-family:var(--mono);font-size:10px;color:var(--text-tertiary);padding:2px 4px}.node-detail-private-url{display:flex;align-items:center;gap:4px;margin-top:8px;padding:4px 8px;background:#49c7f01f;border-radius:5px}.node-detail-private-url svg{color:var(--cyan);flex-shrink:0}.node-detail-private-url .node-detail-value{font-family:var(--mono);font-size:10px;color:var(--cyan);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-value{padding:8px 12px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--text-primary)}.form-value.status-badge{display:inline-flex;padding:4px 8px;border-radius:6px;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:capitalize}.form-value.status-running{background:#3ddc971f;border-color:#3ddc9738;color:var(--green)}.form-value.status-stopped{background:var(--surface-3);border-color:var(--border);color:var(--text-faint)}.form-value.status-error{background:#fb6f6f1f;border-color:#fb6f6f38;color:var(--red)}.form-value-link{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--accent-primary)}.form-value-link:hover{text-decoration:underline}.form-value-link svg:last-child{opacity:.5;margin-left:auto}.form-domains{display:flex;flex-direction:column;gap:8px}.form-domain-item{display:flex;align-items:center;gap:8px;padding:8px;background:var(--bg-body);border:1px solid var(--border);border-radius:6px;font-size:12px}.form-domain-item svg{color:var(--green)}.form-domain-item .ssl-badge{margin-left:auto;padding:2px 6px;background:#3ddc971f;border-radius:5px;font-family:var(--mono);font-size:10px;font-weight:500;color:var(--green)}.action-buttons{display:flex;gap:8px;flex-wrap:wrap}.action-buttons .btn{flex:1;min-width:70px}.action-message{margin-top:8px;padding:8px;background:#3ddc971f;border:1px solid rgba(61,220,151,.22);border-radius:4px;font-family:var(--mono);font-size:10px;color:var(--green);text-align:center}.btn-block{width:100%;justify-content:center}.git-page .page-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.git-page .loading-state{display:flex;justify-content:center;padding:40px}.git-page .empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center}.git-page .empty-state-large .empty-icon{width:84px;height:84px;border-radius:20px;display:grid;place-items:center;background:var(--accent-bg);color:var(--accent-bright);margin-bottom:24px}.git-page .empty-state-large .empty-icon svg{width:40px;height:40px}.git-page .empty-state-large h2{margin:0 0 12px;font-size:24px;font-weight:600;letter-spacing:-.01em}.git-page .empty-state-large p{margin:0 0 24px;color:var(--text-dim);max-width:400px}.git-page .resource-warning{background:var(--amber-bg);border:1px solid rgba(245,185,69,.3);border-radius:var(--radius);padding:20px;margin-bottom:24px;text-align:left;max-width:500px}.git-page .resource-warning .warning-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--amber)}.git-page .resource-warning .warning-header strong{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}.git-page .resource-warning ul{margin:0;padding-left:20px;color:var(--text-dim);font-size:12px}.git-page .resource-warning ul li{margin-bottom:4px}.git-page .resource-warning ul li:last-child{margin-bottom:0}.git-page .resource-warning ul li strong{color:var(--text)}.git-page .git-hint{display:flex;align-items:center;gap:13px;padding:15px 18px;margin-bottom:20px;border:1px solid var(--border-soft);border-radius:var(--radius);background:linear-gradient(100deg,var(--accent-bg),transparent 80%)}.git-page .git-hint__icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--accent-bright)}.git-page .git-hint__body{flex:1;min-width:0}.git-page .git-hint__title{font-weight:550;font-size:13.5px;color:var(--text)}.git-page .git-hint__sub{margin-top:2px;font-size:12.5px;color:var(--text-faint)}.git-page .git-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}@media (max-width: 1024px){.git-page .git-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.git-page .git-kpis{grid-template-columns:1fr}}.git-page .git-kpi-text .sk-kpi__val{display:flex;align-items:center;min-height:27px;font-size:18px;line-height:1.25;overflow-wrap:anywhere}.git-page .tabs{gap:2px;margin-bottom:20px;border-bottom:1px solid var(--border-soft)}.git-page .tab{padding:8px 13px;border-radius:8px 8px 0 0;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:13px;color:var(--text-dim)}.git-page .tab:hover{color:var(--text);background:var(--surface-hover)}.git-page .tab.active,.git-page .tab[data-state=active]{color:var(--accent-bright);background:var(--accent-bg);border-bottom-color:var(--accent-bright)}.git-page .git-count{font-weight:500;color:var(--text-faint);letter-spacing:0}.git-page .git-chip{vertical-align:middle;margin-left:7px;padding:1px 6px;border-radius:5px;color:var(--text-faint);background:var(--surface-3)}.git-page .git-chip--amber{color:var(--amber);background:var(--amber-bg)}.git-page .git-chip--cyan{color:var(--cyan);background:var(--cyan-bg)}.git-page .git-chip--green{color:var(--green);background:var(--green-bg)}.git-page .git-branch-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);font-family:var(--mono);font-size:11.5px;color:var(--text-dim);white-space:nowrap}.git-page .git-branch-chip svg{color:var(--text-faint);flex-shrink:0}.git-page .git-hash{font-family:var(--mono);font-size:11px;color:var(--accent-bright);background:var(--accent-bg);padding:2px 7px;border-radius:5px;flex-shrink:0;white-space:nowrap}.git-page .git-table-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.git-page .git-repo-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--accent-bg);color:var(--accent-bright)}.git-page .git-src-tile{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;font-family:var(--mono);font-size:10px;font-weight:700;background:var(--surface-3);color:var(--text-dim)}.git-page .git-src-tile--github{background:#24292f;color:#fff}.git-page .git-src-tile--gitlab{background:#fc6d26;color:#fff}.git-page .git-src-tile--bitbucket{background:#0052cc;color:#fff}.git-page .git-repocell{min-width:0}.git-page .git-reponame{font-weight:550;color:var(--text)}.git-page .git-reponame .own{color:var(--text-faint);font-weight:400}.git-page .git-repo-desc{font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.git-page .git-chev{display:block;color:var(--text-ghost)}.git-page .git-row-actions{display:flex;justify-content:flex-end;gap:2px}.git-page .git-danger-btn{color:var(--red)}.git-page .git-danger-btn:hover{background:var(--red-bg);color:var(--red)}.git-page .git-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.git-page .git-repo-detail-tabs{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.git-page .git-repo-detail-tabs .branch-selector{display:flex;flex-direction:column;gap:4px}.git-page .git-repo-detail-tabs .branch-selector label{font-size:11px;color:var(--text-faint)}.git-page .git-repo-detail-tabs .branch-selector select{padding:6px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-family:var(--mono);font-size:12px;color:var(--text);cursor:pointer}.git-page .git-repo-detail-tabs .branch-selector select:focus{outline:none;border-color:var(--accent)}.git-page .git-mini-tabs{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);padding:4px}.git-page .git-mini-tabs button{padding:6px 12px;border:none;border-radius:6px;background:transparent;color:var(--text-dim);font-size:13px;cursor:pointer}.git-page .git-mini-tabs button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000000d}.git-page .info-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.git-page .info-card h3{margin:0 0 16px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.git-page .info-card .text-muted{color:var(--text-dim);font-size:12px;margin:0 0 16px}.git-page .overview-tab{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.git-page .overview-tab{grid-template-columns:1fr}}.git-page .overview-tab .info-grid{display:grid}.git-page .overview-tab .info-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--border-soft);font-size:13px}.git-page .overview-tab .info-item:last-child{border-bottom:none}.git-page .overview-tab .info-item .info-label{font-family:var(--mono);font-size:12px;color:var(--text-faint);flex-shrink:0}.git-page .overview-tab .info-item .info-value{font-family:var(--mono);font-size:12.5px;color:var(--text);text-align:right;min-width:0;overflow-wrap:anywhere}.git-page .overview-tab .info-item .info-value.text-success{color:var(--green)}.git-page .overview-tab .info-item .info-value.text-danger{color:var(--red)}.git-page .overview-tab .info-item .info-value.code{background:var(--bg-code);color:var(--text-code);border:1px solid var(--border-soft);padding:3px 8px;border-radius:4px;font-size:11.5px}.git-page .overview-tab .info-item .info-value a{color:var(--accent-bright);text-decoration:none}.git-page .overview-tab .info-item .info-value a:hover{text-decoration:underline}.git-page .overview-tab .quick-actions{display:flex;gap:12px;flex-wrap:wrap}.git-page .access-tab{display:flex;flex-direction:column;gap:16px}.git-page .access-tab .access-url{display:flex;align-items:center;gap:12px;background:var(--bg-code);border:1px solid var(--border-soft);padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:12px}.git-page .access-tab .access-url code{flex:1;font-family:var(--mono);font-size:12.5px;color:var(--accent-bright);word-break:break-all}.git-page .access-tab .ssh-note{font-size:12px;color:var(--text-dim);padding:12px 16px;background:var(--cyan-bg);border:1px solid rgba(73,199,240,.25);border-radius:var(--radius-sm)}.git-page .access-tab .ssh-note strong{color:var(--cyan)}.git-page .settings-tab{display:flex;flex-direction:column;gap:16px}.git-page .settings-tab .settings-actions{display:flex;gap:12px;flex-wrap:wrap}.git-page .git-repos-table th:nth-child(2){width:170px}.git-page .git-repos-table th:nth-child(3),.git-page .git-repos-table th:nth-child(4){width:70px}.git-page .git-repos-table th:nth-child(5){width:120px}.git-page .git-repos-table th:last-child{width:1%}.git-page .files-browser,.git-page .commits-list,.git-page .branches-list{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.git-page .files-browser .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;padding:9px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:12px}.git-page .files-browser .breadcrumb button{background:none;border:none;padding:0;font:inherit;color:var(--accent-bright);cursor:pointer}.git-page .files-browser .breadcrumb button:hover{text-decoration:underline}.git-page .files-browser .breadcrumb .separator{margin:0 6px;color:var(--text-ghost)}.git-page .files-browser .files-list .file-item{display:flex;align-items:center;gap:12px;padding:9px 16px;border-bottom:1px solid var(--border-soft);transition:background .12s}.git-page .files-browser .files-list .file-item:last-child{border-bottom:none}.git-page .files-browser .files-list .file-item.dir{cursor:pointer}.git-page .files-browser .files-list .file-item.dir:hover{background:var(--surface-2)}.git-page .files-browser .files-list .file-item .file-icon{display:inline-flex;color:var(--text-faint)}.git-page .files-browser .files-list .file-item.dir .file-icon{color:var(--accent-bright)}.git-page .files-browser .files-list .file-item .file-name{flex:1;min-width:0;font-family:var(--mono);font-size:12.5px;overflow-wrap:anywhere}.git-page .files-browser .files-list .file-item .file-size{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.git-page .commits-list .commit-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-soft)}.git-page .commits-list .commit-item:last-child{border-bottom:none}.git-page .commits-list .commit-item .commit-info{flex:1;min-width:0}.git-page .commits-list .commit-item .commit-info .commit-message{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.git-page .commits-list .commit-item .commit-info .commit-meta{margin-top:3px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.git-page .commits-list .commit-item .commit-info .commit-meta .author{color:var(--text-dim);margin-right:8px}.git-page .commits-list .commit-item .commit-sha{flex-shrink:0;margin-top:1px}.git-page .commits-list .btn-block{width:calc(100% - 32px);margin:16px}.git-page .branches-list .branch-item{display:flex;align-items:center;gap:16px;padding:11px 16px;border-bottom:1px solid var(--border-soft)}.git-page .branches-list .branch-item:last-child{border-bottom:none}.git-page .branches-list .branch-item.active{background:var(--accent-bg-soft)}.git-page .branches-list .branch-item .branch-info{flex:1;min-width:0}.git-page .branches-list .branch-item .branch-info .branch-name{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12.5px;font-weight:500}.git-page .branches-list .branch-item .branch-info .branch-name svg{color:var(--text-faint);flex-shrink:0}.git-page .branches-list .branch-item .branch-info .branch-name .git-chip{margin-left:0}.git-page .branches-list .branch-item .branch-info .branch-commit{margin-top:3px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.git-page .branches-list .branch-item .branch-info .branch-commit code{color:var(--accent-bright);margin-right:8px}.git-page .git-webhooks-table th:last-child{width:1%}.git-page .git-webhooks-table td:last-child{white-space:nowrap}.git-page .git-webhooks-table .git-url{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.git-page .git-webhooks-table tbody tr.is-disabled td:not(:last-child){opacity:.55}.git-page .git-deploys-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:2px 20px}.git-page .git-deploy-row{display:flex;align-items:flex-start;gap:13px;padding:13px 0;border-top:1px solid var(--border-soft)}.git-page .git-deploy-row:first-child{border-top:none}@media (max-width: 640px){.git-page .git-deploy-row{flex-wrap:wrap}}.git-page .git-deploy-dot{width:8px;height:8px;border-radius:3px;margin-top:6px;flex-shrink:0;background:var(--text-ghost)}.git-page .git-deploy-dot--green{background:var(--green);box-shadow:0 0 6px var(--green)}.git-page .git-deploy-dot--red{background:var(--red)}.git-page .git-deploy-dot--amber{background:var(--amber);box-shadow:0 0 6px var(--amber)}.git-page .git-deploy-body{flex:1;min-width:0}.git-page .git-deploy-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.git-page .git-deploy-version{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--text)}.git-page .git-deploy-msg{margin-top:4px;font-size:13px;color:var(--text-dim);overflow-wrap:anywhere}.git-page .git-deploy-meta{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.git-page .git-deploy-meta span+span:before{content:"·";margin-right:4px;color:var(--text-ghost)}.git-page .git-deploy-error{margin-top:6px;padding:6px 10px;border-radius:4px;background:var(--red-bg);color:var(--red);font-size:12px;overflow-wrap:anywhere}.git-page .git-deploy-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}@media (max-width: 640px){.git-page .git-deploy-side{width:100%;flex-direction:row;align-items:center;justify-content:space-between;padding-left:21px}}.git-page .git-deploy-time{font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.git-page .git-deploy-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}@media (max-width: 768px){.git-page .git-table-card{overflow-x:auto}.git-page .git-repos-table{min-width:720px}.git-page .git-webhooks-table{min-width:960px}}.git-page .modal-lg{max-width:500px}.git-page .modal-xl{max-width:800px}.git-page .modal-header .btn-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;background:none;border-radius:6px;color:var(--text-faint);cursor:pointer;transition:background .15s ease,color .15s ease}.git-page .modal-header .btn-icon:hover{background:var(--surface-hover);color:var(--text)}.git-page .modal .form-group:not(.checkbox)>label{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.git-page .required{color:var(--red)}.git-page .install-warning{display:flex;gap:12px;background:var(--accent-bg-soft);border:1px solid var(--accent-dim);border-radius:var(--radius);padding:16px;margin-bottom:20px;font-size:12px}.git-page .install-warning svg{flex-shrink:0;color:var(--accent-bright)}.git-page .install-warning strong{display:block;margin-bottom:8px;color:var(--text)}.git-page .install-warning ul{margin:0;padding-left:16px;font-size:12px;color:var(--text-dim)}.git-page .install-warning ul li{margin-bottom:4px}.git-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.git-page .form-row{grid-template-columns:1fr}}.git-page .form-group.checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:400;color:var(--text)}.git-page .form-group.checkbox label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.git-page .form-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-soft)}.git-page .form-section h4{margin:0 0 4px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.git-page .form-section .text-muted{color:var(--text-dim);font-size:12px;margin:0 0 16px}.git-page .form-hint{display:block;font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:4px}.git-page .form-group textarea{width:100%;min-height:80px;padding:12px;font-family:var(--mono);font-size:12px;line-height:1.6;background:var(--bg-code);color:var(--text-code);border:1px solid var(--border);border-radius:6px;resize:vertical}.git-page .form-group textarea:focus{outline:none;border-color:var(--accent)}.git-page .form-group textarea::placeholder{color:var(--text-ghost)}.git-page .secret-warning{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--amber-bg);border:1px solid rgba(245,185,69,.3);border-radius:var(--radius-sm);margin-bottom:16px}.git-page .secret-warning svg{color:var(--amber);flex-shrink:0}.git-page .secret-warning span{font-size:13px;font-weight:500;color:var(--text)}.git-page .secret-display{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:16px}.git-page .secret-display code{flex:1;font-family:var(--mono);font-size:12.5px;color:var(--accent-bright);word-break:break-all}.git-page .deployment-summary{display:flex;flex-wrap:wrap;gap:12px 20px;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);margin-bottom:16px}.git-page .deployment-summary .summary-item{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;color:var(--text)}.git-page .deployment-summary .summary-item .label{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.git-page .deployment-error{padding:12px 16px;background:var(--red-bg);border:1px solid rgba(251,111,111,.3);border-radius:var(--radius-sm);margin-bottom:16px;color:var(--red);font-size:13px;overflow-wrap:anywhere}.git-page .deployment-error strong{margin-right:8px}.git-page .log-section{margin-bottom:16px}.git-page .log-section h4{margin:0 0 8px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.git-page .log-section .log-output{margin:0;padding:12px 16px;background:var(--bg-code);color:var(--text-code);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--mono);font-size:12px;line-height:1.62;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto}.git-page .log-section .log-output::-webkit-scrollbar{width:6px;height:6px}.git-page .log-section .log-output::-webkit-scrollbar-track{background:var(--bg-body)}.git-page .log-section .log-output::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.git-page .log-section .log-output::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.git-page .no-logs{padding:24px;text-align:center;color:var(--text-faint);font-size:13px}.servers-page{padding:0}.servers-page--loading{min-height:58vh;display:flex;align-items:center;justify-content:center}.servers-loading-card{display:inline-flex;align-items:center;gap:12px;padding:20px 24px;border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(135deg,var(--accent-glow),transparent 55%),var(--bg-card);color:var(--text-secondary);box-shadow:var(--shadow-lg)}.servers-loading-card svg{color:var(--accent-primary);animation:servers-pulse 1.5s ease-in-out infinite}.servers-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:24px;align-items:stretch;margin-bottom:24px;padding:32px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(135deg,var(--accent-glow),transparent 38%),linear-gradient(180deg,var(--bg-card),var(--bg-elevated));box-shadow:var(--shadow-lg)}.servers-hero:after{content:"";position:absolute;inset:auto -8% -48% 32%;height:170px;background:linear-gradient(90deg,transparent,var(--accent-glow),transparent);transform:rotate(-7deg);pointer-events:none}.servers-hero h1{margin:4px 0 8px;color:var(--text-primary);font-size:clamp(32px,5vw,64px);line-height:.95;letter-spacing:-.07em}.servers-hero .page-description{max-width:620px;margin:0;color:var(--text-secondary);font-size:16px;line-height:1.6}@media (max-width: 1024px){.servers-hero{grid-template-columns:1fr}}@media (max-width: 640px){.servers-hero{padding:20px}}.servers-hero__copy,.servers-hero__status{position:relative;z-index:1}.servers-hero__copy{display:flex;flex-direction:column;justify-content:center;min-height:190px}.servers-eyebrow{display:inline-flex;align-items:center;width:fit-content;gap:8px;color:var(--accent-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.servers-eyebrow:before{content:"";width:8px;height:8px;border-radius:9999px;background:currentColor;box-shadow:0 0 18px currentColor}.servers-hero__status{display:flex;flex-direction:column;gap:16px;justify-content:space-between}.servers-hero__actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media (max-width: 640px){.servers-hero__actions{justify-content:stretch}.servers-hero__actions .btn{flex:1;justify-content:center}}.servers-health-panel{padding:20px;border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(180deg,var(--accent-glow),transparent),var(--bg-card);box-shadow:var(--shadow-sm)}.servers-health-panel__top,.servers-health-panel__meta{display:flex;justify-content:space-between;gap:12px}.servers-health-panel__top{align-items:flex-start;margin-bottom:16px}.servers-health-panel__top span{color:var(--text-tertiary);font-size:12px}.servers-health-panel__top strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:30px;line-height:1}.servers-health-panel__meta{margin-top:12px;color:var(--text-tertiary);font-size:10px;text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap}.servers-health-bar{display:flex;width:100%;height:12px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:9999px;background:var(--bg-secondary)}.servers-health-bar__segment{min-width:0;height:100%;transition:width .3s ease}.servers-health-bar__segment--online{background:linear-gradient(90deg,#3ddc97,#84cc16);box-shadow:0 0 22px #3ddc9759}.servers-health-bar__segment--connecting{background:linear-gradient(90deg,#f5b945,#f97316)}.servers-health-bar__track{flex:1}.servers-page .stat-icon.all{background:var(--accent-glow);color:var(--accent-primary)}.servers-page .stat-icon.online{background:#3ddc971f;color:#3ddc97}.servers-page .stat-icon.offline{background:#fb6f6f1f;color:#fb6f6f}.servers-page .stat-icon.connecting{background:#f5b9451f;color:#f5b945}.servers-command-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:12px;border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm)}@media (max-width: 1024px){.servers-command-bar{flex-direction:column;align-items:stretch}}.servers-toolbar{display:flex;gap:12px;flex:1}@media (max-width: 640px){.servers-toolbar{flex-direction:column}}.search-box{position:relative;flex:1}.search-box svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary)}.search-box input{width:100%;height:44px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:12px;padding:12px 12px 12px 40px;color:var(--text-primary);font-size:12px}.search-box input::placeholder{color:var(--text-tertiary)}.search-box input:focus{outline:none;border-color:var(--accent-primary)}.group-filter{display:flex;align-items:center;gap:8px;padding-left:12px;border-left:1px solid var(--border-subtle)}.group-filter span{color:var(--text-tertiary);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.group-filter select{height:44px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:12px;padding:12px 16px;color:var(--text-primary);font-size:12px;min-width:160px}.group-filter select:focus{outline:none;border-color:var(--accent-primary)}@media (max-width: 640px){.group-filter{padding-left:0;border-left:0}}.servers-results-summary{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--text-tertiary);font-size:12px;white-space:nowrap}.servers-results-summary strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:18px}.servers-clear-filters{margin-left:8px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:9999px;background:transparent;color:var(--accent-primary);cursor:pointer;font-size:10px;font-weight:600}.servers-clear-filters:hover{border-color:var(--accent-primary);background:var(--accent-glow)}.servers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.server-card{position:relative;display:flex;min-height:100%;flex-direction:column;background:linear-gradient(180deg,var(--accent-glow),transparent 34%),var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.server-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--text-tertiary);opacity:.65}.server-card:hover{transform:translateY(-3px);border-color:var(--border-active);box-shadow:var(--shadow-lg)}.server-card.online:before{background:linear-gradient(90deg,#3ddc97,#84cc16)}.server-card.online:hover{border-color:#3ddc97;box-shadow:0 0 0 1px #3ddc9738}.server-card.offline:before{background:linear-gradient(90deg,#fb6f6f,#f97316)}.server-card.connecting:before{background:linear-gradient(90deg,#f5b945,#f97316)}.server-card-header{display:flex;align-items:center;gap:12px;padding:20px 16px 16px;border-bottom:1px solid var(--border-subtle)}.server-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border-subtle);border-radius:14px;background:linear-gradient(135deg,var(--accent-glow),transparent),var(--bg-body);color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:14px;font-weight:700}.server-status-indicator{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:currentColor;box-shadow:0 0 12px currentColor}.server-info{flex:1;min-width:0}.server-info .server-name{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.server-info .server-hostname{font-size:10px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.server-status-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid var(--border-subtle);border-radius:9999px;background:var(--bg-body);color:var(--text-tertiary);font-size:10px;font-weight:700;text-transform:capitalize}.server-status-pill.online{color:#3ddc97;background:#3ddc971f;border-color:#3ddc9738}.server-status-pill.offline{color:#fb6f6f;background:#fb6f6f1f;border-color:#fb6f6f38}.server-status-pill.connecting{color:#f5b945;background:#f5b9451f;border-color:#f5b94538}.server-card-body{display:flex;flex:1;flex-direction:column;padding:16px}.server-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-item .meta-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.meta-item .meta-value{font-size:12px;color:var(--text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-metrics-mini{display:flex;flex-direction:column;gap:8px;margin:auto 0 16px;padding:12px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-body)}.metric-bar{display:flex;align-items:center;gap:8px}.metric-bar .metric-label{font-size:10px;color:var(--text-tertiary);width:32px}.metric-bar .bar-track{flex:1;height:7px;background:var(--bg-secondary);border-radius:9999px;overflow:hidden}.metric-bar .bar-fill{height:100%;border-radius:9999px;transition:width .2s ease}.metric-bar .bar-fill.cpu{background:var(--accent-primary)}.metric-bar .bar-fill.memory{background:#3ddc97}.metric-bar .bar-fill.disk{background:#f5b945}.metric-bar .metric-value{font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-tertiary);width:32px;text-align:right}.server-telemetry-placeholder{display:flex;align-items:center;justify-content:center;gap:8px;margin:auto 0 16px;padding:12px;border:1px dashed var(--border-active);border-radius:12px;background:var(--bg-body);color:var(--text-tertiary);font-size:10px;font-weight:600}.server-telemetry-placeholder svg{width:14px;height:14px}.server-group-badge{display:inline-flex;align-items:center;gap:4px;background:var(--bg-hover);color:var(--text-secondary);font-size:10px;padding:4px 8px;border-radius:4px;width:fit-content}.server-card-footer{display:flex;gap:8px;padding:12px 16px;background:var(--bg-hover);border-top:1px solid var(--border-subtle)}.server-card-footer .btn{flex:1;justify-content:center}.server-card-footer .btn-sm{padding:8px 12px;font-size:10px}.server-card-footer .server-ping-button{flex:0 0 48px}.server-setup-modal{position:fixed;top:0;right:0;bottom:0;width:480px;max-width:100vw;max-height:none;border-radius:16px 0 0 16px;border-left:1px solid var(--border-subtle);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:drawer-slide-in .28s cubic-bezier(.16,1,.3,1)}.server-setup-modal .modal-header{flex-shrink:0;align-items:flex-start;padding:24px 24px 20px;background:linear-gradient(135deg,var(--accent-glow),transparent 42%),linear-gradient(135deg,var(--bg-card),var(--bg-elevated));border-bottom:1px solid var(--border-subtle)}.server-setup-modal .modal-header h2{margin:0 0 4px;font-size:20px;letter-spacing:-.03em}.server-setup-modal .modal-header p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.45}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.mode-switcher{display:flex;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:3px;gap:2px;flex-shrink:0;margin:16px 24px 0}.mode-switcher__tab{flex:1;padding:8px 12px;background:transparent;border:none;border-radius:5px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.mode-switcher__tab:hover{color:var(--text-primary)}.mode-switcher__tab.is-active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 4px #00000040}.pair-instructions{display:flex;gap:12px;padding:12px 16px;background:#6d7cff12;border:1px solid rgba(109,124,255,.22);border-radius:6px}.pair-instructions p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.pair-instructions p code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--accent-primary);background:#6d7cff1f;padding:1px 5px;border-radius:4px}.server-setup-form{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}.server-setup-form__body{display:grid;align-content:start;gap:16px;padding:20px 24px;overflow-y:auto;flex:1;min-height:0}.server-setup-form__body::-webkit-scrollbar{width:6px;height:6px}.server-setup-form__body::-webkit-scrollbar-track{background:var(--bg-body)}.server-setup-form__body::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.server-setup-form__body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.server-setup-form .modal-actions{flex-shrink:0;margin:0;padding:12px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-card)}.server-setup-form .form-group{margin:0}.server-setup-form .form-hint{display:block;margin-top:6px;color:var(--text-tertiary);font-size:10px;line-height:1.4}.form-disclosure{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:1px dashed var(--border-subtle);border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left}.form-disclosure:hover{border-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-hover)}.form-disclosure__chevron{display:inline-block;font-size:16px;line-height:1;color:var(--accent-primary);transition:transform .15s ease}.form-disclosure__chevron.is-open{transform:rotate(90deg)}.form-disclosure__hint{margin-left:auto;color:var(--text-tertiary);font-size:10px;font-weight:400}.form-disclosure__panel{display:grid;gap:16px;padding:16px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:6px;animation:form-disclosure-in .18s ease}@keyframes form-disclosure-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:64px 24px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.empty-state .empty-icon{width:64px;height:64px;color:var(--text-tertiary);margin-bottom:16px}.empty-state h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.empty-state p{color:var(--text-secondary);margin:0 0 24px}.servers-empty-state{position:relative;overflow:hidden;max-width:760px;margin:0 auto;background:radial-gradient(circle at 50% -20%,var(--accent-glow),transparent 38%),var(--bg-card)}.servers-empty-state .servers-eyebrow{margin:0 auto 12px}.servers-empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:92px;height:92px;margin-bottom:16px;border:1px solid var(--border-subtle);border-radius:28px;background:var(--bg-body)}.servers-empty-state__icon .empty-icon{margin:0;color:var(--accent-primary)}@keyframes servers-pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1)}}.server-detail-page{padding:0;width:min(100%,1400px);margin:0 auto}.page-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.02em}.page-breadcrumb a{color:var(--text-faint);text-decoration:none;transition:color .14s}.page-breadcrumb a:hover{color:var(--accent-bright)}.page-breadcrumb .breadcrumb-separator{color:var(--text-ghost)}.page-breadcrumb span:last-child{color:var(--text-dim)}.server-title{display:flex;align-items:center;gap:12px}.server-title h1{margin:0}.status-dot{width:12px;height:12px;border-radius:50%}.status-dot.large{width:14px;height:14px}.tab-btn{background:transparent;border:none;color:var(--text-tertiary);font-size:12px;font-weight:500;padding:12px 16px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--text-primary);border-bottom-color:var(--accent-primary)}.overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media (max-width: 1024px){.overview-grid{grid-template-columns:1fr}}.info-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:20px}.info-card h3{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 16px}.info-list{display:flex;flex-direction:column;gap:12px}.info-item{display:flex;justify-content:space-between;align-items:center}.info-item .info-label{font-size:12px;color:var(--text-tertiary)}.info-item .info-value{font-size:12px;color:var(--text-primary)}.info-item .info-value.mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:500;text-transform:capitalize}.status-badge.online{background:#3ddc971f;color:#3ddc97}.status-badge.offline{background:#fb6f6f1f;color:#fb6f6f}.status-badge.connecting{background:#f5b9451f;color:#f5b945}.status-badge.pending{background:var(--bg-secondary);color:var(--text-tertiary)}.offline-card{grid-column:span 2}@media (max-width: 1024px){.offline-card{grid-column:span 1}}.offline-message{text-align:center;padding:24px}.offline-message svg{color:var(--text-tertiary);margin-bottom:16px}.offline-message h4{font-size:18px;color:var(--text-primary);margin:0 0 8px}.offline-message p{color:var(--text-secondary);margin:0}.offline-notice{text-align:center;padding:48px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg)}.offline-notice svg{color:var(--text-ghost);margin-bottom:16px}.offline-notice h4{font-size:18px;color:var(--text);margin:0 0 8px}.offline-notice p{color:var(--text-dim);margin:0;font-size:13px}.docker-tab,.cron-tab{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.cron-tab__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--border-soft)}.cron-tab__status{display:flex;align-items:center;gap:12px}.cron-tab__count{color:var(--text-faint);font-family:var(--mono);font-size:11.5px}.cron-tab__actions{display:flex;gap:8px}.cron-tab__name{color:var(--text);font-weight:500;margin-bottom:2px}.cron-tab__command{font-family:var(--mono);font-size:12px;color:var(--text-dim);word-break:break-all}.cron-tab__description{color:var(--text-faint);font-size:10px;margin-top:2px}.cron-tab__custom-schedule{margin-top:8px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.cron-tab .data-table td,.cron-tab .data-table th{padding-left:16px;padding-right:16px}.cron-tab .data-table .row-disabled td{opacity:.6}.cron-tab .empty-list{padding:24px;text-align:center;color:var(--text-tertiary)}.cloudflared-tab{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.cloudflared-tab__hint{margin:16px;padding:12px 16px;background:var(--accent-bg-soft);border:1px solid rgba(109,124,255,.22);border-radius:var(--radius-sm);color:var(--text-dim);font-size:13px}.cloudflared-tab__hint code{background:var(--surface-2);padding:0 4px;border-radius:4px;font-family:var(--mono);font-size:12px;color:var(--text)}.cloudflared-tab__hint a{color:var(--accent-bright);text-decoration:underline}.docker-sub-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-soft);padding:0 12px}.sub-tab{background:transparent;border:none;color:var(--text-faint);font-size:13px;font-weight:500;padding:11px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s}.sub-tab:hover{color:var(--text-dim)}.sub-tab.active{color:var(--text);border-bottom-color:var(--accent)}.containers-list,.images-list{padding:0}.containers-list .empty-state,.images-list .empty-state{border:none;background:transparent}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:12px;border-bottom:1px solid var(--border-subtle)}.data-table td{padding:12px;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.data-table tr:last-child td{border-bottom:none}.data-table .container-name{display:block;color:var(--text-primary);font-weight:500}.data-table .container-id{display:block;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.data-table .mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:500}.status-pill.running{background:#3ddc971f;color:#3ddc97}.status-pill.stopped{background:var(--bg-secondary);color:var(--text-tertiary)}.actions-cell{display:flex;gap:4px;justify-content:flex-end}.btn-icon{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px;border-radius:4px;display:flex;align-items:center;justify-content:center}.btn-icon:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-icon.success{color:#3ddc97}.btn-icon.success:hover{background:#3ddc971f}.btn-icon.danger{color:#fb6f6f}.btn-icon.danger:hover{background:#fb6f6f1f}.empty-list{text-align:center;padding:32px;color:var(--text-tertiary)}.metrics-tab{padding:0}.metrics-live-stats{margin-top:24px}.live-stat-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.live-stat-card h4{font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;margin:0 0 16px}.live-stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}@media (max-width: 1024px){.live-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.live-stats-grid{grid-template-columns:repeat(2,1fr)}}.live-stat{text-align:center}.live-stat .live-stat-label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}.live-stat .live-stat-value{display:block;font-size:16px;font-weight:600;font-family:var(--mono);letter-spacing:-.02em;color:var(--text)}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1024px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.metrics-grid{grid-template-columns:1fr}}.metric-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:20px}.metric-card.large{display:flex;flex-direction:column;align-items:center}.metric-card h3{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 16px;text-align:center}.metric-gauge{display:flex;justify-content:center;margin-bottom:16px}.circular-gauge{width:120px;height:120px}.circular-gauge .gauge-bg{fill:none;stroke:var(--bg-secondary);stroke-width:8}.circular-gauge .gauge-fill{fill:none;stroke-width:8;stroke-linecap:round;transform:rotate(-90deg);transform-origin:center}.circular-gauge .gauge-text{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:20px;font-weight:700;fill:var(--text-primary);text-anchor:middle;dominant-baseline:middle}.metric-details{width:100%}.detail-item{display:flex;justify-content:space-between;padding:8px 0;font-size:12px;border-top:1px solid var(--border-subtle)}.detail-item:first-child{border-top:none}.detail-item span:first-child{color:var(--text-tertiary)}.detail-item span:last-child{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.network-stats,.docker-stats{display:flex;flex-direction:column;gap:16px}.net-stat,.docker-stat{display:flex;align-items:center;gap:12px}.net-stat svg,.docker-stat svg{color:var(--text-tertiary)}.net-stat span:first-of-type,.docker-stat span:first-of-type{color:var(--text-tertiary);font-size:12px;flex:1}.net-stat .value,.docker-stat .value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary)}.settings-tab{max-width:none}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;align-items:start}@media (max-width: 1024px){.settings-grid{grid-template-columns:1fr}}.settings-grid .form-section{margin-bottom:0}.settings-form{margin-bottom:0;background:transparent;border:none;border-radius:0;padding:0}.settings-form .form-section .btn[type=submit]{margin-top:16px}.security-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;align-items:start}@media (max-width: 1024px){.security-grid{grid-template-columns:1fr}}.security-grid .form-section{margin-bottom:0}.security-info-bar{display:flex;gap:24px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;margin-bottom:20px}.security-info-item .security-info-label{display:block;font-size:10px;color:var(--text-tertiary);margin-bottom:4px}.security-info-item .security-info-value{font-size:12px;color:var(--text-primary)}.security-info-item .security-info-value code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;background:var(--bg-body);padding:2px 8px;border-radius:4px;font-size:10px}.subsection h4{font-size:12px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.ip-list{margin-bottom:12px}.ip-empty{font-size:12px;color:var(--text-tertiary);padding:16px;text-align:center;background:var(--bg-elevated);border:1px dashed var(--border-subtle);border-radius:6px}.ip-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;margin-bottom:8px}.ip-item code{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary)}.ip-item .badge-success{font-size:10px;padding:2px 8px;background:#3ddc971f;color:#3ddc97;border-radius:4px}.ip-add-form{display:flex;gap:8px}.ip-add-form input{flex:1;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 12px;color:var(--text-primary);font-size:12px}.ip-add-form input::placeholder{color:var(--text-tertiary)}.ip-add-form input:focus{border-color:var(--accent-primary);outline:none}.security-warning{margin-top:12px;padding:12px 16px;background:#f5b9451a;border:1px solid rgba(245,185,69,.25);border-radius:6px;font-size:10px;color:#f5b945}.security-notice{margin-top:12px;font-size:10px;color:var(--text-tertiary)}.key-rotation-actions{display:flex;align-items:center;gap:16px}.key-rotation-hint{font-size:10px;color:var(--text-tertiary)}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px}.alert-item.severity-critical{border-color:#fb6f6f73}.alert-item.severity-high{border-color:#f5b94573}.alert-item.severity-medium{border-color:#6d7cff73}.alert-item.severity-low{border-color:var(--border-subtle)}.alert-item-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.alert-item-header .alert-type{flex:1;font-size:12px;font-weight:500;color:var(--text-primary);text-transform:capitalize}.alert-item-header .alert-time{font-size:10px;color:var(--text-tertiary)}.severity-badge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:5px}.severity-badge.critical{background:var(--red-bg);color:var(--red)}.severity-badge.high{background:var(--amber-bg);color:var(--amber)}.severity-badge.medium{background:var(--accent-bg);color:var(--accent-bright)}.severity-badge.warning{background:var(--amber-bg);color:var(--amber)}.severity-badge.low,.severity-badge.info{background:var(--surface-3);color:var(--text-faint)}.alert-item-details{display:flex;gap:16px;font-size:10px;color:var(--text-secondary);margin-bottom:12px}.alert-item-actions{display:flex;gap:8px}.form-section{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:24px;margin-bottom:24px}.form-section h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.form-section .section-description{color:var(--text-secondary);font-size:12px;margin-bottom:16px}.form-section.danger-zone{border-color:#fb6f6f38}.form-section.danger-zone h3{color:#fb6f6f}.form-section--accent{position:relative;overflow:hidden;padding:24px}.form-section--accent:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),transparent 70%);opacity:.85}.form-section--accent .form-section__header{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.form-section--accent .form-section__header h3{margin:0 0 4px;font-size:18px;letter-spacing:-.01em}.form-section--accent .form-section__header .section-description{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5}.form-section--accent .form-section__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border-radius:6px;background:#6d7cff1f;color:var(--accent-primary);border:1px solid rgba(109,124,255,.25)}.form-section--accent .form-section__icon svg{width:18px;height:18px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.token-status{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;color:var(--text-dim);margin-bottom:20px}.token-status-dot{width:8px;height:8px;border-radius:9999px;flex-shrink:0;background:var(--text-ghost)}.token-status-dot.active{background:var(--green);box-shadow:0 0 6px var(--green)}.install-active{display:flex;flex-direction:column;gap:16px}.install-script-block{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.install-script-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-hover);border-bottom:1px solid var(--border-subtle)}.install-script-header>svg{color:var(--text-tertiary);flex-shrink:0}.install-script-header>span{flex:1;font-size:12px;font-weight:500;color:var(--text-primary)}.install-script-code{padding:16px 20px;margin:0;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;line-height:1.6;color:var(--text-secondary);background:var(--bg-body);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.install-inactive .section-description{margin-bottom:16px}.permissions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 640px){.permissions-grid{grid-template-columns:1fr}}.permission-checkbox{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer}.permission-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary)}.permission-checkbox:hover{color:var(--text-primary)}.install-instructions{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}.install-instructions .modal-actions{flex-shrink:0;margin:0;padding:12px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-card)}.install-instructions__scroll{flex:1;min-height:0;overflow-y:auto;padding:20px 24px}.install-instructions__scroll::-webkit-scrollbar{width:6px;height:6px}.install-instructions__scroll::-webkit-scrollbar-track{background:var(--bg-body)}.install-instructions__scroll::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.install-instructions__scroll::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.install-instructions__scroll>.success-banner{margin-bottom:16px}.success-banner{display:flex;align-items:flex-start;gap:16px;background:#3ddc971f;border:1px solid rgba(61,220,151,.22);color:#3ddc97;padding:20px;border-radius:8px;margin-bottom:24px}.success-banner svg{flex-shrink:0;width:22px;height:22px;margin-top:1px}.success-banner strong{display:block;font-size:12px;font-weight:600;margin-bottom:4px}.success-banner .success-subtitle{font-size:10px;color:var(--text-secondary);margin:0;line-height:1.5}.install-tabs{display:flex;flex-direction:column;gap:16px}.install-tab{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.install-tab-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-soft)}.install-tab-header>svg{color:var(--text-faint);flex-shrink:0}.install-tab-title{flex:1;min-width:0}.install-tab-title>span:first-child{display:block;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.install-tab-description{display:block;font-size:11px;color:var(--text-faint);font-weight:400;margin-top:2px}.install-script{padding:16px 20px;margin:0;font-family:var(--mono);font-size:11.5px;line-height:1.6;color:var(--text-dim);background:var(--bg-code);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.connection-string-field{margin-top:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.connection-string-field__header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-soft)}.connection-string-field__header>svg{color:var(--accent-bright);flex-shrink:0}.connection-string-field__header>span{flex:1;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.connection-string-field__value{padding:16px 20px;margin:0;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--text);background:var(--bg-code);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.install-fallback{margin-top:20px}.install-fallback summary{cursor:pointer;font-size:12px;color:var(--text-secondary);padding:8px 0}.install-fallback summary:hover{color:var(--text-primary)}.install-info{margin-top:24px;padding:20px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px}.install-info h4{font-size:12px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.install-info ol{margin:0 0 16px;padding-left:20px;color:var(--text-secondary);font-size:12px;line-height:1.6}.install-info li{margin-bottom:8px}.install-info .text-muted{color:var(--text-tertiary);font-size:10px}.group-form{display:flex;gap:12px;margin-bottom:20px}.group-form input{flex:1;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;padding:12px;color:var(--text-primary);font-size:12px}.group-form input::placeholder{color:var(--text-tertiary)}.group-form input:focus{outline:none;border-color:var(--accent-primary)}.groups-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.group-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.group-item input{flex:1;background:var(--bg-card);border:1px solid var(--accent-primary);border-radius:4px;padding:8px;color:var(--text-primary);font-size:12px}.group-item input:focus{outline:none}.group-item .group-name{flex:1;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-primary)}.group-item .group-name svg{color:var(--text-tertiary)}.group-item .group-count{font-size:10px;color:var(--text-tertiary)}.group-item .group-actions{display:flex;gap:4px}.empty-groups{text-align:center;padding:24px;color:var(--text-tertiary);font-size:12px}.servers-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.servers-header h1{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.02em;color:var(--text-primary);font-weight:600}.servers-header p{margin:4px 0 0;color:var(--text-tertiary);font-size:12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.servers-header__actions{display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 640px){.servers-header{flex-direction:column;align-items:stretch}.servers-header__actions .btn{flex:1;justify-content:center}}.servers-bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin-bottom:16px;border:1px solid var(--accent-primary);border-radius:12px;background:linear-gradient(180deg,var(--accent-glow),transparent),var(--bg-card);box-shadow:var(--shadow-sm)}.servers-bulk-bar__info{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.servers-bulk-bar__count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:9999px;background:var(--accent-primary);color:#fff;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:700;font-size:12px}.servers-bulk-bar__actions{display:flex;gap:8px}.servers-table-wrap{overflow-x:auto;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.servers-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.servers-table thead th{position:sticky;top:0;z-index:1;text-align:left;padding:11px 16px;font-family:var(--mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}.servers-table tbody td{padding:12px 16px;border-bottom:1px solid var(--border-subtle);vertical-align:middle;color:var(--text-secondary)}.servers-table tbody tr:last-child td{border-bottom:0}.servers-table .col-check{width:44px;padding-right:0}.servers-table .col-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer}.servers-table .col-actions{width:1%;white-space:nowrap;text-align:right}.servers-table .muted{color:var(--text-tertiary);font-size:10px}.server-row{transition:background .15s ease}.server-row:hover{background:var(--bg-hover)}.server-row.is-selected{background:var(--accent-glow)}.server-row--offline .status-pill__dot{background:#fb6f6f}.server-row--online .status-pill__dot{background:#3ddc97;box-shadow:0 0 8px #3ddc97}.server-row--connecting .status-pill__dot{background:#f5b945}.server-row--pending .status-pill__dot{background:var(--text-tertiary)}.server-row__name{display:inline-flex;align-items:center;gap:12px;color:var(--text-primary);text-decoration:none;min-width:0}.server-row__name:hover .server-row__title{color:var(--accent-primary)}.server-row__avatar{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:700;font-size:12px}.server-row__avatar--online{background:#3ddc971f;border-color:#3ddc9738;color:#3ddc97}.server-row__avatar--offline{background:#fb6f6f1f;border-color:#fb6f6f38;color:#fb6f6f}.server-row__avatar--connecting{background:#f5b9451f;border-color:#f5b94538;color:#f5b945}.server-row__identity{display:flex;flex-direction:column;min-width:0}.server-row__title{color:var(--text-primary);font-weight:600;line-height:1.2;transition:color .15s ease}.server-row__sub{color:var(--text-tertiary);font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;line-height:1.3;margin-top:2px}.server-row__group{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:9999px;background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:10px;color:var(--text-secondary);white-space:nowrap}.server-row__stack{display:flex;flex-direction:column;line-height:1.3}.server-row__stack span:first-child{color:var(--text-secondary)}.server-row__lastseen{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-secondary);white-space:nowrap}.server-row__telemetry{display:flex;flex-direction:column;gap:4px;min-width:180px}.server-row__telemetry>span{display:grid;grid-template-columns:30px 1fr 36px;align-items:center;gap:8px;font-size:11px}.server-row__telemetry em{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-style:normal;letter-spacing:.04em}.server-row__telemetry b{color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:600;text-align:right}.server-row__telemetry .bar{position:relative;height:5px;background:var(--surface-3);border-radius:3px;overflow:hidden}.server-row__telemetry .bar-fill{position:absolute;inset:0 auto 0 0;border-radius:3px}.server-row__telemetry .bar-fill.cpu{background:var(--accent-bright)}.server-row__telemetry .bar-fill.memory{background:var(--cyan)}.server-row__telemetry .bar-fill.disk{background:var(--green)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:9999px;font-size:10px;font-weight:600;text-transform:capitalize;border:1px solid transparent;line-height:1}.status-pill__dot{width:6px;height:6px;border-radius:9999px;background:var(--text-tertiary)}.status-pill--online{color:#3ddc97;background:#3ddc971f;border-color:#3ddc9738}.status-pill--offline{color:#fb6f6f;background:#fb6f6f1f;border-color:#fb6f6f38}.status-pill--connecting{color:#f5b945;background:#f5b9451f;border-color:#f5b94538}.status-pill--pending{color:var(--text-tertiary);background:var(--bg-elevated);border-color:var(--border-subtle)}.row-actions{position:relative;display:inline-flex;align-items:center;gap:4px}.row-actions__icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;text-decoration:none}.row-actions__icon:hover{background:var(--bg-elevated);border-color:var(--border-subtle);color:var(--text-primary)}.row-menu{z-index:9999;min-width:200px;padding:6px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:2px}.row-menu__item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:12px;text-align:left;text-decoration:none;cursor:pointer;white-space:nowrap}.row-menu__item svg{color:var(--text-tertiary);flex-shrink:0}.row-menu__item:hover{background:var(--bg-hover);color:var(--text-primary)}.row-menu__item:hover svg{color:var(--text-primary)}.row-menu__item--danger{color:#fb6f6f}.row-menu__item--danger svg{color:#fb6f6f}.row-menu__item--danger:hover{background:#fb6f6f1f;color:#fb6f6f}.row-menu__divider{height:1px;background:var(--border-subtle);margin:4px 0}.servers-page--ops{height:100%;min-height:0;max-width:none;margin:0;padding:12px;display:flex;flex-direction:column;background:transparent}.servers-page--ops .servers-ops-workspace{flex:1;min-height:0;display:grid;grid-template-columns:252px minmax(0,1fr);gap:12px;overflow:hidden}.servers-page--ops .servers-fleet-rail{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;scrollbar-width:thin}.servers-page--ops .servers-fleet-rail::-webkit-scrollbar{width:4px}.servers-page--ops .servers-fleet-rail::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}.servers-page--ops .servers-rail-section{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;overflow:hidden;flex-shrink:0}.servers-page--ops .servers-rail-section-header{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:12px;font-weight:500}.servers-page--ops .servers-rail-section-header svg{color:var(--accent-primary);flex-shrink:0}.servers-page--ops .servers-rail-section-header--split{justify-content:space-between}.servers-page--ops .servers-rail-section-header--split>span{display:inline-flex;align-items:center;gap:8px;min-width:0}.servers-page--ops .servers-rail-section-header--split button{border:0;background:transparent;color:var(--text-tertiary);font-size:10px;cursor:pointer}.servers-page--ops .servers-rail-section-header--split button:hover{color:var(--accent-primary)}.servers-page--ops .servers-rail-section--health{padding-bottom:12px}.servers-page--ops .servers-health-dial{position:relative;width:92px;height:92px;margin:16px auto 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:9999px;background:conic-gradient(#3ddc97 var(--availability),var(--bg-tertiary) 0)}.servers-page--ops .servers-health-dial:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:inherit;background:var(--bg-card);border:1px solid var(--border-subtle)}.servers-page--ops .servers-health-dial strong,.servers-page--ops .servers-health-dial span{position:relative;z-index:1}.servers-page--ops .servers-health-dial strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:20px;line-height:1}.servers-page--ops .servers-health-dial span{color:var(--text-tertiary);font-size:10px}.servers-page--ops .servers-health-summary{display:grid;gap:2px;padding:0 12px;text-align:center}.servers-page--ops .servers-health-summary strong{color:var(--text-primary);font-size:12px;font-weight:600}.servers-page--ops .servers-health-summary span{color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px}.servers-page--ops .servers-status-nav,.servers-page--ops .servers-group-nav{display:grid;gap:2px;padding:8px}.servers-page--ops .servers-status-nav-item,.servers-page--ops .servers-group-nav-item{width:100%;min-height:36px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);text-align:left;cursor:pointer;transition:all .2s ease}.servers-page--ops .servers-status-nav-item svg,.servers-page--ops .servers-group-nav-item svg{color:var(--text-tertiary);flex-shrink:0}.servers-page--ops .servers-status-nav-item span,.servers-page--ops .servers-group-nav-item span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.servers-page--ops .servers-status-nav-item b,.servers-page--ops .servers-group-nav-item b{min-width:26px;padding:1px 7px;border-radius:9999px;background:var(--bg-tertiary);color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:500;text-align:center}.servers-page--ops .servers-status-nav-item:hover,.servers-page--ops .servers-group-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.servers-page--ops .servers-status-nav-item.active,.servers-page--ops .servers-group-nav-item.active{background:var(--accent-glow);border-color:#6d7cff47;color:var(--accent-primary)}.servers-page--ops .servers-status-nav-item.active svg,.servers-page--ops .servers-group-nav-item.active svg{color:var(--accent-primary)}.servers-page--ops .servers-status-nav-item.active b,.servers-page--ops .servers-group-nav-item.active b{background:#6d7cff2e;color:var(--accent-primary)}.servers-page--ops .servers-status-nav-item{min-height:44px}.servers-page--ops .servers-status-nav-item span{display:flex;flex-direction:column;gap:1px}.servers-page--ops .servers-status-nav-item strong{color:inherit;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.servers-page--ops .servers-status-nav-item small{color:var(--text-tertiary);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.servers-page--ops .servers-status-nav-item--online svg{color:#3ddc97}.servers-page--ops .servers-status-nav-item--offline svg{color:#fb6f6f}.servers-page--ops .servers-status-nav-item--connecting svg{color:#f5b945}.servers-page--ops .servers-status-nav-item--pending svg{color:var(--text-tertiary)}.servers-page--ops .servers-main{min-width:0;min-height:0;display:flex;flex-direction:column;gap:8px}.servers-page--ops .servers-workbar{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;flex-shrink:0}.servers-page--ops .servers-workbar-title{min-width:0;display:flex;align-items:baseline;gap:8px}.servers-page--ops .servers-workbar-title span{color:var(--text-tertiary);font-size:10px;font-weight:600;text-transform:uppercase}.servers-page--ops .servers-workbar-title h1{margin:0;color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.2}.servers-page--ops .servers-workbar-title em{color:var(--text-tertiary);font-size:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.servers-page--ops .servers-workbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.servers-page--ops .servers-workbar-actions .btn,.servers-page--ops .servers-workbar-actions button{min-height:32px}.servers-page--ops .servers-command-bar{margin:0;padding:8px;border:1px solid var(--border-default);border-radius:8px;background:var(--bg-card);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;flex-shrink:0}.servers-page--ops .servers-toolbar{min-width:min(460px,100%);flex:1;gap:8px}.servers-page--ops .search-box{width:min(460px,100%);height:34px;border-radius:6px;background:var(--bg-elevated);border:1px solid var(--border-subtle)}.servers-page--ops .search-box svg{color:var(--text-tertiary);left:12px}.servers-page--ops .search-box input{height:100%;border:0;background:transparent;color:var(--text-primary);font-size:10px}.servers-page--ops .servers-results-summary{padding:0 8px;min-height:32px;border:0;background:transparent;color:var(--text-tertiary);flex-shrink:0}.servers-page--ops .servers-results-summary strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.servers-page--ops .servers-clear-filters{border-radius:6px}.servers-page--ops .servers-bulk-bar{margin:0;border-radius:8px;box-shadow:none;flex-shrink:0}.servers-page--ops .servers-table-wrap{flex:1;min-height:0;overflow:auto;border-color:var(--border-default);border-radius:8px;box-shadow:none}.servers-page--ops .servers-table{min-width:1040px}.servers-page--ops .servers-table thead th{background:var(--bg-elevated);letter-spacing:0}.servers-page--ops .servers-table tbody tr{background:var(--bg-card)}.servers-page--ops .servers-empty-workspace{flex:1;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;border:1px solid var(--border-default);border-radius:8px;background:linear-gradient(180deg,rgba(109,124,255,.06),transparent 42%),var(--bg-card);text-align:center}.servers-page--ops .servers-empty-workspace h2{margin:0;color:var(--text-primary);font-size:20px;font-weight:600}.servers-page--ops .servers-empty-workspace p{max-width:420px;margin:0;color:var(--text-secondary);font-size:12px;line-height:1.6}.servers-page--ops .servers-empty-workspace__icon{width:58px;height:58px;display:grid;place-items:center;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--accent-primary)}.servers-page--ops .servers-empty-workspace__actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}@media (max-width: 1024px){.servers-page--ops{height:auto;min-height:100vh;overflow:auto}.servers-page--ops .servers-ops-workspace{grid-template-columns:1fr;overflow:visible}.servers-page--ops .servers-fleet-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.servers-page--ops .servers-rail-section--health{grid-column:1/-1}.servers-page--ops .servers-main{min-height:620px}}@media (max-width: 640px){.servers-page--ops{padding:8px}.servers-page--ops .servers-fleet-rail{grid-template-columns:1fr}.servers-page--ops .servers-workbar,.servers-page--ops .servers-command-bar{align-items:stretch;flex-direction:column}.servers-page--ops .servers-workbar-title{flex-wrap:wrap}.servers-page--ops .servers-workbar-actions{width:100%}.servers-page--ops .servers-workbar-actions>*{flex:1}.servers-page--ops .servers-toolbar,.servers-page--ops .search-box{width:100%}.servers-page--ops .servers-results-summary{justify-content:space-between}}.btn-ghost{background:transparent;border:1px solid transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text-primary)}.server-detail-header{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px;margin-bottom:20px;background:linear-gradient(120deg,var(--surface) 0%,var(--surface-2) 100%);border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;flex-wrap:wrap}.server-detail-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(420px 200px at 0% 0%,rgba(109,124,255,.08),transparent 70%);pointer-events:none}.server-detail-header__main{position:relative;display:flex;align-items:flex-start;gap:16px;min-width:0;flex:1}.server-detail-header__avatar{flex-shrink:0;width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(150deg,var(--surface-3),var(--surface-2));border:1px solid var(--border);color:var(--text-dim);font-family:var(--mono);font-weight:700;font-size:20px}.server-detail-header__avatar--online{background:var(--green-bg);border-color:#3ddc9740;color:var(--green);box-shadow:0 0 0 4px #3ddc9712,0 0 24px #3ddc971f}.server-detail-header__avatar--offline{background:var(--red-bg);border-color:#fb6f6f40;color:var(--red)}.server-detail-header__avatar--connecting{background:var(--amber-bg);border-color:#f5b94540;color:var(--amber)}.server-detail-header__identity{min-width:0;flex:1}.server-detail-header__title-row{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.server-detail-header__title-row h1{margin:0;font-size:19px;line-height:1.2;letter-spacing:-.02em;color:var(--text);font-weight:600}.server-detail-header .copy-chip{display:inline-flex;align-items:center;gap:7px;padding:2px 8px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;color:var(--text-faint);font-size:10px;cursor:pointer;transition:all .12s ease}.server-detail-header .copy-chip:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-3)}.server-detail-header .copy-chip__label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-ghost)}.server-detail-header .copy-chip__value{color:var(--text-dim);font-family:var(--mono);font-size:11px;background:transparent;padding:0;max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-detail-header .copy-chip--mono .server-detail-header .copy-chip__value{font-size:11px}.server-detail-header .copy-chip svg{opacity:.6}.server-detail-header__meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:8px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.server-detail-header__meta .dotsep{color:var(--text-ghost)}.server-detail-header__meta-item{display:inline-flex;align-items:center;gap:5px;min-width:0}.server-detail-header__meta-item svg{color:var(--text-faint);flex-shrink:0}.server-detail-header__description{margin:12px 0 0;color:var(--text-dim);font-size:13px;line-height:1.6;max-width:720px}.server-detail-header__actions{position:relative;display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}@media (max-width: 768px){.server-detail-header{flex-direction:column}.server-detail-header__actions{width:100%}.server-detail-header__actions .btn{flex:1;justify-content:center}}.overview-tab .info-card{padding:20px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:border-color .15s ease}.overview-tab .info-card:hover{border-color:var(--border-active)}.overview-tab .info-card h3{margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.overview-tab .info-item{padding:8px 0;border-bottom:1px dashed var(--border-subtle)}.overview-tab .info-item:last-child{border-bottom:0}.overview-tab .info-item .info-value{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-primary)}.server-stats-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:20px}@media (max-width: 1024px){.server-stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.server-stats-strip{grid-template-columns:1fr}}.kpi-tile{position:relative;display:flex;flex-direction:column;gap:7px;padding:16px 17px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);transition:border-color .15s ease}.kpi-tile:hover{border-color:var(--border-strong)}.kpi-tile__head{display:flex;align-items:center;gap:7px;color:var(--text-faint)}.kpi-tile__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-ghost)}.kpi-tile__icon svg{width:13px;height:13px}.kpi-tile__label{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.kpi-tile__value{font-family:var(--mono);font-size:21px;font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.15;text-transform:capitalize}.kpi-tile__sub{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.kpi-tile__meter{margin-top:2px}.kpi-tile--success .kpi-tile__value{color:var(--green)}.kpi-tile--danger .kpi-tile__value{color:var(--red)}.kpi-tile--warning .kpi-tile__value,.kpi-tile--warn .kpi-tile__value{color:var(--amber)}.overview-tab .info-card h3{display:flex;align-items:center;gap:8px;color:var(--text-tertiary)}.overview-tab .info-card h3 svg{width:14px;height:14px;color:var(--accent-primary)}.info-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.info-rows--columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}@media (max-width: 768px){.info-rows--columns{grid-template-columns:1fr}}.info-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border-soft);min-height:40px;font-size:13px}.info-row:last-child{border-bottom:0}.info-row__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-ghost)}.info-row__icon svg{width:14px;height:14px}.info-row__label{font-size:12.5px;color:var(--text-faint)}.info-row__value{font-family:var(--mono);font-size:12.5px;color:var(--text);text-align:right;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-row__value.mono{font-size:12px;color:var(--text-dim)}.overview-grid__full{grid-column:1/-1}.tab-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;min-width:18px;height:17px;padding:0 6px;border-radius:9999px;background:var(--amber-bg);color:var(--amber);font-family:var(--mono);font-size:10px;font-weight:600;line-height:1;font-feature-settings:"tnum"}.notifications-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.notification{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-sm)}.notification__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:var(--bg-elevated);flex-shrink:0}.notification__body{min-width:0;flex:1}.notification__title{font-weight:600;color:var(--text-primary);margin-bottom:4px}.notification__message{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.6}.notification--info{border-color:#6d7cff73}.notification--info .notification__icon{background:var(--accent-glow);color:var(--accent-primary)}.notification--warning{border-color:#f5b94573}.notification--warning .notification__icon{background:#f5b9451f;color:#f5b945}.notification--danger{border-color:#fb6f6f73}.notification--danger .notification__icon{background:#fb6f6f1f;color:#fb6f6f}.notifications-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;background:var(--bg-card);border:1px dashed var(--border-subtle);border-radius:12px;text-align:center}.notifications-empty svg{color:var(--text-tertiary);margin-bottom:8px}.notifications-empty h4{margin:0;color:var(--text-primary);font-size:18px}.notifications-empty p{margin:0;color:var(--text-secondary);font-size:12px}.alerts-tab{display:flex;flex-direction:column;gap:24px}.alerts-section__header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.alerts-section__header h3{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.alerts-section__count{display:inline-flex;align-items:center;height:18px;padding:0 8px;border-radius:9999px;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-dim);font-family:var(--mono);font-size:10.5px;font-weight:500;line-height:1}.alerts-section--muted{opacity:.75}.notification__head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:4px}.notification__head .notification__title{margin:0;text-transform:capitalize}.notification__time{margin-left:auto;font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.notification__actions{display:flex;gap:8px;margin-top:12px}.notification__actions .btn,.notification__actions button{height:30px;padding:0 12px;font-size:10px;font-weight:500;border-radius:6px}.server-detail-page .tabs{gap:2px;margin-bottom:20px;border-bottom:1px solid var(--border-soft)}.server-detail-page .tab{padding:11px 14px;font-size:13px;font-weight:500;color:var(--text-faint)}.server-detail-page .tab:hover{color:var(--text-dim)}.server-detail-page .tab.active,.server-detail-page .tab[data-state=active]{color:var(--text);border-bottom-color:var(--accent)}.server-detail-page .data-table{font-size:13px}.server-detail-page .data-table th{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;color:var(--text-faint);padding:11px 16px;border-bottom:1px solid var(--border);white-space:nowrap}.server-detail-page .data-table td{padding:13px 16px;font-size:13px;color:var(--text-dim);border-bottom:1px solid var(--border-soft);vertical-align:middle}.server-detail-page .data-table tbody tr{transition:background .12s}.server-detail-page .data-table tbody tr:hover{background:var(--surface-2)}.server-detail-page .data-table .container-name{color:var(--text);font-weight:550}.server-detail-page .data-table .container-id{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:2px}.server-detail-page .data-table .mono{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.server-detail-page .overview-tab .info-card{padding:16px 17px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border-soft);box-shadow:none;transition:border-color .15s ease}.server-detail-page .overview-tab .info-card:hover{border-color:var(--border-strong)}.server-detail-page .overview-tab .info-card>h3{display:flex;align-items:center;gap:7px;margin:0 0 8px;padding-bottom:10px;border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.server-detail-page .overview-tab .info-card>h3 svg{width:13px;height:13px;color:var(--accent-bright)}.server-detail-page .offline-message svg{color:var(--text-ghost)}.server-detail-page .offline-message h4{color:var(--text)}.server-detail-page .offline-message p{color:var(--text-dim);font-size:13px}.server-detail-page .form-section{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:none}.server-detail-page .form-section--accent:before{height:2px;background:linear-gradient(90deg,var(--accent),transparent 60%);opacity:.45}.server-detail-page .form-section--accent .form-section__header h3{font-size:16px;color:var(--text)}.server-detail-page .form-section--accent .form-section__header .section-description{color:var(--text-faint);font-size:12.5px}.server-detail-page .form-section--accent .form-section__icon{background:var(--accent-bg);border-color:#6d7cff38;color:var(--accent-bright);border-radius:9px}.server-detail-page .security-info-bar{background:var(--surface-2);border-color:var(--border-soft);border-radius:var(--radius)}.server-detail-page .security-info-item .security-info-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:5px}.server-detail-page .security-info-item .security-info-value code{font-family:var(--mono);font-size:12px;background:var(--surface-3);color:var(--text)}.server-detail-page .ip-item{background:var(--surface-2);border-color:var(--border-soft);border-radius:var(--radius-sm)}.server-detail-page .ip-item code{font-size:12px;color:var(--text)}.server-detail-page .ip-empty{background:var(--surface-2);border-color:var(--border);color:var(--text-faint);font-family:var(--mono);font-size:12px}.server-detail-page .key-rotation-hint{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.server-detail-page .security-warning{background:var(--amber-bg);border-color:#f5b9454d;color:var(--amber)}.server-detail-page .security-notice{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.server-detail-page .alerts-tab .notification{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:none}.server-detail-page .alerts-tab .notification__icon{border-radius:8px}.server-detail-page .alerts-tab .notification__title{font-size:13.5px;color:var(--text)}.server-detail-page .alerts-tab .notification__message{font-size:12.5px;color:var(--text-dim)}.server-detail-page .alerts-tab .notification__time{font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.server-detail-page .alerts-tab .notification--info{border-color:var(--border-soft)}.server-detail-page .alerts-tab .notification--info .notification__icon{background:var(--accent-bg);color:var(--accent-bright)}.server-detail-page .alerts-tab .notification--warning{border-color:#f5b94547}.server-detail-page .alerts-tab .notification--warning .notification__icon{background:var(--amber-bg);color:var(--amber)}.server-detail-page .alerts-tab .notification--danger{border-color:#fb6f6f47}.server-detail-page .alerts-tab .notification--danger .notification__icon{background:var(--red-bg);color:var(--red)}.server-detail-page .server-services__table{font-size:13px}.server-detail-page .server-services__table th{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);padding:11px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.server-detail-page .server-services__table td{padding:11px 12px;font-size:13px;color:var(--text-dim);border-bottom:1px solid var(--border-soft)}.server-detail-page .server-services__table tbody tr{transition:background .12s}.server-detail-page .server-services__table tbody tr:hover{background:var(--surface-2)}.server-detail-page .server-services__table .mono{font-family:var(--mono);font-size:12px;color:var(--text)}.server-detail-page .server-packages__presets h3,.server-detail-page .server-packages__results h3,.server-detail-page .server-packages__installed h3{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;color:var(--text-faint)}.server-detail-page .server-packages__chip{background:var(--surface-2);border-color:var(--border);color:var(--text-dim);font-family:var(--mono);font-size:12px}.server-detail-page .server-packages__chip:hover{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-bright)}.server-detail-page .server-packages__list,.server-detail-page .server-packages__raw,.server-detail-page .server-packages__remove-tip{border-color:var(--border-soft);border-radius:var(--radius-sm)}.server-detail-page .server-packages__raw{background:var(--bg-code);color:var(--text-dim);font-size:12px}.server-detail-page .server-packages__list-item{border-bottom-color:var(--border-soft)}.server-detail-page .server-packages__list-item:hover{background:var(--surface-2)}.server-detail-page .server-packages__list-name{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.server-detail-page .server-packages__remove-tip{background:var(--surface-2);font-size:12.5px}.downloads-page .loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:var(--text-secondary)}.downloads-page .loading-container .loading-spinner{width:40px;height:40px;border:3px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.downloads-page .alert-error{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:8px;padding:16px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between}.downloads-page .alert-error p{color:#fb6f6f;margin:0}.downloads-page .alert-error button{background:transparent;border:1px solid #fb6f6f;color:#fb6f6f;padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .2s}.downloads-page .alert-error button:hover{background:#fb6f6f;color:#e9ebf0}.downloads-page .version-banner{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-hover) 100%);border-radius:8px;padding:24px 32px;margin-bottom:32px;display:flex;justify-content:space-between;align-items:center;color:#e9ebf0}@media (max-width: 768px){.downloads-page .version-banner{flex-direction:column;align-items:flex-start;gap:16px;padding:20px}}.downloads-page .version-banner .version-info{display:flex;flex-direction:column;gap:4px}.downloads-page .version-banner .version-info .version-label{font-size:12px;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.downloads-page .version-banner .version-info .version-number{font-size:30px;font-weight:700}.downloads-page .version-banner .version-info .version-date{font-size:12px;opacity:.75}.downloads-page .version-banner .version-actions{display:flex;align-items:center;gap:12px}.downloads-page .version-banner .btn-banner-outline{background:transparent;border:1px solid rgba(255,255,255,.4);color:#e9ebf0;padding:8px 16px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s}.downloads-page .version-banner .btn-banner-outline:hover{background:#ffffff1a;border-color:#ffffffb3}.downloads-page .version-banner .btn-banner-primary{background:#e9ebf0;color:var(--accent-primary);border:none;padding:8px 20px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s}.downloads-page .version-banner .btn-banner-primary svg{width:16px;height:16px}.downloads-page .version-banner .btn-banner-primary:hover{background:#ffffffe6;transform:translateY(-1px)}.downloads-page .downloads-section{margin-bottom:40px}.downloads-page .downloads-section h2{font-size:20px;font-weight:600;margin-bottom:8px}.downloads-page .downloads-section .section-description{color:var(--text-secondary);margin-bottom:24px}.downloads-page .downloads-section .section-description code{background:var(--bg-secondary);padding:4px 8px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.downloads-page .download-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.downloads-page .download-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;transition:all .2s}.downloads-page .download-card:hover{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary)}.downloads-page .download-card.unavailable{opacity:.5}.downloads-page .download-card.unavailable:hover{border-color:var(--border-default);box-shadow:none}.downloads-page .download-card .platform-icon-wrapper{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bg-elevated);border-radius:8px;margin-bottom:4px}.downloads-page .download-card .platform-icon-wrapper .platform-icon{width:32px;height:32px;color:var(--text-primary)}.downloads-page .download-card .platform-info h3{font-size:18px;font-weight:600;margin:0 0 4px}.downloads-page .download-card .platform-info .platform-arch{font-size:12px;color:var(--text-secondary)}.downloads-page .download-card .download-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:auto}.downloads-page .download-card .download-btn svg{width:18px;height:18px}.downloads-page .install-commands{display:flex;flex-direction:column;gap:16px}.downloads-page .command-block{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;overflow:hidden}.downloads-page .command-block .command-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-default);background:var(--bg-elevated)}.downloads-page .command-block .command-header .platform-icon{width:24px;height:24px;color:var(--text-primary)}.downloads-page .command-block .command-header h3{font-size:14px;font-weight:600;margin:0}.downloads-page .command-block .command-content{position:relative;padding:16px;background:var(--bg-body)}.downloads-page .command-block .command-content pre{margin:0;padding:0;background:transparent;overflow-x:auto}.downloads-page .command-block .command-content pre code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);white-space:pre-wrap;word-break:break-all}.downloads-page .command-block .command-content .copy-btn{position:absolute;top:12px;right:12px;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:6px;padding:8px;cursor:pointer;color:var(--text-secondary);transition:all .2s}.downloads-page .command-block .command-content .copy-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-primary)}.downloads-page .command-block .command-content .copy-btn svg{width:16px;height:16px}.downloads-page .command-block .command-note{padding:12px 16px;background:#f5b9451f;color:#f5b945;font-size:12px;margin:0;border-top:1px solid rgba(245,185,69,.22)}.downloads-page .manual-steps{display:flex;flex-direction:column;gap:16px}.downloads-page .step{display:flex;gap:16px;padding:16px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px}.downloads-page .step .step-number{flex-shrink:0;width:32px;height:32px;background:var(--accent-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;color:#e9ebf0}.downloads-page .step .step-content{flex:1}.downloads-page .step .step-content h4{font-size:14px;font-weight:600;margin:0 0 8px}.downloads-page .step .step-content p{color:var(--text-secondary);margin:0 0 8px;font-size:12px}.downloads-page .step .step-content p:last-child{margin-bottom:0}.downloads-page .step .step-content p code{background:var(--bg-secondary);padding:4px 8px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-primary)}.downloads-page .step .step-content pre{background:var(--bg-body);padding:12px;border-radius:6px;margin:8px 0;overflow-x:auto}.downloads-page .step .step-content pre code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);background:transparent;padding:0}.downloads-page .step .step-content .step-note{color:var(--text-tertiary);font-size:10px;font-style:italic}.downloads-page .verification-command{margin-top:16px}.downloads-page .verification-command pre{background:var(--bg-card);border:1px solid var(--border-default);padding:16px;border-radius:8px;margin:0}.downloads-page .verification-command pre code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary)}@keyframes spin{to{transform:rotate(360deg)}}.wordpress-standalone-page .empty-state-large .empty-icon svg{stroke:#21759b}.wordpress-standalone-page .status-card.success{border-left-color:#3ddc97}.wordpress-standalone-page .status-card.success .status-icon{color:#3ddc97}.wordpress-standalone-page .status-card.danger{border-left-color:#fb6f6f}.wordpress-standalone-page .status-card.danger .status-icon{color:#fb6f6f}.wordpress-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding:16px 16px 0;flex-wrap:wrap;gap:16px}.wordpress-page .page-header .page-header-content h1{font-size:24px;font-weight:600;margin:0 0 4px}.wordpress-page .page-header .page-header-content .page-description{color:var(--text-secondary);margin:0}.wordpress-page .page-header .page-header-actions{display:flex;gap:8px}.wordpress-page .empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;background:var(--bg-card);border-radius:12px;text-align:center;margin:0 16px}.wordpress-page .empty-state-large .empty-icon{color:var(--text-tertiary);margin-bottom:24px}.wordpress-page .empty-state-large .empty-icon svg{stroke:#21759b}.wordpress-page .empty-state-large h2{margin:0 0 12px;font-size:24px;font-weight:600}.wordpress-page .empty-state-large p{margin:0 0 24px;color:var(--text-secondary);max-width:460px}.wordpress-page .install-warning{display:flex;gap:12px;padding:16px;background:#f5b94514;border:1px solid rgba(245,185,69,.2);border-radius:6px;margin-bottom:16px}.wordpress-page .install-warning>svg{flex-shrink:0;color:#f5b945;margin-top:2px}.wordpress-page .install-warning strong{display:block;margin-bottom:8px}.wordpress-page .install-warning ul{margin:0;padding-left:16px;color:var(--text-secondary);font-size:12px}.wordpress-page .install-warning ul li{margin-bottom:4px}.wordpress-page .form-hint{display:block;font-size:10px;color:var(--text-tertiary);margin-top:4px}.wordpress-page .docker-empty .wp-empty-icon{color:var(--text-tertiary);margin-bottom:16px}.wordpress-page .docker-empty .wp-empty-icon svg{stroke:currentColor}.wp-sites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;padding:16px}.wp-list{padding:16px}.wp-list__toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.wp-list__toolbar .wp-tag-filter{margin:0}.wp-list__search{display:inline-flex;align-items:center;gap:8px;margin-left:auto;padding:0 10px;width:240px;max-width:100%;height:32px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:8px;color:var(--text-faint);transition:border-color .14s}.wp-list__search:focus-within{border-color:var(--accent-dim)}.wp-list__search svg{flex-shrink:0}.wp-list__search input{flex:1;min-width:0;border:none;background:none;color:var(--text);font-size:13px}.wp-list__search input::placeholder{color:var(--text-faint)}.wp-list__search input:focus{outline:none}.wp-list__meta-running{color:var(--green)}.wp-list__bulkbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 16px;margin-bottom:12px;background:var(--accent-bg-soft);border:1px solid var(--accent-dim);border-radius:var(--radius)}.wp-list__bulkcount{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--accent-bright)}.wp-list__bulkactions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wp-list__ck{width:36px;padding-right:0}.wp-list__action{width:70px}.wp-list__card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.wp-list__tile{border-radius:8px}.wp-list__links{display:inline-flex;gap:8px}.wp-list__links a{display:inline-flex;color:var(--text-faint);transition:color .14s}.wp-list__links a:hover{color:var(--accent-bright)}.wp-list__dash{color:var(--text-ghost);font-family:var(--mono);font-size:12px}.wp-list__chev{color:var(--text-ghost)}.wp-list .sk-tag+.sk-tag{margin-left:4px}.wp-tag-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 16px 16px}.wp-site-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:12px}.wp-tag-chip{display:inline-flex;align-items:center;padding:2px 10px;font-size:10px;line-height:1.4;border-radius:9999px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle)}.wp-tag-chip--filter{cursor:pointer;background:var(--bg-card)}.wp-tag-chip--filter.is-active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.wp-site-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease}.wp-site-card:hover{border-color:var(--border-hover);box-shadow:0 4px 12px #00000014}.wp-site-card-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-subtle)}.wp-site-icon{width:40px;height:40px;background:#21759b;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.wp-site-info{flex:1;min-width:0}.wp-site-name{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-site-url{font-size:10px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.wp-site-status{display:flex;align-items:center;gap:6px;font-size:10px;padding:4px 10px;border-radius:9999px;font-weight:500}.wp-site-status .status-dot{width:6px;height:6px;border-radius:50%}.wp-site-status.running{background:#3ddc971f;color:#3ddc97}.wp-site-status.running .status-dot{background:#3ddc97}.wp-site-status.stopped{background:#646b7a1f;color:var(--text-tertiary)}.wp-site-status.stopped .status-dot{background:var(--text-tertiary)}.wp-site-card-body{padding:16px}.wp-site-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.wp-site-meta-item .meta-label{display:block;font-size:10px;color:var(--text-tertiary);margin-bottom:2px}.wp-site-meta-item .meta-value{font-size:12px;color:var(--text-primary);font-weight:500}.wp-site-meta-item .meta-value.git-connected{color:#3ddc97}.wp-site-badge{display:inline-block;font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;margin-top:12px}.wp-site-badge.production{background:#fb6f6f1f;color:#fb6f6f}.wp-site-badge.development{background:#49c7f01f;color:#49c7f0}.wp-site-card-links{display:flex;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.wp-site-link{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:500;color:var(--accent-primary);text-decoration:none}.wp-site-link:hover{text-decoration:underline}.wp-site-card-footer{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.wp-site-card-footer .btn{flex:1;justify-content:center}.wp-site-card-footer .btn.btn-danger{flex:0;color:#fb6f6f}.wp-site-card-footer .btn.btn-danger:hover{background:#fb6f6f1a}.main-content:has(.wp-detail-page){padding:0}@media (max-width: 768px){.main-content:has(.wp-detail-page){margin-top:calc(56px + env(safe-area-inset-top))}}.wp-detail-page{gap:0}.wp-detail-page .app-detail-body{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1200px;margin-inline:auto;padding:24px 24px 40px}.wp-detail-page .app-detail-breadcrumbs{font-family:var(--mono);font-size:12px}.wp-detail-page .app-detail-breadcrumbs a{color:var(--text-faint)}.wp-detail-page .app-detail-breadcrumbs a:hover{color:var(--accent-bright)}.wp-detail-page .app-detail-breadcrumbs>span{color:var(--text-ghost)}.wp-detail-page .app-detail-breadcrumbs .current{color:var(--text-dim);font-weight:500}.wp-detail-page .app-detail-header{position:relative;gap:16px;padding:4px 0 0;background:none;border:none;border-radius:0}.wp-detail-page .wp-detail-topbar{padding:10px 16px;flex-wrap:wrap;row-gap:8px}.wp-detail-page .wp-detail-topbar .sk-topbar__spacer{display:none}.wp-detail-page .wp-detail-topbar .sk-topbar__titles{flex-shrink:0}.wp-detail-page .wp-detail-topbar .wp-crumbs{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.wp-detail-page .wp-detail-topbar .wp-crumbs a{color:var(--text-dim);text-decoration:none}.wp-detail-page .wp-detail-topbar .wp-crumbs a:hover{color:var(--accent-bright)}.wp-detail-page .wp-detail-topbar .wp-crumbs__sep{color:var(--text-ghost)}.wp-detail-page .wp-detail-topbar .wp-crumbs__cur{color:var(--text)}.wp-detail-page .wp-detail-topbar .sk-topbar__actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.wp-detail-page .wp-detail-topbar .sk-topbar__actions .ui-button{height:32px;padding:0 10px;font-size:12.5px;gap:6px}.wp-detail-page .wp-overview-main{display:grid;grid-template-columns:minmax(300px,.85fr) 1.15fr;gap:16px;margin-bottom:16px}@media (max-width: 1024px){.wp-detail-page .wp-overview-main{grid-template-columns:1fr}}.wp-detail-page .wp-traffic-panel .app-panel-header{flex-direction:column;align-items:flex-start;gap:2px}.wp-detail-page .wp-traffic-panel .wp-panel-sub{font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-faint)}.wp-detail-page .wp-activity-panel{margin-bottom:16px}.wp-detail-page .app-detail-tabs{flex-wrap:wrap;overflow-x:visible;row-gap:2px}.wp-detail-page .app-detail-tab--end{margin-left:auto}.wp-detail-page .wp-settings{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}@media (max-width: 768px){.wp-detail-page .wp-settings{grid-template-columns:1fr}}.wp-detail-page .wp-settings__nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:16px}@media (max-width: 768px){.wp-detail-page .wp-settings__nav{position:static;flex-direction:row;flex-wrap:wrap}}.wp-detail-page .wp-settings__navitem{display:flex;width:100%;align-items:center;gap:9px;padding:9px 12px;border:none;border-radius:8px;background:none;color:var(--text-dim);font-size:13.5px;font-weight:500;text-align:left;cursor:pointer;transition:background .14s,color .14s}.wp-detail-page .wp-settings__navitem svg{color:var(--text-faint);flex-shrink:0}.wp-detail-page .wp-settings__navitem:hover{background:var(--surface-hover);color:var(--text)}.wp-detail-page .wp-settings__navitem.is-active{background:var(--accent-bg);color:var(--accent-bright)}.wp-detail-page .wp-settings__navitem.is-active svg{color:var(--accent-bright)}.wp-detail-page .wp-settings__content{min-width:0}.wp-detail-page .wp-settings__group+.wp-settings__group{margin-top:16px}.wp-detail-page .wp-settings__grouplabel{padding:0 12px;margin-bottom:6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.wp-detail-page .app-detail-icon{position:relative;width:52px;height:52px;border-radius:13px;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-sm)}.wp-detail-page .wp-icon{background:linear-gradient(150deg,#2c9bcd,#21759b)!important}.wp-detail-page .wp-head-dot{position:absolute;bottom:-4px;right:-4px;width:14px;height:14px;border-radius:50%;border:2.5px solid var(--surface);background:var(--text-faint)}.wp-detail-page .wp-head-dot.running{background:var(--green)}.wp-detail-page .wp-head-dot.stopped{background:var(--red)}.wp-detail-page .app-detail-title-block h1{font-size:21px;font-weight:600;letter-spacing:-.02em;gap:14px;flex-wrap:wrap;align-items:center}.wp-detail-page .app-detail-subtitle{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:4px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.wp-detail-page .app-detail-subtitle a{color:var(--accent-bright);text-decoration:none}.wp-detail-page .app-detail-subtitle a:hover{text-decoration:underline}.wp-detail-page .app-detail-subtitle .separator{color:var(--text-ghost)}.wp-detail-page .wp-detail__repo-bar{display:flex;margin-top:-8px}.wp-detail-page .wp-detail__repo-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:9999px;font-family:var(--mono);font-size:12px;color:var(--text-dim);cursor:pointer;transition:border-color .15s ease,background .15s ease}.wp-detail-page .wp-detail__repo-pill svg{color:var(--text-faint)}.wp-detail-page .wp-detail__repo-pill:hover{border-color:var(--accent-dim);background:var(--surface-2)}.wp-detail-page .wp-detail__repo-url{font-size:12px;color:var(--text-primary)}.wp-detail-page .wp-detail__repo-arrow{color:var(--text-ghost)}.wp-detail-page .wp-detail__repo-branch{font-size:12px;color:var(--accent-bright);font-weight:500}.wp-detail-page .wp-detail__auto-deploy-badge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;background:var(--green-bg);color:var(--green);border-radius:4px}.wp-detail-page .wp-detail__connect-repo{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:none;border:1px dashed var(--border-strong);border-radius:9999px;font-size:12px;color:var(--text-faint);cursor:pointer;transition:all .15s ease}.wp-detail-page .wp-detail__connect-repo svg{color:var(--text-faint)}.wp-detail-page .wp-detail__connect-repo:hover{border-color:var(--accent-dim);color:var(--accent-bright);background:var(--accent-bg-soft)}.wp-detail-page .app-detail-tabs{gap:2px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);border-radius:0;padding:0;overflow-x:auto}.wp-detail-page .app-detail-tabs::-webkit-scrollbar{height:0}.wp-detail-page .app-detail-tab{display:flex;align-items:center;gap:7px;padding:11px 14px;border-radius:0;border-bottom:2px solid transparent;color:var(--text-faint);font-size:13px;font-weight:400;white-space:nowrap;transition:color .14s}.wp-detail-page .app-detail-tab svg{color:var(--text-ghost);transition:color .14s;flex-shrink:0}.wp-detail-page .app-detail-tab:hover{background:none;color:var(--text-dim)}.wp-detail-page .app-detail-tab:hover svg{color:var(--text-faint)}.wp-detail-page .app-detail-tab.active{background:none;color:var(--text);border-bottom-color:var(--accent);font-weight:500}.wp-detail-page .app-detail-tab.active svg{color:var(--accent-bright)}.wp-detail-page .app-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.wp-detail-page .app-panel-header{display:flex;align-items:center;justify-content:flex-start;gap:7px;padding:12px 17px;border-bottom:1px solid var(--border-soft);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.wp-detail-page .app-panel-header svg{width:13px;height:13px;color:var(--accent-bright)}.wp-detail-page .app-panel-body{padding:16px 17px}.wp-detail-page .app-panel-body .hint:last-child{margin-bottom:0}.wp-detail-page .app-panel-body .app-detail-actions{flex-wrap:wrap;align-items:center;margin-bottom:12px}.wp-detail-page .app-panel-body .app-detail-actions:last-child{margin-bottom:0}.wp-detail-page .app-panel-body .app-info-grid+.app-detail-actions,.wp-detail-page .app-panel-body .app-info-grid+.hint{margin-top:12px}.wp-detail-page .danger-zone-body{display:flex;flex-direction:column;gap:12px}.wp-detail-page .danger-zone-body .danger-zone{margin-top:0}.wp-detail-page .ssl-guide{display:flex;flex-direction:column;gap:12px;margin-top:12px}.wp-detail-page .ssl-checklist{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius)}.wp-detail-page .ssl-check-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim)}.wp-detail-page .ssl-check-icon{flex-shrink:0}.wp-detail-page .ssl-check-icon--ok{color:var(--green)}.wp-detail-page .ssl-check-icon--missing{color:var(--amber)}.wp-detail-page .ssl-check-label--ok{color:var(--text)}.wp-detail-page .ssl-inline-attach{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-soft)}.wp-detail-page .ssl-context{display:flex;flex-direction:column;gap:8px}.wp-detail-page .ssl-provider-status{display:inline-flex;align-items:center;gap:8px;font-size:12px}.wp-detail-page .ssl-provider-status--ok{color:var(--green)}.wp-detail-page .ssl-provider-status--ok svg{color:var(--green)}.wp-detail-page .ssl-provider-status--missing{color:var(--amber)}.wp-detail-page .ssl-provider-status--missing svg{color:var(--amber)}.wp-detail-page .ssl-context-links{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-faint)}.wp-detail-page .ssl-context-links a{color:var(--accent-bright);text-decoration:none}.wp-detail-page .ssl-context-links a:hover{text-decoration:underline}.wp-detail-page .ssl-attach-result{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding:12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius)}.wp-detail-page .ssl-attach-result__success{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--green)}.wp-detail-page .ssl-attach-result__success svg{color:var(--green)}.wp-detail-page .ssl-attach-result__manual{display:flex;flex-direction:column;gap:8px;font-size:12px}.wp-detail-page .ssl-attach-result__record{display:block;padding:8px 12px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);font-family:var(--mono);font-size:10px;color:var(--text)}.wp-detail-page .app-info-grid{display:flex;flex-direction:column;gap:0}.wp-detail-page .app-info-item{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-top:1px solid var(--border-soft)}.wp-detail-page .app-info-item:first-child{border-top:none;padding-top:0}.wp-detail-page .app-info-item:last-child{padding-bottom:0}.wp-detail-page .app-info-label{font-family:var(--mono);font-size:12px;color:var(--text-faint);min-width:0;overflow-wrap:anywhere}.wp-detail-page .app-info-value{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:12.5px;color:var(--text);text-align:right;min-width:0;overflow-wrap:anywhere}.wp-detail-page .app-info-value a{color:var(--accent-bright);text-decoration:none}.wp-detail-page .app-info-value a:hover{text-decoration:underline}.wp-detail-page .section-header{margin-bottom:16px}.wp-detail-page .section-header h3{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.wp-detail-page .wp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}.wp-detail-page .wp-overview{display:flex;flex-direction:column;gap:16px}.wp-detail-page .wp-asset-table .sk-cell-name,.wp-detail-page .wp-vuln-table .sk-cell-name{font-size:13px}.wp-detail-page .wp-asset-table .sk-cell-sub,.wp-detail-page .wp-vuln-table .sk-cell-sub{margin-top:2px}.wp-detail-page .wp-vuln-title{font-size:12.5px;color:var(--text-dim);max-width:360px;overflow-wrap:anywhere}.wp-detail-page .app-panel>.sk-dtable{border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.wp-detail-page .wp-sev{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.wp-detail-page .wp-sev .d{width:9px;height:9px;border-radius:3px;flex-shrink:0;background:var(--text-ghost)}.wp-detail-page .wp-sev--critical{color:var(--red)}.wp-detail-page .wp-sev--critical .d{background:var(--red);box-shadow:0 0 6px var(--red)}.wp-detail-page .wp-sev--high{color:var(--red)}.wp-detail-page .wp-sev--high .d{background:var(--red)}.wp-detail-page .wp-sev--medium{color:var(--amber)}.wp-detail-page .wp-sev--medium .d{background:var(--amber)}.wp-detail-page .wp-sev--low{color:var(--cyan)}.wp-detail-page .wp-sev--low .d{background:var(--cyan)}.wp-detail-page .wp-sev--unknown{color:var(--text-faint)}.wp-detail-page .wp-sev--unknown .d{background:var(--text-faint)}.wp-detail-page .wp-fix-chip{font-family:var(--mono);font-size:10.5px;color:var(--accent-bright);background:var(--accent-bg);padding:2px 7px;border-radius:5px;white-space:nowrap}.wp-detail-page .wp-no-fix{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wp-detail-page .wp-advisory-link{font-family:var(--mono);font-size:11.5px;color:var(--accent-bright);text-decoration:none}.wp-detail-page .wp-advisory-link:hover{text-decoration:underline}.wp-detail-page .wp-update-badge{font-family:var(--mono);font-size:10.5px;font-weight:500;color:var(--amber);background:var(--amber-bg);padding:2px 7px;border-radius:5px;margin-left:8px}.wp-detail-page .bulk-update-bar{background:var(--amber-bg);border:1px solid rgba(245,185,69,.25);border-radius:var(--radius);font-family:var(--mono);font-size:12px;color:var(--amber)}.wp-detail-page .install-form{margin-bottom:16px}.wp-detail-page .wp-posture{display:flex;align-items:center;gap:24px}.wp-detail-page .wp-posture__checks{flex:1;min-width:0}.wp-detail-page .wp-posture__check{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border-soft);font-size:13px}.wp-detail-page .wp-posture__check:first-child{border-top:none}.wp-detail-page .wp-posture__label{flex:1;min-width:0;color:var(--text)}.wp-detail-page .wp-posture__detail{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);white-space:nowrap}@media (max-width: 768px){.wp-detail-page .wp-posture{flex-direction:column;align-items:flex-start}.wp-detail-page .wp-posture__checks{width:100%}}.wp-detail-page .wp-code-list{margin-top:12px;padding:12px 16px;background:var(--bg-code);border:1px solid var(--border-soft);border-radius:6px;max-height:320px;overflow-y:auto;font-family:var(--mono);font-size:12px;line-height:1.7;color:var(--text-code);overflow-wrap:anywhere}.wp-detail-page .wp-run-row{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-top:1px solid var(--border-soft)}.wp-detail-page .wp-run-row:first-child{border-top:none;padding-top:0}.wp-detail-page .wp-run-row .form-hint{margin-top:0}.wp-detail-page .wp-run-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wp-detail-page .wp-run-row-head strong{font-size:13px}.wp-detail-page .wp-run-row-meta{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wp-detail-page .wp-run-component{font-family:var(--mono)}.wp-detail-page .wp-analytics-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.wp-detail-page .wp-eyebrow{margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.wp-detail-page .recharts-default-tooltip{background:var(--surface-2)!important;border:1px solid var(--border)!important;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);font-family:var(--mono);font-size:11.5px}.wp-detail-page .recharts-tooltip-label{color:var(--text-faint)!important}.wp-detail-page .wp-report-actions{font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;text-transform:none;letter-spacing:normal}.wp-detail-page .commit-list{gap:0;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;max-width:860px}.wp-detail-page .commit-item{background:transparent;border:none;border-radius:0;padding:12px 16px;transition:background .12s}.wp-detail-page .commit-item+.commit-item{border-top:1px solid var(--border-soft)}.wp-detail-page .commit-item:hover{background:var(--surface-2)}.wp-detail-page .commit-item.current{background:#3ddc970d}.wp-detail-page .commit-icon{color:var(--text-faint)}.wp-detail-page .commit-icon .current-icon{color:var(--green)}.wp-detail-page .commit-sha{font-family:var(--mono);font-size:11px;color:var(--accent-bright);background:var(--accent-bg);padding:2px 7px;border-radius:5px}.wp-detail-page a.commit-sha--link{display:inline-flex;align-items:center;gap:4px;text-decoration:none;transition:background .14s}.wp-detail-page a.commit-sha--link svg{opacity:.6}.wp-detail-page a.commit-sha--link:hover{background:var(--accent-bg-soft);text-decoration:underline}.wp-detail-page a.commit-sha--link:hover svg{opacity:1}.wp-detail-page .current-badge{font-family:var(--mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:var(--green-bg);color:var(--green);padding:2px 7px;border-radius:5px}.wp-detail-page .commit-date{font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.wp-detail-page .commit-message{font-size:13px;font-weight:500}.wp-detail-page .commit-author{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wp-detail-page .app-health-disk .disk-usage-bar-container{background:var(--surface-2);border-color:var(--border-soft)}.wp-envswitch-wrap{position:relative;display:inline-flex}.wp-envswitch{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 11px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-2);font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:12.5px;font-weight:500;letter-spacing:normal;color:var(--text);cursor:pointer;transition:border-color .14s,background .14s}.wp-envswitch .ed{width:8px;height:8px;border-radius:50%;flex-shrink:0}.wp-envswitch .chev{color:var(--text-faint);transition:transform .15s}.wp-envswitch.open .chev{transform:rotate(180deg)}.wp-envswitch:hover{background:var(--surface-3);border-color:var(--border-strong)}.wp-envswitch-menu{position:absolute;top:100%;left:0;margin-top:7px;z-index:15;min-width:280px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-lg);padding:7px}.wp-envswitch-head{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-ghost);padding:7px 10px 5px}.wp-envswitch-opt{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:none;border-radius:9px;background:none;color:var(--text);font-family:IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:normal;text-transform:none;text-align:left;cursor:pointer;transition:background .1s}.wp-envswitch-opt:hover{background:var(--surface-3)}.wp-envswitch-opt .ed{width:9px;height:9px;border-radius:50%;flex-shrink:0}.wp-envswitch-opt .check{margin-left:auto;color:var(--accent-bright);flex-shrink:0}.wp-envswitch-opt-body{flex:1;min-width:0}.wp-envswitch-opt-body .nm{display:block;font-weight:500;font-size:13px}.wp-envswitch-opt-body .meta{display:block;font-family:var(--mono);font-size:10.5px;color:var(--text-faint);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-table-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.wp-th-right{text-align:right!important}.wp-cell-actions{text-align:right;white-space:nowrap}.wp-row-action{display:inline-grid;place-items:center;width:28px;height:28px;border:none;border-radius:7px;background:none;color:var(--text-faint);cursor:pointer;transition:background .14s,color .14s}.wp-row-action:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.wp-row-action:disabled{opacity:.5;cursor:default}.wp-row-action--danger:hover:not(:disabled){background:var(--red-bg);color:var(--red)}.environments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;margin-top:16px}.wp-env-add-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:150px;padding:24px;text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius);background:transparent;color:var(--text-dim);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.wp-env-add-tile:hover{border-color:var(--accent);color:var(--text);background:var(--accent-bg-soft)}.wp-env-add-tile__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius);background:var(--accent-bg);color:var(--accent-bright)}.wp-env-add-tile__title{font-size:14px;font-weight:600;color:var(--text)}.wp-env-add-tile__hint{font-size:12px;line-height:1.5;max-width:280px}.wp-env-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);transition:border-color .15s}.wp-env-card:hover{border-color:var(--border-strong)}.wp-env-card.production,.wp-env-card.production:hover{border-color:var(--accent-dim)}.wp-env-card.stale{border-color:#f5b94559}.wp-env-status-group{display:flex;align-items:center;gap:8px}.wp-env-stale-badge{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10.5px;font-weight:500;padding:2px 7px;border-radius:5px;background:var(--amber-bg);color:var(--amber)}.wp-env-stale-badge svg{flex-shrink:0}.text-warning{color:var(--amber)!important}.wp-env-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.wp-env-badge.env-production{background:#fb6f6f1f;color:#fb6f6f}.wp-env-badge.env-staging{background:#f5b9451f;color:#f5b945}.wp-env-badge.env-development{background:#49c7f01f;color:#49c7f0}.wp-env-status{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:500}.wp-env-status .status-dot{width:6px;height:6px;border-radius:50%}.wp-env-status.running{color:#3ddc97}.wp-env-status.running .status-dot{background:#3ddc97}.wp-env-status.stopped{color:var(--text-tertiary)}.wp-env-status.stopped .status-dot{background:var(--text-tertiary)}.wp-env-header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border-soft)}.wp-env-info{display:flex;align-items:center;gap:8px;min-width:0}.wp-env-name{font-size:14px;font-weight:600;color:var(--text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-env-body{padding:14px 16px}.wp-env-url{margin-bottom:12px}.wp-env-url a{font-family:var(--mono);font-size:12.5px;color:var(--accent-bright);text-decoration:none;overflow-wrap:anywhere}.wp-env-url a:hover{text-decoration:underline}.wp-env-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 8px}.wp-env-meta-item .meta-label{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin-bottom:3px}.wp-env-meta-item .meta-label svg{color:var(--text-ghost)}.wp-env-meta-item .meta-value{font-size:12.5px;color:var(--text)}.wp-env-meta-item .meta-value.mono{font-family:var(--mono);font-size:12px}.wp-env-footer{display:flex;gap:4px;padding:10px 12px;border-top:1px solid var(--border-soft);background:transparent;border-radius:0 0 var(--radius) var(--radius)}.wp-snapshot-table .snapshot-name-cell{display:flex;flex-direction:column;gap:3px}.wp-snapshot-table .snapshot-name{font-weight:550;font-size:13px;color:var(--text)}.wp-snapshot-table .snapshot-tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10.5px;color:var(--cyan);background:var(--cyan-bg);padding:2px 7px;border-radius:5px;width:fit-content}.wp-snapshot-table .snapshot-desc{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wp-snapshot-table .snapshot-date,.wp-snapshot-table .mono{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.wp-snapshot-table .compressed-badge{display:inline-block;font-family:var(--mono);font-size:10px;background:var(--green-bg);color:var(--green);padding:1px 5px;border-radius:4px;margin-left:8px}.wp-snapshot-table .text-muted{color:var(--text-ghost);font-family:var(--mono)}.wp-snapshot-table .git-context{display:flex;align-items:center;gap:6px;color:var(--text-dim)}.wp-snapshot-table .git-context svg{color:var(--text-faint);flex-shrink:0}.wp-snapshot-table .git-context .git-context-sha{color:var(--accent-bright);background:var(--accent-bg);padding:1px 6px;border-radius:4px;font-size:11px}.wp-snapshot-table .git-context .commit-msg{font-size:11.5px;color:var(--text-faint);margin-left:4px}.commit-list{display:flex;flex-direction:column;gap:4px;max-width:800px}.commit-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;transition:all .15s ease}.commit-item:hover{border-color:var(--border-hover)}.commit-item.current{border-color:#3ddc9766;background:#3ddc970a}.commit-icon{color:var(--text-tertiary);margin-top:2px}.commit-icon .current-icon{color:#3ddc97}.commit-info{flex:1;min-width:0}.commit-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.commit-sha{font-size:12px;font-weight:500;color:var(--text-secondary)}.current-badge{font-size:10px;background:#3ddc97;color:#fff;padding:1px 6px;border-radius:4px}.commit-date{font-size:10px;color:var(--text-tertiary);margin-left:auto}.commit-message{font-size:12px;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.commit-author{font-size:10px;color:var(--text-tertiary)}.commit-actions{display:flex;gap:8px;flex-shrink:0}.commit-message-preview{font-style:italic;color:var(--text-secondary);padding:12px;background:var(--bg-tertiary);border-radius:6px;margin:12px 0}.git-commits-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-subtle)}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick-action-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:8px;color:var(--text-dim);font-size:12.5px;font-weight:500;text-decoration:none;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.quick-action-btn svg{color:var(--text-faint);flex-shrink:0;transition:color .14s}.quick-action-btn:hover:not(:disabled){background:var(--accent-bg-soft);border-color:var(--accent-dim);color:var(--text)}.quick-action-btn:hover:not(:disabled) svg{color:var(--accent-bright)}.quick-action-btn:disabled{opacity:.55;cursor:default}.hint-box{padding:16px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:6px;margin-top:16px}.hint-box p{margin:0;color:var(--text-secondary);font-size:12px}.hint-box p:not(:last-child){margin-bottom:8px}.empty-state-small{padding:24px;text-align:center;color:var(--text-tertiary)}.empty-state-small p{margin:0}.empty-state-small p:not(:last-child){margin-bottom:8px}.empty-state-small .hint{font-size:12px}.spinning{animation:spin 1s linear infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.wp-site-card-skeleton-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-subtle)}.wp-site-card-skeleton-icon{width:40px;height:40px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-info{flex:1;display:flex;flex-direction:column;gap:8px}.wp-site-card-skeleton-name{width:60%;height:16px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-url{width:80%;height:12px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-status{width:64px;height:24px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-body{padding:16px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.wp-site-card-skeleton-meta{display:flex;flex-direction:column;gap:4px}.wp-site-card-skeleton-label{width:50%;height:10px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-value{width:70%;height:14px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-site-card-skeleton-footer{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.wp-site-card-skeleton-btn{flex:1;height:32px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.wp-env-card-skeleton-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-subtle)}.wp-env-card-skeleton-badge{width:60px;height:20px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton-status{width:64px;height:20px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton-body{padding:16px}.wp-env-card-skeleton-url{width:70%;height:14px;margin-bottom:12px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.wp-env-card-skeleton-meta-item .skeleton-label{width:40%;height:10px;margin-bottom:4px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton-meta-item .skeleton-value{width:60%;height:14px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.wp-env-card-skeleton-footer{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.docker-stat-card-skeleton{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:8px}.docker-stat-card-skeleton-label{width:60%;height:12px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.docker-stat-card-skeleton-value{width:40%;height:28px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.docker-stat-card-skeleton-meta{width:80%;height:12px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.skeleton-table-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.skeleton-table-row .skeleton-cell{height:16px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.skeleton-table-row .skeleton-cell.cell-name{width:25%}.skeleton-table-row .skeleton-cell.cell-tag{width:15%}.skeleton-table-row .skeleton-cell.cell-size{width:10%}.skeleton-table-row .skeleton-cell.cell-date{width:15%}.skeleton-table-row .skeleton-cell.cell-actions{width:20%;margin-left:auto}.tab-loading{display:flex;flex-direction:column;gap:16px;padding:16px}.tab-loading-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tab-loading-title{width:120px;height:24px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.tab-loading-btn{width:140px;height:36px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(25,28,35,.5) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.error-boundary,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;text-align:center;min-height:200px}.error-boundary-icon,.error-state-icon{color:#fb6f6f;margin-bottom:16px;padding:12px;background:#fb6f6f1a;border-radius:50%}.error-boundary h3,.error-state-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.error-boundary-message,.error-state-message{font-size:12px;color:var(--text-secondary);margin:0 0 16px;max-width:400px}.error-state-compact{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fb6f6f14;border:1px solid rgba(251,111,111,.2);border-radius:6px;color:#fb6f6f;font-size:12px}.error-state-compact svg{flex-shrink:0}.error-state-compact span{flex:1}.error-state-compact .btn{flex-shrink:0}.confirm-dialog-details{margin-top:12px;padding:12px;background:var(--bg-tertiary);border-radius:6px;font-size:12px;color:var(--text-secondary);text-align:left}.confirm-dialog-details ul{margin:0;padding-left:16px}.confirm-dialog-details ul li{margin-bottom:4px}.confirm-dialog-details ul li:last-child{margin-bottom:0}.confirm-dialog-details strong{color:var(--text-primary)}.confirm-dialog-details code{background:var(--bg-tertiary);padding:2px 6px;border-radius:3px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.9em}.env-preview-url{display:flex;align-items:center;gap:8px;padding:12px;background:#3ddc9714;border:1px solid rgba(61,220,151,.2);border-radius:6px;margin-bottom:16px}.env-preview-url .preview-label{font-size:10px;color:var(--text-secondary)}.env-preview-url .preview-url{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:#3ddc97;font-weight:500}.form-hint-domain code{background:var(--bg-tertiary);padding:2px 6px;border-radius:3px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.9em}.confirm-dialog-input{margin-top:16px;text-align:left}.confirm-dialog-input label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:8px}.confirm-dialog-input label strong{color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.confirm-dialog-input input{width:100%;padding:12px;border:1px solid var(--border-subtle);border-radius:6px;font-size:14px;background:var(--bg-card);color:var(--text-primary)}.confirm-dialog-input input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6d7cff26}.confirm-dialog-input input::placeholder{color:var(--text-tertiary)}.resource-gate{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:24px}.resource-gate-container{max-width:700px;text-align:center}.wp-report-month-list{flex-wrap:wrap;margin-top:12px}.wp-report-actions{margin-left:auto;display:inline-flex;gap:8px}@media print{body.wp-report-printing *{visibility:hidden!important}body.wp-report-printing .wp-report-printable,body.wp-report-printing .wp-report-printable *{visibility:visible!important}body.wp-report-printing .wp-report-printable{position:absolute;inset:0 auto auto 0;width:100%;padding:0;margin:0}body.wp-report-printing .wp-report-no-print{display:none!important}}.resource-gate-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:#f5b9451f;border-radius:50%;color:#f5b945;margin-bottom:20px}.resource-gate-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 12px}.resource-gate-description{font-size:14px;color:var(--text-secondary);margin:0 0 24px;line-height:1.6}.resource-gate-description strong{color:#f5b945;font-weight:600}.resource-gate-specs{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:24px}@media (max-width: 600px){.resource-gate-specs{flex-direction:column;gap:12px}}.resource-gate-spec-arrow{color:var(--text-tertiary)}@media (max-width: 600px){.resource-gate-spec-arrow{transform:rotate(90deg)}}.resource-gate-spec-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;min-width:200px}.resource-gate-spec-card.current{border-color:#fb6f6f66;background:#fb6f6f0a}.resource-gate-spec-card.required{border-color:#3ddc9766;background:#3ddc970a}.resource-gate-spec-header{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.resource-gate-spec-items{display:flex;flex-direction:column;gap:8px}.resource-gate-spec-item{display:flex;align-items:center;gap:8px;font-size:12px}.resource-gate-spec-item svg{color:var(--text-tertiary);flex-shrink:0}.resource-gate-spec-item .spec-label{color:var(--text-secondary);flex:1}.resource-gate-spec-item .spec-value{font-weight:600;color:#3ddc97;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.resource-gate-spec-item .spec-value.insufficient{color:#fb6f6f}.resource-gate-recommendation{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin-bottom:24px;text-align:left}.resource-gate-recommendation h4{font-size:12px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.resource-gate-recommendation p{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.5}.resource-gate-recommendation p strong{color:var(--text-primary)}.resource-gate-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 600px){.resource-gate-tiers{grid-template-columns:1fr}}.resource-gate-tier{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:12px;text-align:center}.resource-gate-tier.current{border-color:#f5b945;background:#f5b9450f}.resource-gate-tier .tier-name{font-size:12px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.resource-gate-tier .tier-specs{font-size:10px;color:var(--text-tertiary);margin-bottom:8px}.resource-gate-tier .tier-wp{font-size:10px;font-weight:500;color:#fb6f6f;padding:2px 8px;background:#fb6f6f1a;border-radius:4px;display:inline-block}.resource-gate-tier .tier-wp.allowed{color:#3ddc97;background:#3ddc971a}.wp-creds-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 16px 16px;padding:16px;background:#3ddc9714;border:1px solid rgba(61,220,151,.25);border-radius:6px}.wp-creds-banner .wp-creds-banner-text{display:flex;flex-direction:column;gap:4px;font-size:12px}.wp-creds-banner .wp-creds-banner-text code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;background:var(--bg-tertiary);padding:1px 6px;border-radius:3px}.app-health-stat{display:inline-flex;align-items:center;gap:8px}.app-health-disk{margin-top:16px}.app-health-disk .app-info-label{display:block;margin-bottom:8px}.ssl-action-btn{margin-top:12px}.wp-detail-page .wp-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.wp-detail-page .wp-asset-card{display:flex;gap:13px;align-items:flex-start;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;transition:border-color .15s}.wp-detail-page .wp-asset-card:hover{border-color:var(--border-strong)}.wp-detail-page .wp-asset-card.is-active{border-color:var(--accent-dim)}.wp-detail-page .wp-asset-card__body{flex:1;min-width:0}.wp-detail-page .wp-asset-card__name{font-weight:600;font-size:14px}.wp-detail-page .wp-asset-card__sub{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wp-detail-page .wp-asset-card__foot{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.wp-detail-page .wp-asset-card__ver{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.wp-detail-page .wp-asset-card__toggle{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.wp-detail-page .wp-asset-card__state{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.wp-detail-page .wp-asset-card__state.is-on{color:var(--green)}.wp-detail-page .wp-update-flag{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10.5px;color:var(--amber);background:var(--amber-bg);padding:2px 7px;border-radius:5px;border:none;cursor:pointer;transition:opacity .12s}.wp-detail-page .wp-update-flag:hover{opacity:.85}.wp-detail-page .wp-update-flag:disabled{opacity:.55;cursor:default}.wp-detail-page .wp-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.wp-detail-page .wp-theme-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;transition:border-color .15s,transform .15s}.wp-detail-page .wp-theme-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.wp-detail-page .wp-theme-card.is-active{border-color:var(--accent-dim)}.wp-detail-page .wp-theme-card__shot{position:relative;height:128px;display:grid;place-items:center;border-bottom:1px solid var(--border-soft);background:repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 12px,transparent 12px 24px),var(--surface-2)}.wp-detail-page .wp-theme-card__shot svg{color:var(--text-ghost)}.wp-detail-page .wp-theme-card__shot .pill{position:absolute;top:10px;right:10px}.wp-detail-page .wp-theme-card__meta{padding:14px 16px}.wp-detail-page .wp-theme-card__name{font-weight:600;font-size:14px}.wp-detail-page .wp-theme-card__sub{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:3px}.wp-detail-page .wp-theme-card__actions{display:flex;align-items:center;gap:8px;margin-top:12px}.wp-detail-page .wp-theme-card__current{font-family:var(--mono);font-size:11px;color:var(--green)}.wp-url-swap{display:flex;flex-direction:column;gap:16px;padding:4px 0 8px}.wp-url-swap__warning{display:flex;gap:10px;padding:12px 14px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border-soft);font-size:12.5px;line-height:1.5;color:var(--text-faint)}.wp-url-swap__warning svg{flex-shrink:0;color:var(--amber);margin-top:1px}.wp-url-swap__fromto{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wp-url-swap__fromto code{font-family:var(--mono);font-size:12px;padding:4px 8px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-faint);word-break:break-all}.wp-url-swap__fromto code.is-new{color:var(--green);border-color:var(--accent-dim)}.wp-url-swap__fromto svg{color:var(--text-ghost);flex-shrink:0}.wp-url-swap__keep{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.wp-url-swap__keep>span{display:flex;flex-direction:column;font-size:13px;font-weight:500}.wp-url-swap__keep small{font-weight:400;font-size:11.5px;color:var(--text-faint);margin-top:2px}.wp-url-swap__preview{border-top:1px solid var(--border-soft);padding-top:12px}.wp-url-swap__preview-total{font-size:13px;font-weight:600;color:var(--text);margin-bottom:8px}.wp-url-swap__preview-pairs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.wp-url-swap__preview-pairs li{display:flex;align-items:center;gap:8px;font-size:11.5px}.wp-url-swap__preview-pairs li code{font-family:var(--mono);color:var(--text-faint);word-break:break-all}.wp-url-swap__preview-pairs li svg{color:var(--text-ghost);flex-shrink:0}.wp-url-swap__count{margin-left:auto;font-family:var(--mono);font-size:11px;padding:1px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-faint);flex-shrink:0}.wp-url-swap__preview-error{font-size:12.5px;color:var(--red)}.wp-url-swap__result{display:flex;gap:10px;align-items:center;font-size:13px}.wp-url-swap__result svg{color:var(--green);flex-shrink:0}.wp-url-swap__result code{font-family:var(--mono);color:var(--green);word-break:break-all}.wp-url-swap__dns-manual{display:flex;flex-direction:column;gap:6px;font-size:12.5px}.wp-url-swap__record{font-family:var(--mono);font-size:12px;padding:8px 10px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text);word-break:break-all}.page-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.wp-projects-page{padding:16px}.wp-projects-page .page-header{margin-bottom:24px}.wp-projects-page .page-header-content h1{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.wp-projects-page .page-description{font-size:12px;color:var(--text-tertiary);margin:0}.wp-projects-page .empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;background:var(--bg-card);border-radius:12px;text-align:center}.wp-projects-page .empty-state-large .empty-icon{color:var(--text-tertiary);margin-bottom:16px}.wp-projects-page .empty-state-large h2{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.wp-projects-page .empty-state-large p{font-size:12px;color:var(--text-secondary);max-width:460px;margin:0}.wp-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}.wp-project-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease}.wp-project-card:hover{border-color:var(--border-hover);box-shadow:0 4px 12px #00000014}.wp-project-card-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--border-subtle)}.wp-project-info{flex:1;min-width:0}.wp-project-name{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.wp-project-domain{font-size:10px;color:var(--text-tertiary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.wp-project-card-body{padding:16px}.wp-project-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.wp-project-meta-item{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.wp-project-meta-item svg{color:var(--text-tertiary)}.wp-project-env-badges{display:flex;gap:4px}.wp-project-card-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.wp-project-card-cta{font-size:12px;font-weight:500;color:var(--accent-primary)}.wp-project-page .wp-icon{background:#21759b!important}.pipeline-tab{padding:16px 0}.pipeline-operation-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#49c7f01a;border:1px solid rgba(73,199,240,.25);border-radius:6px;margin-bottom:16px;font-size:12px;color:#49c7f0}.pipeline-view{margin-bottom:24px}.pipeline-row{display:flex;align-items:stretch;gap:0;overflow-x:auto;padding-bottom:8px}.pipeline-card{flex:1;min-width:220px;max-width:320px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;display:flex;flex-direction:column;position:relative}.pipeline-card.production{border-color:#fb6f6f73}.pipeline-card.locked{opacity:.85}.pipeline-card.empty{border-style:dashed;border-color:var(--border-subtle);display:flex;align-items:center;justify-content:center;min-height:180px}.pipeline-empty-content{text-align:center;color:var(--text-tertiary)}.pipeline-empty-content p{margin:8px 0 0;font-size:12px}.pipeline-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.env-status-badge-group{display:flex;align-items:center;gap:8px}.env-locked-badge{display:flex;align-items:center;padding:2px 4px;background:#f5b94526;color:#f5b945;border-radius:4px}.pipeline-card-menu-wrapper{position:relative}.pipeline-card-menu-btn{padding:4px!important}.pipeline-card-menu{position:absolute;right:0;top:100%;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;box-shadow:0 8px 24px #0003;z-index:100;min-width:140px;padding:4px}.pipeline-card-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:none;color:var(--text-secondary);font-size:12px;cursor:pointer;border-radius:4px;text-align:left}.pipeline-card-menu button:hover{background:var(--bg-hover);color:var(--text-primary)}.pipeline-card-menu button.danger{color:#fb6f6f}.pipeline-card-menu button.danger:hover{background:#fb6f6f1a}.pipeline-card-body{flex:1;padding:16px}.pipeline-card-name{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.pipeline-card-domain{display:block;font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--accent-primary);margin-bottom:8px;text-decoration:none}.pipeline-card-domain:hover{text-decoration:underline}.pipeline-card-meta{display:flex;flex-wrap:wrap;gap:8px}.pipeline-meta-item{font-size:10px;color:var(--text-tertiary)}.pipeline-card-footer{display:flex;gap:8px;padding:8px 12px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.pipeline-card-lock-banner{display:flex;align-items:center;gap:4px;padding:8px 12px;background:#f5b9451a;font-size:10px;color:#f5b945;border-radius:0 0 8px 8px}.pipeline-arrow{display:flex;align-items:center;justify-content:center;min-width:80px;padding:0 8px}.pipeline-arrow.disabled{opacity:.3;pointer-events:none}.pipeline-arrow-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:6px;cursor:pointer;color:var(--text-secondary);transition:all .15s ease}.pipeline-arrow-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary);background:#6d7cff0d}.pipeline-arrow-btn:disabled{cursor:not-allowed;opacity:.4}.pipeline-arrow-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.pipeline-sync-row{display:flex;gap:0;margin-top:8px}.pipeline-sync-row .pipeline-sync-action{flex:1;min-width:220px;max-width:320px;display:flex;justify-content:center}.pipeline-multidev-section{margin-top:24px;padding-top:16px;border-top:1px solid var(--border-subtle)}.pipeline-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pipeline-section-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.pipeline-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#6d7cff1f;color:var(--accent-primary);border-radius:10px;font-size:11px;font-weight:700;text-transform:none;letter-spacing:0}.pipeline-multidev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.pipeline-multidev-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;background:var(--bg-card);border:1px dashed var(--border-subtle);border-radius:8px;text-align:center}.pipeline-multidev-empty>svg{color:var(--text-tertiary);margin-bottom:12px}.pipeline-multidev-empty p{font-size:14px;font-weight:500;color:var(--text-secondary);margin:0 0 4px}.pipeline-multidev-empty>span{font-size:12px;color:var(--text-tertiary);margin-bottom:16px}.multidev-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;transition:border-color .15s ease}.multidev-card:hover{border-color:var(--border-hover)}.multidev-card.locked{opacity:.85}.multidev-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.multidev-card-header-left{display:flex;align-items:center;gap:8px}.multidev-lock-icon{color:#f5b945}.multidev-card-menu-wrapper{position:relative}.multidev-card-body{padding:12px 16px}.multidev-card-name{font-size:12px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.multidev-branch{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-tertiary);background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;margin-bottom:8px}.multidev-domain{display:block;font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--accent-primary);text-decoration:none;margin-bottom:8px}.multidev-domain:hover{text-decoration:underline}.multidev-card-meta{display:flex;flex-wrap:wrap;gap:8px}.multidev-meta-item{font-size:10px;color:var(--text-tertiary)}.multidev-card-footer{display:flex;gap:8px;padding:8px 12px;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);border-radius:0 0 8px 8px}.wp-env-badge.env-multidev{background:#6d7cff1f;color:var(--accent-primary)}.branch-selected{display:flex;align-items:center;gap:8px;padding:12px;background:#6d7cff14;border:1px solid rgba(109,124,255,.25);border-radius:6px}.branch-selected svg{color:var(--accent-primary);flex-shrink:0}.branch-selected-name{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;font-weight:500;color:var(--text-primary)}.branch-picker-loading{display:flex;align-items:center;gap:8px;padding:16px;justify-content:center;color:var(--text-tertiary);font-size:12px}.branch-picker{border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden}.branch-picker-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary)}.branch-picker-search svg{color:var(--text-tertiary);flex-shrink:0}.branch-picker-search input{flex:1;border:none;background:none;font-size:12px;color:var(--text-primary);outline:none;padding:0}.branch-picker-search input::placeholder{color:var(--text-tertiary)}.branch-picker-list{max-height:240px;overflow-y:auto}.branch-picker-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 12px;border:none;border-bottom:1px solid var(--border-subtle);background:var(--bg-card);cursor:pointer;text-align:left;transition:background .1s ease}.branch-picker-item:last-child{border-bottom:none}.branch-picker-item:hover:not(:disabled){background:var(--bg-hover)}.branch-picker-item:disabled{opacity:.5;cursor:not-allowed}.branch-picker-item.has-env{background:#646b7a08}.branch-picker-item-main{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-primary)}.branch-picker-item-main svg{color:var(--text-tertiary);flex-shrink:0}.branch-name{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-weight:500}.branch-tag{font-size:10px;font-weight:500;padding:1px 6px;border-radius:4px;background:#646b7a1a;color:var(--text-tertiary)}.branch-tag.env{background:#6d7cff1a;color:var(--accent-primary)}.branch-picker-item-meta{display:flex;align-items:center;gap:8px;padding-left:20px}.branch-picker-item-meta .branch-sha{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:11px;color:var(--text-tertiary)}.branch-picker-item-meta .branch-msg{font-size:11px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.branch-picker-empty{padding:16px;text-align:center;font-size:12px;color:var(--text-tertiary)}.branch-picker-custom{width:100%;border-top:1px solid var(--border-subtle);border-radius:0 0 6px 6px;justify-content:center;color:var(--accent-primary)!important}.promote-direction,.sync-direction{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;background:var(--bg-tertiary);border-radius:6px;margin-bottom:16px}.promote-env-pill{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;min-width:120px}.promote-env-pill .promote-env-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.promote-env-pill .promote-env-name{font-size:12px;color:var(--text-secondary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promote-env-pill.production .promote-env-type{color:#fb6f6f}.promote-env-pill.staging .promote-env-type{color:#f5b945}.promote-env-pill.development .promote-env-type{color:#49c7f0}.promote-env-pill.multidev .promote-env-type{color:var(--accent-primary)}.promote-arrow{color:var(--text-tertiary);flex-shrink:0}.promote-warning,.sync-warning{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#f5b94514;border:1px solid rgba(245,185,69,.2);border-radius:6px;margin-top:16px;font-size:12px;color:var(--text-secondary)}.promote-warning>svg,.sync-warning>svg{color:#f5b945;flex-shrink:0;margin-top:2px}.promote-warning strong,.sync-warning strong{color:var(--text-primary)}.promote-warning p,.sync-warning p{margin:4px 0 0}.radio-group{display:flex;flex-direction:column;gap:8px}.radio-label{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer;transition:all .15s ease}.radio-label:hover{border-color:var(--border-hover);background:var(--bg-hover)}.radio-label:has(input:checked){border-color:var(--accent-primary);background:#6d7cff0d}.radio-label input[type=radio]{margin-top:4px;accent-color:var(--color-primary, #3b82f6)}.radio-content{display:flex;flex-direction:column;gap:2px}.radio-content strong{font-size:12px;color:var(--text-primary)}.radio-content span{font-size:10px;color:var(--text-tertiary)}.checkbox-group{display:flex;flex-direction:column;gap:8px}.activity-feed{display:flex;flex-direction:column;gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.activity-feed.compact .activity-item{padding:8px 12px}.activity-feed-empty{padding:24px;text-align:center;color:var(--text-tertiary);font-size:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-card)}.activity-item-skeleton{display:flex;align-items:center;gap:12px;padding:12px 16px}.activity-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;flex-shrink:0}.activity-icon.success{background:#3ddc971f;color:#3ddc97}.activity-icon.danger{background:#fb6f6f1f;color:#fb6f6f}.activity-icon.warning{background:#f5b9451f;color:#f5b945}.activity-icon.info{background:#49c7f01f;color:#49c7f0}.activity-icon.primary{background:#6d7cff1f;color:var(--accent-primary)}.activity-icon.default{background:#646b7a1f;color:var(--text-tertiary)}.activity-content{flex:1;min-width:0}.activity-description{font-size:12px;color:var(--text-primary);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-error{font-size:10px;color:#fb6f6f;display:block;margin-top:2px}.activity-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.activity-time{font-size:10px;color:var(--text-tertiary);white-space:nowrap}.activity-status-badge{font-size:10px;font-weight:500;padding:2px 6px;border-radius:4px}.activity-status-badge.failed{background:#fb6f6f1f;color:#fb6f6f}.activity-status-badge.running{background:#49c7f01f;color:#49c7f0}.activity-load-more{background:var(--bg-card);padding:12px;text-align:center;width:100%;justify-content:center}.pipeline-activity-preview{margin-top:24px}.pipeline-logs-overlay{position:fixed;bottom:0;right:0;width:600px;max-width:100%;height:400px;z-index:200;box-shadow:0 -16px 48px -12px #00000080;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden}@media (max-width: 768px){.pipeline-logs-overlay{width:100%}}.container-logs-panel{display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.container-logs-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid var(--border-soft);background:var(--surface)}.container-logs-title{display:flex;align-items:center;gap:12px;min-width:0;color:var(--text)}.container-logs-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--cyan-bg);color:var(--cyan);flex-shrink:0}.container-logs-titles{display:flex;flex-direction:column;min-width:0;font-size:13px;font-weight:600}.container-logs-sub{font-family:var(--mono);font-size:10.5px;font-weight:400;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.container-logs-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.logs-service-select,.logs-lines-select{padding:4px 8px;font-family:var(--mono);font-size:11.5px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text-dim);transition:border-color .15s ease,color .15s ease}.logs-service-select:hover,.logs-lines-select:hover{border-color:var(--border-strong);color:var(--text)}.container-logs-body{flex:1;overflow-y:auto;background:var(--bg-code);scrollbar-width:thin}.logs-loading,.logs-empty{padding:24px;text-align:center;color:var(--text-faint);font-family:var(--mono);font-size:12px}.logs-content{margin:0;padding:12px 16px;font-family:var(--mono);font-size:12px;line-height:1.7;color:var(--text-dim);white-space:pre-wrap;word-break:break-all}.log-line{padding:1px 0}.log-line:hover{background:#e9ebf00d}.compare-header{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--bg-tertiary);margin:-20px;padding:16px 20px}.compare-env-pill{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;min-width:120px}.compare-env-pill .compare-env-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.compare-env-pill .compare-env-name{font-size:12px;color:var(--text-secondary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-env-pill.production .compare-env-type{color:#fb6f6f}.compare-env-pill.staging .compare-env-type{color:#f5b945}.compare-env-pill.development .compare-env-type{color:#49c7f0}.compare-env-pill.multidev .compare-env-type{color:var(--accent-primary)}.compare-vs-icon{color:var(--text-tertiary);flex-shrink:0}.compare-body{padding:16px 0;max-height:60vh;overflow-y:auto}.compare-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--text-tertiary);font-size:12px}.compare-error{text-align:center;padding:24px}.compare-error p{color:#fb6f6f;margin:0 0 12px}.compare-section{margin-bottom:16px}.compare-section:last-child{margin-bottom:0}.compare-section-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-tertiary);border-radius:6px;margin-bottom:8px}.compare-section-header h4{margin:0;font-size:12px;font-weight:600;color:var(--text-primary)}.compare-section-summary{font-size:10px;color:var(--text-tertiary)}.compare-table{border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden}.compare-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);font-size:12px;align-items:center}.compare-row:last-child{border-bottom:none}.compare-row.match .compare-row-icon{color:#3ddc97}.compare-row.different{background:#fb6f6f0d}.compare-row.different .compare-row-icon{color:#fb6f6f}.compare-row.different .compare-row-value-a,.compare-row.different .compare-row-value-b{font-weight:500}.compare-row.only-a .compare-row-icon{color:#f5b945}.compare-row.only-a .compare-row-value-b{opacity:.4}.compare-row.only-b .compare-row-icon{color:#f5b945}.compare-row.only-b .compare-row-value-a{opacity:.4}.compare-row-label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary)}.compare-row-icon{flex-shrink:0}.compare-row-value-a,.compare-row-value-b{font-size:10px;color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-na{color:var(--text-tertiary);font-style:italic}.compare-empty-row{padding:16px;text-align:center;font-size:12px;color:var(--text-tertiary)}.pipeline-compare-row{display:flex;gap:12px;justify-content:center;margin-top:8px;padding:8px 0}.pipeline-compare-btn{color:var(--text-tertiary)!important;font-size:10px!important}.pipeline-compare-btn:hover{color:var(--accent-primary)!important}.sanitization-profiles-body{padding:16px 0;max-height:60vh;overflow-y:auto}.sanitization-loading{display:flex;align-items:center;justify-content:center;padding:32px}.sanitization-profile-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.sanitization-profile-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:12px 16px;transition:border-color .15s ease}.sanitization-profile-card:hover{border-color:var(--border-hover)}.sanitization-profile-card.default{border-color:#6d7cff73}.sanitization-profile-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sanitization-profile-card-title{display:flex;align-items:center;gap:8px}.sanitization-profile-card-title h5{margin:0;font-size:12px;font-weight:600;color:var(--text-primary)}.sanitization-tag{font-size:10px;font-weight:500;padding:1px 6px;border-radius:4px}.sanitization-tag.builtin{background:#646b7a1a;color:var(--text-tertiary)}.sanitization-tag.default{background:#6d7cff1f;color:var(--accent-primary)}.sanitization-profile-card-actions{display:flex;gap:4px}.sanitization-profile-desc{font-size:10px;color:var(--text-secondary);margin:0 0 8px}.sanitization-rule-tags{display:flex;flex-wrap:wrap;gap:4px}.sanitization-rule-tag{font-size:10px;padding:2px 8px;background:var(--bg-tertiary);border-radius:4px;color:var(--text-tertiary)}.sanitization-rule-tag.empty{font-style:italic}.sanitization-add-btn{width:100%;justify-content:center}.sanitization-editor{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:6px;padding:16px;margin-top:12px}.sanitization-editor h4{margin:0 0 12px;font-size:12px;font-weight:600;color:var(--text-primary)}.sanitization-editor .form-group{margin-bottom:12px}.sanitization-editor .form-group:last-of-type{margin-bottom:16px}.sanitization-editor-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid var(--border-subtle)}.pipeline-card-checkbox{margin-right:4px;accent-color:var(--color-primary, #3b82f6)}.pipeline-card-menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.resource-limits-modal{max-width:480px}.resource-limits-env-name{font-size:12px;font-weight:600;color:var(--text-primary);padding-bottom:12px;border-bottom:1px solid var(--border-subtle);margin-bottom:12px}.resource-limits-presets{display:flex;align-items:center;gap:8px;margin-bottom:16px}.resource-limits-presets-label{font-size:12px;color:var(--text-secondary)}.resource-preset-btn{text-transform:capitalize}.resource-limits-section{margin-bottom:16px}.resource-limits-section h4{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-secondary);margin:0 0 12px}.resource-limits-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.resource-limits-row label{font-size:12px;color:var(--text-primary)}.resource-limits-row select{width:120px;padding:4px 8px;font-size:12px;border:1px solid var(--border-subtle);border-radius:4px;background:var(--bg-card);color:var(--text-primary)}.resource-limits-warning{display:flex;align-items:center;gap:8px;padding:12px;background:#f5b94514;border:1px solid rgba(245,185,69,.2);border-radius:6px;margin-top:12px;margin-bottom:12px;font-size:10px;color:#f5b945}.basic-auth-modal{max-width:460px}.basic-auth-body{padding:16px 0}.basic-auth-env-name{font-size:12px;font-weight:600;color:var(--text-primary);padding-bottom:12px;border-bottom:1px solid var(--border-subtle);margin-bottom:12px}.basic-auth-loading{display:flex;align-items:center;gap:8px;justify-content:center;padding:16px;color:var(--text-tertiary);font-size:12px}.basic-auth-toggle{margin-bottom:16px}.basic-auth-toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.basic-auth-toggle-label span{font-size:12px;font-weight:500;color:var(--text-primary)}.basic-auth-description{font-size:10px;color:var(--text-tertiary);margin:4px 0 0}.toggle-switch{position:relative;width:44px;height:24px;border:none;border-radius:12px;background:var(--bg-tertiary);cursor:pointer;transition:background .2s ease;padding:0}.toggle-switch.active{background:var(--color-primary, #3b82f6)}.toggle-switch-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s ease}.toggle-switch.active .toggle-switch-slider{transform:translate(20px)}.basic-auth-current{padding:12px;background:var(--bg-tertiary);border-radius:6px}.basic-auth-credentials{display:flex;flex-direction:column;gap:12px}.basic-auth-credential-warning{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f5b9451a;border:1px solid rgba(245,185,69,.2);border-radius:6px;font-size:10px;color:#f5b945}.basic-auth-field{display:flex;flex-direction:column;gap:4px}.basic-auth-field label{font-size:10px;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.basic-auth-value{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-radius:4px}.basic-auth-value code{flex:1;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary)}.basic-auth-hint{font-size:10px;color:var(--text-tertiary);margin-top:8px}.wpcli-terminal-modal{max-width:700px;height:560px;display:flex;flex-direction:column}.wpcli-quick-actions{display:flex;flex-wrap:wrap;gap:4px;padding:8px 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary)}.wpcli-history{border-bottom:1px solid var(--border-subtle);max-height:200px;overflow-y:auto}.wpcli-history-item{display:block;width:100%;padding:8px 16px;border:none;background:none;text-align:left;cursor:pointer;border-bottom:1px solid var(--border-subtle)}.wpcli-history-item:last-child{border-bottom:none}.wpcli-history-item:hover{background:var(--bg-hover)}.wpcli-history-item code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-primary)}.wpcli-output{flex:1;overflow-y:auto;padding:12px;background:var(--bg-body);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.6}.wpcli-output-empty{color:var(--text-tertiary);text-align:center;padding:24px;font-size:12px}.wpcli-output-command{display:flex;gap:8px;color:var(--accent-primary);margin-top:8px}.wpcli-output-command:first-child{margin-top:0}.wpcli-output-text{margin:0;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all}.wpcli-output-error{margin:0;color:#fb6f6f;white-space:pre-wrap;word-break:break-all}.wpcli-prompt{color:#3ddc97;font-weight:700;-webkit-user-select:none;user-select:none}.wpcli-executing{display:flex;align-items:center;gap:8px;padding:8px 0;color:var(--text-tertiary);font-size:10px}.wpcli-input-row{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--border-subtle);background:var(--bg-elevated)}.wpcli-input{flex:1;border:none;background:none;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;color:var(--text-primary);outline:none;padding:4px 0}.wpcli-input::placeholder{color:var(--text-tertiary)}.health-status-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:16px}.health-panel-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px;color:var(--text-tertiary);font-size:12px}.health-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.health-panel-header h4{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.health-panel-grid{display:flex;flex-direction:column;gap:12px}.health-panel-env{padding:12px;background:var(--bg-tertiary);border-radius:6px}.health-panel-env-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.health-panel-env-name{flex:1;font-size:12px;font-weight:600;color:var(--text-primary)}.health-panel-overall{font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px}.health-panel-overall.health-healthy{background:#3ddc971f;color:#3ddc97}.health-panel-overall.health-degraded{background:#f5b9451f;color:#f5b945}.health-panel-overall.health-unhealthy{background:#fb6f6f1f;color:#fb6f6f}.health-panel-overall.health-unknown{background:#646b7a1f;color:var(--text-tertiary)}.health-panel-checks{display:flex;flex-direction:column;gap:4px}.health-panel-check{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:10px}.health-panel-check-name{font-weight:500;color:var(--text-secondary);min-width:80px}.health-panel-check-msg{color:var(--text-tertiary)}.health-panel-empty{text-align:center;padding:24px;color:var(--text-tertiary);font-size:12px}.health-dot{flex-shrink:0}.disk-usage-compact{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-tertiary)}.disk-usage-compact-text{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.disk-usage-bar-container{padding:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px}.disk-usage-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;color:var(--text-primary)}.disk-usage-total{font-weight:600;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.disk-usage-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--bg-tertiary)}.disk-usage-segment{height:100%;transition:width .3s ease}.disk-usage-segment.wordpress.green{background:#3ddc97}.disk-usage-segment.wordpress.yellow{background:#f5b945}.disk-usage-segment.wordpress.red{background:#fb6f6f}.disk-usage-segment.mysql{background:#49c7f0}.disk-usage-segment.snapshots{background:#646b7a4d}.disk-usage-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.disk-usage-legend-item{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-tertiary)}.disk-usage-legend-dot{width:8px;height:8px;border-radius:2px}.disk-usage-legend-dot.wordpress{background:#3ddc97}.disk-usage-legend-dot.mysql{background:#49c7f0}.disk-usage-legend-dot.snapshots{background:#646b7a4d}.auto-sync-modal{max-width:480px}.auto-sync-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px;color:var(--text-tertiary);font-size:12px}.auto-sync-body{padding:16px 0}.auto-sync-env-name{font-size:12px;font-weight:600;color:var(--text-primary);padding-bottom:12px;border-bottom:1px solid var(--border-subtle);margin-bottom:12px}.auto-sync-toggle{margin-bottom:16px}.auto-sync-toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.auto-sync-toggle-label span{font-size:12px;font-weight:500;color:var(--text-primary)}.auto-sync-description{font-size:10px;color:var(--text-tertiary);margin:4px 0 0}.auto-sync-presets{display:flex;flex-direction:column;gap:8px}.auto-sync-cron-display{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.auto-sync-cron-input{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.auto-sync-next-runs{margin-top:16px;padding:12px;background:var(--bg-tertiary);border-radius:6px}.auto-sync-next-runs h5{margin:0 0 8px;font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.auto-sync-next-runs ul{list-style:none;margin:0;padding:0}.auto-sync-next-runs li{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:10px;color:var(--text-secondary)}.auto-sync-next-runs li svg{color:var(--text-tertiary)}.bulk-actions-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#6d7cff14;border:1px solid rgba(109,124,255,.2);border-radius:6px;margin-bottom:16px}.bulk-actions-info{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.bulk-actions-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;background:var(--accent-primary);color:#fff;border-radius:12px;font-size:10px;font-weight:700}.bulk-actions-buttons{display:flex;gap:4px;flex:1}.bulk-actions-clear{color:var(--text-tertiary)!important}.bulk-actions-confirm{display:flex;align-items:center;gap:12px;width:100%}.bulk-actions-confirm span{flex:1;font-size:12px;color:var(--text-primary);font-weight:500}.operation-progress-content{flex:1;display:flex;flex-direction:column;gap:8px}.operation-progress{display:flex;flex-direction:column;gap:4px}.operation-progress-bar{height:4px;background:#49c7f033;border-radius:2px;overflow:hidden}.operation-progress-fill{height:100%;background:#49c7f0;border-radius:2px;transition:width .3s ease}.operation-progress-step{font-size:10px;color:var(--text-tertiary)}.health-tab{padding:16px 0}@media (max-width: 900px){.pipeline-row{flex-direction:column;align-items:stretch}.pipeline-row .pipeline-card{max-width:none}.pipeline-arrow{min-width:auto;padding:8px 0}.pipeline-arrow .pipeline-arrow-btn{flex-direction:row}.pipeline-arrow svg{transform:rotate(90deg)}.pipeline-sync-row{flex-direction:column}.pipeline-sync-row .pipeline-sync-action{max-width:none}.bulk-actions-bar,.bulk-actions-buttons{flex-wrap:wrap}}.pipeline-promotion-history{margin-top:24px}.pipeline-promotion-history .promotion-history-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.pipeline-promotion-history .promotion-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px}.pipeline-promotion-history .promotion-history-main{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}.pipeline-promotion-history .promotion-route{display:inline-flex;align-items:center;gap:4px;color:var(--text-primary);font-weight:500}.pipeline-promotion-history .promotion-type,.pipeline-promotion-history .promotion-date{color:var(--text-tertiary);font-size:10px}.pipeline-promotion-history .promotion-status{text-transform:capitalize;font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;background:#49c7f01f;color:#49c7f0}.pipeline-promotion-history .promotion-status.promotion-status-completed{background:#3ddc971f;color:#3ddc97}.pipeline-promotion-history .promotion-status.promotion-status-failed{background:#fb6f6f1f;color:#fb6f6f}.pipeline-promotion-history .promotion-status.promotion-status-rolled_back,.ssl-status-icon.warning{background:#f5b9451f;color:#f5b945}.ssl-cert-list{display:flex;flex-direction:column;gap:12px}.ssl-cert-item{display:flex;align-items:center;gap:20px;padding:16px 20px;background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:border-color .2s ease}.ssl-cert-item:hover{border-color:var(--border-active)}.ssl-cert-item{gap:16px}@media (max-width: 768px){.ssl-cert-item{flex-wrap:wrap}}.ssl-cert-item-info{display:flex;align-items:center;justify-content:flex-start;gap:16px;flex:1;min-width:0}.ssl-cert-item-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#3ddc971f;border-radius:8px;color:#3ddc97}.ssl-cert-item-icon.expiring{background:#f5b9451f;color:#f5b945}.ssl-cert-item-details{min-width:0}.ssl-cert-item-details h3{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.ssl-cert-item-meta{display:flex;align-items:center;justify-content:flex-start;gap:16px;font-size:12px;color:var(--text-tertiary);flex-wrap:wrap}.ssl-cert-item-meta span{display:flex;align-items:center;justify-content:flex-start;gap:4px}.ssl-cert-item-meta span.valid{color:#3ddc97}.ssl-cert-item-meta span.expiring{color:#f5b945}.ssl-cert-item-status{flex-shrink:0}.ssl-cert-item-actions{display:flex;gap:8px;flex-shrink:0}.ssl-warning-banner{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:16px 20px;background:#f5b9451f;border:1px solid rgba(245,185,69,.22);border-radius:12px;margin-top:24px;color:#f5b945}.ssl-warning-banner div{flex:1;font-size:12px;color:var(--text-secondary)}.ssl-warning-banner div strong{color:#f5b945}.ssl-warning-banner .btn{flex-shrink:0}.spin{animation:ssl-spin 1s linear infinite}@keyframes ssl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skeleton-box{background:var(--bg-hover);border-radius:6px;animation:ssl-skeleton-pulse 1.5s ease-in-out infinite}@keyframes ssl-skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.email-page .page-header .page-description{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.email-page .page-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.email-page .tabs{gap:4px;padding-bottom:8px;margin-bottom:20px;border-bottom:1px solid var(--border-soft)}.email-page .tab{padding:7px 14px;border-bottom:none;margin-bottom:0;border-radius:9px;font-size:13px;font-weight:500;color:var(--text-faint)}.email-page .tab:hover{color:var(--text);background:var(--surface-2)}.email-page .tab.active,.email-page .tab[data-state=active]{color:var(--accent-bright);background:var(--accent-bg)}.email-page .section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.email-page .section-header h2{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.email-page .section-header .section-actions{display:flex;gap:8px}.email-page .form-group:not(.checkbox-field)>label:not(.email-check){font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.email-page .domain-selector{max-width:340px;margin-bottom:16px}.email-page .not-installed{display:flex;flex-direction:column;align-items:center;max-width:520px;margin:32px auto 0;padding:48px 40px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);text-align:center}.email-page .not-installed__icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--accent-bg);color:var(--accent-bright);margin-bottom:16px}.email-page .not-installed h2{margin:0 0 8px;font-size:17px;font-weight:600;letter-spacing:-.01em}.email-page .not-installed p{margin:0 0 24px;font-size:13px;line-height:1.55;color:var(--text-dim)}.email-page .not-installed .install-form{display:flex;flex-direction:column;gap:16px;align-items:center;width:100%;max-width:380px}.email-page .not-installed .install-form .form-group{margin-bottom:0;text-align:left}.email-page .email-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}@media (max-width: 1024px){.email-page .email-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.email-page .email-kpis{grid-template-columns:1fr}}.email-page .email-table-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow-x:auto}.email-page .email-fav{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--accent-bg);color:var(--accent-bright)}.email-page .email-fav--cyan{background:var(--cyan-bg);color:var(--cyan)}.email-page .email-fav--violet{background:var(--violet-bg);color:var(--violet)}.email-page .email-addr{font-family:var(--mono);font-size:12.5px;color:var(--text)}.email-page .email-arrow{font-family:var(--mono);font-size:12px;color:var(--text-ghost)}.email-page .email-row-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.email-page .status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.email-page .email-service-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:15px 16px;transition:border-color .15s ease}.email-page .email-service-card:hover{border-color:var(--border-strong)}.email-page .email-service-ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--text-dim)}.email-page .email-service-header{display:flex;align-items:center;gap:10px}.email-page .email-service-header .email-service-id{flex:1;min-width:0}.email-page .email-service-header h3{margin:0;font-size:13.5px;font-weight:600}.email-page .email-service-header .version{display:block;margin-top:2px;font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.email-page .email-service-header .sk-pill{flex-shrink:0}.email-page .email-service-actions{display:flex;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--border-soft)}.email-page .email-form{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px;margin-bottom:16px}.email-page .email-form .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:16px;align-items:end}.email-page .email-form .form-grid .form-group{margin-bottom:0}.email-page .email-form .form-actions{display:flex;gap:8px;justify-content:flex-end}.email-page .email-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim);cursor:pointer}.email-page .email-check input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent)}.email-page .email-qid{color:var(--text)}.email-page .email-qerr{margin-top:3px;font-family:var(--mono);font-size:11px;color:var(--red)}.email-page .email-queue{margin-bottom:24px}.email-page .provider-list{display:flex;flex-direction:column;gap:12px}.email-page .provider-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:15px 16px;transition:border-color .15s ease}.email-page .provider-card:hover{border-color:var(--border-strong)}.email-page .provider-card .provider-header{display:flex;align-items:center;gap:10px}.email-page .provider-card .provider-header h3{margin:0;font-size:13.5px;font-weight:600}.email-page .provider-card .provider-type{padding:2px 7px;border:1px solid var(--border-strong);border-radius:5px;background:var(--surface-2);color:var(--text-dim);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.email-page .provider-card .provider-meta{margin-top:12px}.email-page .provider-card .provider-meta .meta-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.email-page .provider-card .provider-meta .meta-row .k{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.email-page .provider-card .provider-meta .meta-row .v{font-family:var(--mono);font-size:12.5px;color:var(--text);overflow-wrap:anywhere}.email-page .provider-card .provider-actions{display:flex;gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid var(--border-soft)}.email-page .provider-card .zones-list{margin-top:12px;padding:8px 12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.email-page .provider-card .zones-list .zone-item{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-family:var(--mono);font-size:11.5px}.email-page .provider-card .zones-list .zone-item span:first-child{color:var(--text-dim)}.email-page .provider-card .zones-list .zone-item span:last-child{color:var(--text-faint)}.email-page .provider-card .zones-list .zone-item:not(:last-child){border-bottom:1px solid var(--border-soft)}.email-page .spam-config{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.email-page .spam-config .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:center}.email-page .spam-config .form-grid .form-group{margin-bottom:0}.email-page .spam-config .checkbox-field{display:flex;align-items:center;gap:8px}.email-page .spam-config .checkbox-field input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent)}.email-page .spam-config .checkbox-field label{margin:0;font-size:13px;color:var(--text-dim)}.email-page .webmail-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.email-page .webmail-card .webmail-status-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.email-page .webmail-card .webmail-port{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.email-page .webmail-card .webmail-actions{display:flex;gap:8px;flex-wrap:wrap}.email-page .webmail-card .proxy-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}.email-page .webmail-card .proxy-form .form-group{flex:1;min-width:240px;max-width:360px;margin-bottom:0}.email-page .email-logs .log-controls{display:flex;align-items:center;gap:8px}.email-page .email-logs .log-controls select{padding:5px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;cursor:pointer}.email-page .email-logs .log-controls select:focus{outline:none;border-color:var(--accent)}.email-page .email-logs .log-output{margin:0;padding:16px;background:var(--bg-code);border:1px solid var(--border-soft);border-radius:var(--radius);font-family:var(--mono);font-size:12px;line-height:1.6;color:var(--text-dim);max-height:600px;overflow:auto;white-space:pre-wrap;word-break:break-all}.email-page .modal-content{width:100%;max-width:420px;padding:20px 24px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.email-page .modal-content h3{margin:0 0 16px;font-size:15px;font-weight:600}.email-page .modal-content .form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.setup-wizard{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg-body)}.wizard-card{width:100%;max-width:700px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:40px}.wizard-header{text-align:center;margin-bottom:32px}.wizard-header .wizard-logo{width:48px;height:48px;margin:0 auto 16px}.wizard-header h1{font-size:24px;font-weight:700;margin-bottom:8px}.wizard-header p{color:var(--text-secondary)}.wizard-progress{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:32px}.wizard-progress-step{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;font-size:12px;font-weight:600;border:2px solid var(--border-default);color:var(--text-tertiary);background:transparent;transition:all .2s ease}.wizard-progress-step.active{border-color:var(--accent-primary);background:var(--accent-primary);color:#fff}.wizard-progress-step.completed{border-color:var(--accent-primary);background:#6d7cff26;color:var(--accent-primary)}.wizard-progress-line{width:40px;height:2px;background:var(--border-default);transition:background .2s ease}.wizard-progress-line.active{background:var(--accent-primary)}.wizard-step{animation:wizardFadeIn .3s ease}@keyframes wizardFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.wizard-step-title{font-size:18px;font-weight:600;margin-bottom:8px}.wizard-step-description{color:var(--text-secondary);font-size:14px;margin-bottom:24px}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}@media (max-width: 640px){.option-grid{grid-template-columns:1fr}}.option-card{display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--bg-elevated);border:2px solid var(--border-default);border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative}.option-card:hover{border-color:var(--border-active)}.option-card.selected{border-color:var(--accent-primary);background:#6d7cff14}.option-card .option-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--bg-secondary);color:var(--text-secondary);border-radius:8px}.option-card .option-card-label{font-weight:600;font-size:14px}.option-card .option-card-desc{font-size:12px;color:var(--text-secondary);line-height:1.5}.option-card .option-card-check{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:#fff;opacity:0;transform:scale(.5);transition:all .2s ease}.option-card.selected .option-card-check{opacity:1;transform:scale(1)}.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}@media (max-width: 768px){.tier-grid{grid-template-columns:1fr}}.tier-card{display:flex;flex-direction:column;padding:20px;background:var(--bg-elevated);border:2px solid var(--border-default);border-radius:12px;transition:all .2s ease}.tier-card.detected{border-color:var(--accent-primary);background:#6d7cff14}.tier-card .tier-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.tier-card .tier-card-name{font-weight:700;font-size:16px}.tier-card .tier-card-badge{font-size:10px;padding:2px 8px;background:var(--accent-primary);color:#fff;border-radius:9999px;font-weight:500}.tier-card .tier-card-specs{font-size:12px;color:var(--text-secondary);margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-default)}.tier-card .tier-features{display:flex;flex-direction:column;gap:8px;flex:1}.tier-card .tier-feature{display:flex;align-items:center;gap:8px;font-size:12px}.tier-card .tier-feature .feature-icon{flex-shrink:0;width:16px;height:16px}.tier-card .tier-feature.available .feature-icon{color:#3ddc97}.tier-card .tier-feature.unavailable,.tier-card .tier-feature.unavailable .feature-icon{color:var(--text-tertiary)}.tier-warning{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#f5b9451f;border:1px solid rgba(245,185,69,.22);border-radius:8px;margin-bottom:24px}.tier-warning .tier-warning-icon{flex-shrink:0;color:#f5b945}.tier-warning .tier-warning-text{font-size:12px;color:var(--text-secondary);line-height:1.5}.summary-panel{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:12px;padding:24px;margin-bottom:24px}.summary-section:not(:last-child){margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border-default)}.summary-section-title{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.summary-row .summary-label{color:var(--text-secondary);font-size:12px}.summary-row .summary-value{font-weight:500;font-size:12px}.summary-tags{display:flex;flex-wrap:wrap;gap:8px}.summary-tag{display:inline-flex;align-items:center;padding:4px 12px;background:#6d7cff1f;color:var(--accent-primary);border-radius:9999px;font-size:12px;font-weight:500}.recommendation-chips{display:flex;flex-wrap:wrap;gap:8px}.recommendation-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:8px;font-size:12px;color:var(--text-primary)}.wizard-nav{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--border-default)}.btn-wizard-prev{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;border-radius:8px;border:1px solid transparent;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:none}.btn-wizard-prev:disabled{opacity:.6;cursor:not-allowed}.btn-wizard-prev{color:var(--text-secondary);border-color:var(--border-default);background:transparent}.btn-wizard-prev:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-wizard-next{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;border-radius:8px;border:1px solid transparent;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:none}.btn-wizard-next{background:var(--accent-primary);color:#fff;margin-left:auto}.btn-wizard-next:hover{background:var(--accent-hover)}.btn-wizard-next:disabled{opacity:.6;cursor:not-allowed}.wizard-info-banner{display:flex;gap:16px;padding:16px;background:#6d7cff1a;border-radius:6px;margin-bottom:24px}.wizard-info-banner .wizard-info-icon{flex-shrink:0;color:var(--accent-primary)}.wizard-info-banner p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.wizard-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary)}.migration-status-panel{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:12px;padding:20px;margin-bottom:24px}.migration-status-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.migration-status-row:not(:last-child){border-bottom:1px solid var(--border-subtle)}.migration-status-label{color:var(--text-secondary);font-size:12px}.migration-status-value{font-weight:600;font-size:12px}code.migration-status-value{background:var(--bg-secondary);padding:2px 8px;border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.migration-list{margin-bottom:24px}.migration-list-title{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.migration-list-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;font-size:12px}.migration-list-item:not(:last-child){margin-bottom:8px}.migration-list-item svg{flex-shrink:0;color:var(--accent-primary)}.migration-list-item code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;color:var(--text-secondary);font-size:10px}.migration-list-item span{color:var(--text-primary)}.migration-login-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-default)}.migration-login-form{display:flex;flex-direction:column;gap:12px;max-width:400px}.migration-login-form input{width:100%;padding:12px 16px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:8px;font-size:14px;color:var(--text-primary);transition:border-color .2s ease}.migration-login-form input::placeholder{color:var(--text-tertiary)}.migration-login-form input:focus{outline:none;border-color:var(--accent-primary)}.migration-login-form .btn-wizard-next{align-self:flex-start}.migration-error-inline{padding:12px;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:8px;color:#fb6f6f;font-size:12px}.migration-backup-actions{margin-bottom:24px}.backup-status{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:8px;margin-bottom:24px}.backup-status--success{background:#3ddc971f;border:1px solid rgba(61,220,151,.22);color:#3ddc97}.backup-status--error{background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);color:#fb6f6f}.backup-status svg{flex-shrink:0;margin-top:2px}.backup-status strong{display:block;margin-bottom:4px}.backup-status code{display:block;font-size:10px;color:var(--text-secondary);word-break:break-all;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.backup-status span{font-size:12px}.migration-apply-actions{text-align:center;padding:24px 0}.migration-progress{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 0;color:var(--text-secondary)}.migration-progress svg{color:var(--accent-primary)}.migration-progress span{font-size:14px}.migration-success{text-align:center;padding:32px 0}.migration-success svg{color:#3ddc97;margin-bottom:16px}.migration-success h2{font-size:20px;font-weight:700;margin-bottom:8px}.migration-success p{color:var(--text-secondary);font-size:14px}.migration-success code{background:var(--bg-secondary);padding:2px 8px;border-radius:6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.migration-error{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:8px;margin-bottom:24px}.migration-error>svg{flex-shrink:0;color:#fb6f6f;margin-top:2px}.migration-error strong{display:block;color:#fb6f6f;margin-bottom:4px}.migration-error span{display:block;font-size:12px;color:var(--text-secondary)}.migration-error .btn-wizard-prev{margin-left:auto;flex-shrink:0;align-self:center}.migration-nav-right{display:flex;align-items:center;gap:16px}.btn-text-link{background:none;border:none;color:var(--text-tertiary);font-size:12px;cursor:pointer;padding:0;text-decoration:underline;transition:color .2s ease}.btn-text-link:hover{color:var(--text-secondary)}.new-service-page{max-width:1200px}.new-service-page__breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--text-tertiary);font-size:12px}.new-service-page__breadcrumb a{color:var(--text-secondary);text-decoration:none}.new-service-page__breadcrumb a:hover{color:var(--text-primary)}.new-service-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.new-service-page__header h1{margin:0;color:var(--text-primary);font-size:24px;font-weight:700}.new-service-page__header p{max-width:620px;margin:4px 0 0;color:var(--text-tertiary);font-size:12px;line-height:1.5}.new-service-page__method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}@media (max-width: 768px){.new-service-page__method-grid{grid-template-columns:1fr}}.new-service-page__method-card{display:block;position:relative;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font:inherit;text-align:left;text-decoration:none;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.new-service-page__method-card:hover{background:var(--surface-2);border-color:var(--border-strong);transform:translateY(-2px)}.new-service-page__method-card--on{border-color:var(--accent-dim);background:var(--accent-bg)}.new-service-page__method-icon{width:42px;height:42px;margin-bottom:13px;border-radius:11px;background:var(--surface-2);color:var(--text-dim);transition:background .15s ease,color .15s ease}.new-service-page__method-card--on .new-service-page__method-icon{background:var(--accent-bg);color:var(--accent-bright)}.new-service-page__method-title{display:block;font-size:14px;font-weight:600}.new-service-page__method-sub{display:block;margin-top:4px;color:var(--text-faint);font-size:12px;line-height:1.45}.new-service-page__method-icon,.new-service-page__connect-icon,.new-service-page__deploy-icon{display:grid;place-items:center;flex-shrink:0}.new-service-page__method-icon svg,.new-service-page__connect-icon svg,.new-service-page__deploy-icon svg{display:block}.new-service-page__provider-title svg{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.new-service-page__connect-icon,.new-service-page__deploy-icon{width:36px;height:36px;border-radius:8px;background:var(--bg-elevated);color:var(--accent-primary)}.new-service-page__wizard{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,390px);gap:16px;align-items:start}.new-service-page__panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px}.new-service-page__provider-panel,.new-service-page__review-panel{display:grid;gap:20px;padding:20px}.new-service-page__review-panel{position:sticky;top:16px}.new-service-page__section-heading{display:flex;align-items:center;gap:8px}.new-service-page__section-heading svg{color:var(--accent-primary)}.new-service-page__section-heading h2{margin:0;color:var(--text-primary);font-size:14px;font-weight:600}.new-service-page__provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.new-service-page__provider-card{position:relative;display:grid;gap:12px;min-height:160px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.new-service-page__provider-card:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translateY(-1px)}.new-service-page__provider-card--active{border-color:#14b8a68c;box-shadow:inset 0 0 0 1px #14b8a62e}.new-service-page__provider-card>svg{position:absolute;top:16px;right:16px;color:#3ddc97}.new-service-page__provider-card small{color:var(--text-tertiary);font-size:10px;line-height:1.5}.new-service-page__provider-meta{width:max-content;padding:3px 8px;border:1px solid var(--border-subtle);border-radius:9999px;color:var(--text-tertiary);font-size:10px;line-height:1}.new-service-page__provider-title{display:flex;align-items:center;gap:8px}.new-service-page__provider-title svg{color:var(--accent-primary)}.new-service-page__provider-title strong{font-size:14px;font-weight:600}.new-service-page__connect-box{display:grid;gap:16px;padding:16px;background:linear-gradient(180deg,#ffffff05,#fff0);border:1px solid var(--border-subtle);border-radius:8px}.new-service-page__connect-heading{display:flex;align-items:center;gap:12px}.new-service-page__connect-heading strong,.new-service-page__connect-heading span{display:block}.new-service-page__connect-heading strong{color:var(--text-primary);font-size:12px;font-weight:600}.new-service-page__connect-heading span{margin-top:2px;color:var(--text-tertiary);font-size:10px;line-height:1.4}.new-service-page__github-account{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.new-service-page__github-account img{width:36px;height:36px;border-radius:9999px}.new-service-page__github-account strong,.new-service-page__github-account span{display:block}.new-service-page__github-account strong{color:var(--text-primary);font-size:12px;font-weight:600}.new-service-page__github-account span{margin-top:2px;color:var(--text-tertiary);font-size:10px}.new-service-page__repo-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.new-service-page__repo-search>svg{margin-left:8px;color:var(--text-tertiary)}.new-service-page__repo-list{display:grid;gap:8px;max-height:430px;overflow-y:auto;padding-right:4px}.new-service-page__repo-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:64px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.new-service-page__repo-row:hover{background:var(--bg-hover);border-color:var(--border-hover)}.new-service-page__repo-row--active{border-color:#14b8a68c;box-shadow:inset 0 0 0 1px #14b8a62e}.new-service-page__repo-row span,.new-service-page__repo-row strong,.new-service-page__repo-row small{display:block;min-width:0}.new-service-page__repo-row strong{color:var(--text-primary);font-size:12px;font-weight:600;overflow-wrap:anywhere}.new-service-page__repo-row small{margin-top:3px;color:var(--text-tertiary);font-size:10px;line-height:1.35;overflow-wrap:anywhere}.new-service-page__repo-row em{flex-shrink:0;padding:3px 8px;border:1px solid var(--border-subtle);border-radius:9999px;color:var(--text-tertiary);font-size:10px;font-style:normal}.new-service-page__repo-state{display:grid;place-items:center;min-height:120px;padding:16px;background:var(--bg-elevated);border:1px dashed var(--border-subtle);border-radius:6px;color:var(--text-tertiary);font-size:12px}.new-service-page__connect-empty{display:grid;justify-items:center;gap:16px;padding:32px 16px;text-align:center}.new-service-page__connect-empty h2{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.new-service-page__connect-empty p{max-width:460px;margin:8px auto 0;color:var(--text-tertiary);font-size:12px;line-height:1.5}.new-service-page__connect-actions{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.new-service-page__connect-actions--left{justify-content:flex-start}.new-service-page__template-list{display:grid;gap:8px}.new-service-page__template-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;min-height:86px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.new-service-page__template-row:hover{background:var(--bg-hover);border-color:var(--border-hover)}.new-service-page__template-row--active{border-color:#14b8a68c;box-shadow:inset 0 0 0 1px #14b8a62e}.new-service-page__template-row--active>svg{color:#3ddc97}.new-service-page__template-main{display:grid;gap:3px;min-width:0}.new-service-page__template-main strong,.new-service-page__template-main small,.new-service-page__template-main em{display:block;min-width:0;overflow-wrap:anywhere}.new-service-page__template-main strong{color:var(--text-primary);font-size:12px;font-weight:600}.new-service-page__template-main small,.new-service-page__template-main em{color:var(--text-tertiary);font-size:10px;line-height:1.35}.new-service-page__template-main em{font-style:normal}.new-service-page__template-badges{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap;max-width:210px}.new-service-page__template-badges span{padding:3px 8px;background:#14b8a61a;border:1px solid rgba(20,184,166,.22);border-radius:9999px;color:var(--accent-primary);font-size:10px;line-height:1}.new-service-page__field{display:grid;gap:8px}.new-service-page__field label{color:var(--text-secondary);font-size:12px;font-weight:500}.new-service-page__field input,.new-service-page__field select{min-height:40px;width:100%;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-size:12px}.new-service-page__field input:focus,.new-service-page__field select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.new-service-page__field select{padding:0 12px;cursor:pointer}.new-service-page__repo-preview,.new-service-page__summary{display:grid;gap:8px}.new-service-page__repo-preview>div,.new-service-page__summary>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.new-service-page__repo-preview span,.new-service-page__repo-preview strong,.new-service-page__summary span,.new-service-page__summary strong{display:block}.new-service-page__repo-preview span,.new-service-page__summary span{color:var(--text-tertiary);font-size:10px;line-height:1.4}.new-service-page__repo-preview strong,.new-service-page__summary strong{min-width:0;color:var(--text-primary);font-size:12px;font-weight:600;overflow-wrap:anywhere;text-align:right}.new-service-page__repo-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.new-service-page__repo-preview>div{display:grid;justify-content:stretch}.new-service-page__repo-preview strong{text-align:left}.new-service-page__deploy-card{display:flex;gap:12px;align-items:flex-start}.new-service-page__deploy-card h2{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.new-service-page__deploy-card p{margin:4px 0 0;color:var(--text-tertiary);font-size:12px;line-height:1.5}.new-service-page__deploy-icon{background:#10b9811a;color:#3ddc97}.new-service-page__flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;color:var(--text-tertiary)}.new-service-page__flow>div{display:grid;place-items:center;gap:8px;min-height:68px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);font-size:10px;font-weight:500}.new-service-page__manifest-card{display:grid;gap:12px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.new-service-page__manifest-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.new-service-page__manifest-head span{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px;font-weight:500}.new-service-page__manifest-head svg{color:var(--accent-primary)}.new-service-page__manifest-head strong{color:var(--text-primary);font-size:10px;font-weight:600;text-transform:capitalize}.new-service-page__manifest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.new-service-page__manifest-grid>div{min-width:0;padding:8px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:4px}.new-service-page__manifest-grid span,.new-service-page__manifest-grid strong{display:block;min-width:0;overflow-wrap:anywhere}.new-service-page__manifest-grid span{color:var(--text-tertiary);font-size:10px}.new-service-page__manifest-grid strong{margin-top:2px;color:var(--text-primary);font-size:10px;font-weight:600}.new-service-page__manifest-files,.new-service-page__env-preview{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.new-service-page__manifest-files span,.new-service-page__env-preview span{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:0 8px;border:1px solid var(--border-subtle);border-radius:9999px;color:var(--text-secondary);font-size:10px;line-height:1}.new-service-page__manifest-files span{background:#10b98114}.new-service-page__manifest-files span svg{color:#3ddc97}.new-service-page__env-preview span{background:var(--bg-card);max-width:100%;overflow-wrap:anywhere}.new-service-page__env-preview-secret{border-color:#f59e0b40!important;color:#f5b945!important}.new-service-page__advanced-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease}.new-service-page__advanced-toggle:hover{background:var(--bg-hover);border-color:var(--border-hover)}.new-service-page__advanced-toggle span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500}.new-service-page__advanced-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.new-service-page__advanced-toggle>svg{transition:transform .15s ease}.new-service-page__advanced{display:grid;gap:16px;padding-top:4px}.new-service-page__two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.new-service-page__toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px}.new-service-page__toggle label,.new-service-page__toggle span{display:block}.new-service-page__toggle label{color:var(--text-secondary);font-size:12px;font-weight:500}.new-service-page__toggle span{margin-top:3px;color:var(--text-tertiary);font-size:10px;line-height:1.4}.new-service-page__notes{display:grid;gap:8px}.new-service-page__note{display:flex;align-items:flex-start;gap:8px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-tertiary);font-size:10px;line-height:1.45}.new-service-page__note svg{margin-top:1px;color:var(--text-secondary);flex-shrink:0}.new-service-page__actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.new-service-page__upload-drop{display:grid;place-items:center;gap:12px;min-height:160px;padding:20px;background:var(--bg-elevated);border:2px dashed var(--border-subtle);border-radius:8px;color:var(--text-tertiary);text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.new-service-page__upload-drop:hover,.new-service-page__upload-drop--over{background:var(--accent-bg, rgba(109, 124, 255, .08));border-color:var(--accent-dim, var(--accent-primary));color:var(--text-secondary)}.new-service-page__upload-drop span{font-size:12px;font-weight:500}.new-service-page__upload-drop input{display:none}@media (max-width: 1280px){.new-service-page__provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1024px){.new-service-page__wizard{grid-template-columns:1fr}.new-service-page__review-panel{position:static}}@media (max-width: 768px){.new-service-page__header{display:grid}.new-service-page__method-grid,.new-service-page__provider-grid,.new-service-page__repo-preview,.new-service-page__repo-search,.new-service-page__template-row,.new-service-page__manifest-grid,.new-service-page__two-col{grid-template-columns:1fr}.new-service-page__github-account{grid-template-columns:auto minmax(0,1fr)}.new-service-page__github-account .btn,.new-service-page__github-account button{grid-column:1/-1;width:100%}.new-service-page__flow{grid-template-columns:1fr}.new-service-page__flow>svg{justify-self:center;transform:rotate(90deg)}.new-service-page__actions{flex-direction:column-reverse}.new-service-page__actions .btn,.new-service-page__actions button,.new-service-page__actions a{width:100%}}.services-page__src-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;font-family:var(--mono);font-size:11.5px;color:var(--text-dim);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.services-page__src-badge svg{flex-shrink:0;color:var(--text-faint)}.services-page__src-badge--manual{background:#f5b94514;border-color:#f5b94533;color:#f5b945}.services-page__src-badge--upload{background:#b07bf514;border-color:#b07bf533;color:#b07bf5}.services-page__actions{display:flex;gap:4px;justify-content:flex-end}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.main-content:has(.svc-detail){padding:0}@media (max-width: 768px){.main-content:has(.svc-detail){margin-top:calc(56px + env(safe-area-inset-top))}}.svc-detail{gap:0}.svc-detail .app-detail-body{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1200px;margin-inline:auto;padding:24px 24px 40px}.svc-detail .app-detail-header{padding:4px 0 0;background:none;border:none;border-radius:0}.svc-detail .app-detail-header:before{content:none}.svc-detail .svc-crumbs{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.svc-detail .svc-crumbs a{color:var(--text-dim);text-decoration:none}.svc-detail .svc-crumbs a:hover{color:var(--accent-bright)}.svc-detail .svc-crumbs__sep{color:var(--text-ghost)}.svc-detail .svc-crumbs__cur{color:var(--text)}.svc-detail .svc-detail-topbar{padding:10px 16px;flex-wrap:wrap;row-gap:8px}.svc-detail .svc-detail-topbar .sk-topbar__spacer{display:none}.svc-detail .svc-detail-topbar .sk-topbar__titles{flex-shrink:0}.svc-detail .svc-detail-topbar .sk-topbar__actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.svc-detail .svc-detail-topbar .sk-topbar__actions .ui-button{height:32px;padding:0 10px;font-size:12.5px;gap:6px}.svc-detail__tile{border-radius:13px;box-shadow:var(--shadow-sm)}.svc-detail__type-badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;border:1px solid}.svc-detail__dropdown{position:relative}.svc-detail__dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:4px;min-width:200px;z-index:10;box-shadow:var(--shadow-md)}.svc-detail__dropdown-menu--right{left:auto;right:0}.svc-detail__dropdown-menu button,.svc-detail__dropdown-menu a{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;border-radius:6px;text-decoration:none}.svc-detail__dropdown-menu button:hover,.svc-detail__dropdown-menu a:hover{background:var(--surface-hover);color:var(--text-primary)}.svc-detail__dropdown-menu button:disabled,.svc-detail__dropdown-menu a:disabled{opacity:.5;cursor:not-allowed}.svc-detail__dropdown-divider{height:1px;background:var(--border-soft);margin:4px 0}.svc-detail__dropdown-danger{color:#fb6f6f!important}.svc-detail__dropdown-danger:hover{background:#fb6f6f1f!important;color:#fb6f6f!important}.svc-detail__repo-bar{display:flex}.svc-detail__repo-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:9999px;font-family:var(--mono);font-size:12px;color:var(--text-dim);cursor:pointer;transition:border-color .15s ease,background .15s ease}.svc-detail__repo-pill svg{color:var(--text-faint)}.svc-detail__repo-pill:hover{border-color:var(--accent-dim);background:var(--surface-2)}.svc-detail__repo-pill--static{cursor:default}.svc-detail__repo-pill--static:hover{border-color:var(--border);background:var(--surface)}.svc-detail__repo-url{font-size:12px;color:var(--text-primary)}.svc-detail__repo-arrow{color:var(--text-ghost)}.svc-detail__repo-branch{font-size:12px;color:var(--accent-bright);font-weight:500}.svc-detail__auto-deploy-badge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;background:var(--green-bg);color:var(--green);border-radius:4px}.svc-detail__connect-repo{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:none;border:1px dashed var(--border-strong);border-radius:9999px;font-size:12px;color:var(--text-faint);cursor:pointer;transition:all .15s ease}.svc-detail__connect-repo:hover{border-color:var(--accent-dim);color:var(--accent-bright);background:var(--accent-bg-soft)}.svc-detail__versions{padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.svc-detail__versions-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.svc-detail__versions-header h3{margin:0;font-size:12px;font-weight:600;color:var(--text-primary)}.svc-detail__upload-label{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--accent-bg-soft);border:1px solid var(--accent-dim);border-radius:6px;color:var(--accent-bright);font-size:10px;font-weight:500;cursor:pointer;transition:background .15s ease}.svc-detail__upload-label:hover{background:var(--accent-bg)}.svc-detail__upload-label input{display:none}.svc-detail__versions-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.svc-detail__versions-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.svc-detail__versions-list li.is-current{border-color:#3ddc9759;background:#3ddc970f}.svc-detail__version-name{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text-primary)}.svc-detail__version-date{margin-left:auto;color:var(--text-faint);font-size:10px}.svc-detail__version-current{padding:3px 8px;background:#3ddc971a;border:1px solid rgba(61,220,151,.2);border-radius:9999px;color:#3ddc97;font-size:10px;font-weight:500}.svc-detail .app-detail-tabs{flex-wrap:wrap;overflow-x:visible;row-gap:2px}.svc-detail .app-detail-tab--end{margin-left:auto}.svc-detail .code-editor{background:var(--bg-code);border-color:var(--border-soft);color:var(--text-code);font-family:var(--mono);font-size:12px}.svc-detail .command-output{background:var(--bg-code);border-color:var(--border-soft);border-radius:var(--radius)}.svc-detail .command-output pre{color:var(--text-code);font-size:12px}.svc-detail .command-output.error{border-color:#fb6f6f66}.svc-detail .command-output .stderr{color:var(--red)}.svc-eyebrow,h3.svc-eyebrow{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.svc-eyebrow__count,h3.svc-eyebrow__count{font-weight:500;color:var(--text-ghost);letter-spacing:.02em}.svc-eyebrow+.hint,h3.svc-eyebrow+.hint{margin-top:8px}.svc-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.svc-pkg-name{color:var(--accent-bright)!important}.events-tab__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.events-tab__timeline{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.events-tab__event{display:flex;gap:16px;padding:12px 16px;background:transparent;cursor:pointer;transition:background .15s ease}.events-tab__event+.events-tab__event{border-top:1px solid var(--border-soft)}.events-tab__event:hover,.events-tab__event--expanded{background:var(--surface-2)}.events-tab__event-status{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0;background:var(--text-ghost)}.events-tab__event-status--green{background:var(--green);box-shadow:0 0 6px var(--green)}.events-tab__event-status--red{background:var(--red)}.events-tab__event-status--amber{background:var(--amber);box-shadow:0 0 6px var(--amber)}.events-tab__event-status--cyan{background:var(--cyan)}.events-tab__event-status--gray{background:var(--text-faint)}.events-tab__event-body{flex:1;min-width:0}.events-tab__event-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.events-tab__event-commit{display:flex;align-items:center;gap:8px;min-width:0}.events-tab__event-sha{font-family:var(--mono);font-size:12px;color:var(--accent-bright);background:var(--accent-bg);padding:1px 8px;border-radius:4px;flex-shrink:0}.events-tab__event-message{font-size:13px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.events-tab__event-meta{display:flex;align-items:center;gap:12px;margin-top:4px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.events-tab__event-logs{margin-top:12px;padding:12px;background:var(--bg-code);border:1px solid var(--border-soft);border-radius:6px;max-height:300px;overflow-y:auto}.events-tab__event-logs pre{margin:0;font-family:var(--mono);font-size:12px;color:var(--text-code);white-space:pre-wrap;word-break:break-all}.events-tab__empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:48px 32px;color:var(--text-tertiary)}.events-tab__empty h3{color:var(--text-secondary);margin:0}.shell-tab__container{border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.shell-tab__header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-2);border-bottom:1px solid var(--border-soft)}.shell-tab__title{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.shell-tab__terminal{background:var(--bg-code);padding:16px;min-height:400px;font-family:var(--mono);font-size:12px;color:var(--text-code);overflow-y:auto;max-height:600px}.shell-tab__hint{color:var(--text-faint)}.shell-tab__line{line-height:1.6;white-space:pre-wrap;word-break:break-all}.shell-tab__line--input{color:var(--cyan)}.shell-tab__line--error{color:var(--red)}.shell-tab__input-row{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--surface);border-top:1px solid var(--border-soft)}.shell-tab__prompt{color:var(--accent-bright);font-family:var(--mono);font-size:12px;flex-shrink:0}.shell-tab__input{flex:1;background:none;border:none;color:var(--text-primary);font-family:var(--mono);font-size:12px;outline:none}.metrics-tab__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.metrics-tab__card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 20px;transition:border-color .15s}.metrics-tab__card:hover{border-color:var(--border-strong)}.metrics-tab__card .sk-gauge{margin-top:12px}.metrics-tab__card-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.metrics-tab__card-header h4{margin:0;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.metrics-tab__card-header span{font-family:var(--mono);font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}.metrics-tab__info{margin-top:8px;font-family:var(--mono);font-size:12px;color:var(--text-dim)}.svc-settings{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}@media (max-width: 768px){.svc-settings{grid-template-columns:1fr}}.svc-settings__nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:16px}@media (max-width: 768px){.svc-settings__nav{position:static;flex-direction:row;flex-wrap:wrap}}.svc-settings__group+.svc-settings__group{margin-top:16px}.svc-settings__grouplabel{padding:0 12px;margin-bottom:6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.svc-settings__navitem{display:flex;width:100%;align-items:center;gap:9px;padding:9px 12px;border:none;border-radius:8px;background:none;color:var(--text-dim);font-size:13.5px;font-weight:500;text-align:left;cursor:pointer;transition:background .14s,color .14s}.svc-settings__navitem svg{color:var(--text-faint);flex-shrink:0}.svc-settings__navitem:hover{background:var(--surface-hover);color:var(--text)}.svc-settings__navitem.is-active{background:var(--accent-bg);color:var(--accent-bright)}.svc-settings__navitem.is-active svg{color:var(--accent-bright)}.svc-settings__content{min-width:0}.svc-settings__section{margin-bottom:24px}.svc-settings__section:last-child{margin-bottom:0}.svc-settings__section-title{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.btn-icon{padding:8px!important;min-width:auto!important}.svc-domain-panel .ssl-guide{display:flex;flex-direction:column;gap:12px;margin-top:12px}.svc-domain-panel .svc-give-subdomain{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-soft)}.svc-domain-panel .svc-give-subdomain .form-hint{margin:0}.svc-domain-panel .svc-subdomain-input{display:flex;align-items:center;gap:8px}.svc-domain-panel .svc-subdomain-input input{flex:1;min-width:0}.svc-domain-panel .svc-subdomain-input__suffix{font-family:var(--mono);font-size:12px;color:var(--text-dim);white-space:nowrap}.svc-domain-panel .ssl-checklist{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius)}.svc-domain-panel .ssl-check-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim)}.svc-domain-panel .ssl-check-icon{flex-shrink:0}.svc-domain-panel .ssl-check-icon--ok{color:var(--green)}.svc-domain-panel .ssl-check-icon--missing{color:var(--amber)}.svc-domain-panel .ssl-check-label--ok{color:var(--text)}.svc-domain-panel .ssl-inline-attach{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-soft)}.svc-domain-panel .ssl-context{display:flex;flex-direction:column;gap:8px}.svc-domain-panel .ssl-context-links{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-faint)}.svc-domain-panel .ssl-context-links a{color:var(--accent-bright);text-decoration:none}.svc-domain-panel .ssl-context-links a:hover{text-decoration:underline}.overview-tab__kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}@media (max-width: 1024px){.overview-tab__kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.overview-tab__kpis{grid-template-columns:1fr}}.overview-tab__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}@media (max-width: 768px){.overview-tab__grid{grid-template-columns:1fr}}.overview-tab__card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 20px}.overview-tab__card--full{grid-column:1/-1}.overview-tab__card-title{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.overview-tab__card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.overview-tab__card-header-row .overview-tab__card-title{margin:0}.overview-tab__see-all{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.overview-tab__info-badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;border:1px solid}.overview-tab__info-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:12px;color:var(--accent-bright);text-decoration:none}.overview-tab__info-link:hover{text-decoration:underline}.overview-tab__branch{margin-left:8px;color:var(--accent-bright);font-weight:500}.overview-tab__metrics{display:flex;flex-direction:column;gap:16px}.overview-tab__metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;color:var(--text-secondary)}.overview-tab__metric-value{font-family:var(--mono);font-weight:600;color:var(--text-primary)}.overview-tab__metric-detail{display:block;font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:4px}.overview-tab__metric-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.overview-tab__metric-item{display:flex;flex-direction:column;gap:2px}.overview-tab__metric-item-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.overview-tab__metric-item-value{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--text-primary)}.overview-tab__loading,.overview-tab__no-metrics,.overview-tab__no-deploys{padding:24px;text-align:center;color:var(--text-tertiary);font-size:12px}.overview-tab__deploy-list{display:flex;flex-direction:column}.overview-tab__deploy-row{display:flex;align-items:center;gap:12px;padding:11px 0}.overview-tab__deploy-row+.overview-tab__deploy-row{border-top:1px solid var(--border-soft)}.overview-tab__deploy-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-ghost)}.overview-tab__deploy-dot--green{background:var(--green);box-shadow:0 0 6px var(--green)}.overview-tab__deploy-dot--red{background:var(--red)}.overview-tab__deploy-dot--amber{background:var(--amber);box-shadow:0 0 6px var(--amber)}.overview-tab__deploy-dot--cyan{background:var(--cyan)}.overview-tab__deploy-dot--gray{background:var(--text-faint)}.overview-tab__deploy-info{flex:1;min-width:0}.overview-tab__deploy-message{font-size:13px;color:var(--text-primary);font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-tab__deploy-meta{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:2px}.overview-tab__deploy-sha{color:var(--accent-bright);background:var(--accent-bg);padding:0 4px;border-radius:4px}.logs-tab-v2{display:flex;flex-direction:column;gap:0}.logs-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius) var(--radius) 0 0}.logs-toolbar__left{display:flex;align-items:center;gap:12px;flex:1}.logs-toolbar__right{display:flex;align-items:center;gap:8px;flex-shrink:0}.logs-toolbar__search{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:0 8px;flex:1;max-width:300px}.logs-toolbar__search:focus-within{border-color:var(--accent-primary)}.logs-toolbar__search svg{color:var(--text-faint);flex-shrink:0}.logs-toolbar__search input{flex:1;background:none;border:none;padding:4px 0;color:var(--text-primary);font-size:12px;outline:none;min-width:0}.logs-toolbar__search input::placeholder{color:var(--text-faint)}.logs-toolbar__match-count{font-family:var(--mono);font-size:11px;color:var(--accent-bright);white-space:nowrap}.logs-toolbar__select{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:4px 8px;color:var(--text-secondary);font-size:12px;outline:none;cursor:pointer}.logs-toolbar__select:focus{border-color:var(--accent-primary)}.logs-toolbar__toggle{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-tertiary);cursor:pointer;white-space:nowrap}.logs-toolbar__toggle input{accent-color:var(--accent-primary)}.logs-toolbar__divider{width:1px;height:16px;background:var(--border)}.logs-source-hint{display:flex;align-items:center;gap:8px;padding:4px 16px;background:var(--surface-2);border-left:1px solid var(--border-soft);border-right:1px solid var(--border-soft);font-family:var(--mono);font-size:11px;color:var(--text-faint)}.logs-source-hint__live{font-size:9px;font-weight:700;letter-spacing:.08em;padding:1px 4px;background:var(--red-bg);color:var(--red);border-radius:4px;animation:pulse-dot 1.5s ease-in-out infinite}.logs-viewer{background:var(--bg-code);border:1px solid var(--border-soft);border-top:none;border-radius:0 0 var(--radius) var(--radius);min-height:400px;max-height:600px;overflow-y:auto;font-family:var(--mono);font-size:12px;line-height:1.7;scroll-behavior:smooth}.logs-viewer__loading,.logs-viewer__empty{padding:32px;text-align:center;color:var(--text-faint)}.logs-viewer__line{display:flex;padding:0 16px;transition:background .1s}.logs-viewer__line:hover{background:var(--surface-hover)}.logs-viewer__line--error{background:#fb6f6f0f}.logs-viewer__line--error .logs-viewer__line-text{color:var(--red)}.logs-viewer__line--warn{background:#f5b9450f}.logs-viewer__line--warn .logs-viewer__line-text{color:var(--amber)}.logs-viewer__line--debug .logs-viewer__line-text{color:var(--text-faint)}.logs-viewer__line-num{width:48px;padding-right:12px;color:var(--text-ghost);text-align:right;flex-shrink:0;-webkit-user-select:none;user-select:none}.logs-viewer__line-text{flex:1;color:var(--text-code);white-space:pre-wrap;word-break:break-all}.logs-viewer__highlight{background:#f5b94559;color:var(--text);border-radius:2px;padding:0 1px}.fleet-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width: 768px){.fleet-kpis{grid-template-columns:repeat(2,1fr)}}.fleet-warnrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;background:#f5b9451f;border:1px solid rgba(245,185,69,.22);border-radius:6px;color:#f5b945;font-size:12px}.fleet-ico{display:inline-flex;padding:8px;border-radius:6px;background:var(--accent-bg);color:var(--accent-bright)}.fleet-statbox{padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;text-align:center}.fleet-statbox.is-green{background:#3ddc971f;border-color:#3ddc9738}.fleet-statbox.is-red{background:#fb6f6f1f;border-color:#fb6f6f38}.fleet-statbox.is-amber{background:#f5b9451f;border-color:#f5b94538}.fleet-statrow{background:var(--bg-elevated);border:1px solid var(--border-subtle)}.fleet-predbox{padding:16px;border-radius:8px;border:1px solid var(--border-default)}.fleet-predbox.is-red{background:#fb6f6f1f;border-color:#fb6f6f38}.fleet-predbox.is-amber{background:#f5b9451f;border-color:#f5b94538}.fleet-modal{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:8px;box-shadow:var(--shadow-lg)}.fleet-heatmap{width:100%}.fleet-heatmap__header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.fleet-heatmap__row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;align-items:center;border-bottom:1px solid var(--border-subtle);transition:background .15s}.fleet-heatmap__row:hover{background:var(--bg-hover)}.fleet-heatmap__row:last-child{border-bottom:none}.fleet-heatmap__server{display:flex;align-items:center;gap:8px;font-weight:500;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-heatmap__cell{text-align:center;padding:4px 8px;border-radius:4px;font-size:.8125rem;font-weight:500;font-variant-numeric:tabular-nums;transition:background-color .3s;background:var(--card-bg)}.fleet-heatmap__cell.is-empty{background:var(--card-bg);color:inherit}.fleet-heatmap__cell.is-low{background:var(--green);color:inherit}.fleet-heatmap__cell.is-medium{background:var(--amber);color:inherit}.fleet-heatmap__cell.is-high{background:#f97316;color:#fff}.fleet-heatmap__cell.is-critical{background:var(--red);color:#fff}.fleet-heatmap__label{text-align:center}.fleet-heatmap__legend-dot{display:inline-block;width:12px;height:12px;border-radius:4px}.fleet-heatmap__legend-dot.is-low{background:var(--green)}.fleet-heatmap__legend-dot.is-medium{background:var(--amber)}.fleet-heatmap__legend-dot.is-high{background:#f97316}.fleet-heatmap__legend-dot.is-critical{background:var(--red)}@media (max-width: 768px){.fleet-heatmap__header,.fleet-heatmap__row{grid-template-columns:1.5fr 1fr 1fr 1fr}.fleet-heatmap__header>:nth-child(5),.fleet-heatmap__header>:nth-child(6),.fleet-heatmap__row>:nth-child(5),.fleet-heatmap__row>:nth-child(6){display:none}}.server-templates-page .compliance-bar{margin:24px 0;padding:24px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-default)}.server-templates-page .compliance-bar__stats{display:flex;gap:32px;margin-bottom:16px}.server-templates-page .compliance-bar__progress{height:8px;background:var(--border-default);border-radius:4px;overflow:hidden}.server-templates-page .compliance-bar__progress .progress-fill{height:100%;background:#3ddc97;border-radius:4px;transition:width .3s ease}.server-templates-page .stat-item{display:flex;flex-direction:column}.server-templates-page .stat-item__value{font-size:1.5rem;font-weight:700}.server-templates-page .stat-item__label{font-size:.8rem;color:var(--text-tertiary);text-transform:uppercase}.server-templates-page .stat-item--success .stat-item__value{color:#3ddc97}.server-templates-page .stat-item--danger .stat-item__value{color:#fb6f6f}.server-templates-page .stat-item--muted .stat-item__value{color:var(--text-tertiary)}.server-templates-page .templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;margin-top:24px}.server-templates-page .template-card{padding:24px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:border-color .15s}.server-templates-page .template-card:hover{border-color:var(--accent-primary)}.server-templates-page .template-card__header{display:flex;justify-content:space-between;align-items:center}.server-templates-page .template-card__header h3{margin:0}.server-templates-page .template-card__desc{color:var(--text-secondary);font-size:.9rem;margin:0}.server-templates-page .template-card__meta{display:flex;gap:16px;font-size:.85rem;color:var(--text-tertiary)}.server-templates-page .template-card__spec{display:flex;flex-wrap:wrap;gap:4px}.server-templates-page .template-card__spec span{font-size:.8rem;padding:2px 8px;background:var(--bg-hover);border-radius:4px}.server-templates-page .template-card__actions{display:flex;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-default)}.server-templates-page .server-select-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.server-templates-page .server-select-item{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:6px;cursor:pointer;transition:background-color .15s}.server-templates-page .server-select-item:hover{background:var(--bg-hover)}.server-packages{display:flex;flex-direction:column;gap:1.25rem}.server-packages__toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.server-packages__search{display:flex;gap:.5rem;flex:1 1 320px}.server-packages__actions{display:flex;gap:.5rem}.server-packages__presets h3,.server-packages__results h3,.server-packages__installed h3{margin:0 0 .5rem;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.server-packages__chips{display:flex;flex-wrap:wrap;gap:.5rem}.server-packages__chip{padding:.4rem .85rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);cursor:pointer;font-family:var(--mono);font-size:12px;transition:background .12s ease,border-color .12s ease,color .12s ease}.server-packages__chip:hover{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-bright)}.server-packages__list{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.server-packages__list-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid var(--border-soft);transition:background .12s}.server-packages__list-item:last-child{border-bottom:0}.server-packages__list-item:hover{background:var(--surface-2)}.server-packages__list-name{font-family:var(--mono);font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.server-packages__raw{max-height:320px;overflow:auto;padding:.75rem;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-code);color:var(--text-dim);font-family:var(--mono);font-size:12px;white-space:pre-wrap}.server-packages__hint{font-size:.85rem;color:var(--text-dim)}.server-packages__remove-tip{font-size:12.5px;padding:.75rem;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.server-packages__remove-form{display:inline-flex;gap:.5rem;margin-left:.5rem;align-items:center}.system-status-card{grid-column:span 2}.system-status-card__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-soft)}.system-status-card__header h3{margin:0;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.system-status-card__title{display:flex;align-items:center;gap:.5rem}.system-status-card__header-meta{display:flex;align-items:center;gap:.65rem;font-size:.85rem;color:var(--text-dim)}.system-status-card__probed-at{font-family:var(--mono);font-size:11px;color:var(--text-faint);font-variant-numeric:tabular-nums}.system-status-card__rows{display:flex;flex-direction:column;gap:0}.system-status-card__row{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--border-soft);min-height:40px}.system-status-card__row:last-child{border-bottom:none}.system-status-card__row-label{font-family:var(--mono);font-size:10.5px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.system-status-card__row-value{font-size:.875rem;color:var(--text);display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.system-status-card__chips{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.system-status-card__paths{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.docker-tab__error{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;margin-bottom:.75rem;border:1px solid rgba(251,111,111,.35);border-radius:var(--radius-sm);background:var(--red-bg);color:var(--red);font-size:.9rem}.docker-empty-state{padding:1.5rem;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.docker-empty-state h4{margin:0 0 .5rem}.docker-empty-state ul{margin:.5rem 0;padding-left:1.25rem}.docker-empty-state code{font-family:var(--mono);font-size:12px;padding:.05rem .3rem;border-radius:.25rem;background:var(--surface-3)}.cloudflared-login-prompt p{margin:0 0 .75rem}.cloudflared-login-card{padding:1rem;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--surface);display:flex;flex-direction:column;gap:.75rem}.cloudflared-login-card--success{border-color:#3ddc9759;background:var(--green-bg)}.cloudflared-login-card--error{border-color:#fb6f6f59;background:var(--red-bg)}.cloudflared-login-card__actions{display:flex;gap:.5rem;flex-wrap:wrap}.cloudflared-login-card__hint{font-size:.85rem;color:var(--text-dim);margin:0}.job-progress-modal__log{max-height:60vh;overflow:auto;padding:.75rem;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-code);color:var(--text-code);font-family:var(--mono);font-size:12px;white-space:pre-wrap;margin:0}.server-services{display:flex;flex-direction:column;gap:1rem}.server-services__toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.server-services__search{flex:1 1 280px}.server-services__filters,.server-services__actions{display:flex;gap:.4rem}.server-services__table{width:100%;border-collapse:collapse;font-size:13px}.server-services__table th,.server-services__table td{padding:11px 12px;text-align:left;vertical-align:middle}.server-services__table th{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border);white-space:nowrap}.server-services__table td{color:var(--text-dim);border-bottom:1px solid var(--border-soft)}.server-services__table tbody tr{transition:background .12s}.server-services__table tbody tr:hover{background:var(--surface-2)}.server-services__table .mono{font-family:var(--mono);font-size:12px;color:var(--text)}.server-services__desc{color:var(--text-dim);font-size:12.5px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-services__row-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.server-services__logs{max-height:60vh;overflow:auto;padding:.75rem;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-code);color:var(--text-code);font-family:var(--mono);font-size:12px;white-space:pre-wrap;margin:0}.ra-page{display:flex;flex-direction:column;gap:20px}.ra-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:-2px 0 0;max-width:72ch;font-size:13.5px;line-height:1.55;color:var(--text-dim)}.ra-intro p{margin:0}.ra-intro .ra-intro__actions{flex-shrink:0}@media (max-width: 768px){.ra-intro{flex-direction:column;align-items:flex-start;gap:12px}}.ra-loading{display:flex;justify-content:center;padding:40px 0}.ra-list{display:flex;flex-direction:column;gap:16px}.ra-tunnel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .15s}.ra-tunnel:hover{border-color:var(--border-strong)}.ra-tunnel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 20px}.ra-tunnel__info{min-width:0}.ra-tunnel__route{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:14.5px;font-weight:600;color:var(--text)}.ra-tunnel__route .ra-node{display:inline-flex;align-items:center;gap:8px;min-width:0}.ra-tunnel__route .ra-node a{color:inherit;text-decoration:none}.ra-tunnel__route .ra-node a:hover{color:var(--accent-bright);text-decoration:underline}.ra-tunnel__route .ra-node .ra-node__tag{flex-shrink:0;padding:1px 6px;border-radius:999px;background:var(--accent-subtle);color:var(--accent-bright);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.ra-tunnel__route .ra-node__ico{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--text-dim)}.ra-tunnel__route .ra-arrow{color:var(--text-faint);flex-shrink:0}.ra-tunnel__meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.ra-tunnel__meta .ra-dot{opacity:.55}.ra-tunnel__actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.ra-tunnel__warn{display:flex;align-items:flex-start;gap:8px;margin:0 20px 16px;padding:9px 12px;border-radius:9px;background:var(--amber-bg);color:var(--amber);font-size:12px;line-height:1.45}.ra-tunnel__warn svg{flex-shrink:0;margin-top:1px}.ra-svcs{border-top:1px solid var(--border-soft)}.ra-svcs__empty{padding:14px 20px;font-size:12.5px;color:var(--text-faint)}.ra-svc{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;transition:background .12s}.ra-svc+.ra-svc{border-top:1px solid var(--border-soft)}.ra-svc:hover{background:var(--surface-2)}.ra-svc__main{display:flex;align-items:center;gap:10px;min-width:0}.ra-svc__ico{color:var(--text-faint);flex-shrink:0}.ra-svc__host{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:13.5px;font-weight:550;color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ra-svc__host svg{color:var(--text-faint);flex-shrink:0}.ra-svc__host:where(a):hover{color:var(--accent-bright);text-decoration:underline}.ra-svc__host:where(a):hover svg{color:var(--accent-bright)}.ra-svc__port{font-family:var(--mono);font-size:12px;color:var(--text-faint);flex-shrink:0}.ra-svc__flags{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;color:var(--text-faint)}.ra-svc__flags .ra-flag--ssl{color:var(--green)}.ra-svc__right{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}@media (max-width: 768px){.ra-tunnel__head{flex-direction:column;gap:12px}.ra-tunnel__actions{width:100%}.ra-svc{flex-direction:column;align-items:flex-start;gap:10px}.ra-svc__right{width:100%;justify-content:space-between}}.workspaces-page .wp-list{padding:16px}.workspaces-page .modal-body h4{margin:0 0 12px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.workspaces-page .modal-body hr{margin:20px 0;border:none;border-top:1px solid var(--border-soft)}.workspaces-page .modal-body .form-group label{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.workspaces-page .modal-body .form-hint{display:block;margin-top:8px;font-family:var(--mono);font-size:11px;line-height:1.5;color:var(--text-faint)}.workspaces-page .ws-rows{display:flex;flex-direction:column}.workspaces-page .ws-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--border-soft)}.workspaces-page .ws-row:last-child{border-bottom:none}.workspaces-page .ws-row__av{border-radius:50%}.workspaces-page .ws-row__id{flex:1;min-width:0}.workspaces-page .ws-row__id strong{font-size:13px;font-weight:550;color:var(--text)}.workspaces-page .ws-row__id .sk-tag{margin-left:8px}.workspaces-page .ws-row__sub{margin-top:2px;font-family:var(--mono);font-size:11px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-pick-label{margin:16px 0 8px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-ghost)}.ws-pick{width:100%;max-height:260px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface)}.ws-pick::-webkit-scrollbar{width:6px;height:6px}.ws-pick::-webkit-scrollbar-track{background:var(--bg-body)}.ws-pick::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:4px}.ws-pick::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.ws-pick__item{display:flex;align-items:center;gap:11px;padding:10px 14px;cursor:pointer;transition:background .12s,border-color .12s}.ws-pick__item+.ws-pick__item{border-top:1px solid var(--border-soft)}.ws-pick__item:hover{background:var(--accent-bg-soft)}.ws-pick__item:hover .ws-pick__plus{color:var(--accent-bright);transform:scale(1.1)}.ws-pick__tile{flex-shrink:0;border-radius:8px}.ws-pick__name{flex:1;min-width:0;font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-pick__plus{flex-shrink:0;color:var(--text-ghost);transition:color .12s,transform .12s}.ws-detail__back{display:inline-flex;align-items:center;gap:4px;margin:16px 0 12px;font-family:var(--mono);font-size:11.5px;color:var(--text-faint);text-decoration:none;transition:color .14s}.ws-detail__back:hover{color:var(--accent-bright)}.ws-detail__header{display:flex;align-items:center;gap:16px;padding:18px 20px;background:linear-gradient(135deg,var(--surface),var(--surface-2));border:1px solid var(--border-soft);border-radius:var(--radius)}.ws-detail__header .ws-detail__tile{border-radius:14px;flex-shrink:0}.ws-detail__info{flex:1;min-width:0}.ws-detail__title{display:flex;align-items:center;gap:12px}.ws-detail__title h1{margin:0;font-size:21px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.ws-detail__meta{display:flex;align-items:center;gap:7px;margin-top:5px;font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.ws-detail__meta .dotsep{color:var(--text-ghost)}.ws-detail__actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}.ws-detail__desc{margin:12px 0 0;font-size:13px;line-height:1.55;color:var(--text-dim);max-width:720px}.ws-detail__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0 20px}@media (max-width: 768px){.ws-detail__grid{grid-template-columns:1fr}}.ws-detail__card{padding:16px 18px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius)}.ws-detail__card h3{margin:0 0 8px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ws-detail__stats{margin:12px 0 0}.ws-resource-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ws-resource-stats__item{padding:12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);text-align:center;transition:background .12s,border-color .12s}.ws-resource-stats__item:hover{background:var(--surface-hover);border-color:var(--border-strong)}.ws-resource-stats__value{font-family:var(--mono);font-size:24px;font-weight:600;color:var(--text);line-height:1.2}.ws-resource-stats__label{margin-top:4px;font-size:11.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.ws-detail__tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-soft)}.ws-detail__tab{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:13px;color:var(--text-dim);cursor:pointer;transition:color .14s,border-color .14s}.ws-detail__tab:hover{color:var(--text)}.ws-detail__tab.is-active{color:var(--accent-bright);border-bottom-color:var(--accent);font-weight:500}.ws-detail__tabcount{font-family:var(--mono);font-size:11px;color:var(--text-ghost)}.ws-detail__pane{margin-top:16px}.ws-detail__tablecard{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.ws-detail__rowactions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.ws-detail__manage{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-faint);cursor:pointer;white-space:nowrap;transition:color .14s}.ws-detail__manage:hover{color:var(--accent-bright)}.main-content:has(.ws-detail-page){padding:0}@media (max-width: 768px){.main-content:has(.ws-detail-page){padding:calc(76px + env(safe-area-inset-top)) 20px 20px}}.ws-detail-page{gap:0}.ws-detail-page .ws-detail-topbar{padding:10px 16px;flex-wrap:wrap;row-gap:8px}.ws-detail-page .ws-detail-topbar .sk-topbar__spacer{display:none}.ws-detail-page .ws-detail-topbar .sk-topbar__titles{flex-shrink:0}.ws-detail-page .ws-detail-topbar .ws-crumbs{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.ws-detail-page .ws-detail-topbar .ws-crumbs a{color:var(--text-dim);text-decoration:none}.ws-detail-page .ws-detail-topbar .ws-crumbs a:hover{color:var(--accent-bright)}.ws-detail-page .ws-detail-topbar .ws-crumbs__sep{color:var(--text-ghost)}.ws-detail-page .ws-detail-topbar .ws-crumbs__cur{color:var(--text)}.ws-detail-page .ws-detail-topbar .sk-topbar__actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.ws-detail-page .app-detail-body{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1200px;margin-inline:auto;padding:24px 24px 40px}.ws-detail-page .app-detail-header{gap:16px;padding:4px 0 0;background:none;border:none;border-radius:0}.ws-detail-page .ws-detail__tile{border-radius:14px}.ws-detail-page .ws-detail__desc{margin:0;font-size:13px;line-height:1.55;color:var(--text-dim);max-width:720px}.ws-detail-page .app-detail-tabs{flex-wrap:wrap;overflow-x:visible;row-gap:2px}.ws-detail-page .app-detail-tab--end{margin-left:auto}.workspace-color-input{width:48px;height:32px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer}.workspace-row-actions{display:flex;gap:8px;flex-shrink:0}.ws-nav-role{margin-top:12px}.ws-nav-role__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin-bottom:8px}.ws-nav-role__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.ws-nav-role__item{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text);cursor:pointer}.ws-nav-role__item .ui-checkbox{flex-shrink:0}.ws-settings{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}@media (max-width: 768px){.ws-settings{grid-template-columns:1fr}}.ws-settings__nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:16px}@media (max-width: 768px){.ws-settings__nav{position:static}}.ws-settings__group+.ws-settings__group{margin-top:16px}.ws-settings__grouplabel{padding:0 12px;margin-bottom:6px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ws-settings__navitem{display:flex;width:100%;align-items:center;gap:9px;padding:9px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font-size:13px;cursor:pointer;transition:background-color .14s,color .14s}.ws-settings__navitem:hover{background:var(--surface-hover);color:var(--text)}.ws-settings__navitem.is-active{background:var(--accent-bg);color:var(--accent-bright);font-weight:500}.ws-settings__content{min-width:0;display:flex;flex-direction:column;gap:16px}.ws-settings__section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--text)}.ws-settings__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}.ws-settings__management .ws-settings__actions-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.dns-zones-page .dns-layout{display:grid;grid-template-columns:320px 1fr;gap:24px;margin-top:24px}@media (max-width: 900px){.dns-zones-page .dns-layout{grid-template-columns:1fr}}.dns-zones-page .dns-zones-list{display:flex;flex-direction:column;gap:4px}.dns-zones-page .dns-zone-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;cursor:pointer;transition:border-color .15s}.dns-zones-page .dns-zone-item:hover,.dns-zones-page .dns-zone-item.active{border-color:var(--accent-primary)}.dns-zones-page .dns-zone-item__info{display:flex;flex-direction:column;gap:2px}.dns-zones-page .dns-zone-item__actions{display:flex;gap:4px}.dns-zones-page .dns-records-panel{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;padding:24px}.dns-zones-page .dns-records-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dns-zones-page .dns-records-panel__header h2{margin:0}.dns-zones-page .dns-records-panel__actions{display:flex;gap:8px}.dns-zones-page .dns-records-panel__seg{margin-bottom:16px}.dns-zones-page .dns-mirror__status{padding:16px 0;color:var(--text-dim);font-size:.85rem}.dns-zones-page .dns-mirror__status--error{color:var(--red)}.dns-zones-page .dns-mirror__summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px;margin:0 0 16px;font-size:.85rem;color:var(--text-dim)}.dns-zones-page .dns-mirror__count{font-weight:600;color:var(--text)}.dns-zones-page .dns-mirror__hint{color:var(--text-dim)}.dns-zones-page .dns-mirror__row--external{opacity:.7}.dns-zones-page .dns-mirror__row--external .sk-cell-mono{color:var(--text-dim)}.dns-zones-page .text-mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.85rem}.dns-zones-page .propagation-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-default)}.dns-zones-page .propagation-row:last-child{border-bottom:none}.dns-zones-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dns-zones-page .dns-managed-link{display:flex;align-items:center;gap:8px;width:100%;padding:16px;margin-bottom:4px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;color:var(--text);font-size:.9rem;font-weight:600;text-align:left;cursor:pointer;transition:border-color .15s}.dns-zones-page .dns-managed-link:hover,.dns-zones-page .dns-managed-link.active{border-color:var(--accent-primary)}.dns-zones-page .dns-managed-link svg{color:var(--text-dim);flex-shrink:0}.dns-zones-page .dns-managed__hint{margin:-8px 0 16px;font-size:.85rem;color:var(--text-dim)}.dns-zones-page .dns-managed__count{font-size:.85rem;color:var(--text-dim);align-self:center}.dns-zones-page .dns-managed__name{margin-left:8px}.dns-zones-page .dns-managed__action-cell{text-align:right;white-space:nowrap}.dns-zones-page .dns-managed__prop-row td{padding:0 16px 8px}.dns-zones-page .dns-managed__prop{padding:8px 16px;background:var(--surface-2);border-radius:6px}.dns-zones-page .dns-source-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:5px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.03em;background:var(--surface-3);color:var(--text-dim)}.dns-rtype{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.04em;background:var(--surface-3);color:var(--text-dim)}.dns-rtype--a,.dns-rtype--aaaa,.dns-rtype--ns{background:var(--accent-bg);color:var(--accent-bright)}.dns-rtype--cname{background:var(--cyan-bg);color:var(--cyan)}.dns-rtype--mx{background:var(--amber-bg);color:var(--amber)}.dns-rtype--txt,.dns-rtype--spf{background:var(--green-bg);color:var(--green)}.dns-rtype--soa,.dns-rtype--srv,.dns-rtype--caa{background:var(--violet-bg);color:var(--violet)}.cf-zone__body{padding:24px;max-width:880px}.cf-zone__tabs{margin-top:8px}.cf-zone__error-actions{display:flex;justify-content:center;gap:8px;margin-top:16px}.cf-crumbs{display:inline-flex;align-items:center;gap:4px;font-size:.95rem}.cf-crumbs a{color:var(--text-secondary);text-decoration:none}.cf-crumbs a:hover{color:var(--accent-primary)}.cf-crumbs__sep{color:var(--text-tertiary)}.cf-crumbs__cur{color:var(--text-primary);font-weight:600}.cf-panel{background:var(--bg-card);border:1px solid var(--border-default);border-radius:8px;padding:4px 24px;margin-top:16px}.cf-setting{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--border-default)}.cf-setting:last-child{border-bottom:none}.cf-setting__info{display:flex;flex-direction:column;gap:4px;min-width:0}.cf-setting__label{font-weight:600;color:var(--text-primary)}.cf-setting__help{font-size:.85rem;color:var(--text-tertiary);max-width:52ch;line-height:1.4}.cf-setting__badge{align-self:flex-start;margin-top:2px}.cf-setting__control{flex-shrink:0;display:flex;align-items:center;min-height:32px}.cf-setting__select{min-width:200px}.cf-hsts{display:flex;flex-direction:column;gap:8px;min-width:240px}.cf-hsts__row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.88rem;color:var(--text-secondary)}.cf-actions+.cf-actions{margin-top:16px}.cf-actions .cf-action{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}.cf-actions .cf-action__text h3{margin:0 0 4px;font-size:1rem;display:inline-flex;align-items:center;gap:4px}.cf-actions .cf-action__text p{margin:0;color:var(--text-tertiary);font-size:.88rem;max-width:60ch;line-height:1.5}.cf-actions__note{margin:8px 0 0;color:var(--text-tertiary);font-size:.85rem}.cf-purge-files{border-top:1px solid var(--border-default);padding-top:16px}.cf-purge-files__label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:4px}.cf-purge-files__actions{display:flex;justify-content:flex-end;margin-top:8px}.cf-waf__loading{padding:24px;color:var(--text-tertiary)}.cf-waf__section{padding:16px 0;border-bottom:1px solid var(--border-default)}.cf-waf__section:last-child{border-bottom:none}.cf-waf__heading{margin:0 0 4px;font-size:.95rem}.cf-waf__hint{margin:0 0 8px;color:var(--text-tertiary);font-size:.85rem}.cf-waf__field{margin-bottom:8px}.cf-waf__label{display:block;font-size:.82rem;color:var(--text-secondary);margin-bottom:4px}.cf-waf__select{max-width:320px}.cf-waf__preset-desc{margin:0 0 8px;color:var(--text-secondary);font-size:.85rem;line-height:1.4}.cf-waf__params{display:flex;flex-wrap:wrap;gap:16px}.cf-waf__actions{display:flex;justify-content:flex-end;margin-top:8px}.cf-waf__list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.cf-waf__rule{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:6px}.cf-waf__rule-main{min-width:0;flex:1}.cf-waf__rule-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.cf-waf__rule-desc{font-weight:600;color:var(--text-primary)}.cf-waf__rule-expr{display:block;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.8rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:4px 8px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.cf-waf__rule-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.cf-workers__loading{padding:24px;color:var(--text-tertiary)}.cf-workers__section{padding:16px 0;border-bottom:1px solid var(--border-default)}.cf-workers__section:last-child{border-bottom:none}.cf-workers__heading{margin:0 0 8px;font-size:.95rem}.cf-workers__hint{margin:4px 0 0;color:var(--text-tertiary);font-size:.82rem}.cf-workers__field{margin-bottom:8px}.cf-workers__label{display:block;font-size:.82rem;color:var(--text-secondary);margin-bottom:4px}.cf-workers__code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.82rem}.cf-workers__actions{display:flex;justify-content:flex-end}.cf-workers__list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.cf-workers__item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:6px}.cf-workers__name{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.cf-workers__name code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.85rem;color:var(--text-primary)}.cf-workers__meta{color:var(--text-tertiary);font-size:.8rem}.cf-workers__item-actions{flex-shrink:0}.cf-tunnels__loading{padding:24px;color:var(--text-tertiary)}.cf-tunnels__section{padding:16px 0;border-bottom:1px solid var(--border-default)}.cf-tunnels__section:last-child{border-bottom:none}.cf-tunnels__heading{margin:0 0 8px;font-size:.95rem}.cf-tunnels__hint{margin:4px 0 0;color:var(--text-tertiary);font-size:.82rem}.cf-tunnels__field{margin-bottom:8px;max-width:420px}.cf-tunnels__label{display:block;font-size:.82rem;color:var(--text-secondary);margin-bottom:4px}.cf-tunnels__actions{display:flex;justify-content:flex-start}.cf-tunnels__install{margin-top:16px;padding:16px;background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:6px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.cf-tunnels__cmd{display:block;width:100%;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.8rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-all}.cf-tunnels__list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.cf-tunnels__item{padding:16px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:6px}.cf-tunnels__item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cf-tunnels__name{font-weight:600;color:var(--text-primary)}.cf-tunnels__meta{color:var(--text-tertiary);font-size:.8rem;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.cf-tunnels__item-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.cf-tunnels__hostnames{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-default);display:flex;flex-direction:column;gap:8px}.cf-tunnels__host{display:flex;align-items:center;justify-content:space-between;gap:16px}.cf-tunnels__host code{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.82rem;color:var(--text-secondary)}.cf-tunnels__host-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cf-storage__loading{padding:24px;color:var(--text-tertiary)}.cf-storage__section{padding:16px 0;border-bottom:1px solid var(--border-default)}.cf-storage__section:last-child{border-bottom:none}.cf-storage__heading{margin:0 0 8px;font-size:.95rem}.cf-storage__hint{margin:4px 0;color:var(--text-tertiary);font-size:.82rem}.cf-storage__error{margin:4px 0;color:var(--text-tertiary);font-size:.82rem;font-style:italic}.cf-storage__create{display:flex;gap:8px;align-items:center;max-width:420px;margin-bottom:8px}.cf-storage__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cf-storage__item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:6px}.cf-storage__name{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.85rem;color:var(--text-primary)}.status-pages-page .status-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:20px;margin-top:16px;align-items:start}@media (max-width: 960px){.status-pages-page .status-layout{grid-template-columns:1fr}}.status-pages-page .status-pages-list{display:flex;flex-direction:column;gap:8px;min-width:0}.status-pages-page .status-page-item{width:100%;padding:13px 14px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);color:var(--text);cursor:pointer;display:grid;gap:6px;text-align:left;transition:border-color .15s ease,background .15s ease}.status-pages-page .status-page-item:hover{background:var(--surface-hover);border-color:var(--border-strong)}.status-pages-page .status-page-item.active{background:var(--accent-bg-soft);border-color:var(--accent-dim)}.status-pages-page .status-page-item__top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.status-pages-page .status-page-item__name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pages-page .status-page-item .sk-pill{padding:1px 7px;font-size:10px}.status-pages-page .status-page-item__slug{color:var(--text-faint);font-family:var(--mono);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pages-page .status-page-item__meta{display:inline-flex;align-items:center;gap:5px;color:var(--text-faint);font-family:var(--mono);font-size:10.5px}.status-pages-page .status-page-item__meta svg{color:var(--text-ghost);flex-shrink:0}.status-pages-page .status-pages-list .empty-state{min-height:160px}.status-pages-page .status-detail-panel{min-width:0;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.status-pages-page .status-detail-panel--empty{min-height:320px;display:grid;place-items:center;align-content:center;gap:12px;color:var(--text-faint)}.status-pages-page .status-detail-panel__hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);gap:20px;align-items:stretch;margin-bottom:20px}.status-pages-page .status-detail-panel__hero h2{margin:12px 0 4px;font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.15}.status-pages-page .status-detail-panel__hero p{margin:0;color:var(--text-dim);font-size:13px;max-width:760px}@media (max-width: 1100px){.status-pages-page .status-detail-panel__hero{grid-template-columns:1fr}}.status-pages-page .status-overall-pill{font-size:12px;padding:4px 11px}.status-pages-page .comp-dots{display:flex;gap:3px;flex-wrap:wrap;margin-top:12px}.status-pages-page .comp-dots i{width:8px;height:8px;border-radius:2px;background:var(--green)}.status-pages-page .comp-dots i.degraded{background:var(--amber)}.status-pages-page .comp-dots i.down{background:var(--red)}.status-pages-page .comp-dots i.maintenance{background:var(--cyan)}.status-pages-page .status-url-card{display:grid;gap:12px;align-content:start;padding:16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.status-pages-page .status-url-card>span{color:var(--text-faint);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.status-pages-page .status-url-card code{min-width:0;overflow-wrap:anywhere;color:var(--text);font-family:var(--mono);font-size:12.5px;line-height:1.5}.status-pages-page .status-url-card>div{display:flex;flex-wrap:wrap;gap:8px}.status-pages-page .status-detail-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.status-pages-page .status-detail-metrics .sk-spec-card{background:var(--surface-2)}.status-pages-page .status-detail-metrics .sk-spec-card__value{font-family:var(--mono);font-size:19px;letter-spacing:-.01em}@media (max-width: 720px){.status-pages-page .status-detail-metrics{grid-template-columns:1fr}}.status-pages-page .status-actions-bar{display:flex;justify-content:flex-end;margin:16px 0}.status-pages-page .components-list,.status-pages-page .incidents-list{display:grid;gap:16px}.status-pages-page .component-group{min-width:0;padding:16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.status-pages-page .component-group h3{margin:0 0 8px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.status-pages-page .component-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,auto) auto;gap:16px;align-items:center;padding:12px 0}.status-pages-page .component-row:last-child{padding-bottom:0}.status-pages-page .component-row+.status-pages-page .component-row{border-top:1px solid var(--border-soft)}.status-pages-page .component-row__info{min-width:0;display:flex;align-items:center;gap:12px}.status-pages-page .component-row__info>div{min-width:0;display:grid;gap:3px}.status-pages-page .component-row__info strong{font-size:13.5px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pages-page .component-row__info span{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pages-page .component-row__stats{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.status-pages-page .component-row__stats>span{font-family:var(--mono);font-size:11px;color:var(--text-faint);white-space:nowrap}.status-pages-page .component-row__actions{display:flex;justify-content:flex-end;gap:8px}@media (max-width: 1180px){.status-pages-page .component-row{grid-template-columns:1fr}.status-pages-page .component-row__stats,.status-pages-page .component-row__actions{justify-content:flex-start}}.status-pages-page .status-dot{width:9px;height:9px;border-radius:3px;flex:0 0 auto}.status-pages-page .status-dot--success{background:var(--green);box-shadow:0 0 6px var(--green)}.status-pages-page .status-dot--warning{background:var(--amber);box-shadow:0 0 6px var(--amber)}.status-pages-page .status-dot--danger{background:var(--red)}.status-pages-page .status-dot--info{background:var(--cyan)}.status-pages-page .incident-row{display:grid;gap:12px;padding:16px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.status-pages-page .incident-row--investigating{border-color:#fb6f6f4d}.status-pages-page .incident-row--identified{border-color:#f5b9454d}.status-pages-page .incident-row--monitoring{border-color:#49c7f04d}.status-pages-page .incident-row--resolved{border-color:var(--border-soft)}.status-pages-page .incident-row__header{display:flex;justify-content:space-between;gap:12px}.status-pages-page .incident-row__header>div:first-child{min-width:0}.status-pages-page .incident-row__header>div:first-child strong{display:block;margin-bottom:3px;font-size:13.5px;font-weight:550}.status-pages-page .incident-row__header>div:first-child span{color:var(--text-faint);font-family:var(--mono);font-size:11px}.status-pages-page .incident-row__badges{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px}.status-pages-page .incident-row p{margin:0;color:var(--text-dim);font-size:13px;line-height:1.5}.status-pages-page .incident-row__actions{display:flex;flex-wrap:wrap;gap:8px}.status-pages-page .inc-state--investigating{color:var(--red);background:var(--red-bg)}.status-pages-page .inc-state--identified{color:var(--amber);background:var(--amber-bg)}.status-pages-page .inc-state--monitoring{color:var(--cyan);background:var(--cyan-bg)}.status-pages-page .inc-state--resolved{color:var(--green);background:var(--green-bg)}.status-pages-page .inc-impact{color:var(--text-faint);background:var(--surface-3)}.status-pages-page .inc-impact--minor{color:var(--cyan);background:var(--cyan-bg)}.status-pages-page .inc-impact--major{color:var(--amber);background:var(--amber-bg)}.status-pages-page .inc-impact--critical{color:var(--red);background:var(--red-bg)}.status-pages-page .incident-timeline{display:grid;gap:12px;padding-left:12px;border-left:1px solid var(--border)}.status-pages-page .incident-timeline>div{display:grid;gap:2px}.status-pages-page .incident-timeline span{color:var(--text-faint);font-family:var(--mono);font-size:10.5px}.status-pages-page .incident-timeline strong{color:var(--text-dim);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.status-pages-page .incident-timeline p{font-size:12.5px}.status-pages-page .status-page-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:center;margin-top:16px}.status-pages-page .status-page-settings>div{min-height:72px;padding:14px 15px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2)}.status-pages-page .status-page-settings>div>span:first-child{display:block;color:var(--text-faint);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.status-pages-page .status-page-settings>div>strong{display:block;margin-top:8px;font-family:var(--mono);font-size:13px;overflow-wrap:anywhere}.status-pages-page .status-page-settings>div>.sk-pill{margin-top:8px}@media (max-width: 960px){.status-pages-page .status-page-settings{grid-template-columns:1fr}}.status-pages-page .status-modal{max-width:640px}.status-pages-page .status-modal .form-group label{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.status-pages-page .status-modal .form-help{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.status-pages-page .status-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media (max-width: 640px){.status-pages-page .status-modal-grid{grid-template-columns:1fr}}.public-status-page{min-height:100vh;padding:clamp(24px,4vw,56px);background:var(--bg-body);color:var(--text-primary)}.public-status-page .public-status-hero,.public-status-page .public-status-summary,.public-status-page .public-status-section,.public-status-page .public-status-shell{width:min(1040px,100%);margin:0 auto}.public-status-page .public-status-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card)}.public-status-page .public-status-hero h1{margin:0;font-size:clamp(2rem,5vw,3.5rem);line-height:1}.public-status-page .public-status-hero p{margin:12px 0 0;color:var(--text-secondary);max-width:720px}@media (max-width: 700px){.public-status-page .public-status-hero{flex-direction:column}}.public-status-page .public-status-badge{min-height:34px;padding:8px 12px}.public-status-page .public-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.public-status-page .public-status-summary>div{padding:16px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card)}.public-status-page .public-status-summary span{display:block;color:var(--text-tertiary);font-size:10px;font-weight:600;text-transform:uppercase}.public-status-page .public-status-summary strong{display:block;margin-top:8px;font-size:20px}@media (max-width: 700px){.public-status-page .public-status-summary{grid-template-columns:1fr}}.public-status-page .public-status-section{margin-top:20px}.public-status-page .public-status-section>header{margin-bottom:12px}.public-status-page .public-status-section h2,.public-status-page .public-status-section h3{margin:0}.public-status-page .public-component-groups,.public-status-page .public-component-list,.public-status-page .public-incident-list{display:grid;gap:12px}.public-status-page .public-component-group{display:grid;gap:8px}.public-status-page .public-component-group>h3{color:var(--text-secondary);font-size:12px}.public-status-page .public-component-row,.public-status-page .public-incident,.public-status-page .public-status-empty,.public-status-page .public-status-shell{padding:16px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card)}.public-status-page .public-component-row{display:flex;justify-content:space-between;gap:16px;align-items:center}.public-status-page .public-component-row>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}.public-status-page .public-component-row>div:first-child span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-status-page .public-component-row__meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;color:var(--text-secondary);font-size:10px}@media (max-width: 760px){.public-status-page .public-component-row{align-items:flex-start;flex-direction:column}.public-status-page .public-component-row__meta{justify-content:flex-start}}.public-status-page .public-incident{display:grid;gap:12px}.public-status-page .public-incident--active{border-color:#f5b94573}.public-status-page .public-incident>div{display:flex;justify-content:space-between;gap:12px}.public-status-page .public-incident h3{font-size:14px}.public-status-page .public-incident span{display:block;margin-top:3px;color:var(--text-tertiary);font-size:10px}.public-status-page .public-incident p{margin:0;color:var(--text-secondary)}.public-status-page .public-status-empty,.public-status-page .public-status-shell--empty{display:grid;place-items:center;gap:8px;min-height:180px;color:var(--text-tertiary);text-align:center}.cloud-provision-page .cloud-servers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.cloud-provision-page .cloud-server-card{padding:24px;display:flex;flex-direction:column;gap:8px}.cloud-provision-page .cloud-server-card__header{display:flex;justify-content:space-between;align-items:center}.cloud-provision-page .cloud-server-card__header h3{margin:0}.cloud-provision-page .cloud-server-card__meta{display:flex;gap:8px;font-size:.85rem;color:var(--text-tertiary)}.cloud-provision-page .cloud-server-card__cost{font-size:1.2rem;font-weight:600;color:var(--accent-primary)}.cloud-provision-page .cloud-server-card__actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-default)}.cloud-provision-page .providers-list{display:flex;flex-direction:column;gap:8px;margin-top:24px}.cloud-provision-page .provider-row{display:flex;align-items:center;gap:16px;padding:16px}.cloud-provision-page .costs-panel{max-width:600px;margin-top:24px;padding:24px}.cloud-provision-page .cost-total{font-size:1.3rem;font-weight:600;margin:16px 0}.cloud-provision-page .cost-breakdown{display:flex;flex-direction:column;gap:8px}.cloud-provision-page .cost-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-default)}.cloud-provision-page .cost-row:last-child{border-bottom:none}.cloud-provision-page .text-mono{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.9rem}.marketplace-page .card{border-radius:8px}.marketplace-page .marketplace-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:20px;padding:24px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card)}.marketplace-page .marketplace-hero__content{min-width:0}.marketplace-page .marketplace-hero__actions{display:flex;justify-content:flex-end}.marketplace-page .marketplace-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--accent-primary);font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.marketplace-page .marketplace-eyebrow svg{width:15px;height:15px}.marketplace-page .page-header-content h1{margin:0 0 8px;font-size:30px;line-height:1.25;letter-spacing:0}.marketplace-page .page-header-content .page-description{max-width:680px;color:var(--text-secondary);font-size:14px;line-height:1.5}.marketplace-page .marketplace-tabs__list{margin-bottom:20px}.marketplace-page .marketplace-tabs__list svg{width:16px;height:16px}.marketplace-page .marketplace-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 220px auto;gap:12px;align-items:center;margin-bottom:24px}.marketplace-page .marketplace-search{position:relative;min-width:0}.marketplace-page .marketplace-search .ui-input{padding-left:42px;background:var(--bg-card)}.marketplace-page .marketplace-search__icon{position:absolute;top:50%;left:16px;z-index:1;width:16px;height:16px;color:var(--text-tertiary);transform:translateY(-50%);pointer-events:none}.marketplace-page .marketplace-category-select{width:100%;height:40px}.marketplace-page .cat-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.marketplace-page .cat-chip{padding:4px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-elevated);color:var(--text-tertiary);font-family:inherit;font-size:12.5px;font-weight:500;text-transform:capitalize;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}.marketplace-page .cat-chip:hover{border-color:var(--border-active);color:var(--text-primary)}.marketplace-page .cat-chip--active{border-color:var(--accent-dim);background:var(--accent-bg);color:var(--accent-bright)}.marketplace-page .marketplace-browse-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:24px;align-items:start}.marketplace-page .marketplace-main-stack,.marketplace-page .plugins-section{display:flex;flex-direction:column;gap:32px;min-width:0}.marketplace-page .marketplace-section{min-width:0}.marketplace-page .marketplace-section__header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}.marketplace-page .marketplace-section__header h2{margin:0;color:var(--text-primary);font-size:18px;font-weight:600;letter-spacing:0}.marketplace-page .marketplace-kicker{margin:0 0 4px;color:var(--text-ghost);font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.marketplace-page .extensions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.marketplace-page .extension-card{display:flex;flex-direction:column;gap:16px;min-height:284px;padding:20px;background:var(--bg-card);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.marketplace-page .extension-card:hover{transform:translateY(-2px);border-color:var(--border-active);box-shadow:var(--shadow-lg)}.marketplace-page .extension-card__topline,.marketplace-page .extension-card__footer,.marketplace-page .extension-card__info,.marketplace-page .extension-card__actions,.marketplace-page .extension-card__signals{display:flex;align-items:center}.marketplace-page .extension-card__topline,.marketplace-page .extension-card__footer{justify-content:space-between;gap:12px}.marketplace-page .extension-card__badges{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.marketplace-page .extension-card__icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:8px;color:var(--accent-primary);background:#6d7cff1f}.marketplace-page .extension-card__icon svg{width:21px;height:21px}.marketplace-page .extension-card__icon--monitoring{color:#49c7f0;background:#49c7f01f}.marketplace-page .extension-card__icon--security{color:#3ddc97;background:#3ddc971f}.marketplace-page .extension-card__icon--deployment{color:#f5b945;background:#f5b9451f}.marketplace-page .extension-card__icon--integration{color:#2496ed;background:#2496ed1f}.marketplace-page .extension-card__icon--ui{color:#ec4899;background:#ec48991f}.marketplace-page .extension-card__body{min-width:0}.marketplace-page .extension-card__body h3{margin:0 0 8px;color:var(--text-primary);font-size:16px;line-height:1.25;letter-spacing:0}.marketplace-page .extension-card__desc{display:-webkit-box;min-height:64px;margin:0;overflow:hidden;color:var(--text-secondary);font-size:14px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.marketplace-page .extension-card__signals{justify-content:space-between;gap:12px;margin-top:auto;color:var(--text-tertiary);font-size:12px}.marketplace-page .extension-card__signals>span{display:inline-flex;align-items:center;gap:8px;min-width:0}.marketplace-page .extension-card__stars{display:inline-flex;align-items:center;gap:2px;color:var(--text-tertiary)}.marketplace-page .extension-card__stars svg{width:13px;height:13px}.marketplace-page .extension-card__stars .is-filled{color:#f5b945;fill:currentColor}.marketplace-page .extension-card__signal-text{color:var(--text-tertiary)}.marketplace-page .extension-card__footer{padding-top:16px;border-top:1px solid var(--border-subtle)}.marketplace-page .extension-card__info{flex-wrap:wrap;gap:8px;min-width:0;color:var(--text-tertiary);font-size:12px}.marketplace-page .marketplace-side-panel{display:flex;flex-direction:column;gap:16px;position:sticky;top:16px}.marketplace-page .marketplace-panel{padding:16px;border:1px solid var(--border-subtle);border-radius:8px;background:#101218eb}.marketplace-page .marketplace-panel__title{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--text-primary);font-size:14px;font-weight:600}.marketplace-page .marketplace-panel__title svg{width:16px;height:16px;color:var(--accent-primary)}.marketplace-page .marketplace-category-list{display:flex;flex-direction:column;gap:8px}.marketplace-page .marketplace-category{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}.marketplace-page .marketplace-category svg{width:15px;height:15px}.marketplace-page .marketplace-category:hover{border-color:var(--border-active);background:var(--bg-hover);color:var(--text-primary)}.marketplace-page .marketplace-category--active{border-color:var(--accent-dim);background:var(--accent-bg);color:var(--accent-bright)}.marketplace-page .marketplace-runtime{display:flex;flex-direction:column;gap:8px}.marketplace-page .marketplace-runtime__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;color:var(--text-secondary);font-size:12px;border-bottom:1px solid var(--border-subtle)}.marketplace-page .marketplace-runtime__row:last-child{border-bottom:none}.marketplace-page .marketplace-runtime__row strong{color:var(--text-primary);font-weight:600}.marketplace-page .marketplace-runtime__row--danger strong{color:#fb6f6f}.marketplace-page .installed-list{display:flex;flex-direction:column;gap:12px}.marketplace-page .installed-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px}.marketplace-page .installed-item__main{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.marketplace-page .installed-item__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border-radius:8px}.marketplace-page .installed-item__icon svg{width:19px;height:19px}.marketplace-page .installed-item__icon--extension{color:#3ddc97;background:#3ddc971f}.marketplace-page .installed-item__icon--local{color:#f5b945;background:#f5b9451f}.marketplace-page .installed-item__icon--plugin{color:var(--accent-primary);background:#6d7cff1f}.marketplace-page .installed-item__content{display:flex;flex-direction:column;gap:4px;min-width:0}.marketplace-page .installed-item__content strong{color:var(--text-primary);font-size:14px}.marketplace-page .installed-item__title-line,.marketplace-page .installed-item__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.marketplace-page .installed-item__description,.marketplace-page .installed-item__error{margin:4px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.5}.marketplace-page .installed-item__error{color:#fb6f6f}.marketplace-page .installed-item--error{border-color:#fb6f6f4d}.marketplace-page .plugin-install-form{padding:20px;border:1px solid var(--border-subtle);border-radius:8px;background:#101218eb}.marketplace-page .plugin-install-form__heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.marketplace-page .plugin-install-form__heading h3{margin:0 0 4px;color:var(--text-primary);font-size:16px;font-weight:600}.marketplace-page .plugin-install-form__heading p{margin:0}.marketplace-page .plugin-install-form__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border-radius:8px;color:var(--accent-primary);background:#6d7cff1f}.marketplace-page .plugin-install-form__icon svg{width:19px;height:19px}.marketplace-page .plugin-install-tabs{display:inline-flex;gap:4px;margin-bottom:16px;padding:4px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-body)}.marketplace-page .plugin-install-tab{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.marketplace-page .plugin-install-tab svg{width:14px;height:14px}.marketplace-page .plugin-install-tab:hover{color:var(--text-primary)}.marketplace-page .plugin-install-tab--active{border-color:var(--accent-primary);background:#6d7cff1f;color:var(--text-primary)}.marketplace-page .plugin-install-source p{margin:0 0 12px;font-size:12px}.marketplace-page .plugin-install-row{display:flex;align-items:center;gap:12px}.marketplace-page .plugin-install-row .ui-input,.marketplace-page .plugin-install-row input[type=text],.marketplace-page .marketplace-file-input{flex:1;min-width:0}.marketplace-page .plugin-file-note{margin-top:8px;color:var(--text-tertiary);font-size:12px}.marketplace-page .marketplace-empty{border-radius:8px}.marketplace-page .marketplace-empty svg{width:30px;height:30px}@media (max-width: 1180px){.marketplace-page .marketplace-browse-grid{grid-template-columns:1fr}.marketplace-page .marketplace-side-panel{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.marketplace-page .marketplace-hero{grid-template-columns:1fr;padding:20px}.marketplace-page .marketplace-hero__actions{justify-content:stretch}.marketplace-page .marketplace-hero__actions .btn{width:100%}.marketplace-page .marketplace-side-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.marketplace-page .marketplace-toolbar,.marketplace-page .extensions-grid{grid-template-columns:1fr}.marketplace-page .installed-item{align-items:flex-start;flex-direction:column}.marketplace-page .installed-item__actions{width:100%}.marketplace-page .installed-item__actions .btn{flex:1}.marketplace-page .plugin-install-row{align-items:stretch;flex-direction:column}.marketplace-page .plugin-install-row .btn{width:100%}}@media (max-width: 640px){.marketplace-page .page-header-content h1{font-size:24px}.marketplace-page .marketplace-side-panel{grid-template-columns:1fr}.marketplace-page .marketplace-section__header,.marketplace-page .extension-card__topline,.marketplace-page .extension-card__footer,.marketplace-page .extension-card__signals{align-items:flex-start;flex-direction:column}.marketplace-page .extension-card__actions,.marketplace-page .extension-card__actions .btn{width:100%}}.styleguide__nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-default)}.styleguide__nav-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:500;color:var(--text-tertiary);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .15s ease}.styleguide__nav-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.styleguide__nav-btn.active{color:var(--accent-primary);background:var(--accent-glow);border-color:var(--accent-primary)}.styleguide__content{min-height:400px}.styleguide__section-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.styleguide__swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.styleguide__swatch{display:flex;flex-direction:column;gap:4px}.styleguide__swatch-preview{width:100%;height:64px;border-radius:8px;border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center}.styleguide__swatch-label{font-size:12px;font-weight:500;color:var(--text-primary)}.styleguide__swatch-token{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;color:var(--text-tertiary)}.styleguide__spacing-bar{background:var(--accent-primary);border-radius:4px;min-width:4px}.styleguide__radius-box{width:64px;height:64px;background:var(--accent-glow);border:2px solid var(--accent-primary)}.styleguide__shadow-box{width:80px;height:80px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border-default)}.styleguide__util-box{padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:6px;font-size:12px;color:var(--text-secondary);text-align:center}.styleguide__split-demo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media (max-width: 1024px){.styleguide__split-demo{grid-template-columns:1fr}}.app-map{display:flex;flex-direction:column;height:100%;min-height:0}.app-map .sk-topbar{flex:0 0 auto}.app-map__viewmeta{display:flex;align-items:center;gap:.5rem;margin:.75rem 0 .5rem;font-size:.82rem;color:var(--text-secondary)}.app-map__viewmeta span{flex:1}.app-map__legend-toggle{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:.75rem;padding:3px 10px;border-radius:4px;cursor:pointer}.app-map__legend-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.app-map__legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem;margin-bottom:.5rem;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;font-size:.75rem;color:var(--text-secondary)}.app-map__legend-item{display:inline-flex;align-items:center;gap:.4rem}.app-map__legend-swatch{display:inline-block;width:12px;height:12px;border:1px solid;border-radius:3px}.app-map__canvas{flex:1 1 auto;min-height:480px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);overflow:hidden;position:relative}.app-map__canvas .react-flow__attribution{display:none}.documentation__search{display:flex;align-items:center;gap:.5rem;min-width:240px;color:var(--text-secondary)}.documentation__search input{min-width:220px}.documentation__group{margin-top:1.25rem}.documentation__group-title{font-size:.72rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .6rem}.documentation__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.5rem}.documentation__list li{display:flex;flex-direction:column;gap:4px;padding:.7rem .85rem;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card);transition:border-color .15s ease,background-color .15s ease}.documentation__list li:hover{background:var(--bg-hover);border-color:var(--border-hover)}.documentation__link{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text-primary);font-size:.88rem;line-height:1.3}.documentation__icon{display:inline-flex;color:var(--text-secondary)}.documentation__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.documentation__path{font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace,monospace;font-size:.72rem;color:var(--text-tertiary);background:var(--bg-elevated);padding:1px 6px;border-radius:4px}.documentation__ext{color:var(--text-tertiary)}.documentation__note{font-size:.75rem;color:var(--text-secondary)}.documentation__empty{color:var(--text-secondary);font-style:italic;padding:1rem}.sidebar .nav-category--dev{margin-top:1.75rem;padding-top:.75rem;border-top:1px dashed var(--border-subtle);color:var(--accent-primary);opacity:.9;display:flex;align-items:center;gap:.4rem}.sidebar .nav-category--dev:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 0 3px #6d7cff2e}.sidebar .nav-item--dev{border:1px dashed transparent}.sidebar .nav-item--dev.active,.sidebar .nav-item--dev:hover{border-color:#6d7cff59}.secrets-page .tabs{margin-top:24px}.secrets-page .tab-content{margin-top:16px}.secrets-page .secrets__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.secrets-page .secrets__code{background:var(--bg-tertiary);padding:4px 8px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.85rem;word-break:break-all}.secrets-page .secrets__value{background:var(--bg-tertiary);padding:4px 8px;border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:.8rem}.gpu-page__loading{display:flex;justify-content:center;padding:32px 0}.gpu-page .gpu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;margin-top:24px}@media (max-width: 640px){.gpu-page .gpu-grid{grid-template-columns:1fr}}.gpu-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:16px}.gpu-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.gpu-card__title{display:inline-flex;align-items:center;gap:8px;min-width:0}.gpu-card__title svg{color:var(--accent-bright);flex-shrink:0}.gpu-card__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gpu-card__index{font-family:var(--mono);font-size:12px;color:var(--text-faint)}.gpu-card__bars{display:flex;flex-direction:column;gap:16px}.gpu-bar__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.gpu-bar__label{font-size:12.5px;color:var(--text-dim)}.gpu-bar__value{font-family:var(--mono);font-size:12px;color:var(--text)}.gpu-bar__track{height:6px;background:var(--surface-3);border-radius:3px;overflow:hidden}.gpu-bar__fill{display:block;height:100%;border-radius:3px;transition:width .6s cubic-bezier(.4,0,.2,1);background:var(--accent-bright)}.gpu-bar__fill.is-green{background:var(--green)}.gpu-bar__fill.is-amber{background:var(--amber)}.gpu-bar__fill.is-red{background:var(--red)}.gpu-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:16px;border-top:1px solid var(--border-soft)}.gpu-stat{display:inline-flex;align-items:center;gap:6px;font-size:13px}.gpu-stat svg{color:var(--text-faint);flex-shrink:0}.gpu-stat__label{color:var(--text-faint);margin-right:auto}.gpu-stat__value{font-family:var(--mono);font-size:12.5px;color:var(--text)}.gpu-stat__sub{color:var(--text-faint)}.gpu-procs{margin-top:24px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:24px}.gpu-procs__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.gpu-procs__head h2{margin:0;font-size:1rem}.gpu-procs__table{width:100%}.ddns-page .ddns-layout{display:grid;grid-template-columns:340px 1fr;gap:24px;margin-top:24px}@media (max-width: 900px){.ddns-page .ddns-layout{grid-template-columns:1fr}}.ddns-page .ddns-create{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:24px;align-self:start}.ddns-page .ddns-create__title{margin:0 0 4px;font-size:1rem}.ddns-page .ddns-create__hint{margin:0 0 16px;font-size:13px;line-height:1.5;color:var(--text-dim)}.ddns-page .ddns-create__warn{margin:8px 0 0;font-size:12.5px;color:var(--amber)}.ddns-page .ddns-create .form-group{margin-bottom:16px}.ddns-page .ddns-hosts{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;overflow-x:auto}.ddns-page .ddns-hosts__table{width:100%}.ddns-page .ddns-hosts__name{display:flex;flex-direction:column;gap:2px}.ddns-page .ddns-hosts__name .text-muted{font-size:12px}.ddns-page .ddns-hosts__actions{display:flex;gap:4px;justify-content:flex-end}.ddns-token-callout{margin-top:24px;background:var(--amber-bg);border:1px solid var(--amber);border-radius:var(--radius);padding:16px 24px}.ddns-token-callout__head{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text)}.ddns-token-callout__head svg{color:var(--amber);flex-shrink:0}.ddns-token-callout__close{margin-left:auto;background:none;border:none;color:var(--text-dim);font-size:20px;line-height:1;cursor:pointer}.ddns-token-callout__close:hover{color:var(--text)}.ddns-token-callout__row{display:flex;align-items:center;gap:8px;margin-top:16px}.ddns-token-callout__label{flex-shrink:0;width:84px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.ddns-token-callout__value{flex:1;min-width:0;background:var(--surface);border:1px solid var(--border-soft);border-radius:4px;padding:4px 8px;font-family:var(--mono);font-size:12px;color:var(--text);word-break:break-all}.queue-page{padding:0;min-height:100%}.queue-page--loading{min-height:58vh;display:flex;align-items:center;justify-content:center}.queue-loading-card{display:inline-flex;align-items:center;gap:12px;padding:20px 24px;border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(135deg,var(--accent-glow),transparent 55%),var(--bg-card);color:var(--text-secondary);box-shadow:var(--shadow-lg)}.queue-loading-card svg{color:var(--accent-primary);animation:queue-pulse 1.5s ease-in-out infinite}@keyframes queue-pulse{0%,to{opacity:1}50%{opacity:.5}}.queue-ops-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;padding:20px}@media (max-width: 1024px){.queue-ops-workspace{grid-template-columns:1fr}}.queue-fleet-rail{display:flex;flex-direction:column;gap:16px;height:fit-content}.queue-rail-section{padding:16px;border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.queue-rail-section-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--text-secondary);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.queue-rail-section-header svg{color:var(--accent-primary)}.queue-rail-section-header--split{justify-content:space-between}.queue-rail-section-header--split button{padding:0;border:none;background:transparent;color:var(--accent-primary);font-size:10px;font-weight:600;cursor:pointer}.queue-rail-section-header--split button:hover{text-decoration:underline}.queue-rail-overview{display:grid;grid-template-columns:1fr 1fr;gap:12px}.queue-group-nav,.queue-status-nav{display:flex;flex-direction:column;gap:4px}.queue-group-nav-item,.queue-status-nav-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-secondary);font-size:12px;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.queue-group-nav-item svg,.queue-status-nav-item svg{flex-shrink:0;color:var(--text-tertiary)}.queue-group-nav-item span,.queue-status-nav-item span{flex:1;display:flex;align-items:center;gap:8px;overflow:hidden}.queue-group-nav-item b,.queue-status-nav-item b{margin-left:auto;padding:2px 8px;border-radius:9999px;background:var(--bg-secondary);color:var(--text-secondary);font-size:10px;font-weight:600}.queue-group-nav-item:hover,.queue-status-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.queue-group-nav-item.active,.queue-status-nav-item.active{background:var(--accent-glow);border-color:var(--accent-primary);color:var(--text-primary)}.queue-group-nav-item.active svg,.queue-status-nav-item.active svg{color:var(--accent-primary)}.queue-status-nav-item span{flex-direction:column;align-items:flex-start;gap:0}.queue-status-nav-item strong{color:var(--text-primary);font-weight:500}.queue-status-nav-item small{color:var(--text-tertiary);font-size:10px;text-transform:lowercase}.queue-status-nav-item--failed.active,.queue-status-nav-item--dead_letter.active{background:#fb6f6f1f;border-color:#fb6f6f}.queue-group-badge{display:inline-flex;align-items:center;padding:1px 8px;border-radius:9999px;background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.queue-main{display:flex;flex-direction:column;min-width:0}.queue-workbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}@media (max-width: 768px){.queue-workbar{flex-direction:column}}.queue-workbar-title{display:flex;flex-direction:column;gap:4px}.queue-workbar-title span{color:var(--accent-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.queue-workbar-title h1{margin:0;color:var(--text-primary);font-size:24px;font-weight:700;letter-spacing:-.02em}.queue-workbar-title em{color:var(--text-tertiary);font-size:12px;font-style:normal}.queue-workbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.queue-workbar-actions .btn{gap:8px}.queue-command-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:12px;border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm)}@media (max-width: 1024px){.queue-command-bar{flex-direction:column;align-items:stretch}}.queue-toolbar{display:flex;gap:12px;flex:1}@media (max-width: 640px){.queue-toolbar{flex-direction:column}}.queue-results-summary{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.queue-results-summary strong{color:var(--text-primary);font-size:18px;font-weight:700}.queue-clear-filters{padding:0;border:none;background:transparent;color:var(--accent-primary);font-size:12px;cursor:pointer}.queue-clear-filters:hover{text-decoration:underline}.queue-table-wrap{border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm);overflow:hidden}.queue-table{width:100%;border-collapse:collapse}.queue-table th,.queue-table td{padding:12px 16px;text-align:left;font-size:12px;border-bottom:1px solid var(--border-subtle)}.queue-table th{color:var(--text-tertiary);font-weight:600;font-size:10px;letter-spacing:.05em;text-transform:uppercase;background:var(--bg-secondary)}.queue-table tbody tr{transition:background .12s ease}.queue-table tbody tr:hover{background:var(--bg-hover)}.queue-table tbody tr.is-clickable{cursor:pointer}.queue-table td{color:var(--text-secondary);vertical-align:middle}.queue-table .col-actions{width:1%;white-space:nowrap;text-align:right}.queue-row-name{display:flex;flex-direction:column;gap:2px}.queue-row-title{color:var(--text-primary);font-weight:600}.queue-row-sub{color:var(--text-tertiary);font-size:10px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.queue-row-group{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);font-size:10px}.queue-row-group svg{color:var(--text-tertiary)}.queue-row-counts{display:flex;flex-wrap:wrap;gap:8px}.queue-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.queue-select{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:12px;padding:8px 12px;color:var(--text-primary);font-size:12px;min-width:160px;height:44px}.queue-select:disabled{opacity:.5;cursor:not-allowed}.queue-select--full{width:100%}.queue-messages-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.queue-messages-selects,.queue-messages-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.queue-payload-preview{display:inline-block;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.queue-send-destination{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.queue-send-destination .queue-send-readonly{padding:8px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px}.queue-message-detail{display:flex;flex-direction:column;gap:12px}.queue-message-detail pre{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;padding:12px;overflow:auto;font-size:12px;max-height:300px}.queue-message-error{color:#fb6f6f;background:#fb6f6f1f;border:1px solid rgba(251,111,111,.22);border-radius:8px;padding:12px}.queue-message-section{margin-top:8px}.modal-header-sub{display:block;color:var(--text-tertiary);font-size:12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.queue-detail{display:flex;flex-direction:column;gap:20px;padding:20px}.queue-back{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:4px 0;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer}.queue-back svg{color:var(--text-tertiary)}.queue-back:hover{color:var(--accent-primary)}.queue-back:hover svg{color:var(--accent-primary)}.queue-detail-header{display:flex;flex-direction:column;gap:12px}.queue-detail-headline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.queue-detail-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.queue-detail-actions .btn{gap:8px}.queue-readonly-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:9999px;background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.queue-readonly-badge svg{color:var(--text-tertiary)}.queue-detail-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.queue-detail-body{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.queue-detail-body.has-panel{grid-template-columns:minmax(0,1fr) 380px}@media (max-width: 1024px){.queue-detail-body.has-panel{grid-template-columns:minmax(0,1fr)}}.queue-detail-main{min-width:0}.queue-detail-panel{border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm);padding:16px;position:sticky;top:16px;max-height:calc(100vh - 24px);overflow:auto}.queue-detail-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.queue-detail-panel-header h2{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.queue-panel-close{display:inline-flex;padding:4px;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer}.queue-panel-close:hover{color:var(--text-primary);background:var(--bg-hover)}.queue-detail-panel-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-subtle)}.queue-table tbody tr.is-selected{background:var(--accent-glow)}.telemetry-page{padding:16px}.telemetry-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-bottom:24px}.telemetry-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;border-radius:6px;background:var(--bg-card);border:1px solid var(--border-default)}.telemetry-stat__count{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.telemetry-stat__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-top:4px}.telemetry-stat--critical{border-top:3px solid #fb6f6f}.telemetry-stat--error{border-top:3px solid #e95f5f}.telemetry-stat--warning{border-top:3px solid #f5b945}.telemetry-stat--info{border-top:3px solid #49c7f0}.telemetry-stat--debug{border-top:3px solid var(--text-tertiary)}.telemetry-stat--total{border-top:3px solid var(--accent-primary)}.telemetry-filters{background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;margin-bottom:24px;overflow:hidden}.telemetry-filters__toggle{display:flex;align-items:center;gap:8px;width:100%;padding:16px;background:transparent;border:none;color:var(--text-primary);font-weight:500;cursor:pointer}.telemetry-filters__toggle:hover{background:var(--bg-hover)}.telemetry-filters__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:9999px;background:var(--accent-primary);color:#fff;font-size:.75rem;font-weight:600}.telemetry-filters__body{padding:16px;border-top:1px solid var(--border-default)}.telemetry-filters__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.telemetry-filters__grid select,.telemetry-filters__grid input{width:100%;padding:8px;border-radius:4px;border:1px solid var(--border-default);background:var(--bg-card);color:var(--text-primary);font-size:.875rem}.telemetry-filters__search{position:relative;display:flex;align-items:center;margin-bottom:16px}.telemetry-filters__search svg{position:absolute;left:8px;color:var(--text-tertiary)}.telemetry-filters__search input{width:100%;padding-left:2rem}.telemetry-filters__actions{display:flex;gap:8px}.telemetry-list{display:flex;flex-direction:column;gap:8px}.telemetry-item{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--bg-card);border:1px solid var(--border-default);border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.telemetry-item:hover{background:var(--bg-hover);border-color:var(--border-hover)}.telemetry-item__severity{flex-shrink:0;margin-top:2px}.telemetry-item__content{flex:1;min-width:0}.telemetry-item__header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.telemetry-item__source{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.telemetry-item__type{font-size:.75rem;font-weight:500;color:var(--accent-primary);background:var(--accent-bg-soft);padding:2px 8px;border-radius:4px}.telemetry-item__time{font-size:.75rem;color:var(--text-tertiary);margin-left:auto}.telemetry-item__message{font-size:.875rem;color:var(--text-primary);margin-bottom:4px;word-break:break-word}.telemetry-item__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.telemetry-item__badge{font-size:.75rem;color:var(--text-tertiary);background:var(--bg-hover);padding:2px 8px;border-radius:4px}.telemetry-item__correlation{display:inline-flex;align-items:center;gap:2px;font-size:.75rem;color:var(--accent-primary);background:transparent;border:none;padding:0;cursor:pointer}.telemetry-item__correlation:hover{text-decoration:underline}.telemetry-item--critical{border-left:3px solid #fb6f6f}.telemetry-item--error{border-left:3px solid #e95f5f}.telemetry-item--warning{border-left:3px solid #f5b945}.telemetry-item--info{border-left:3px solid #49c7f0}.telemetry-item--debug{border-left:3px solid var(--text-tertiary)}.telemetry-empty,.telemetry-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;color:var(--text-tertiary);gap:16px}.telemetry-load-more{align-self:center;margin-top:16px}.telemetry-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:50;display:flex;justify-content:flex-end}.telemetry-drawer{width:100%;max-width:560px;height:100%;background:var(--bg-card);border-left:1px solid var(--border-default);display:flex;flex-direction:column;overflow:hidden}.telemetry-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-default)}.telemetry-drawer__header h3{margin:0;font-size:1rem;font-weight:600}.telemetry-drawer__body{flex:1;overflow-y:auto;padding:16px}.telemetry-detail__row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0;border-bottom:1px solid var(--border-default);font-size:.875rem}.telemetry-detail__row span:first-child{color:var(--text-tertiary);flex-shrink:0}.telemetry-detail__row span:last-child,.telemetry-detail__row code{color:var(--text-primary);word-break:break-word;text-align:right}.telemetry-detail__severity{text-transform:uppercase;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:4px}.telemetry-detail__severity--critical{background:#fb6f6f1f;color:#fb6f6f}.telemetry-detail__severity--error{background:#e95f5f26;color:#e95f5f}.telemetry-detail__severity--warning{background:#f5b9451f;color:#f5b945}.telemetry-detail__severity--info{background:#49c7f01f;color:#49c7f0}.telemetry-detail__severity--debug{background:#646b7a26;color:var(--text-tertiary)}.telemetry-detail__payload{margin-top:16px}.telemetry-detail__payload span{display:block;font-size:.875rem;color:var(--text-tertiary);margin-bottom:8px}.telemetry-detail__payload pre{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:6px;padding:16px;overflow-x:auto;font-size:.8125rem;color:var(--text-primary)}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.jobs-page{padding:16px}.jobs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-bottom:24px}.jobs-filters{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:16px}.jobs-filters label{display:flex;flex-direction:column;gap:4px;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.jobs-filters select{padding:8px;border-radius:4px;border:1px solid var(--border-default);background:var(--bg-card);color:var(--text-primary);font-size:.875rem;min-width:160px}.jobs-table-wrap{overflow-x:auto;border:1px solid var(--border-default);border-radius:6px;background:var(--bg-card);margin-bottom:24px}.jobs-table{width:100%;border-collapse:collapse;font-size:.875rem}.jobs-table th{text-align:left;padding:8px 16px;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border-default);white-space:nowrap}.jobs-table td{padding:8px 16px;border-bottom:1px solid var(--border-default);color:var(--text-primary);vertical-align:middle}.jobs-table tbody tr:last-child td{border-bottom:none}.jobs-table tr.is-disabled td{opacity:.55}.jobs-row{cursor:pointer;transition:background .15s ease}.jobs-row:hover,.jobs-row.is-open{background:var(--bg-hover)}.jobs-caret svg{color:var(--text-tertiary);transition:transform .15s ease}.jobs-caret svg.is-open{transform:rotate(90deg)}.jobs-mono{font-family:var(--mono, monospace);font-size:.8125rem}.jobs-owner{color:var(--text-tertiary);font-size:.8125rem}.jobs-when{color:var(--text-tertiary);white-space:nowrap}.jobs-actions{display:flex;gap:4px;justify-content:flex-end;white-space:nowrap}.jobs-detail-row>td{padding:0;background:var(--bg-tertiary)}.jobs-detail{padding:16px 24px}.jobs-detail--loading{color:var(--text-tertiary)}.jobs-detail__grid{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;font-size:.8125rem;margin-bottom:16px}.jobs-detail__grid span:nth-child(odd){color:var(--text-tertiary)}.jobs-detail__grid code{font-family:var(--mono, monospace);color:var(--text-primary);word-break:break-all}.jobs-detail__block{margin-top:8px}.jobs-detail__block>span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:4px}.jobs-detail__block pre{margin:0;background:var(--bg-card);border:1px solid var(--border-default);border-radius:4px;padding:8px 16px;overflow-x:auto;font-size:.8125rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.jobs-detail__block--error pre{color:#fb6f6f;border-color:#fb6f6f}.jobs-section-head{display:flex;align-items:center;gap:8px;margin:24px 0 16px;color:var(--text-primary)}.jobs-section-head svg{color:var(--text-tertiary)}.jobs-section-head h2{margin:0;font-size:1rem;font-weight:600}.jobs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;color:var(--text-tertiary)}
