@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #faf8f5;--card: #ffffff;--side: #fcfaf7;--txt: #1b1a17;--dim: #6e675c;--dim-2: #9c9486;--line: #e9e3d9;--line-2: #d8d0c2;--side-line: #e9e3d9;--acc: #1b1a17;--acc-soft: #f2eee7;--accent: #a35b2a;--ok: #2f6b4f;--ok-soft: #edf3ef;--warn: #8c5a00;--warn-soft: #fbf3e4;--bad: #b3261e;--bad-soft: #fbeeec;--r: 3px;--r-sm: 2px;--sh: none;--sidebar-w: 182px;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--txt);font:400 14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}.q-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r)}.q-display{font:400 30px/1 var(--serif);letter-spacing:-.01em}.q-figure{font:400 25px/1.1 var(--serif);font-variant-numeric:tabular-nums}.q-cap{font-size:12px;letter-spacing:0;color:var(--dim-2);font-weight:500}.q-dim{color:var(--dim)}.q-mono{font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums}.q-num{font-variant-numeric:tabular-nums}.q-btn{border:1px solid var(--line-2);background:var(--card);color:var(--txt);padding:5px 11px;border-radius:var(--r);font-size:12.5px;white-space:nowrap}.q-btn:hover:not(:disabled){border-color:var(--dim-2)}.q-btn:disabled{opacity:.45;cursor:not-allowed}.q-btn--primary{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.q-btn--danger{background:transparent;border-color:var(--bad);color:var(--bad);font-weight:500}.q-btn--danger:hover:not(:disabled){background:var(--bad-soft);border-color:var(--bad)}.q-btn--icon{border-color:transparent;background:transparent;font-size:15px;padding:0 6px}.q-btn--icon:hover:not(:disabled){color:var(--bad);border-color:transparent}.q-btn--iconed{display:inline-flex;align-items:center;gap:6px}.q-btn--iconed svg{width:13px;height:13px;flex:none}.q-chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;letter-spacing:.02em;padding:1px 6px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--card);color:var(--dim);white-space:nowrap}.q-chip--ok{color:var(--ok);border-color:#cfe0d6}.q-chip--warn{color:var(--warn);border-color:var(--warn-line, #f0dfb9)}.q-chip--bad{color:var(--bad);border-color:#e8c9c5}.q-chip--dim{color:var(--dim);border-color:var(--line-2)}.q-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.q-meter{height:2px;background:var(--line);border-radius:0;overflow:hidden}.q-meter>i{display:block;height:2px}.q-rows>*{display:flex;align-items:center;gap:9px;padding:6px 0;border-top:1px solid var(--line);font-size:12.5px}.q-rows>*:first-child{border-top:0}.q-rows .r{margin-left:auto;color:var(--dim);font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}:root{--on-acc: #fff;--acc-hover: color-mix(in srgb, var(--acc) 82%, var(--txt));--wash-05: rgba(27, 26, 23, .05);--wash-06: rgba(27, 26, 23, .06);--shadow-pop: 0 6px 22px rgba(27, 26, 23, .1);--shadow-menu: 0 8px 26px rgba(40, 44, 37, .13);--shadow-dialog: 0 18px 48px rgba(27, 26, 23, .22);--shadow-toast: 0 6px 20px rgba(27, 26, 23, .12);--shadow-float: 0 1px 4px rgba(0, 0, 0, .08);--shadow-float-lg: 0 6px 22px rgba(0, 0, 0, .16);--shadow-sheet: 0 -8px 30px rgba(0, 0, 0, .14);--scrim: rgba(27, 26, 23, .42);--scrim-sheet: rgba(0, 0, 0, .4);--scrim-strong: rgba(27, 26, 23, .78);--scrim-video: rgba(12, 16, 22, .6);--alert-fill: rgba(179, 38, 30, .92);--spinner-track: rgba(255, 255, 255, .35);--warn-edge: #e3cfa4;--bad-edge: #f6cccb;--bad-tint: #fbdcda;--warn-ink: #795527;--video-bg: #15140f;--video-ink: #c9c3b6;--print-bg: #fff;--print-ink: #111;--video-dim: #9c9486;--bad-ink-soft: #f3d3d0;--heat-0: #f7e2dd;--heat-1: #f7ebd2;--heat-2: #e2eae2;--heat-3: #7fa285;--map-unknown: #445269;--map-paper: #faf8f5}:root{--bg:#f6f5f0;--card:#fdfcf9;--side:#eeede6;--txt:#282c25;--dim:#545b4a;--dim-2:#676d5c;--line:#dddfd3;--line-2:#c8cdba;--side-line:#d8dccd;--acc:#656e43;--acc-soft:#e8ebdd;--accent:#656e43;--ok:#486638;--ok-soft:#eef2e7;--warn:#925c22;--warn-soft:#f8efdf;--bad:#ad402e;--bad-soft:#fbefeb;--r:4px;--r-sm:3px;--sh:none;--sidebar-w:232px;--sans: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--serif:var(--sans)}body{font-family:var(--sans);font-size:16px;line-height:1.55;font-feature-settings:"cv05" 1,"tnum" 0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}.q-display{font:550 clamp(26px,2.4vw,34px)/1.18 var(--sans);letter-spacing:-.025em;overflow-wrap:anywhere}.q-figure{font:500 clamp(24px,2.5vw,34px)/1.2 var(--sans);letter-spacing:-.025em;font-variant-numeric:tabular-nums}.q-cap{font-size:12px;letter-spacing:0;line-height:1.5}.q-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 15px;min-height:42px;font-size:14px;border-radius:4px;line-height:1.3}.q-btn--primary:hover:not(:disabled){background:var(--acc-hover);border-color:var(--acc-hover)}.q-chip{font-size:12px;padding:4px 8px;letter-spacing:0}.q-chip--ok{background:var(--ok-soft)}.q-chip--warn{background:var(--warn-soft)}.q-chip--bad{background:var(--bad-soft)}.q-rows>*{font-size:14px;padding:11px 0;flex-wrap:wrap}.q-rows .r{overflow-wrap:anywhere;min-width:0}.q-meter,.q-meter>i{height:3px}.layout{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.sidebar{position:sticky;inset-block-start:0;height:100dvh;padding:30px 14px 20px;overflow-y:auto;gap:12px}.brand{position:relative;display:block;font-size:27px;font-weight:700;letter-spacing:-.9px;padding:0 10px 22px 39px;color:var(--txt)}.brand small{font-size:12px;letter-spacing:.02em;margin-top:2px}.nav-group{padding:22px 12px 9px;font-size:12px;letter-spacing:0}.nav-group:first-of-type{padding-top:14px}.nav-item{font-size:14px;min-height:45px;padding:10px 11px;gap:11px;border-radius:3px;margin:2px 0;line-height:1.35}.nav-item.active{background:var(--acc-soft);border-left:2px solid var(--acc)}.nav-item:hover{background:var(--acc-soft)}.nav-mark{font-size:11px;font-variant-numeric:tabular-nums;color:var(--dim-2)}.nav-arrow{margin-left:auto;opacity:0}.active .nav-arrow{opacity:1;color:var(--acc)}.sidebar .who{padding:17px 11px 0;font-size:14px}.sidebar .who-org{font-size:12px;margin-top:5px}.sidebar .who-out{font-size:13px;padding:6px 0;margin-top:8px}.sidebar .source-hint{padding:12px 10px;font-size:12px;line-height:1.5}.content{padding:0 clamp(18px,2.8vw,44px);min-width:0;outline:none}.portal-topbar{height:78px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);position:relative;z-index:25}.portal-context{display:flex;align-items:center;gap:15px;min-width:0}.portal-context>span{font-size:12px;color:var(--dim-2)}.portal-context .q-display{font-size:14px;font-weight:500;letter-spacing:0}.portal-context .q-dim{display:none}.portal-section{font-size:12px;color:var(--dim)}.portal-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 0;color:var(--dim-2);font-size:12px}.portal-footer>span:first-child{letter-spacing:1px}.integration-note{padding:12px 16px;margin-top:20px;border-left:3px solid var(--warn);background:var(--warn-soft);color:var(--warn-ink);font-size:13px;line-height:1.5}.masthead{padding:30px 0 24px;align-items:center;gap:12px}.masthead .sub{font-size:14px}.masthead .right{gap:12px;flex-wrap:wrap}.masthead .q-display{max-width:100%}.kpis{border:1px solid var(--line);border-radius:4px;padding:22px 0;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:22px}.kpi{padding:0 20px}.kpi .v{margin:9px 0}.kpi .v .of{font-size:17px}.kpi .d{font-size:12px;line-height:1.5}.kpi--alert{background:transparent}.kpi--alert .q-cap{color:var(--bad)}.work{gap:20px;grid-template-columns:minmax(0,1.9fr) minmax(295px,1fr);min-height:auto;border:0!important}.work>.main{border:1px solid var(--line);border-radius:4px;background:var(--card);padding:20px;align-self:start;gap:18px}.work>.side{border:1px solid var(--line);border-radius:4px;background:var(--card);align-self:start;min-width:0}.sec{padding:20px}.sec>h4{font-size:12px;letter-spacing:0;color:var(--dim);margin-bottom:15px}.unit{padding:13px 0;gap:10px}.unit .nm{font-size:14px}.unit .st{font-size:12px}.unit .bat .p{font-size:14px}.unit .bat .h{font-size:12px}.settings{margin-top:18px}.anchors{background:var(--bg)}.anchors button{font-size:14px;padding:12px 15px}.q-fields{gap:20px}.q-field label{font-size:14px;color:var(--dim)}.q-field input,.q-field select{font-size:16px;padding:10px 12px;min-height:44px}.q-table{font-size:14px}.q-table th{font-size:12px;padding:12px;color:var(--dim);background:var(--bg)}.q-table td{font-size:14px;padding:14px 12px}.q-table td .q-btn{white-space:normal}.q-tel .row{font-size:14px;padding:10px 0}.q-joints .n{font-size:12px}.tl .e{font-size:14px;padding:12px 0}.tl .e:before{top:19px}.tl .e .w{overflow-wrap:anywhere}.q-warn{font-size:14px;line-height:1.6}.q-sync .s{font-size:14px}.empty{min-height:35vh}.empty h3{font-family:var(--sans);font-size:22px}.login-card{max-width:420px;padding:36px}.login-brand{font-family:var(--sans);font-size:28px;font-weight:650;letter-spacing:-1px}.login-brand span{color:var(--txt)}.login-lead{font-size:15px;margin:14px 0 26px}.login-go{margin-top:10px}.load-error{margin:20px 0;font-size:14px}.mobile-bar{display:none}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--card);padding:12px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.page-body{padding:28px 0!important;display:grid;gap:20px}.incident-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.incident-search{flex:0 1 240px;min-width:180px;padding:6px 10px;font-size:13px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--txt);-webkit-appearance:none;-moz-appearance:none;appearance:none}.incident-search::placeholder{color:var(--dim-2)}.incident-search:focus{outline:none;border-color:var(--accent)}.filter-group{display:inline-flex;border:1px solid var(--line-2);border-radius:4px;overflow:hidden}.filter-group button{padding:10px 14px;font-size:14px;min-height:42px}.filter-group button[aria-pressed=true]{background:var(--acc);color:#fff}.incident-row{width:100%;display:flex;align-items:center;gap:18px;padding:20px;text-align:left;border-top:1px solid var(--line);background:var(--card)}.incident-row:first-child{border-top:0}.incident-row:hover{background:var(--acc-soft)}.incident-thumb{width:90px;height:64px;object-fit:cover;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center;flex-shrink:0;color:var(--dim-2);font-size:12px}.incident-body{flex:1;min-width:0}.incident-row-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.incident-meta{display:flex;flex-wrap:wrap;gap:2px 14px;font-size:13px;color:var(--dim);margin-top:8px;overflow-wrap:anywhere}.incident-chevron{display:flex;color:var(--acc)}.report-split,.control-split{min-width:0}.table-scroll{max-width:100%;overflow:auto}.table-scroll table{min-width:560px}.client-details{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.client-details>summary{cursor:pointer;font-size:14px;color:var(--dim);padding:8px 0}@media (max-width:1350px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 0}.kpi:nth-child(3){border-right:0}.work{grid-template-columns:minmax(0,1fr) 290px}}@media (max-width:1120px){.work{grid-template-columns:1fr}.work>.side{display:grid;grid-template-columns:1fr 1fr}.sec{border-right:1px solid var(--line)}.control-split,.report-split{grid-template-columns:minmax(0,1fr)!important}.masthead .right{margin-left:0}}@media (max-width:900px){.layout{display:block}.mobile-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--side)}.wordmark{font-size:21px;font-weight:700;letter-spacing:-.7px}.sidebar{display:none;position:static;height:auto;overflow:visible;flex-direction:column;padding:12px 18px}.nav-expanded .sidebar{display:flex}.sidebar .brand{display:none}.nav-group{display:block}.nav-item{border-left:2px solid transparent;border-bottom:0;white-space:normal}.nav-item.active{border-left:2px solid var(--acc);border-bottom:0}.sidebar .who,.sidebar .source-hint{display:block}.portal-topbar{height:65px}.portal-section{display:none}.content{padding:0 18px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(2n){border-right:0}.kpi:nth-child(3){border-right:1px solid var(--line)}.work>.side{display:flex}.q-display{font-size:27px}.masthead{padding:24px 0}.page-body{padding:24px 0!important}.incident-search{flex:1 1 100%}.incident-row{padding:16px 12px;gap:12px}.incident-thumb{width:60px;height:54px}.incident-row-title{gap:7px}.portal-context{gap:8px}.portal-context [role=listbox]{min-width:min(280px,100%)!important}.q-fields,.q-tel{grid-template-columns:1fr}.q-joints{grid-template-columns:repeat(2,1fr)}.masthead .right{width:100%}.control-split canvas{max-width:100%;height:auto}.work>.main{padding:15px}.q-btn{white-space:normal}.portal-footer{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.checkpoint-table>div{min-width:800px}.incident-frame{margin:0 auto;position:relative;width:fit-content;max-width:100%;border-radius:var(--r);overflow:hidden;background:var(--video-bg)}.incident-frame img{display:block;width:auto;height:auto;max-width:100%;max-height:min(58vh,640px)}.incident-frame figcaption{position:absolute;left:14px;bottom:12px;color:var(--video-ink);text-shadow:0 1px 3px var(--video-bg)}.incident-frame-empty{height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:var(--bg);border:1px solid var(--line);color:var(--dim)}.incident-frame-empty strong{font-size:18px;font-weight:500;color:var(--txt)}.incident-frame-empty span{font-size:14px}.incident-frame-empty small{font-size:12px;margin-top:22px}.q-rows .q-mono{font-size:12px}.sec:has(>.q-table){overflow-x:auto}.sec>.q-table{min-width:540px}.feedback-fab{position:fixed;bottom:14px;right:14px;z-index:30}.feedback-toggle{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px 0 9px;font-size:12px;color:var(--dim);background:var(--card);border:1px solid var(--line-2);border-radius:15px;box-shadow:var(--shadow-float);cursor:pointer;opacity:.85}.feedback-toggle:hover,.feedback-toggle[aria-expanded=true]{opacity:1;color:var(--txt);border-color:var(--acc)}.feedback-toggle svg{width:15px;height:15px}.feedback-pop{position:absolute;bottom:38px;right:0;width:300px;max-width:calc(100vw - 28px);display:grid;gap:10px;padding:14px;background:var(--card);border:1px solid var(--line-2);border-radius:6px;box-shadow:var(--shadow-float-lg)}.feedback-head{display:flex;justify-content:space-between;align-items:center;font-size:14px}.feedback-x{font-size:20px;line-height:1;color:var(--dim);padding:0 4px}.feedback-kinds{display:flex;flex-wrap:wrap;gap:6px}.feedback-kinds button{padding:4px 10px;font-size:12px;border:1px solid var(--line-2);border-radius:12px;color:var(--dim);background:transparent}.feedback-kinds button.on{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.feedback-pop textarea{width:100%;resize:vertical;min-height:84px;max-height:240px;padding:8px 10px;font:inherit;font-size:14px;color:var(--txt);background:var(--bg);border:1px solid var(--line-2);border-radius:4px}.feedback-pop textarea:focus{outline:none;border-color:var(--acc)}.feedback-pop .err{font-size:12px;color:var(--bad)}.feedback-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px}.feedback-foot .q-btn{min-height:34px;padding:6px 14px}.feedback-thanks{margin:6px 0;font-size:14px;text-align:center}@media (max-width:900px){.feedback-fab{bottom:calc(var(--tabbar-h, 0px) + 12px)}.feedback-label{display:none}.feedback-toggle{width:34px;height:34px;padding:0;justify-content:center;border-radius:50%}}.support-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;margin-bottom:12px;border:1px solid var(--acc);background:var(--acc-soft,var(--bg));font-size:14px}.support-code__digits{display:block;font-size:40px;letter-spacing:.35em;font-variant-numeric:tabular-nums;font-weight:700;margin:6px 0}.support-redeem{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.layout{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh}.sidebar{background:var(--side);border-right:1px solid var(--side-line);padding:14px 0 12px;display:flex;flex-direction:column;position:sticky;inset-block-start:0;height:100vh;height:100dvh;overflow:hidden}.sidebar-nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.brand{font-weight:500;font-size:15px;padding:2px 18px 16px;letter-spacing:.01em}.brand span{color:var(--accent)}.brand small{display:block;font-weight:400;font-size:11.5px;color:var(--dim);margin-top:2px}.site-list{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:280px;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r);box-shadow:var(--shadow-menu);overflow:hidden;animation:q-select-drop .2s cubic-bezier(.55,0,1,.45);transform-origin:top left}@media (prefers-reduced-motion: reduce){.site-list{animation:none}}.site-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 13px;border-bottom:1px solid var(--line);text-align:left;background:transparent}.site-option:hover,.site-option.current{background:var(--acc-soft)}.site-option-name{font-size:13.5px}.site-option.current .site-option-name{font-weight:500}.site-option--add{border-bottom:0;font-size:13.5px;color:var(--dim)}.site-switch{position:relative;margin:-14px 0 4px;padding:0 10px}.site-switch-btn{display:flex;align-items:center;gap:6px;width:100%;padding:5px 7px;border:1px solid transparent;border-radius:var(--r);color:var(--dim);font-size:12.5px;text-align:left}.site-switch-btn:hover{background:var(--card);border-color:var(--line);color:var(--txt)}.site-switch-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-switch-caret{margin-left:auto;font-size:9px;color:var(--dim-2)}.site-list--compact{min-width:0;left:0;right:0}.site-list--compact .site-option{flex-wrap:wrap;gap:4px 8px;padding:9px 11px}.site-list--compact .site-option>span:last-child{margin-left:0}.robot-switch{margin:0 0 6px}.robot-switch-label{padding:0 7px 2px;font-size:12px;letter-spacing:0;color:var(--dim-2)}.robot-switch-status{flex-shrink:0;font-size:11.5px;color:var(--dim-2)}.robot-switch-static{cursor:default}.robot-switch-static:hover{background:transparent;border-color:transparent;color:var(--dim)}.robot-switch-note{padding:2px 7px 0;font-size:11px;color:var(--dim-2)}.robot-dot--ok{color:var(--ok)}.robot-dot--bad{color:var(--bad)}.robot-dot--dim{color:var(--dim-2)}.nav-group{padding:15px 18px 5px;font-size:12px;letter-spacing:0;color:var(--dim-2)}.nav-group:first-of-type{padding-top:0}.nav-item{display:flex;align-items:center;gap:9px;color:var(--dim);padding:7px 14px 7px 18px;font-size:13.5px;border-left:2px solid transparent}.nav-item:hover{color:var(--txt)}.nav-item.active{color:var(--txt);font-weight:500;border-left-color:var(--accent);background:var(--card)}.nav-item .badge{margin-left:auto;background:var(--bad);color:var(--on-acc);font-size:10px;min-width:16px;height:16px;border-radius:8px;display:grid;place-items:center;font-variant-numeric:tabular-nums}.sidebar .source-hint{font-size:11px;color:var(--dim-2);padding:10px 18px 0;border-top:1px solid var(--side-line);margin-top:10px}.sidebar .source-hint b{color:var(--dim);font-weight:500}.user-menu{position:relative;margin:10px 10px 0;border-top:1px solid var(--side-line);padding-top:8px}.user-menu-btn{display:flex;align-items:center;gap:9px;width:100%;padding:6px 8px;font:inherit;text-align:left;color:var(--txt);background:transparent;border:1px solid transparent;border-radius:var(--r);cursor:pointer}.user-menu-btn:hover,.user-menu.open .user-menu-btn{background:var(--card);border-color:var(--line)}.user-menu .avatar{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--on-acc);background:var(--accent)}.user-menu-text{min-width:0;flex:1;display:flex;flex-direction:column;line-height:1.3}.user-menu-name{font-size:12.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-org{font-size:11px;color:var(--dim-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{flex:none;font-size:10px;color:var(--dim-2)}.user-menu-pop{position:absolute;left:0;right:0;bottom:calc(100% + 4px);background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-pop);animation:q-pop-rise .2s cubic-bezier(.55,0,1,.45);transform-origin:bottom center;padding:4px;z-index:20}.user-menu-head{padding:6px 10px 7px;font-size:11px;color:var(--dim-2);border-bottom:1px solid var(--line);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-item{display:block;width:100%;padding:7px 10px;font:inherit;font-size:13px;text-align:left;color:var(--txt);background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer}.user-menu-item:hover{background:var(--side)}a.user-menu-item{text-decoration:none;box-sizing:border-box}.user-menu-item--out{color:var(--bad)}.user-menu-item--icon{display:flex;align-items:center;gap:8px}.user-menu-icon{width:16px;height:16px;flex:none}.user-menu-accounts{padding-bottom:4px;margin-bottom:4px;border-bottom:1px solid var(--line)}.account-row{display:flex;align-items:center;gap:9px;width:100%;padding:6px 8px;font:inherit;text-align:left;color:var(--txt);background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer}.account-row:hover{background:var(--side)}.account-row:disabled{cursor:not-allowed;opacity:.5;color:var(--dim-2);background:var(--side)}.user-menu-pop .account-row .avatar{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:600;color:var(--on-acc);background:var(--accent)}.account-text{min-width:0;flex:1;display:flex;flex-direction:column;line-height:1.3}.account-name{font-size:12.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-email{font-size:11px;color:var(--dim-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-tick{flex:none;font-size:11px;color:var(--accent)}.user-menu-note{padding:6px 10px 8px;font-size:11.5px;line-height:1.35;color:var(--bad)}.user-menu-sep{height:1px;margin:4px 0;background:var(--line)}.login-sessions{margin-bottom:16px}.login-sessions-head{font-size:11.5px;color:var(--dim-2);margin-bottom:4px}.login-sessions .account-row{border:1px solid var(--line);margin-bottom:6px;padding:8px 10px}.login-sessions .account-row:hover{background:var(--card)}.login-sessions .avatar{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;color:var(--on-acc);background:var(--accent)}.content{min-width:0}.page-pad{padding:20px 26px 28px}.masthead{padding:20px 26px 16px;display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap}.masthead .sub{color:var(--dim);font-size:13px;padding-bottom:3px}.masthead .right{margin-left:auto;display:flex;align-items:center;gap:14px;padding-bottom:3px}.masthead-back{display:inline-flex;align-items:center;gap:5px;flex-basis:100%;width:max-content;font-size:12.5px;color:var(--dim)}.masthead-back .nav-icon{width:13px;height:13px}.masthead-back:hover,.masthead-back:hover .nav-icon{color:var(--txt)}.q-panel-drop{animation:q-select-drop .2s cubic-bezier(.55,0,1,.45)}.site-mode-opt{flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;text-align:left;padding-top:7px;padding-bottom:7px}.site-mode-opt__hint{font-size:11.5px;font-weight:400;line-height:1.35;opacity:.62}@media (prefers-reduced-motion: reduce){.q-panel-drop{animation:none}}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card)}.kpi{padding:11px 26px;border-right:1px solid var(--line)}.kpi:last-child{border-right:0}.kpi .v{margin-top:3px}.kpi .v .of{font-size:15px;color:var(--dim-2)}.kpi .d{font-size:11.5px;color:var(--dim-2);margin-top:1px}.kpi__dot{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;vertical-align:middle;position:relative;top:-1px;background:var(--dim-2)}.kpi__dot--ok{background:var(--ok)}.kpi__dot--warn{background:var(--warn)}.kpi__dot--bad{background:var(--bad)}.kpi__dot--off{background:var(--dim-2)}.kpi--alert{background:var(--bad-soft)}.kpi--alert .v{color:var(--bad)}.kpi--alert .d{color:var(--bad);opacity:.8}.work{display:grid;grid-template-columns:minmax(0,1fr) 316px;min-height:calc(100vh - 210px)}.work>.main{padding:16px 20px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:12px;min-width:0}.work>.side{display:flex;flex-direction:column}.sec{border-bottom:1px solid var(--line);padding:13px 18px}.sec:last-child{border-bottom:0}.sec>h4{font-size:12px;letter-spacing:0;color:var(--dim-2);font-weight:500;margin-bottom:9px}.unit{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:7px 0;border-top:1px solid var(--line)}.unit:first-of-type{border-top:0}.unit .nm{font-weight:500;font-size:13px}.unit .st{font-size:11.5px;color:var(--dim)}.unit .bat{text-align:right}.unit .bat .p{font-size:15px;font-variant-numeric:tabular-nums}.unit .bat .h{font-size:11px;color:var(--dim-2)}.unit .q-meter{grid-column:1 / -1;margin-top:4px}.settings{display:grid;grid-template-rows:auto 1fr;min-height:calc(100vh - 120px)}.anchors{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;inset-block-start:0;z-index:20}.anchors::-webkit-scrollbar{display:none}.anchors button{padding:12px 15px;font-size:14px;color:var(--dim);border:0;border-bottom:2px solid transparent;background:none;white-space:nowrap;margin-bottom:-1px}.anchors button:hover{color:var(--txt)}.anchors button.on{color:var(--txt);border-bottom-color:var(--acc);font-weight:500}.list-table{overflow-x:auto;contain:inline-size}.q-table{width:100%;border-collapse:collapse}.q-table th{font-size:12px;letter-spacing:0;color:var(--dim-2);font-weight:500;text-align:left;padding:8px 16px 8px 0;background:transparent;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}.q-table td{padding:11px 16px 11px 0;border-bottom:1px solid var(--line);font-size:13px;vertical-align:top}.q-table th:last-child,.q-table td:last-child{padding-right:0}.q-table tbody tr:hover td{background:var(--side)}.q-table tr:last-child td{border-bottom:0}.q-table .r{text-align:right}.q-table .nowrap{white-space:nowrap}.q-table .who-cell{min-width:140px}.sec-note{margin-top:11px;font-size:12px;color:var(--dim-2)}.sec-note:first-letter{text-transform:uppercase}.who-cell{display:flex;flex-direction:column;gap:2px}.q-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.q-field label{display:block;font-size:14px;color:var(--dim);margin-bottom:4px}.q-field input:not([type=checkbox]):not([type=radio]),.q-field select{width:100%;padding:10px 12px;min-height:44px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--card);font-size:16px}.q-field .err{font-size:11.5px;color:var(--bad);margin-top:3px}.q-field__label{display:block;font-size:14px;color:var(--dim);margin-bottom:4px}.q-field__static{display:flex;align-items:center;min-height:44px;padding:10px 0;font-size:16px;font-variant-numeric:tabular-nums;color:var(--txt);border-bottom:1px dashed var(--line-2)}.q-field__hint{font-size:11.5px;margin-top:3px}.q-field--row{grid-column:1 / -1}.q-timerange{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.q-field .q-timerange input:not([type=checkbox]):not([type=radio]),.q-timerange input{width:128px;flex:0 0 auto}.q-timerange-hint{font-size:11.5px;max-width:46ch}.q-pair{display:grid;grid-template-columns:repeat(2,minmax(210px,260px));gap:12px}@media (max-width: 560px){.q-pair{grid-template-columns:1fr}.q-timerange-hint{max-width:none}}.q-field input[aria-invalid=true],.q-field select[aria-invalid=true],.q-field textarea[aria-invalid=true]{border-color:var(--bad)}.pw{position:relative}.pw input{padding-right:34px}.pw-toggle{position:absolute;top:0;right:0;bottom:0;width:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--dim-2);border-radius:var(--r)}.pw-toggle:hover{color:var(--txt)}.pw-toggle[aria-pressed=true]{color:var(--accent)}.q-warn{padding:11px 13px;background:var(--warn-soft);border-left:3px solid var(--warn);font-size:12.5px;margin-top:11px}.q-warn b{font-weight:500}.q-sync{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));border:1px solid var(--line)}.q-sync>div{padding:10px 13px;border-right:1px solid var(--line)}.q-sync>div:last-child{border-right:0}.q-sync .s{font-size:13px;margin-top:3px;display:flex;align-items:center;gap:6px}.q-tel{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 26px}.q-tel .row{display:flex;gap:10px;padding:5px 0;border-top:1px solid var(--line);font-size:12.5px}.q-tel .row:first-child{border-top:0}.q-tel .row .r{margin-left:auto;font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--dim)}.q-joints{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:4px}.q-joints>div{background:var(--card);padding:7px 9px}.q-joints .n{font-size:10.5px;color:var(--dim-2)}.q-joints .t{font-size:14px;font-variant-numeric:tabular-nums;margin-top:1px}.q-joints .t.hot{color:var(--warn)}.q-joints .t.bad{color:var(--bad)}.q-caps{display:flex;flex-wrap:wrap;gap:6px}@media (max-width: 900px){.q-joints{grid-template-columns:repeat(2,1fr)}}.tl{border-left:1px solid var(--line);margin-left:5px;padding-left:14px}.tl .e{position:relative;padding:6px 0;font-size:12.5px;display:flex;gap:8px}.tl .e:before{content:"";position:absolute;left:-19px;top:12px;width:7px;height:7px;border-radius:50%;background:var(--card);border:1px solid var(--line-2)}.tl .e.key:before{background:var(--bad);border-color:var(--bad)}.tl .e .q-mono{color:var(--dim-2);flex:none}.tl .e .w{color:var(--dim)}.tl .e.key .w{color:var(--txt)}@media (max-width: 1100px){.work{grid-template-columns:1fr}.work>.main{border-right:0;border-bottom:1px solid var(--line)}}.empty{display:grid;place-items:center;min-height:60vh;text-align:center;padding:24px}.empty h3{font:400 20px/1.2 var(--serif);margin-bottom:6px}.empty p{color:var(--dim);max-width:46ch;margin-bottom:14px}@media (max-width: 900px){.layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;overflow-x:auto;border-right:none;border-bottom:1px solid var(--side-line);padding:8px 10px}.sidebar-nav{display:contents}.sidebar .source-hint,.sidebar .who,.nav-group{display:none}.brand{padding:0 14px 0 4px}.nav-item{border-left:0;border-bottom:2px solid transparent;white-space:nowrap}.nav-item.active{border-left:0;border-bottom-color:var(--accent)}}.boot{min-height:100vh;display:grid;place-items:center;color:var(--dim-2);font-size:13px}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.login-card{width:100%;max-width:330px;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r);padding:26px 24px 24px}.login-brand{font-family:var(--serif);font-size:21px;letter-spacing:.06em;color:var(--txt)}.login-brand span{color:var(--accent)}.login-lead{margin:8px 0 18px;font-size:12.5px;line-height:1.5;color:var(--dim)}.login .q-field{margin-bottom:14px}.login .q-field input,.login .q-field select{width:100%}.login-go{width:100%;justify-content:center;display:inline-flex;text-align:center}.login-links{margin-top:16px;display:flex;justify-content:space-between;gap:10px 14px;flex-wrap:wrap;font-size:12px;color:var(--dim)}.login-links a{border-bottom:1px solid var(--line-2)}.login-links a:hover{color:var(--txt);border-bottom-color:var(--dim-2)}.login-or{display:flex;align-items:center;gap:10px;margin:14px 0;font-size:12px;letter-spacing:0;color:var(--dim-2)}.login-or:before,.login-or:after{content:"";flex:1;border-top:1px solid var(--line)}.login-google{display:flex;flex-direction:column;align-items:center;min-height:40px}.login-google .err{font-size:11.5px;color:var(--bad);margin-top:6px}.profile .row-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.login-telegram{display:flex;flex-direction:column;gap:10px;margin-top:10px}.login-telegram .login-lead{margin:0}.login-telegram .err{font-size:11.5px;color:var(--bad)}.login-telegram__wait{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dim)}.login-telegram__wait .link-btn{margin-left:auto}.login-telegram__dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:login-telegram-pulse 1.2s ease-in-out infinite}@keyframes login-telegram-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.login-note{padding:9px 11px;margin-bottom:14px;font-size:12.5px;line-height:1.45;border-left:3px solid var(--ok);background:var(--ok-soft);color:var(--ok)}.login-note--bad{border-left-color:var(--bad);background:var(--bad-soft);color:var(--bad)}.login-note b{font-weight:500}.login-hint{font-size:11.5px;color:var(--dim-2);margin-top:3px}.login-hint--warn{color:var(--bad)}.link-btn{padding:0;font-size:inherit;color:var(--dim);border-bottom:1px solid var(--line-2);line-height:1.3}.link-btn:hover:not(:disabled){color:var(--txt);border-bottom-color:var(--dim-2)}.link-btn:disabled{opacity:.5;cursor:not-allowed;color:var(--dim-2);border-bottom-color:transparent}.q-field .link-btn{margin-top:6px;font-size:11.5px}.profile{max-width:680px;padding:0 26px 30px}.profile .sec{padding:18px 0}.profile .sec p{font-size:12.5px;line-height:1.5;margin-bottom:10px}.profile .sec p b{font-weight:500}.profile .actions{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:12.5px}.profile .actions .err{color:var(--bad)}.profile .q-fields{gap:12px 18px}.load-error{margin:16px 26px 0;padding:9px 12px;font-size:12.5px;color:var(--bad);background:var(--bad-soft);border:1px solid var(--bad);border-radius:var(--r)}.admin{padding:0 26px 30px}.admin .toolbar{display:flex;align-items:center;gap:14px;margin:0 0 14px;flex-wrap:wrap}.admin .toolbar input[type=search]{flex:1 1 260px;max-width:420px;padding:6px 10px;font:inherit;font-size:13px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--txt)}.admin .toolbar>a{margin-left:auto;font-size:12.5px}.q-select{position:relative;flex:0 1 240px;min-width:180px}.q-select__input{width:100%;padding:6px 28px 6px 10px;font:inherit;font-size:13px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--dim)}.q-select__input--set{color:var(--txt)}.q-select__input::placeholder{color:var(--dim-2)}.q-select__input:focus{outline:none;border-color:var(--accent)}.q-select__input:disabled{opacity:.55;cursor:not-allowed}.q-select__icon,.q-time__icon{position:absolute;top:50%;right:12px;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid var(--dim-2);border-bottom:1.5px solid var(--dim-2);transform:rotate(45deg);transition:transform .12s ease;pointer-events:none}.q-select--open .q-select__icon,.q-time--open .q-time__icon{margin-top:-2px;transform:rotate(225deg)}@media (prefers-reduced-motion: reduce){.q-select__icon,.q-time__icon{transition:none}}.q-select__clear{position:absolute;top:50%;right:5px;width:20px;height:20px;margin-top:-10px;border-radius:50%;cursor:pointer}.q-select__clear:before,.q-select__clear:after{content:"";position:absolute;top:50%;left:50%;width:9px;border-top:1.5px solid var(--dim-2);transform-origin:center}.q-select__clear:before{transform:translate(-50%,-50%) rotate(45deg)}.q-select__clear:after{transform:translate(-50%,-50%) rotate(-45deg)}.q-select__clear:hover{background:var(--bg-2, var(--wash-06))}.q-select__clear:hover:before,.q-select__clear:hover:after{border-color:var(--dim)}@keyframes q-select-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes q-pop-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.user-menu-pop{animation:none}}.q-select__list{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:264px;overflow-y:auto;padding:4px;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-sm);box-shadow:var(--shadow-pop);animation:q-select-drop .2s cubic-bezier(.55,0,1,.45);transform-origin:top center}@media (prefers-reduced-motion: reduce){.q-select__list{animation:none}}.q-select__option{display:block;width:100%;padding:6px 10px;border-radius:6px;font:inherit;font-size:13px;text-align:left;color:var(--txt);background:transparent;border:0;cursor:pointer}.q-select__option.on{background:var(--bg-2, var(--wash-05))}.q-select__option[aria-selected=true]{font-weight:500}.q-select__option--default{color:var(--dim-2)}.q-select__option--picked,.q-select__option--picked.on{font-weight:600;background:var(--acc-soft)}.q-select__none{padding:6px 10px;font-size:12.5px}.q-suggest{position:relative}.q-suggest__list{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:220px;overflow-y:auto;padding:4px 0;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-sm);box-shadow:var(--shadow-pop);animation:q-select-drop .2s cubic-bezier(.55,0,1,.45);transform-origin:top center}@media (prefers-reduced-motion: reduce){.q-suggest__list{animation:none}}.q-suggest__option{display:block;width:100%;padding:7px 12px;font:inherit;font-size:14px;text-align:left;color:var(--txt);background:transparent;border:0;cursor:pointer}.q-suggest__option.on{background:var(--bg-2, var(--wash-05))}.q-time{position:relative}.q-timerange .q-time{flex:0 0 auto}.q-field .q-time input:not([type=checkbox]):not([type=radio]){padding-right:32px}.q-time__pop{position:absolute;z-index:20;top:calc(100% + 4px);left:0;display:flex;gap:2px;padding:4px;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-sm);box-shadow:var(--shadow-pop);animation:q-select-drop .2s cubic-bezier(.55,0,1,.45);transform-origin:top center}@media (prefers-reduced-motion: reduce){.q-time__pop{animation:none}}.q-time__col{width:68px}.q-time__cap{padding:4px 0 2px;font-size:11px;text-align:center;color:var(--dim-2)}.q-time__list{position:relative;max-height:216px;overflow-y:auto;scrollbar-width:thin}.q-time__opt{display:block;width:100%;padding:6px 10px;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;text-align:center;color:var(--txt);background:transparent;border:0;border-radius:calc(var(--r-sm) - 4px);cursor:pointer}.q-time__opt:hover{background:var(--bg-2, var(--wash-05))}.q-time__opt[aria-selected=true],.q-time__opt[aria-selected=true]:hover{font-weight:500;color:var(--acc);background:var(--acc-soft)}.q-cal-anchor{position:relative}.q-cal{position:absolute;z-index:30;top:calc(100% + 6px);left:0;display:flex;gap:20px;padding:12px;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-sm);box-shadow:var(--shadow-pop)}.q-cal-month{width:224px}.q-cal-caption-row{display:flex;align-items:center;gap:2px;margin-bottom:8px}.q-cal-caption{flex:1;text-align:center;font-size:13px;font-weight:500}.q-cal-jump{width:22px;height:22px;padding:0;font:inherit;font-size:14px;line-height:1;color:var(--dim);background:transparent;border:0;border-radius:var(--r-sm);cursor:pointer}.q-cal-jump:hover{color:var(--txt);background:var(--line-2)}.q-cal-jump-spacer{width:22px;height:22px}.q-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px;font-size:11px;text-align:center;color:var(--dim-2)}.q-cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.q-cal-cell{position:relative;height:30px;display:flex;align-items:center;justify-content:center}.q-cal-cell.in-range:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--acc-soft)}.q-cal-cell.range-start:before{left:50%}.q-cal-cell.range-end:before{right:50%}.q-cal-day{position:relative;z-index:1;width:26px;height:26px;font:inherit;font-size:12.5px;color:var(--txt);background:transparent;border:0;border-radius:50%;cursor:pointer}.q-cal-cell.out .q-cal-day{color:var(--dim-2)}.q-cal-day:hover{background:var(--line-2)}.q-cal-day.on,.q-cal-day.on:hover{background:var(--acc);color:var(--on-acc)}.q-cal-day.today:not(.on){box-shadow:inset 0 0 0 1px var(--acc)}.q-cal-day:disabled,.q-cal-day:disabled:hover{color:var(--dim-2);background:transparent;cursor:not-allowed;opacity:.45}@media (max-width: 560px){.q-cal{flex-direction:column;gap:8px}.q-cal-month{width:100%}}.seg{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--r-sm);overflow:hidden}.seg button{padding:5px 11px;font:inherit;font-size:12.5px;color:var(--dim);background:transparent;border:0;border-left:1px solid var(--line-2);cursor:pointer}.seg button:first-child{border-left:0}.seg button.on{color:var(--txt);background:var(--card);box-shadow:inset 0 -2px 0 var(--accent)}.admin .q-table td{vertical-align:top}.admin .who-cell b{font-weight:500}.admin .chips{display:flex;flex-wrap:wrap;gap:4px}.admin .note{max-width:320px;font-size:12px;line-height:1.4}.admin .tiny{font-size:11px}.admin .q-table tr.linked{cursor:pointer}.admin .toolbar .check{display:inline-flex;gap:6px;align-items:center;font-size:14px;color:var(--dim);cursor:pointer}.admin .toolbar .check input{width:16px;height:16px;margin:0}.admin .robot-card__facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}.admin .robot-card__facts dt{color:var(--dim)}.admin .robot-card__facts dd{margin:0}.admin .robot-card__actions{display:flex;gap:8px;flex-wrap:wrap}.admin .warranty-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin .row-actions{text-align:right;white-space:nowrap}.admin .row-actions .q-btn+.q-btn{margin-left:6px}.admin tr.off td{color:var(--dim-2)}.admin tr.off .who-cell b{color:var(--dim);text-decoration:line-through}.admin tr.open td{border-bottom:0;background:var(--card)}.admin tr.detail>td{background:var(--card);padding:14px 16px 18px}.site-picks{display:flex;flex-direction:column;gap:6px;margin:6px 0 4px}.site-picks label{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--dim);cursor:pointer}.site-picks label.on{color:var(--txt)}.site-picks input{margin:0}.people-page .pending-invites{margin-top:28px}.people-page .pending-invites h4{margin:0 0 10px;font-size:12px;letter-spacing:0;color:var(--dim-2)}.people-page .detail-grid select{min-width:160px}.admin .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px}.admin .detail-grid section.wide{grid-column:1 / -1}.admin .detail-grid h4{font-size:12px;letter-spacing:0;color:var(--dim-2);font-weight:500;margin-bottom:8px}.admin .detail-grid p{font-size:12.5px;line-height:1.5;margin:6px 0}.admin .actions{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.admin .q-rows .r{display:inline-flex;gap:6px;align-items:center}.admin select{font:inherit;font-size:12.5px;padding:3px 6px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--txt)}.admin .err{color:var(--bad);font-size:12.5px;margin-top:8px}.admin .login-note{margin-bottom:12px}.invite-form{max-width:640px}.invite-form .q-fields{gap:10px 16px;margin-bottom:10px}.invite-kinds{display:flex;gap:6px;margin:4px 0 12px;flex-wrap:wrap}.invite-kind{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--dim);cursor:pointer;background:var(--card)}.invite-kind.on{color:var(--txt);border-color:var(--accent)}.invite-kind input{margin:0}.invite-form .login-hint{margin-top:4px}.invite-form .actions{margin-top:12px}.login-card textarea{width:100%;font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--card);color:var(--txt);resize:vertical}.login-card input[readonly]{color:var(--dim);background:var(--side)}.screen-error{display:inline-block;max-width:100%;margin:0 0 14px;padding:9px 12px;font:12.5px/1.45 var(--mono, ui-monospace, monospace);color:var(--bad);background:var(--bad-soft);border:1px solid var(--bad);border-radius:var(--r);text-align:left;white-space:pre-wrap;word-break:break-word}.q-dialog{margin:auto;padding:0;border:1px solid var(--line-2);border-radius:var(--r);background:var(--card);color:var(--txt);width:min(460px,calc(100% - 32px));box-shadow:var(--shadow-dialog)}.q-dialog::backdrop{background:var(--scrim)}.q-dialog--wide{width:min(640px,calc(100% - 32px))}.q-dialog__body{display:grid;gap:12px;padding:20px 22px 18px}.q-dialog h2{margin:0;font:400 19px/1.25 var(--serif)}.q-dialog__msg{font-size:13.5px;line-height:1.5;color:var(--dim);white-space:pre-line;overflow-wrap:anywhere}.q-dialog__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.q-dialog__actions .q-btn{padding:6px 14px}.q-dialog:has(.pending-invites){width:min(940px,calc(100% - 32px))}.q-dialog .pending-invites{margin-top:0;overflow-x:auto}.q-dialog .pending-invites .q-table{min-width:720px}.q-empty{display:grid;place-items:center;min-height:52vh;padding:40px 24px;text-align:center}.q-empty-box{max-width:44ch;display:grid;justify-items:center}.q-empty-mark{display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;border:1px solid var(--line-2);border-radius:50%;background:var(--card);color:var(--dim-2)}.q-empty h3{font:400 21px/1.25 var(--serif);color:var(--txt);margin:0}.q-empty p{color:var(--dim);font-size:13.5px;line-height:1.65;margin:9px 0 0}.q-empty-act{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.q-empty--warn .q-empty-mark{border-color:var(--warn-edge);color:var(--warn);background:var(--warn-soft)}.q-empty-mark--spin svg{animation:q-empty-spin 1.1s linear infinite}@keyframes q-empty-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.q-empty-mark--spin svg{animation:none}}.sec .q-empty,.q-card .q-empty{min-height:0;padding:26px 16px}.sec .q-empty-mark,.q-card .q-empty-mark{width:42px;height:42px;margin-bottom:12px}.sec .q-empty h3,.q-card .q-empty h3{font-size:17px}.code-issue{display:grid;gap:12px;white-space:normal}.code-issue p{margin:0}.code-issue b{color:var(--txt);font-weight:500}.code-issue__grid{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:6px 14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--acc-soft)}.code-issue__grid>span{font-size:12px;color:var(--dim)}.code-issue__grid>b{justify-self:end;font-size:15px}.code-issue__grid>b.code-issue__code{font-size:21px;letter-spacing:2px}.code-issue__act{display:flex;gap:8px}.code-print{display:none}@media print{body *{visibility:hidden!important}html,body{background:var(--print-bg)!important}.code-print,.code-print *{visibility:visible!important}.code-print{display:block;position:fixed;left:0;top:0;width:100%;padding:24mm 20mm;background:var(--print-bg);color:var(--print-ink)}.code-print__label{font-size:10pt;letter-spacing:0;margin-top:10mm}.code-print__label:first-child{margin-top:0}.code-print__value{font-family:var(--mono);font-size:24pt;margin-top:2mm}.code-print__value--code{font-size:34pt;letter-spacing:3px}.code-print__foot{margin-top:16mm;font-size:9pt}}.teleop-connecting{position:absolute;left:50%;top:50%;max-width:calc(100% - 24px);transform:translate(-50%,-50%);display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--scrim-strong);color:var(--on-acc);font-size:15px;font-weight:500;border-radius:var(--r);pointer-events:none;animation:teleop-connecting-in .25s ease-out both}.teleop-connecting__spinner{width:16px;height:16px;border:2px solid var(--spinner-track);border-top-color:var(--on-acc);border-radius:50%;animation:teleop-spin .8s linear infinite}@keyframes teleop-spin{to{transform:rotate(360deg)}}@keyframes teleop-connecting-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%)}}@media (prefers-reduced-motion: reduce){.teleop-connecting{animation:none}.teleop-connecting__spinner{animation-duration:2s}}.video-off-btn{position:absolute;bottom:10px;right:10px;z-index:2;padding:4px 11px;font-size:12px;background:var(--scrim-video);color:var(--on-acc);border-color:transparent}.teleop-low-battery{position:absolute;left:0;right:0;top:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 16px;background:var(--alert-fill);color:var(--on-acc);font-size:14px;line-height:1.4;pointer-events:none;animation:teleop-banner-in .25s ease-out both}.teleop-low-battery b{font-size:15px}@keyframes teleop-banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.teleop-low-battery{animation:none}}.q-btn--soon{color:var(--dim);border-style:dashed}.q-btn--soon:hover{color:var(--txt);border-color:var(--dim-2)}.q-btn--soon .q-chip{padding:1px 5px;font-size:10.5px}.incident-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.incident-tab{display:inline-flex;align-items:center;gap:8px;padding:11px 16px 9px;font-size:14.5px;color:var(--dim);border-bottom:3px solid transparent;margin-bottom:-1px;min-height:44px}.incident-tab:hover{color:var(--txt)}.incident-tab[aria-pressed=true]{color:var(--txt);font-weight:500;border-bottom-color:var(--acc)}.incident-tab-count{font-size:12px;padding:1px 7px;border:1px solid var(--line-2);border-radius:10px;color:var(--dim)}.incident-tab[aria-pressed=true] .incident-tab-count{border-color:var(--acc);color:var(--acc)}.incident-summary{display:flex;flex-wrap:wrap;gap:4px 20px;padding:11px 14px;background:var(--card);border:1px solid var(--line);font-size:13px;color:var(--dim)}.incident-summary b{color:var(--txt);font-weight:600;font-size:14.5px}.incident-stale{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;background:var(--warn-soft);border-left:3px solid var(--warn);font-size:13px}.incident-expiring{background:var(--bad-soft);border-left-color:var(--bad)}.incident-bulk{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--acc-soft);border:1px solid var(--line-2);font-size:13.5px}.incident-open{flex:1;min-width:0;display:flex;align-items:center;gap:18px;text-align:left;background:transparent;padding:0}.incident-pick{width:18px;height:18px;flex-shrink:0;accent-color:var(--acc);cursor:pointer}.incident-pick--none{display:inline-block;cursor:default}.incident-row--picked{background:var(--acc-soft)}@media (max-width: 900px){.incident-open{gap:12px}.incident-tab{padding:10px 12px 8px;font-size:14px}}.robot-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.robot-actions .q-btn{min-height:36px;display:inline-flex;align-items:center;text-decoration:none}.robot-note{margin:12px 0 0;padding:9px 12px;border:1px solid var(--line-2);background:var(--card);font-size:13px}.robot-stats{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 10px;font-size:13px;color:var(--dim)}.robot-stats b{color:var(--txt);font-weight:500;font-variant-numeric:tabular-nums}.robot-stats-bad b{color:var(--bad)}.robot-log{max-width:760px}.robot-log-row{flex-wrap:wrap}.robot-log-what{display:flex;flex-direction:column;gap:2px;min-width:0}.robot-log-what .tiny{font-size:12px}.robot-log-link{color:inherit;text-decoration:none;min-height:44px}.robot-log-link:hover{background:var(--side)}.uptime-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;max-width:520px}.uptime-day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.uptime-bar{width:100%;max-width:28px;height:64px;display:flex;align-items:flex-end;background:var(--line);border-radius:4px 4px 0 0;overflow:hidden}.uptime-bar>i{display:block;width:100%;background:var(--acc);border-radius:4px 4px 0 0}.uptime-bar--none{background:transparent;border:1px dashed var(--line-2)}.uptime-day-pct{font-size:12px;font-variant-numeric:tabular-nums;color:var(--txt)}.uptime-day-name{font-size:11px;color:var(--dim);white-space:nowrap}.battery-chart{position:relative;max-width:760px;touch-action:pan-y}.battery-chart svg{display:block;width:100%;height:auto;overflow:visible}.bc-grid{stroke:var(--line);stroke-width:1}.bc-axis{fill:var(--dim);font-size:10px;font-variant-numeric:tabular-nums}.bc-low{stroke:var(--bad);stroke-width:1;stroke-dasharray:3 3;opacity:.6}.bc-low-label{fill:var(--bad)}.bc-band{fill:var(--acc);opacity:.14}.bc-line{fill:none;stroke:var(--acc);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.bc-gap{stroke:var(--acc);stroke-width:1.5;stroke-dasharray:1 4;stroke-linecap:round;opacity:.5}.bc-dot{fill:var(--acc)}.bc-cross{stroke:var(--dim-2);stroke-width:1}.bc-hover{fill:var(--acc);stroke:var(--card);stroke-width:2}.bc-tip{position:absolute;top:-6px;transform:translate(-50%,-100%);padding:5px 8px;background:var(--card);border:1px solid var(--line-2);font-size:12px;white-space:nowrap;pointer-events:none}.beacon-control{display:inline-flex;flex-wrap:wrap;gap:7px;align-items:center}.beacon-control .q-chip{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.beacon-control .q-btn{min-height:44px}.beacon-control__error{color:var(--bad);font-size:12.5px;flex-basis:100%}.clipper-control{display:inline-flex;flex-wrap:wrap;gap:7px;align-items:center}.clipper-control .q-btn{min-height:44px}.clipper-control__error{color:var(--bad);font-size:12.5px;flex-basis:100%}.beacon-dot{width:8px;height:8px;border-radius:50%;background:var(--line-2);flex:none}.beacon-dot--lit{background:var(--warn);animation:beacon-blink 1s steps(2,jump-none) infinite}@keyframes beacon-blink{50%{opacity:.25}}@media (prefers-reduced-motion: reduce){.beacon-dot--lit{animation:none}}.beacon-form{display:grid;gap:14px;max-width:620px}.beacon-form__row{display:grid;gap:5px}.beacon-form__row label{font-size:13px}.beacon-form__hint{font-size:12px;color:var(--dim);line-height:1.5}.beacon-form__check{display:flex;gap:10px;align-items:center;min-height:44px;cursor:pointer}.beacon-form__check input{width:20px;height:20px;margin:0}.beacon-form input[type=number]{max-width:160px}.beacon-form__foot{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.wifi-card{display:grid;gap:14px}.wifi-card__sub{font-size:13px;font-weight:600;margin:4px 0 0}.wifi-list{list-style:none;margin:0;padding:0;display:grid;max-width:620px}.wifi-list__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;min-height:44px;padding:4px 0;border-bottom:1px solid var(--line)}.wifi-list__name{flex:1 1 160px;min-width:0;overflow-wrap:anywhere}.wifi-list__actions{display:flex;gap:8px;flex-wrap:wrap}.wifi-note{padding:11px 13px;font-size:12.5px;border-left:3px solid var(--dim);max-width:620px}.wifi-note--ok{background:var(--ok-soft);border-left-color:var(--ok)}.wifi-note--warn{background:var(--warn-soft);border-left-color:var(--warn)}.wifi-note--bad{background:var(--bad-soft);border-left-color:var(--bad)}.storage-summary{align-items:center;min-height:46px;padding-top:6px;padding-bottom:6px}.storage-bulk{display:grid;margin-left:auto;color:var(--txt)}.storage-bulk>*{grid-area:1 / 1;justify-self:end;align-self:center}.storage-bulk__actions{display:flex;align-items:center;gap:12px;white-space:nowrap}.storage-bulk .q-btn{padding:4px 12px;min-height:32px;font-size:13px}.storage-table .q-table{min-width:880px}.storage-table--exports .q-table{min-width:680px}.storage-table td{vertical-align:middle}.storage-table th{padding-top:12px;padding-bottom:10px}.storage-table th:first-child,.storage-table td:first-child{padding-left:16px}.storage-table th:last-child,.storage-table td:last-child{padding-right:16px}.storage-table .q-table .r{padding-right:24px;white-space:nowrap}.storage-table td .q-btn{padding:5px 11px;min-height:32px}.storage-pager{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.storage-pager__num{min-width:34px;justify-content:center;padding-left:8px;padding-right:8px;font-variant-numeric:tabular-nums}.storage-pager__gap{min-width:20px;text-align:center}.storage-pager>.q-dim:last-child{margin-left:10px}.storage-player{background:var(--video-bg);border-radius:var(--r);overflow:hidden}.storage-player video,.storage-player img{display:block;width:100%;height:360px;object-fit:contain;background:var(--video-bg)}.storage-reason{width:100%;font:inherit;font-size:15px;padding:10px 12px;resize:vertical;border:1px solid var(--line);border-radius:var(--r);background:var(--card);color:var(--txt)}.q-inset{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm)}.q-range-sep{display:inline-block;width:10px;border-top:1px solid var(--dim-2);align-self:center}.q-nil{display:inline-block;width:10px;border-top:1px solid var(--dim-2);vertical-align:middle}.profile .sec:has(>.sec){display:flex;flex-direction:column;gap:16px}.profile .sec>.sec{padding:18px 20px}.profile .guide>div{align-items:flex-start;gap:16px}.profile .guide .r{text-align:right;max-width:60%}.account-pick{position:relative}.account-pick .account-row{width:100%;padding-right:32px}.account-forget{position:absolute;top:50%;right:8px;transform:translateY(-60%);border:0;background:none;color:var(--dim-2);font-size:18px;line-height:1;cursor:pointer}.account-forget:hover{color:var(--txt)}:root{--sidebar-w: 248px;--side-pad: 14px}.sidebar{background:var(--card);border-right:1px solid var(--line);padding:22px var(--side-pad) 14px;gap:0}.sidebar-nav{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--line-2)}.brand{display:flex;align-items:center;flex-wrap:wrap;gap:0;font-size:20px;font-weight:650;letter-spacing:-.02em;line-height:1.1;padding:2px 10px 20px;color:var(--txt)}.brand .logo{flex:none;display:block;width:22px;height:22px;margin-right:9px}.wordmark{display:inline-flex;align-items:center;gap:8px}.wordmark .logo{width:22px;height:22px;flex:none}.brand span{color:var(--acc)}.brand small{flex-basis:100%;font-size:12px;font-weight:400;letter-spacing:0;color:var(--dim-2);margin:4px 0 0 31px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-group{padding:18px 10px 6px;font-size:11.5px;font-weight:500;line-height:1.4;letter-spacing:0;text-transform:none;color:var(--dim-2)}.nav-group:first-of-type{padding-top:4px}.nav-item{position:relative;display:flex;align-items:center;gap:10px;min-height:38px;margin:1px 0;padding:8px 10px;border:0;border-radius:7px;font-size:13.5px;font-weight:400;line-height:1.35;color:var(--dim);transition:background-color .12s ease,color .12s ease}.nav-icon{flex:none;width:17px;height:17px;color:var(--dim-2);transition:color .12s ease}.nav-label{min-width:0}.nav-item:hover{background:var(--acc-soft);color:var(--txt);border:0}.nav-item:hover .nav-icon{color:var(--dim)}.nav-item.active{background:var(--acc-soft);color:var(--txt);font-weight:500;border:0}.nav-item.active .nav-icon{color:var(--acc)}.nav-item.active{box-shadow:inset 3px 0 0 var(--acc)}.nav-item .badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:500;line-height:18px}.nav-item--soon{width:100%;background:transparent;font-size:13.5px;text-align:left;color:var(--dim-2);cursor:default}.nav-item--soon .nav-icon{color:var(--dim-2)}.nav-badge--soon{margin-left:auto;flex:none;padding:1px 7px;border:1px dashed var(--line-2);border-radius:999px;font-size:10px;letter-spacing:.02em;color:var(--dim-2)}.user-menu{margin:8px 0 0;padding-top:10px;border-top:1px solid var(--line)}.user-menu-btn{border-radius:7px;padding:7px 8px}.user-menu-btn:hover,.user-menu.open .user-menu-btn{background:var(--acc-soft);border-color:transparent}.user-menu .avatar{width:28px;height:28px;font-size:11px;font-weight:600}.user-menu-name{font-size:13px;font-weight:500}.user-menu-org{font-size:11.5px}.sidebar .source-hint{border-top:1px solid var(--line);margin-top:8px;padding:10px}.layout{display:flex;align-items:stretch}.layout>.sidebar{flex:0 0 var(--sidebar-w);width:var(--sidebar-w)}.layout.sidebar-collapsed>.sidebar{flex-basis:var(--sidebar-w-collapsed);width:var(--sidebar-w-collapsed)}.layout>.content{flex:1 1 auto}@media (prefers-reduced-motion: reduce){.layout>.sidebar{transition:none}}.brand-text,.nav-group,.nav-label{white-space:nowrap}.nav-item,.nav-group{overflow:hidden}.brand{display:flex;align-items:center;gap:8px}.brand-text{flex:1;min-width:0;overflow:hidden}.sidebar-toggle{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:var(--r-sm);color:var(--dim-2)}.sidebar-toggle:hover{background:var(--acc-soft);color:var(--txt)}.sidebar-toggle svg{width:16px;height:16px}.sidebar-toggle:hover svg{color:var(--txt)}.sidebar-collapsed .brand{position:relative;justify-content:center;padding:4px 0 18px}.sidebar-collapsed .brand .logo{margin-right:0}.sidebar-collapsed .brand-text{display:none}.sidebar-collapsed .sidebar-toggle{position:absolute;left:50%;top:2px;transform:translate(-50%)}.js .sidebar-collapsed .sidebar-toggle{opacity:0}.sidebar-collapsed .brand .logo,.sidebar-collapsed .sidebar-toggle{transition:opacity .3s ease}.sidebar-collapsed .brand:has(.sidebar-toggle:hover,.sidebar-toggle:focus-visible) .logo{opacity:0}.sidebar-collapsed .sidebar-toggle:hover,.sidebar-collapsed .sidebar-toggle:focus-visible{opacity:1}.sidebar-toggle-tip{transform-box:fill-box;transform-origin:center}.sidebar-collapsed .sidebar-toggle-tip{transform:scaleX(-1)}@media (prefers-reduced-motion: reduce){.sidebar-collapsed .brand .logo,.sidebar-collapsed .sidebar-toggle{transition:none}}.sidebar-collapsed .sidebar-switcher,.sidebar-collapsed .nav-group{display:none}.sidebar-collapsed .nav-item{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapsed .nav-label{display:none}.sidebar-collapsed .nav-item .badge{position:absolute;top:4px;right:8px;min-width:8px;width:8px;height:8px;padding:0;font-size:0;line-height:0}.sidebar-collapsed .nav-badge--soon{display:none}.sidebar-collapsed .user-menu-btn{justify-content:center;padding:6px}.sidebar-collapsed .user-menu-text,.sidebar-collapsed .user-menu-caret{display:none}.sidebar-collapsed .user-menu-pop{left:0;right:auto;width:max-content;min-width:240px}@media (max-width: 900px){.layout{display:block}.sidebar{display:none;position:static;height:auto;overflow:visible;flex-direction:column;border-right:0;border-bottom:1px solid var(--line);padding:8px 14px 14px}.nav-expanded .sidebar{display:flex}.sidebar-nav{display:block;overflow:visible}.sidebar .brand{display:none}.nav-group,.sidebar .source-hint,.sidebar .user-menu{display:block}.nav-item,.nav-item.active{border-left:0}}:root{--bg: #eef1f7;--card: #ffffff;--side: #ffffff;--side-line: #e8ebf1;--txt: #1a2233;--dim: #667085;--dim-2: #717d90;--line: #e8ebf1;--line-2: #d8dee7;--acc: #2f6fed;--acc-soft: #eaf1ff;--accent: #2f6fed;--ok: #12805c;--ok-soft: #e7f8f1;--warn: #b5720a;--warn-soft: #fdf3e1;--warn-line: #f0dfb9;--bad: #d1332c;--bad-soft: #fdecec;--r: 16px;--r-sm: 10px;--sh: 0 1px 2px rgba(16, 24, 40, .04), 0 10px 24px -8px rgba(16, 24, 40, .12);--sidebar-w: 264px;--sidebar-w-collapsed: 72px}html,body{overflow-x:clip}body{background:var(--bg)}.q-card{box-shadow:var(--sh);border-radius:var(--r)}.q-btn,.q-chip{border-radius:var(--r-sm)}.q-chip{border-radius:999px;padding:3px 10px}.q-display,.q-figure{font-family:var(--sans);font-weight:700;letter-spacing:-.02em}.kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;border:0;background:transparent;padding:0;margin-bottom:20px}.skel{background:linear-gradient(100deg,var(--line) 40%,var(--bg) 50%,var(--line) 60%);background-size:200% 100%;border-radius:var(--r);animation:skel-slide 1.4s ease-in-out infinite}@keyframes skel-slide{0%{background-position:120% 0}to{background-position:-20% 0}}@media (prefers-reduced-motion: reduce){.skel{animation:none}}a.kpi,a.kpi:hover{color:inherit;text-decoration:none}.kpi--link{cursor:pointer}.kpi--link:hover{box-shadow:var(--sh);transform:translateY(-1px)}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:16px 18px;display:flex;flex-direction:column;gap:8px}.kpi--alert{border-color:var(--bad-edge);background:var(--bad-soft)}.kpi .v{margin:0}.kpi__icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none;background:var(--acc-soft);color:var(--acc)}.kpi__icon svg{width:19px;height:19px;color:inherit}.kpi--bad .kpi__icon,.kpi--alert .kpi__icon{background:var(--bad-tint);color:var(--bad)}.kpi--ok .kpi__icon{background:var(--ok-soft);color:var(--ok)}.kpi--warn .kpi__icon{background:var(--warn-soft);color:var(--warn)}.kpi--neutral .kpi__icon{background:var(--bg);color:var(--dim)}.work>.main{border:0;border-radius:0;background:transparent;padding:0;gap:16px}.work>.side{border:0;border-radius:0;background:transparent;display:flex;flex-direction:column;gap:16px}.sec{background:var(--card);border:1px solid var(--line);border-right:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:16px 18px}.profile{display:flex;flex-direction:column;gap:16px}.profile .sec{padding:18px 20px}.unit{padding:8px 6px;margin:0 -6px;border-radius:var(--r-sm);border-top:0;transition:background-color .12s ease}.unit:hover{background:var(--acc-soft)}.unit+.unit{border-top:1px solid var(--line)}.bento-map-card{min-width:0}.bento-map-card .map-box,.bento-map-card canvas{border-radius:var(--r-sm)}.stop-card{border:1px solid var(--line);border-radius:var(--r);background:var(--card);overflow:hidden;display:grid}.stop-card--live{border-color:var(--bad);background:var(--bad-soft)}.stop-card__stop,.stop-card__lie{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;color:inherit;font-family:inherit;cursor:pointer;padding:14px 16px}.stop-card__stop{font-size:17px;font-weight:600;letter-spacing:.02em}.stop-card__stop:hover{background:var(--bad-soft)}.stop-card__glyph{flex:none;width:13px;height:13px;border-radius:3px;background:var(--bad)}.stop-card__kbd{margin-left:auto;font:500 11px/1 var(--mono);color:var(--dim);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:4px 7px}.stop-card__divider{height:1px;background:var(--line)}.stop-card--live .stop-card__divider{background:var(--bad);opacity:.35}.stop-card__stop,.stop-card__lie{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.stop-card__lie{position:relative;font-size:13.5px}.stop-card__lie:disabled{color:var(--dim);cursor:not-allowed}.stop-card__label,.stop-card__hint{position:relative}.stop-card__hint{margin-left:auto;font-size:11.5px;color:var(--dim)}.stop-card__fill{position:absolute;left:0;top:0;bottom:0;width:100%;transform:scaleX(0);transform-origin:left;background:var(--bad);opacity:.16;pointer-events:none}.stop-card__lie--holding .stop-card__fill{transform:scaleX(1);transition:transform 1s linear}@media (max-width: 900px){.kpi{border:1px solid var(--line)}}.login{position:relative}.auth-lang-switch{position:absolute;top:20px;right:20px;display:flex;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:3px;box-shadow:var(--sh)}.auth-lang-switch-btn{padding:5px 9px;border-radius:calc(var(--r-sm) - 2px);font-size:12px;color:var(--dim)}.auth-lang-switch-btn:hover{background:var(--acc-soft);color:var(--txt)}.auth-lang-switch-btn.active{background:var(--acc-soft);color:var(--acc);font-weight:500}@media (max-width: 420px){.auth-lang-switch{position:static;margin:0 auto 14px;width:max-content}}.user-menu-lang{display:flex;gap:4px;padding:2px 2px 4px}.user-menu-lang-btn{flex:1;padding:6px 4px;border-radius:var(--r-sm);font-size:12px;text-align:center;color:var(--dim);border:1px solid transparent}.user-menu-lang-btn:hover{background:var(--acc-soft);color:var(--txt)}.user-menu-lang-btn.active{background:var(--acc-soft);color:var(--acc);font-weight:500;border-color:var(--acc-soft)}[data-theme=dark]{--bg: #10151d;--card: #182029;--side: #141b24;--side-line: #26303d;--txt: #e7ecf4;--dim: #9fabbc;--dim-2: #8391a4;--line: #26303d;--line-2: #334050;--acc: #6b9bff;--acc-soft: #1c2c4a;--accent: #6b9bff;--ok: #3ecf96;--ok-soft: #122b20;--warn: #e8ab45;--warn-soft: #2e2310;--warn-line: #4d3d1c;--bad: #f4736c;--bad-soft: #361716;--sh: 0 1px 2px rgba(0, 0, 0, .5), 0 10px 24px -8px rgba(0, 0, 0, .55)}.theme-transition::view-transition-old(root),.theme-transition::view-transition-new(root){animation-duration:.4s;animation-timing-function:ease}.theme-fading,.theme-fading *,.theme-fading *:before,.theme-fading *:after{transition:background-color .4s ease,border-color .4s ease,color .4s ease,fill .4s ease,stroke .4s ease,box-shadow .4s ease!important}.q-btn:active:not(:disabled),.q-chip:active,.nav-item:active,.account-row:active:not(:disabled),.q-select__option:active,.q-cal-day:active{transform:translateY(1px)}@media (prefers-reduced-motion: reduce){.q-btn:active:not(:disabled),.q-chip:active,.nav-item:active,.account-row:active:not(:disabled),.q-select__option:active,.q-cal-day:active{transform:none}}.masthead .q-display,h1.q-display{font-size:26px;line-height:40px}@media (min-width: 901px){.masthead{box-sizing:content-box;min-height:40px;padding:20px 26px 0;margin:0 0 20px;align-items:center}.masthead .sub,.masthead .right{padding-bottom:0}.masthead+*{margin-top:0}.page-pad>header:first-of-type{min-height:40px;align-items:center;margin-bottom:6px}.page-body{padding-top:0!important}.load-error{margin-top:0}}.q-fold{padding:0}.q-fold>summary{cursor:pointer;padding:12px 15px;font-size:13.5px;font-weight:500;list-style:none;display:flex;align-items:center;gap:8px}.q-fold>summary::-webkit-details-marker{display:none}.q-fold>summary:before{content:"▸";color:var(--dim);font-size:11px;transition:transform .12s}.q-fold[open]>summary:before{transform:rotate(90deg)}.q-fold-body{padding:0 15px 13px;display:grid;gap:8px}.q-hint{position:relative;display:inline-flex;align-items:center;margin-left:6px;vertical-align:middle}.q-hint__icon{width:16px;height:16px;border-radius:50%;border:1px solid var(--line-2);color:var(--dim);font:600 10px/14px var(--sans);text-align:center;cursor:help;-webkit-user-select:none;user-select:none;background:var(--card)}.q-hint__icon:hover,.q-hint__icon:focus-visible{color:var(--txt);border-color:var(--dim);outline:none}.q-hint__tip{position:fixed;left:0;top:0;width:max-content;max-width:min(260px,calc(100vw - 16px));padding:7px 10px;background:var(--txt);color:var(--bg);border-radius:var(--r);font:400 12px/1.4 var(--sans);text-align:left;white-space:normal;font-weight:400;opacity:0;visibility:hidden;pointer-events:none;z-index:1000;transition:opacity .12s ease}.q-hint__tip--on{opacity:1;visibility:visible}.debug-overlay{position:fixed;top:12px;right:12px;z-index:1000;width:min(380px,calc(100% - 24px));display:flex;flex-direction:column;gap:8px;font-family:var(--sans);font-size:13px;pointer-events:none}.debug-overlay>*{pointer-events:auto}.debug-overlay__bar{display:flex;justify-content:space-between;align-items:center;font:600 12px/1 var(--mono);letter-spacing:0;color:var(--warn)}.debug-overlay__bar button,.debug-toast__close{border:0;background:none;color:var(--dim);font:inherit;cursor:pointer;padding:2px 4px}.debug-overlay__bar button:hover,.debug-toast__close:hover{color:var(--txt)}.debug-toast{background:var(--warn-soft);border:1px solid var(--warn);border-left-width:4px;border-radius:var(--r);padding:10px 12px;color:var(--txt);box-shadow:var(--shadow-toast);animation:debug-toast-in .22s cubic-bezier(.2,.8,.2,1) both}@keyframes debug-toast-in{0%{opacity:0;transform:translate(24px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.debug-toast{animation:none}}.debug-toast--net{background:var(--bad-soft);border-color:var(--bad)}.debug-toast__head{display:flex;align-items:baseline;gap:8px}.debug-toast__code{font:600 13px/1.3 var(--mono);color:var(--warn);overflow-wrap:anywhere}.debug-toast--net .debug-toast__code{color:var(--bad)}.debug-toast__close{margin-left:auto;font-size:16px;line-height:1}.debug-toast__message{margin-top:6px;line-height:1.45;overflow-wrap:anywhere}.map-box{touch-action:none}@media (max-width: 900px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px}.kpi{padding:14px 16px}.kpi--alert{grid-column:1 / -1}.kpi .v.q-figure{font-size:24px}.kpi .v .of{font-size:14px}.map-box{touch-action:pan-y}.site-switch{margin:0 0 6px;padding:0}.site-switch-btn{border-color:var(--line);background:var(--card);min-height:42px;font-size:13.5px}.sidebar-toggle{display:none}.q-cal-anchor{flex:1 1 100%;min-width:0}.page-body{grid-template-columns:minmax(0,1fr)}.page-body>*,.page-pad>*{min-width:0}.filter-group{display:flex;flex-wrap:nowrap;width:100%;border:0;border-radius:0;overflow-x:auto;gap:6px;scrollbar-width:none}.filter-group::-webkit-scrollbar{display:none}.filter-group button{flex:none;min-height:38px;padding:0 14px;border:1px solid var(--line-2);border-radius:999px;white-space:nowrap}}@media (max-width: 380px){.kpi{padding:12px 13px}.kpi .d{font-size:11.5px}}@media (max-width: 900px){.content{padding:0 14px}.masthead{padding:18px 0 14px;gap:10px 14px}.masthead .right{margin-left:0;width:100%;flex-wrap:wrap;gap:8px}.page-pad{padding:14px 0 28px}.kpis{padding:0}.work{grid-template-columns:minmax(0,1fr);min-height:0;align-content:start;gap:14px}.work>.side{display:flex}.sec{padding:14px}.q-display{font-size:26px;line-height:1.15}.mobile-bar{position:sticky;top:0;z-index:60;min-height:56px;padding:8px 14px;background:var(--card)}.mobile-bar .q-btn{min-height:40px;padding:8px 14px}.nav-expanded .sidebar{position:fixed;top:56px;left:0;right:0;bottom:0;z-index:59;width:auto;max-width:none;flex-basis:auto;overflow-y:auto;overscroll-behavior:contain;align-items:stretch;padding:10px 14px calc(18px + env(safe-area-inset-bottom));background:var(--card);border-bottom:0}.nav-expanded .sidebar-nav{flex:none}.nav-expanded .sidebar>.user-menu{margin-top:12px}.nav-item{min-height:44px;display:flex;align-items:center;font-size:15px}.q-chip{max-width:100%;white-space:normal;text-align:left}.q-btn{min-height:40px}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.q-input,.q-select__btn{font-size:16px}.q-dialog,.q-dialog--wide,.q-dialog:has(.pending-invites){width:100%;max-width:100%;max-height:calc(100dvh - 24px);margin:auto 0 0;border-radius:var(--r) var(--r) 0 0;overflow-y:auto}.q-dialog__body{padding:18px 16px calc(16px + env(safe-area-inset-bottom))}.q-dialog__actions{flex-wrap:wrap-reverse}.q-dialog__actions .q-btn{flex:1 1 auto;min-height:44px}}@media (max-width: 640px){.list-table{overflow-x:visible;contain:none}.list-table .q-table,.storage-table .q-table,.storage-table--exports .q-table,.sec>.q-table,.q-dialog .pending-invites .q-table{min-width:0}.list-table .q-table,.list-table .q-table tbody,.list-table .q-table tr,.list-table .q-table td{display:block;width:auto}.list-table .q-table thead{display:none}.list-table .q-table tr{padding:12px 0;border-bottom:1px solid var(--line)}.list-table .q-table tbody tr:last-child{border-bottom:0}.list-table .q-table tbody tr:hover td{background:transparent}.list-table .q-table td{padding:4px 0;border:0;text-align:right;min-width:0;white-space:normal}.list-table .q-table td:after{content:"";display:table;clear:both}.list-table .q-table td:before{content:attr(data-label);font-family:var(--sans);font-weight:400;letter-spacing:0;float:left;max-width:45%;margin-right:12px;line-height:22px;text-align:left;font-size:12px;color:var(--dim-2)}.list-table .q-table td[data-label=""]:before,.list-table .q-table td:not([data-label]):before{content:none}.list-table .q-table td[data-label=""],.list-table .q-table td:not([data-label]){text-align:left}.list-table .q-table td:empty{display:none}.list-table .q-table td[data-head]{display:block;text-align:left;padding-bottom:6px}.list-table .q-table td[data-head]:before{content:none}.list-table .q-table .r{text-align:right}.list-table .q-table .who-cell{min-width:0}.admin .q-table tr.open,.admin .q-table tr.detail{background:var(--card);padding-left:12px;padding-right:12px}.admin .q-table tr.open{border-bottom:0;border-radius:var(--r) var(--r) 0 0}.admin .q-table tr.detail{border-radius:0 0 var(--r) var(--r);margin-bottom:8px}.list-table .q-table td:not([data-head]):not([data-label=""])>.chips{justify-content:flex-end}}@media (max-width: 900px){.admin{padding:0 0 28px}.profile{padding:0 0 28px;max-width:none}.profile .sec{padding:16px 14px}.admin .toolbar{gap:10px}.admin .toolbar input[type=search]{flex:1 1 100%;max-width:none;padding:9px 12px}.admin .toolbar>a{margin-left:0}.admin .toolbar .q-select{flex:1 1 100%;min-width:0}.seg{display:flex;max-width:100%;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{flex:none;padding:9px 12px;font-size:13px}.admin .detail-grid{grid-template-columns:minmax(0,1fr);gap:16px}.admin .row-actions{text-align:left;white-space:normal}.admin .row-actions .q-btn{margin:4px 6px 0 0}.admin .row-actions .q-btn+.q-btn{margin-left:0}.admin tr.detail>td{padding:12px 0 16px}.people-page .detail-grid select{min-width:0;width:100%}}@media (max-width: 900px){.control-split{gap:12px!important}}@media (hover: none) and (pointer: coarse){.control-keys,.stop-card__kbd{display:none}}@media (max-width: 640px){.storage-table .q-table tr{padding:12px 14px}.storage-table th:first-child,.storage-table td:first-child,.storage-table th:last-child,.storage-table td:last-child{padding-left:0;padding-right:0}.storage-table .q-table .r{padding-right:0}.storage-player video,.storage-player img{height:auto;aspect-ratio:16 / 10}}@media (max-width: 900px){.incident-toolbar .q-select,.admin .toolbar .q-select{flex:1 1 calc(50% - 10px);min-width:0}.incident-toolbar>.q-btn{flex:1 1 auto}}@media (max-width: 900px){.tool-sep{display:none}}@media (max-width: 420px){.login{align-content:center;row-gap:14px;padding:16px;min-height:100dvh}.auth-lang-switch{margin:0 auto}.login-card{max-width:none;padding:22px 18px 20px}}.tab-bar,.sheet-backdrop,.sheet-handle{display:none}@media (max-width: 900px){:root{--tabbar-h: calc(60px + env(safe-area-inset-bottom)) }.has-tabs .content{padding-bottom:calc(var(--tabbar-h) + 16px)}.tab-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:63;height:var(--tabbar-h);padding:4px 6px env(safe-area-inset-bottom);gap:2px;background:var(--card);border-top:1px solid var(--line)}.tab-item{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;margin:0;padding:0 2px;border:0;border-radius:10px;background:none;color:var(--dim);font:inherit;font-size:11px;line-height:1.2;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.tab-item .nav-icon{width:24px;height:24px;color:inherit}.tab-item.active{color:var(--txt);font-weight:500;background:var(--acc-soft)}.tab-item.active .nav-icon{color:var(--acc)}.tab-icon{position:relative;display:flex}.tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-badge{position:absolute;top:-5px;left:15px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:var(--on-acc);font-size:11px;font-weight:500;line-height:18px;text-align:center}.has-tabs .sidebar{display:flex;position:fixed;top:auto;left:0;right:0;bottom:var(--tabbar-h);z-index:62;width:auto;max-width:none;max-height:calc(100dvh - var(--tabbar-h) - 56px);overflow-y:auto;overscroll-behavior:contain;align-items:stretch;padding:14px 14px 18px;background:var(--card);border-bottom:0;border-radius:16px 16px 0 0;box-shadow:var(--shadow-sheet);transition:transform .26s cubic-bezier(.4,0,1,1),visibility 0s .26s}.js .has-tabs .sidebar{transform:translateY(calc(100% + var(--tabbar-h)));visibility:hidden}.has-tabs.nav-expanded .sidebar{transform:none;visibility:visible;transition:transform .34s cubic-bezier(.22,1,.36,1),visibility 0s}.sheet-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:61;background:var(--scrim-sheet);opacity:0;pointer-events:none;transition:opacity .26s ease}.nav-expanded .sheet-backdrop{opacity:1;pointer-events:auto}.has-tabs .sheet-handle{display:block;flex:none;width:36px;height:5px;margin:-6px auto 10px;border-radius:3px;background:var(--line-2)}.has-tabs .sidebar .nav-item--tab{display:none}.has-tabs .sidebar .nav-section:not(:has(.nav-item:not(.nav-item--tab))){display:none}}
