.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;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{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18212f;background:#f6f7f9;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{background:#17202e;color:#f8fafc;padding:20px 14px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:750}.brand-mark{width:34px;height:34px;display:inline-grid;place-items:center;background:#2fb3a3;color:#061411;border-radius:8px;font-size:.82rem;font-weight:850}.nav-item{display:flex;align-items:center;gap:10px;color:#dce5ef;text-decoration:none;padding:11px 12px;border-radius:8px;margin-bottom:4px}.nav-item.active,.nav-item:hover{color:#fff;background:#253347}.main{min-width:0}.topbar{height:82px;display:flex;justify-content:space-between;align-items:center;padding:0 28px;border-bottom:1px solid #dfe4ea;background:#fff}.topbar h1,.page-header h2,h3{margin:0;letter-spacing:0}.topbar h1{font-size:1.35rem}.eyebrow{color:#6b7789;margin:0 0 4px;font-size:.82rem}.user-menu,.page-header,.toolbar,.billing-band{display:flex;align-items:center;gap:12px}.content{padding:24px 28px 44px}.page-header{justify-content:space-between;margin-bottom:18px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #dfe4ea;border-radius:8px;padding:16px}.stat-card span{color:#697587;font-size:.82rem}.stat-card strong{display:block;margin-top:8px;font-size:1.75rem}.platform-stats-grid{grid-template-columns:repeat(5,minmax(140px,1fr))}.stat-card-link{color:inherit;text-decoration:none}.stat-card-link:hover,.stat-card-link:focus-visible{border-color:#9a741b;box-shadow:0 0 0 2px #e4b64a38}.stat-card.warn{border-color:#e4b64a}.stat-card.danger{border-color:#d85b5b}.stat-card.good{border-color:#3aa170}.stat-card-button{width:100%;color:#18212f;font:inherit;text-align:left;cursor:pointer}.stat-card-button:hover,.stat-card-button:focus-visible{border-color:#8b6d1d;box-shadow:0 0 0 2px #e4b64a3d}.reports-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.automation-logs-page{min-width:0}.automation-health{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:14px;padding:16px 0;border-block:1px solid #dfe4ea;margin:16px 0}.automation-health span{display:grid;gap:4px;font-size:.9rem;min-width:0}.automation-health strong{color:#5f6c7d;font-size:.78rem;font-weight:650}.automation-settings{padding-top:18px}.automation-settings-row{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:20px}.automation-settings-row label{display:grid;gap:5px;color:#516174;font-size:.84rem}.automation-settings-row input[type=number]{width:145px;min-height:38px}.automation-settings-row .automation-toggle{display:flex;align-items:center;gap:8px;min-height:38px;color:#18212f;white-space:nowrap}.automation-settings input[type=checkbox]{width:16px;height:16px;min-height:16px;padding:0;margin:0;flex:0 0 16px;border-radius:3px;accent-color:#159e93}.automation-settings-columns{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);gap:24px}.automation-settings-columns>div{min-width:0;border-top:1px solid #dfe4ea;padding-top:14px}.automation-settings h3{font-size:1rem}.automation-workflow-list,.automation-node-list{margin-top:12px;max-height:430px;overflow:auto;border:1px solid #dfe4ea;border-radius:6px;background:#fff}.automation-workflow-option,.automation-capture-row{padding:10px 12px;border-bottom:1px solid #edf0f3}.automation-workflow-option{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;column-gap:10px;cursor:pointer}.automation-workflow-option:last-child,.automation-capture-row:last-child{border-bottom:0}.automation-workflow-option span{min-width:0;text-align:left;overflow-wrap:anywhere}.automation-capture-row>label{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;column-gap:10px;cursor:pointer}.automation-capture-row strong{min-width:0;text-align:left;overflow-wrap:anywhere}.automation-capture-options{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin:9px 0 0 26px;color:#516174;font-size:.82rem}.automation-capture-options label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.automation-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.automation-section-heading select{width:min(460px,100%);max-width:100%;min-width:0}.automation-settings-actions{margin-top:18px}.automation-filters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 12px}.automation-filters input{flex:1 1 260px}.automation-filters select{flex:0 1 220px;min-width:150px}.automation-filters input,.automation-filters select,.automation-settings input[type=number],.automation-section-heading select,.automation-inspector select{border:1px solid #cbd4de;border-radius:6px;padding:8px 10px;background:#fff;color:#18212f}.automation-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 0}.automation-pagination span:first-child{margin-right:auto}.automation-detail-header{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 0}.automation-detail-header>div{display:grid;gap:2px}.automation-detail-header>div span{color:#617082;font-size:.82rem}.automation-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,34%);min-height:520px;border:1px solid #dfe4ea;background:#fff}.automation-graph{min-width:0;min-height:520px;border-right:1px solid #dfe4ea}.automation-graph-node{background:#fff;color:#18212f;border:2px solid #aeb9c5;box-shadow:none;text-align:left;font-size:.85rem}.automation-graph-node .react-flow__node-default{padding:8px}.automation-graph-node span{display:block;overflow-wrap:anywhere}.automation-graph-node.success{border-color:#268864;background:#ecf8f1}.automation-graph-node.error{border-color:#be4640;background:#fff0ee}.automation-graph-node.skipped{border-color:#b6c0cb;background:#f4f6f8;color:#667489}.automation-graph-node.selected{box-shadow:0 0 0 3px #1d746a55}.automation-inspector{min-width:0;padding:18px}.automation-inspector h3{font-size:1rem;overflow-wrap:anywhere}.automation-node-type{color:#6b7789;font-size:.78rem;overflow-wrap:anywhere}.automation-inspector>label{display:grid;gap:6px;font-size:.82rem;color:#516174}.automation-run-meta{display:grid;gap:5px;color:#617082;font-size:.8rem;margin:14px 0}.automation-json{min-height:210px;max-height:410px;margin:12px 0 0;overflow:auto;padding:12px;background:#f3f6f8;border:1px solid #dfe4ea;border-radius:6px;color:#243141;font-size:.78rem;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:1000px){.automation-detail-layout{grid-template-columns:1fr}.automation-graph{border-right:0;border-bottom:1px solid #dfe4ea}}@media(max-width:700px){.automation-health{grid-template-columns:repeat(2,minmax(0,1fr))}.automation-settings-columns{grid-template-columns:1fr}.automation-detail-layout{min-height:0}.automation-graph{min-height:400px}}.report-tabs{display:flex;gap:4px;border-bottom:1px solid #dfe4ea;flex-wrap:wrap}.report-tabs button{border:0;border-radius:0;background:transparent;padding:10px 12px;color:#516174;cursor:pointer}.report-tabs button.active{color:#18212f;border-bottom:3px solid #159e93;font-weight:700}.reports-period{display:flex;align-items:end;gap:10px}.reports-period label{display:grid;gap:3px;font-size:.82rem;color:#516174}.reports-period input{min-height:36px}.report-metrics{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:12px;margin-bottom:16px}.report-metric{padding:12px 14px;background:#fff;border:1px solid #dfe4ea;border-radius:6px}.report-metric span{display:block;color:#617082;font-size:.8rem}.report-metric strong{display:block;font-size:1.45rem;margin-top:4px}.report-note{color:#516174;font-size:.88rem;margin:0 0 14px}.request-financial-panel{margin-top:16px;border-top:1px solid #dfe4ea;padding-top:16px;display:grid;gap:12px}.request-financial-panel h4{margin:0}.financial-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.financial-summary span{display:grid;gap:3px;font-size:.8rem;color:#617082}.financial-summary strong{color:#18212f;font-size:.93rem}.financial-fields{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.financial-fields label{flex:1 1 180px}@media(max-width:700px){.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-summary{grid-template-columns:1fr}.reports-period{width:100%}.reports-period label{min-width:0;flex:1}}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px}.table-wrap{overflow-x:auto;background:#fff;border:1px solid #dfe4ea;border-radius:8px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #edf0f3;vertical-align:middle}th{color:#5f6c7d;font-size:.78rem;text-transform:uppercase}tr:last-child td{border-bottom:0}.table-column-sticky{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-8px 0 12px -12px #10182459}th.table-column-sticky{z-index:2}.badge{display:inline-flex;min-height:26px;align-items:center;padding:4px 9px;border-radius:999px;background:#e9eef5;color:#263445;font-size:.78rem;white-space:nowrap}.badge.high,.badge.warning,.badge.atrisk,.badge.waitingforvendorassignment{background:#fff3d6;color:#7b5300}.badge.emergency,.badge.critical,.badge.breached{background:#ffe1df;color:#8e211a}.badge.completed,.badge.available,.badge.active,.badge.ontrack,.badge.accepted,.badge.success,.badge.information,.badge.contacted,.badge.closed,.badge.sent,.badge.delivered{background:#ddf5e9;color:#17603f}.badge.new,.badge.pending,.badge.retrying{background:#fff3d6;color:#7b5300}.badge.notconfigured{background:#edf0f4;color:#566274}.badge.manualreview{background:#fff1c7;color:#76520c}.badge.failed,.badge.deliveryfailed,.badge.declined,.badge.expired,.badge.error,.badge.disabled,.badge.inactive{background:#ffe1df;color:#8e211a}.primary,.secondary,.icon-button{border:0;border-radius:8px;min-height:38px}.primary{background:#2f7d74;color:#fff;padding:0 14px;font-weight:720}.secondary{background:#e8edf2;color:#243141;padding:0 12px}.icon-button{width:38px;display:inline-grid;place-items:center;background:#eef2f6;color:#1f2a38}.icon-text{display:inline-flex;align-items:center;gap:7px}.empty{background:#fff;border:1px solid #dfe4ea;border-radius:8px;padding:18px;color:#5d6a7c}.empty.danger,.form-error{color:#a72f29}.auth-notice{margin:0;border-left:4px solid #c17b16;background:#fff6df;color:#704a0c;padding:10px 12px}.service-unavailable-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;grid-template-rows:auto 1fr;min-width:320px;min-height:100vh;padding:24px clamp(20px,5vw,72px);background:#f6f7f9;color:#18212f}.service-unavailable-brand{display:flex;align-items:center;gap:10px;font-weight:750}.service-unavailable-content{width:min(560px,100%);align-self:center;margin:0 auto 12vh;text-align:center}.service-unavailable-icon{width:58px;height:58px;display:inline-grid;place-items:center;margin-bottom:18px;border:1px solid #edb2ae;border-radius:8px;background:#fff0ef;color:#a72f29}.service-unavailable-content h1{margin:0;font-size:2.25rem;letter-spacing:0}.service-unavailable-content>p:not(.eyebrow):not(.service-unavailable-retry-error){margin:16px auto 24px;color:#5d6a7c;line-height:1.65}.service-unavailable-content .primary{justify-content:center;min-width:132px}.service-unavailable-content .primary:disabled{cursor:wait;opacity:.7}.service-unavailable-retry-error{margin:14px 0 0;color:#a72f29;font-size:.9rem}.spin{animation:service-check-spin .9s linear infinite}@keyframes service-check-spin{to{transform:rotate(360deg)}}.toolbar{margin-bottom:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182473;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(720px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:8px;padding:18px;box-shadow:0 24px 80px #10182438}.modal header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-span-2{grid-column:1 / -1}.form-actions{display:flex;justify-content:flex-end}label{display:grid;gap:6px;color:#4e5b6e;font-size:.86rem}input,select,textarea{width:100%;border:1px solid #cfd7e2;border-radius:8px;min-height:40px;padding:8px 10px;color:#18212f;background:#fff}textarea{min-height:92px;resize:vertical}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;min-height:auto}.settings-form{max-width:820px;background:#fff;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;padding:24px 0}.subscription-history{max-width:820px;border-top:1px solid #dfe4ea;padding-top:22px;margin-top:28px}.subscription-history h2{margin:0 0 12px;font-size:1.05rem}.settings-fieldset{border:0;margin:0 0 24px;padding:0}.settings-fieldset legend{margin-bottom:10px;color:#283547;font-size:.9rem;font-weight:700}.settings-choice-grid,.settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-choice{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;min-height:54px;border:1px solid #cfd7e2;border-radius:8px;padding:14px;cursor:pointer}.settings-choice.selected{border-color:#087f8c;box-shadow:inset 0 0 0 1px #087f8c}.settings-choice input{width:auto;min-height:auto;margin-top:3px}.settings-choice span,.settings-choice strong{display:block}.settings-fields{margin-bottom:20px}.settings-fields label:last-child{grid-column:1 / -1}.agency-identity-fields label:last-child{grid-column:auto}.settings-actions{display:flex;justify-content:flex-end;margin-top:18px}.settings-actions button{display:inline-flex;align-items:center;gap:8px}.settings-toggle{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;padding:14px 0}.settings-toggle input,.checkbox-label input{width:auto;min-height:auto;margin-top:3px}.settings-toggle span,.settings-toggle strong,.settings-toggle small{display:block}.settings-toggle small{color:#697587;margin-top:3px}.request-filter-bar{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;align-items:end;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;background:#fff;padding:14px 0;margin-bottom:14px}.checkbox-label{display:flex;grid-template-columns:none;align-items:center;gap:8px;min-height:40px}.filter-actions,.row-actions,.form-section-header{display:flex;align-items:center;gap:8px}.filter-actions{justify-content:flex-end}.row-actions{min-width:max-content}.compact-button{min-height:34px;padding:0 10px}.table-primary{display:grid;gap:3px;min-width:150px}.table-primary small{max-width:280px;color:#697587;line-height:1.35;overflow-wrap:anywhere}.manual-review-context{grid-column:1 / -1;display:grid;gap:4px;border-left:4px solid #c28b1a;background:#fff8e6;color:#704f10;padding:12px 14px}.form-section{grid-column:1 / -1;min-width:0;border-top:1px solid #dfe4ea;padding-top:14px}.form-section-header{justify-content:space-between;margin-bottom:10px}.form-section-header h3{font-size:.95rem}.compliance-detail{margin-top:22px;border-top:1px solid #dfe4ea;padding-top:18px}.compliance-detail h2{font-size:1.2rem}.compliance-detail h3{margin-top:22px}.compliance-report{border-top:1px solid #e3e8ed;padding:14px 0}.compliance-actions{display:flex;flex-wrap:wrap;align-items:end;gap:8px;margin:10px 0}.compliance-actions select,.compliance-actions input{width:auto;min-width:170px}.compliance-action-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-top:1px solid #eef1f4}.compliance-upload{cursor:pointer}.badge.overdue,.badge.missingdate{color:#a72f29;background:#ffe9e7}.badge.notapplicable{color:#5d6878;background:#edf0f3}.resident-contact-list{display:grid;gap:10px}.resident-contact-row{display:grid;grid-template-columns:minmax(145px,1.2fr) minmax(120px,1fr) auto 38px;gap:8px;align-items:end}.danger-icon{color:#a72f29}.empty.compact{padding:10px 0;border:0}.form-message{padding:10px 12px;border-left:3px solid;background:#fff}.form-message.success{border-color:#16825d;color:#126849}.form-message.error{border-color:#c33d3d;color:#a72f2f}.contractor-toolbar label{width:min(320px,100%)}.contractor-available{align-self:end;min-height:40px}.category-fieldset{min-width:0;margin:0;padding:0;border:0}.category-fieldset legend{margin-bottom:6px;color:#4e5b6e;font-size:.86rem}.category-multiselect{position:relative}.category-multiselect summary{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #cfd7e2;border-radius:8px;padding:8px 10px;background:#fff;color:#18212f;cursor:pointer;list-style:none}.category-multiselect summary::-webkit-details-marker{display:none}.category-multiselect[open] summary svg{transform:rotate(180deg)}.category-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:6px;padding:8px;border:1px solid #cfd7e2;border-radius:8px;background:#fff;box-shadow:0 12px 32px #1018241f}.category-option{min-width:0;display:flex;align-items:center;gap:8px;border-radius:6px;padding:8px;color:#263448;cursor:pointer}.category-option:hover{background:#f1f5f8}.category-option input{width:auto;min-height:auto;flex:0 0 auto}.category-option span{min-width:0;overflow-wrap:anywhere}.vendor-picker{display:grid;gap:8px}.picker-row{text-align:left;border:1px solid #dfe4ea;border-radius:8px;background:#fff;padding:12px}.picker-row:disabled{cursor:not-allowed;background:#f5f7f9;color:#7c8796;opacity:.8}.picker-row span,.picker-row small{display:block}.picker-row small{color:#657386;margin-top:4px}.bid-contractor-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;cursor:pointer}.bid-contractor-row span,.bid-contractor-row small{display:inline;margin:0}.assignment-modal{width:min(820px,100%)}.assignment-history,.contractor-candidates{display:grid;gap:10px}.contractor-candidates{border-top:1px solid #dfe4ea;margin-top:18px;padding-top:16px}.assignment-history h4,.contractor-candidates h4{margin:0;color:#18212f}.assignment-history-row{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(170px,.8fr);align-items:center;gap:12px;border-bottom:1px solid #e7ebf0;padding:10px 2px}.assignment-history-row>div,.assignment-history-timing{display:grid;gap:3px;min-width:0}.assignment-history-row small{color:#657386;overflow-wrap:anywhere}.billing-band{justify-content:space-between;background:#fff;border:1px solid #dfe4ea;border-radius:8px;padding:18px;margin-bottom:16px}.emergency-dashboard-alert,.emergency-summary{display:flex;align-items:center;gap:14px;border:1px solid #d43d35;border-left:5px solid #b42318;border-radius:8px;background:#fff4f2;color:#7a271a;padding:14px 16px;margin-bottom:18px}.emergency-dashboard-alert>div{display:grid;gap:3px;flex:1}.emergency-dashboard-alert span,.emergency-summary p{color:#70423b;font-size:.88rem;margin:0}.danger-button{background:#b42318}.danger-button:hover{background:#8f1c13}.emergency-summary{justify-content:space-between}.emergency-summary>div{display:flex;align-items:center;gap:9px}.emergency-summary>div span{font-weight:650}.emergency-summary>div strong{font-size:1.4rem}.mode-switch{display:inline-flex;border:1px solid #cfd7e2;border-radius:8px;overflow:hidden;margin-bottom:12px}.mode-switch button{min-height:38px;border:0;border-right:1px solid #cfd7e2;background:#fff;color:#435064;padding:0 14px}.mode-switch button:last-child{border-right:0}.mode-switch button.active{background:#243141;color:#fff}.incident-label,.phone-link,.completed-by{display:inline-flex;align-items:center;gap:6px}.incident-label{font-weight:700}.incident-label.fire{color:#b42318}.incident-label.gas{color:#975a16}.phone-link{color:#176b63;text-decoration:none;white-space:nowrap}.completed-by{color:#17603f;font-size:.84rem}.critical-context{display:grid;gap:4px;border-left:4px solid #b42318;background:#fff4f2;padding:12px 14px;margin-bottom:16px}.critical-context span{color:#70423b}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.platform-expenses{padding-top:18px}.expense-filter-bar{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) minmax(200px,1.4fr);gap:12px;margin-bottom:16px}.expense-pagination,.expense-detail-grid{display:flex;justify-content:space-between;align-items:center;gap:12px}.expense-pagination{padding-top:14px;color:#576477}.expense-summary{border-top:1px solid #dfe4ea;margin-top:20px;padding-top:16px}.expense-summary summary{cursor:pointer;font-weight:600;margin-bottom:12px}.expense-detail-grid{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);border-block:1px solid #dfe4ea;padding-block:12px;margin-bottom:16px}.expense-detail-grid>span{color:#697587}.expense-detail-grid>strong{overflow-wrap:anywhere}.expense-total{align-self:end;display:flex;justify-content:space-between;padding:10px 0;font-size:.95rem}.expense-upload{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:#18212f}.expense-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.expense-preview,.expense-reason-form{border-top:1px solid #dfe4ea;margin-top:18px;padding-top:16px}.expense-preview img,.expense-preview iframe{display:block;width:100%;height:min(55vh,500px);object-fit:contain;border:1px solid #dfe4ea;background:#fff}@media(max-width:900px){.expense-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.expense-filter-bar{grid-template-columns:1fr}}.agency-subscription-section{border-top:1px solid #dfe4ea;margin-top:20px;padding-top:14px}.agency-subscription-section h3{font-size:1rem;margin:10px 0}.agency-subscription-history{border-block:1px solid #dfe4ea;margin-bottom:16px}.agency-subscription-row{display:grid;grid-template-columns:minmax(80px,1fr) minmax(80px,1fr) minmax(170px,2fr);gap:6px 12px;align-items:center;padding:9px 0;border-bottom:1px solid #eef0f3;font-size:.875rem}.agency-subscription-row:last-child{border-bottom:0}@media(max-width:650px){.agency-subscription-row{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-subscription-row span:nth-child(n+3){grid-column:1 / -1}}.emergency-reminder-copy{display:flex;align-items:center;gap:10px;color:#8f1c13}.emergency-reminder-copy p{margin:0}.reminder-incidents{margin-top:16px;border-top:1px solid #e7c3bf}.reminder-incidents>div{display:flex;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid #e7c3bf}.reminder-incidents span{display:grid;gap:2px;color:#5f4b48;font-size:.84rem}.reminder-incidents strong{color:#7a271a}.message-config-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:22px;align-items:start}.message-editor-panel,.whatsapp-preview{border:1px solid #d6dde6;border-radius:8px;background:#fff;padding:18px}.message-editor-panel{display:grid;gap:16px}.message-editor-panel textarea{min-height:280px;line-height:1.5}.message-format-guide{border-left:4px solid #2f7d74;background:#eef8f6;padding:12px 14px;color:#294b47}.message-format-guide p{margin:6px 0 9px;line-height:1.45}.message-format-guide code{white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8rem}.message-editor-meta,.message-editor-actions,.save-confirmation,.preview-title,.emergency-preview-label{display:flex;align-items:center}.message-editor-meta{justify-content:space-between;gap:14px;color:#667386;font-size:.84rem}.message-editor-meta .at-limit{color:#a72f29;font-weight:700}.emergency-check{color:#3c4859;font-weight:650}.message-editor-actions{justify-content:flex-end}.save-confirmation{gap:6px;color:#17603f;margin:0}.preview-title{gap:8px;margin-bottom:12px;color:#263445}.whatsapp-canvas{min-height:430px;background:#e8e1d7;border:1px solid #d4ccc1;padding:22px 16px}.whatsapp-bubble{width:min(92%,480px);margin-left:auto;background:#d9fdd3;border:1px solid #c1e7bb;border-radius:8px 2px 8px 8px;padding:10px 12px 7px;color:#17211d;line-height:1.42;overflow-wrap:anywhere;box-shadow:0 1px 1px #1f2a261f}.preview-line{display:block;min-height:1.42em}.preview-time{display:block;text-align:right;color:#66776f;font-size:.68rem;margin-top:4px}.emergency-preview-label{gap:6px;width:min(92%,480px);margin:10px 0 0 auto;color:#8e211a;font-size:.8rem;font-weight:650}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:#e9eef3}.login-panel{width:min(420px,100%);display:grid;gap:14px;background:#fff;border:1px solid #dce3ea;border-radius:8px;padding:26px}.login-panel h1{margin:8px 0 4px;font-size:1.65rem}.auth-step-form,.security-form{display:grid;gap:14px}.totp-qr{display:block;width:min(240px,100%);height:auto;image-rendering:pixelated;margin:0 auto}.totp-key{display:block;overflow-wrap:anywhere;margin-top:10px;padding:10px;background:#eef2f5}.recovery-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:12px 0}.recovery-code-grid code{padding:8px;background:#eef2f5}.security-content{display:grid;gap:18px;max-width:700px}.security-status,.security-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.checkbox-row{display:flex;align-items:center;gap:10px}.checkbox-row input{width:18px;min-height:18px;height:18px;flex:0 0 18px}.diagnostics-tabs{margin-bottom:14px}.diagnostics-filter-bar{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;align-items:end;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;background:#fff;padding:14px 0;margin-bottom:14px}.demo-request-filter-bar{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(145px,.8fr)) auto;gap:12px;align-items:end;border-top:1px solid #dfe4ea;border-bottom:1px solid #dfe4ea;background:#fff;padding:14px 0;margin-bottom:14px}.demo-request-filter-actions{min-width:max-content}.demo-request-loading{position:fixed;right:22px;bottom:22px;z-index:30;border:1px solid #cfd7e2;border-radius:8px;background:#fff;box-shadow:0 12px 32px #10182426;padding:12px 14px;color:#435064}.demo-request-modal{width:min(980px,100%)}.demo-request-detail{display:grid;gap:18px}.demo-request-detail>section,.demo-follow-up-form{border-top:1px solid #dfe4ea;padding-top:14px}.demo-request-detail h4,.demo-follow-up-form h4{margin:0 0 11px;font-size:.92rem}.demo-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 18px;margin:0}.demo-detail-grid div{min-width:0}.demo-detail-grid dt,.notification-status-grid span{color:#687487;font-size:.76rem;margin-bottom:4px}.demo-detail-grid dd{margin:0;color:#263445;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.notification-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.notification-status-grid>div{display:grid;justify-items:start;gap:6px;border:1px solid #dfe4ea;border-radius:8px;padding:12px}.notification-status-grid small,.follow-up-meta{color:#687487;font-size:.8rem}.notification-status-grid .detail-error{color:#9b2c2c;overflow-wrap:anywhere}.demo-follow-up-fields{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(300px,1fr);gap:12px;align-items:start}.demo-notes-field textarea{min-height:120px}.follow-up-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px}.diagnostics-filter-actions{grid-column:span 2}.trace-id,.diagnostics-detail pre,.diagnostics-metadata dd{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.trace-id{color:#315f6d;font-size:.78rem;white-space:nowrap}.diagnostics-pagination,.diagnostics-pagination>div{display:flex;align-items:center;gap:10px}.diagnostics-pagination{justify-content:space-between;margin-top:14px;color:#5f6c7d;font-size:.86rem}.diagnostics-pagination button:disabled{cursor:not-allowed;opacity:.45}.diagnostics-modal{width:min(1080px,100%)}.diagnostics-detail{display:grid;gap:20px}.diagnostics-detail section{min-width:0;border-top:1px solid #dfe4ea;padding-top:14px}.diagnostics-detail h4{margin:0 0 10px;font-size:.9rem;letter-spacing:0}.diagnostics-detail p{margin:6px 0 0;line-height:1.5}.diagnostics-detail pre{max-height:340px;overflow:auto;margin:0;border:1px solid #d5dce5;border-radius:6px;background:#f7f9fb;color:#202b38;padding:12px;font-size:.78rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.diagnostics-metadata{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 18px;margin:0}.diagnostics-metadata div{min-width:0}.diagnostics-metadata dt{color:#687487;font-size:.76rem;margin-bottom:3px}.diagnostics-metadata dd{margin:0;color:#263445;font-size:.8rem;overflow-wrap:anywhere}.diagnostics-error{border-top-color:#e2aaa5!important;color:#8e211a}.trace-timeline{border-left:2px solid #cfd7e2;margin-left:13px}.trace-timeline>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;margin-left:-15px;padding-bottom:18px}.trace-timeline>div>span{width:28px;height:28px;display:grid;place-items:center;border:2px solid #97a6b8;border-radius:50%;background:#fff;color:#46566a;font-size:.72rem;font-weight:700}.trace-event-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}.trace-timeline pre{margin-top:10px}.muted{color:#697587}.agency-name{display:inline-flex;align-items:center;gap:8px;font-weight:650;white-space:nowrap}.table-stack{display:grid;gap:3px}.table-stack small{color:#697587}.user-toolbar{align-items:end}.user-toolbar label{min-width:min(260px,100%)}.table-actions{display:inline-flex;gap:6px;flex-wrap:wrap}.user-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0}.user-detail-list div{min-width:0;border-bottom:1px solid #e2e7ed;padding-bottom:12px}.user-detail-list dt{color:#697587;font-size:.78rem;margin-bottom:4px}.user-detail-list dd{margin:0;overflow-wrap:anywhere}.user-status-control{align-self:end;min-height:40px}.user-password-action{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.user-password-action small{color:#697587}.request-media-section{min-width:0;border-top:1px solid #dfe4ea;padding-top:14px}.request-media-section h4{margin:0 0 10px;font-size:.92rem}.request-photo-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.request-photo-heading span,.request-media-section>small{color:#687487;font-size:.8rem}.request-photo-add{display:inline-flex;width:auto;padding:0 12px;cursor:pointer}.request-media-section>small{display:block;margin-top:6px}.request-photo-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:12px}.request-photo-preview{position:relative;min-width:0;aspect-ratio:4 / 3;overflow:hidden;border:1px solid #d5dce5;border-radius:6px;background:#eef2f5}.request-photo-preview img{width:100%;height:100%;object-fit:contain;display:block}.request-photo-preview span{position:absolute;bottom:0;inset-inline:0;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;background:#0d141dd1;font-size:.78rem}.request-photo-preview .icon-button{position:absolute;top:6px;right:6px;width:28px;min-height:28px;background:#fff}.media-modal{width:min(920px,100%)}.maintenance-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.maintenance-media-tile{position:relative;min-width:0;aspect-ratio:4 / 3;overflow:hidden;border:1px solid #d5dce5;border-radius:6px;background:#eef2f5;color:#263445;padding:0}button.maintenance-media-tile:hover,button.maintenance-media-tile:focus-visible{border-color:#17897c;outline:2px solid rgba(23,137,124,.24);outline-offset:1px}.maintenance-media-tile img{width:100%;height:100%;display:block;object-fit:contain;background:#131a23}.maintenance-media-tile>span{position:absolute;left:8px;bottom:8px;border-radius:4px;background:#0d141dd1;color:#fff;padding:4px 7px;font-size:.74rem}.maintenance-media-tile.media-unavailable{display:grid;place-content:center;gap:8px;text-align:center;color:#6c7786}.maintenance-media-tile.media-unavailable>span{position:static;background:transparent;color:inherit;padding:0}.media-gallery-state{min-height:120px;display:grid;place-items:center;border:1px dashed #cfd7e2;color:#697587;padding:20px;text-align:center}.media-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:#070c12f0;padding:52px 64px}.media-lightbox img{width:100%;height:100%;max-width:1400px;max-height:calc(100vh - 104px);object-fit:contain}.media-lightbox button{position:absolute;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:#111923c7;color:#fff;padding:0}.media-lightbox-close{top:14px;right:16px}.media-lightbox-previous{left:14px;top:calc(50% - 21px)}.media-lightbox-next{right:14px;top:calc(50% - 21px)}.media-lightbox-count{position:absolute;bottom:16px;left:50%;transform:translate(-50%);color:#fff;font-size:.82rem}.contractor-media-page{min-height:100vh;background:#f5f7f8}.contractor-media-header,.contractor-media-content{width:min(1040px,calc(100% - 32px));margin:0 auto}.contractor-media-header{padding:28px 0 18px;border-bottom:1px solid #dbe2e8}.contractor-media-brand,.contractor-media-header>div:nth-child(2){display:flex;align-items:center;gap:10px}.contractor-media-brand{margin-bottom:28px}.contractor-media-brand span{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:#2fb3a3;color:#061411;font-size:.8rem;font-weight:850}.contractor-media-header h1{margin:0;font-size:1.45rem;letter-spacing:0}.contractor-media-header p{margin:8px 0 0 32px;color:#5f6c7d}.contractor-media-content{padding:22px 0 48px}.contractor-media-error{border-left:4px solid #c33d3d;background:#fff;color:#9b2c2c;padding:16px}@media(max-width:980px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar .brand span:last-child,.nav-item span{display:none}.stats-grid,.platform-stats-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.split{grid-template-columns:1fr}.request-filter-bar,.diagnostics-filter-bar,.demo-request-filter-bar,.diagnostics-metadata,.user-detail-list,.demo-detail-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.demo-request-filter-actions{grid-column:span 2}.resident-contact-row{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media(max-width:640px){.maintenance-media-grid{grid-template-columns:1fr}.media-lightbox{padding:52px 10px}.contractor-media-header p{margin-left:0}.assignment-history-row{grid-template-columns:minmax(0,1fr) auto}.assignment-history-timing{grid-column:1 / -1}.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10;flex-direction:row;overflow-x:auto;padding:10px}.sidebar nav{display:flex}.topbar,.content{padding-left:16px;padding-right:16px}.topbar{height:auto;padding-top:14px;padding-bottom:14px}.topbar h1{font-size:1.05rem}.stats-grid,.form-grid,.settings-choice-grid,.settings-fields,.request-filter-bar,.resident-contact-row,.diagnostics-filter-bar,.demo-request-filter-bar,.diagnostics-metadata,.user-detail-list,.demo-detail-grid,.notification-status-grid,.demo-follow-up-fields{grid-template-columns:1fr}.diagnostics-filter-actions,.demo-request-filter-actions{grid-column:auto}.follow-up-meta{align-items:flex-start;flex-direction:column}.filter-actions,.form-section-header{align-items:stretch;flex-direction:column}.settings-fields label:last-child{grid-column:auto}.form-span-2{grid-column:auto}.category-options{grid-template-columns:1fr}.billing-band,.emergency-dashboard-alert,.emergency-summary{align-items:flex-start;flex-direction:column}.emergency-dashboard-alert .primary{width:100%}.modal-actions{align-items:stretch;flex-direction:column-reverse}.message-config-layout{grid-template-columns:1fr}.message-editor-meta{align-items:flex-start;flex-direction:column}}
