:root{--tg-ok:#15803d;--tg-ok-soft:#dcfce7;--tg-ok-on:#fff;--tg-warn:#b45309;--tg-warn-soft:#fef3c7;--tg-warn-on:#fff;--tg-alarm:#b91c1c;--tg-alarm-soft:#fee2e2;--tg-alarm-on:#fff;--tg-fault:#7e22ce;--tg-fault-soft:#f3e8ff;--tg-fault-on:#fff;--tg-offline:#475569;--tg-offline-soft:#e2e8f0;--tg-offline-on:#fff;--tg-reading:#a16207;--tg-reading-soft:#fef9c3;--tg-identify:#0e7490;--tg-identify-soft:#cffafe;--tg-identify-on:#fff;--tg-accent:#0f766e;--tg-accent-strong:#115e59;--tg-accent-soft:#ccfbf1;--tg-accent-on:#fff;--tg-brand:#0f766e;--tg-brand-ink:#134e4a;--tg-brand-soft:#ccfbf1;--tg-info:#0e7490;--tg-info-soft:#cffafe;--tg-alarm-line:#fecaca;--tg-tile-bg:#0f766e1a;--tg-tile-fg:#0f766e;--tg-bg:#f1f5f9;--tg-surface:#fff;--tg-surface-2:#f1f5f9;--tg-border:#e2e8f0;--tg-border-strong:#cbd5e1;--tg-text:#0f172a;--tg-text-muted:#475569;--tg-text-faint:#64748b;--tg-overlay:#0f172a73;--tg-side-bg:#134e4a;--tg-side-border:transparent;--tg-side-text:#ffffffdb;--tg-side-muted:#ffffffb3;--tg-side-hover:#ffffff1a;--tg-side-active:#fff;--tg-side-active-fg:#134e4a;--tg-side-active-icon:#0f766e;--tg-side-marker:#5eead4;--tg-side-line:#ffffff1f;--tg-font:"Inter", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;--tg-font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--tg-fs-12:12px;--tg-fs-13:14px;--tg-fs-14:14px;--tg-fs-16:16px;--tg-fs-20:20px;--tg-fs-24:24px;--tg-fs-30:30px;--tg-fs-32:32px;--tg-fs-48:48px;--tg-fs-64:64px;--tg-lh:1.45;--tg-s-1:4px;--tg-s-2:8px;--tg-s-3:12px;--tg-s-4:16px;--tg-s-5:20px;--tg-s-6:24px;--tg-s-8:32px;--tg-s-12:48px;--tg-r-control:8px;--tg-r-card:12px;--tg-r-section:16px;--tg-r-pill:999px;--tg-shadow-xs:0 1px 2px #0f172a0d;--tg-shadow-1:0 1px 3px #0f172a1a, 0 1px 2px -1px #0f172a1a;--tg-shadow-md:0 4px 6px -1px #0f172a1a, 0 2px 4px -2px #0f172a1a;--tg-shadow-xl:0 20px 25px -5px #0f172a1a, 0 8px 10px -6px #0f172a1a;--tg-shadow-2:0 25px 50px -12px #0f172a40;--tg-focus:0 0 0 2px var(--tg-surface), 0 0 0 4px var(--tg-accent);--tg-motion:.15s ease-out;--tg-sidebar-w:256px;--tg-sidebar-rail:76px;--tg-topbar-h:64px;--tg-bnav-h:56px;--tg-content-max:1400px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--tg-ok:#4ade80;--tg-ok-soft:#14301f;--tg-ok-on:#052e16;--tg-warn:#fbbf24;--tg-warn-soft:#3a2a08;--tg-warn-on:#1c1403;--tg-alarm:#f87171;--tg-alarm-soft:#3f1515;--tg-alarm-on:#2a0a0a;--tg-fault:#c084fc;--tg-fault-soft:#2e1a44;--tg-fault-on:#1a0b2a;--tg-offline:#94a3b8;--tg-offline-soft:#243043;--tg-offline-on:#0f172a;--tg-reading:#facc15;--tg-reading-soft:#3a3208;--tg-identify:#22d3ee;--tg-identify-soft:#164e63;--tg-identify-on:#042f2e;--tg-accent:#2dd4bf;--tg-accent-strong:#5eead4;--tg-accent-soft:#123b36;--tg-accent-on:#042f2e;--tg-brand:#2dd4bf;--tg-brand-ink:#99f6e4;--tg-brand-soft:#123b36;--tg-bg:#0b1220;--tg-surface:#111a2b;--tg-surface-2:#182238;--tg-border:#27354d;--tg-border-strong:#3a4b68;--tg-text:#e2e8f0;--tg-text-muted:#94a3b8;--tg-text-faint:#8494ab;--tg-overlay:#02061799;--tg-info:#22d3ee;--tg-info-soft:#164e63;--tg-alarm-line:#5b1d1d;--tg-tile-bg:#123b36;--tg-tile-fg:#2dd4bf;--tg-side-bg:#0d1626;--tg-side-border:#27354d;--tg-side-text:#e2e8f0;--tg-side-muted:#94a3b8;--tg-side-hover:#ffffff0d;--tg-side-active:#123b36;--tg-side-active-fg:#fff;--tg-side-active-icon:#2dd4bf;--tg-side-marker:#2dd4bf;--tg-side-line:#27354d;--tg-shadow-xs:none;--tg-shadow-1:0 1px 2px #0006;--tg-shadow-md:0 4px 8px #00000073;--tg-shadow-xl:0 12px 28px #00000080;--tg-shadow-2:0 24px 48px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--tg-ok:#4ade80;--tg-ok-soft:#14301f;--tg-ok-on:#052e16;--tg-warn:#fbbf24;--tg-warn-soft:#3a2a08;--tg-warn-on:#1c1403;--tg-alarm:#f87171;--tg-alarm-soft:#3f1515;--tg-alarm-on:#2a0a0a;--tg-fault:#c084fc;--tg-fault-soft:#2e1a44;--tg-fault-on:#1a0b2a;--tg-offline:#94a3b8;--tg-offline-soft:#243043;--tg-offline-on:#0f172a;--tg-reading:#facc15;--tg-reading-soft:#3a3208;--tg-identify:#22d3ee;--tg-identify-soft:#164e63;--tg-identify-on:#042f2e;--tg-accent:#2dd4bf;--tg-accent-strong:#5eead4;--tg-accent-soft:#123b36;--tg-accent-on:#042f2e;--tg-brand:#2dd4bf;--tg-brand-ink:#99f6e4;--tg-brand-soft:#123b36;--tg-bg:#0b1220;--tg-surface:#111a2b;--tg-surface-2:#182238;--tg-border:#27354d;--tg-border-strong:#3a4b68;--tg-text:#e2e8f0;--tg-text-muted:#94a3b8;--tg-text-faint:#8494ab;--tg-overlay:#02061799;--tg-info:#22d3ee;--tg-info-soft:#164e63;--tg-alarm-line:#5b1d1d;--tg-tile-bg:#123b36;--tg-tile-fg:#2dd4bf;--tg-side-bg:#0d1626;--tg-side-border:#27354d;--tg-side-text:#e2e8f0;--tg-side-muted:#94a3b8;--tg-side-hover:#ffffff0d;--tg-side-active:#123b36;--tg-side-active-fg:#fff;--tg-side-active-icon:#2dd4bf;--tg-side-marker:#2dd4bf;--tg-side-line:#27354d;--tg-shadow-xs:none;--tg-shadow-1:0 1px 2px #0006;--tg-shadow-md:0 4px 8px #00000073;--tg-shadow-xl:0 12px 28px #00000080;--tg-shadow-2:0 24px 48px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-kiosk]{--tg-bg:#05080f;--tg-surface:#0c1526;--tg-surface-2:#121d33;--tg-border:#2a3a52;--tg-text:#f1f5f9;--tg-text-muted:#b6c2d3;--tg-fs-14:18px;--tg-fs-16:20px;--tg-fs-20:24px;--tg-fs-24:32px;--tg-fs-32:40px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--tg-bg);color:var(--tg-text);font-family:var(--tg-font);font-size:var(--tg-fs-14);line-height:var(--tg-lh);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{text-wrap:balance;margin:0;font-weight:600;line-height:1.25}h1{font-size:var(--tg-fs-24)}h2{font-size:var(--tg-fs-20)}h3{font-size:var(--tg-fs-16)}p{margin:0}a{color:var(--tg-accent);text-decoration:none}a:hover{text-decoration:underline}code,kbd,.tg-mono{font-family:var(--tg-font-mono);font-variant-numeric:tabular-nums;font-size:.92em}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{box-shadow:var(--tg-focus);outline:2px solid #0000}[hidden]{display:none!important}.tg-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tg-num{font-variant-numeric:tabular-nums}.tg-muted{color:var(--tg-text-muted)}.tg-faint{color:var(--tg-text-faint)}.tg-row{align-items:center;gap:var(--tg-s-2);flex-wrap:wrap;min-width:0;display:flex}.tg-stack{gap:var(--tg-s-3);min-width:0;display:grid}.tg-grid{gap:var(--tg-s-3);grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--tg-grid-min,220px)), 1fr));display:grid}.tg-spacer{flex:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tg-btn{justify-content:center;align-items:center;gap:var(--tg-s-2);min-height:40px;padding:0 var(--tg-s-4);border:1px solid var(--tg-border-strong);border-radius:var(--tg-r-control);background:var(--tg-surface);color:var(--tg-brand-ink);box-shadow:var(--tg-shadow-xs);white-space:nowrap;transition:background var(--tg-motion), border-color var(--tg-motion);font-weight:600;text-decoration:none;display:inline-flex}.tg-btn:hover:not(:disabled){background:var(--tg-surface-2);text-decoration:none}.tg-btn[aria-disabled=true]{opacity:.6;pointer-events:none}.tg-btn:disabled{opacity:.55;cursor:not-allowed}.tg-btn--primary{background:var(--tg-accent);border-color:var(--tg-accent);color:var(--tg-accent-on)}.tg-btn--primary:hover:not(:disabled){background:var(--tg-accent-strong);border-color:var(--tg-accent-strong)}.tg-btn--danger{border-color:var(--tg-alarm);color:var(--tg-alarm)}.tg-btn--danger:hover:not(:disabled){background:var(--tg-alarm-soft)}.tg-btn--danger.tg-btn--solid,.tg-btn--danger.tg-btn--solid:hover:not(:disabled){background:var(--tg-alarm);color:var(--tg-alarm-on)}.tg-btn--ghost{box-shadow:none;background:0 0;border-color:#0000}.tg-btn--sm{min-height:36px;padding:0 var(--tg-s-3);font-size:13px}.tg-btn--lg{min-height:44px;padding:0 var(--tg-s-4);font-size:var(--tg-fs-16)}.tg-btn--icon{width:40px;padding:0}.tg-btn--sm.tg-btn--icon{width:36px}.tg-btn--block{width:100%}.tg-spin{animation:1s linear infinite tg-spin}@keyframes tg-spin{to{transform:rotate(360deg)}}.tg-icon-btn{border-radius:var(--tg-r-control);color:inherit;opacity:.75;background:0 0;border:0;justify-content:center;align-items:center;padding:4px;display:inline-flex}.tg-icon-btn:hover{opacity:1;background:var(--tg-surface-2)}.tg-badge,.tg-status{--tg-tone:var(--tg-text-faint);--tg-tone-soft:var(--tg-surface-2);max-width:100%;font-size:var(--tg-fs-12);white-space:nowrap;color:var(--tg-text);vertical-align:middle;align-items:center;gap:6px;font-weight:500;line-height:20px;display:inline-flex}.tg-badge svg,.tg-status svg{flex:none}.tg-badge--ok,.tg-status--ok{--tg-tone:var(--tg-ok);--tg-tone-soft:var(--tg-ok-soft)}.tg-badge--warn,.tg-status--warn{--tg-tone:var(--tg-warn);--tg-tone-soft:var(--tg-warn-soft)}.tg-badge--alarm,.tg-status--alarm{--tg-tone:var(--tg-alarm);--tg-tone-soft:var(--tg-alarm-soft)}.tg-badge--fault,.tg-status--fault{--tg-tone:var(--tg-fault);--tg-tone-soft:var(--tg-fault-soft)}.tg-badge--offline,.tg-status--offline{--tg-tone:var(--tg-offline);--tg-tone-soft:var(--tg-offline-soft)}.tg-badge--accent,.tg-status--accent{--tg-tone:var(--tg-accent);--tg-tone-soft:var(--tg-accent-soft)}.tg-badge--reading{--tg-tone:var(--tg-reading);--tg-tone-soft:var(--tg-reading-soft)}.tg-badge--identify.tg-badge--pill{--tg-tone:var(--tg-identify);--tg-tone-soft:var(--tg-identify-soft)}.tg-badge__dot,.tg-status__dot{background:var(--tg-tone);border-radius:50%;flex:none;width:8px;height:8px}.tg-badge--quiet>svg{color:var(--tg-tone)}.tg-badge--quiet.tg-badge--neutral{color:var(--tg-text-muted)}.tg-badge--quiet.tg-badge--identify>svg,.tg-badge--quiet.tg-badge--accent>svg{color:inherit}.tg-badge--quiet.tg-verdict{color:var(--tg-tone);font-weight:600}.tg-badge--quiet.tg-verdict.tg-badge--neutral{color:var(--tg-text-muted)}.tg-badge--pill{border-radius:var(--tg-r-pill);background:var(--tg-tone-soft);color:var(--tg-tone);padding:0 8px;font-weight:600}.tg-badge--pill.tg-badge--neutral{color:var(--tg-text-muted)}.tg-badge--lg{font-size:var(--tg-fs-16);gap:8px;line-height:24px}.tg-badge--lg.tg-badge--pill{padding:4px 14px}.tg-badge--board{font-size:var(--tg-fs-32);gap:10px;padding:6px 18px;line-height:1.2}.tg-badge__latch{border-radius:var(--tg-r-pill);font-size:var(--tg-fs-12);border:1px solid;align-items:center;padding:0 6px;font-weight:600;line-height:18px;display:inline-flex}.tg-status__meta{color:var(--tg-text-muted);font-weight:400}.tg-chip{border:1px solid var(--tg-border-strong);border-radius:var(--tg-r-pill);font-size:var(--tg-fs-12);color:var(--tg-text-muted);background:var(--tg-surface);align-items:center;gap:4px;padding:0 8px;line-height:22px;display:inline-flex}button.tg-chip:hover{background:var(--tg-surface-2)}.tg-chip--active,button.tg-chip--active:hover{border-color:var(--tg-accent);color:var(--tg-accent);background:var(--tg-accent-soft)}.tg-dot{background:currentColor;border-radius:50%;width:8px;height:8px;display:inline-block}.tg-card{background:var(--tg-surface);border:1px solid var(--tg-border);border-radius:var(--tg-r-card);box-shadow:var(--tg-shadow-1);padding:var(--tg-s-4);min-width:0}.tg-card__head{justify-content:space-between;align-items:center;gap:var(--tg-s-2);margin-bottom:var(--tg-s-3);display:flex}.tg-card__title{font-size:var(--tg-fs-14);color:var(--tg-brand-ink);font-weight:600}.tg-card .tg-card{box-shadow:none;background:0 0;border:0;padding:0}.tg-card .tg-table-wrap{box-shadow:none;border:0}.tg-card .tg-empty,.tg-card .tg-error{padding:var(--tg-s-6) var(--tg-s-4);border:0}.tg-kv{gap:var(--tg-s-2) var(--tg-s-6);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.tg-kv dt{color:var(--tg-text-muted)}.tg-kv dd{overflow-wrap:anywhere;min-width:0;margin:0}@media (max-width:560px){.tg-kv{grid-template-columns:minmax(0,1fr);gap:2px}.tg-kv dt{margin-top:var(--tg-s-2)}.tg-kv>:first-child>dt,.tg-kv>dt:first-child{margin-top:0}}.tg-banner{--tg-tone:var(--tg-text-muted);align-items:center;gap:var(--tg-s-3);padding:10px var(--tg-s-4);border:1px solid var(--tg-border);border-radius:var(--tg-r-card);background:var(--tg-surface);font-size:var(--tg-fs-14);min-width:0;display:flex}.tg-banner>svg:first-child{color:var(--tg-tone);flex:none}.tg-banner__text{flex:1;min-width:0}@media (max-width:639px){.tg-banner{flex-wrap:wrap}.tg-banner__text{flex:9rem}.tg-banner>:not(svg):not(.tg-banner__text):not(.tg-icon-btn){flex:100%;order:3}.tg-banner>:not(svg):not(.tg-banner__text):not(.tg-icon-btn) .tg-btn{flex:1}}.tg-banner__title{font-weight:600;display:block}.tg-banner__meta{font-size:var(--tg-fs-12);opacity:.9;display:block}.tg-banner--info{--tg-tone:var(--tg-info);background:var(--tg-info-soft);border-color:color-mix(in srgb, var(--tg-info) 30%, transparent)}.tg-banner--error{--tg-tone:var(--tg-alarm);background:var(--tg-alarm-soft);border-color:var(--tg-alarm-line)}.tg-banner--error .tg-banner__title{color:var(--tg-alarm)}.tg-banner--warn{--tg-tone:var(--tg-warn);background:var(--tg-warn-soft);border-color:color-mix(in srgb, var(--tg-warn) 30%, transparent)}.tg-banner--alarm{--tg-tone:var(--tg-alarm);background:var(--tg-alarm-soft);border-color:color-mix(in srgb, var(--tg-alarm) 30%, transparent)}.tg-banner--offline{--tg-tone:var(--tg-offline);background:var(--tg-offline-soft);border-color:color-mix(in srgb, var(--tg-offline) 30%, transparent)}.tg-banner--ok{--tg-tone:var(--tg-ok);background:var(--tg-ok-soft);border-color:color-mix(in srgb, var(--tg-ok) 30%, transparent)}.tg-banner-stack{gap:var(--tg-s-2);min-width:0;display:grid}.tg-banner-stack__row{align-items:center;gap:var(--tg-s-2);min-width:0;display:flex}.tg-banner-stack__row>:first-child{flex:1;min-width:0}.tg-banner-stack__more{border:1px solid var(--tg-border);border-radius:var(--tg-r-pill);background:var(--tg-surface);min-height:28px;color:var(--tg-text-muted);font-size:var(--tg-fs-12);white-space:nowrap;flex:none;padding:0 10px;font-weight:600}.tg-banner-stack__more:hover{color:var(--tg-text);background:var(--tg-surface-2)}.tg-dialog{border:1px solid var(--tg-border);border-radius:var(--tg-r-card);background:var(--tg-surface);color:var(--tg-text);box-shadow:var(--tg-shadow-2);width:min(520px,100vw - 32px);max-height:calc(100vh - 32px);padding:0}.tg-dialog::backdrop{background:var(--tg-overlay)}.tg-dialog__body{gap:var(--tg-s-3);padding:var(--tg-s-6);display:grid}.tg-dialog__consequences{color:var(--tg-text-muted);font-size:var(--tg-fs-14);margin:0;padding-left:20px}.tg-dialog__actions{justify-content:flex-end;gap:var(--tg-s-2);flex-wrap:wrap;display:flex}.tg-dialog--danger{border-color:var(--tg-alarm)}.tg-dialog--lg{width:min(760px,100vw - 32px)}.tg-dialog__head{align-items:flex-start;gap:var(--tg-s-2);display:flex}.tg-dialog__head h3{color:var(--tg-brand-ink);margin:0}.tg-dialog__head p{margin:2px 0 0}.tg-drawer{width:min(var(--tg-drawer-w,440px), 100vw);border:0;border-left:1px solid var(--tg-border);background:var(--tg-surface);max-width:100vw;height:100%;max-height:100vh;color:var(--tg-text);box-shadow:var(--tg-shadow-2);margin:0;padding:0;position:fixed;inset:0 0 0 auto}.tg-drawer[open]{flex-direction:column;display:flex}.tg-drawer::backdrop{background:var(--tg-overlay)}.tg-drawer__head{align-items:center;gap:var(--tg-s-2);padding:var(--tg-s-3) var(--tg-s-4);border-bottom:1px solid var(--tg-border);display:flex}.tg-drawer__body{gap:var(--tg-s-3);padding:var(--tg-s-4);flex:1;align-content:start;min-height:0;display:grid;overflow:auto}.tg-drawer__foot{justify-content:space-between;align-items:center;gap:var(--tg-s-2);padding:var(--tg-s-3) var(--tg-s-4) max(var(--tg-s-3), env(safe-area-inset-bottom,0px));border-top:1px solid var(--tg-border);background:var(--tg-surface);display:flex}.tg-audit-hint{font-size:var(--tg-fs-12);color:var(--tg-text-muted);align-items:center;gap:6px;display:inline-flex}.tg-popover{display:inline-flex;position:relative}.tg-popover__panel{z-index:50;background:var(--tg-surface);min-width:200px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);color:var(--tg-text);border:1px solid var(--tg-border);border-radius:var(--tg-r-card);box-shadow:var(--tg-shadow-2);position:fixed;overflow:auto}.tg-menu{padding:var(--tg-s-1);gap:2px;display:grid}.tg-menu__item{align-items:center;gap:var(--tg-s-2);width:100%;min-height:36px;padding:0 var(--tg-s-3);border-radius:var(--tg-r-control);color:var(--tg-text);font:inherit;text-align:left;white-space:nowrap;background:0 0;border:0;text-decoration:none;display:flex}.tg-menu__item:hover,.tg-menu__item:focus-visible{background:var(--tg-surface-2);text-decoration:none}.tg-menu__item:disabled{opacity:.55;cursor:not-allowed}.tg-menu__item--danger{color:var(--tg-alarm)}.tg-menu__sep{height:1px;margin:var(--tg-s-1) 0;background:var(--tg-border)}.tg-menu__label{padding:var(--tg-s-2) var(--tg-s-3) 2px;font-size:var(--tg-fs-12);color:var(--tg-text-muted);font-weight:600}.tg-row-menu{color:var(--tg-text-muted)}.tg-segmented{border-radius:var(--tg-r-control);background:var(--tg-surface-2);gap:2px;padding:2px;display:inline-flex}.tg-segmented button{min-height:26px;padding:0 var(--tg-s-2);border-radius:var(--tg-r-control);color:var(--tg-text-muted);font-size:var(--tg-fs-12);background:0 0;border:0;font-weight:500}.tg-segmented button[aria-checked=true]{background:var(--tg-surface);color:var(--tg-text);box-shadow:var(--tg-shadow-1)}.tg-segmented--filled{border:1px solid var(--tg-border);background:var(--tg-surface);border-radius:10px;gap:2px;padding:3px}.tg-segmented--filled button{min-height:44px;padding:0 var(--tg-s-3);font-size:var(--tg-fs-14);border-radius:8px;font-weight:600}@media (pointer:fine){.tg-segmented--filled button{min-height:32px}}.tg-segmented--filled button[aria-checked=true]{background:var(--tg-accent);color:var(--tg-accent-on);box-shadow:none}.tg-user-btn{align-items:center;gap:var(--tg-s-2);border-radius:var(--tg-r-pill);color:inherit;background:0 0;border:0;padding:2px;display:inline-flex}.tg-user-btn:hover{background:var(--tg-surface-2)}.tg-user-btn__who{min-width:0;max-width:14rem;padding-right:var(--tg-s-2);text-align:left;line-height:1.2;display:grid}.tg-user-btn__name,.tg-user-btn__role{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tg-user-btn__name{font-size:var(--tg-fs-14);color:var(--tg-brand-ink);font-weight:600}.tg-user-btn__role{font-size:var(--tg-fs-12);color:var(--tg-text-muted)}@media (max-width:1279px){.tg-user-btn__who{display:none}}.tg-side__close{color:var(--tg-side-text);display:none}.tg-avatar{background:var(--tg-accent);width:32px;height:32px;color:var(--tg-accent-on);font-size:var(--tg-fs-12);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.tg-user-menu{width:min(280px,100vw - 32px);padding:var(--tg-s-2);gap:2px;display:grid}.tg-user-menu__head{align-items:center;gap:var(--tg-s-3);padding:var(--tg-s-2) var(--tg-s-2) var(--tg-s-3);margin-bottom:var(--tg-s-1);border-bottom:1px solid var(--tg-border);min-width:0;display:flex}.tg-user-menu__name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.tg-user-menu__meta{font-size:var(--tg-fs-12);color:var(--tg-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tg-user-menu__row{justify-content:space-between;align-items:center;gap:var(--tg-s-2);min-height:36px;padding:0 var(--tg-s-2) 0 var(--tg-s-3);display:flex}.tg-user-menu .tg-menu{padding:0}.tg-user-menu .tg-menu__item{padding:0 var(--tg-s-3)}@media (max-width:1023px){.tg-hide-narrow{display:none}}.tg-demo-dock{right:max(16px, env(safe-area-inset-right,0px));bottom:max(16px, env(safe-area-inset-bottom,0px));z-index:45;position:fixed}.tg-shell--dock .tg-main{padding-bottom:72px}@media (min-width:1024px){.tg-shell--dock:not(.tg-shell--collapsed) .tg-demo-dock{bottom:56px;left:16px;right:auto}}.tg-demo-dock__btn{border-radius:var(--tg-r-pill);box-shadow:var(--tg-shadow-2)}.tg-demo-dock__panel{gap:var(--tg-s-2);width:min(440px,100vw - 32px);padding:var(--tg-s-3);display:grid}.tg-demo-dock__title{font-size:var(--tg-fs-12);color:var(--tg-text-muted);font-weight:600}.tg-id{align-items:center;gap:var(--tg-s-2);min-width:0;max-width:100%;display:inline-flex}.tg-id__text{overflow-wrap:anywhere;min-width:0}.tg-id__copy{border-radius:var(--tg-r-control);width:24px;height:24px;color:var(--tg-text-muted);opacity:.7;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.tg-id__copy:hover,.tg-id__copy:focus-visible,.tg-id__copy[data-copied]{opacity:1;background:var(--tg-surface-2);color:var(--tg-text)}.tg-id__copy[data-copied]{color:var(--tg-ok)}@media (pointer:coarse){.tg-id__copy{width:44px;height:44px;margin:-10px -10px -10px -4px}}.tg-tabs-wrap{min-width:0;position:relative}.tg-tabs{gap:var(--tg-s-1);border-bottom:1px solid var(--tg-border);scrollbar-width:none;display:flex;overflow-x:auto}.tg-tabs::-webkit-scrollbar{display:none}.tg-tabs-wrap:before,.tg-tabs-wrap:after{content:"";pointer-events:none;opacity:0;width:28px;transition:opacity var(--tg-motion);z-index:1;position:absolute;top:0;bottom:1px}.tg-tabs-wrap:before{background:linear-gradient(to right, var(--tg-bg), transparent);left:0}.tg-tabs-wrap:after{background:linear-gradient(to left, var(--tg-bg), transparent);right:0}.tg-tabs-wrap--more-start:before,.tg-tabs-wrap--more-end:after{opacity:1}.tg-tab{padding:var(--tg-s-2) var(--tg-s-3);color:var(--tg-text-muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;font-weight:500;display:inline-flex}.tg-tab:hover{color:var(--tg-text)}.tg-tab[aria-selected=true]{color:var(--tg-text);border-bottom-color:var(--tg-accent)}.tg-tab__count{font-size:var(--tg-fs-12);font-variant-numeric:tabular-nums;color:var(--tg-text-muted)}.tg-field{gap:var(--tg-s-1);min-width:0;display:grid}.tg-field__label{font-size:var(--tg-fs-14);font-weight:500}.tg-field__help{font-size:var(--tg-fs-12);color:var(--tg-text-muted)}.tg-field__error{font-size:var(--tg-fs-12);color:var(--tg-alarm)}.tg-input,.tg-select,.tg-textarea{border:1px solid var(--tg-border-strong);border-radius:var(--tg-r-control);background:var(--tg-surface);width:100%;min-height:36px;color:var(--tg-text);padding:6px 10px}.tg-input:focus-visible,.tg-select:focus-visible,.tg-textarea:focus-visible{border-color:var(--tg-accent)}.tg-input::placeholder,.tg-textarea::placeholder{color:var(--tg-text-faint)}.tg-input[aria-invalid=true],.tg-select[aria-invalid=true],.tg-textarea[aria-invalid=true]{border-color:var(--tg-alarm)}.tg-input-wrap{align-items:center;display:flex;position:relative}.tg-input-wrap .tg-input{padding-right:44px}.tg-input-wrap__suffix{color:var(--tg-text-muted);font-size:var(--tg-fs-12);position:absolute;right:10px}.tg-switch{align-items:center;gap:var(--tg-s-2);cursor:pointer;display:inline-flex}.tg-switch__track{border-radius:var(--tg-r-pill);background:var(--tg-border-strong);width:36px;height:20px;transition:background var(--tg-motion);flex:none;position:relative}.tg-switch__track:after{content:"";background:var(--tg-surface);width:16px;height:16px;transition:transform var(--tg-motion);border-radius:50%;position:absolute;top:2px;left:2px}.tg-switch input:checked+.tg-switch__track{background:var(--tg-accent)}.tg-switch input:checked+.tg-switch__track:after{transform:translate(16px)}.tg-switch input{opacity:0;width:1px;height:1px;position:absolute}.tg-switch input:focus-visible+.tg-switch__track{box-shadow:var(--tg-focus)}.tg-empty,.tg-error{text-align:center;justify-items:center;gap:var(--tg-s-2);padding:64px var(--tg-s-6);color:var(--tg-text-muted);border:1px dashed var(--tg-border-strong);border-radius:var(--tg-r-card);background:color-mix(in srgb, var(--tg-surface-2) 50%, transparent);display:grid}.tg-empty strong,.tg-error strong{color:var(--tg-brand-ink);font-size:var(--tg-fs-16)}.tg-error{border-style:solid;border-color:var(--tg-alarm)}.tg-skeleton{background:linear-gradient(90deg, var(--tg-surface-2) 25%, var(--tg-border) 50%, var(--tg-surface-2) 75%);border-radius:var(--tg-r-control);background-size:200% 100%;min-height:1em;animation:1.4s linear infinite tg-shimmer}@keyframes tg-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tg-time{white-space:nowrap}.tg-table .tg-time__abs,.tg-card-row .tg-time__abs{display:none}.tg-shell{background:var(--tg-bg);min-height:100%;display:flex}.tg-shell__body{flex-direction:column;flex:1;min-width:0;display:flex}.tg-skip{z-index:100;padding:var(--tg-s-2) var(--tg-s-3);border-radius:var(--tg-r-control);background:var(--tg-surface);box-shadow:var(--tg-shadow-md);position:absolute;top:8px;left:-999px}.tg-skip:focus{left:8px}.tg-side{width:var(--tg-sidebar-w);background:var(--tg-side-bg);color:var(--tg-side-text);border-right:1px solid var(--tg-side-border);box-shadow:var(--tg-shadow-xl);height:100vh;z-index:40;height:100dvh;transition:width var(--tg-motion);flex-direction:column;flex:none;display:flex;position:sticky;top:0}.tg-side :focus-visible{box-shadow:0 0 0 2px var(--tg-side-marker)}.tg-side a:not(.tg-nav__item){color:inherit}.tg-side__head{align-items:center;gap:var(--tg-s-2);padding:var(--tg-s-4);border-bottom:1px solid var(--tg-side-line);display:flex}.tg-logo{align-items:center;gap:var(--tg-s-2);min-width:0;height:44px;padding:0 var(--tg-s-3);border-radius:var(--tg-r-card);color:#134e4a;box-shadow:var(--tg-shadow-xs);background:#fff;flex:1;display:flex}.tg-logo__name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:700;line-height:1.15;overflow:hidden}.tg-logo__name small{letter-spacing:.04em;color:#475569;text-overflow:ellipsis;font-size:10px;font-weight:500;display:block;overflow:hidden}.tg-logo .tg-brand-mark,.tg-logo img{width:26px;height:26px;font-size:var(--tg-fs-12);color:#fff;object-fit:contain;background:#0f766e;border-radius:7px;flex:none}.tg-nav{padding:var(--tg-s-3);flex-direction:column;flex:1;gap:2px;display:flex;overflow:auto}.tg-nav__heading{padding:14px var(--tg-s-3) var(--tg-s-1);letter-spacing:.08em;text-transform:uppercase;color:var(--tg-side-muted);font-size:11px;font-weight:600}.tg-nav__heading:first-child{padding-top:var(--tg-s-1)}.tg-nav__item{align-items:center;gap:var(--tg-s-3);min-height:44px;padding:0 var(--tg-s-3);border-radius:var(--tg-r-card);color:var(--tg-side-text);font-weight:500;text-decoration:none;display:flex;position:relative}.tg-nav__item svg{flex:none;width:18px;height:18px}.tg-nav__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tg-nav__item:hover{background:var(--tg-side-hover);color:var(--tg-side-text);text-decoration:none}.tg-nav__item[aria-current=page],.tg-nav__item--active,.tg-nav__item--active:hover{background:var(--tg-side-active);color:var(--tg-side-active-fg);box-shadow:var(--tg-shadow-1);font-weight:600}.tg-nav__item--active svg{color:var(--tg-side-active-icon)}.tg-nav__item[aria-current=page]:before,.tg-nav__item--active:before{content:"";left:0;top:var(--tg-s-2);bottom:var(--tg-s-2);background:var(--tg-side-marker);border-radius:0 4px 4px 0;width:4px;position:absolute}.tg-nav__badge,.tg-tabbar__badge{border-radius:var(--tg-r-pill);background:var(--tg-alarm);min-width:20px;height:18px;color:var(--tg-alarm-on);font-variant-numeric:tabular-nums;place-items:center;padding:0 6px;font-size:11px;font-weight:600;line-height:1;display:inline-grid}.tg-nav__badge{margin-left:auto}.tg-side__foot{justify-content:center;align-items:center;gap:var(--tg-s-2);padding:14px var(--tg-s-4);border-top:1px solid var(--tg-side-line);font-size:var(--tg-fs-12);color:var(--tg-side-muted);flex-wrap:wrap;display:flex}.tg-side__foot strong{color:var(--tg-side-text);letter-spacing:.02em;font-weight:700}@media (min-width:1024px){.tg-shell--collapsed .tg-side{width:var(--tg-sidebar-rail)}.tg-shell--collapsed .tg-side__head{padding:var(--tg-s-4) var(--tg-s-3);justify-content:center}.tg-shell--collapsed .tg-logo{flex:none;justify-content:center;width:44px;padding:0}.tg-shell--collapsed .tg-logo__name,.tg-shell--collapsed .tg-nav__label,.tg-shell--collapsed .tg-nav__heading{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tg-shell--collapsed .tg-nav__item{justify-content:center;padding:0}.tg-shell--collapsed .tg-nav__badge{margin:0;position:absolute;top:2px;right:2px}.tg-shell--collapsed .tg-side__foot{display:none}}.tg-shell--no-side .tg-shell__body{width:100%}.tg-top{z-index:20;align-items:center;gap:var(--tg-s-4);height:var(--tg-topbar-h);padding:0 var(--tg-s-6);background:var(--tg-surface);border-bottom:1px solid var(--tg-border);box-shadow:var(--tg-shadow-xs);display:flex;position:sticky;top:0}.tg-top__menu.tg-btn{border:1px solid var(--tg-border);background:var(--tg-surface);flex:none;width:40px;min-height:40px}.tg-top__title{font-weight:600}.tg-shell__scrim{display:none}.tg-main{width:100%;max-width:calc(var(--tg-content-max) + 2 * var(--tg-s-6));padding:var(--tg-s-6);padding-left:max(var(--tg-s-6), env(safe-area-inset-left,0px));padding-right:max(var(--tg-s-6), env(safe-area-inset-right,0px));gap:var(--tg-s-6);flex:1;align-content:start;min-width:0;margin:0 auto;display:grid}.tg-main:focus{box-shadow:none;outline:none}.tg-banners,.tg-notices{gap:var(--tg-s-2);min-width:0;display:grid}.tg-notices:not(.tg-notices--float):not(.tg-notices--modal){top:calc(var(--tg-topbar-h) + var(--tg-s-2));z-index:30;position:sticky}.tg-notices--modal{z-index:2;position:sticky;top:0}.tg-notices--float{top:var(--tg-s-4);z-index:70;width:min(560px,100vw - 32px);position:fixed;left:50%;transform:translate(-50%)}.tg-gsearch{min-width:0;height:40px;padding:0 var(--tg-s-2) 0 var(--tg-s-3);border:1px solid var(--tg-border);border-radius:var(--tg-r-card);background:color-mix(in srgb, var(--tg-surface-2) 60%, transparent);color:var(--tg-text-faint);text-align:left;cursor:text;flex:0 512px;align-items:center;gap:10px;display:flex}.tg-gsearch:hover{border-color:var(--tg-border-strong)}.tg-gsearch__text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tg-gsearch__kbd,.tg-search__foot kbd{font:600 11px var(--tg-font);border:1px solid var(--tg-border-strong);color:var(--tg-text);background:var(--tg-surface);white-space:nowrap;border-radius:5px;padding:2px 6px}.tg-search-overlay{z-index:80;padding:10vh var(--tg-s-4) var(--tg-s-4);background:var(--tg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.tg-search{background:var(--tg-surface);border-radius:var(--tg-r-section);width:min(640px,100%);max-height:80vh;box-shadow:var(--tg-shadow-2);flex-direction:column;display:flex;overflow:hidden}.tg-search__field{align-items:center;gap:var(--tg-s-2);padding:0 var(--tg-s-3) 0 var(--tg-s-4);border-bottom:1px solid var(--tg-border);color:var(--tg-text-faint);display:flex}.tg-search__field input{min-width:0;height:52px;color:var(--tg-text);font-size:var(--tg-fs-16);background:0 0;border:0;outline:0;flex:1}.tg-search__field input:focus-visible{box-shadow:none}.tg-search__list{padding:var(--tg-s-1);margin:0;list-style:none;overflow:auto}.tg-search__list:empty{display:none}.tg-search__option{align-items:center;gap:var(--tg-s-3);padding:10px var(--tg-s-3);border-radius:var(--tg-r-control);cursor:pointer;display:flex}.tg-search__option.is-active{background:var(--tg-accent-soft)}.tg-search__text{flex:1;min-width:0}.tg-search__text b{color:var(--tg-brand-ink);overflow-wrap:anywhere;font-weight:600;display:block}.tg-search__text small{color:var(--tg-text-muted);font-size:var(--tg-fs-12);overflow-wrap:anywhere;display:block}.tg-search__kind{font-size:var(--tg-fs-12);color:var(--tg-text-muted);background:var(--tg-surface-2);border-radius:var(--tg-r-pill);flex:none;padding:2px 8px}.tg-search__status:not(:empty){padding:var(--tg-s-4);color:var(--tg-text-muted);text-align:center}.tg-search__foot{gap:var(--tg-s-4);padding:10px var(--tg-s-4);border-top:1px solid var(--tg-border);font-size:var(--tg-fs-12);color:var(--tg-text-muted);display:flex}.tg-page-head{justify-content:space-between;align-items:flex-end;gap:var(--tg-s-4);flex-wrap:wrap;display:flex}.tg-page-head__main{flex:420px;min-width:0}.tg-page-head__title{align-items:center;gap:var(--tg-s-3);min-width:0;display:flex}.tg-page-head__title h1{font-size:var(--tg-fs-24);letter-spacing:-.025em;color:var(--tg-brand-ink);overflow-wrap:anywhere;min-width:0;font-weight:700;line-height:1.2}.tg-page-head__title h1:focus{box-shadow:none;outline:none}.tg-page-head__tile{background:var(--tg-tile-bg);width:36px;height:36px;color:var(--tg-tile-fg);border-radius:10px;flex:none;place-items:center;display:grid}.tg-page-head__tile svg{width:20px;height:20px}.tg-help{border:1px solid var(--tg-border);width:28px;height:28px;color:var(--tg-text-faint);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;text-decoration:none;display:grid}.tg-help:hover{color:var(--tg-accent);border-color:var(--tg-accent);text-decoration:none}@media (pointer:coarse){.tg-help{border-color:#0000;width:44px;height:44px}}.tg-page-head__lead{margin-top:var(--tg-s-2);max-width:672px;color:var(--tg-text-muted);line-height:1.625}.tg-page-head__crumbs{font-size:var(--tg-fs-12);color:var(--tg-text-muted);flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.tg-page-head__crumbs a{color:var(--tg-text-muted)}.tg-page-head__actions{gap:var(--tg-s-2);flex-wrap:wrap;align-items:center;display:flex}.tg-stat{padding:var(--tg-s-5);color:inherit;transition:box-shadow var(--tg-motion);align-content:start;gap:2px;text-decoration:none;display:grid}a.tg-stat:hover,.tg-stat--link:hover{box-shadow:var(--tg-shadow-md);text-decoration:none}.tg-stat__icon{width:36px;height:36px;margin-bottom:var(--tg-s-3);background:var(--tg-brand-soft);color:var(--tg-brand-ink);border-radius:50%;place-items:center;display:grid}.tg-stat__icon svg{width:18px;height:18px}.tg-stat__icon--ok{background:var(--tg-ok-soft);color:var(--tg-ok)}.tg-stat__icon--warn{background:var(--tg-warn-soft);color:var(--tg-warn)}.tg-stat__icon--alarm{background:var(--tg-alarm-soft);color:var(--tg-alarm)}.tg-stat__value{font-size:var(--tg-fs-30);letter-spacing:-.025em;color:var(--tg-brand-ink);font-variant-numeric:tabular-nums;order:1;font-weight:700;line-height:1.1}.tg-stat__suffix{font-size:var(--tg-fs-16);color:var(--tg-text-muted);letter-spacing:0;font-weight:600}.tg-stat__value--warn{color:var(--tg-warn)}.tg-stat__value--alarm{color:var(--tg-alarm)}.tg-stat__label{margin-top:var(--tg-s-1);font-size:var(--tg-fs-14);color:var(--tg-text-muted);order:2;font-weight:500}.tg-stat__hint{font-size:var(--tg-fs-12);color:var(--tg-text-faint);order:3}.tg-stat>:not(.tg-stat__icon,.tg-stat__value,.tg-stat__label,.tg-stat__hint){order:4}.tg-stat-grid{gap:var(--tg-s-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (max-width:1023px){.tg-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.tg-attn{background:var(--tg-surface);border:1px solid var(--tg-alarm-line);border-radius:var(--tg-r-section);box-shadow:var(--tg-shadow-1);overflow:hidden}.tg-attn__head{align-items:center;gap:var(--tg-s-2);padding:14px var(--tg-s-4);background:var(--tg-alarm-soft);color:var(--tg-alarm);border-bottom:1px solid var(--tg-alarm-line);display:flex}.tg-attn__head h2{font-size:var(--tg-fs-14);color:inherit;font-weight:600}.tg-attn__count{font-size:var(--tg-fs-12);background:var(--tg-surface);color:var(--tg-alarm);border-radius:var(--tg-r-pill);padding:1px 8px;font-weight:600}.tg-attn__list{margin:0;padding:0;list-style:none}.tg-attn__list li+li{border-top:1px solid var(--tg-border)}.tg-attn__row{align-items:center;gap:var(--tg-s-3);min-height:44px;padding:var(--tg-s-3) var(--tg-s-4);color:inherit;text-decoration:none;display:flex}.tg-attn__row:hover{background:var(--tg-surface-2);text-decoration:none}.tg-attn__text{flex:1;min-width:0}.tg-attn__text b{-webkit-line-clamp:2;color:var(--tg-brand-ink);-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.tg-attn__text small{color:var(--tg-text-muted);font-size:var(--tg-fs-12);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.tg-attn__chev{color:var(--tg-text-faint);flex:none}.tg-attn__more{width:100%;min-height:44px;padding:var(--tg-s-3) var(--tg-s-4);border:0;border-top:1px solid var(--tg-border);font:inherit;text-align:center;color:var(--tg-alarm);background:0 0;font-weight:600;display:block}.tg-chip-status{border-radius:var(--tg-r-pill);height:22px;font-size:var(--tg-fs-12);white-space:nowrap;flex:none;align-items:center;gap:5px;padding:0 8px;font-weight:600;display:inline-flex}.tg-chip-status--alarm{background:var(--tg-alarm-soft);color:var(--tg-alarm)}.tg-chip-status--warn{background:var(--tg-warn-soft);color:var(--tg-warn)}.tg-chip-status--fault{background:var(--tg-fault-soft);color:var(--tg-fault)}.tg-chip-status--offline{background:var(--tg-offline-soft);color:var(--tg-offline)}.tg-chip-status--info{background:var(--tg-info-soft);color:var(--tg-info)}.tg-conn{align-items:center;gap:var(--tg-s-2);height:36px;padding:0 var(--tg-s-3);border-radius:var(--tg-r-pill);white-space:nowrap;font-size:13px;font-weight:600;display:inline-flex}.tg-conn--ok{background:var(--tg-ok-soft);color:var(--tg-ok)}.tg-conn--amber{background:var(--tg-warn-soft);color:var(--tg-warn)}.tg-conn--red{background:var(--tg-alarm-soft);color:var(--tg-alarm)}@media (max-width:639px){.tg-conn__label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:1023px){.tg-side{visibility:hidden;width:min(280px,85vw);transition:transform .2s ease-out,visibility .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.tg-shell--menu-open .tg-side{visibility:visible;transform:none}.tg-shell--menu-open .tg-side__close{display:inline-flex}.tg-shell--menu-open .tg-shell__scrim{z-index:39;background:var(--tg-overlay);display:block;position:fixed;inset:0}.tg-top{padding:0 var(--tg-s-4);gap:var(--tg-s-3)}.tg-main{padding:20px var(--tg-s-4);padding-left:max(var(--tg-s-4), env(safe-area-inset-left,0px));padding-right:max(var(--tg-s-4), env(safe-area-inset-right,0px));gap:20px}}@media (max-width:639px){.tg-top{padding:0 var(--tg-s-3);gap:var(--tg-s-2)}.tg-gsearch{flex:1}.tg-gsearch__kbd,.tg-top .tg-hide-narrow{display:none}.tg-page-head__title h1{font-size:var(--tg-fs-20)}.tg-page-head__actions{width:100%}.tg-page-head__actions>.tg-btn{flex:1}.tg-page-head__actions>.tg-btn--optional{display:none}.tg-stat{padding:var(--tg-s-4)}.tg-stat__value{font-size:26px}.tg-search-overlay{padding:0}.tg-search{border-radius:0;width:100%;height:100%;max-height:none}.tg-search__foot{display:none}}.tg-table-wrap{border:1px solid var(--tg-border);border-radius:var(--tg-r-card);box-shadow:var(--tg-shadow-1);background:var(--tg-surface);max-height:var(--tg-table-max-h,none);overflow:auto}.tg-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--tg-fs-14)}.tg-table th{background:var(--tg-surface-2);color:var(--tg-text-muted);font-size:var(--tg-fs-12);letter-spacing:.04em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--tg-border);z-index:1;white-space:nowrap;padding:10px 16px;font-weight:600;position:sticky;top:0}.tg-table th button{all:unset;cursor:pointer;align-items:center;gap:4px;display:inline-flex}.tg-table td{border-bottom:1px solid var(--tg-border);vertical-align:middle;overflow-wrap:break-word;padding:12px 16px}.tg-table td.tg-mono,.tg-table td.tg-num,.tg-table td.tg-table__menu-cell{white-space:nowrap}.tg-table td.tg-col--primary,.tg-table td.tg-col--primary a,.tg-table td>b,.tg-table td>strong{color:var(--tg-brand-ink);font-weight:600}.tg-card-row__title{color:var(--tg-brand-ink)}.tg-table__menu-cell{text-align:right;width:1%}.tg-table--dense td{padding:6px 8px}.tg-table tr:last-child td{border-bottom:0}.tg-table tbody tr[data-href]:hover,.tg-table tbody tr.tg-table__row--clickable:hover{background:var(--tg-surface-2);cursor:pointer}.tg-table tr[aria-selected=true] td{background:var(--tg-accent-soft)}.tg-table__foot{justify-content:center;align-items:center;gap:var(--tg-s-3);padding:var(--tg-s-2);border-top:1px solid var(--tg-border);font-size:var(--tg-fs-12);color:var(--tg-text-muted);display:flex}@media (max-width:1439px){.tg-table .tg-col--secondary{display:none}}.tg-filters{gap:var(--tg-s-2);min-width:0;display:grid}.tg-filters__bar{align-items:center;gap:var(--tg-s-2);flex-wrap:wrap;min-width:0;display:flex}.tg-filters__search{flex:220px;min-width:0;max-width:420px}.tg-filters__actions{gap:var(--tg-s-2);flex-wrap:wrap;margin-left:auto;display:flex}@media (max-width:639px){.tg-filters__actions{width:100%;margin-left:0}.tg-filters__actions .tg-segmented--filled{width:100%;display:flex}.tg-filters__actions .tg-segmented--filled button{flex:1}}.tg-filters__chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tg-filters__chip{border:1px solid var(--tg-border-strong);border-radius:var(--tg-r-pill);background:var(--tg-surface);min-height:26px;font-size:var(--tg-fs-12);align-items:center;gap:4px;max-width:100%;padding:0 2px 0 10px;display:inline-flex}.tg-filters__chip-label{color:var(--tg-text-muted)}.tg-filters__chip .tg-icon-btn{border-radius:var(--tg-r-pill);padding:3px}.tg-filters__clear{border-radius:var(--tg-r-control);color:var(--tg-accent);font-size:var(--tg-fs-12);background:0 0;border:0;padding:2px 6px;font-weight:600}.tg-filters__clear:hover{text-decoration:underline}.tg-filters__panel{gap:var(--tg-s-3);width:min(360px,100vw - 32px);padding:var(--tg-s-4);display:grid}.tg-filters__panel-foot{justify-content:space-between;align-items:center;gap:var(--tg-s-2);padding-top:var(--tg-s-3);border-top:1px solid var(--tg-border);display:flex}.tg-timeline{gap:var(--tg-s-2);margin:0;padding:0;list-style:none;display:grid}.tg-timeline li{gap:var(--tg-s-2);font-size:var(--tg-fs-14);grid-template-columns:16px minmax(0,1fr);align-items:start;display:grid}.tg-timeline__dot{background:var(--tg-border-strong);border-radius:50%;width:10px;height:10px;margin-top:5px}.tg-timeline__dot--ok{background:var(--tg-ok)}.tg-timeline__dot--warn{background:var(--tg-warn)}.tg-timeline__dot--alarm{background:var(--tg-alarm)}.tg-timeline__dot--identify{background:var(--tg-identify)}.tg-timeline__meta{color:var(--tg-text-muted);font-size:var(--tg-fs-12)}.tg-progress{border-radius:var(--tg-r-pill);background:var(--tg-surface-2);height:8px;overflow:hidden}.tg-progress__bar{background:var(--tg-accent);height:100%;transition:width var(--tg-motion)}.tg-progress--warn .tg-progress__bar{background:var(--tg-warn)}.tg-progress--alarm .tg-progress__bar{background:var(--tg-alarm)}.tg-spark{width:100%;height:40px;display:block}.tg-json{padding:var(--tg-s-2) var(--tg-s-3);background:var(--tg-surface-2);border-radius:var(--tg-r-control);font-family:var(--tg-font-mono);font-size:var(--tg-fs-12);max-height:var(--tg-json-max-h,320px);white-space:pre;margin:0;overflow:auto}.tg-json-details summary{cursor:pointer;color:var(--tg-text-muted);font-size:var(--tg-fs-14)}.tg-kbd{font-family:var(--tg-font-mono);font-size:var(--tg-fs-12);border:1px solid var(--tg-border-strong);border-radius:var(--tg-r-control);background:var(--tg-surface-2);border-bottom-width:2px;padding:0 5px}.tg-tile{padding:var(--tg-s-3);border:1px solid var(--tg-border);border-left:6px solid var(--tg-border-strong);border-radius:var(--tg-r-card);background:var(--tg-surface);box-shadow:var(--tg-shadow-1);text-align:left;min-width:0;color:inherit;font:inherit;grid-template-columns:minmax(0,1fr);gap:4px;display:grid;position:relative}.tg-tile--clickable:hover{box-shadow:var(--tg-shadow-2)}.tg-tile__main{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;margin:0;padding:0;display:grid}button.tg-tile__main{cursor:pointer}.tg-tile__action{gap:var(--tg-s-2);flex-wrap:wrap;margin-top:4px;display:flex}.tg-tile__head{justify-content:space-between;gap:var(--tg-s-2);align-items:baseline;min-width:0;display:flex}.tg-tile__name{font-weight:600;font-size:var(--tg-fs-16);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tg-tile__type{font-size:var(--tg-fs-12);color:var(--tg-text-muted);white-space:nowrap;flex:none}.tg-tile__verdict{font-size:var(--tg-fs-24);flex-wrap:wrap;align-items:center;gap:8px;min-height:34px;font-weight:700;display:flex}.tg-tile__reasons{flex-basis:100%;min-width:0;font-size:.6em;font-weight:600}.tg-tile__meta{color:var(--tg-text-muted);font-size:var(--tg-fs-14);gap:var(--tg-s-2);flex-wrap:wrap;display:flex}.tg-tile .tg-chip--active{border-color:var(--tg-identify);color:var(--tg-identify);background:var(--tg-identify-soft)}.tg-tile--ok{border-left-color:var(--tg-ok)}.tg-tile--ok .tg-tile__verdict{color:var(--tg-ok)}.tg-tile--warn{border-left-color:var(--tg-warn)}.tg-tile--warn .tg-tile__verdict{color:var(--tg-warn)}.tg-tile--alarm{border-left-color:var(--tg-alarm);background:var(--tg-alarm-soft)}.tg-tile--alarm .tg-tile__verdict{color:var(--tg-alarm)}.tg-tile--alarm.tg-tile--pulse{animation:1s ease-in-out infinite alternate tg-pulse}.tg-tile--latched{border-left-width:10px}.tg-tile--reading{border-left-color:var(--tg-reading);border-left-style:dashed}.tg-tile--reading .tg-tile__verdict{color:var(--tg-reading)}.tg-tile--fault{border-left-color:var(--tg-fault)}.tg-tile--fault .tg-tile__verdict{color:var(--tg-fault)}.tg-tile--offline{border-left-color:var(--tg-offline);color:var(--tg-text-muted)}.tg-tile--offline .tg-tile__verdict{color:var(--tg-offline)}.tg-tile--idle .tg-tile__verdict{color:var(--tg-text-faint)}.tg-tile--stale:after{content:attr(data-stale);border-radius:var(--tg-r-pill);background:var(--tg-surface-2);font-size:var(--tg-fs-12);color:var(--tg-text-muted);padding:0 6px;position:absolute;top:6px;right:8px}.tg-tile--board{padding:var(--tg-s-4)}.tg-tile--board .tg-tile__name{font-size:var(--tg-fs-24)}.tg-tile--board .tg-tile__verdict{font-size:var(--tg-fs-48);min-height:60px}.tg-tile--board .tg-tile__meta{font-size:var(--tg-fs-20)}@keyframes tg-pulse{0%{box-shadow:0 0 #0000}to{box-shadow:0 0 0 4px var(--tg-alarm-soft), 0 0 0 5px var(--tg-alarm)}}@media (prefers-reduced-motion:reduce){.tg-tile--alarm.tg-tile--pulse{border-width:3px 3px 3px 10px;border-color:var(--tg-alarm);animation:none}}.tg-brand-mark{border-radius:var(--tg-r-control);background:var(--tg-brand);width:32px;height:32px;color:var(--tg-accent-on);font-weight:700;font-size:var(--tg-fs-14);letter-spacing:-.02em;flex:none;place-items:center;display:grid}.tg-tabbar{display:none}@media (max-width:1023px){.tg-shell--tabbar .tg-main{padding-bottom:calc(var(--tg-bnav-h) + 24px + env(safe-area-inset-bottom,0px))}.tg-shell--tabbar.tg-shell--dock .tg-main{padding-bottom:calc(var(--tg-bnav-h) + 72px + env(safe-area-inset-bottom,0px))}.tg-shell--tabbar .tg-demo-dock{bottom:calc(var(--tg-bnav-h) + 16px + env(safe-area-inset-bottom,0px))}.tg-tabbar{grid-template-columns:repeat(var(--tg-tabs,5), 1fr);height:calc(var(--tg-bnav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--tg-surface);border-top:1px solid var(--tg-border);z-index:30;display:grid;position:fixed;inset:auto 0 0}.tg-tabbar__item{min-width:44px;color:var(--tg-text-muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;font-size:11px;font-weight:600;text-decoration:none;display:flex;position:relative}.tg-tabbar__item:hover{text-decoration:none}.tg-tabbar__item[aria-current=page],.tg-tabbar__item--active{color:var(--tg-accent)}.tg-tabbar__item[aria-current=page]:before,.tg-tabbar__item--active:before{content:"";background:var(--tg-accent);height:2px;position:absolute;top:0;left:0;right:0}.tg-tabbar__item svg{width:22px;height:22px}.tg-tabbar__badge{position:absolute;top:4px;left:calc(50% + 6px)}}@media (max-width:767px){.tg-tiles--phone .tg-tile .tg-tile__verdict{font-size:var(--tg-fs-32)}}@media (max-width:639px){.tg-dialog,.tg-dialog--lg{border-radius:var(--tg-r-section) var(--tg-r-section) 0 0;overscroll-behavior:contain;border-width:1px 0 0;width:100vw;max-width:100vw;height:-moz-fit-content;height:fit-content;max-height:90dvh;margin:auto 0 0;position:fixed;inset:0;overflow:auto}.tg-dialog[open]{animation:.2s ease-out tg-sheet-up}.tg-dialog__body{padding:var(--tg-s-5) var(--tg-s-4) 0}.tg-dialog__body:before{content:"";width:36px;height:4px;margin-top:calc(var(--tg-s-2) * -1);background:var(--tg-border-strong);border-radius:2px;justify-self:center}.tg-dialog__actions{margin:0 calc(var(--tg-s-4) * -1);padding:var(--tg-s-3) var(--tg-s-4) max(var(--tg-s-3), env(safe-area-inset-bottom,0px));border-top:1px solid var(--tg-border);background:var(--tg-surface);flex-wrap:nowrap;position:sticky;bottom:0}.tg-dialog__actions .tg-btn{flex:1;min-height:48px}.tg-dialog__actions .tg-audit-hint,.tg-dialog__actions .tg-spacer{display:none}}@media (max-width:767px){.tg-drawer--sheet{border-left:0;border-top:1px solid var(--tg-border);border-radius:var(--tg-r-section) var(--tg-r-section) 0 0;width:100vw;height:auto;max-height:90dvh;inset:auto 0 0}.tg-drawer--sheet[open]{animation:.2s ease-out tg-sheet-up}}@keyframes tg-sheet-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@media (max-width:480px){.tg-drawer{border-left:0;width:100vw}.tg-drawer__foot .tg-btn{flex:1;min-height:48px}}@media (pointer:coarse){.tg-btn,.tg-btn--sm,.tg-menu__item,.tg-tab,.tg-segmented button,.tg-input,.tg-select,.tg-nav__item{min-height:44px}.tg-btn--icon,.tg-btn--sm.tg-btn--icon{width:44px;min-width:44px}.tg-segmented button{min-width:44px}.tg-icon-btn{min-width:44px;min-height:44px}.tg-banner .tg-icon-btn,.tg-filters__chip .tg-icon-btn{margin:-12px -8px}.tg-input,.tg-select,.tg-textarea{font-size:16px}.tg-page-head__crumbs a{align-items:center;min-height:44px;margin-block:-14px;display:inline-flex}.tg-filters__clear{min-height:44px;padding-inline:var(--tg-s-2)}.tg-user-btn{min-width:44px;min-height:44px}}.tg-cards-wrap{gap:var(--tg-s-3);min-width:0;display:grid}.tg-cards{gap:var(--tg-s-2);margin:0;padding:0;list-style:none;display:grid}.tg-cards>li{position:relative}.tg-card-row{gap:var(--tg-s-2);padding:var(--tg-s-3);border:1px solid var(--tg-border);border-radius:var(--tg-r-card);background:var(--tg-surface);box-shadow:var(--tg-shadow-1);text-align:left;width:100%;font:inherit;color:inherit;display:grid;position:relative}.tg-card-row__open{z-index:0;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.tg-card-row__open:focus-visible{outline-offset:-2px}.tg-card-row a,.tg-card-row button:not(.tg-card-row__open),.tg-card-row input,.tg-card-row label{z-index:1;position:relative}.tg-card-row__check{cursor:pointer;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-12px 0 -12px -12px;display:inline-flex}.tg-card-row__check input{width:20px;height:20px}.tg-card-row.is-selected{border-color:var(--tg-accent);background:var(--tg-accent-soft)}.tg-card-row--with-menu{padding-right:48px}.tg-table__select-cell{width:1%;padding-right:0}.tg-card-row__menu{top:var(--tg-s-2);right:var(--tg-s-2);position:absolute}.tg-card-row__title{justify-content:space-between;align-items:center;gap:var(--tg-s-2);font-weight:600;display:flex}.tg-card-row__sub{margin:calc(var(--tg-s-1) * -1) 0 0;font-size:var(--tg-fs-12);color:var(--tg-text-muted)}.tg-card-row__grid{gap:var(--tg-s-1) var(--tg-s-3);font-size:var(--tg-fs-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tg-card-row__grid dt{color:var(--tg-text-muted)}.tg-card-row__grid dd{overflow-wrap:anywhere;min-width:0;margin:0}.tg-card-row__grid dd:empty{display:none}.tg-card-row__grid dt:has(+dd:empty){display:none}@media (max-width:767px){.tg-top{flex-wrap:nowrap;min-width:0;max-width:100%}.tg-top>*{min-width:0}.tg-top>span:not(.tg-spacer):not(.tg-top__menu){text-overflow:ellipsis;white-space:nowrap;flex:0 auto;overflow:hidden}.tg-top>.tg-row{flex-wrap:nowrap;flex:none;justify-content:flex-end}.tg-top .tg-hide-narrow{display:none}}.tg-tile,.tg-tile__main{align-content:start}.tg-tile__meta--pass{white-space:nowrap;flex-wrap:wrap;min-width:0}.tg-tile__main{container-type:inline-size}.tg-tile__meta--pass>*{flex:none;min-width:0}@container (width<=17rem){.tg-tile__dirword{display:none}}.tg-login{background:var(--tg-bg);grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.tg-login__hero{text-align:center;padding:var(--tg-s-8) var(--tg-s-6);color:#fff;background:radial-gradient(1200px 600px at 20% 10%,#14b8a6 0%,#0f766e 30%,#134e4a 65%,#062a27 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.tg-login__hero:after{content:"";background-image:repeating-linear-gradient(90deg,#ffffff0d 0 2px,#0000 2px 48px);position:absolute;inset:0}.tg-login__hero h1{z-index:1;color:#fff;margin:0 0 12px;font-size:40px;font-weight:700;line-height:1.15;position:relative}.tg-login__hero p{z-index:1;max-width:460px;font-size:var(--tg-fs-16);color:#ffffffd9;margin:0;position:relative}.tg-login__form{align-content:center;gap:var(--tg-s-4);width:min(100%,440px);padding:var(--tg-s-8) max(16px, env(safe-area-inset-left,0px)) var(--tg-s-8) max(16px, env(safe-area-inset-right,0px));margin:0 auto;display:grid}.tg-login__form h2{color:var(--tg-brand-ink);margin:0;font-size:28px;font-weight:700}.tg-login__form h2+p{margin:6px 0 0}.tg-login__brand{align-items:center;gap:var(--tg-s-3);width:max-content;min-height:44px;padding:0 var(--tg-s-3);border-radius:var(--tg-r-card,12px);background:var(--tg-surface);border:1px solid var(--tg-border);box-shadow:var(--tg-shadow-1);display:flex}.tg-login__brand .tg-brand-mark{width:28px;height:28px}.tg-login__foot{justify-content:space-between;align-items:center;gap:var(--tg-s-3);display:flex}.tg-login__supported{text-align:center;margin:0}@media (max-width:859px){.tg-login{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.tg-login__hero{padding:var(--tg-s-6) var(--tg-s-4)}.tg-login__hero h1{font-size:26px}.tg-login__hero p{font-size:var(--tg-fs-14)}.tg-login__form{padding-top:var(--tg-s-6);align-content:start}}.tg-cards__all{min-height:44px;color:var(--tg-text-muted,inherit);align-items:center;gap:8px;padding:0 4px;font-size:14px;display:flex}.tg-cards__all input{width:20px;height:20px}.topbar-right{gap:var(--tg-s-3);flex-wrap:nowrap}.shortcut-list{gap:var(--tg-s-2) var(--tg-s-4);grid-template-columns:max-content minmax(0,1fr);align-items:center;margin:0;display:grid}.shortcut-list dd{margin:0}.site-clock{font-size:var(--tg-fs-14);letter-spacing:.02em;font-weight:600}.site-clock__zone{margin-left:6px;font-weight:400}.mock-controls{gap:var(--tg-s-2);display:grid}.mock-controls__row{gap:var(--tg-s-2);flex-wrap:wrap;display:flex}.kiosk{background:var(--tg-bg);color:var(--tg-text);grid-template-rows:auto 1fr;display:grid;position:fixed;inset:0;container-type:size}.kiosk__empty{place-items:center;min-height:0;display:grid}.kiosk__grid{grid-template-columns:repeat(var(--kiosk-cols,3), 1fr);grid-auto-rows:1fr;gap:1.2cqw;min-height:0;padding:1.2cqw;display:grid}.kiosk__grid .tg-tile{min-height:0;padding:1.6cqw;font-size:clamp(14px,1.6cqw,28px)}.kiosk__grid .tg-tile__name{font-size:clamp(18px,2.4cqw,40px)}.kiosk__grid .tg-tile__verdict{font-size:clamp(32px,5.2cqw,96px)}.kiosk__grid .tg-tile__verdict svg{width:1em;height:1em}.kiosk__grid .tg-tile__meta{font-size:clamp(14px,1.5cqw,26px)}.kiosk__head{align-items:center;gap:var(--tg-s-4);padding:1cqw 1.4cqw 0;font-size:clamp(16px,1.8cqw,30px);font-weight:600;display:flex}.kiosk__clock{color:var(--tg-text-muted);font-weight:500}.kiosk__live{color:var(--tg-ok);align-items:center;gap:6px;font-size:clamp(14px,1.4cqw,22px);display:inline-flex}.kiosk__live--down{color:var(--tg-alarm)}.kiosk__dots{gap:8px;display:flex}.kiosk__dots span{background:var(--tg-border-strong,var(--tg-border));border-radius:50%;width:10px;height:10px}.kiosk__dots span[aria-current=true]{background:var(--tg-accent)}.kiosk__overlay{color:#fff;z-index:50;cursor:pointer;background:#0000008c;border:0;place-items:center;font-size:clamp(20px,3cqw,48px);display:grid;position:fixed;inset:0}.kiosk__banner{background:var(--tg-alarm);color:var(--tg-alarm-on,#fff);text-align:center;z-index:40;padding:1cqw 1.4cqw;font-size:clamp(16px,2cqw,36px);font-weight:600;position:fixed;inset:0 0 auto}.pass-issues{gap:2px var(--tg-s-2);color:var(--tg-text-muted);font-size:var(--tg-fs-12);flex-wrap:wrap;display:inline-flex}.pass-issues>span{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.verdict-panel{gap:var(--tg-s-3);display:grid}.pass-subhead{margin:0 0 var(--tg-s-2);font-size:var(--tg-fs-14);font-weight:600}.pass-note{gap:var(--tg-s-2);color:var(--tg-text-muted);align-items:flex-start;margin:0;display:flex}.pass-note svg{flex:none;margin-top:3px}.pass-note--warn svg{color:var(--tg-warn)}.reason-list{gap:var(--tg-s-2);margin:0;padding:0;list-style:none;display:grid}.reason-list li{gap:var(--tg-s-2);flex-wrap:wrap;align-items:center;display:flex}.facts-row{align-items:center;gap:var(--tg-s-1) var(--tg-s-3);font-size:var(--tg-fs-12);color:var(--tg-text-muted);flex-wrap:wrap;margin:0;display:flex}.pass-meta{gap:var(--tg-s-2) var(--tg-s-4);flex-wrap:wrap;align-items:center;display:flex}.plain-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.dropzone{place-items:center;gap:var(--tg-s-2);min-height:160px;padding:var(--tg-s-5);border:2px dashed var(--tg-border-strong,var(--tg-border));border-radius:var(--tg-r-card,12px);text-align:center;color:var(--tg-text-muted);display:grid}.dropzone--active{border-color:var(--tg-accent);background:var(--tg-accent-soft)}.stat-grid{gap:var(--tg-s-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.stat-grid--row3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:767px){.stat-grid--row3{gap:var(--tg-s-2)}.stat-grid--row3 .tg-stat{padding:var(--tg-s-2) var(--tg-s-3)}.stat-grid--row3 .tg-stat__value{font-size:var(--tg-fs-16)}}.inline-form{gap:var(--tg-s-3);display:grid}.inline-form--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.lines-textarea{min-height:140px;font-family:var(--tg-font-mono)}.audit-diff{gap:var(--tg-s-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.page-stack{gap:var(--tg-s-4);display:grid}.tg-kv .tg-status{white-space:normal;flex-wrap:wrap}.doc-progress{align-items:center;gap:var(--tg-s-3);display:flex}.doc-progress .tg-progress{flex:1;min-width:48px}.doc-progress .tg-num{white-space:nowrap}.tg-link{color:var(--tg-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.tg-link:hover{text-decoration:underline}.page-stack.dashboard{gap:var(--tg-s-6)}.dashboard__section-head{align-items:center;gap:var(--tg-s-3);margin-bottom:calc(-1 * var(--tg-s-3));flex-wrap:wrap;display:flex}.dashboard__section-head h2{font-size:var(--tg-fs-16);color:var(--tg-brand-ink);font-weight:600}.dashboard__all{align-items:center;gap:4px;min-height:44px;font-weight:600;display:inline-flex}.gate-cards{gap:var(--tg-s-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:1279px){.gate-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.gate-cards{grid-template-columns:minmax(0,1fr)}}.gate-card{color:inherit;transition:box-shadow var(--tg-motion);padding:0;text-decoration:none;display:grid;overflow:hidden}.gate-card:hover{box-shadow:var(--tg-shadow-md);text-decoration:none}.gate-card__head{align-items:center;gap:var(--tg-s-2);padding:var(--tg-s-3) var(--tg-s-4);border-bottom:1px solid var(--tg-border);min-width:0;display:flex}.gate-card__head svg{color:var(--tg-tile-fg);flex:none}.gate-card__name{min-width:0;color:var(--tg-brand-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.gate-card__type{font-size:var(--tg-fs-12);color:var(--tg-text-muted);background:var(--tg-surface-2);border-radius:var(--tg-r-pill);flex:none;padding:1px 8px;font-weight:600}.gate-card__inner{align-items:center;gap:var(--tg-s-3);margin:var(--tg-s-3);padding:var(--tg-s-3);background:var(--tg-surface-2);border-radius:10px;min-width:0;display:flex}.gate-card__tx{flex:1;gap:2px;min-width:0;display:grid}.gate-card__tx b{font-weight:600}.gate-card__tx small{color:var(--tg-text-muted);font-size:var(--tg-fs-12);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gate-card__dot{background:var(--tg-ok);border-radius:50%;flex:none;width:8px;height:8px}.gate-card.is-off{opacity:.85}.gate-card.is-stale .gate-card__inner{opacity:.7}.gate-card.is-alarm{border-color:var(--tg-alarm);box-shadow:0 0 0 1px var(--tg-alarm), var(--tg-shadow-1)}.gate-card.is-alarm .gate-card__inner{background:var(--tg-alarm-soft)}@media (prefers-reduced-motion:no-preference){.gate-card.is-alarm{animation:1s ease-in-out infinite alternate gate-card-pulse}}@keyframes gate-card-pulse{0%{box-shadow:0 0 0 1px var(--tg-alarm), var(--tg-shadow-1)}to{box-shadow:0 0 0 4px var(--tg-alarm-line), var(--tg-shadow-1)}}.hide-phone{display:inline-flex}@media (max-width:639px){.hide-phone{display:none}}.list-card{padding:0;overflow:hidden}.list-card__head{align-items:center;gap:var(--tg-s-2);padding:var(--tg-s-4) var(--tg-s-4) var(--tg-s-3);display:flex}.list-card__head h2,.live-card .tg-card__title{align-items:center;gap:var(--tg-s-2);margin:0;display:inline-flex}.list-card__count{border-radius:var(--tg-r-pill);background:var(--tg-surface-2);min-height:20px;color:var(--tg-text-muted);font-size:var(--tg-fs-12);align-items:center;padding:0 8px;font-weight:600;display:inline-flex}.list-card__tools{padding:0 var(--tg-s-4) var(--tg-s-3)}.list-card .tg-table-wrap{border:0;border-top:1px solid var(--tg-border);box-shadow:none;border-radius:0}.list-card .tg-cards-wrap{padding:0 var(--tg-s-3) var(--tg-s-3)}.list-card>.tg-empty,.list-card>.tg-error{margin:0 var(--tg-s-4) var(--tg-s-4)}.two-line{flex-direction:column;gap:1px;min-width:0;display:inline-flex}.two-line>b,.two-line>b a,.two-line__main{color:var(--tg-brand-ink);font-weight:600}.two-line>small{color:var(--tg-text-muted);font-size:var(--tg-fs-12);font-weight:400}.tab-label{align-items:center;gap:var(--tg-s-2);display:inline-flex}.fold{border-top:1px solid var(--tg-border);margin:var(--tg-s-3) calc(-1 * var(--tg-s-4)) calc(-1 * var(--tg-s-4))}.fold>summary{align-items:center;gap:var(--tg-s-2);min-height:44px;padding:var(--tg-s-2) var(--tg-s-4);cursor:pointer;color:var(--tg-brand-ink);font-weight:600;list-style:none;display:flex}.fold>summary::-webkit-details-marker{display:none}.fold>summary svg{transition:transform var(--tg-motion)}.fold[open]>summary svg{transform:rotate(90deg)}.fold__body{gap:var(--tg-s-3);padding:0 var(--tg-s-4) var(--tg-s-4);display:grid}.kv-grid{gap:var(--tg-s-4) var(--tg-s-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}.kv-grid>div{gap:2px;display:grid!important}.kv-grid dt{font-size:var(--tg-fs-12)}.kv-grid dd{color:var(--tg-brand-ink);font-weight:600}.rules-form{max-width:560px}.rules-form .fold{border:1px solid var(--tg-border);border-radius:var(--tg-r-control);margin:0}.rules-note{gap:var(--tg-s-2);flex-wrap:wrap;align-items:center;margin:0;display:flex}.verdict-card{align-items:center;gap:var(--tg-s-4);flex-wrap:wrap;display:flex}.verdict-card__icon{background:var(--tg-surface-2);width:56px;height:56px;color:var(--tg-text-muted);border-radius:14px;flex:none;place-items:center;display:grid}.verdict-card--ok .verdict-card__icon{background:var(--tg-ok-soft);color:var(--tg-ok)}.verdict-card--warn .verdict-card__icon{background:var(--tg-warn-soft);color:var(--tg-warn)}.verdict-card--alarm .verdict-card__icon{background:var(--tg-alarm-soft);color:var(--tg-alarm)}.verdict-card--fault .verdict-card__icon{background:var(--tg-fault-soft);color:var(--tg-fault)}.verdict-card--reading .verdict-card__icon{background:var(--tg-reading-soft);color:var(--tg-reading)}.verdict-card--alarm{border-color:var(--tg-alarm)}.verdict-card--offline{opacity:.9}.verdict-card.is-stale .verdict-card__body{opacity:.7}.verdict-card__body{flex:1;gap:2px;min-width:200px;display:grid}.verdict-card__title{font-size:var(--tg-fs-24);letter-spacing:-.02em;color:var(--tg-brand-ink);font-weight:700}.verdict-card__meta{align-items:center;gap:2px var(--tg-s-2);color:var(--tg-text-muted);flex-wrap:wrap;display:flex}.verdict-card__meta>*+:before{content:"·";margin-right:var(--tg-s-2)}.verdict-card__actions{gap:var(--tg-s-2);display:flex}.live-word{color:var(--tg-ok);align-items:center;gap:6px;font-weight:600;display:inline-flex}.live-list{margin:0 calc(-1 * var(--tg-s-4)) calc(-1 * var(--tg-s-4));padding:0;list-style:none}.live-list li+li{border-top:1px solid var(--tg-border)}.live-list__row{align-items:center;gap:var(--tg-s-3);min-height:56px;padding:var(--tg-s-2) var(--tg-s-4);color:inherit;grid-template-columns:minmax(0,11rem) minmax(0,1fr) auto;text-decoration:none;display:grid}.live-list__row:hover{background:var(--tg-surface-2);text-decoration:none}.live-list__row>:first-child,.live-list__row .two-line{min-width:0}@media (max-width:479px){.live-list__row{row-gap:var(--tg-s-1);grid-template-columns:minmax(0,1fr) auto}.live-list__row>:nth-child(2){grid-column:1}.live-list__row>svg{grid-area:1/2/span 2}}.live-list__row>svg{color:var(--tg-text-faint)}.split{gap:var(--tg-s-5);grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;display:grid}@media (max-width:1099px){.split{grid-template-columns:minmax(0,1fr)}}.kv-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:479px){.kv-grid--2{grid-template-columns:minmax(0,1fr)}}.vcard--warn,.vcard--alarm{overflow:hidden}.vcard--warn{border-color:var(--tg-warn)}.vcard--alarm{border-color:var(--tg-alarm)}.vcard--warn>.tg-card__head,.vcard--alarm>.tg-card__head{margin:calc(-1 * var(--tg-s-4)) calc(-1 * var(--tg-s-4)) var(--tg-s-3);padding:var(--tg-s-3) var(--tg-s-4)}.vcard--warn>.tg-card__head{background:var(--tg-warn-soft)}.vcard--alarm>.tg-card__head{background:var(--tg-alarm-soft)}.steps{gap:var(--tg-s-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.steps li{align-items:center;gap:var(--tg-s-2);color:var(--tg-text-muted);font-weight:600;display:inline-flex}.steps li.is-on{color:var(--tg-brand-ink)}.steps em{background:var(--tg-surface-2);width:22px;height:22px;font-style:normal;font-size:var(--tg-fs-12);border-radius:50%;place-items:center;display:grid}.steps li.is-on em{background:var(--tg-accent);color:var(--tg-accent-on)}.steps li.is-done em{background:var(--tg-accent-soft);color:var(--tg-brand-ink)}.live-list--flat{border:1px solid var(--tg-border);border-radius:var(--tg-r-card);margin:0;overflow:hidden}.status-head{align-items:center;gap:var(--tg-s-3);flex-wrap:wrap;display:flex}.status-head h2{font-size:var(--tg-fs-16);color:var(--tg-brand-ink);margin:0;font-weight:600}.status-grid{gap:var(--tg-s-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:1099px){.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.status-grid{grid-template-columns:minmax(0,1fr)}}.status-card{gap:var(--tg-s-2);align-content:start;display:grid}.status-card__title{color:var(--tg-brand-ink)}.fold-only{padding:0;overflow:hidden}.fold-only>.fold{border-top:0;margin:0}.dot-sep{align-items:center;gap:2px var(--tg-s-2);flex-wrap:wrap;display:flex}.dot-sep>*+:before{content:"·";margin-right:var(--tg-s-2);color:var(--tg-text-faint);font-weight:400}.live-list__verdict{flex:none;min-width:8.5rem}@media (max-width:479px){.live-list__verdict{min-width:0}}.tg-table td.tg-col--primary .two-line>small a,.two-line>small a,.two-line>small .tg-id__text{color:var(--tg-text-muted);font-weight:400;font-size:var(--tg-fs-12)}
