.ov-main{display:grid;grid-gap:var(--space-5,20px);gap:var(--space-5,20px);align-content:start}.ov-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 24px}.ov-head__eyebrow{margin:0 0 6px;color:var(--accent);font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ov-head h1{margin:0}.ov-head__sub{margin:6px 0 0;color:var(--text-muted);font-size:.92rem}.ov-filter{display:grid;grid-gap:6px;gap:6px;min-width:240px}.ov-filter span{color:var(--text-muted);font-size:.8rem;font-weight:600}.ov-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:42px;padding:0 40px 0 14px;border:1px solid var(--border);border-radius:12px;font:inherit;font-weight:600;color:var(--text-main);cursor:pointer;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%235e7891' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center}.ov-select:hover{border-color:rgba(20,120,203,.45)}.ov-select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ov-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.ov-kpi{position:relative;overflow:hidden;display:grid;grid-gap:6px;gap:6px;padding:18px 20px;border:1px solid var(--border);border-radius:var(--radius-lg,18px);background:var(--surface);box-shadow:var(--shadow-soft,var(--shadow-card))}.ov-kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--ov-tone,var(--accent))}.ov-kpi__label{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ov-kpi__value{font-size:2.1rem;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-main)}.ov-kpi--online{--ov-tone:var(--safe)}.ov-kpi--alarm{--ov-tone:var(--danger)}.ov-kpi--alarm.ov-kpi--active{border-color:rgba(201,56,50,.4);background:linear-gradient(160deg,var(--surface) 0,rgba(201,56,50,.07) 100%)}.ov-kpi--alarm.ov-kpi--active .ov-kpi__value{color:var(--danger)}.ov-kpi--offline{--ov-tone:#8aa0b6}.ov-alerts{padding:20px 24px}.ov-alerts__head{display:flex;align-items:center;gap:10px;margin-bottom:4px}.ov-alerts__head h2{margin:0;font-family:var(--font-heading),serif}.ov-count{min-width:26px;padding:2px 9px;border-radius:999px;background:var(--danger);color:#fff;font-size:.8rem;font-weight:700;text-align:center}.ov-alerts__list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.ov-alert{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:16px;gap:16px;padding:12px 14px 12px 16px;border:1px solid var(--border);border-left:4px solid var(--danger);border-radius:12px;background:var(--surface-tint)}.ov-alert--offline{border-left-color:#d18620}.ov-alert__main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0}.ov-alert__device{font-weight:700;color:var(--text-main)}.ov-alert__detail{color:var(--text-muted);font-size:.88rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-alert__time{display:grid;justify-items:end;color:var(--text-muted);font-size:.82rem;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-alert__time strong{color:var(--text-main);font-weight:600}.ov-empty{display:flex;align-items:center;gap:10px;margin-top:10px;color:var(--safe);font-weight:600}.ov-empty:before{content:"✓";display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(31,139,96,.12);font-size:.8rem}.ov-more{margin-top:12px}.ov-btn{min-height:34px;padding:0 14px;border:1px solid rgba(20,120,203,.3);border-radius:10px;background:var(--accent-soft);color:var(--accent);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease}.ov-btn:hover:not(:disabled){border-color:var(--accent)}.ov-btn:disabled{opacity:.55;cursor:default}.ov-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid transparent;font-size:.76rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.ov-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.ov-pill--normal{color:#12704a;background:#e9f8f0;border-color:#a9dfc4}.ov-pill--alarm{color:#b3342d;background:#fff0ee;border-color:#f0b5ae}.ov-pill--offline{color:#5d6f85;background:#f2f6fa;border-color:#d4dde8}.ov-pill--offline:before{background:transparent;border:1.5px solid}.ov-pill--waiting{color:#995507;background:#fff6e6;border-color:#f0cf97}.ov-pill--unknown{color:#5d6f85;background:#f2f6fa;border-color:#d4dde8}.ov-pill--muted{color:var(--text-muted);background:var(--bg-soft);border-color:var(--border)}.ov-pill--muted:before{display:none}.ov-pill--alarm:before{animation:ov-pulse 1.6s ease-in-out infinite}.ov-group{display:grid;grid-gap:14px;gap:14px}.ov-group__head{display:flex;align-items:baseline;gap:12px;padding:0 4px}.ov-group__head h2{margin:0}.ov-group__head span{color:var(--text-muted);font-size:.88rem}.ov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));grid-gap:16px;gap:16px}.ov-card{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:20px;border:1px solid var(--border);border-radius:var(--radius-lg,18px);background:var(--surface);box-shadow:var(--shadow-soft,var(--shadow-card));color:inherit;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.ov-card:hover{transform:translateY(-2px);border-color:rgba(20,120,203,.4);box-shadow:0 14px 30px rgba(18,65,102,.12)}.ov-card:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px;border-color:var(--accent)}.ov-card--alarm{border-color:rgba(201,56,50,.45);background:linear-gradient(170deg,var(--surface) 0,rgba(201,56,50,.06) 100%)}.ov-card--alarm:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;border-radius:18px 18px 0 0;background:var(--danger)}.ov-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ov-card__name{margin:0;font-size:1.12rem;overflow-wrap:anywhere}.ov-card__loc{margin:-6px 0 0;color:var(--text-muted);font-size:.86rem;overflow-wrap:anywhere}.ov-reading{display:grid;grid-gap:2px;gap:2px}.ov-reading__label{color:var(--text-muted);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ov-reading__value{display:flex;align-items:baseline;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-reading__value strong{font-size:2.35rem;font-weight:700;line-height:1.05;color:var(--text-main)}.ov-reading__value span{color:var(--text-muted);font-size:.95rem;font-weight:600}.ov-card--alarm .ov-reading__value strong{color:var(--danger)}.ov-reading--stale .ov-reading__value strong{font-size:1.55rem;color:var(--text-muted);font-weight:600}.ov-gm{display:flex;flex-wrap:wrap;gap:8px}.ov-gm__chip{display:inline-flex;align-items:baseline;gap:6px;padding:5px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-tint);font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-gm__chip b{color:var(--text-muted);font-weight:700;font-size:.74rem;letter-spacing:.04em}.ov-gm__chip strong{font-size:.98rem}.ov-card__foot,.ov-gm__chip small{color:var(--text-muted)}.ov-card__foot{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border);font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-card__foot strong{color:var(--text-main);font-weight:600}.ov-state{padding:18px 22px;color:var(--text-muted)}:root[data-theme=dark] .ov-pill--normal{color:#6fdcaa;background:rgba(51,179,125,.12);border-color:rgba(51,179,125,.35)}:root[data-theme=dark] .ov-pill--alarm{color:#ff9a94;background:rgba(255,127,121,.12);border-color:rgba(255,127,121,.35)}:root[data-theme=dark] .ov-pill--offline,:root[data-theme=dark] .ov-pill--unknown{color:#a9bccf;background:rgba(156,180,202,.1);border-color:rgba(156,180,202,.3)}:root[data-theme=dark] .ov-pill--waiting{color:#f4bd6a;background:rgba(244,189,106,.1);border-color:rgba(244,189,106,.3)}:root[data-theme=dark] .ov-card--alarm{background:linear-gradient(170deg,var(--surface) 0,rgba(255,127,121,.08) 100%)}:root[data-theme=dark] .ov-select{background-color:var(--surface-tint)}@media (max-width:1100px){.ov-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.ov-head{align-items:stretch;flex-direction:column;padding:18px}.ov-filter{min-width:0}.ov-kpi__value{font-size:1.7rem}.ov-alert{grid-template-columns:minmax(0,1fr);gap:10px}.ov-alert__time{justify-items:start}.ov-alert .ov-btn{justify-self:start}}.ov-spark{position:relative;display:grid;grid-gap:6px;gap:6px;color:var(--accent)}.ov-spark svg{display:block;width:100%;height:56px;overflow:visible}.ov-spark__line{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.ov-spark__area{stroke:none}.ov-spark__dot{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px var(--surface)}.ov-spark__meta{display:flex;justify-content:space-between;gap:8px;color:var(--text-muted);font-size:.76rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-spark--alarm{color:var(--danger)}.ov-spark--empty{min-height:56px;place-items:center;border:1px dashed var(--border);border-radius:10px;color:var(--text-muted);font-size:.82rem}.ov-reading--stale+.ov-spark,.ov-reading--stale~.ov-spark{color:#8aa0b6}.ov-trend{display:grid;grid-gap:14px;gap:14px;padding:20px 24px}.ov-trend__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.ov-trend__head h2{margin:0;font-family:var(--font-heading),serif}.ov-trend__head p{margin:4px 0 0;color:var(--text-muted);font-size:.86rem}.ov-seg{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--border);border-radius:12px;background:var(--surface-tint)}.ov-seg button{min-width:52px;min-height:34px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.ov-seg button:hover{color:var(--accent)}.ov-seg button[aria-pressed=true]{background:var(--surface);color:var(--accent);box-shadow:0 1px 4px rgba(18,65,102,.14)}.ov-seg button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ov-trend__chips{display:flex;flex-wrap:wrap;gap:8px}.ov-chip{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.ov-chip i{width:9px;height:9px;border-radius:50%;border:2px solid;opacity:.6}.ov-chip:hover{border-color:var(--accent);color:var(--text-main)}.ov-chip--on{border-color:var(--chip);color:var(--text-main);background:color-mix(in srgb,var(--chip) 9%,var(--surface))}.ov-chip--on i{border-color:var(--chip);background:var(--chip);opacity:1}.ov-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ov-trend__empty{margin:0;padding:28px 0;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:12px}.ov-trend .telemetry-plot{margin-inline:-6px}@media (max-width:640px){.ov-trend{padding:16px}.ov-seg{width:100%}.ov-seg button{flex:1 1}}.ov-trend__controls{display:flex;flex-wrap:wrap;gap:8px}@media (max-width:640px){.ov-trend__controls{width:100%}}.ov-trend__hint{display:block;margin-top:6px;font-size:.82rem}.ov-head__actions{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.ov-sound{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ov-sound button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border-radius:12px;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.ov-sound__toggle{border:1px solid var(--border);background:var(--surface);color:var(--text-muted)}.ov-sound__toggle:hover{border-color:var(--accent);color:var(--accent)}.ov-sound__toggle--on{border-color:rgba(31,139,96,.45);background:rgba(31,139,96,.08);color:var(--safe)}.ov-sound__mute{border:1px solid var(--danger);background:var(--danger);color:#fff;animation:ov-pulse 1.8s ease-in-out infinite}.ov-sound__mute:hover{filter:brightness(1.08)}.ov-sound button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.ov-sound__hint{flex-basis:100%;color:var(--danger);font-size:.8rem;font-weight:600}@keyframes ov-pulse{0%,to{box-shadow:0 0 0 0 rgba(201,56,50,.45)}50%{box-shadow:0 0 0 6px rgba(201,56,50,0)}}@media (prefers-reduced-motion:reduce){.ov-sound__mute{animation:none}}.ov-skew{margin:0;padding:7px 10px;border:1px solid #e5cc74;border-radius:10px;background:#fff7d9;color:#6d5400;font-size:.8rem;font-weight:600}:root[data-theme=dark] .ov-skew{background:rgba(244,189,106,.1);border-color:rgba(244,189,106,.35);color:#f4bd6a}.ov-trend__note{margin:0;color:var(--text-muted);font-size:.82rem}@media (max-width:640px){.ov-head__actions{width:100%}.ov-head__actions .ov-filter{flex:1 1}}.ov-spark__meta span{white-space:nowrap}.ov-spark__line{stroke-width:1.6}.ov-spark .ov-spark__area{opacity:1;fill-opacity:1}.ov-card__ident{display:flex;flex-wrap:wrap;gap:6px 10px;margin:-8px 0 0;color:var(--text-muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ov-card__spot{display:inline-flex;align-items:center;gap:4px;color:var(--text-main);font-weight:600}.ov-group__head--banner{display:flex;align-items:center;gap:16px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-soft,var(--shadow-card))}.ov-group__cover{width:132px;height:72px;flex:0 0 132px;border-radius:12px}.ov-group__title{flex:1 1;min-width:0}.ov-group__title h2{margin:0;font-size:1.2rem}.ov-group__title p{margin:2px 0 0;color:var(--text-muted);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-group__counts{display:flex;gap:14px;flex-wrap:wrap;color:var(--text-muted);font-size:.88rem}.ov-group__counts b{color:var(--text-main);font-size:1.05rem}.ov-group__count--ok b{color:var(--safe)}.ov-group__count--alarm b{color:var(--danger)}@media (max-width:640px){.ov-group__head--banner{flex-wrap:wrap}.ov-group__cover{width:96px;height:56px;flex-basis:96px}.ov-group__counts{width:100%}}.ov-group__head .hcover>span{color:rgba(255,255,255,.95);font-size:1.4rem}.ov-card__badges{display:flex;flex-wrap:wrap;gap:6px;margin:-6px 0 0}.ov-card__badges .ov-pill{font-size:.7rem;padding:2px 8px}.app-shell .left-sidebar{width:248px;flex:0 0 248px;position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;border-right:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;transition:width .2s ease,flex-basis .2s ease}.app-shell .left-sidebar__head{display:flex;align-items:center;gap:8px;padding:14px 14px 12px;border-bottom:1px solid var(--border)}.app-shell .left-sidebar__brand-logos{flex:1 1;min-width:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.app-shell .left-sidebar__logo-chip{min-width:0;width:100%;min-height:0;height:48px;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:#fff;box-shadow:none;display:flex;align-items:center;justify-content:center}.app-shell .left-sidebar__logo,.app-shell .left-sidebar__logo--ilab,.app-shell .left-sidebar__logo--tenmak{width:100%;height:100%;max-height:36px;object-fit:contain}.app-shell .left-sidebar__toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:36px;height:36px;min-height:0;padding:0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-muted);cursor:pointer}.app-shell .left-sidebar__toggle:hover{background:var(--accent-soft);color:var(--accent)}.app-shell .left-sidebar__toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent)}.app-shell .left-sidebar__toggle-text:empty{display:none}.app-shell .left-sidebar__hint{padding:16px;margin:0}.app-shell .left-sidebar__sections{flex:1 1;min-height:0;overflow-y:auto;display:grid;align-content:start;grid-gap:18px;gap:18px;padding:14px 12px 20px;scrollbar-width:thin}.app-shell .left-sidebar__section,.app-shell .left-sidebar__section--admin{display:grid;grid-gap:4px;gap:4px;padding:14px 0 0;border-top:1px solid var(--border)}.app-shell .left-sidebar__section-title{margin:0 0 4px;padding:0 10px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.app-shell .left-sidebar__nav{display:grid;grid-gap:2px;gap:2px;overflow:visible;padding:0}.app-shell .left-sidebar__link{position:relative;display:flex;align-items:center;gap:11px;min-height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text-main);font-size:.93rem;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.app-shell .left-sidebar__link-label{overflow:hidden;text-overflow:ellipsis}.app-shell .left-sidebar__nav-icon{width:19px;height:19px;flex:0 0 19px;color:var(--text-muted)}.app-shell .left-sidebar__link:hover{background:var(--surface-tint);color:var(--accent)}.app-shell .left-sidebar__link:hover .left-sidebar__nav-icon{color:var(--accent)}.app-shell .left-sidebar__link:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.app-shell .left-sidebar__link--active{background:var(--accent-soft);color:var(--accent);font-weight:700}.app-shell .left-sidebar__link--active .left-sidebar__nav-icon{color:var(--accent)}.app-shell .left-sidebar__link--active:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}@media (min-width:861px){.app-shell.app-shell--sidebar-collapsed .left-sidebar{width:76px;flex-basis:76px;padding:0}.app-shell.app-shell--sidebar-collapsed .left-sidebar__head{flex-direction:column-reverse;padding:12px 10px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__brand-logos{grid-template-columns:1fr;width:100%;gap:6px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__logo-chip{height:40px;padding:4px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__sections{padding-inline:10px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__link{justify-content:center;padding:0}.app-shell.app-shell--sidebar-collapsed .left-sidebar__link--active:before{left:-10px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__section-title{font-size:0;height:0;margin:0;padding:0}}@media (max-width:860px){.app-shell{flex-direction:column}.app-shell .left-sidebar{width:100%;flex:0 0 auto;height:auto;max-height:none;position:-webkit-sticky;position:sticky;top:0;z-index:30;overflow:visible;border-right:0;border-bottom:1px solid var(--border)}.app-shell .left-sidebar__head{padding:10px 14px;border-bottom:0}.app-shell .left-sidebar__brand-logos{display:flex;gap:8px}.app-shell .left-sidebar__logo-chip{width:auto;height:40px;padding:4px 10px}.app-shell .left-sidebar__logo-chip--tenmak{width:64px}.app-shell .left-sidebar__logo-chip--ilab{width:96px}.app-shell .left-sidebar__toggle{width:auto;padding:0 12px;border-color:var(--border);color:var(--text-main);font-weight:700;font-size:.9rem}.app-shell .left-sidebar__sections{display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 64px);overflow-y:auto;padding:12px 14px 18px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 18px 30px rgba(18,65,102,.14)}.app-shell.app-shell--nav-open .left-sidebar__sections{display:grid}.app-shell.app-shell--sidebar-collapsed .left-sidebar__sections{display:none}.app-shell.app-shell--sidebar-collapsed.app-shell--nav-open .left-sidebar__sections{display:grid}.app-shell .left-sidebar__nav{display:grid;overflow:visible}.app-shell .left-sidebar__link{min-height:44px}}.app-shell .notification-bell>button{display:inline-flex;align-items:center;justify-content:center;position:relative;width:40px;height:40px;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-main);cursor:pointer}.app-shell .notification-bell>button:hover{border-color:var(--accent);color:var(--accent)}.app-shell .notification-bell>button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent)}.app-shell .notification-bell>button svg{width:20px;height:20px}.app-shell .notification-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b86e00;color:#fff;font-size:.7rem;font-weight:700;line-height:18px;text-align:center}@media (max-width:860px){.app-shell .top-header{position:static}}:root[data-theme=dark] .app-shell .left-sidebar{background:var(--surface);border-color:var(--border)}:root[data-theme=dark] .app-shell .left-sidebar__head{border-color:var(--border)}:root[data-theme=dark] .app-shell .left-sidebar__logo-chip{background:#f4f8fc;border-color:transparent}:root[data-theme=dark] .app-shell .left-sidebar__section--admin{border-color:var(--border)}:root[data-theme=dark] .app-shell .left-sidebar__link{background:transparent;border:0;color:var(--text-main)}:root[data-theme=dark] .app-shell .left-sidebar__link:hover{background:var(--surface-tint);color:var(--accent)}:root[data-theme=dark] .app-shell .left-sidebar__link--active{background:var(--accent-soft);color:var(--accent)}:root[data-theme=dark] .app-shell .notification-bell>button{background:var(--surface);border-color:var(--border);color:var(--text-main)}@media (max-width:860px){.app-shell .top-header__inner{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px;min-height:0;padding:8px 14px}.app-shell .top-header__brand{display:none}.app-shell .top-header__user{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0}.app-shell .top-header__user-info{display:grid;min-width:0;text-align:left}.app-shell .top-header__user-info span,.app-shell .top-header__user-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.app-shell .top-header__controls{flex:0 0 auto;width:auto;margin:0;display:flex;gap:6px;padding:0;border:0;background:transparent;box-shadow:none}.app-shell .top-header__controls>*{flex:0 0 auto}.app-shell .notification-bell>button{width:36px;height:36px}}.app-shell .left-sidebar__bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-shell .left-sidebar__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media (min-width:861px){.app-shell .left-sidebar{width:280px;flex-basis:280px}.app-shell .left-sidebar__head{flex-direction:column;align-items:stretch;gap:10px;padding:18px 16px 12px}.app-shell .left-sidebar__brand-logos{flex:none;grid-template-columns:.85fr 1.15fr;gap:10px}.app-shell .left-sidebar__logo-chip{height:80px;padding:8px 10px;border-radius:14px;box-shadow:0 4px 14px rgba(18,65,102,.06)}.app-shell .left-sidebar__logo,.app-shell .left-sidebar__logo--ilab,.app-shell .left-sidebar__logo--tenmak{max-height:64px}.app-shell .left-sidebar__logo--ilab{max-height:56px}.app-shell .left-sidebar__sections{gap:20px;padding:16px 14px 24px}.app-shell .left-sidebar__section,.app-shell .left-sidebar__section--admin{gap:4px;padding-top:16px}.app-shell .left-sidebar__section-title{font-size:.76rem;margin-bottom:6px;padding:0 14px}.app-shell .left-sidebar__nav{gap:4px}.app-shell .left-sidebar__link{min-height:48px;gap:14px;padding:0 14px;border-radius:12px;font-size:1.02rem}.app-shell .left-sidebar__nav-icon{width:22px;height:22px;flex-basis:22px}.app-shell .left-sidebar__link--active:before{left:-14px;top:10px;bottom:10px;width:4px}.app-shell.app-shell--sidebar-collapsed .left-sidebar{width:88px;flex-basis:88px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__head{flex-direction:column-reverse;padding:14px 12px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__brand-logos{grid-template-columns:1fr}.app-shell.app-shell--sidebar-collapsed .left-sidebar__logo-chip{height:56px;padding:6px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__logo{max-height:44px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__title{display:none}.app-shell.app-shell--sidebar-collapsed .left-sidebar__bar{justify-content:center}.app-shell.app-shell--sidebar-collapsed .left-sidebar__sections{padding-inline:12px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__link{justify-content:center;padding:0}.app-shell.app-shell--sidebar-collapsed .left-sidebar__link--active:before{left:-12px}}@media (max-width:860px){.app-shell .left-sidebar__head{flex-direction:row;align-items:center}.app-shell .left-sidebar__bar{margin-left:auto}.app-shell .left-sidebar__title{display:none}.app-shell .left-sidebar__logo-chip{height:46px}.app-shell .left-sidebar__logo-chip--tenmak{width:70px}.app-shell .left-sidebar__logo-chip--ilab{width:108px}.app-shell .left-sidebar__link{font-size:1rem}}:root{--font-heading:var(--font-body)}.panel,body,button,h1,h2,h3,h4,input,select,table,textarea{font-family:var(--font-body),system-ui,sans-serif}h1,h2,h3,h4{letter-spacing:-.01em}h1,h2,h3{font-weight:700}button,input,select,textarea{font-size:inherit}.device-scope-filter__clear{border:1px solid var(--border);background:var(--surface);color:var(--accent);border-radius:10px;padding:6px 12px;font-weight:700;cursor:pointer}.device-scope-filter__clear:hover{border-color:var(--accent)}.device-scope-filter__grid select:disabled{opacity:.6;cursor:not-allowed}:where(.panel) :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-main);font:inherit}:where(.panel) :where(textarea){padding:10px 12px}:where(.panel) :where(input,select,textarea):focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}:where(.panel) :where(button:not([class])){min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-tint);color:var(--accent);font:inherit;font-weight:700;cursor:pointer}:where(.panel) :where(button:not([class])):hover:not(:disabled){border-color:var(--accent)}:where(.panel) :where(button:not([class])):disabled{opacity:.55;cursor:not-allowed}.pm{display:grid;grid-gap:16px;gap:16px}.pm__head h2{margin:0}.pm__head p{margin:6px 0 0;color:var(--text-muted);font-size:.9rem;max-width:80ch}.pm__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px 16px;gap:12px 16px}.pm__field{display:grid;grid-gap:6px;gap:6px;min-width:0}.pm__field>span{color:var(--text-muted);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pm__field--wide{grid-column:1/-1}.pm__field input,.pm__field select{width:100%}.pm__hint{margin:0;padding:10px 12px;border-radius:10px;background:var(--surface-tint);color:var(--text-muted);font-size:.88rem}.pm__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pm .pm__primary{min-height:42px;padding:0 18px;border:0;border-radius:12px;background:var(--accent);color:#fff;font:inherit;font-weight:700;cursor:pointer}.pm .pm__primary:disabled{opacity:.5;cursor:not-allowed}.pm__ok{color:var(--safe);font-weight:600}.pm__error{color:var(--danger);font-weight:600}.pm__manage{border-top:1px solid var(--border);padding-top:12px}.pm__manage summary{cursor:pointer;font-weight:700;color:var(--accent)}.pm__manage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px;margin-top:14px}.pm__manage h3{margin:0 0 10px;font-size:1rem}.pm__inline{display:flex;gap:8px;flex-wrap:wrap}.pm__inline input{flex:1 1 160px}.pm__list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.pm__list li{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px}.pm__list li>span{flex:1 1;min-width:0}.pm__list small{color:var(--text-muted)}.pm .pm__danger{color:var(--danger)}.pm__empty{color:var(--text-muted);border-style:dashed!important}@media (max-width:900px){.pm__grid,.pm__manage-grid{grid-template-columns:minmax(0,1fr)}}.pm .pm__danger{min-height:38px;padding:0 14px;border:1px solid rgba(201,56,50,.35);border-radius:10px;background:rgba(201,56,50,.06);font:inherit;font-weight:700;cursor:pointer}.hc-section{display:grid;grid-gap:16px;gap:16px}.hc-section__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hc-section__head h2{margin:0}.hc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:20px;gap:20px}.hc{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-soft,var(--shadow-card))}.hc--inactive{opacity:.7}.hc__cover{position:relative;aspect-ratio:16/7;display:grid;place-items:center;overflow:hidden;background:var(--surface-tint)}.hc__cover img{width:100%;height:100%;object-fit:cover;display:block}.hc__initials{font-size:3rem;font-weight:700;letter-spacing:.04em;color:rgba(255,255,255,.92);text-shadow:0 2px 12px rgba(0,0,0,.15)}.hc__alarm{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:999px;background:var(--danger);color:#fff;font-size:.78rem;font-weight:700}.hc__cover-actions{position:absolute;right:10px;bottom:10px;display:flex;gap:6px;opacity:0;transition:opacity .15s ease}.hc:hover .hc__cover-actions,.hc__cover-actions:focus-within{opacity:1}@media (hover:none){.hc__cover-actions{opacity:1}}.hc .hc__chip{min-height:32px;padding:0 12px;border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#173552;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15)}.hc .hc__chip:disabled{opacity:.7;cursor:progress}.hc__body{display:grid;grid-gap:12px;gap:12px;padding:16px 18px 18px}.hc__title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.hc__title h3{margin:0;font-size:1.12rem;line-height:1.3}.hc__pill{flex-shrink:0;padding:2px 8px;border-radius:999px;background:var(--surface-tint);font-size:.74rem;font-weight:700}.hc__meta,.hc__pill{color:var(--text-muted)}.hc__meta{margin:-6px 0 0;font-size:.85rem}.hc__stats{display:flex;gap:14px;flex-wrap:wrap;font-size:.88rem;color:var(--text-muted)}.hc__stats b{color:var(--text-main);font-size:1.05rem}.hc__stat--ok b{color:var(--safe)}.hc__stat--alarm b{color:var(--danger)}.hc__rooms{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.hc__rooms>li{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-tint)}.hc__room{display:block;margin-bottom:6px;color:var(--text-muted);font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.hc__rooms ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.hc__rooms ul li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.92rem}.hc__rooms ul a{color:var(--text-main);font-weight:600;text-decoration:none}.hc__rooms ul a:hover{color:var(--accent);text-decoration:underline}.hc__rooms small{color:var(--text-muted);font-size:.8rem}.hc__dot{width:8px;height:8px;border-radius:50%;background:#8aa0b6;flex-shrink:0}.hc__dot--normal{background:var(--safe)}.hc__dot--alarm{background:var(--danger);box-shadow:0 0 0 3px rgba(201,56,50,.18)}.hc__empty{margin:0;padding:12px;border:1px dashed var(--border);border-radius:12px;color:var(--text-muted);font-size:.88rem;text-align:center}.hc__error{margin:0;color:var(--danger);font-size:.85rem;font-weight:600}.hc__foot{justify-content:flex-end}.hc__foot a{color:var(--accent);font-weight:700;text-decoration:none}.hc-section--single{max-width:720px}.top-header__user-link{text-decoration:none;color:inherit;border-radius:10px;padding:4px 8px}.top-header__user-link:hover{background:var(--surface-tint)}.top-header__user-link span{white-space:nowrap}.account-pw{max-width:560px;display:grid;grid-gap:10px;gap:10px}.account-pw h1{margin:0}.account-pw__who{margin:0;color:var(--text-muted)}.account-pw__form{display:grid;grid-gap:14px;gap:14px;margin-top:8px}.account-pw__form label{display:grid;grid-gap:6px;gap:6px}.account-pw__form label span{color:var(--text-muted);font-size:.82rem;font-weight:700}.account-pw__hint{margin:0;color:var(--text-muted);font-size:.85rem}.account-pw__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.account-pw .pm__primary{min-height:42px;padding:0 18px;border:0;border-radius:12px;background:var(--accent);color:#fff;font:inherit;font-weight:700;cursor:pointer}.pw-mode{display:grid;grid-gap:8px;gap:8px;margin:0 0 8px;padding:0;border:0}.pw-mode legend{margin-bottom:6px;font-weight:700}.pw-mode label{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;cursor:pointer}.pw-mode label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.pw-mode input{margin-top:4px}.pw-mode span{display:grid;grid-gap:2px;gap:2px}.pw-mode small{color:var(--text-muted)}.setup-notice{display:grid;grid-gap:8px;gap:8px;border-left:4px solid var(--safe)}.setup-notice--warn{border-left-color:#d18620}.setup-notice h2,.setup-notice p{margin:0}.setup-notice__link{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.setup-notice__link code{flex:1 1 320px;padding:8px 10px;border-radius:10px;background:var(--surface-tint);overflow-wrap:anywhere;font-size:.85rem}.setup-notice__hint{color:var(--text-muted);font-size:.85rem}.setup-notice .setup-notice__close{justify-self:start;min-height:36px;padding:0 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font:inherit;font-weight:700;cursor:pointer}.admin-users-pending{display:block;margin-top:4px;color:#a26a12;font-size:.76rem;font-weight:600}.hc__body{flex:1 1;display:flex;flex-direction:column}.hc__foot{margin-top:auto}.device-scope-filter__grid label{min-width:0}.device-scope-filter__grid select{width:100%;min-width:0;text-overflow:ellipsis}@media (max-width:1100px){.device-scope-filter--compact .device-scope-filter__grid,.device-scope-filter__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.device-scope-filter--compact .device-scope-filter__grid,.device-scope-filter__grid{grid-template-columns:minmax(0,1fr)}}.admin-users-table-tools a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--accent);border-radius:10px;color:var(--accent);font-weight:700;text-decoration:none}.admin-users-table-tools a:hover{background:var(--accent-soft)}.places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px;margin-top:12px}.places h3{margin:0 0 10px;font-size:1rem}.places__col{min-width:0}.places__inline{display:flex;gap:8px;flex-wrap:wrap}.places__inline input,.places__inline select{flex:1 1 150px;min-width:0}.places .places__btn{min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-tint);color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.places .places__btn:disabled{opacity:.5;cursor:not-allowed}.places .places__btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.places .places__btn--danger{color:var(--danger);border-color:rgba(201,56,50,.35);background:rgba(201,56,50,.06)}.places__list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.places__list li{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px}.places__list li>span{flex:1 1;min-width:0}.places__empty,.places__list small{color:var(--text-muted)}.places__empty{border-style:dashed!important}.places__error{grid-column:1/-1;margin:0;color:var(--danger);font-weight:600}@media (max-width:900px){.places{grid-template-columns:minmax(0,1fr)}}.hc .places{grid-template-columns:minmax(0,1fr)}.hc__places{border-top:1px solid var(--border);padding-top:4px}.hc__foot{display:flex;justify-content:space-between;align-items:center;gap:12px}.hc .hc__link-btn{border:0;background:none;padding:0;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.hc__foot>a:only-child{margin-left:auto}.hcover{display:grid;place-items:center;overflow:hidden;background:var(--surface-tint);color:rgba(255,255,255,.95);font-weight:700;letter-spacing:.04em}.hcover img{width:100%;height:100%;object-fit:cover;display:block}.ov-group__cover span{font-size:1.4rem}.places input,.places select{min-height:38px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-main);font:inherit}.places input:focus-visible,.places select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.places input:disabled,.places select:disabled{opacity:.6}html{font-size:112.5%}@media (max-width:640px){html{font-size:106.25%}}@media (min-width:861px){.app-shell .left-sidebar{width:304px;flex-basis:304px}.app-shell .left-sidebar__head{padding:20px 18px 14px;gap:12px}.app-shell .left-sidebar__brand-logos{gap:12px}.app-shell .left-sidebar__logo-chip{height:104px;padding:10px 12px;border-radius:16px}.app-shell .left-sidebar__logo,.app-shell .left-sidebar__logo--tenmak{max-height:84px}.app-shell .left-sidebar__logo--ilab{max-height:70px}.app-shell .left-sidebar__title{font-size:.8rem}.app-shell .left-sidebar__sections{padding:18px 16px 28px;gap:22px}.app-shell .left-sidebar__link{min-height:52px;gap:15px;padding:0 16px;font-size:1.04rem}.app-shell .left-sidebar__nav-icon{width:24px;height:24px;flex-basis:24px}.app-shell .left-sidebar__link--active:before{left:-16px}.app-shell .left-sidebar__section-title{font-size:.8rem;padding:0 16px}.app-shell.app-shell--sidebar-collapsed .left-sidebar{width:92px;flex-basis:92px}.app-shell.app-shell--sidebar-collapsed .left-sidebar__logo-chip{height:60px}}.app-shell .top-header__user-info strong{font-size:.95rem}.app-shell .top-header__user-info span{font-size:.82rem}.ap{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px}.ap__backdrop{position:absolute;inset:0;background:rgba(120,10,10,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ap-flash 1.6s ease-in-out infinite}@keyframes ap-flash{0%,to{background:rgba(120,10,10,.42)}50%{background:rgba(170,20,20,.58)}}.ap__panel{position:relative;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:22px;background:var(--surface);border:3px solid #c93832;box-shadow:0 30px 80px rgba(80,0,0,.45)}.ap__head{display:flex;align-items:center;gap:16px;padding:22px 24px;background:#c93832;color:#fff}.ap__siren{width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.8);animation:ap-pulse 1.2s ease-out infinite}@keyframes ap-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.8)}to{box-shadow:0 0 0 18px rgba(255,255,255,0)}}.ap__eyebrow{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.12em;opacity:.9}.ap__head h2{margin:4px 0 0;font-size:1.6rem;color:#fff}.ap__place{margin:4px 0 0;font-size:.92rem;opacity:.92}.ap__body{display:grid;grid-gap:14px;gap:14px;padding:20px 24px 8px}.ap__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin:0}.ap__fact{padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-tint)}.ap__fact--big{grid-column:1/-1;border-color:rgba(201,56,50,.4);background:rgba(201,56,50,.07)}.ap__fact dt{color:var(--text-muted);font-size:.8rem;font-weight:700}.ap__fact dd{margin:4px 0 0;font-weight:700;font-size:1.1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ap__fact--big dd{font-size:2.4rem;color:#c93832;line-height:1.1}.ap__fact--big small{font-size:1rem;color:var(--text-muted);font-weight:600}.ap__warn{margin:0;padding:12px 14px;border-radius:12px;background:#c93832;color:#fff;font-weight:700;text-align:center}.ap__hint,.ap__more{margin:0;color:var(--text-muted);font-size:.9rem}.ap__hint{color:#a26a12;font-weight:600}.ap__actions{display:flex;flex-wrap:wrap;gap:10px;padding:16px 24px 22px}.ap .ap__btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-main);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.ap .ap__btn--close{background:#c93832;border-color:#c93832;color:#fff;min-width:120px}.ap .ap__btn--ack{border-color:#c93832;color:#c93832}.ap .ap__btn--link{color:var(--accent)}.ap .ap__btn--mute{margin-left:auto;color:var(--text-muted)}.ap .ap__btn:disabled{opacity:.6;cursor:progress}.ap .ap__btn:focus-visible{outline:3px solid #ffb4b0;outline-offset:2px}@media (prefers-reduced-motion:reduce){.ap__backdrop,.ap__siren{animation:none}}@media (max-width:520px){.ap__facts{grid-template-columns:minmax(0,1fr)}.ap .ap__btn{flex:1 1 auto}.ap .ap__btn--mute{margin-left:0}}:root{--notice-critical:#c93832;--notice-critical-bg:#fff0ee;--notice-warning:#b86e00;--notice-warning-bg:#fff6e6;--notice-info:#5d6f85;--notice-info-bg:#f2f6fa;--notice-resolved:#1f8b60;--notice-resolved-bg:#e9f8f0}:root[data-theme=dark]{--notice-critical:#ff8a84;--notice-critical-bg:rgba(255,127,121,.14);--notice-warning:#f0b45a;--notice-warning-bg:rgba(240,180,90,.14);--notice-info:#a9bccf;--notice-info-bg:rgba(169,188,207,.12);--notice-resolved:#4cc893;--notice-resolved-bg:rgba(76,200,147,.13)}.corp-button.corp-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-weight:600;line-height:1.3;cursor:pointer;color:var(--text-main);background:var(--surface);box-shadow:none}.corp-button.corp-button--primary,.corp-button[aria-pressed=true],.corp-button[aria-selected=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.corp-button.corp-button--danger{background:var(--notice-critical-bg);color:var(--notice-critical);border-color:var(--notice-critical)}.corp-button:hover:not(:disabled){filter:brightness(.96)}.corp-button:disabled{opacity:.5;cursor:not-allowed}.corp-button:focus-visible,.project-select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.project-select.project-select{min-height:44px;font:inherit;color:var(--text-main);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 12px;max-width:100%}.corp-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;border:1px solid;font-size:.8rem;font-weight:600;background:var(--notice-info-bg);color:var(--notice-info)}.corp-badge--critical,.device-fleet-pill--alarm,.device-status-badge--alarm,.ov-pill--alarm{color:var(--notice-critical);background:var(--notice-critical-bg);border-color:var(--notice-critical)}.corp-badge--warning,.device-fleet-pill--waiting,.device-status-badge--waiting{color:var(--notice-warning);background:var(--notice-warning-bg);border-color:var(--notice-warning)}.corp-badge--resolved,.device-fleet-pill--normal,.device-status-badge--normal,.device-status-badge--online,.device-status-badge--synced,.ov-pill--normal{color:var(--notice-resolved);background:var(--notice-resolved-bg);border-color:var(--notice-resolved)}.corp-badge--info,.device-fleet-pill--unknown,.device-status-badge--offline,.device-status-badge--unknown,.ov-pill--offline,.ov-pill--unknown{color:var(--notice-info);background:var(--notice-info-bg);border-color:var(--notice-info)}.panel{padding:24px}.panel h1,.panel h2,.panel h3{margin-top:0;line-height:1.3}.dashboard-main,.settings-console-grid{gap:16px}.app-shell__content,.dashboard-main,.panel{min-width:0}.admin-users-table-wrap,.device-fleet-table-wrap,.history-table-wrap{max-width:100%;overflow-x:auto}.app-shell .left-sidebar{overflow-x:hidden}.institution-logos{display:flex;align-items:center;gap:16px;flex-shrink:0}.institution-logos img{height:44px;width:auto;max-width:130px;object-fit:contain}.institution-logos>span{width:1px;height:36px;background:var(--border);flex-shrink:0}.institution-logos--sidebar{width:100%;justify-content:center;padding:8px;background:#fff;border-radius:var(--radius-sm)}.institution-logos--sidebar img{height:46px;max-width:130px}.institution-logos--header img{height:40px}.institution-logos--login{justify-content:center;padding:16px 24px;background:#fff;border-radius:16px;margin:0 auto 24px;width:-moz-fit-content;width:fit-content}.institution-logos--login img{height:64px;max-width:220px}.app-shell .top-header__label{font-size:14px}.app-shell .top-header__brand{gap:16px}.app-shell .top-header__user-info span,.app-shell .top-header__user-info strong{font-size:14px}.app-footer{align-items:center;justify-content:space-between;padding:20px 24px;border-top:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:14px}.app-footer,.app-footer nav{display:flex;flex-wrap:wrap;gap:16px}.app-footer a,.placement-hint a{color:var(--accent);text-underline-offset:3px}.placement-hint{font-size:.9rem;color:var(--text-muted);margin:8px 0}.legal-page{max-width:1000px;margin:24px auto}.legal-content section{margin:24px 0}.legal-content p{line-height:1.65}.governance-dialog{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(8,20,35,.65)}.governance-dialog__panel{width:min(760px,100%);max-height:90vh;overflow:auto;background:var(--surface)}.corp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}@media(max-width:1100px){.app-shell .top-header__label{display:none}.institution-logos--header img{height:40px;max-width:110px}}@media(max-width:860px){.app-shell .top-header__brand{display:flex}.institution-logos--header{gap:8px}.institution-logos--header img{height:40px;max-width:80px}.app-shell .top-header__inner{flex-wrap:wrap}.panel{padding:16px}.institution-logos--sidebar img{height:44px}.institution-logos--login img{height:56px;max-width:160px}.governance-dialog{padding:16px}}@media(min-width:861px){.app-shell.app-shell--sidebar-collapsed .institution-logos--sidebar{flex-direction:column;gap:8px;padding:4px}.app-shell.app-shell--sidebar-collapsed .institution-logos--sidebar img{max-width:60px}.app-shell.app-shell--sidebar-collapsed .institution-logos--sidebar>span{height:1px;width:40px}}.institution-logos--header{background:#fff;padding:4px 8px;border-radius:var(--radius-sm)}.device-fleet-pill--offline,.device-status-badge--offline,.ov-pill--offline,.ov-pill--waiting{color:var(--notice-warning);background:var(--notice-warning-bg);border-color:var(--notice-warning)}.device-fleet-pill--online{color:var(--notice-resolved);background:var(--notice-resolved-bg);border-color:var(--notice-resolved)}.dashboard-telemetry-row:has(>.device-info-panel:only-child){grid-template-columns:1fr}.ov-device-with-placement{display:flex;flex-direction:column;min-width:0}.ov-device-with-placement .ov-card{flex:1 1}.ov-device-with-placement .placement-hint{padding:0 12px}.top-header__theme-toggle.corp-button{padding:0;width:40px;min-width:40px}.top-header__theme-icon{flex-shrink:0}.notification-bell>.corp-button{padding:0}.left-sidebar__toggle.corp-button{padding:8px}@media(max-width:860px){.institution-logos--sidebar{width:auto;flex:1 1;min-width:0;justify-content:flex-start}.app-shell .left-sidebar__bar{flex:0 0 auto;margin-left:0}.app-shell .left-sidebar__toggle.corp-button{width:auto}}