:root{--dsg-border-color:#e8ebed;--dsg-selection-border-color:#4580e6;--dsg-selection-border-radius:2px;--dsg-selection-border-width:2px;--dsg-selection-background-color:#4580e60a;--dsg-selection-disabled-border-color:#9da6ab;--dsg-selection-disabled-background-color:#0000000a;--dsg-corner-indicator-width:10px;--dsg-header-text-color:#9da6ab;--dsg-header-active-text-color:black;--dsg-cell-background-color:white;--dsg-cell-disabled-background-color:#fafafa;--dsg-transition-duration:.1s;--dsg-expand-rows-indicator-width:10px;--dsg-scroll-shadow-width:7px;--dsg-scroll-shadow-color:#0003}.dsg-container{border:solid 1px var(--dsg-border-color);cursor:cell;-webkit-user-select:none;user-select:none;box-sizing:border-box;color:#000;will-change:transform;direction:ltr;background:#fff;border-top:none;border-left:none;width:100%;position:relative;overflow:auto}.dsg-corner-indicator{border-bottom:solid var(--dsg-corner-indicator-width) var(--dsg-header-text-color);border-left:solid var(--dsg-corner-indicator-width) transparent;width:0;margin:auto}.dsg-row{background:var(--dsg-cell-background-color);box-shadow:0 1px var(--dsg-border-color) inset;position:absolute;top:0;left:0}.dsg-row-header{z-index:40;position:sticky;top:0}.dsg-cell{box-sizing:border-box;background:var(--dsg-cell-background-color);border:solid 1px var(--dsg-border-color);box-shadow:1px 1px var(--dsg-border-color);border-bottom:none;border-right:none;align-items:center;height:100%;display:flex;position:absolute;top:0}.dsg-hidden-cell{display:none}.dsg-cell-sticky-right{z-index:30;margin-left:auto;position:sticky;right:0;transform:translateY(-100%)}.dsg-cell-disabled{background:var(--dsg-cell-disabled-background-color)}.dsg-cell-header,.dsg-cell-gutter{color:var(--dsg-header-text-color);transition:color var(--dsg-transition-duration);box-shadow:none}.dsg-cell-header-container{padding:0 10px;line-height:15px}.dsg-cell-header.dsg-cell-gutter{box-shadow:1px 0 var(--dsg-border-color), 0 1px var(--dsg-border-color)}.dsg-cell-header.dsg-cell-sticky-right{box-shadow:0 1px var(--dsg-border-color)}.dsg-cell-gutter{z-index:30;justify-content:center;height:100%;padding:0 5px;position:sticky;left:0}.dsg-cell-header-active,.dsg-cell-gutter-active{color:var(--dsg-header-active-text-color)}.dsg-active-cell,.dsg-selection-rect{border:solid var(--dsg-selection-border-width) var(--dsg-selection-border-color);box-sizing:border-box;border-radius:var(--dsg-selection-border-radius);transition:all var(--dsg-transition-duration);pointer-events:none;z-index:20;position:absolute}.dsg-active-cell-focus{box-shadow:0 2px 5px #0000004d}.dsg-active-cell-disabled,.dsg-selection-rect-disabled{border-color:var(--dsg-selection-disabled-border-color)}.dsg-selection-rect{background:var(--dsg-selection-background-color)}.dsg-selection-rect-disabled{background:var(--dsg-selection-disabled-background-color)}.dsg-scrollable-view-container{pointer-events:none;position:absolute;top:0;left:0}.dsg-scrollable-view{z-index:10;box-sizing:border-box;border:solid 1px var(--dsg-border-color);box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset;border-bottom:none;border-right:none;transition:box-shadow .3s;position:sticky}.dsg-scrollable-view-t{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-r{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-b{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-l{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-t.dsg-scrollable-view-r{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-r.dsg-scrollable-view-b{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-b.dsg-scrollable-view-l{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-l.dsg-scrollable-view-t{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-t.dsg-scrollable-view-b{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-l.dsg-scrollable-view-r{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-t.dsg-scrollable-view-r.dsg-scrollable-view-b{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-r.dsg-scrollable-view-b.dsg-scrollable-view-l{box-shadow:0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-b.dsg-scrollable-view-l.dsg-scrollable-view-t{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-l.dsg-scrollable-view-t.dsg-scrollable-view-r{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-scrollable-view-t.dsg-scrollable-view-r.dsg-scrollable-view-b.dsg-scrollable-view-l{box-shadow:0 var(--dsg-scroll-shadow-width) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, calc(0px - var(--dsg-scroll-shadow-width)) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, 0 calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset, var(--dsg-scroll-shadow-width) 0 var(--dsg-scroll-shadow-width) calc(0px - var(--dsg-scroll-shadow-width)) var(--dsg-scroll-shadow-color) inset}.dsg-selection-col-marker-container{position:absolute;top:0}.dsg-selection-col-marker{background:var(--dsg-selection-border-color);width:100%;height:var(--dsg-selection-border-width);position:sticky}.dsg-selection-row-marker-container{position:absolute;left:0}.dsg-selection-row-marker{background:var(--dsg-selection-border-color);height:100%;width:var(--dsg-selection-border-width);position:sticky}.dsg-selection-col-marker-container,.dsg-selection-col-marker,.dsg-selection-row-marker-container,.dsg-selection-row-marker{z-index:20;transition:all var(--dsg-transition-duration);pointer-events:none}.dsg-selection-col-marker-disabled,.dsg-selection-row-marker-disabled{background:var(--dsg-selection-disabled-border-color)}.dsg-add-row{border:1px solid var(--dsg-border-color);color:#000;background:#fafafa;border-top:none;align-items:center;padding:7px 10px;display:flex}.dsg-add-row>*{margin-right:10px}.dsg-add-row-btn,.dsg-add-row-input{background:#fff;border:1px solid #dcdcdc;border-radius:2px;align-items:center;padding:7px 10px;transition:all .2s;display:flex;position:relative}.dsg-add-row-input{width:55px}.dsg-add-row-btn:hover,.dsg-add-row-input:hover{border-color:#c7c7c7}.dsg-add-row-btn:focus,.dsg-add-row-input:focus{border-color:var(--dsg-selection-border-color);outline:none}.dsg-add-row-btn:before{content:"";background:#9da6ab;width:10px;height:2px;margin-right:10px;display:inline-block}.dsg-add-row-btn:after{content:"";background:#9da6ab;width:2px;height:10px;margin-right:10px;display:block;position:absolute;left:14px}.dsg-input{box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;align-self:stretch;min-width:0;padding:0 10px;font-size:1rem;display:block}.dsg-input-suffix{opacity:.5;margin-left:-5px;padding-right:10px}.dsg-input-align-right{text-align:right}.dsg-hide-date-picker[type=date]::-webkit-inner-spin-button{-webkit-appearance:none;display:none}.dsg-hide-date-picker[type=date]::-webkit-calendar-picker-indicator{-webkit-appearance:none;display:none}.dsg-checkbox{margin:auto}.dsg-context-menu{z-index:10000;color:#000;background:#fff;border-radius:4px;padding:5px 0;position:fixed;box-shadow:0 2px 6px 2px #3c404326}.dsg-context-menu-item{cursor:default;padding:3px 20px}.dsg-context-menu-item:hover{background:#fafafa}.dsg-expand-rows-indicator{background:var(--dsg-cell-background-color);border:solid 1px var(--dsg-selection-border-color);box-shadow:0 0 0 1px var(--dsg-cell-background-color);width:var(--dsg-expand-rows-indicator-width);height:var(--dsg-expand-rows-indicator-width);box-sizing:border-box;transition:all var(--dsg-transition-duration);cursor:crosshair;z-index:25;position:absolute}.dsg-expand-rows-indicator-disabled{border:solid 1px var(--dsg-selection-disabled-border-color)}.dsg-expand-rows-rect{box-sizing:border-box;transition:all var(--dsg-transition-duration);pointer-events:none;background:#00000008;position:absolute}:root{color:#17202a;font-synthesis:none;text-rendering:optimizelegibility;--ink:#17202a;--muted:#5c6773;--blue:#155eef;--blue-dark:#0f46b9;--light:#f5f8ff;--line:#dfe6ef;--green:#15803d;background:#f5f8ff;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{min-height:100vh}.demo-mode-banner{color:#fff;background:#0f46b9;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 18px;font-size:13px;display:flex}.demo-intro{border:1px solid var(--line);border-radius:14px;width:min(520px,100vw - 32px);padding:28px;box-shadow:0 20px 70px #0f172a55}.demo-intro::backdrop{background:#0f172acc}.demo-intro h2{margin:8px 0 12px}.demo-intro p{line-height:1.55}.demo-intro button{margin:22px 0 0 auto;padding:10px 20px;display:block}.demo-intro button:disabled{opacity:.5;cursor:not-allowed}.demo-mode-banner strong{white-space:nowrap}.demo-guide{background:#edf3ff;border:1px solid #a8c2ff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:10px 16px 0;padding:10px 14px;font-size:14px;display:flex}.demo-guide strong{color:var(--blue-dark);white-space:nowrap}.demo-guide span{flex:260px}.demo-guide button{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:6px;padding:6px 12px;font-weight:700}.demo-mode-banner button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:6px;margin-left:auto;padding:5px 10px}.demo-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.demo-card{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.demo-card p{flex:1;margin:0}.demo-card.current{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.demo-support-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.demo-support-actions button{cursor:pointer;border-radius:8px;padding:10px 16px}.demo-tracking-overlay{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.demo-immobility-signal{z-index:2;color:#fff;pointer-events:none;background:#0f172ab3;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600;position:absolute;top:10px;left:10px}.demo-immobility-signal.on{background:#b45309}.capture-filters:disabled{opacity:.5}.app-header{z-index:40;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0}.header-main{justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:2px 4px;display:flex;position:relative}.header-identity{gap:2px;min-width:0;display:grid}.brand{color:var(--ink);white-space:nowrap;align-items:center;gap:8px;font-size:14px;font-weight:800;text-decoration:none;display:flex}.brand-mark{color:#fff;background:var(--blue);letter-spacing:.08em;border-radius:7px;place-items:center;width:26px;height:26px;font-size:9px;display:grid}.open-document{max-width:calc(100% - 220px);color:var(--muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;display:block;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.open-document strong{color:var(--ink)}.stage-row{border-top:1px solid var(--line);justify-content:space-between;align-items:stretch;gap:12px;padding-inline:4px;display:flex}.stage-nav{flex-shrink:0;align-items:stretch;gap:4px;display:flex}.stage-groups{scrollbar-width:none;flex-shrink:1;align-items:stretch;gap:4px;min-width:0;display:flex;overflow-x:auto}.stage-groups::-webkit-scrollbar{display:none}.stage-separator{background:var(--line);flex-shrink:0;align-self:center;width:1px;height:24px;margin:0 6px}.user-manual{border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;height:calc(100vh - 230px);min-height:420px;display:block}.stage-nav button{min-height:44px;color:var(--muted);letter-spacing:.05em;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;place-items:center;padding:0 clamp(8px,1.3vw,20px);font-size:13px;font-weight:800;display:grid}.stage-nav button:hover,.stage-nav button[data-state=active]{color:var(--blue-dark)}.stage-nav button[data-state=active]{border-bottom-color:var(--blue)}.utility-nav{flex-shrink:0;align-items:center;gap:16px;display:flex}.sales-requests{flex-direction:column;flex:auto;justify-content:center;gap:2px;min-width:0;padding:4px 0;display:flex}.sales-request-buttons{flex-wrap:wrap;gap:8px;display:flex}.sales-requests button{white-space:nowrap;height:32px;min-height:0;margin:0;padding:0 12px;font-size:13px;line-height:1}.sales-requests small{color:var(--muted);font-size:12px}@media (width>=701px){.stage-nav{flex-shrink:0}}@media (width<=700px){.stage-row{flex-wrap:wrap}.sales-requests{flex-basis:100%;order:3}.sales-request-buttons{flex-wrap:wrap}}.utility-nav a{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700;text-decoration:none}.utility-nav a:hover,.utility-nav a[aria-current]{color:var(--blue-dark);text-decoration:underline}.work-area{grid-template-columns:224px minmax(0,1fr);align-items:start;display:grid}.tool-sidebar{top:var(--app-header-height,0px);height:calc(100vh - var(--app-header-height,0px));border-right:1px solid var(--line);background:#f8faff;padding:12px 8px 24px;position:sticky;overflow-y:auto}.tool-panel[hidden]{display:none}.tool-group{margin-bottom:10px}.tool-sidebar:has(.modal-backdrop){z-index:50}.tool-sidebar-toggle{border:1px solid var(--line);width:28px;height:24px;color:var(--muted);cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;margin:-4px 2px 4px auto;padding:0;font-size:14px;line-height:1;display:flex}.tool-sidebar-toggle:hover{color:var(--blue-dark);border-color:#cfdcff}@media (width>=761px){.work-area:has(>.tool-sidebar.collapsed){grid-template-columns:56px minmax(0,1fr)}.tool-sidebar.collapsed{padding:12px 6px 24px}.tool-sidebar.collapsed .tool-sidebar-toggle{margin:-4px auto 6px}.tool-sidebar.collapsed .tool-group h3,.tool-sidebar.collapsed .no-tools,.tool-sidebar.collapsed .launch-summary,.tool-sidebar.collapsed .tool-buttons :is(label,select,input,output,small,p){display:none}.tool-sidebar.collapsed .tool-buttons,.tool-sidebar.collapsed .tool-buttons .drawing-tools,.tool-sidebar.collapsed .tool-buttons .zoom-field{grid-template-columns:1fr}.tool-sidebar.collapsed .tool-buttons button{justify-content:center;gap:0;padding:6px 0;font-size:0}.tool-sidebar.collapsed .tool-buttons button:not(:has(svg)):before{content:attr(title);text-overflow:ellipsis;white-space:nowrap;max-width:40px;font-size:10px;overflow:hidden}}.tool-group h3,.tool-group-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:10px 6px 4px;font-size:10.5px;font-weight:800;display:block}.tool-group:not(:has(.tool-buttons>*)){display:none}.no-tools{color:var(--muted);margin:8px 6px;font-size:12.5px;display:none}:is(.tool-panel:not(:has(.tool-buttons>*)) .no-tools,.no-tools.shown){display:block}.tool-buttons,.tool-buttons .protocol-command-tools,.tool-buttons .drawing-tools,.tool-buttons .zoom-field{gap:2px;display:grid}.tool-buttons button{color:#334155;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:36px;padding:6px 8px;font-size:13px;font-weight:600;display:flex}.tool-buttons button:hover:not(:disabled),.tool-buttons button[aria-current],.tool-buttons button.active{color:var(--blue-dark);background:#e8efff;border-color:#cfdcff}.tool-buttons button:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.tool-buttons button.primary-button{color:#fff;background:var(--blue);margin:0;font-weight:750}.tool-buttons button.primary-button:hover:not(:disabled){color:#fff;background:var(--blue-dark)}.tool-buttons button.danger-button{color:#b42318}.tool-buttons svg{flex:none;width:20px;height:20px}.tool-buttons .zone-name-switch{flex-direction:row}.tool-buttons .zone-name-switch .switch-track{order:2;margin-left:auto}.tool-buttons .drawing-tools{grid-template-columns:repeat(4,1fr)}.tool-buttons .drawing-tools .tool-button{justify-content:center;padding:6px 0}.tool-buttons .drawing-tools .scale-button{grid-column:1/-1}.tool-buttons .zoom-field{grid-template-columns:1fr auto 1fr;align-items:center;margin-left:0}.tool-buttons .zoom-field>:not([aria-label=Zoom\ out]):not(output):not([aria-label=Zoom\ in]){grid-column:1/-1}.tool-buttons .zoom-field>[aria-label=Zoom\ out],.tool-buttons .zoom-field>[aria-label=Zoom\ in]{justify-content:center;font-size:16px}.tool-buttons .zoom-field>button{justify-content:flex-start}.tool-buttons .zoom-field .zone-name-switch{flex-direction:row;justify-content:flex-start;align-items:center;min-width:0;font-size:13px}.tool-buttons .zoom-field output{min-width:44px;color:var(--muted);text-align:center;font-size:12px}.tool-buttons .pan-controls{justify-self:center}.tool-buttons .pan-controls button{justify-content:center;width:26px;min-height:18px;padding:0}.tool-buttons .launch-summary{margin-top:6px;font-size:11px}.sub-tabs,.page-tabs{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:flex-end;gap:4px;margin:4px 0 0;padding:0 0 0 12px;display:flex;overflow-x:auto}.sub-tabs button,.page-tabs button{border:1px solid var(--line);border-bottom-color:var(--line);color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border-radius:10px 10px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 16px 7px;font-size:13px;font-weight:700;display:flex}.sub-tabs button:hover,.page-tabs button:hover{color:var(--blue-dark)}.sub-tabs button[aria-selected=true],.page-tabs button[aria-current]{color:var(--blue-dark);background:#fff;border-bottom-color:#fff}.page-tabs svg{width:16px;height:16px}.explorer-status{gap:2px;display:grid}.explorer-note{color:var(--muted);margin:0 0 8px;font-size:13px}.explorer-note[role=alert]{color:#b42318}.explorer-actions{flex-wrap:wrap;gap:8px;display:flex}.explorer-body aside button.selected{background:#edf3ff;border-color:#a8c2ff}.protocol-command-tools{align-items:stretch;gap:3px;display:flex}.protocol-command-tools button{cursor:pointer}.protocol-command-tools button:disabled{cursor:not-allowed;opacity:.5}.zoom-field .zone-name-switch{flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:112px;display:flex}.zoom-field button:disabled{cursor:not-allowed;opacity:.5}.pan-controls{grid-template-rows:repeat(3,18px);grid-template-columns:repeat(3,26px);gap:1px;display:grid}.pan-controls button:first-child{grid-area:2/1}.pan-controls button:nth-child(2){grid-area:1/2}.pan-controls button:nth-child(3){grid-area:3/2}.pan-controls button:nth-child(4){grid-area:2/3}.switch-track{background:var(--muted);border-radius:9px;width:32px;height:18px;display:block;position:relative}.switch-track:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.zone-name-switch[aria-checked=true] .switch-track{background:var(--blue)}.zone-name-switch[aria-checked=true] .switch-track:after{transform:translate(14px)}.toolbar-link{color:var(--blue-dark);white-space:nowrap;font-size:13px;font-weight:700}main{min-width:0}.eyebrow{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;font-size:11px;font-weight:800}.user-badge{width:28px;height:28px;color:var(--blue-dark);cursor:pointer;background:#e8efff;border:1px solid #cfdcff;border-radius:50%;place-items:center;padding:0;font-size:10px;font-weight:800;display:grid;overflow:hidden}.user-avatar{object-fit:cover;width:100%;height:100%}.user-menu{position:relative}.menu-toggle{display:none}.logout-error{color:#b42318;background:#fdecec;border-bottom:1px solid #f3c7c7;margin:0;padding:8px 16px;font-size:13px}.user-menu-list{z-index:60;border:1px solid var(--line);background:#fff;border-radius:10px;min-width:220px;padding:6px;display:grid;position:fixed;top:64px;right:8px;box-shadow:0 16px 40px -20px #17202a73}.user-menu-who{border-bottom:1px solid var(--line);gap:2px;margin-bottom:4px;padding:8px 10px 10px;display:grid}.user-menu-who small{color:var(--muted);overflow-wrap:anywhere}.user-menu-list button{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 10px;font-weight:600}.user-menu-list button:hover,.user-menu-list button:focus-visible{background:var(--light)}.profile-email{color:var(--muted);margin:0 0 14px}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:16px;display:grid}.profile-card{border:1px solid var(--line);border-radius:12px;gap:12px;padding:18px;display:grid}.profile-card h3{margin:0;font-size:16px}.profile-card label{color:var(--muted);gap:6px;font-size:12px;font-weight:700;display:grid}.profile-card input:not([type=file]){border:1px solid var(--line);font:inherit;color:var(--ink);border-radius:8px;padding:10px 12px;font-weight:400}.profile-card small{font-weight:400}.profile-card .primary-button{justify-self:start;margin:0}.profile-saved{color:var(--green);margin:0;font-weight:600}.profile-photo{width:96px;height:96px;color:var(--blue-dark);background:#e8efff;border-radius:50%;place-items:center;font-size:30px;font-weight:800;display:grid;overflow:hidden}.profile-photo-pick{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;justify-self:start;padding:9px 14px;color:var(--ink)!important;font-size:14px!important}.topbar-actions{align-items:center;gap:12px;display:flex}.organization-selector{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.organization-selector select{border:1px solid var(--line);background:#fff;border-radius:6px;max-width:230px;padding:4px 7px;font-size:11px}.page-content{width:100%;margin:0;padding:4px}.page-content.full-width{padding:4px}.page-content.full-width .protocol-editor{padding:18px}.page-content.full-width .remote-preview-frame{max-width:calc((100vh - 230px) * (var(--preview-ratio)))}.metrics{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px;display:grid}.metric-card,.panel{border:1px solid var(--line);background:#fff;box-shadow:0 20px 40px -30px #17202a47}.metric-card{border-radius:14px;flex-direction:column;gap:5px;padding:22px 24px;display:flex}.metric-card strong{letter-spacing:-.04em;font-size:30px}.metric-card span{color:var(--muted);font-size:13px}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);align-items:start;gap:18px;display:grid}.panel{border-radius:16px;padding:30px}.demo-session-results{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.demo-session-results>div{border:1px solid var(--line);border-radius:8px;gap:4px;min-width:155px;padding:12px;display:grid}.demo-session-results strong{font-size:20px}.demo-session-results span{color:var(--muted);font-size:12px}.demo-session-results p{width:100%;font-size:12px}.panel h2{letter-spacing:-.025em;margin:8px 0 10px;font-size:23px}.panel p{max-width:610px;color:var(--muted);margin:0;line-height:1.65}.welcome-panel{background:linear-gradient(145deg,#fff 45%,#eef4ff);min-height:310px}.primary-button{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:9px;margin-top:28px;padding:11px 17px;font-weight:750}.primary-button:hover{background:var(--blue-dark)}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.api-status{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;font-weight:750;display:inline-flex}.api-status:before{content:"";border-radius:50%;width:7px;height:7px}.api-status.online{color:#08612f;background:#e8f7ee}.api-status.online:before{background:var(--green)}.api-status.offline{color:#8a4b08;background:#fff3df}.api-status.offline:before{background:#c56a08}.service-list{gap:0;margin:20px 0 0;padding:0;list-style:none;display:grid}.service-list li{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:14px 0;font-size:13px;display:flex}.service-list span{color:var(--muted)}.service-list b{text-align:right;font-weight:700}.placeholder{min-height:360px}.projects-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:18px;display:grid}.projects-layout.single{grid-template-columns:minmax(0,1fr)}.project-list{padding:22px}.project-list h2{margin-bottom:0}.project-list>div:last-of-type{gap:7px;margin-top:20px;display:grid}.project-list>div>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:9px;gap:4px;padding:12px;display:grid}.project-list>div>button.active{background:#edf3ff;border-color:#91b2ff}.project-list button span{color:var(--muted);text-transform:capitalize;font-size:11px}.project-editor{grid-template-columns:minmax(0,1fr);align-content:start;gap:20px;display:grid}.experiment-command-hint{color:var(--muted);margin:0;font-size:13px}.experiment-recording{margin:8px 0;font-weight:600}.project-devices{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.project-devices article{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);align-items:center;gap:16px;padding:14px;display:grid}.project-devices article>label{align-items:center;gap:10px;display:flex}.project-devices article span{gap:3px;display:grid}.project-devices article small{color:var(--muted);text-transform:capitalize}.project-devices article small.project-device-error{color:#a51d2d;font-weight:700}.project-editor footer{justify-content:flex-end;gap:10px;display:flex}.project-editor footer button{border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:10px 14px}.project-editor footer button:disabled{cursor:not-allowed;opacity:.5}.launch-summary{color:#08612f;background:#e8f7ee;border-radius:9px;gap:5px;padding:12px;font-size:12px;display:grid}.project-run{border:1px solid var(--line);border-radius:9px;gap:8px;padding:14px;display:grid}.project-run>span{color:var(--muted);font-size:12px}.project-run>div{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding-top:8px;font-size:12px;display:flex}.project-run a{color:var(--blue);font-weight:700}.project-readiness{border:1px solid var(--line);background:#f8fbfd;border-radius:12px;gap:12px;padding:18px;display:grid}.project-readiness p{color:var(--muted);margin:0;font-size:13px}.project-camera{max-width:750px}.project-camera .remote-preview-frame{margin:0}.project-camera .remote-preview-viewport>svg{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.readiness-signals{flex-wrap:wrap;gap:8px;display:flex}.readiness-signals span{border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 8px;font-size:12px}.project-readiness details{color:var(--muted);font-size:13px}.project-readiness summary,.advanced-settings summary{cursor:pointer;font-weight:700}.device-control{max-width:820px}.device-control+.device-control{margin-top:18px}.pairing-panel{padding:0;overflow:hidden}.paired-devices{padding:30px}.primary-button.compact{margin:0}.paired-device-list{gap:10px;margin-top:22px;display:grid}.paired-device-list article{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.paired-device-list article div{gap:4px;display:grid}.paired-device-list article span{color:var(--muted);text-transform:capitalize;font-size:12px}.modal-backdrop{z-index:50;background:#0c111db3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pairing-modal{text-align:center;background:#fff;border-radius:18px;width:min(480px,100%);max-height:calc(100vh - 40px);padding:34px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #00000059}.pairing-modal h2{margin:8px 0 10px}.pairing-modal p{color:var(--muted);line-height:1.5}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 9px;font-size:25px;position:absolute;top:12px;right:14px}.qr-frame,.qr-placeholder{border:1px solid var(--line);background:#fff;border-radius:14px;place-items:center;width:272px;height:272px;margin:24px auto 14px;padding:16px;display:grid}.qr-placeholder{color:var(--muted);background:#f7f9fc}.pairing-timer{font-variant-numeric:tabular-nums}.pairing-short-code{letter-spacing:.12em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:750}.qr-target{justify-content:center;gap:8px;margin:14px 0;display:flex}.qr-target button{cursor:pointer;background:#fff;border:1px solid #a7b5c6;border-radius:8px;padding:8px 12px}.qr-target button[aria-pressed=true]{background:#e7f0fc;border-color:#3268a7}.pairing-linux{background:#f7f9fc;border-radius:10px;margin:16px 0;padding:10px 15px}.pairing-linux p{margin:8px 0;font-size:13px}.pairing-linux code{overflow-wrap:anywhere}.pairing-success{color:#08612f;background:#e8f7ee;border-radius:12px;gap:7px;margin:28px 0 18px;padding:20px;display:grid}.pairing-success span{font-size:13px}.text-button{color:var(--blue-dark);cursor:pointer;background:0 0;border:0;padding:9px;font-weight:700}.auth-page{background:radial-gradient(circle at top,#e8efff,#f5f8ff 45%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:#fff;border-radius:18px;gap:16px;width:min(440px,100%);padding:36px;display:grid;box-shadow:0 28px 60px -35px #17202a80}.auth-card h1{margin:0 0 4px}.auth-card label{color:var(--muted);gap:7px;font-size:12px;font-weight:700;display:grid}.auth-needs{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin:0;padding:12px;display:grid}.auth-needs legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.auth-card .auth-needs label{color:var(--ink);cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;padding:5px 4px;font-size:14px;font-weight:500;display:grid}.auth-card .auth-needs input{width:16px;height:16px;accent-color:var(--blue);margin:0;padding:0}.auth-card a.primary-button{text-align:center;text-decoration:none}.auth-card input{border:1px solid var(--line);width:100%;font:inherit;border-radius:8px;padding:11px 12px}.auth-card input::placeholder{font-weight:400}.auth-card .primary-button{margin:6px 0 0}.auth-brand{color:var(--ink);padding:0}.auth-card small{color:var(--muted);font-size:12px;font-weight:400}.register-page{flex-wrap:wrap;justify-content:center;align-items:center;gap:32px;display:flex}.register-card{order:2;width:min(460px,100%)}.register-card h1{margin:0}.register-subtitle{color:var(--muted);margin:-10px 0 0;font-size:15px}.register-progress{color:var(--muted);gap:7px;font-size:12px;font-weight:700;display:grid}.register-progress div{gap:7px;display:flex}.register-progress div span{background:#dce4ef;border-radius:99px;flex:1;height:5px;transition:background .2s}.register-progress div span.on{background:var(--blue)}.register-step{gap:14px;display:grid}.register-step[hidden]{display:none}.register-step h2{margin:0;font-size:18px}.register-step>p{color:var(--muted);margin:-8px 0 0;font-size:14px;line-height:1.45}.register-actions{gap:10px;display:flex}.register-actions .primary-button{flex:1;margin:0}.register-actions .secondary-button{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:11px 17px;font-weight:700}.register-actions .secondary-button:hover{background:var(--light)}.register-switch{color:var(--muted);text-align:center;margin:0;font-size:14px}.register-switch .text-button{padding:0 2px}.register-benefits{background:#eef3ff;border:1px solid #d3e0fb;border-radius:18px;order:1;width:min(340px,100%);padding:28px}.register-benefits h2{margin:0 0 16px;font-size:18px}.register-benefits ul{gap:16px;margin:0;padding:0;list-style:none;display:grid}.register-benefits li{grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;display:grid}.register-benefits li>span:last-child{gap:3px;display:grid}.register-benefits small{color:var(--muted);font-size:13px;line-height:1.4}.register-tick{width:26px;height:26px;color:var(--green);background:#dcf3e4;border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}@media (width<=820px){.register-page{gap:18px}.register-benefits{padding:20px}}@media (width<=480px){.auth-card.register-card{padding:24px 20px}}.form-error{background:#fff0f1;border-radius:8px;padding:10px 12px;font-size:13px;color:#a51d2d!important;margin:0!important}.device-heading-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.device-selector{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.device-selector select{font:inherit;background:#fff;border:1px solid #d5dae3;border-radius:8px;padding:7px 10px}.device-selector.empty{color:#7a4b0b;font-size:13px;font-weight:600}.device-state{text-transform:capitalize;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750}.device-state.online{color:#08612f;background:#e8f7ee}.device-state.offline{color:#7a4b0b;background:#fff3df}.device-details{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,1fr);gap:1px;margin:26px 0;display:grid;overflow:hidden}.device-details div{background:#fff;justify-content:space-between;gap:16px;padding:14px 16px;display:flex}.device-details dt{color:var(--muted)}.device-details dd{margin:0;font-weight:750}.resource-warning{color:#7a4b0b;background:#fff8e9;border:1px solid #f0cf91;border-radius:9px;gap:5px;margin:-12px 0 24px;padding:12px 14px;font-size:12px;display:grid}.resource-warning small{color:var(--muted)}.remote-preview-frame{aspect-ratio:16/9;color:#aab7ce;background:#0c111d;border-radius:12px;place-items:center;width:100%;margin:24px auto;display:grid;position:relative;overflow:hidden}.remote-preview{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.remote-preview-viewport{transform-origin:0 0;position:absolute;inset:0}.detection-foreground,.detection-diagnostic-layer{image-rendering:pixelated}.detection-diagnostic{gap:6px;margin-top:8px;display:grid}.detection-diagnostic ul{gap:4px;margin:0;padding:0;font-size:.85rem;list-style:none;display:grid}.detection-diagnostic li{align-items:center;gap:8px;display:flex}.detection-diagnostic li span{border-radius:3px;flex:none;width:12px;height:12px}.preview-session-error{z-index:2;text-align:center;place-items:center;gap:8px;max-width:420px;padding:18px;display:grid}.preview-session-error .text-button{color:#b9ceff}.demo-media-status{z-index:10;background:#0c111de6;align-content:center;max-width:none;position:absolute;inset:0}.camera-options{gap:10px;display:grid}.camera-confirmation{border:1px solid var(--line);background:#f7f9fc;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:16px 0 24px;padding:12px 14px;font-size:12px;display:flex}.camera-confirmation .primary-button{flex:none;margin:0}.focus-control{border:1px solid var(--line);background:#f7f9fc;border-radius:10px;grid-template-columns:minmax(170px,1fr) auto minmax(240px,2fr) auto;align-items:center;gap:14px;margin:16px 0;padding:14px 16px;display:grid}.focus-control>div,.focus-control label{gap:5px;display:grid}.focus-control span,.focus-control label{color:var(--muted);font-size:12px}.focus-control label{grid-template-columns:auto 1fr auto;align-items:center}.focus-control input{min-width:120px;accent-color:var(--blue)}.focus-control output{color:var(--ink);font-variant-numeric:tabular-nums}.camera-option{border:1px solid var(--line);border-radius:11px;gap:10px;padding:14px 16px;display:grid}.camera-option.active{background:#f4f7ff;border-color:#91b2ff}.camera-option strong{font-size:13px}.camera-metadata{color:var(--muted);text-transform:capitalize;font-size:11px}.resolution-actions{min-height:46px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.resolution-button{color:var(--blue-dark);cursor:pointer;background:#eef4ff;border:1px solid #c9d8ff;border-radius:9px;padding:11px 16px;font-weight:750}.resolution-button:hover{color:#fff;background:var(--blue)}.resolution-button:disabled{cursor:wait;opacity:.55}.configuration-result{background:#f7f8fa;border-radius:9px;padding:12px 14px;margin-top:20px!important}.configuration-result.success{color:#08612f;background:#e8f7ee}.geometry-warning{background:#fff0f1;border-radius:8px;padding:10px 12px;color:#a51d2d!important;margin-top:14px!important}.protocol-editor{border:1px solid var(--line);background:#fff;border-radius:16px;padding:30px;box-shadow:0 20px 40px -30px #17202a47}.protocol-editor>p{color:var(--muted)}.advanced-settings{border:1px solid var(--line);border-radius:8px;padding:10px}.advanced-settings .capture-filters{margin-top:12px}.editor-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.editor-heading h2{margin:8px 0}.editor-actions{gap:10px;display:flex}.editor-actions button{color:var(--blue-dark);cursor:pointer;text-transform:capitalize;background:#eef4ff;border:1px solid #c9d8ff;border-radius:9px;padding:10px 14px;font-weight:750}.editor-actions .primary-button{color:#fff;background:var(--blue);margin:0}.editor-actions button:disabled{cursor:not-allowed;opacity:.5}.drawing-tools{align-items:stretch;gap:2px;display:flex}.drawing-tools button{color:#334155;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;font-weight:700}.drawing-tools button:hover{color:var(--blue-dark);background:#e8efff;border-color:#cfdcff}.drawing-tools button.active{color:#fff;background:var(--blue)}.drawing-tools button:disabled{cursor:not-allowed;opacity:.5}.drawing-tools .tool-button{place-items:center;width:46px;min-width:46px;display:grid}.drawing-tools .tool-button svg{width:21px;height:21px}.drawing-tools .scale-button{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:5px;padding:0 8px;font-size:11px;display:flex}.drawing-tools .scale-button svg{width:21px;height:21px}.drawing-tools .arena-button{white-space:nowrap;min-width:90px;padding-inline:8px;font-size:11px}.protocol-editor>.drawing-tools,.protocol-editor>.protocol-command-tools{margin-top:16px}.protocol-editor>.protocol-command-tools button{color:var(--blue-dark);background:#eef4ff;border:1px solid #c9d8ff;border-radius:9px;padding:10px 14px}.protocol-editor>.zoom-field{justify-content:flex-end;margin-top:16px}.protocol-editor>.zoom-field button{color:var(--blue-dark);cursor:pointer;background:#eef4ff;border:1px solid #c9d8ff;border-radius:9px;padding:10px 14px}.protocol-load-fields{flex-wrap:wrap;align-items:end;gap:8px;width:100%;display:flex}.protocol-load-fields label{color:var(--muted);gap:4px;font-size:11px;font-weight:700;display:grid}.protocol-load-fields input{border:1px solid var(--line);border-radius:7px;width:150px;padding:9px}.protocol-load-fields label:nth-child(2) input{width:84px}.protocol-browser{margin:16px 0}.protocol-browser-panel{border:1px solid var(--line);background:#f8faff;border-radius:10px;margin-top:10px;padding:14px}.protocol-breadcrumbs{gap:4px;margin-bottom:10px;display:flex}.protocol-breadcrumbs button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:4px}.protocol-browser-list{gap:7px;display:grid}.folder-entry,.protocol-entry{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.folder-entry{text-align:left;cursor:pointer}.protocol-entry{justify-content:space-between;align-items:center;gap:8px;display:flex}.protocol-entry span{margin-right:auto;display:grid}.protocol-entry small{color:var(--muted)}.protocol-explorer{background:#fff;border:1px solid #c9d3e0;border-radius:12px;grid-template-rows:auto auto auto 1fr auto;width:min(980px,96vw);height:min(680px,90vh);padding:0 24px 20px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000059}.protocol-explorer header,.protocol-explorer footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.protocol-explorer>header{background:linear-gradient(#f4f7fb,#e7edf5);border-bottom:1px solid #c9d3e0;margin:0 -24px 10px;padding:6px 8px 6px 16px}.protocol-explorer>header>div{white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:8px;min-width:0;display:flex;overflow:hidden}.protocol-explorer>header .modal-close{border-radius:6px;flex:none;padding:0 8px;font-size:22px;line-height:1;position:static}.protocol-explorer>header .modal-close:hover{color:#fff;background:#d92d20}.protocol-explorer>header .eyebrow:after{content:"—";color:var(--muted);margin-left:8px}.protocol-explorer h2{text-overflow:ellipsis;margin:0;font-size:15px;overflow:hidden}.explorer-toolbar{border-block:1px solid var(--line);flex-wrap:wrap;gap:7px;padding:10px 0;display:flex}.explorer-toolbar button,.protocol-explorer footer button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:8px 11px}.explorer-toolbar button{align-items:center;gap:6px;display:inline-flex}.explorer-toolbar button svg{flex:none;width:16px;height:16px}.explorer-toolbar button:disabled{opacity:.45;cursor:not-allowed}.explorer-toolbar input{border:1px solid var(--line);border-radius:7px;min-width:190px;margin-left:auto;padding:8px}.explorer-breadcrumbs{gap:3px;padding:10px 0;display:flex}.explorer-breadcrumbs button{color:var(--blue);cursor:pointer;background:0 0;border:0}.explorer-body{border:1px solid var(--line);border-radius:9px;grid-template-columns:180px 1fr 150px;min-height:0;display:grid;overflow:hidden}.explorer-body aside,.explorer-body main{min-width:0;padding:10px;overflow:auto}.explorer-body aside{background:#f5f7fb}.explorer-body main{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:8px;display:grid}.explorer-body main button,.explorer-body aside button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;gap:5px;padding:11px;display:grid}.explorer-body main button:hover,.explorer-body main button.selected{background:#edf3ff;border-color:#a8c2ff}.explorer-body small{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.version-list{border-left:1px solid var(--line)}.protocol-explorer footer{padding-top:12px}.protocol-save-dialog{background:#fff;border-radius:16px;gap:14px;width:min(520px,96vw);padding:28px;display:grid;position:relative;box-shadow:0 30px 80px #00000059}.protocol-save-dialog header,.protocol-save-dialog footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.protocol-save-dialog h2{margin:5px 0}.protocol-save-dialog label{color:var(--muted);gap:5px;font-size:12px;font-weight:700;display:grid}.protocol-save-dialog input{border:1px solid var(--line);font:inherit;border-radius:8px;padding:10px}.protocol-save-dialog footer{justify-content:flex-end;margin-top:6px}.protocol-save-dialog footer button{border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:10px 15px}.save-explorer-body{grid-template-columns:180px 1fr}.save-explorer-body main .saved-file{color:var(--ink);gap:5px;padding:11px;display:grid}.save-explorer-footer{flex-wrap:wrap;align-items:end!important}.save-explorer-footer .save-error{color:#a51d2d;background:#fff0f1;border-radius:7px;flex-basis:100%;margin:0;padding:8px 10px}.save-explorer-footer label{color:var(--muted);gap:4px;font-size:11px;font-weight:700;display:grid}.save-explorer-footer input{border:1px solid var(--line);width:170px;font:inherit;border-radius:7px;padding:9px}.save-explorer-footer label:nth-of-type(2) input{width:85px}.automatic-version{color:var(--muted);white-space:nowrap;align-self:center;font-size:12px;font-weight:700}.protocol-explorer footer .primary-button{color:#fff;background:var(--blue);border-color:var(--blue);margin:0}.protocol-explorer footer .primary-button:hover{background:var(--blue-dark)}.protocol-explorer footer .primary-button:disabled{opacity:.5;cursor:not-allowed}.editor-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:18px;display:grid}.drawing-layer{z-index:2;cursor:crosshair;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.drawing-layer,.drawing-layer *{-webkit-user-select:none;user-select:none}.drawing-layer.selecting{cursor:default}.drawing-layer.panning,.drawing-layer.panning polygon{cursor:grabbing}.drawing-layer.selecting polygon{cursor:move}.drawing-layer.drawing polygon{pointer-events:none}.drawing-layer.selecting polygon:not(.selection-group):not(.selection-marquee){pointer-events:all}.zoom-field{align-items:center;gap:6px;margin-left:auto;display:flex}.zoom-field output{min-width:46px;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;font-size:12px}.zone-handle{fill:#fff;stroke:var(--blue);stroke-width:4px;vector-effect:non-scaling-stroke;cursor:grab}.zone-handle.active,.zone-handle.group{fill:var(--blue);stroke:#fff}.selection-marquee{fill:#2d66f61a;stroke:var(--blue);stroke-width:2px;stroke-dasharray:8 5;pointer-events:none}.selection-group{fill:none;stroke:var(--blue);stroke-width:2px;stroke-dasharray:8 5;pointer-events:none}.zone-overlay-label{fill:#fff;paint-order:stroke;stroke:#0c111dd9;stroke-width:6px;vector-effect:non-scaling-stroke;font-size:25px;font-weight:800}.scale-reference-line{stroke:#facc15;stroke-width:4px;filter:drop-shadow(0 0 2px #111827)}.scale-dialog{background:#fff;border-radius:14px;gap:15px;width:min(380px,100%);padding:26px;display:grid;box-shadow:0 30px 80px #00000059}.scale-dialog.test-video{width:min(960px,100%)}.test-video video{background:#000;border-radius:8px;width:100%;max-height:70vh}.scale-dialog h2,.scale-dialog p{margin:0}.scale-dialog label{gap:6px;font-weight:700;display:grid}.scale-dialog input,.scale-dialog select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:10px}.trial-request{width:min(640px,100%);max-height:92vh;overflow:auto}.trial-fields{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.trial-terms{border:1px solid var(--line);border-radius:8px;max-height:240px;padding:10px 12px;font-size:13px;overflow:auto}.trial-terms-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.trial-terms-text h4{margin:10px 0 4px}.trial-terms-text p{margin:0 0 6px}.scale-dialog .trial-accept{align-items:flex-start;gap:8px;font-weight:600;display:flex}.scale-dialog .trial-accept input{width:auto;margin-top:3px}.scale-dialog output{font-variant-numeric:tabular-nums}.scale-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.scale-dialog-actions button{cursor:pointer;border-radius:8px;margin:0;padding:10px 14px}.scale-dialog.video-file-dialog{width:min(820px,100%);max-height:calc(100vh - 32px);overflow-y:auto}.video-file-dialog .scale-dialog-actions{flex-wrap:wrap}.video-file-pick{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:10px 14px;font-weight:700}.video-file-pick[aria-disabled=true]{opacity:.45;pointer-events:none}.video-upload-progress{gap:6px;display:grid}.video-upload-progress progress{width:100%}.video-source-line{overflow-wrap:anywhere;margin:4px 0 0;font-size:12px}.zone-panel{border:1px solid var(--line);background:#f7f9fc;border-radius:12px;min-height:260px;margin-top:24px;padding:16px}.plugin-picker{gap:6px;margin-bottom:14px;font-size:13px;font-weight:700;display:grid}.plugin-picker select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:9px}.capture-filters{border:1px solid var(--line);border-radius:8px;gap:14px;margin:0 0 20px;padding:12px;display:grid}.capture-filters legend{color:var(--muted);padding:0 4px;font-size:12px}.filter-slider{color:var(--muted);gap:6px;font-size:12px;display:grid}.filter-slider-row{grid-template-columns:1fr 64px;align-items:center;gap:10px;display:grid}.filter-slider-row input[type=range]{width:100%;accent-color:var(--blue)}.filter-slider-row input[type=number]{border:1px solid var(--line);border-radius:6px;width:100%;padding:5px 6px}.zone-panel h3{margin:0 0 12px}.zone-panel p{color:var(--muted);font-size:13px}.zone-row{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;width:100%;padding:10px;display:grid}.zone-row.active{background:#e8efff}.zone-row i{border-radius:50%;width:10px;height:10px}.zone-row small{color:var(--muted)}.arena-group{border-left:2px solid #d7e2f5;margin-bottom:6px}.arena-group>.zone-row{font-weight:750}.arena-zones{border-left:1px solid #d7e2f5;margin-left:14px;padding-left:6px}.zone-parent{background:#edf3ff;border-radius:7px;margin:0;padding:8px 10px}.zone-settings{border-top:1px solid var(--line);gap:14px;margin-top:16px;padding-top:16px;display:grid}.zone-settings>label{color:var(--muted);gap:6px;font-size:12px;display:grid}.zone-settings input[type=text],.zone-settings input:not([type]){border:1px solid var(--line);border-radius:7px;width:100%;padding:9px}.arena-overrides{border:1px solid var(--line);border-radius:8px;gap:8px;padding:8px 10px;display:grid}.arena-overrides label{color:var(--muted);gap:4px;font-size:12px;display:grid}.arena-overrides input{border:1px solid var(--line);border-radius:7px;width:100%;padding:7px}.zone-settings fieldset{border:1px solid var(--line);border-radius:8px;gap:7px;margin:0;padding:10px;display:grid}.zone-settings legend{color:var(--muted);font-size:12px}.zone-settings fieldset label{text-transform:capitalize;gap:7px;font-size:13px;display:flex}.danger-button{color:#a51d2d;cursor:pointer;background:#fff0f1;border:1px solid #ffc9cf;border-radius:7px;padding:9px}.maintenance-panel{gap:10px;padding:12px 0;display:grid}.maintenance-form,.maintenance-jobs-actions{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.maintenance-form label{gap:4px;min-width:min(360px,100%);display:grid}.maintenance-jobs-actions span{gap:4px;display:inline-flex}.maintenance-job-table{border-collapse:collapse;width:100%}.maintenance-job-table th,.maintenance-job-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dde3ea;padding:4px 6px}.maintenance-job-table pre{white-space:pre-wrap;max-width:60ch;max-height:240px;overflow:auto}.vertex-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vertex-actions button{color:var(--blue-dark);cursor:pointer;background:#eef4ff;border:1px solid #c9d8ff;border-radius:7px;padding:8px}.vertex-actions button:disabled{cursor:not-allowed;opacity:.5}.metric-preview{border:1px solid var(--line);background:#fff;border-radius:8px;gap:7px;padding:12px;display:grid}.metric-preview small{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.metric-preview span{color:var(--muted);text-transform:capitalize;justify-content:space-between;gap:12px;font-size:11px;display:flex}.metric-preview b{color:var(--ink)}.invitation-banner{color:#14366f;background:#e8efff;border:1px solid #b8ccff;border-radius:12px;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;display:flex}.invitation-banner button,.invitation-link button{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:7px;padding:8px 12px}.organization-layout{grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);align-items:start;gap:18px;display:grid}.organization-members{grid-column:1/-1}.permission-list{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.permission-list span{color:#28456f;background:#eef4ff;border-radius:999px;padding:5px 8px;font-size:11px}.invitation-form{grid-template-columns:minmax(180px,1fr) 160px 140px auto;gap:8px;margin-top:18px;display:grid}.invitation-form input,.invitation-form select,.invitation-link input,.member-row select{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:10px}.invitation-link{gap:6px;margin-top:18px;display:grid}.update-window-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.update-window-form label{align-items:center;gap:6px;display:flex}.update-window-form input,.update-window-form select{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;max-width:100%;padding:10px}.update-window-form select{flex:12rem}.invitation-link>div{gap:8px;display:flex}.invitation-link input{flex:1}.invitation-link small{color:var(--muted)}.member-row{border-top:1px solid var(--line);grid-template-columns:minmax(200px,1fr) 150px auto;align-items:center;gap:12px;padding:14px 0;display:grid}.member-row>div{gap:4px;display:grid}.member-row span{color:var(--muted);font-size:12px}.member-row .form-error{grid-column:1/-1}@media (hover:hover) and (pointer:fine){.header-main{height:32px;min-height:0;padding-block:0;transition:height .18s;overflow:hidden}.header-main:hover,.header-main:focus-within{height:64px}.header-main .brand{font-size:11px}.header-main .brand-mark{border-radius:4px;width:16px;height:16px;font-size:7px}.header-main:hover .brand,.header-main:focus-within .brand{font-size:14px}.header-main:hover .brand-mark,.header-main:focus-within .brand-mark{border-radius:7px;width:26px;height:26px;font-size:9px}.header-main .topbar-actions{visibility:hidden;opacity:0}.header-main:hover .topbar-actions,.header-main:focus-within .topbar-actions{visibility:visible;opacity:1;transition:opacity .12s}}@media (width<=850px){.header-main,.stage-row,.page-content{padding-inline:4px}.header-main{flex-wrap:wrap}.content-grid{grid-template-columns:1fr}.organization-layout{grid-template-columns:minmax(0,1fr)}.editor-layout{grid-template-columns:1fr}.projects-layout{grid-template-columns:minmax(0,1fr)}.focus-control{grid-template-columns:1fr;align-items:stretch}.zone-panel{margin-top:0}}@media (width<=620px){.header-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:8px;width:100%}.open-document{text-align:left;max-width:100%;font-size:11px;position:static;transform:none}.recording-indicator{grid-column:1/-1;min-width:0;margin-left:0}.recording-indicator button{max-width:100%}.recording-indicator button span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand>span:not(.brand-mark){display:none}.invitation-form,.workspace-row{grid-template-columns:1fr}.header-main,.stage-row{padding-inline:4px}.stage-row{flex-wrap:wrap;gap:0}.utility-nav{justify-content:flex-end;gap:14px;width:100%;min-height:36px}.header-main{gap:4px}.topbar-actions{gap:8px;width:100%;overflow-x:auto}.organization-selector select{max-width:160px}.stage-nav button{min-height:46px;padding-inline:9px;font-size:11px}.page-content{padding:4px}.metrics,.device-details{grid-template-columns:1fr}.project-devices article{grid-template-columns:minmax(0,1fr)}.panel{padding:23px}.panel-heading,.editor-heading{flex-direction:column}.editor-actions{flex-wrap:wrap;width:100%}.invitation-form,.member-row{grid-template-columns:1fr}.protocol-explorer{grid-template-columns:minmax(0,1fr);padding:0 12px 12px}.explorer-breadcrumbs,.protocol-explorer footer,.protocol-explorer footer>div{flex-wrap:wrap}.explorer-breadcrumbs button{overflow-wrap:anywhere;text-align:left}.protocol-explorer>header{margin-inline:-12px}.explorer-toolbar input{flex:100%;min-width:0;margin-left:0}.explorer-body,.save-explorer-body{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.explorer-body aside{flex-wrap:wrap;align-content:start;gap:4px;max-height:96px;display:flex}.explorer-body aside:empty{display:none}.explorer-body main{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.save-explorer-footer input,.save-explorer-footer label:nth-of-type(2) input{width:100%}}.experiment-button{cursor:pointer;color:#fff;border:0;border-radius:9px;align-items:center;gap:8px;margin:0;padding:11px 17px;font-weight:750;display:inline-flex}.experiment-button:disabled{cursor:not-allowed;opacity:.5}.experiment-button.start{background:#16a34a}.experiment-button.start:hover:not(:disabled){background:#15803d}.experiment-button.stop{background:#dc2626}.experiment-button.stop:hover:not(:disabled){background:#b91c1c}.rec-dot{background:#fff;border-radius:50%;width:9px;height:9px;display:inline-block}.sessions-gallery{gap:16px;display:grid}.session-replay{border:1px solid var(--line);border-radius:10px;gap:12px;padding:16px;display:grid}.session-replay-stage{background:#141920;border-radius:8px;max-width:100%;position:relative;overflow:hidden}.session-replay-stage svg{width:100%;height:100%;display:block}.session-replay-stage text{font-weight:700}.session-replay-no-photo{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.track-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:16px;display:grid}.track-layout>.session-replay:only-child{grid-column:1/-1}.session-picker{border:1px solid var(--line);background:#fff;border-radius:10px;gap:4px;padding:10px;display:grid}.session-picker h4{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:2px 6px 6px;font-size:10.5px;font-weight:800}.session-picker p{color:var(--muted);margin:0 6px;font-size:13px}.session-picker ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.session-picker li button{text-align:left;width:100%;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 8px;padding:6px 8px;font-size:13px;display:grid}.session-picker li button:hover:not(:disabled){background:var(--light)}.session-picker li button[aria-current]{color:var(--blue-dark);background:#e8efff;border-color:#cfdcff}.session-picker li button:disabled{opacity:.55;cursor:not-allowed}.session-picker li button b{font-weight:600}.session-picker li button small,.session-picker li button .meter{grid-column:2}.session-picker li button small{color:var(--muted);font-size:11.5px}.session-picker .dot{background:var(--green);border-radius:4px;grid-row:span 2;width:8px;height:8px}.session-picker .dot.recording{background:#b45309}.session-picker .dot.interrupted{background:#b42318}.session-picker select{border:1px solid var(--line);width:100%;font:inherit;border-radius:8px;padding:8px;display:none}.meter{background:var(--line);border-radius:3px;height:6px;display:block;overflow:hidden}.meter i{background:var(--blue);height:100%;display:block}.spacer{flex:1}.pill{height:26px;color:var(--green);white-space:nowrap;background:#eaf6ee;border-radius:13px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.pill.warn{color:#b45309;background:#fdf1e3}.pill.neutral{color:var(--muted);background:#eef1f5}.replay-header{gap:8px;display:grid}.replay-identity{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.replay-identity h3{margin:0;font-size:18px}.replay-identity h3 small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:400;display:block}.adjust-notice{color:#7a3f06;background:#fdf1e3;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 14px;font-size:13px;display:flex}.adjust-notice button{border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:7px;padding:7px 12px;font-weight:700}.adjust-notice button.primary-button{color:#fff;background:var(--blue);border-color:var(--blue)}.track-work{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.track-work>.protocol-editor{flex:100%}.replay-stage{border:1px solid var(--line);background:#fff;border-radius:8px;flex:999 460px;gap:10px;min-width:0;padding:10px;display:grid}.replay-stage .session-replay-stage{justify-self:center;width:100%;max-width:560px}.replay-now{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:13px;display:flex}.replay-now b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:17px;padding:0 12px;font-size:13px;font-weight:700}.chip[aria-pressed=true]{color:var(--blue-dark);background:#e8f0ff;border-color:#b9cdfa}.chip:disabled{opacity:.45;cursor:not-allowed}.distance-per-minute{border:1px solid var(--line);background:#fff;border-radius:8px;flex:280px;gap:8px;min-width:0;max-width:360px;padding:12px 14px;display:grid}.distance-per-minute h4{margin:0;font-size:13px}.distance-per-minute p{color:var(--muted);margin:0;font-size:12px}.distance-per-minute svg{width:100%;height:auto;display:block}.distance-per-minute .bar{fill:#b9cdfa;cursor:pointer}.distance-per-minute .bar.current,.distance-per-minute .bar:hover{fill:var(--blue)}.replay-timeline{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:150px minmax(0,1fr);display:grid;overflow:hidden}.tl-transport{border-right:1px solid var(--line);align-content:center;gap:8px;padding:12px;display:grid}.tl-play{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:22px;place-items:center;width:44px;height:44px;display:grid}.tl-time{font-variant-numeric:tabular-nums;font-size:13px}.tl-time small{color:var(--muted);font-size:11px;display:block}.tl-speed{gap:4px;display:flex}.tl-speed button{border:1px solid var(--line);min-height:30px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:4px;flex:1;font-size:12px;font-weight:700}.tl-speed button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.tl-lanes{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;min-width:0;position:relative}.tl-ruler{border-bottom:1px solid var(--line);height:28px;color:var(--muted);font-size:11px;position:relative}.tl-ruler span{position:absolute;top:7px;transform:translate(-50%)}.tl-ruler span:first-child{transform:none}.tl-ruler span:last-child{transform:translate(-100%)}.tl-lane{border-bottom:1px solid var(--line);height:36px;position:relative}.tl-lane:last-of-type{border-bottom:0}.tl-name{z-index:2;color:var(--muted);font-size:11px;font-weight:700;position:absolute;top:2px;left:8px}.tl-strip{height:14px;position:absolute;top:16px;left:0;right:0}.tl-none{color:var(--muted);font-size:11px;position:absolute;top:-1px;right:8px}.tl-block{background:var(--blue);cursor:pointer;border:0;border-radius:2px;height:100%;padding:0;position:absolute;top:0}.tl-lane.immobile .tl-block{background:#8a96a3}.tl-lane.confidence .tl-block{background:#d97706}.tl-head{background:var(--ink);z-index:3;pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.tl-head:before{content:"";border:6px solid #0000;border-top:8px solid var(--ink);position:absolute;top:0;left:-5px}.replay-help{color:var(--muted);margin:0;font-size:12.5px}.replay-details>summary{cursor:pointer;font-weight:700}.replay-details[open]>summary{margin-bottom:10px}.replay-empty{border:1px dashed var(--line);text-align:center;border-radius:8px;align-content:center;justify-items:center;gap:10px;min-height:280px;padding:24px;display:grid}.replay-empty h4{margin:0}.replay-empty p{max-width:46ch;color:var(--muted);margin:0}.replay-empty .meter{width:min(320px,100%);height:8px}.replay-empty small{color:var(--muted)}.box-comparison h4{margin:10px 0 6px;font-size:13px}.box-comparison table{border-collapse:collapse;width:100%;font-size:12.5px}.box-comparison th,.box-comparison td{border-bottom:1px solid var(--line);text-align:right;padding:4px 6px}.box-comparison th:first-child,.box-comparison td:first-child{text-align:left}.box-comparison td.changed{color:var(--blue-dark);font-weight:700}@media (width<=760px){.track-layout{grid-template-columns:minmax(0,1fr)}.session-picker ul{display:none}.session-picker select{display:block}.replay-timeline{grid-template-columns:minmax(0,1fr)}.tl-transport{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center}}.results-explorer{border:1px solid var(--line);background:#f8fbfd;border-radius:10px;gap:12px;padding:16px;display:grid}.results-explorer h3{margin:3px 0}.results-explorer p{color:var(--muted);margin:0;font-size:13px}.results-question{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.results-question label{color:var(--muted);gap:4px;font-size:12px;font-weight:700;display:grid}.results-question select{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:150px;padding:7px}.result-view-buttons{gap:4px;display:flex}.result-view-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:7px 10px}.result-view-buttons button[aria-pressed=true]{color:#fff;background:var(--blue)}.result-bars{gap:8px;max-height:320px;display:grid;overflow:auto}.result-bars>div{grid-template-columns:minmax(100px,200px) minmax(50px,1fr) 65px;align-items:center;gap:8px;font-size:12px;display:grid}.result-bars i{background:var(--blue);border-radius:3px;height:17px;display:block}.results-table-wrap{max-height:320px;overflow:auto}.results-table-wrap table{border-collapse:collapse;width:100%;font-size:12px}.results-table-wrap th,.results-table-wrap td{border-bottom:1px solid var(--line);text-align:left;padding:7px}.archive-mark{color:var(--ok,#2a7);white-space:nowrap}.archive-mark-refused{color:var(--danger,#c33)}.result-signatures{color:var(--muted,#555);margin:4px 0 0;padding:0;font-size:.85em;list-style:none}.result-signatures li:before{content:"✍ "}.fingerprint{overflow-wrap:anywhere}.scoring-player{gap:8px;display:grid}.scoring-player video{background:#000;border-radius:8px;width:100%;max-height:60vh}.scoring-player-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ethogram-panel table{border-collapse:collapse;width:100%;font-size:13px}.ethogram-panel th,.ethogram-panel td{border-bottom:1px solid var(--line);text-align:left;padding:6px}.ethogram-running{background:color-mix(in srgb, var(--ok,#2a7) 18%, transparent)}.ethogram-key{min-width:2.2em;font-family:monospace;font-weight:700}.ethogram-editor{width:min(860px,100%);max-height:90vh;overflow:auto}.ethogram-editor input[type=text],.ethogram-editor input:not([type]){max-width:100%}.ethogram-animals,.ethogram-modifiers>div{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.ethogram-animals kbd,.ethogram-modifiers kbd{font-family:monospace;font-weight:700}.live-pad-keys{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0;display:grid}.live-pad-keys button{text-align:left;touch-action:manipulation;justify-items:start;gap:4px;min-height:88px;padding:12px;font-size:17px;display:grid}.live-pad-keys button[aria-pressed=true]{background:color-mix(in srgb, var(--ok,#2a7) 28%, transparent);outline:3px solid var(--ok,#2a7)}.live-pad .ethogram-animals button,.live-pad .ethogram-modifiers button{touch-action:manipulation;min-height:56px;padding:8px 14px}.live-pad details{margin-top:10px}.live-pad summary{min-height:44px;padding:10px 0}.coding-rows{gap:6px;margin:6px 0;display:grid}.coding-row{align-items:center;gap:8px;display:flex}.coding-group{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:8px;display:flex}.coding-group>[role=group]{flex-wrap:wrap;gap:4px 12px;width:100%;display:flex}.tool-error{color:var(--danger,#c33);margin:4px 0;font-size:12px}.results-heatmap{gap:10px;display:grid}.results-heatmap label{gap:4px;width:140px;font-size:13px;display:grid}.results-heatmap input{border:1px solid var(--line);border-radius:6px;padding:5px}.results-heatmap>button{justify-self:start}.results-heatmap-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:420px;display:grid;overflow:auto}.results-heatmap figure{margin:0}.results-heatmap svg{width:100%;height:auto;display:block}.results-heatmap figcaption{overflow-wrap:anywhere;font-size:12px}.heatmap-background{fill:var(--line)}.heatmap-cell{fill:var(--blue)}.results-provenance{border-top:1px solid var(--line);padding-top:8px}.results-export{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.results-export p{flex:420px}.results-export button{border:1px solid var(--blue);color:#fff;background:var(--blue);cursor:pointer;border-radius:8px;padding:9px 12px}.results-export button:disabled{opacity:.6;cursor:wait}.session-row{border:1px solid var(--line);border-radius:10px;gap:8px;padding:14px;display:grid}.session-row header{justify-content:space-between;align-items:center;gap:12px;display:flex}.session-status{text-transform:capitalize;color:var(--blue-dark);background:#eef4ff;border-radius:6px;margin-left:8px;padding:2px 8px;font-size:12px}.session-status.error{color:#a51d2d;background:#fff0f1}.session-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.session-gallery-grid img{object-fit:cover;aspect-ratio:4/3;border-radius:6px;width:100%}.rec-indicator{color:#dc2626;align-items:center;gap:6px;margin-left:4px;font-weight:650;display:inline-flex}.rec-indicator.uploading{color:var(--blue-dark)}.rec-indicator .rec-dot{background:#dc2626}.device-log{border:1px solid var(--line);border-radius:10px;margin-top:24px;padding:10px 12px}.device-log-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.device-log-heading button{color:var(--muted);border:1px solid var(--line);cursor:pointer;background:#f7f8fa;border-radius:7px;padding:6px 10px;font-size:12px}.device-log ul{gap:4px;max-height:220px;margin:8px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.device-log-entry{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;padding:4px 0;font-size:13px;display:flex}.device-log-entry time{color:var(--muted);flex:none}.device-log-state{text-transform:capitalize;flex:none;font-weight:650}.device-log-entry.error .device-log-state{color:#a51d2d}.device-log-entry.running .device-log-state{color:#16a34a}.device-log-errors{color:#a51d2d}.organization-roles{grid-column:1/-1}.organization-roles h3{margin:24px 0 0;font-size:15px}.role-editor{border-top:1px solid var(--line);gap:10px;padding:14px 0;display:grid}.role-editor>input{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:320px;padding:10px}.role-permissions{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 12px;font-size:12px;display:grid}.role-permissions label{align-items:center;gap:6px;display:flex}.role-actions{gap:8px;display:flex}.organization-workspaces{grid-column:1/-1}.organization-workspaces h3{margin:24px 0 0;font-size:15px}.workspace-row{border-top:1px solid var(--line);grid-template-columns:minmax(200px,1fr) auto auto auto;align-items:center;gap:8px;padding:12px 0;display:grid}.workspace-row input{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:10px}.workspace-row span{color:var(--muted);font-size:12px}.workspace-row .form-error{grid-column:1/-1}@media (width<=700px){.workspace-row{grid-template-columns:minmax(0,1fr)}}.status-banner-slot:empty{display:none}.status-banner-slot{top:var(--app-header-height,0px);z-index:30;background:var(--line);border-bottom:1px solid var(--line);gap:1px;display:grid;position:sticky}.status-banner{color:inherit;background:#f7f8fa;padding:9px clamp(16px,3vw,28px);font-size:13px;margin:0!important}.status-banner.success{color:#08612f;background:#e8f7ee}.status-banner.error{color:#a51d2d;background:#fff0f1;font-weight:600}.lab-view{gap:18px;display:grid}.lab-layout{grid-template-columns:minmax(0,3fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.lab-buildings{gap:18px;min-width:0;display:grid}.lab-box-card{border:1px solid var(--line);background:#fff;border-radius:10px;gap:12px;padding:16px;display:grid;position:sticky;top:12px}.lab-box-card header{align-items:center;gap:12px;display:flex}.lab-box-card header>div{flex:1;min-width:0}.lab-box-card h3,.lab-box-card p{margin:0}.lab-box-card dl{grid-template-columns:max-content 1fr;gap:6px 14px;margin:0;font-size:14px;display:grid}.lab-box-card dt{color:var(--muted,#5b6675)}.lab-box-card dd{overflow-wrap:anywhere;margin:0}.lab-box-card .primary-button{justify-self:start}.lab-box-card-actions{flex-wrap:wrap;gap:8px;display:flex}.lab-box-card .secondary-button{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:8px 14px;font-weight:700}.lab-box-card-image{background:#111827;border-radius:6px;width:100%;height:auto}.lab-box.selected{z-index:3}.lab-box.selected:before{content:"";border:3px solid var(--blue);z-index:-1;background:#155eef29;border-radius:14px;animation:1.6s ease-in-out infinite lab-box-pulse;position:absolute;inset:-6px}.lab-box.selected .lab-box-icon{filter:drop-shadow(0 0 6px var(--blue)) drop-shadow(0 3px 2px #0f172a4d);transform:scale(1.3)}.lab-box.selected .lab-box-icon .cube-top{fill:#3b82f6}.lab-box.selected .lab-box-icon .cube-left{fill:#1d4ed8}.lab-box.selected .lab-box-icon .cube-right{fill:#1e3a8a}.lab-box.selected .lab-box-name{white-space:nowrap;color:#fff;background:var(--blue);border-radius:999px;padding:2px 8px}@keyframes lab-box-pulse{50%{box-shadow:0 0 0 6px #155eef40}}@media (prefers-reduced-motion:reduce){.lab-box.selected:before{animation:none}}@media (width<=760px){.lab-layout{grid-template-columns:1fr}.lab-box-card{position:static}}.lab-building{border:1px solid var(--line);background:#f8fbfd;border-radius:10px;gap:12px;padding:16px;display:grid}.lab-building header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.lab-building h3,.lab-placements h3{margin:0}.lab-building-actions{gap:8px;display:flex}.lab-building-actions button,.lab-room-list button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:6px 10px}.lab-plan-scroll{background:#fff;border-radius:8px;overflow-x:auto}.lab-plan{background:#fff;border-radius:8px;width:100%;position:relative}.lab-room{background:#eef4ff;border:2px solid #5b7fc7;border-radius:6px;position:absolute}.lab-room.movable{cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.lab-room:focus-visible,.lab-box:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.lab-room.movable .lab-box{touch-action:none}.lab-box.dragging{opacity:.8;pointer-events:none}.lab-hint{color:var(--muted,#5b6675);margin:4px 0 0;font-size:13px}.lab-room-name{color:#2b3f66;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;position:absolute;top:6px;left:8px;right:8px;overflow:hidden}.lab-box{max-width:45%;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-items:center;gap:4px;padding:4px;font-size:12px;font-weight:600;display:grid;position:absolute;transform:translate(-50%,-50%)}.lab-box-icon{filter:drop-shadow(0 3px 2px #0f172a40);width:40px;height:34px}.lab-box-icon .cube-top{fill:#4b5563}.lab-box-icon .cube-left{fill:#1f2937}.lab-box-icon .cube-right{fill:#111827}.lab-box-icon .cube-led{fill:#9ca3af}.lab-box.online .cube-led{fill:#22c55e}.lab-box:hover .cube-top,.lab-box:focus-visible .cube-top{fill:var(--blue)}.lab-plan-stage{width:100%;position:relative}.lab-plan.isometric{transform-origin:50%;background:0 0;position:absolute;top:50%;left:50%}.lab-plan.isometric .lab-room{background-color:#eef4ff;background-image:linear-gradient(#d6e2f8 1px,#0000 1px),linear-gradient(90deg,#d6e2f8 1px,#0000 1px);background-size:18px 18px;border-radius:2px}.lab-plan.isometric .lab-room:before,.lab-plan.isometric .lab-room:after{content:"";transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0}.lab-plan.isometric .lab-room:before{background:linear-gradient(#dfe8f8,#c3d3f1);border:1px solid #8fa8db;width:100%;height:22px;transform:matrix(1,0,-1,-1,0,0)}.lab-plan.isometric .lab-room:after{background:linear-gradient(90deg,#b4c6ec,#cfdcf5);border:1px solid #8fa8db;width:22px;height:100%;transform:matrix(-1,-1,0,1,0,0)}.lab-plan.isometric .lab-box{transform:translate(-50%,-50%)matrix(.57735,-.57735,1,1,0,0)}.lab-room-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.lab-room-list li{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 4px 4px 10px;display:flex}.lab-room-list button{border-radius:999px;padding:0 7px}.lab-placements{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.lab-placements h3{grid-column:1/-1}.lab-placements label{gap:4px;font-size:13px;font-weight:600;display:grid}.lab-placements select{border:1px solid var(--line);border-radius:7px;padding:7px}.sales-pipeline,.stock-summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;padding:12px 16px;display:grid}.sales-pipeline-note,.stock-summary-note{color:#5b6573;grid-column:1/-1;margin:0;font-size:12px}.box-archives{border-top:1px solid var(--line);margin:16px 0;padding-top:12px}.box-archives article{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.discussion-messages{gap:10px;margin:16px 0;padding:0;list-style:none;display:grid}.message-composer{align-items:flex-end;gap:8px;margin-top:8px;display:flex}.message-composer label{flex:1;min-width:0}.message-composer textarea{border:1px solid var(--line);width:100%;min-height:42px;font:inherit;resize:none;background:#fff;border-radius:21px;padding:10px 16px;line-height:1.35;display:block}.message-composer textarea:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.message-composer button{background:var(--blue);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;padding:0;display:grid}.message-composer button svg{fill:#fff;width:20px;height:20px}.message-composer button:disabled{cursor:not-allowed;background:#b8c4d6}.assistant-rating{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.assistant-rating button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;padding:5px 10px}.discussion-messages{background:#eef2f6;border-radius:12px;gap:6px;padding:12px}.discussion-messages .bubble{border-radius:14px;gap:2px;max-width:min(75%,560px);padding:7px 11px 5px;display:grid;box-shadow:0 1px 1px #0f172a1f}.discussion-messages .bubble.mine{background:#d9fdd3;border-bottom-right-radius:4px;justify-self:end}.discussion-messages .bubble.theirs{background:#fff;border-bottom-left-radius:4px;justify-self:start}.discussion-messages .bubble.grouped{margin-top:-3px}.discussion-messages .bubble strong{color:var(--blue);font-size:13px}.discussion-messages .bubble time{color:var(--muted);justify-self:end;font-size:11px}.discussion-messages p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.discussion-messages .assistant-exchange{gap:6px;display:grid}@media (width<=600px){.discussion-messages .bubble{max-width:88%}}.workspace-discussion form:not(.message-composer){gap:8px;display:grid}.workspace-discussion textarea{box-sizing:border-box;width:100%}.admin-menu-icon{width:22px;height:22px;display:inline-flex}.admin-menu-icon svg{width:100%;height:100%}.admin-menu-group{padding-bottom:6px;display:grid}.admin-menu-caption{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:10px 16px 2px;font-size:.7rem;font-weight:700}.RaMenuItemLink-active{position:relative;color:#155eef!important;background:#155eef1f!important;font-weight:700!important}.RaMenuItemLink-active:before{content:"";background:#155eef;border-radius:0 3px 3px 0;width:4px;position:absolute;inset:4px auto 4px 0}.RaMenuItemLink-active .admin-menu-icon{color:#155eef}.admin-menu-doc{color:inherit;align-items:center;gap:20px;padding:6px 16px;font-size:.875rem;text-decoration:none;display:flex}.admin-menu-doc:hover{background:#0000000a}.forum-warning{background:#fff7e6;border-left:4px solid #f59e0b;border-radius:6px;margin:8px 0;padding:8px 12px;font-size:14px}.forum-topics{gap:6px;margin:12px 0;padding:0;list-style:none;display:grid}.forum-topics button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:2px;width:100%;padding:10px 12px;display:grid}.forum-topics small,.discussion-messages .bubble strong small{color:var(--muted);font-weight:400}.forum-new-topic{gap:8px;margin-top:16px;display:grid}.forum-new-topic input{border:1px solid var(--line);border-radius:7px;padding:7px}.discussion-messages .forum-report{justify-self:end;font-size:12px}.forum-moderation{flex-wrap:wrap;gap:6px;display:flex}.forum-moderation button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;padding:4px 8px}.health-score{align-items:center;gap:6px;font-weight:600;display:inline-flex}.health-score i{background:#9ca3af;border-radius:50%;width:10px;height:10px}.health-score.green i{background:#16a34a}.health-score.orange i{background:#f59e0b}.health-score.red i{background:#dc2626}.health-score small{color:var(--muted);font-weight:400}.lab-building.current{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}.framing-confirmation{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.forum-own-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;font-size:12px;display:flex}.forum-edit{gap:6px;display:grid}.forum-edit span{justify-content:flex-end;gap:6px;display:flex}.immobility-settings{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:12px;margin:8px 0;padding:8px 12px;display:flex}.immobility-settings label{gap:4px;font-size:13px;display:grid}.immobility-settings input{border:1px solid var(--line);border-radius:6px;width:110px;padding:5px}.demo-requests{flex-wrap:wrap;gap:8px;display:flex}.sales-follow-up{align-items:center;gap:6px;display:inline-flex}.sales-follow-up.due{color:#b45309;font-weight:600}.link-button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.fleet-cohort{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.fleet-history{margin:4px 0 0;padding-left:16px;font-size:12px}@media (width<=620px){.modal-backdrop{padding:8px}.protocol-explorer{width:100%;height:92vh;padding:0 12px 12px}.protocol-explorer>header{margin:0 -12px 8px}.explorer-toolbar{flex-wrap:wrap}.explorer-body,.save-explorer-body{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);overflow:auto}.explorer-body aside{max-height:132px}.explorer-body main{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.protocol-explorer footer{flex-wrap:wrap;gap:8px}}.fleet-alerts{flex-wrap:wrap;gap:4px;display:inline-flex}.fleet-alerts span{color:#92400e;background:#fef3c7;border-radius:999px;padding:1px 6px;font-size:12px}.fleet-alerts span[data-level=alarm]{color:#fff;background:#b91c1c;font-weight:600}.fleet-alerts span[data-level=advisory]{color:#475569;background:#f1f5f9}.fleet-alerts details{font-size:12px;display:inline}.fleet-alerts details[open]{flex-wrap:wrap;gap:4px;display:flex}.experiment-design,.trial-schedule,.experiment-results{border:1px solid var(--line);border-radius:10px;gap:10px;margin:14px 0;padding:14px;display:grid}.design-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.design-heading h3{margin:0}tr.trial-replaced{opacity:.55;text-decoration:line-through}tr.trial-replaced td:last-child,tr.trial-replaced td:nth-last-child(2){text-decoration:none}.blind-name{color:var(--muted);font-style:italic}.design-import input{margin-top:4px;display:block}.design-import,.design-paste{gap:4px;font-size:13px;display:grid}.design-tables{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:14px;display:grid}.experiment-design h3{margin:0 0 4px;font-size:14px}.experiment-design>*,.design-tables>*{min-width:0}.design-sheet{--dsg-selection-border-color:var(--blue);--dsg-header-text-color:var(--muted);grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;font-size:13px;display:grid}.design-sheet .dsg-container{max-width:100%;overflow-x:auto}.design-sheet .dsg-row.retired{opacity:.55}.design-sheet .dsg-cell-disabled{background:0 0}.design-sheet-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.design-sheet>button,.design-sheet-actions>button{justify-self:start}.design-empty{color:var(--muted);margin:0;font-style:italic}.sheet-input{width:100%;height:100%;font:inherit;color:inherit;background:0 0;border:0;padding:0 8px}.sheet-locked{color:var(--muted);padding:0 8px}.sheet-remove{margin:0 6px;padding:3px 8px;font-size:12px}.design-paste-target:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (width<=900px){.design-tables{grid-template-columns:1fr}}.box-view{align-content:start;gap:14px;display:grid}.box-card{border:1px solid var(--line);border-radius:10px;gap:8px;padding:12px 14px;display:grid}.box-card.current{background:#f6f9ff;border-color:#a8c2ff}.box-card header{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.box-card h3{margin:0}.box-card .lab-box-icon{width:34px}.box-activity{color:var(--muted);font-size:13px}.box-actions{gap:8px;margin-left:auto;display:flex}.box-open-experiment td{font-weight:700}.no-box-notice{background:#f2f6ff;border:1px solid #b9cdfb;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;padding:12px 16px;display:flex}.no-box-notice span{flex:260px}.no-box-notice button{border:1px solid var(--blue);color:var(--blue);cursor:pointer;background:#fff;border-radius:7px;padding:8px 12px;font-weight:700}.no-box-notice button:first-of-type{color:#fff;background:var(--blue)}.direct-messages{grid-template-columns:minmax(160px,240px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.direct-people{gap:4px;margin:0;padding:0;list-style:none;display:grid}.direct-people button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:9px 12px;display:flex}.direct-people button:hover{background:#f2f6ff}.direct-people button[aria-current=true]{background:#edf3ff;border-color:#a8c2ff;font-weight:700}.direct-conversation h3{margin:0 0 8px}.direct-empty{color:var(--muted)}.unread-count{color:#fff;background:#d92d20;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:700;display:inline-grid}@media (width<=620px){.direct-messages{grid-template-columns:minmax(0,1fr)}.direct-people{flex-wrap:wrap;display:flex}.direct-people li{flex:0 auto}}.box-users{flex-wrap:wrap;gap:4px 8px;display:inline-flex}.box-user{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:4px;padding:2px 8px 2px 4px;font-size:12px;display:inline-flex}.box-user svg{width:14px;height:17px;fill:var(--blue)}.box-user:hover{border-color:var(--blue)}.lab-box-people{z-index:2;white-space:nowrap;pointer-events:auto;position:absolute;transform:translate(-50%,-50%)translateY(-46px)}.lab-plan.isometric .lab-box-people{transform:translate(-50%,-50%)matrix(.57735,-.57735,1,1,0,0)translateY(-46px)}.open-document-box{color:var(--muted)}.recording-indicator{flex-wrap:wrap;gap:6px;margin-left:12px;display:flex}.recording-indicator button{color:#9b1c1c;cursor:pointer;background:#fff5f5;border:1px solid #f3b4b4;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.recording-dot{background:#dc2626;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite recording-pulse}@keyframes recording-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.recording-dot{animation:none}}.box-code{color:var(--muted);letter-spacing:.06em;margin-left:6px;font-size:12px;font-weight:400}.replay-focus{background:#f6f9ff;border:1px solid #a8c2ff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;padding:8px 12px;display:flex}.duplicate-animals{align-items:baseline;gap:8px;display:flex}.design-actions{flex-wrap:wrap;gap:8px;display:flex}.design-summary{color:var(--muted);margin:0;font-size:13px}.treatment-chart{max-width:720px;margin:0}.results-downloads{flex-wrap:wrap;gap:8px;display:flex}.results-warning{color:#7a4b00;background:#fff6e0;border-radius:8px;margin:0;padding:8px 12px}td.untracked{color:#b42318;font-weight:700}.treatment-chart svg{border:1px solid var(--line);border-radius:10px;width:100%;height:auto;display:block}.treatment-chart figcaption{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:6px;font-size:13px;display:flex}.trial-schedule tr.trial-next td{background:#e8f0ff;font-weight:700}.trial-schedule tr.trial-running td{background:#e9f9ef}.trial-schedule tr.trial-completed td,.trial-schedule tr.trial-cancelled td{color:var(--muted)}.trial-actions{white-space:nowrap}.trial-actions button{margin-right:4px;padding:2px 8px}.experiment-tests p{margin:0 0 4px;font-size:13px}.project-protocol-choice{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.project-protocol-choice output{overflow-wrap:anywhere;flex:160px;min-width:0}.arena-fit-dialog{background:var(--panel,white);border-radius:12px;gap:10px;width:min(960px,100vw - 32px);max-height:calc(100vh - 32px);padding:18px;display:grid;overflow:auto}.arena-fit-dialog header{justify-content:space-between;align-items:center;display:flex}.arena-fit-dialog h2{margin:0}.arena-fit-tools{flex-wrap:wrap;gap:8px;display:flex}.arena-fit-spacer{flex:1}.arena-fit-tools button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:11px 14px;display:inline-flex}.arena-fit-tools button svg{flex:none;width:22px;height:22px}.arena-fit-tools .arena-fit-save{color:#fff;background:var(--blue);border-color:var(--blue);font-weight:700}.arena-fit-tools button[aria-pressed=true]{color:#fff;background:var(--blue);border-color:var(--blue)}.arena-fit-tools button:disabled{opacity:.45;cursor:not-allowed}.arena-fit-hint{color:var(--muted);margin:0}.arena-fit-dialog .project-camera .remote-preview-viewport>svg{pointer-events:auto;touch-action:none}.arena-fit-dialog svg.measuring{cursor:crosshair}.arena-fit-frame{fill:none;stroke:#f97316;stroke-width:2px;stroke-dasharray:8 6;vector-effect:non-scaling-stroke}.arena-fit-handle{fill:#f97316;stroke:#fff;stroke-width:3px;vector-effect:non-scaling-stroke;cursor:grab}.arena-fit-line{stroke:#facc15;stroke-width:3px;vector-effect:non-scaling-stroke}.arena-fit-message{background:#e8f1fd;border-radius:8px;margin:0;padding:8px 10px}.arena-fit-message.error{color:#a51d2d;background:#fdecec}.update-notice{color:#5c4400;background:#fff4d6;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 16px 0;padding:8px 12px;display:flex}.onboarding-checklist{background:#f3f7ff;border:1px solid #c9d9f5;border-radius:12px;gap:8px;margin-bottom:14px;padding:14px 16px;display:grid}.onboarding-checklist ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.onboarding-checklist li{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.onboarding-checklist li.done{color:#1a7f47}.onboarding-checklist li.next{color:inherit;font-weight:600}.onboarding-checklist li small{color:var(--muted);font-weight:400}.project-video{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr);gap:6px;max-width:520px;padding:14px;font-weight:600;display:grid}.project-video select{border:1px solid var(--line);min-width:0;font:inherit;background:#fff;border-radius:7px;padding:9px;font-weight:400}.project-video small{color:var(--muted);font-weight:400}.admin-hint{color:var(--muted);margin:12px 16px;font-size:13px}.quote-panel{gap:10px;max-width:980px;display:grid}.quote-panel h2{margin:8px 0 0;font-size:18px}.quote-lines{border-collapse:collapse;width:100%;font-size:14px}.quote-lines th,.quote-lines td{border-bottom:1px solid var(--line,#dfe5dc);text-align:left;vertical-align:middle;padding:6px 8px}.quote-lines td:nth-child(n+2),.quote-lines th:nth-child(n+2){text-align:right}.quote-lines input:not([type=number]){box-sizing:border-box;width:100%}.quote-lines input[type=number]{width:72px}.quote-totals{grid-template-columns:auto max-content;justify-content:end;gap:4px 18px;margin:6px 0;display:grid}.quote-totals dt{color:var(--muted);text-align:right}.quote-totals dd{text-align:right;margin:0}.quote-draft,.quote-summary{gap:10px;display:grid}.quote-draft-fields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.quote-draft-fields label{gap:4px;font-size:13px;display:grid}.quote-draft-fields .quote-note{flex:320px}.button-link{border:1px solid var(--line,#c9d3c5);color:inherit;border-radius:8px;justify-self:start;padding:6px 12px;text-decoration:none;display:inline-block}.button-link.disabled{opacity:.5;cursor:not-allowed}.order-page{gap:18px;max-width:980px;padding:8px 16px 24px;display:grid}.order-page h2{margin:0;font-size:20px}.order-page h3{margin:0 0 6px;font-size:16px}.order-summary .quote-totals{justify-content:start}.order-summary .quote-totals dt{text-align:left}.form-error{color:#b42318;font-weight:600}.billing-details{gap:8px;max-width:520px;display:grid}.billing-details fieldset{border:0;gap:8px;margin:0;padding:0;display:grid}.billing-details label{gap:3px;font-size:13px;display:grid}.installments{gap:6px;padding-left:18px;display:grid}.installments button{margin-left:10px}.access-decision{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.store-tab{align-items:center;gap:7px;display:inline-flex}.store-tab svg{width:16px;height:16px}.shop-columns{grid-template-columns:minmax(180px,.6fr) minmax(0,1.5fr) minmax(280px,1fr);align-items:start;gap:28px;margin-top:22px;display:grid}.shop-box-menu ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.shop-box-menu button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:10px;gap:2px;width:100%;padding:10px 12px;display:grid}.shop-box-menu button[aria-current=true]{border-color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}.shop-box-menu small{color:var(--muted,#5b6675)}.shop h4{margin:14px 0 8px;font-size:14px}.shop-options{gap:6px;margin:0;padding:0;list-style:none;display:grid}.shop-options li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:8px 0;display:grid}.shop h3{margin:18px 0 10px;font-size:16px}.shop-box{align-items:center;gap:10px;margin-bottom:12px;font-weight:700;display:flex}.shop-products,.shop-cart ul,.shop-requests ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.shop-product,.shop-cart li{border:1px solid var(--line);border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.shop-product{grid-template-columns:96px minmax(0,1fr) auto auto}.shop-product p{margin:2px 0 0;font-size:13px}.shop-image{object-fit:contain;background:#f1f4f2;border-radius:10px;width:96px;height:96px;display:block}.shop-price{white-space:nowrap;font-weight:750}.shop-owned{color:#05603a;white-space:nowrap;background:#ecfdf3;border-radius:999px;grid-column:span 2;justify-self:end;padding:4px 10px;font-size:13px;font-weight:700}.shop-cart{border:1px solid var(--line);background:#f7f9fb;border-radius:14px;padding:18px}.shop-cart li{background:#fff;grid-template-columns:minmax(0,1fr) auto auto auto}.shop-cart li small{color:var(--muted);display:block}.shop-quantity{align-items:center;gap:6px;font-size:13px;display:flex}.shop-quantity input{width:56px}.shop-total{justify-content:space-between;max-width:none;margin:14px 0 6px;display:flex}.shop-cart label{gap:6px;margin:10px 0;font-size:13px;font-weight:700;display:grid}.shop-cart textarea{width:100%}.shop-requests li{border-bottom:1px solid var(--line);grid-template-columns:120px minmax(0,1fr) auto;gap:12px;padding:8px 0;display:grid}@media (width<=760px){.shop-columns,.shop-cart li{grid-template-columns:1fr}.shop-product{grid-template-columns:72px minmax(0,1fr)}.shop-product .shop-image{width:72px;height:72px}.shop-product .shop-price,.shop-product button,.shop-product .shop-owned{grid-column:1/-1;justify-self:start}.shop-requests li{grid-template-columns:1fr;gap:2px}}.shop-new-product{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.shop-new-product label{gap:4px;font-size:12px;font-weight:700;display:grid}.group-dose{color:var(--muted,#667085);font-size:.85em;display:block}.move-box{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.move-box input,.move-box select{border:1px solid var(--line);font:inherit;border-radius:7px;padding:6px 8px}@media (width<=760px){.work-area{grid-template-columns:minmax(0,1fr)}.tool-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:6px 4px;display:flex;position:static;overflow-x:auto}.tool-group h3,.tool-group-label,.no-tools{display:none}.tool-panel:not(:has(.tool-buttons>*)) .no-tools{display:none}.tool-panel:not([hidden]){display:flex}.tool-group{border-right:1px solid var(--line);margin:0;padding-right:4px;display:flex}.tool-buttons,.tool-buttons .protocol-command-tools,.tool-buttons .drawing-tools,.tool-buttons .zoom-field{gap:2px;display:flex}.tool-buttons button{white-space:nowrap;width:auto}.tool-sidebar:not(:has(.tool-panel:not([hidden]) .tool-buttons>*)){display:none}.tool-sidebar-toggle{display:none}}@media (width<=760px) and (pointer:fine){.tool-sidebar,.tool-panel:not([hidden]),.tool-group,.tool-buttons{flex-wrap:wrap}.tool-sidebar{overflow-x:visible}}@media (width<=620px){.header-main{flex-wrap:wrap;align-items:center}.header-identity{flex:1 1 0;width:auto;min-width:0}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;order:1;place-items:center;width:40px;height:40px;padding:0;display:grid}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{background:var(--ink);content:"";border-radius:1px;width:18px;height:2px;display:block;position:relative}.menu-toggle span:before{position:absolute;top:-6px}.menu-toggle span:after{position:absolute;top:6px}.menu-open .menu-toggle{border-color:var(--blue);background:#e8efff}.topbar-actions{display:contents}.topbar-actions .user-menu{order:2}.topbar-actions>:not(.user-menu){order:3;display:none}.menu-open .topbar-actions>:not(.user-menu){width:100%;padding:4px 8px;display:flex}.menu-open .topbar-actions .organization-selector{justify-content:space-between}.menu-open .topbar-actions .organization-selector select{max-width:70%}.stage-row .stage-groups,.stage-row .utility-nav{display:none}.menu-open .stage-row .stage-groups{width:100%;padding:4px 0;display:grid}.menu-open .stage-row .stage-nav{display:grid}.menu-open .stage-row .stage-nav button{border-bottom:0;border-left:3px solid #0000;justify-content:start;place-items:center start;min-height:44px;padding:0 12px;font-size:13px}.menu-open .stage-row .stage-nav button[data-state=active]{border-left-color:var(--blue);background:#e8efff}.menu-open .stage-row .stage-separator{width:auto;height:1px;margin:4px 12px}.menu-open .stage-row .utility-nav{border-top:1px solid var(--line);justify-content:flex-start;gap:18px;width:100%;padding:8px 12px;display:flex}}@media (width<=620px) and (hover:hover) and (pointer:fine){.header-main,.header-main:hover,.header-main:focus-within{height:auto;min-height:48px;overflow:visible}.header-main .topbar-actions{visibility:visible;opacity:1}.header-main .brand-mark{border-radius:7px;width:26px;height:26px;font-size:9px}}.time-left{font-variant-numeric:tabular-nums;margin:6px 0 0}.time-left strong{font-size:1.15em}.time-left.over{color:#7a4b00}.immobility-alert{color:#78350f;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;margin:8px 0;padding:8px 12px}.attention-panel{border:1px solid;border-radius:8px;margin:8px 0;padding:10px 14px}.attention-panel p{margin:0}.attention-panel.alarm{color:#7f1d1d;background:#fee2e2;border-color:#dc2626}.attention-panel.caution{color:#78350f;background:#fef3c7;border-color:#d97706}.attention-panel details{margin-top:6px}.attention-panel ul{margin:6px 0 0;padding-left:18px}.attention-panel li.alarm{color:#b91c1c;font-weight:600}.archive-check{gap:4px;margin-top:12px;font-size:13px;display:grid}.archive-check label{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.archive-check small{color:var(--muted)}.audit-trail .audit-details{overflow-wrap:anywhere;max-width:420px;color:var(--muted);font-size:11px}.audit-trail .panel-heading .secondary-button,.lab-view .panel-heading .secondary-button{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 14px;font-weight:700;text-decoration:none}.farm-view .farm-box{margin:16px 0}.farm-view .farm-box h3{margin:0 0 4px}.farm-view .farm-note{color:var(--muted);margin:0 0 8px;font-size:13px}.farm-level{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.farm-level-normal{color:var(--green);background:#dcfce7}.farm-level-check{color:#92400e;background:#fef3c7}.farm-level-alert{color:#fff;background:#b42318}.farm-view tr.farm-acknowledged{color:var(--muted)}.farm-view .farm-clip{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:6px;display:flex}.farm-view .farm-clip .farm-note{margin:0}.satisfaction-dialog{z-index:60;border:1px solid var(--line);background:var(--panel,#fff);border-radius:14px;width:min(460px,100vw - 32px);max-height:calc(100vh - 48px);padding:18px 20px;position:fixed;bottom:24px;right:24px;overflow:auto;box-shadow:0 18px 50px #0f172a38}.satisfaction-dialog h2{margin:0 0 6px;font-size:18px}.satisfaction-space{max-width:640px}.satisfaction-form{gap:12px;display:grid}.satisfaction-form p{color:var(--muted);margin:0}.satisfaction-form label{gap:6px;font-weight:600;display:grid}.satisfaction-form textarea{font:inherit;border:1px solid var(--line);border-radius:8px;padding:8px}.satisfaction-stars{border:0;margin:0;padding:0}.satisfaction-stars legend{margin-bottom:4px;font-weight:600}.satisfaction-stars [role=radiogroup]{gap:4px;display:flex}.satisfaction-stars button{color:#c6ced8;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:28px;line-height:1}.satisfaction-stars button.lit{color:#e3a008}.satisfaction-actions{justify-content:flex-end;gap:8px;display:flex}.ticket-status{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:8px 0;font-size:13px;display:flex}.ticket-status strong{color:inherit;font-weight:700}.support-overdue{color:var(--danger,#c33)}.message-attachment{overflow-wrap:anywhere;max-width:100%;margin:4px 0;display:inline-block}.message-attachment img{border:1px solid var(--line);object-fit:contain;border-radius:8px;max-width:min(260px,100%);max-height:200px;display:block}.attach-file{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:8px;display:flex}.attach-file label{cursor:pointer}.attach-file small{color:var(--muted)}.attach-file [role=alert]{flex-basis:100%;margin:0}.audit-downloads{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.subscription-banner{color:#5c4400;background:#fff7e0;border-bottom:1px solid #f0c36d;margin:0;padding:8px 16px;font-size:14px}.subscription-banner.ended{color:#7a1d1d;background:#fdecec;border-color:#e9a3a3}.order-follow-up{color:var(--muted,#6b7280);flex-basis:100%;margin:4px 0 0;padding-left:18px;font-size:.85rem}.support-commands{margin:8px 0 0;padding-left:18px;font-size:.9rem}.support-commands code,.support-output{overflow-wrap:anywhere;white-space:pre-wrap}.support-output{max-height:360px;font-size:.8rem;overflow:auto}.automatic-check pre{white-space:pre-wrap;margin:6px 0 0;font-size:12px}.episode-filters{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:6px 0;display:flex}.box-technician{border-top:1px solid #dfe6ef;gap:8px;padding:12px 0;display:grid}.box-technician header{align-items:center;gap:10px;display:flex}.box-technician header img,.box-technician-initial{object-fit:cover;border-radius:50%;width:48px;height:48px}.box-technician-initial{color:#155eef;background:#e7eefc;place-items:center;font-size:20px;font-weight:700;display:grid}.box-technician header div{display:grid}.box-technician-usage{color:#5b6677}.box-technician-contact{gap:8px;display:grid}.box-technician-contact textarea{box-sizing:border-box;width:100%}.box-technician-contact>div{gap:8px;display:flex}.kpi-page h2{font-size:1.1rem}.kpi-page>*,.kpi-page section>*{min-width:0}.kpi-scroll{min-width:0;overflow-x:auto}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));align-items:start;gap:12px;display:grid}.kpi-card{background:#fff;border:1px solid #dfe6ef;border-radius:8px;gap:6px;min-width:0;padding:12px;display:grid}.kpi-card[data-status=alert]{border-color:#d03b3b}.kpi-card-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.kpi-card-header h3{margin:0;font-size:.95rem;line-height:1.3}.kpi-value{margin:0;display:grid}.kpi-value strong{font-size:1.6rem;font-weight:650;line-height:1.15}.kpi-value span{color:var(--muted);font-size:.8rem}.kpi-value-muted{color:var(--muted);font-size:1.6rem}.kpi-missing{color:#17202a;background:#f4f6f9;border-radius:6px;margin:0;padding:6px 8px;font-size:.82rem}.kpi-definition{color:#17202a;margin:0;font-size:.82rem}.kpi-source{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.75rem}.kpi-chart{gap:4px;min-width:0;margin:0;display:grid}.kpi-chart svg{width:100%;height:auto;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:block}.kpi-chart-toggle{color:var(--muted);cursor:pointer;background:#fff;border:1px solid #dfe6ef;border-radius:6px;justify-self:end;padding:2px 8px;font-size:.75rem}.kpi-chart-toggle[aria-pressed=true]{color:#155eef;border-color:#155eef}.kpi-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.8rem}.kpi-table caption{text-align:left;color:var(--muted);padding-bottom:4px}.kpi-table th,.kpi-table td{text-align:left;border-bottom:1px solid #e1e0d9;padding:3px 6px}.kpi-alert-link{color:inherit}.kpi-figures{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:10px;margin:0;display:grid}.kpi-figures div{border:1px solid #dfe6ef;border-radius:8px;gap:2px;padding:8px 10px;display:grid}.kpi-figures dt{color:var(--muted);font-size:.78rem}.kpi-figures dd{margin:0;font-size:1.05rem;font-weight:650}.kpi-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:10px;display:grid}.kpi-tile{color:inherit;border:1px solid #dfe6ef;border-radius:8px;justify-items:start;gap:4px;min-width:0;padding:10px;text-decoration:none;display:grid}.kpi-tile:hover{background:#00000008}.kpi-tile strong{font-size:1.35rem;font-weight:650}.kpi-tile-label,.kpi-tile small{font-size:.8rem}.kpi-tile small{color:var(--muted)}
