.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--content-bg);-webkit-text-size-adjust:100%;min-height:100dvh}:root{--sb-bg:#eeece8;--sb-text:#2b2d2f;--sb-section:#888580;--sb-hover:#e2dfd9;--sb-active-bg:#2b2d2f;--sb-active-txt:#eeece8;--sb-active-hover:#3a3c3e;--sb-border:#d8d5d0;--sb-sub-bg:#f0ede8;--sb-log-border:#c0bdb8;--sb-ver-text:#aaa8a4;--topbar-bg:#3e4044;--topbar-border:#333537;--content-bg:#46484c;--card-bg:#3e4044;--card-bg-alt:#363840;--card-border:#383a3c;--card-border-dk:#2a2c2e;--row-hover:#303234;--row-hover-alt:#333537;--txt-primary:#eeece8;--txt-secondary:#ccc;--txt-tertiary:#aaa;--txt-muted:#555;--txt-dim:#666;--txt-ghost:#444;--txt-ph:#888;--accent:#ff6b2b;--accent-hover:#e85a1e}[data-theme="2"]{--sb-bg:#1a3430;--sb-text:#c8ddd8;--sb-section:#6a9a94;--sb-hover:#243e3a;--sb-active-bg:#0e2522;--sb-active-txt:#fff;--sb-active-hover:#1e3834;--sb-border:#243e3a;--sb-sub-bg:#152e2a;--sb-log-border:#2a4a46;--sb-ver-text:#4a7a74;--topbar-bg:#1a3430;--topbar-border:#152e2a;--content-bg:#f0f4f3;--card-bg:#fff;--card-bg-alt:#f0f4f3;--card-border:#dce8e5;--card-border-dk:#c8d8d4;--row-hover:#f0f8f6;--row-hover-alt:#e8f2ef;--txt-primary:#0d1e1b;--txt-secondary:#1a2e2b;--txt-tertiary:#1e3530;--txt-muted:#243a35;--txt-dim:#2a4540;--txt-ghost:#334a45;--txt-ph:#3d5550;--accent:#2a9d8f;--accent-hover:#22877a}.landing{background:radial-gradient(at 60% 40%,#5a5d63 0%,#3a3c40 40%,#23252a 100%);flex-direction:column;min-height:100dvh;display:flex}.landing-nav{flex-shrink:0;justify-content:space-between;align-items:center;padding:1.2rem 2rem;display:flex}.landing-nav-logo{width:auto;height:88px;display:block}.landing-login-btn{color:#6399d2;cursor:pointer;letter-spacing:.08em;background:0 0;border:2px solid #6399d2;border-radius:4px;padding:.4em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.28rem;font-weight:300;transition:color .2s,border-color .2s}.landing-login-btn:hover{color:#89b4e0;border-color:#89b4e0}.landing-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.login-overlay{z-index:100;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-modal{background:#2b2d30;border:1px solid #3a3c40;border-radius:20px;width:90%;max-width:340px;padding:2.2rem 2.2rem 2rem;position:relative;box-shadow:0 8px 40px #00000080}.login-modal-close{color:#ffffff59;cursor:pointer;background:0 0;border:none;padding:.2em .3em;font-size:.85rem;transition:color .15s;position:absolute;top:.8rem;right:1rem}.login-modal-close:hover{color:#ffffffb3}.login-modal-title{color:#ffffff80;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.4rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:500}.container{text-align:center;width:90%;max-width:600px;position:absolute;top:20%;left:50%;transform:translate(-50%)}.accent{color:var(--accent);font-weight:600}h1{color:#fff;letter-spacing:.1em;white-space:nowrap;margin-bottom:.3em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(2.4rem,12vw,6rem);font-weight:300}p.tagline{color:var(--txt-secondary);letter-spacing:.05em;margin-bottom:1.5em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:300}.login-box{flex-direction:column;gap:.8em;width:100%;margin:0 auto;display:flex}.login-input{color:#fff;letter-spacing:.03em;box-sizing:border-box;background:#1e2023;border:1px solid #3a3c40;border-radius:10px;outline:none;width:100%;padding:.65em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;font-weight:300}.login-input::placeholder{color:var(--txt-dim)}.login-input:focus{background:#1e2023;border-color:#6399d2}.login-btn{background:var(--accent);color:#fff;cursor:pointer;letter-spacing:.08em;border:none;border-radius:10px;margin-top:.2em;padding:.7em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;font-weight:400;transition:background .2s,opacity .2s}.login-btn:hover{background:var(--accent-hover)}.login-error{color:#e07070;letter-spacing:.03em;text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:300}.landing .accent{color:#ff6b2b}.landing p.tagline{color:#ccc}.landing .login-input::placeholder{color:#666}.landing .login-btn{background:#ff6b2b}.landing .login-btn:hover{background:#e85a1e}.dashboard{flex-direction:row;min-height:100vh;display:flex}.sidebar{background-color:var(--sb-bg);flex-direction:column;flex-shrink:0;width:210px;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-brand{color:var(--sb-text);letter-spacing:.08em;border-bottom:1px solid var(--sb-border);align-items:center;gap:.6em;padding:1.2em 1em 1.1em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;font-weight:300;display:flex}.sidebar-brand-logo{flex-shrink:0;width:auto;height:28px}.sidebar-brand .accent{color:#ff6b2b}.sidebar-nav{flex:1;padding:1.2em 0;overflow-y:auto}.sidebar-section-label{color:var(--sb-section);letter-spacing:.12em;text-transform:uppercase;padding:0 1.4em .5em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:500}.sidebar-items{margin-bottom:.5em;list-style:none}.sidebar-link{text-align:left;cursor:pointer;width:calc(100% - 1em);color:var(--sb-text);letter-spacing:.02em;background:0 0;border:none;border-radius:6px;align-items:center;gap:.6em;margin:1px .5em;padding:.5em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:400;transition:background .12s,color .12s;display:flex}.sidebar-link:hover{background:var(--sb-hover)}.sidebar-link.active{background:var(--sb-active-bg);color:var(--sb-active-txt);font-weight:500}.sidebar-link.active:hover{background:var(--sb-active-hover)}.sidebar-icon{opacity:.65;flex-shrink:0}.sidebar-link.active .sidebar-icon,.sidebar-chat .sidebar-icon{opacity:1}.sidebar-client-toggle{justify-content:space-between}.sidebar-chevron-icon{opacity:.45;flex-shrink:0;margin-left:auto;transition:transform .2s}.sidebar-chevron-icon.open{transform:rotate(90deg)}.sidebar-submenu{background:var(--sb-sub-bg);border-radius:6px;margin:2px .5em;padding:.25em 0;list-style:none}.sidebar-sublink{text-align:left;cursor:pointer;width:100%;color:var(--sb-text);background:0 0;border:none;padding:.45em 1.4em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;transition:background .12s;display:block}.sidebar-sublink:hover{background:var(--sb-hover)}.sidebar-sublink.active{color:var(--accent);font-weight:600}.sidebar-sublink--reset{color:var(--sb-section);font-style:italic}.sidebar-divider{border:none;border-top:1px solid var(--sb-border);margin:.75em 1em}.sidebar-footer{border-top:1px solid var(--sb-border);padding:0 0 1em}.sidebar-chat{text-align:left;cursor:pointer;width:calc(100% - 1em);color:var(--accent);letter-spacing:.02em;background:0 0;border:none;border-radius:6px;align-items:center;gap:.6em;margin:1px .5em;padding:.5em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:500;transition:background .12s;display:flex}.sidebar-chat:hover{background:var(--sb-hover)}.sidebar-about{margin-bottom:0}.sidebar-footer-divider{border:none;border-top:1px solid var(--sb-border);margin:.6em 1.4em}.sidebar-logout{border:1px solid var(--sb-log-border);color:var(--sb-text);cursor:pointer;letter-spacing:.05em;background:0 0;border-radius:4px;width:calc(100% - 2.8em);margin:0 1.4em;padding:.4em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300;transition:background .15s,border-color .15s}.sidebar-logout:hover{background:var(--sb-hover);border-color:#999}.sidebar-version{color:var(--sb-ver-text);letter-spacing:.05em;text-align:center;margin-top:.6em;padding:0 1.4em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:300}.dashboard-main{flex-direction:column;flex:1;min-height:100vh;display:flex}.topbar{background-color:var(--topbar-bg);border-bottom:1px solid var(--topbar-border);flex-shrink:0;justify-content:flex-end;align-items:center;height:48px;padding:0 1.5rem;display:flex}.topbar-user{flex-direction:column;align-items:flex-end;gap:.1em;display:flex}.topbar-client{color:#6399d2;letter-spacing:.06em;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:500}.topbar-email{color:#fff;letter-spacing:.03em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.dashboard-content{background-color:var(--content-bg);flex:1;justify-content:center;align-items:center;display:flex;overflow-y:auto}:is(.dashboard-content:has(.home-view),.dashboard-content:has(.clients-view)){justify-content:center;align-items:flex-start}:is(.dashboard-content:has(.workflows-pane),.dashboard-content:has(.prefs-view),.dashboard-content:has(.vehicles-view),.dashboard-content:has(.movements-view),.dashboard-content:has(.rc-view),.dashboard-content:has(.fines-view),.dashboard-content:has(.request-wf-view),.dashboard-content:has(.usage-view),.dashboard-content:has(.products-view),.dashboard-content:has(.hero-banner-view),.dashboard-content:has(.bloom-view)){justify-content:flex-start;align-items:flex-start}.dashboard-placeholder{color:#555;letter-spacing:.1em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:300}.vehicles-view,.movements-view{width:100%;padding:2rem}.vehicles-search-bar{align-items:center;margin-bottom:1.25rem;display:inline-flex;position:relative}.vehicles-search-input{background:var(--card-bg-alt);border:1px solid var(--card-border-dk);color:var(--txt-primary);border-radius:20px;outline:none;width:200px;padding:.45rem 2rem .45rem 1rem;font-size:.85rem;transition:border-color .15s,width .2s}.vehicles-search-input::placeholder{color:var(--txt-ph)}.vehicles-search-input:focus{border-color:var(--accent);width:240px}.vehicles-search-clear{color:var(--txt-ph);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1;position:absolute;right:.5rem}.vehicles-search-clear:hover{color:var(--txt-primary)}.sort-arrows{vertical-align:middle;flex-direction:column;gap:0;margin-left:4px;line-height:1;display:inline-flex}.sort-arrow{color:var(--txt-ph);cursor:pointer;opacity:.5;background:0 0;border:none;padding:0;font-size:.55rem;line-height:1;transition:opacity .1s,color .1s;display:block}.sort-arrow:hover{opacity:1}.sort-arrow--active{color:var(--accent);opacity:1}.vehicles-table-wrap{border:1px solid var(--card-border-dk);border-radius:8px;width:100%;overflow-x:auto}.vehicles-table{border-collapse:collapse;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem}.vehicles-table th{background:var(--card-bg-alt);color:var(--txt-ph);letter-spacing:.08em;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--card-border-dk);padding:.75rem 1rem;font-size:.75rem;font-weight:500}.vehicles-table td{color:var(--txt-secondary);border-bottom:1px solid #1e2022;padding:.75rem 1rem}.vehicles-table tr:last-child td{border-bottom:none}.vehicles-table tr:hover td{color:#fff;background:#363840}.vehicles-table tr:hover .vehicles-rego,.vehicles-table tr:hover .veh-rego-expand-btn{color:#fff}.vehicles-rego{color:var(--txt-secondary);letter-spacing:.05em;white-space:nowrap;width:1%;font-weight:500}.vehicles-vin{color:var(--txt-tertiary);letter-spacing:.05em;font-family:Courier New,monospace;font-size:.8rem}.veh-source{letter-spacing:.04em;color:var(--txt-ph);background:#2a2d35;border-radius:4px;padding:.15em .5em;font-size:.7rem;font-weight:500;display:inline-block}.veh-source--svh{color:#4caf7d;background:#4caf7d1f}.veh-source--melassess{color:#60a5fa;background:#60a5fa1f}.veh-source--other{color:#f59e0b;background:#f59e0b1f}.vehicle-status{letter-spacing:.04em;border-radius:4px;padding:.2em .6em;font-size:.75rem;font-weight:500;display:inline-block}.vehicle-status--in{color:#4caf7d;background:#4caf7d26}.vehicle-status--out{color:#e07070;background:#e0707026}.home-view{align-self:flex-start;width:100%;max-width:860px;padding:2.5rem 2rem}.home-header{align-items:baseline;gap:1rem;margin-bottom:2rem;display:flex}.home-title{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.home-subtitle{color:var(--txt-muted);text-transform:uppercase;letter-spacing:.08em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300}.metrics-grid{background-color:var(--card-border);border:1px solid var(--card-border);border-radius:6px;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:2.5rem;display:grid;overflow:hidden}.metric-card{background-color:var(--card-bg);flex-direction:column;gap:.4rem;padding:1.4rem 1.6rem;display:flex}.metric-card--highlight{background-color:var(--card-bg-alt)}.metric-value{color:var(--txt-primary);letter-spacing:-.02em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:2rem;font-weight:300;line-height:1}.metric-card--highlight .metric-value{color:var(--accent)}.metric-label{color:var(--txt-dim);letter-spacing:.08em;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.72rem;font-weight:400}.home-section-label{color:var(--txt-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:500}.activity-list{list-style:none}.activity-row{border-bottom:1px solid var(--card-border);align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.activity-row:first-child{border-top:1px solid var(--card-border)}.activity-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.activity-dot--success{background-color:#4caf7d;box-shadow:0 0 5px #4caf7d80}.activity-dot--error{background-color:#e07070;box-shadow:0 0 5px #e0707080}.activity-dot--warning{background-color:#e8944a;box-shadow:0 0 5px #e8944a80}.activity-name{color:var(--txt-tertiary);flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300}.activity-time{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.workflows-pane{flex-direction:column;width:100%;height:100%;display:flex}.workflows-top{border-bottom:1px solid var(--card-border);flex-direction:row;flex:0 0 350px;min-height:260px;display:flex;overflow:hidden}.workflows-view{flex:1;min-width:0;padding:2.5rem 2rem;overflow-y:auto}.workflows-header{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.workflows-filters{flex-direction:column;align-items:flex-end;gap:6px;margin-left:auto;display:flex}.workflows-filter{border:1px solid #444;border-radius:4px;gap:0;display:flex;overflow:hidden}.filter-btn{color:var(--txt-dim);cursor:pointer;letter-spacing:.06em;background:0 0;border:none;border-right:1px solid #444;padding:.35em .8em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.72rem;font-weight:400;transition:background .15s,color .15s}.filter-btn:last-child{border-right:none}.filter-btn:hover{background:var(--row-hover-alt);color:var(--txt-tertiary)}.filter-btn--active{background:var(--card-border);color:var(--txt-primary)}.workflows-title{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.workflows-count{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300}.workflows-list{flex-direction:column;gap:0;list-style:none;display:flex}.workflow-row{border-bottom:1px solid var(--card-border);cursor:pointer;align-items:center;gap:.75rem;padding:.7rem 1rem;transition:background .12s;display:flex}.workflow-row:hover{background:var(--row-hover)}.workflow-row--selected{background:var(--row-hover);border-left:2px solid var(--accent);padding-left:calc(1rem - 2px)}.workflow-row:first-child{border-top:1px solid var(--card-border)}.workflow-dot{background-color:var(--txt-ghost);border-radius:50%;flex-shrink:0;width:8px;height:8px}.workflow-dot--active{background-color:#4caf7d;box-shadow:0 0 6px #4caf7d99}.workflow-name{color:var(--txt-secondary);flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:300}.workflow-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:500}.workflow-badge--active{color:#4caf7d}.wf-detail{background:var(--card-bg-alt);border-left:1px solid var(--card-border);flex-shrink:0;align-self:stretch;width:300px;padding:1.8rem 1.5rem;overflow-y:auto}.wf-detail-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.wf-detail-name{color:var(--txt-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:500;line-height:1.4}.wf-detail-id{color:var(--txt-ghost);word-break:break-all;margin-top:.25em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:300}.wf-detail-close{color:var(--txt-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.1em .2em;font-size:.8rem;transition:color .15s}.wf-detail-close:hover{color:var(--txt-tertiary)}.wf-detail-status{letter-spacing:.1em;text-transform:uppercase;color:var(--txt-muted);border:1px solid var(--card-border);border-radius:3px;margin-bottom:1.4rem;padding:.2em .6em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.68rem;font-weight:500;display:inline-block}.wf-detail-status--active{color:#4caf7d;border-color:#4caf7d4d}.wf-detail-rows{flex-direction:column;gap:0;margin-bottom:1.5rem;display:flex}.wf-detail-row{border-bottom:1px solid var(--card-border-dk);justify-content:space-between;align-items:center;padding:.55rem 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;display:flex}.wf-detail-row span:first-child{color:var(--txt-muted);font-weight:400}.wf-detail-row span:last-child{color:var(--txt-tertiary);font-weight:300}.wf-detail-errors{color:#e05c5c}.workflows-graph-panel{background:var(--content-bg);border-top:1px solid var(--card-border);flex:1;min-height:220px;position:relative}.wf-graph-canvas{position:absolute;inset:0}.wf-graph-placeholder{height:100%;color:var(--txt-ghost);letter-spacing:.04em;justify-content:center;align-items:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300;display:flex}.wf-graph-canvas .react-flow__pane,.wf-graph-canvas .react-flow__renderer,.wf-graph-canvas .react-flow__background{background:var(--content-bg)}.wf-graph-canvas .react-flow__handle,.wf-handle{opacity:0;pointer-events:none;width:6px;height:6px}.wf-graph-canvas .react-flow__node{overflow:visible}.wf-graph-canvas .react-flow__node:hover{z-index:50!important}.wf-graph-canvas .react-flow__controls{background:var(--card-bg);border:1px solid var(--card-border);border-radius:6px;overflow:hidden;box-shadow:0 2px 10px #00000059}.wf-graph-canvas .react-flow__controls-button{border:none;border-bottom:1px solid var(--card-border);color:var(--txt-dim);fill:var(--txt-dim);background:0 0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .12s,fill .12s;display:flex}.wf-graph-canvas .react-flow__controls-button:last-child{border-bottom:none}.wf-graph-canvas .react-flow__controls-button:hover{background:var(--row-hover);fill:var(--txt-secondary)}.wf-graph-canvas .react-flow__controls-button svg{fill:inherit}.wf-graph-canvas .react-flow__minimap{border:1px solid var(--card-border);border-radius:6px;overflow:hidden;box-shadow:0 2px 10px #00000059;background:var(--card-bg-alt)!important}.wf-graph-canvas .react-flow__minimap-mask{fill:#00000059}.wf-node{background:var(--card-bg);border:1px solid var(--card-border);border-radius:7px;align-items:center;gap:.55rem;min-width:155px;max-width:220px;padding:.55rem .7rem;transition:box-shadow .15s,border-color .15s;display:flex;box-shadow:0 2px 10px #0000004d,0 0 #0000}.wf-node:hover{border-color:var(--card-border-dk);box-shadow:0 4px 16px #0006}.wf-node-icon{background:color-mix(in srgb, var(--ni-color,#3b82f6) 15%, transparent);border:1px solid color-mix(in srgb, var(--ni-color,#3b82f6) 30%, transparent);width:26px;height:26px;color:var(--ni-color,#3b82f6);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wf-node-body{flex:1;min-width:0}.wf-node-type{letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;margin-bottom:.18em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.58rem;font-weight:600;overflow:hidden}.wf-node-label{color:var(--txt-secondary);white-space:nowrap;text-overflow:ellipsis;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.74rem;font-weight:400;overflow:hidden}.wf-node-popover{background:var(--card-bg-alt);border:1px solid var(--card-border-dk);opacity:0;visibility:hidden;pointer-events:none;z-index:20;border-radius:7px;min-width:180px;max-width:260px;padding:.6rem .7rem;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 6px 22px #00000080}.wf-node:hover .wf-node-popover{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.wf-node-popover:after{content:"";border:5px solid #0000;border-top-color:var(--card-border-dk);position:absolute;top:100%;left:50%;transform:translate(-50%)}.wf-pop-title{letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid var(--card-border);margin-bottom:.45rem;padding-bottom:.4rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.58rem;font-weight:600}.wf-pop-row{justify-content:space-between;gap:.7rem;padding:.18rem 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;display:flex}.wf-pop-key{color:var(--txt-dim);flex-shrink:0;font-weight:400}.wf-pop-val{color:var(--txt-tertiary);text-align:right;white-space:nowrap;text-overflow:ellipsis;font-family:SF Mono,ui-monospace,Menlo,monospace;font-size:.66rem;font-weight:300;overflow:hidden}.prefs-view{width:100%;max-width:640px;padding:2.5rem 2rem}.prefs-header{margin-bottom:1.8rem}.prefs-title{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.prefs-list{flex-direction:column;list-style:none;display:flex}.pref-row{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.pref-row:first-child{border-top:1px solid var(--card-border)}.pref-text{flex-direction:column;gap:.2em;display:flex}.pref-label{color:var(--txt-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:400}.pref-desc{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.pref-toggle{background:var(--card-border);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;width:38px;height:20px;padding:2px;transition:background .2s;position:relative}.pref-toggle--on{background:var(--accent)}.pref-toggle-knob{background:#888;border-radius:50%;width:16px;height:16px;transition:transform .2s,background .2s;display:block}.pref-toggle--on .pref-toggle-knob{background:#fff;transform:translate(18px)}.pref-select{background:var(--card-bg);color:var(--txt-tertiary);cursor:pointer;border:1px solid #444;border-radius:4px;outline:none;flex-shrink:0;padding:.35em .7em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300}.pref-select:focus{border-color:var(--txt-dim)}.chat-view{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;height:100%;padding:2rem;display:flex}.chat-coming-soon{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:400}.chat-coming-desc{color:var(--txt-muted);text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300}.clients-view{width:100%;max-width:680px;padding:2.5rem 2rem}.clients-header{align-items:baseline;gap:1rem;margin-bottom:1.5rem;display:flex}.clients-title{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.clients-count{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300}.clients-list{list-style:none}.client-row{border-bottom:1px solid var(--card-border)}.client-row:first-child{border-top:1px solid var(--card-border)}.client-row-header{cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.9rem .5rem;transition:background .12s;display:flex}.client-row-header:hover{background:var(--row-hover)}.client-row-name{text-align:left;color:var(--txt-secondary);flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:400}.client-row-meta{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.client-row-chevron{color:var(--txt-muted);font-size:1.1rem;line-height:1;transition:transform .2s;display:inline-block}.client-row-chevron--open{transform:rotate(90deg)}.client-menu-items{background:var(--card-bg);border-top:1px solid var(--card-border);padding:.5rem 0;list-style:none}.client-menu-item{color:var(--txt-ph);letter-spacing:.03em;padding:.4rem 1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:300}.client-menu-item--empty{color:var(--txt-ghost);font-style:italic}.rc-view{width:100%;max-width:780px;padding:2.5rem 2rem}.rc-header{align-items:baseline;gap:1rem;margin-bottom:1.5rem;display:flex}.rc-title{color:var(--txt-primary);letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.rc-count{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:300}.rc-search-wrap{align-items:center;margin-left:auto;display:flex;position:relative}.rc-search-icon{width:15px;height:15px;color:var(--txt-ph);pointer-events:none;flex-shrink:0;position:absolute;left:.6em}.rc-search{background:var(--card-bg);color:var(--txt-secondary);border:1px solid #444;border-radius:20px;outline:none;width:210px;padding:.4em .75em .4em 2.1em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300;transition:border-color .15s,background .15s}.rc-search:focus{background:#44474b;border-color:#777}.rc-search::placeholder{color:#888}.rc-col-headers{border-bottom:1px solid #4a4d50;align-items:center;gap:.75rem;margin-bottom:0;padding:.4rem .5rem;display:flex}.rc-col-name{letter-spacing:.08em;text-transform:uppercase;color:var(--txt-dim);flex:1;font-size:.72rem;font-weight:600}.rc-col-alias{letter-spacing:.08em;text-transform:uppercase;width:120px;color:var(--txt-dim);font-size:.72rem;font-weight:600}.rc-col-ref{letter-spacing:.08em;text-transform:uppercase;width:90px;color:var(--txt-dim);font-size:.72rem;font-weight:600}.rc-col-chevron{width:1.1rem}.rc-alias{width:120px;color:var(--txt-ph);text-align:left;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-style:italic;overflow:hidden}.rc-list{list-style:none}.rc-row{border-bottom:1px solid #383a3c}.rc-row:first-child{border-top:1px solid #383a3c}.rc-row-header{cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.9rem .5rem;transition:background .12s;display:flex}.rc-row-header:hover{background:#303234}.rc-name{text-align:left;color:var(--txt-secondary);flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:400}.rc-lic{width:90px;color:var(--txt-ph);letter-spacing:.06em;font-family:Courier New,monospace;font-size:.78rem}.rc-chevron{color:var(--txt-muted);font-size:1.1rem;line-height:1;transition:transform .2s;display:inline-block}.rc-chevron--open{transform:rotate(90deg)}.rc-details{background:var(--card-bg);border-top:1px solid var(--card-border);flex-direction:column;gap:1.2rem;padding:1.2rem 1rem;display:flex}.rc-detail-grid{grid-template-columns:1fr 1fr;gap:.8rem 1.5rem;display:grid}.rc-field{flex-direction:column;gap:.2em;display:flex}.rc-field--full{grid-column:1/-1}.rc-field-label{color:var(--txt-tertiary);letter-spacing:.1em;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.68rem;font-weight:500}.rc-field-value{color:var(--txt-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:300}.rc-field-value--mono{letter-spacing:.06em;font-family:Courier New,monospace;font-size:.82rem}.rc-images{flex-wrap:wrap;gap:1.5rem;display:flex}.rc-image-item{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.rc-image-label{color:var(--txt-tertiary);letter-spacing:.1em;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.68rem;font-weight:500}.rc-image-thumb{object-fit:cover;cursor:pointer;border:1px solid #444;border-radius:4px;width:180px;height:110px;transition:opacity .15s;display:block}.rc-image-thumb:hover{opacity:.85}.rc-image-link{color:var(--accent);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300;text-decoration:none}.rc-image-link:hover{text-decoration:underline}.rc-image-placeholder{color:var(--txt-ghost);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.78rem;font-style:italic;font-weight:300}.fines-view{width:100%;padding:2.5rem 2rem}.fines-table-wrap{padding:0 1.5rem 1.5rem;overflow-x:auto}.fines-table{border-collapse:collapse;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:400}.fines-table thead th{text-align:left;color:var(--txt-ph);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--card-border-dk);padding:.5rem .75rem;font-size:.75rem;font-weight:500}.fines-table tbody tr{border-bottom:1px solid var(--card-border-dk)}.fines-table tbody tr:hover{background:var(--row-hover)}.fines-rego{color:var(--txt-primary);white-space:nowrap;padding:.48rem .75rem;font-family:monospace;font-weight:600}.fines-cell{color:var(--txt-secondary);white-space:nowrap;padding:.48rem .75rem}.fines-cell--location{white-space:normal;max-width:220px}.fines-cell--file{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-family:monospace;font-size:.75rem;overflow:hidden}.fines-row--review .fines-rego,.fines-row--review .fines-cell{opacity:.8}.fines-review-badge{letter-spacing:.04em;text-transform:uppercase;color:#fca5a5;white-space:nowrap;background:#7c1d1d;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:600}.fines-view-btn{color:var(--accent);cursor:pointer;opacity:.7;vertical-align:middle;background:0 0;border:none;padding:2px 4px;line-height:0;transition:opacity .15s}.fines-view-btn:hover{opacity:1}.fines-time{color:var(--txt-ph);margin-left:4px;font-size:.8em}.veh-rego-expand-btn{color:var(--txt-secondary);letter-spacing:.05em;font-family:inherit;font-weight:500;font-size:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.veh-rego-expand-btn:hover .veh-rego-text{text-decoration:underline}.vehicles-table th.veh-count-col,.vehicles-table td.veh-count-col{white-space:nowrap;text-align:left;width:1%;padding:.5rem 6px}.veh-notice-badge{color:#f59e0b;background:#f59e0b2e;border-radius:10px;padding:1px 6px;font-size:.68rem;font-weight:600;line-height:1.5;display:inline-block}.veh-expand-chevron{color:var(--txt-ph);flex-shrink:0;transition:transform .15s}.veh-rego-expand-btn--open .veh-expand-chevron{transform:rotate(180deg)}.veh-notices-row td{padding:0!important}.veh-notices-cell{background:var(--row-hover)!important;border-bottom:2px solid var(--card-border-dk)!important}.veh-notices-table{border-collapse:collapse;width:100%;font-size:.82rem}.veh-notices-table th{color:var(--txt-ph);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--card-border-dk);text-align:left;padding:.45rem 1rem;font-size:.7rem;font-weight:500}.veh-notices-table td{color:var(--txt-secondary);border-bottom:1px solid var(--card-border-dk);padding:.5rem 1rem}.veh-notices-table tr:last-child td{border-bottom:none}.veh-notices-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--txt-ph);border-bottom:1px solid var(--card-border-dk);padding:.5rem 1rem .25rem;font-size:.7rem;font-weight:600}.notice-assigned-badge{color:#4caf7d;letter-spacing:.05em;background:#4caf7d1f;border-radius:4px;padding:2px 8px;font-size:.78rem;font-weight:600;display:inline-block}.veh-row--focused{outline-offset:-1px;outline:2px solid #4da6ff;background-color:#1a3a5c!important}.veh-row--focused td,.veh-row--focused th,.veh-row--focused td *,.veh-row--focused th *,.veh-notices-row.veh-row--focused .veh-notices-cell,.veh-notices-row.veh-row--focused .veh-notices-table td,.veh-notices-row.veh-row--focused .veh-notices-table th,.veh-notices-row.veh-row--focused .veh-notices-table td *,.veh-notices-row.veh-row--focused .veh-notices-section-label,.veh-notices-row.veh-row--focused p{color:#fff!important;background-color:#0000!important}.veh-notices-row.veh-row--focused .veh-notices-table{background-color:#ffffff0d!important}.veh-notices-row.veh-row--focused .veh-notices-table tr:hover td{background-color:#ffffff14!important}.notice-assigned-badge--link{cursor:pointer;text-underline-offset:2px;border:none;text-decoration:underline;transition:opacity .15s}.notice-assigned-badge--link:hover{opacity:.75}.notice-unassigned-btn{cursor:pointer;background:0 0;border:none;padding:0}.notice-unassigned-badge{color:#f59e0b;cursor:pointer;background:#f59e0b1f;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.notice-unassigned-btn:hover .notice-unassigned-badge{background:#f59e0b38}.notice-assign-inline{align-items:center;gap:4px;display:inline-flex}.notice-assign-input{border:1px solid var(--accent);color:#fff;letter-spacing:.05em;background:#2a2d35;border-radius:4px;outline:none;width:90px;padding:2px 7px;font-family:monospace;font-size:.82rem}.notice-assign-save,.notice-assign-cancel{cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:.85rem;line-height:1}.notice-assign-save{color:#4caf7d}.notice-assign-cancel{color:#e07070}.notice-assign-save:disabled{opacity:.4;cursor:default}.veh-action--in{color:#4caf7d}.veh-action--out{color:#e07070}.veh-client-cell{align-items:center;gap:6px;display:inline-flex}.veh-eye-btn{cursor:pointer;color:var(--txt-ph);background:0 0;border:none;align-items:center;padding:0;line-height:1;display:inline-flex}.veh-eye-btn:hover{color:#ccc}.cdet-grid{grid-template-columns:auto 1fr;align-items:baseline;gap:6px 14px;margin-bottom:8px;display:grid}.cdet-val{color:var(--txt-primary);font-size:.85rem}.assign-btn{color:#1a1d21;cursor:pointer;white-space:nowrap;background:#facc15;border:none;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:600}.assign-btn:hover{background:#fde047}.assign-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.assign-modal{background:#1a1d21;border:1px solid #333;border-radius:10px;flex-direction:column;gap:10px;width:min(90vw,400px);padding:28px 32px;display:flex}.assign-title{color:#eeece8;margin:0 0 6px;font-size:1rem;font-weight:600}.assign-label{color:#aaa;margin-bottom:2px;font-size:.78rem}.assign-select,.assign-input{color:#eeece8;background:#12141a;border:1px solid #333;border-radius:6px;width:100%;padding:8px 10px;font-size:.85rem}.assign-select:focus,.assign-input:focus{outline:1px solid #555}.assign-err{color:#e07070;margin:0;font-size:.8rem}.assign-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.assign-cancel{color:#aaa;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;padding:7px 18px;font-size:.85rem}.assign-cancel:hover{color:#ccc;border-color:#666}.assign-save{color:#1a1d21;cursor:pointer;background:#facc15;border:none;border-radius:6px;padding:7px 20px;font-size:.85rem;font-weight:600}.assign-save:hover:not(:disabled){background:#fde047}.assign-save:disabled{opacity:.5;cursor:not-allowed}.fine-viewer-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fine-viewer-box{background:#1a1d21;border:1px solid #333;border-radius:8px;flex-direction:column;width:min(96vw,1200px);height:min(94vh,1000px);display:flex;position:relative;overflow:hidden}.fine-viewer-drag{cursor:grab;background:#222528;border-bottom:1px solid #333;border-radius:8px 8px 0 0;flex-shrink:0;width:100%;height:28px}.fine-viewer-drag:active{cursor:grabbing}.fine-viewer-download{color:#aaa;cursor:pointer;align-items:center;gap:5px;height:100%;margin-left:.75rem;padding:0 .5rem;font-size:.75rem;text-decoration:none;transition:color .15s;display:inline-flex}.fine-viewer-download:hover{color:#fff}.fine-viewer-close{color:#aaa;cursor:pointer;z-index:1;background:0 0;border:none;border-radius:4px;padding:.25rem .4rem;font-size:1.1rem;line-height:1;transition:color .15s,background .15s;position:absolute;top:.6rem;right:.75rem}.fine-viewer-close:hover{color:#fff;background:#333}.fine-viewer-msg{color:#888;margin:auto;font-size:.9rem}.fine-viewer-img{object-fit:contain;width:100%;height:100%;padding:2rem}.fine-viewer-frame{border:none;width:100%;height:100%}.scan-app{background-color:#2b2d2f;flex-direction:column;width:100%;min-height:100dvh;display:flex;overflow-x:hidden}.scan-header{background-color:#242628;border-bottom:1px solid #333537;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.scan-brand{color:#fff;letter-spacing:.08em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:300}.scan-client{color:#888;letter-spacing:.04em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.scan-logout{color:#666;cursor:pointer;background:0 0;border:1px solid #444;border-radius:4px;padding:.3em .7em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem}.scan-main{flex-direction:column;flex:1;align-items:center;gap:1rem;padding:2.5rem 1.5rem;display:flex}.scan-label{color:#888;letter-spacing:.1em;text-transform:uppercase;align-self:flex-start;width:100%;max-width:400px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:400}.scan-input{color:#fff;letter-spacing:.2em;text-align:center;text-transform:uppercase;-webkit-appearance:none;background:#1e2022;border:1px solid #444;border-radius:8px;outline:none;width:100%;max-width:400px;padding:.6em .75em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:2rem;font-weight:300}.scan-input:focus{border-color:#888}.scan-feedback{color:#666;min-height:1.2em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300}.scan-feedback--ok{color:#4caf7d}.scan-feedback--error{color:#e07070}.scan-feedback--warn{color:#d4a04a}.scan-home{flex-direction:column;gap:1rem;width:100%;max-width:400px;padding-top:1rem;display:flex}.scan-action-btn{cursor:pointer;letter-spacing:.06em;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;width:100%;padding:1.3em 1em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.1rem;font-weight:500;transition:opacity .15s,transform .1s}.scan-action-btn:active{transform:scale(.98)}.scan-action-btn--vin{color:#eeece8;background:#383a3c}.scan-action-btn--in{color:#4caf7d;background:#4caf7d26;border:1px solid #4caf7d4d}.scan-action-btn--out{color:#e07070;background:#e0707026;border:1px solid #e070704d}.scan-action{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:400px;display:flex}.scan-back{color:#666;cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-bottom:.25rem;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem}.scan-back:hover{color:#aaa}.scan-action-title{color:#eeece8;letter-spacing:.04em;align-self:flex-start;margin-bottom:.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.3rem;font-weight:300}.scan-submit{cursor:pointer;letter-spacing:.1em;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;border-radius:10px;width:100%;margin-top:.25rem;padding:1em 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.1rem;font-weight:600;transition:opacity .15s,transform .1s}.scan-submit:active{transform:scale(.98)}.scan-submit:disabled{opacity:.35;cursor:default}.scan-submit--vin{color:#fff;background:#555}.vin-instruction{color:#888;text-align:center;margin-bottom:.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:300;line-height:1.5}.vin-preview{object-fit:contain;border:1px solid #444;border-radius:8px;width:100%;max-width:400px;max-height:260px}.vin-viewfinder{object-fit:cover;aspect-ratio:4/3;background:#000;border:1px solid #444;border-radius:10px;width:100%;max-width:340px;margin:0 auto;display:block}.scan-action--camera{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:400px;margin-top:-1.5rem;display:flex}.vin-shutter{margin-top:.75rem}.vin-upload-btn{color:#666;cursor:pointer;letter-spacing:.03em;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:.5em 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300;text-decoration:underline}.vin-upload-btn:active{opacity:.6}@media (orientation:landscape){.scan-main{flex-flow:wrap;justify-content:center;align-items:center;gap:1.5rem;padding:1rem 2rem}.scan-home{flex-flow:wrap;justify-content:center;max-width:100%;padding-top:0}.scan-action-btn{flex:1;width:auto;min-width:160px;max-width:220px}.scan-action{max-width:560px}.vin-preview{max-width:100%;max-height:45vh}.vin-viewfinder{aspect-ratio:16/9;max-width:480px}.scan-action--camera{width:100%;max-width:100%}}.scan-submit--in{color:#fff;background:#4caf7d}.scan-submit--out{color:#fff;background:#e07070}.scan-recent{width:100%;margin-top:.5rem}.scan-recent-label{color:#555;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.7rem;font-weight:500}.scan-recent-list{list-style:none}.scan-recent-row{border-bottom:1px solid #333537;align-items:center;gap:.75rem;padding:.55rem 0;display:flex}.scan-recent-rego{color:#ccc;letter-spacing:.1em;flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;font-weight:400}.scan-recent-time{color:#555;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:300}.request-wf-view{width:100%;max-width:640px;padding:2.5rem 2rem}.request-wf-header{margin-bottom:1.8rem}.request-wf-title{color:var(--txt-primary);letter-spacing:.05em;margin-bottom:.4em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.request-wf-sub{color:var(--txt-muted);letter-spacing:.02em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:300}.request-wf-form{flex-direction:column;gap:1.2rem;display:flex}.rw-row{flex-direction:column;gap:.35rem;display:flex}.rw-row-split{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.rw-label{color:var(--txt-ph);letter-spacing:.1em;text-transform:uppercase;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.72rem;font-weight:500}.rw-input,.rw-textarea,.rw-select{background:var(--card-bg);color:var(--txt-secondary);border:1px solid #444;border-radius:4px;outline:none;width:100%;padding:.55em .8em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:300;transition:border-color .15s}.rw-input:focus,.rw-textarea:focus,.rw-select:focus{border-color:var(--txt-ph)}.rw-input--readonly{color:var(--txt-muted);cursor:default}.rw-textarea{resize:vertical;line-height:1.5}.rw-select{cursor:pointer}.rw-error{color:#e07070;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:300}.rw-submit{background:var(--accent);color:#fff;cursor:pointer;letter-spacing:.06em;border:none;border-radius:4px;align-self:flex-start;padding:.7em 1.4em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:500;transition:opacity .15s}.rw-submit:hover{opacity:.9}.rw-submit:disabled{opacity:.5;cursor:default}.request-wf-success{flex-direction:column;gap:.5rem;padding-top:.5rem;display:flex}.request-wf-success-msg{color:#4caf7d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:400}.request-wf-success-sub{color:var(--txt-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:300}.request-wf-reset{color:var(--txt-ph);cursor:pointer;background:0 0;border:1px solid #444;border-radius:4px;align-self:flex-start;margin-top:.5rem;padding:.4em .9em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:300;transition:border-color .15s,color .15s}.request-wf-reset:hover{border-color:var(--txt-ph);color:var(--txt-tertiary)}.cv-screen{background:#2b2d2f;justify-content:center;align-items:flex-start;min-height:100dvh;padding:2rem 1rem 3rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.cv-card{flex-direction:column;gap:0;width:100%;max-width:480px;display:flex}.cv-brand{color:#6399d2;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.6rem;font-size:.75rem;font-weight:500}.cv-title{color:#eeece8;letter-spacing:.04em;margin-bottom:.5rem;font-size:1.5rem;font-weight:300}.cv-intro{color:#888;margin-bottom:1.5rem;font-size:.88rem;font-weight:300;line-height:1.5}.cv-readonly-block{background:#333537;border:1px solid #3a3c3e;border-radius:8px;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.cv-readonly-row{align-items:baseline;gap:.75rem;display:flex}.cv-readonly-label{color:#666;letter-spacing:.1em;text-transform:uppercase;min-width:52px;font-size:.72rem;font-weight:500}.cv-readonly-value{color:#eeece8;font-size:.95rem;font-weight:300}.cv-form{flex-direction:column;gap:.1rem;display:flex}.cv-field{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.cv-label{color:#aaa;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:400}.cv-input{color:#eeece8;background:#3a3c3e;border:1px solid #444;border-radius:8px;outline:none;padding:.75em 1em;font-family:inherit;font-size:1rem;font-weight:300;transition:border-color .15s}.cv-input:focus{border-color:#888}.cv-divider{background:#3a3c3e;height:1px;margin:.5rem 0 1.2rem}.cv-section-label{color:#888;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.8rem;font-size:.75rem;font-weight:500}.cv-btn-scan{color:#6399d2;letter-spacing:.05em;cursor:pointer;background:#3a3c3e;border:1px dashed #555;border-radius:8px;width:100%;padding:.85em 1em;font-family:inherit;font-size:.95rem;font-weight:400;transition:border-color .15s,background .15s}.cv-btn-scan:hover{background:#404244;border-color:#6399d2}.cv-camera{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.cv-viewfinder{aspect-ratio:4/3;object-fit:cover;background:#111;border-radius:8px;width:100%;display:block}.cv-btn-capture{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:8px;width:100%;padding:.85em;font-family:inherit;font-size:1rem;font-weight:500}.cv-btn-capture:active{opacity:.85}.cv-btn-cancel{color:#666;cursor:pointer;background:0 0;border:none;padding:.2em 0;font-family:inherit;font-size:.82rem}.cv-camera-msg{color:#666;font-size:.88rem}.cv-photo-done{flex-direction:column;gap:.5rem;display:flex}.cv-photo-preview{aspect-ratio:4/3;object-fit:cover;border:1px solid #555;border-radius:8px;width:100%;display:block}.cv-btn-retake{color:#6399d2;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;padding:0;font-family:inherit;font-size:.82rem;text-decoration:underline}.cv-declare{cursor:pointer;align-items:flex-start;gap:.75rem;margin:.5rem 0 .75rem;display:flex}.cv-declare-check{accent-color:#ff6b2b;cursor:pointer;width:18px;min-width:18px;height:18px;margin-top:1px}.cv-declare-text{color:#aaa;font-size:.85rem;font-weight:300;line-height:1.4}.cv-error{color:#e07070;margin-bottom:.5rem;font-size:.85rem;font-weight:300}.cv-btn-submit{color:#fff;letter-spacing:.05em;cursor:pointer;background:#ff6b2b;border:none;border-radius:8px;width:100%;margin-top:.5rem;padding:.9em;font-family:inherit;font-size:1rem;font-weight:500;transition:opacity .15s}.cv-btn-submit:disabled{opacity:.3;cursor:default}.cv-btn-submit:not(:disabled):active{opacity:.85}.cv-success-icon{color:#4caf7d;background:#4caf7d26;border:1px solid #4caf7d66;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:1rem;font-size:1.5rem;display:flex}.cv-text{color:#888;margin-top:.4rem;font-size:.92rem;font-weight:300;line-height:1.6}.upload-fine-view{max-width:520px;padding:2rem}.upload-fine-header{margin-bottom:2rem}.upload-fine-title{color:#f0f0f0;margin:0 0 .4rem;font-size:1.25rem;font-weight:600}.upload-fine-sub{color:var(--txt-ph);margin:0;font-size:.88rem}.upload-fine-body{flex-direction:column;gap:1rem;display:flex}.upload-fine-pick{color:var(--txt-tertiary);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#1e2124;border:1px dashed #444;border-radius:6px;padding:1rem 1.25rem;font-size:.9rem;transition:border-color .15s,color .15s;overflow:hidden}.upload-fine-pick:hover:not(:disabled){color:#ddd;border-color:#6399d2}.upload-fine-submit{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:6px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;transition:background .15s}.upload-fine-submit:hover:not(:disabled){background:#4f82bc}.upload-fine-submit:disabled{opacity:.5;cursor:not-allowed}.upload-fine-ok{color:#4caf7d;margin:0;font-size:.88rem}.upload-fine-err{color:#e07070;margin:0;font-size:.88rem}.book-out-view{max-width:480px;padding:2rem}.book-out-header{margin-bottom:2rem}.book-out-title{color:#f0f0f0;margin:0 0 .4rem;font-size:1.25rem;font-weight:600}.book-out-sub{color:var(--txt-ph);margin:0;font-size:.88rem}.book-out-form{flex-direction:column;gap:1.25rem;display:flex}.book-out-field{flex-direction:column;gap:.4rem;display:flex}.book-out-label{color:var(--txt-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:500}.book-out-select,.book-out-input{color:#e8e8e8;background:#1e2124;border:1px solid #333;border-radius:6px;outline:none;width:100%;padding:.65rem .85rem;font-size:.9rem;transition:border-color .15s}.book-out-select:focus,.book-out-input:focus{border-color:#6399d2}.book-out-submit{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:6px;margin-top:.25rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;transition:background .15s}.book-out-submit:hover:not(:disabled){background:#4f82bc}.book-out-submit:disabled{opacity:.5;cursor:not-allowed}.book-out-success{flex-direction:column;gap:1rem;display:flex}.book-out-ok{color:#4caf7d;margin:0;font-size:.95rem}.book-out-reset{color:var(--txt-tertiary);cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;width:fit-content;padding:.5rem 1rem;font-size:.88rem}.book-out-reset:hover{color:#ddd;border-color:#6399d2}.book-out-err{color:#e07070;margin:0;font-size:.88rem}.rc-image-wrap{justify-content:center;align-items:center;min-height:80px;display:flex;overflow:hidden}.rc-image-thumb{transition:transform .25s}.rc-image-actions{align-items:center;gap:.75rem;margin-top:.4rem;display:flex}.rc-rotate-btn{color:var(--txt-tertiary);cursor:pointer;background:0 0;border:1px solid #444;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1rem;line-height:1;display:flex}.rc-rotate-btn:hover{color:#6399d2;border-color:#6399d2}.actions-view{max-width:640px;padding:2rem}.actions-header{margin-bottom:2rem}.actions-title{color:#f0f0f0;margin:0;font-size:1.25rem;font-weight:600}.actions-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.actions-tile{cursor:pointer;text-align:left;background:#1e2124;border:1px solid #333;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.4rem;padding:1.25rem 1.5rem;transition:border-color .15s,background .15s;display:flex}.actions-tile:hover{background:#252a30;border-color:#6399d2}.actions-tile-title{color:#e8e8e8;font-size:.95rem;font-weight:600}.actions-tile-desc{color:var(--txt-ph);font-size:.82rem}.mu-view{max-width:720px;padding:2rem}.mu-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.mu-title{color:#f0f0f0;margin:0;font-size:1.25rem;font-weight:600}.mu-count{color:var(--txt-ph);font-size:.82rem}.mu-add-btn{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:6px;margin-left:auto;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:background .15s}.mu-add-btn:hover{background:#4f82bc}.mu-list{margin:0;padding:0;list-style:none}.mu-row{border-bottom:1px solid var(--card-border-dk);flex-wrap:wrap;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.mu-row:first-child{border-top:1px solid #2a2d30}.mu-info{flex-direction:column;flex:1;gap:.15rem;min-width:140px;display:flex}.mu-name{color:#e8e8e8;font-size:.9rem;font-weight:500}.mu-mobile{color:var(--txt-dim);font-size:.8rem}.mu-badges{flex-wrap:wrap;gap:.4rem;display:flex}.mu-badge{background:var(--card-border-dk);color:var(--txt-ph);text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:.2rem .55rem;font-size:.72rem;font-weight:500}.mu-badge--admin{color:#6399d2;background:#2a3d52}.mu-badge--active{color:#4ade80;background:#1a3028}.mu-badge--inactive{color:#f87171;background:#3a2a2a}.mu-actions{flex-shrink:0;gap:.5rem;display:flex}.mu-edit-btn{color:var(--txt-tertiary);cursor:pointer;background:0 0;border:1px solid #444;border-radius:5px;padding:.3rem .7rem;font-size:.8rem;transition:border-color .15s,color .15s}.mu-edit-btn:hover{color:#6399d2;border-color:#6399d2}.mu-toggle-btn{color:#f87171;cursor:pointer;background:0 0;border:1px solid #6b3a3a;border-radius:5px;padding:.3rem .7rem;font-size:.8rem;transition:border-color .15s,color .15s}.mu-toggle-btn--reactivate{color:#4ade80;border-color:#2a5a3a}.mu-toggle-btn:hover{opacity:.8}.mu-form{flex-direction:column;gap:1.1rem;max-width:420px;padding:2rem;display:flex}.mu-back{color:var(--txt-ph);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-bottom:.25rem;padding:0;font-size:.85rem;transition:color .15s}.mu-back:hover{color:#e8e8e8}.mu-form-title{color:#f0f0f0;margin:0;font-size:1.1rem;font-weight:600}.mu-field{flex-direction:column;gap:.35rem;display:flex}.mu-label{color:var(--txt-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:500}.mu-input,.mu-select{color:#e8e8e8;background:#1e2124;border:1px solid #333;border-radius:6px;outline:none;padding:.65rem .85rem;font-size:.9rem;transition:border-color .15s}.mu-input:focus,.mu-select:focus{border-color:#6399d2}.mu-btns{gap:.75rem;margin-top:.25rem;display:flex}.mu-save{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:6px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:500;transition:background .15s}.mu-save:hover:not(:disabled){background:#4f82bc}.mu-save:disabled{opacity:.5;cursor:not-allowed}.mu-cancel{color:var(--txt-tertiary);cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;padding:.65rem 1.25rem;font-size:.9rem;transition:border-color .15s,color .15s}.mu-cancel:hover{color:#e8e8e8;border-color:#888}.mu-err{color:#f87171;margin:0;font-size:.84rem}.export-view{flex-direction:column;gap:1.5rem;max-width:480px;padding:2rem;display:flex}.export-title{color:#f0f0f0;margin:0 0 .4rem;font-size:1.25rem;font-weight:600}.export-desc{color:var(--txt-ph);margin:0;font-size:.88rem}.export-btn{color:#fff;cursor:pointer;background:#6399d2;border:none;border-radius:6px;align-self:flex-start;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:background .15s}.export-btn:hover:not(:disabled){background:#4f82bc}.export-btn:disabled{opacity:.5;cursor:not-allowed}.export-ok{color:#4ade80;margin:0;font-size:.88rem}.export-err{color:#f87171;margin:0;font-size:.88rem}.usage-view{flex-direction:column;align-self:flex-start;gap:1.5rem;width:100%;max-width:100%;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.usage-header{align-items:center;gap:.75rem;display:flex}.usage-title{color:var(--txt-primary);letter-spacing:-.01em;font-size:1.2rem;font-weight:400}.usage-period{color:var(--txt-tertiary);letter-spacing:.03em;font-size:.78rem}.usage-month-btn{border:1px solid var(--border);color:var(--txt-tertiary);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:1rem;line-height:1;transition:color .15s,border-color .15s;display:flex}.usage-month-btn:hover:not(:disabled){color:var(--txt-primary);border-color:var(--txt-tertiary)}.usage-month-btn:disabled{opacity:.3;cursor:default}.usage-plan-badge{color:#2a9d8f;letter-spacing:.08em;text-transform:uppercase;background:#2a9d8f1a;border-radius:3px;padding:.18em .55em;font-size:.65rem;font-weight:600;display:inline-block}.usage-summary{background:var(--card-border-dk);border:1px solid var(--card-border-dk);border-radius:6px;grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.usage-metric{background:var(--card-bg);text-align:left;flex-direction:column;gap:.3rem;padding:1rem 1.25rem;display:flex}.usage-metric--warn .usage-metric-val{color:#e8944a}.usage-metric--highlight .usage-metric-val{color:var(--accent)}.usage-metric-val{color:var(--txt-primary);letter-spacing:-.02em;font-size:1.35rem;font-weight:300;line-height:1}.usage-metric-label{color:var(--txt-dim);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:500}.usage-bar-wrap{align-items:center;gap:.75rem;display:flex}.usage-bar{background:var(--card-border-dk);border-radius:2px;flex:1;height:4px;overflow:hidden}.usage-bar-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .4s}.usage-bar-label{color:var(--txt-tertiary);white-space:nowrap;font-size:.74rem}.usage-table-wrap{border:1px solid var(--card-border-dk);border-radius:6px;width:100%;overflow:hidden}.usage-table{border-collapse:collapse;text-align:left;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem}.usage-table th{background:var(--card-bg-alt);color:var(--txt-ph);letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid var(--card-border-dk);padding:.6rem .9rem;font-size:.67rem;font-weight:500;text-align:left!important}.usage-table td{color:var(--txt-secondary);border-bottom:1px solid #1e2022;padding:.6rem .9rem;font-size:.8rem;text-align:left!important}.usage-table tbody tr:last-child td{border-bottom:none}.usage-table tbody tr:hover td{background:var(--row-hover)}.usage-table tfoot td{border-top:1px solid var(--card-border-dk);background:var(--card-bg-alt);padding:.6rem .9rem;font-size:.78rem;text-align:left!important}.usage-wf-name{color:var(--txt-primary);align-items:center;gap:.45rem;display:flex}.usage-llm-badge{color:#2a9d8f;letter-spacing:.06em;background:#2a9d8f1f;border-radius:3px;padding:.1em .4em;font-size:.6rem;font-weight:600;display:inline-block}.usage-units{color:var(--txt-primary);font-weight:500}.usage-total-label{color:var(--txt-tertiary);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem}.usage-total-val{color:var(--accent);font-size:.9rem;font-weight:500}.usage-no-config{color:var(--txt-tertiary);padding:2rem 0;font-size:.82rem}.products-view,.hero-banner-view{width:100%;padding:2rem 2.5rem}.products-hdr{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.products-title{color:var(--txt-primary);letter-spacing:.05em;flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.2rem;font-weight:400}.products-add-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1.1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:500;transition:background .15s}.products-add-btn:hover{background:var(--accent-hover)}.products-add-btn:disabled,.products-add-btn--disabled{opacity:.6;cursor:default;pointer-events:none}.products-tabs{flex-wrap:wrap;gap:.3rem;margin-bottom:1.5rem;display:flex}.products-tab{border:1px solid var(--card-border);color:var(--txt-muted);cursor:pointer;background:0 0;border-radius:20px;align-items:center;gap:.4rem;padding:.3rem .85rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.78rem;transition:all .12s;display:flex}.products-tab:hover{background:var(--row-hover);color:var(--txt-secondary)}.products-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.products-tab-count{background:var(--card-border);color:var(--txt-secondary);border-radius:10px;padding:0 .4em;font-size:.7rem;line-height:1.4}.products-tab.active .products-tab-count{color:#fff;background:#ffffff40}.products-cat-filters{flex-wrap:wrap;gap:.3rem;margin-bottom:1.25rem;display:flex}.products-cat-btn{color:#d97706;cursor:pointer;background:0 0;border:1px solid #d97706;border-radius:20px;padding:.3rem .9rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.78rem;font-weight:500;transition:all .12s}.products-cat-btn:hover{background:#d977061a}.products-cat-btn.active{color:#fff;background:#d97706;border-color:#d97706}.products-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;display:grid}.product-card{background:var(--card-bg);border:1px solid var(--card-border);cursor:pointer;text-align:left;border-radius:8px;padding:0;transition:border-color .15s,box-shadow .15s;overflow:hidden}.product-card:hover{border-color:var(--accent)}.product-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px #ff6b2b2e}.product-card--addon{background:#dbeafe;border-color:#93c5fd}.product-card--addon:hover{border-color:#3b82f6}.product-card--addon.selected{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.product-card-img-wrap{aspect-ratio:1;background:var(--card-bg-alt);width:100%;overflow:hidden}.product-card-img{object-fit:cover;width:100%;height:100%}.product-card-no-img{color:var(--txt-ghost);justify-content:center;align-items:center;width:100%;height:100%;font-size:.75rem;display:flex}.product-card-meta{flex-direction:column;gap:.3rem;padding:.6rem .75rem;display:flex}.product-card-name{color:var(--txt-secondary);text-overflow:ellipsis;white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:400;overflow:hidden}.product-card-price{color:var(--txt-tertiary);font-size:.75rem}.product-card-addon-label{color:#3b82f6;letter-spacing:.06em;align-self:flex-end;margin-top:auto;font-size:.6rem;font-weight:700}.prod-status-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:3px;padding:.15em .5em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.65rem;font-weight:600;display:inline-block}.prod-status-badge--staged{color:var(--txt-muted);background:#aaaaaa26}.prod-status-badge--draft{color:#c68a00;background:#ffc10726}.prod-status-badge--pending{color:#1565c0;background:#2196f326}.prod-status-badge--live{color:#2e7d32;background:#4caf5026}.prod-panel-overlay{z-index:200;background:#00000073;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.prod-panel{background:var(--card-bg);border-left:1px solid var(--card-border-dk);flex-direction:column;gap:1rem;width:420px;max-width:100vw;height:100vh;padding:1.75rem;display:flex;position:relative;overflow-y:auto}.prod-panel-hdr{align-items:center;gap:.75rem;display:flex}.prod-panel-title{color:var(--txt-primary);flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:500}.prod-panel-close{color:var(--txt-muted);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.1rem}.prod-panel-close:hover{color:var(--txt-primary)}.prod-panel-img-wrap{position:relative}.prod-panel-img{object-fit:cover;border-radius:6px;width:100%;max-height:200px;display:block}.prod-replace-img-btn{color:#fff;cursor:pointer;text-align:center;background:#00000073;border:none;border-radius:0 0 6px 6px;padding:.35rem .75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;transition:background .15s;position:absolute;bottom:0;left:0;right:0}.prod-replace-img-btn:hover{background:#000000a6}.prod-replace-img-btn:disabled{cursor:default;opacity:.6}.prod-panel-fields{flex-direction:column;gap:.6rem;display:flex}.prod-panel-label{color:var(--txt-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.73rem;font-weight:500;display:block}.prod-panel-hint{color:var(--txt-ghost);letter-spacing:0;text-transform:none;font-weight:300}.prod-panel-input,.prod-panel-textarea{background:var(--card-bg-alt);border:1px solid var(--card-border-dk);color:var(--txt-primary);border-radius:5px;outline:none;width:100%;padding:.55rem .75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.88rem;transition:border-color .15s}.prod-panel-input:focus,.prod-panel-textarea:focus{border-color:var(--accent)}.prod-panel-input:disabled,.prod-panel-textarea:disabled{cursor:default;opacity:.5}.prod-panel-textarea{resize:vertical}.prod-panel-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.prod-category-checks{flex-direction:column;gap:.4rem;padding:.4rem 0;display:flex}.prod-category-check{color:var(--txt-secondary);cursor:pointer;align-items:center;gap:.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;display:flex}.prod-category-check input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:14px;height:14px}.prod-panel-actions{border-top:1px solid var(--card-border);flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1rem;display:flex}.prod-btn{cursor:pointer;border:none;border-radius:5px;padding:.5rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:500;transition:opacity .15s,background .15s}.prod-btn:disabled{cursor:default;opacity:.6}.prod-btn--save{background:var(--accent);color:#fff}.prod-btn--save:hover{background:var(--accent-hover)}.prod-btn--submit{color:#fff;background:#1565c0}.prod-btn--submit:hover{opacity:.85}.prod-btn--approve{color:#fff;background:#2e7d32}.prod-btn--approve:hover{opacity:.85}.prod-btn--reject{background:var(--card-bg-alt);border:1px solid var(--card-border-dk);color:var(--txt-muted)}.prod-btn--reject:hover{background:var(--row-hover)}.prod-btn--delete{color:#c83232cc;background:0 0;border:1px solid #c8323266;margin-left:auto}.prod-btn--delete:hover{background:#c8323214}.prod-delete-modal{z-index:10;background:#00000080;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.prod-delete-modal-box{background:var(--card-bg);border:1px solid var(--card-border-dk);border-radius:10px;width:100%;margin:1.5rem;padding:1.5rem;box-shadow:0 8px 32px #0000004d}.prod-delete-modal-title{color:var(--txt-primary);margin-bottom:.6rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:600}.prod-delete-modal-body{color:var(--txt-muted);margin-bottom:1.25rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;line-height:1.5}.prod-delete-modal-body strong{color:var(--txt-secondary)}.prod-delete-modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.prod-btn--delete-confirm{color:#fff!important;background:#c83232d9!important;border-color:#0000!important}.prod-btn--delete-confirm:hover{background:#b41e1ee6!important}.prod-saved-toast{color:#fff;letter-spacing:.02em;pointer-events:none;white-space:nowrap;z-index:500;background:#2e7d32;border-radius:8px;padding:.6rem 1.4rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-weight:500;animation:2.2s forwards prod-toast-lifecycle;position:fixed;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000040}@keyframes prod-toast-lifecycle{0%{opacity:0;transform:translate(-50%)translateY(16px)}12%{opacity:1;transform:translate(-50%)translateY(0)}78%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(16px)}}.prod-pending-note{color:#1565c0;padding:.5rem 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-style:italic}.hero-banner-sticky-note{color:#7a6000;background:#fffbe6;border:1px solid #f0d060;border-radius:6px;max-width:560px;margin-bottom:1rem;padding:.75rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;line-height:1.5}.hero-banner-dim-error{color:#c0392b;margin-bottom:.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem}.banner-list{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.banner-card{background:var(--card-bg-alt);border:1px solid var(--card-border);border-radius:10px;overflow:hidden}.banner-card--active{border-color:#22c55e;box-shadow:0 0 0 2px #22c55e33}.banner-card-img-wrap{aspect-ratio:1200/630;width:100%;overflow:hidden}.banner-card-img{object-fit:fill;width:100%;height:100%;display:block}.banner-card-meta{align-items:center;gap:.75rem;padding:.6rem 1rem 0;display:flex}.banner-card-name{color:var(--txt-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:600}.banner-card-badge{color:#22c55e;letter-spacing:.04em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.75rem;font-weight:700}.banner-card-actions{gap:.5rem;padding:.6rem 1rem .8rem;display:flex}.banner-btn{cursor:pointer;border:none;border-radius:6px;padding:.35rem .85rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8rem;font-weight:600}.banner-btn--activate{color:#fff;background:#22c55e}.banner-btn--activate:hover{background:#16a34a}.banner-btn--delete{border:1px solid var(--card-border);color:var(--txt-muted);background:0 0}.banner-btn--delete:hover{color:#ef4444;border-color:#ef4444}.hero-banner-hint{color:var(--txt-muted);margin-bottom:1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem}.hero-banner-preview{background:var(--card-bg-alt);border:1px solid var(--card-border);border-radius:8px;max-width:720px;margin-bottom:.75rem;overflow:hidden}.hero-banner-img{width:100%;display:block}.hero-banner-note{color:var(--txt-ghost);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.78rem}.products-cats-btn{border:1px solid var(--card-border);color:var(--txt-secondary);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.8rem;font-weight:500;transition:border-color .15s,color .15s;display:flex}.products-cats-btn:hover{border-color:var(--accent);color:var(--accent)}.cat-modal-overlay{z-index:300;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cat-modal{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;flex-direction:column;gap:1rem;width:360px;max-width:95vw;padding:1.5rem;display:flex}.cat-modal-hdr{justify-content:space-between;align-items:center;display:flex}.cat-modal-title{color:var(--txt-primary);margin:0;font-size:1rem;font-weight:600}.cat-modal-close{color:var(--txt-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:.2rem;display:flex}.cat-modal-close:hover{color:var(--txt-primary)}.cat-modal-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.cat-modal-row{background:var(--card-bg-alt);border:1px solid var(--card-border);border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .6rem;display:flex}.cat-modal-name{color:var(--txt-primary);flex:1;font-size:.87rem}.cat-modal-icon-btn{cursor:pointer;color:var(--txt-muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:.2rem;display:flex}.cat-modal-icon-btn:hover{color:var(--txt-primary);background:var(--card-border)}.cat-modal-icon-btn--confirm{color:#16a34a}.cat-modal-icon-btn--confirm:hover{color:#15803d;background:var(--card-border)}.cat-modal-icon-btn--delete:hover{color:#ef4444;background:var(--card-border)}.cat-modal-add{gap:.5rem;display:flex}.cat-modal-input{border:1px solid var(--card-border);background:var(--card-bg-alt);color:var(--txt-primary);border-radius:6px;outline:none;flex:1;padding:.45rem .65rem;font-size:.85rem}.cat-modal-input:focus{border-color:var(--accent)}.cat-modal-input--add{flex:1}.cat-modal-add-btn{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;gap:.3rem;padding:.45rem .8rem;font-size:.82rem;font-weight:500;display:flex}.cat-modal-add-btn:disabled{opacity:.45;cursor:default}.cat-modal-error{color:#ef4444;margin:0;font-size:.8rem}.cat-modal-footer{justify-content:flex-end;gap:.6rem;padding-top:.25rem;display:flex}.bloom-view{box-sizing:border-box;width:100%;max-width:900px;padding:2rem 2.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.bloom-view-hdr{border-bottom:1px solid #e7e5e4;justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding-bottom:1rem;display:flex}.bloom-view-title{color:#1c1917;letter-spacing:-.01em;margin:0 0 .2rem;font-size:1.25rem;font-weight:700}.bloom-view-sub{color:#78716c;margin:0;font-size:.8rem}.bloom-view-count{color:#fff;white-space:nowrap;letter-spacing:.02em;border-radius:20px;padding:.3rem .85rem;font-size:.75rem;font-weight:700}.bloom-empty{text-align:center;color:#a8a29e;padding:4rem 1rem}.bloom-empty-icon{opacity:.3;margin:0 auto .85rem;display:block}.bloom-empty-text{color:#78716c;font-size:.9rem;font-weight:500}.bloom-order-list{flex-direction:column;gap:.65rem;display:flex}.bloom-order-card{cursor:pointer;background:#fff;border:1px solid #e7e5e4;border-radius:12px;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 1px 3px #0000000d}.bloom-order-card:hover{border-color:#c9606a;box-shadow:0 4px 12px #00000017}.bloom-order-card-hdr{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.bloom-order-card-who{flex-direction:column;gap:.25rem;min-width:0;display:flex}.bloom-order-name{color:#1c1917;font-size:.95rem;font-weight:700}.bloom-order-addr{color:#78716c;align-items:center;gap:.25rem;font-size:.78rem;display:flex}.bloom-order-card-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.35rem;display:flex}.bloom-order-total{color:#1c1917;font-size:1rem;font-weight:700}.bloom-order-badge{white-space:nowrap;letter-spacing:.02em;border-radius:20px;padding:.25rem .6rem;font-size:.7rem;font-weight:700}.bloom-order-items{color:#57534e;font-size:.8rem;line-height:1.5}.bloom-order-card-ft{border-top:1px solid #f5f5f4;justify-content:space-between;margin-top:.1rem;padding-top:.5rem;display:flex}.bloom-order-meta{color:#a8a29e;font-size:.72rem}.bloom-panel-overlay{z-index:400;background:#00000073;justify-content:center;align-items:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:fixed;inset:0}.bloom-panel{background:#fff;border:1px solid #e7e5e4;border-radius:16px;flex-direction:column;width:520px;max-width:95vw;max-height:88vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000002e}.bloom-panel-hdr{background:#fafaf9;border-bottom:1px solid #f0efee;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.5rem;display:flex}.bloom-panel-ref{color:#1c1917;letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.bloom-panel-date{color:#a8a29e;margin:.15rem 0 0;font-size:.75rem}.bloom-panel-close{cursor:pointer;color:#a8a29e;background:0 0;border:none;border-radius:6px;align-items:center;padding:.3rem;display:flex}.bloom-panel-close:hover{color:#1c1917;background:#f5f5f4}.bloom-panel-body{flex-direction:column;flex:1;gap:1.25rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.bloom-panel-status-line{color:#57534e;margin:0;font-size:.875rem}.bloom-panel-section{flex-direction:column;gap:.3rem;display:flex}.bloom-panel-section-label{text-transform:uppercase;letter-spacing:.12em;color:#a8a29e;margin-bottom:.25rem;font-size:.68rem;font-weight:800}.bloom-panel-field{color:#57534e;align-items:center;gap:.4rem;margin:0;font-size:.875rem;display:flex}.bloom-panel-field--bold{color:#1c1917;font-size:.95rem;font-weight:700}.bloom-panel-notes{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin-top:.35rem;padding:.75rem 1rem}.bloom-panel-notes-label{text-transform:uppercase;letter-spacing:.12em;color:#92400e;margin:0 0 .3rem;font-size:.68rem;font-weight:800}.bloom-panel-notes-body{color:#78350f;margin:0;font-size:.875rem;line-height:1.5}.bloom-panel-item-row{color:#44403c;justify-content:space-between;padding:.2rem 0;font-size:.875rem;display:flex}.bloom-panel-totals{border-top:1px solid #f0efee;flex-direction:column;gap:.4rem;padding-top:.85rem;display:flex}.bloom-panel-total-row{color:#78716c;justify-content:space-between;font-size:.83rem;display:flex}.bloom-panel-total-row--bold{color:#1c1917;border-top:1px solid #e7e5e4;margin-top:.2rem;padding-top:.5rem;font-size:.95rem;font-weight:800}.bloom-panel-actions{background:#fafaf9;border-top:1px solid #f0efee;flex-direction:column;flex-shrink:0;gap:.5rem;padding:1rem 1.5rem 1.25rem;display:flex}.bloom-panel-err{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0;padding:.5rem .75rem;font-size:.8rem}.bloom-action-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;width:100%;padding:.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9rem;font-weight:700;transition:background .15s,opacity .15s;display:flex}.bloom-action-btn:disabled{opacity:.45;cursor:default}.bloom-action-btn--rose{color:#fff;background:#e11d48}.bloom-action-btn--rose:hover:not(:disabled){background:#be123c}.bloom-action-btn--green{color:#fff;background:#16a34a}.bloom-action-btn--green:hover:not(:disabled){background:#15803d}.bloom-action-btn--ghost{color:#57534e;background:#f5f5f4;border:1px solid #e7e5e4}.bloom-action-btn--ghost:hover:not(:disabled){color:#1c1917;background:#e7e5e4}.bloom-action-btn--print{color:#fff;background:#1c1917}.bloom-action-btn--print:hover:not(:disabled){background:#000}.bloom-sales-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.bloom-stat-card{background:#fff;border:1px solid #e7e5e4;border-radius:12px;padding:1.5rem 1.25rem;box-shadow:0 1px 3px #0000000d}.bloom-stat-label{text-transform:uppercase;letter-spacing:.12em;color:#a8a29e;margin:0 0 .6rem;font-size:.7rem;font-weight:800}.bloom-stat-value{color:#1c1917;letter-spacing:-.02em;margin:0 0 .3rem;font-size:2rem;font-weight:800}.bloom-stat-orders{color:#78716c;margin:0;font-size:.8rem}
