@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/Manrope-Variable.ttf)format("truetype")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#172033;font-synthesis:none;font-optical-sizing:auto;text-rendering:optimizelegibility;--ink:#172033;--muted:#687083;--subtle:#8f96a6;--line:#e1e5ed;--panel:#fff;--canvas:#f3f5fa;--accent:#4f5fe7;--accent-dark:#3d4ccc;--accent-soft:#ecefff;--success:#248a3d;--success-soft:#edf8ef;--attention:#9a6700;--attention-soft:#fff8e6;--danger:#c9342d;--danger-dark:#a72c26;--danger-soft:#fff0ef;background:#f3f5fa;font-family:Manrope,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box;letter-spacing:0}html{background:var(--canvas);scrollbar-gutter:stable;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;color:var(--ink);background:var(--canvas);margin:0}button,input,select{font:inherit}button{border:0}button,input,select{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #4f5fe73d}button:active:not(:disabled){transform:scale(.985)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--muted);text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:700;line-height:1.2}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand-mark{background:#1d1d1f;border-radius:8px;place-items:center;width:122px;height:46px;display:grid}.brand-mark img{width:96px;height:auto;display:block}.brand-mark.small{border-radius:7px;width:96px;height:36px}.brand-mark.small img{width:78px}.primary-button,.secondary-button,.danger-button,.revoke-button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.primary-button{color:#fff;border:1px solid var(--accent);background:var(--accent);box-shadow:0 1px 1px #00000014}.primary-button:hover:not(:disabled){border-color:var(--accent-dark);background:var(--accent-dark);box-shadow:0 4px 12px #4f5fe733}.secondary-button{color:var(--ink);background:#fff;border:1px solid #c7c7cc}.secondary-button:hover:not(:disabled){background:#fbfbfd;border-color:#a1a1a6}.danger-button{color:#fff;border:1px solid var(--danger);background:var(--danger)}.danger-button:hover:not(:disabled){border-color:var(--danger-dark);background:var(--danger-dark);box-shadow:0 4px 12px #c9342d2e}.revoke-button{min-height:44px;color:var(--danger);white-space:nowrap;background:#fff;border:1px solid #e6b9b5}.revoke-button:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.revoke-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.5}.icon-button{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex:none;place-items:center;padding:0;display:inline-grid}.icon-button:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:#cfd5f8}.auth-layout{background:var(--canvas);min-height:100vh;padding:36px 28px 56px;display:block}.auth-context{width:min(760px,100%);min-height:auto;color:var(--ink);text-align:center;background:0 0;margin:0 auto;padding:0;display:block}.auth-context .brand-mark{margin:0 auto}.auth-context .eyebrow{color:var(--muted);margin:22px 0 8px}.auth-context h1{max-width:none;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(40px,4.6vw,54px);font-weight:700;line-height:1.05}.auth-intro{max-width:560px;color:var(--muted);margin:14px auto 0;font-size:17px;line-height:1.55}.security-note{max-width:540px;color:var(--muted);border:0;justify-content:center;gap:11px;margin:18px auto 0;padding:0;font-size:13px;line-height:1.55;display:flex}.security-note svg{color:var(--accent);flex:none}.auth-form{border-top:1px solid var(--line);align-content:start;gap:12px;width:min(480px,100%);margin:28px auto 0;padding:22px 0 0;display:grid}.auth-form h2{text-wrap:balance;margin:0 0 14px;font-size:28px;font-weight:650;line-height:1.12}.auth-form label{color:var(--ink);font-size:14px;font-weight:600}.auth-form input{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #c7c7cc;border-radius:9px;padding:0 13px}.auth-form input:hover{border-color:#a1a1a6}.auth-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #4f5fe724}.auth-form input::placeholder{color:#86868b}.auth-error{color:var(--danger);background:var(--danger-soft);border:1px solid #f0beb9;border-radius:9px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45}.auth-submit{width:100%;min-height:48px;margin-top:10px}.admin-app{background:#f3f5fa;min-height:100vh}.admin-shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.admin-workspace{min-width:0}.app-sidebar{z-index:30;overscroll-behavior:contain;scrollbar-width:thin;background:#fff;border-right:1px solid #e5e8f0;flex-direction:column;min-width:0;height:100vh;padding:18px 12px 14px;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar-brand{border-bottom:1px solid #edf0f5;align-items:center;min-height:44px;padding:0 10px 14px;display:flex}.sidebar-brand .brand-mark.small,.mobile-header-brand .brand-mark.small{background:0 0;border-radius:0;place-items:start;width:106px;height:auto}.sidebar-brand .brand-mark.small img,.mobile-header-brand .brand-mark.small img{filter:brightness(0);width:106px}.sidebar-primary{border-bottom:1px solid #edf0f5;gap:6px;padding:18px 0;display:grid}.sidebar-link{color:#646b7a;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;width:100%;min-height:44px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.sidebar-link:hover:not(:disabled){color:#3141c8;background:#f1f3ff}.sidebar-link.active{color:#3141c8;background:#ecefff}.sidebar-link svg{flex:none}.sidebar-workflow{gap:4px;margin-top:14px;display:grid}.sidebar-workflow>span{color:#9298a7;text-transform:uppercase;padding:0 12px 7px;font-size:10px;font-weight:800}.sidebar-projects-preview{border-top:1px solid #edf0f5;gap:9px;margin-top:18px;padding-top:16px;display:grid}.sidebar-projects-heading{color:#9298a7;text-transform:uppercase;justify-content:space-between;align-items:center;padding:0 10px;font-size:10px;font-weight:800;display:flex}.sidebar-projects-heading strong{min-width:20px;height:20px;color:var(--accent);background:var(--accent-soft);border-radius:999px;place-items:center;font-size:10px;font-weight:750;display:grid}.sidebar-project-quick-list{gap:3px;display:grid}.sidebar-project-quick-link{min-width:0;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:7px 8px;display:flex}.sidebar-project-quick-link:hover{color:var(--ink);background:#f6f7fb}.sidebar-project-quick-link.active{color:var(--accent);background:var(--accent-soft)}.sidebar-project-quick-link.active strong{color:var(--accent)}.sidebar-project-quick-link>span:last-child{min-width:0}.sidebar-project-quick-link strong,.sidebar-project-quick-link small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-project-quick-link strong{color:var(--ink);font-size:12px;font-weight:650}.sidebar-project-quick-link small{color:#9aa0ad;margin-top:2px;font-size:9px}.sidebar-projects-all{min-height:34px;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:11px;font-weight:650}.sidebar-projects-all:hover{background:var(--accent-soft)}.app-header{z-index:20;height:calc(68px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(30px, env(safe-area-inset-right,0px)) 0 max(30px, env(safe-area-inset-left,0px));-webkit-backdrop-filter:saturate(170%)blur(18px);backdrop-filter:saturate(170%)blur(18px);background:#ffffffeb;border-bottom:1px solid #e5e8f0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.mobile-header-brand{display:none}.header-context{min-width:0}.header-context span,.header-context strong,.header-context small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.header-context span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.header-context strong{margin-top:2px;font-size:15px;font-weight:700}.header-context small{color:var(--muted);margin-top:2px;font-size:11px}.header-nav,.header-actions,.operator,.navigation-heading,.section-heading,.device-identity,.activation-identity{align-items:center;display:flex}.header-nav{flex:none;gap:4px;display:none}.header-nav-link{min-height:44px;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.header-nav-link:hover{color:var(--ink)}.header-nav-link.active{color:var(--accent);border-bottom-color:var(--accent)}.header-actions{justify-content:flex-end;gap:6px}.header-workspace-action{white-space:nowrap;min-height:40px;margin-right:10px;padding-inline:15px}.operator{border-right:1px solid var(--line);gap:9px;margin-right:10px;padding-right:16px}.operator>span{display:block}.operator strong{font-size:13px;font-weight:600;display:block}.operator small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.operator svg{color:var(--accent)}.header-logout{display:inline-flex}.project-navigation{min-height:0;padding:16px 0 0;overflow:hidden}.navigation-heading{color:var(--ink);justify-content:space-between;padding:0 10px 9px;font-size:12px;font-weight:700}.navigation-heading svg{color:var(--accent)}.project-search{color:#8a91a0;background:#f8f9fc;border:1px solid #e2e6ef;border-radius:8px;align-items:center;gap:8px;min-height:40px;margin:0 4px 10px;padding:0 10px;display:flex}.project-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:12px}.project-search input::placeholder{color:#9da3b1}.project-list{gap:4px;max-height:176px;padding:0 4px;display:grid;overflow-y:auto}.project-link{width:100%;min-height:46px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:0 9px;display:flex}.project-link:hover:not(:disabled){color:var(--ink);background:#f6f7fb}.project-link.active{color:#3141c8;box-shadow:none;background:#ecefff}.project-monogram{color:#6f7788;background:#fff;border:1px solid #dfe3ec;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;font-size:9px;font-weight:800;display:grid}.project-link.active .project-monogram{color:var(--accent);background:var(--accent-soft);border-color:#cfd5f8}.project-link>span:last-child{min-width:0}.project-link strong,.project-link small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-link strong{font-size:13px;font-weight:600}.project-link small{color:#9aa0ad;margin-top:2px;font-size:10px}.project-search-empty{color:var(--muted);margin:10px;font-size:12px}.scope-note{color:#9298a7;margin:9px 10px 0;font-size:10px;line-height:1.45}.mobile-project-select,.mobile-project-navigation{display:none}.admin-main{width:min(1440px,100%);min-width:0;margin:0 auto;padding:28px clamp(24px,3vw,44px)}.section-tabs{scroll-snap-type:x proximity;scrollbar-width:none;gap:8px;margin:0 0 22px;padding-right:28px;display:none;overflow-x:auto}.section-tabs::-webkit-scrollbar{display:none}.section-tab{min-height:44px;color:var(--muted);white-space:nowrap;scroll-snap-align:start;cursor:pointer;background:#fff;border:1px solid #e1e5ed;border-radius:8px;flex:none;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.section-tab:hover{color:var(--ink)}.section-tab.active{color:#fff;border-color:var(--accent);background:var(--accent)}.workspace-view[hidden]{display:none!important}.workspace-view>.content-section+.content-section{margin-top:14px}.workspace-view>.loading-state,.workspace-view>.unavailable-state{background:#fff;border:1px solid #e3e7ef;border-radius:8px;box-shadow:0 8px 28px #2c375c0d}.projects-home{min-width:0}.projects-home-summary{background:#ffffff7a;border-block:1px solid #e1e5ed;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.projects-home-summary>div{min-width:0;padding:12px 16px}.projects-home-summary>div+div{border-left:1px solid #e1e5ed}.projects-home-summary strong,.projects-home-summary span{display:block}.projects-home-summary strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:21px;font-weight:750}.projects-home-summary span{color:var(--muted);margin-top:3px;font-size:12px}.projects-home-toolbar{grid-template-columns:minmax(280px,1fr) 210px;align-items:end;gap:12px;margin-top:16px;display:grid}.projects-home-search,.projects-home-sort{color:var(--ink);gap:7px;font-size:12px;font-weight:650;display:grid}.projects-home-search>div{min-height:46px;color:var(--muted);background:#fff;border:1px solid #dce1ea;border-radius:8px;align-items:center;gap:9px;padding:0 13px;display:flex}.projects-home-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:14px}.projects-home-search input::placeholder{color:#9298a7}.projects-home-sort select{min-height:46px;color:var(--ink);background:#fff;border:1px solid #dce1ea;border-radius:8px;padding:0 12px;font-size:14px}.projects-catalog-heading{justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.projects-catalog-heading h2{margin:0;font-size:19px;font-weight:700}.projects-catalog-heading span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.projects-create-button{white-space:nowrap;min-height:40px;padding-inline:13px}.project-widget-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:12px;display:grid}.project-widget{min-width:0;min-height:248px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe4ec;border-radius:8px;flex-direction:column;padding:16px;display:flex;box-shadow:0 7px 24px #2c375c0d}.project-widget-draft{cursor:pointer;background:#fbfcfe;border-style:dashed}.project-widget-draft:hover{border-color:#bdc6e8;transform:translateY(-2px);box-shadow:0 13px 30px #2c375c17}.project-widget-status.draft{color:#8a5a18}.project-widget-status.draft>span{background:#dca93e;box-shadow:0 0 0 3px #fff4da}.project-draft-form{background:#fff;border:1px solid #dfe4ec;border-radius:12px;margin-top:18px;padding:24px 26px 20px;box-shadow:0 12px 30px #222d4d0f}.project-draft-form-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.project-draft-form-heading-copy{min-width:0}.project-draft-form-heading-actions{color:var(--accent);align-items:center;gap:12px;display:flex}.project-draft-form-heading-actions .icon-button{width:38px;height:38px}.project-draft-form-heading-actions>svg{width:20px;height:20px}.project-draft-form-heading h2{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:720}.project-draft-form-body{grid-template-columns:minmax(0,1.22fr) minmax(270px,.78fr);gap:26px;margin-top:24px;display:grid}.project-draft-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:18px 14px;display:grid}.project-draft-field{gap:7px;min-width:0;display:grid}.project-draft-field-wide{grid-column:1/-1}.project-draft-field label{color:var(--ink);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;font-weight:700;display:flex}.project-draft-field label span{color:var(--muted);font-size:10px;font-weight:600}.project-draft-field input{width:100%;min-width:0;min-height:46px;color:var(--ink);background:#fff;border:1px solid #cfd5df;border-radius:8px;padding:0 13px;font-size:14px}.project-draft-field input:hover:not(:disabled){border-color:#aab3c3}.project-draft-field input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px #4f5fe724}.project-draft-field input::placeholder{color:#969dac}.project-draft-preview{background:#f8faff;border:1px solid #e1e5ed;border-radius:10px;min-width:0;padding:17px 18px 16px}.project-draft-preview-topline{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:10px;font-weight:650;display:flex}.project-draft-preview-topline strong{color:#8a5a18;background:#fff5dc;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:750}.project-draft-preview-identity{align-items:center;gap:11px;min-width:0;margin-top:20px;display:flex}.project-draft-preview-monogram{width:42px;height:42px;color:var(--accent-dark);background:#edf0ff;border:1px solid #d6dcff;border-radius:10px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.project-draft-preview-identity>div{min-width:0}.project-draft-preview-identity strong,.project-draft-preview-identity small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-draft-preview-identity strong{color:var(--ink);font-size:14px;font-weight:720}.project-draft-preview-identity small{color:var(--muted);margin-top:4px;font-size:10px}.project-draft-preview-meta{border-top:1px solid #e3e7ef;gap:12px;margin:19px 0 0;padding-top:16px;display:grid}.project-draft-preview-meta dt{color:var(--muted);font-size:10px;font-weight:650}.project-draft-preview-meta dd{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:12px;font-weight:650;overflow:hidden}.project-draft-next{border-top:1px solid #e3e7ef;margin-top:18px;padding-top:15px}.project-draft-next .eyebrow{margin-bottom:10px;font-size:9px}.project-draft-next ol{gap:9px;margin:0;padding:0;list-style:none;display:grid}.project-draft-next li{color:var(--ink);align-items:center;gap:9px;font-size:11px;font-weight:650;display:flex}.project-draft-next li span{width:24px;height:24px;color:var(--accent-dark);background:#fff;border:1px solid #d6dcff;border-radius:7px;flex:none;place-items:center;font-size:9px;font-weight:800;display:grid}.project-draft-form-footer{border-top:1px solid #e7eaf0;justify-content:space-between;align-items:center;gap:18px;min-height:48px;margin-top:24px;padding-top:18px;display:flex}.project-draft-form-footer-actions{align-items:center;gap:9px;display:flex}.project-draft-form-footer-actions .primary-button{min-width:174px}.form-error{color:#a33a3a;margin:0;font-size:12px}.project-widget:hover{border-color:#bdc6e8;transform:translateY(-2px);box-shadow:0 13px 30px #2c375c17}.project-widget-topline{min-height:24px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:650;display:flex}.project-widget-status{color:#26744b;align-items:center;gap:7px;display:inline-flex}.project-widget-status>span{background:#2b9a63;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 3px #e6f6ed}.project-widget-title{border-bottom:1px solid #edf0f5;align-items:center;gap:10px;min-width:0;margin-top:12px;padding-bottom:12px;display:flex}.project-widget-title>span:last-child{min-width:0}.project-widget-title strong,.project-widget-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-widget-title strong{font-size:17px;font-weight:700}.project-widget-title small{color:var(--muted);margin-top:4px;font-size:11px}.project-widget-monogram{color:#3f50d2;background:#eef1ff;border:1px solid #d8ddf7;border-radius:8px;flex:none;place-items:center;width:40px;height:40px;font-size:11px;font-weight:800;display:grid}.project-widget-details{gap:9px;margin-top:12px;display:grid}.project-widget-details>span{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;min-width:0;display:grid}.project-widget-details svg{color:#778091;margin-top:2px}.project-widget-details small,.project-widget-details strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-widget-details small{color:var(--muted);font-size:10px}.project-widget-details strong{color:var(--ink);margin-top:2px;font-size:12px;font-weight:650}.project-widget-action{color:var(--accent);justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:12px;font-size:12px;font-weight:700;display:flex}.projects-home-empty{min-height:260px;color:var(--muted);text-align:center;background:#fff;border:1px dashed #cfd5df;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;margin-top:14px;display:flex}.projects-home-empty strong{color:var(--ink);margin-top:12px;font-size:15px}.projects-home-empty span{margin-top:5px;font-size:13px}.draft-onboarding-panel{background:#fff;border:1px solid #dfe4ec;border-radius:8px;padding:26px;box-shadow:0 8px 28px #2c375c0d}.draft-onboarding-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.draft-onboarding-heading h2{margin:3px 0 7px;font-size:24px}.draft-onboarding-description{max-width:780px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}.draft-onboarding-meta{background:#e4e8ef;border:1px solid #e4e8ef;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:24px 0 0;display:grid}.draft-onboarding-meta>div{background:#fbfcfe;min-width:0;padding:13px 15px}.draft-onboarding-meta dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700}.draft-onboarding-meta dd{overflow-wrap:anywhere;color:var(--ink);margin:5px 0 0;font-size:13px;font-weight:650}.draft-candidate-upload{background:#fbfcfe;border:1px solid #dfe4ec;border-radius:8px;margin-top:18px;padding:16px}.draft-candidate-upload-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.draft-candidate-upload-heading strong,.draft-candidate-upload-heading span{display:block}.draft-candidate-upload-heading strong{color:var(--ink);font-size:14px}.draft-candidate-upload-heading span{max-width:720px;color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.draft-candidate-upload-heading>svg{color:var(--accent);flex:none}.draft-candidate-file{color:var(--muted);gap:7px;margin-top:14px;font-size:11px;font-weight:700;display:grid}.draft-candidate-file input{width:100%;min-height:42px;color:var(--ink);background:#fff;border:1px solid #dce1ea;border-radius:7px;padding:9px 10px;font-size:13px}.draft-candidate-actions{flex-wrap:wrap;gap:9px;margin-top:12px;display:flex}.draft-candidate-message{color:var(--muted);margin:10px 0 0;font-size:12px}.draft-candidate-message.error{color:var(--danger)}.draft-candidate-message.success{color:var(--success)}.draft-candidate-message.blocked{color:#8a5a18}.draft-candidate-result{background:#f5f8ff;border:1px solid #d9e2f5;border-radius:8px;margin-top:14px;padding:15px}.draft-candidate-result.blocked{background:#fff8e8;border-color:#ead8a9}.draft-candidate-result-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.draft-candidate-result-heading strong,.draft-candidate-result-heading span{display:block}.draft-candidate-result-heading strong{color:var(--ink);font-size:13px}.draft-candidate-result-heading>div>span{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:11px}.draft-candidate-summary{background:#d9e2f5;border:1px solid #d9e2f5;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:14px 0 0;display:grid}.draft-candidate-result.blocked .draft-candidate-summary{background:#ead8a9;border-color:#ead8a9}.draft-candidate-summary>div{background:#ffffffb8;padding:10px 12px}.draft-candidate-summary dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700}.draft-candidate-summary dd{color:var(--ink);margin:3px 0 0;font-size:16px;font-weight:750}.draft-candidate-diagnostics{color:var(--muted);margin-top:14px;font-size:12px}.draft-candidate-diagnostics strong{color:var(--ink);font-size:11px}.draft-candidate-diagnostics>span{margin-top:5px;display:block}.draft-candidate-diagnostics ul{gap:5px;margin:7px 0 0;padding:0;list-style:none;display:grid}.draft-candidate-diagnostics li{color:var(--ink);flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;display:flex}.draft-candidate-diagnostics li span{color:#8a5a18;text-align:center;text-transform:uppercase;background:#fff;border:1px solid #ead8a9;border-radius:999px;min-width:58px;padding:2px 5px;font-size:9px;font-weight:700}.draft-publish-source{border:0;min-width:0;margin:18px 0 0;padding:0}.draft-publish-source>legend{color:var(--ink);margin-bottom:8px;font-size:11px;font-weight:700}.draft-publish-source-segments{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.draft-publish-source-segments label{min-height:72px;color:var(--muted);cursor:pointer;background:#fbfcfe;border:1px solid #dfe4ec;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;padding:12px;display:grid}.draft-publish-source-segments label.active{color:#3947ad;background:#f5f6ff;border-color:#aab3ee;box-shadow:inset 0 0 0 1px #4655c814}.draft-publish-source-segments label.fallback.active{color:#78501d;background:#fff9ec;border-color:#e2ca92}.draft-publish-source-segments label:has(input:disabled){cursor:not-allowed;opacity:.58}.draft-publish-source-segments input{accent-color:#4655c8;width:16px;height:16px;margin:2px 0 0}.draft-publish-source-segments strong,.draft-publish-source-segments small{display:block}.draft-publish-source-segments strong{color:var(--ink);font-size:12px}.draft-publish-source-segments small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:450;line-height:1.4}.draft-preflight{background:#fff;border:1px solid #dfe4ec;border-radius:8px;margin-top:14px;padding:16px}.draft-preflight.stale{background:snow;border-color:#f0beb9}.draft-preflight-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.draft-preflight-heading strong,.draft-preflight-heading span{display:block}.draft-preflight-heading strong{color:var(--ink);font-size:14px}.draft-preflight-heading span{max-width:720px;color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.draft-preflight-heading>svg{color:var(--attention);flex:none}.draft-preflight-result{background:#f5f8ff;border:1px solid #d9e2f5;border-radius:8px;margin-top:14px;padding:15px}.draft-preflight.stale .draft-preflight-result{background:snow;border-color:#f0beb9}.draft-preflight-result-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.draft-preflight-result-heading strong,.draft-preflight-result-heading span{display:block}.draft-preflight-result-heading strong{color:var(--ink);font-size:13px}.draft-preflight-result-heading>div>span{color:var(--muted);margin-top:4px;font-size:11px}.draft-preflight-meta{background:#d9e2f5;border:1px solid #d9e2f5;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:14px 0 0;display:grid}.draft-preflight-meta>div{background:#ffffffb8;min-width:0;padding:10px 12px}.draft-preflight-meta dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700}.draft-preflight-meta dd{overflow-wrap:anywhere;color:var(--ink);margin:3px 0 0;font-size:12px;font-weight:650}.draft-preflight-block{color:var(--muted);margin-top:14px;font-size:12px}.draft-preflight-block>strong{color:var(--ink);font-size:11px}.draft-preflight-counts{background:#d9e2f5;border:1px solid #d9e2f5;flex-wrap:wrap;gap:1px;margin-top:7px;display:flex}.draft-preflight-counts span{background:#ffffffb8;gap:2px;min-width:86px;padding:8px 10px;display:grid}.draft-preflight-counts small{color:var(--muted);text-transform:capitalize;font-size:10px}.draft-preflight-counts b{color:var(--ink);font-size:16px}.draft-preflight-block ul{gap:6px;margin:7px 0 0;padding:0;list-style:none;display:grid}.draft-preflight-block li{color:var(--ink);flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;display:flex}.draft-preflight-block li>span:first-child{min-width:62px;color:var(--muted);text-align:center;text-transform:uppercase;background:#fff;border:1px solid #d2d2d7;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:700}.draft-preflight-block li>span.warning{color:#8a5a18;border-color:#ead8a9}.draft-preflight-block li>span.blocking,.draft-preflight-block li>span.danger,.draft-preflight-block li>span.required{color:var(--danger);border-color:#f0beb9}.draft-preflight-block li>span.info,.draft-preflight-block li>span.optional{color:var(--accent);border-color:#d5daf8}.draft-preflight-block li small{color:var(--muted)}.draft-preflight-confirmations{border:0;padding:0}.draft-preflight-confirmations>legend{color:var(--ink);padding:0;font-size:11px;font-weight:700}.draft-preflight-confirmations>div{gap:6px;margin-top:7px;display:grid}.draft-preflight-confirmations label{min-height:34px;color:var(--ink);background:#ffffffb3;border:1px solid #e1e5ed;border-radius:7px;grid-template-columns:18px auto minmax(100px,auto) auto minmax(0,1fr);align-items:center;gap:7px;padding:7px 9px;font-size:11px;display:grid}.draft-preflight-confirmations input{accent-color:#4655c8;width:15px;height:15px;margin:0}.draft-preflight-confirmations label>span:first-of-type{color:var(--danger);text-align:center;text-transform:uppercase;border:1px solid #f0beb9;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:700}.draft-preflight-confirmations label>span.info,.draft-preflight-confirmations label>span.optional{color:var(--accent);border-color:#d5daf8}.draft-preflight-confirmations small{color:var(--muted)}.draft-prepare-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.draft-prepare-actions>span{color:var(--muted);font-size:11px}.draft-prepared-result{color:#31583b;background:#f3fbf5;border:1px solid #b7dfc0;border-radius:7px;align-items:flex-start;gap:9px;margin-top:11px;padding:11px 12px;display:flex}.draft-prepared-result svg{flex:none}.draft-prepared-result strong,.draft-prepared-result span{display:block}.draft-prepared-result strong{font-size:12px}.draft-prepared-result span{overflow-wrap:anywhere;color:#55725d;margin-top:3px;font-size:10px}.draft-activation-review{color:#32415b;background:#f8faff;border:1px solid #d9e2f5;border-radius:7px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:11px;padding:11px 12px;display:flex}.draft-activation-review>div{gap:3px;display:grid}.draft-activation-review strong{font-size:12px}.draft-activation-review span{color:var(--muted);font-size:10px;line-height:1.4}.draft-activation-plan{color:#31583b;background:#f3fbf5;border:1px solid #b7dfc0;border-radius:7px;align-items:flex-start;gap:9px;margin-top:11px;padding:11px 12px;display:flex}.draft-activation-plan svg{flex:none}.draft-activation-plan strong,.draft-activation-plan span,.draft-activation-plan small{display:block}.draft-activation-plan strong{font-size:12px}.draft-activation-plan span{overflow-wrap:anywhere;color:#55725d;margin-top:3px;font-size:10px}.draft-activation-plan small{color:#55725d;margin-top:4px;font-size:10px;line-height:1.4}.draft-preflight-boundary{color:#536073;background:#ffffffa6;border:1px solid #d9e2f5;border-radius:7px;align-items:flex-start;gap:8px;margin-top:14px;padding:11px 12px;font-size:11px;line-height:1.45;display:flex}.draft-preflight-boundary svg{color:var(--accent);flex:none}.draft-pairing{background:#fff;border:1px solid #dfe4ec;border-radius:8px;margin-top:14px;padding:16px}.draft-pairing .draft-preflight-heading>svg{color:#4655c8}.draft-pairing-claim{grid-template-columns:minmax(180px,1fr) auto auto;align-items:end;gap:7px 10px;margin-top:14px;display:grid}.draft-pairing-code-field{gap:6px;min-width:0;display:grid}.draft-pairing-code-field label{color:var(--muted);font-size:11px;font-weight:700}.draft-pairing-claim input{min-width:0;min-height:42px;color:var(--ink);text-transform:uppercase;background:#fff;border:1px solid #dce1ea;border-radius:7px;padding:9px 11px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px}.draft-pairing-claim input:focus{border-color:#9fa8ee;outline:2px solid #4655c824}.draft-pairing-claim button{white-space:nowrap}.pairing-qr-scanner{gap:5px;min-width:122px;display:grid}.pairing-qr-actions{align-items:center;gap:6px;display:flex}.pairing-qr-actions .secondary-button{min-height:42px}.pairing-qr-image-button{width:42px;height:42px;color:var(--muted);background:#fff;border:1px solid #dce1ea;border-radius:7px}.pairing-qr-message{color:var(--muted);margin:0;font-size:11px;line-height:1.35}.pairing-qr-camera{background:#111827;border:1px solid #cfd5e2;border-radius:8px;min-width:220px;position:relative;overflow:hidden}.pairing-qr-camera video{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.pairing-qr-camera span{color:#fff;background:#0f172adb;align-items:center;gap:5px;padding:6px 8px;font-size:11px;display:flex}.pairing-qr-close{color:#fff;background:#0f172ab3;border-color:#ffffff59;width:30px;height:30px;position:absolute;top:6px;right:6px}.draft-pairing-result{background:#f7f8ff;border:1px solid #d5daf8;border-radius:8px;margin-top:14px;padding:15px}.draft-pairing-receipt{background:#f3fbf5;border-color:#b7dfc0}.pairing-lifecycle-panel{background:#fbfcff;border:1px solid #d7dce8;border-radius:8px;gap:10px;margin-top:14px;padding:13px 15px;display:grid}.pairing-lifecycle-heading{color:#4655c8;align-items:flex-start;gap:10px;display:flex}.pairing-lifecycle-heading>div{gap:3px;min-width:0;display:grid}.pairing-lifecycle-heading strong{color:var(--ink);font-size:13px}.pairing-lifecycle-heading span{color:var(--muted);font-size:12px;line-height:1.45}.pairing-lifecycle-meta{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:11px;display:flex}.pairing-lifecycle-meta small{background:#edf0f7;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pairing-lifecycle-actions{flex-wrap:wrap;gap:8px;display:flex}.pairing-lifecycle-actions button{min-height:34px}.pairing-lifecycle-warning{color:#8a5a00;margin:0;font-size:12px}.pairing-lifecycle-inventory-ready{background:#f3fbf5;border-color:#b7dfc0}.pairing-lifecycle-revoked,.pairing-lifecycle-quarantined,.pairing-lifecycle-invalid,.pairing-lifecycle-identity-mismatch{background:#fff8f8;border-color:#f0c6c6}.draft-discovery{background:#fbfdfb;border:1px solid #d7e4dc;border-radius:8px;margin-top:14px;padding:16px}.draft-discovery .draft-preflight-heading>svg{color:var(--success)}.draft-discovery-result{background:#f3fbf5;border:1px solid #b7dfc0;border-radius:8px;margin-top:14px;padding:15px}.draft-discovery-summary{background:#cce7d2;border:1px solid #cce7d2;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:14px 0 0;display:grid}.draft-discovery-summary>div{background:#ffffffc7;min-width:0;padding:10px 12px}.draft-discovery-summary dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700}.draft-discovery-summary dd{color:var(--ink);margin:3px 0 0;font-size:16px;font-weight:750}.draft-discovery-rooms{margin-top:14px}.draft-discovery-rooms>strong{color:var(--ink);font-size:11px}.draft-discovery-rooms>div{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.draft-discovery-rooms span{color:#31583b;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #cce7d2;border-radius:6px;max-width:100%;padding:5px 8px;font-size:11px;overflow:hidden}.draft-topology{background:#fbfbff;border:1px solid #d5daf8;border-radius:8px;margin-top:14px;padding:16px}.draft-topology .draft-preflight-heading>svg{color:#4655c8}.draft-topology-empty{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.draft-topology-empty .draft-candidate-message{margin:0}.draft-topology-toolbar{flex-wrap:wrap;align-items:center;gap:9px;margin-top:14px;display:flex}.draft-topology-source{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.draft-topology-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.draft-topology-section{background:#fff;border:1px solid #e1e4f4;border-radius:7px;min-width:0;padding:13px}.draft-topology-section-heading{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.draft-topology-section-heading strong{font-size:13px}.draft-topology-count{color:var(--muted);font-size:10px}.draft-topology-row{color:var(--muted);grid-template-columns:minmax(0,1fr) minmax(130px,.8fr);align-items:end;gap:8px;margin-top:9px;font-size:10px;font-weight:700;display:grid}.draft-topology-row>span,.draft-topology-row label>span{text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;display:block;overflow:hidden}.draft-topology-row input,.draft-topology-row select,.draft-topology-device-row select{width:100%;min-width:0;min-height:34px;color:var(--ink);background:#fff;border:1px solid #dce1ea;border-radius:6px;padding:6px 8px;font-size:12px}.draft-topology-row label{min-width:0}.draft-topology-muted{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.45}.draft-topology-devices{margin-top:12px}.draft-topology-device-list{background:#e1e4f4;border:1px solid #e1e4f4;gap:1px;max-height:420px;margin-top:10px;display:grid;overflow:auto}.draft-topology-device-row{background:#fff;grid-template-columns:minmax(0,1fr) minmax(150px,.75fr);align-items:center;gap:10px;padding:9px 10px;display:grid}.draft-topology-device-row span{min-width:0}.draft-topology-device-row strong,.draft-topology-device-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.draft-topology-device-row strong{color:var(--ink);font-size:11px}.draft-topology-device-row small{color:var(--muted);margin-top:2px;font-size:10px}.draft-floorplan{background:#f9fbfd;border:1px solid #d8e2ed;border-radius:8px;margin-top:14px;padding:16px}.draft-floorplan .draft-preflight-heading>svg{color:#2f6f91}.draft-floorplan-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.draft-floorplan-toolbar .draft-candidate-message{flex:320px;margin:0}.draft-floorplan>.project-layout-section{background:#fff;border:1px solid #dde5ee;border-radius:7px;margin-top:14px;overflow:hidden}.draft-floorplan-loading{min-height:120px;margin-top:12px}.floorplan-stale-notice{color:#824714;background:#fff8ea;border-top:1px solid #edd5ad;border-bottom:1px solid #edd5ad;align-items:center;gap:9px;padding:10px 14px;font-size:11px;line-height:1.45;display:flex}.floorplan-stale-notice svg{flex:none}.draft-onboarding-steps{gap:10px;margin-top:18px;display:grid}.draft-onboarding-step{background:#fbfcfe;border:1px solid #e4e8ef;border-radius:8px;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:13px;padding:16px;display:grid}.draft-onboarding-step-icon{color:#4655c8;background:#eef1ff;border:1px solid #d5daf8;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.draft-onboarding-step-number{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:10px;font-weight:700}.draft-onboarding-step h3{margin:3px 0 4px;font-size:15px}.draft-onboarding-step p{max-width:700px;color:var(--muted);margin:0;font-size:12px;line-height:1.5}.draft-onboarding-state{color:#8a5a18;text-align:center;background:#fff8e8;border:1px solid #ead8a9;border-radius:999px;align-self:start;min-width:128px;padding:6px 9px;font-size:11px;font-weight:700}.draft-onboarding-boundary{color:#536073;background:#f5f8ff;border:1px solid #d9e2f5;border-radius:8px;align-items:flex-start;gap:9px;margin-top:18px;padding:13px 15px;font-size:12px;line-height:1.5;display:flex}.draft-onboarding-boundary svg{color:var(--accent);flex:none}.draft-onboarding-boundary strong{color:var(--ink)}.section-intro{max-width:700px;color:var(--muted);margin:18px 0 0;font-size:15px;line-height:1.55}.message-banner{min-height:52px;color:var(--danger);background:var(--danger-soft);border:1px solid #f0beb9;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:18px 0 0;padding:8px 10px 8px 14px;font-size:14px;display:grid}.message-banner.success{color:var(--success);background:var(--success-soft);border-color:#b7dfc0}.message-banner>svg{flex:none}.message-banner .icon-button{width:44px;height:44px}.content-section,.control4-import-section{background:#fff;border:1px solid #e3e7ef;border-radius:8px;padding:28px;box-shadow:0 8px 28px #2c375c0d}.dashboard-overview,.content-section,.control4-import-section{scroll-margin-top:122px}.control4-import-section{padding-top:28px}.section-heading{justify-content:space-between;align-items:flex-start;gap:18px}.section-heading h2{text-wrap:balance;margin:0;font-size:23px;font-weight:650;line-height:1.2}.section-heading>svg{color:var(--accent)}.status-badge{min-height:28px;color:var(--muted);white-space:nowrap;background:#f5f5f7;border:1px solid #d2d2d7;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.status-badge>span{background:currentColor;border-radius:50%;width:6px;height:6px}.status-badge.success{color:var(--success);background:var(--success-soft);border-color:#b7dfc0}.status-badge.attention{color:var(--attention);background:var(--attention-soft);border-color:#f1d38d}.status-badge.danger{color:var(--danger);background:var(--danger-soft);border-color:#f0beb9}.control4-import-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;max-width:840px;margin-top:24px;display:grid}.control4-file-field{min-width:0;color:var(--ink);gap:8px;font-size:14px;font-weight:600;display:grid}.control4-file-field input{width:100%;min-width:0;min-height:48px;color:var(--muted);background:#fff;border:1px solid #c7c7cc;border-radius:9px;padding:5px;font-size:13px}.control4-file-field input::file-selector-button{min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:#f5f5f7;border:1px solid #c7c7cc;border-radius:7px;margin-right:10px;padding:0 12px;font-weight:600}.control4-file-field input:disabled::file-selector-button{cursor:not-allowed}.control4-naming-contract{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:840px;margin:18px 0 0;display:grid}.control4-naming-contract div{background:0 0;min-width:0;padding:14px}.control4-naming-contract div+div{border-left:1px solid var(--line)}.control4-naming-contract dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.control4-naming-contract dd{overflow-wrap:anywhere;min-width:0;margin:5px 0 0}.control4-naming-contract code{color:var(--ink);font-size:12px}.control4-import-status{max-width:840px;min-height:52px;color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.control4-import-status>svg{flex:none}.control4-import-status span{min-width:0}.control4-import-status strong,.control4-import-status small{overflow-wrap:anywhere;display:block}.control4-import-status strong{color:var(--ink);font-size:13px;font-weight:600}.control4-import-status small{margin-top:3px;font-size:12px}.control4-import-status.success{color:var(--success);background:var(--success-soft);border-color:#b7dfc0}.control4-import-status.danger{color:var(--danger);background:var(--danger-soft);border-color:#f0beb9}.project-layout-section{box-shadow:none;background:0 0;border:0;padding:0}.controller-layout-publication{background:#fff;border:1px solid #dfe3eb;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;width:min(100%,1360px);min-height:76px;margin:0 auto 12px;padding:12px 14px;display:flex}.controller-layout-publication>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;display:grid}.controller-layout-publication strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:13px}.controller-layout-publication small{color:var(--muted);overflow-wrap:anywhere;grid-column:1/-1;font-size:11px;line-height:1.4}.controller-layout-publication>.primary-button{flex:none}.project-layout-editor{background:#fff;border:1px solid #dfe3eb;border-radius:8px;width:min(100%,1360px);margin:0 auto;overflow:hidden;box-shadow:0 14px 36px #262e4a12;container:floorplan-editor/inline-size}.floorplan-editor-toolbar{background:#fbfcfe;border-bottom:1px solid #e3e6ed;justify-content:space-between;align-items:center;gap:14px;min-height:68px;padding:10px 14px;display:flex}.floorplan-editor-selectors{grid-template-columns:minmax(120px,.65fr) minmax(150px,.9fr) minmax(180px,1fr);gap:10px;min-width:0;display:grid}.floorplan-editor-selectors label{min-width:0;color:var(--muted);gap:5px;font-size:11px;font-weight:650;display:grid}.floorplan-editor-selectors select{width:100%;min-width:0;min-height:44px;color:var(--ink);background-color:#fff;border:1px solid #c9ced8;border-radius:8px;padding:0 34px 0 11px;font-size:13px}.floorplan-editor-selectors select:focus,.floorplan-device-search:focus-within{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #4f5fe71f}.floorplan-reset-button{flex:0 0 44px}.floorplan-editor-mode{background:#eceff4;border:1px solid #d8dce4;border-radius:8px;flex:none;grid-template-columns:repeat(2,auto);gap:3px;margin-left:auto;padding:3px;display:inline-grid}.floorplan-editor-mode button{color:#696d77;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 11px;font-size:12px;font-weight:650;display:inline-flex}.floorplan-editor-mode button:hover{color:var(--ink)}.floorplan-editor-mode button.active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #1e24361f}.floorplan-editor-mode button em{color:#fff;font-variant-numeric:tabular-nums;background:#202126;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-style:normal;display:grid}.floorplan-selection-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.floorplan-select-all{white-space:nowrap;min-height:36px!important;padding:0 10px!important;font-size:11px!important}.floorplan-tool-divider{background:#e3e6ed;width:1px;height:28px;margin:0 2px}.floorplan-tool-group{background:#f8f9fb;border:1px solid #e1e5ed;border-radius:7px;align-items:center;gap:2px;padding:2px;display:inline-flex}.floorplan-editor-body{grid-template-columns:210px minmax(0,1fr) 210px;height:clamp(560px,70vh,700px);display:grid}.floorplan-tool-panel{background:#fbfcfe;border-right:1px solid #e3e6ed;flex-direction:column;grid-column:1;gap:14px;min-width:0;min-height:0;padding:18px 12px;display:flex}.floorplan-tool-panel-heading{border-bottom:1px solid #e3e6ed;gap:4px;padding:0 4px 12px;display:grid}.floorplan-tool-panel-heading>span{color:#8a91a0;letter-spacing:0;font-size:9px;font-weight:800}.floorplan-tool-panel-heading strong{color:var(--ink);font-size:14px;font-weight:720}.floorplan-tool-panel-heading small{color:var(--muted);font-size:10px;line-height:1.35}.floorplan-tool-assets{border-bottom:1px solid #e3e6ed;gap:8px;padding:0 4px 12px;display:grid}.floorplan-tool-assets .secondary-button,.floorplan-tool-assets .primary-button{white-space:normal;justify-content:flex-start;width:100%;min-height:38px;padding-inline:9px;font-size:11px;line-height:1.25}.floorplan-tool-assets .text-button{color:var(--muted);justify-content:flex-start;padding:0 4px;font-size:11px}.floorplan-tool-panel .floorplan-selection-actions{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px}.floorplan-tool-panel .floorplan-select-all{white-space:normal;justify-content:flex-start;width:100%;line-height:1.25;min-height:38px!important;padding-inline:9px!important;font-size:11px!important}.floorplan-tool-panel .floorplan-tool-divider{width:100%;height:1px;margin:0}.floorplan-tool-panel .floorplan-tool-group{justify-content:space-between;width:100%}.floorplan-tool-panel .icon-button{color:#697286;border-radius:6px;width:34px;min-width:34px;height:34px;min-height:34px}.floorplan-tool-panel .icon-button:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.floorplan-tool-panel .floorplan-selection-actions>.icon-button:last-child{margin-top:auto}.floorplan-stage{background:#eef1f6;grid-column:2;grid-template-rows:minmax(0,1fr) 36px;min-width:0;min-height:0;display:grid;overflow:hidden}.preview-mode .floorplan-stage{grid-column:2}.floorplan-canvas-viewport{place-items:center;width:100%;min-width:0;min-height:0;padding:18px;display:grid;overflow:hidden;container:floorplan-canvas/size}.floorplan-tablet{--floorplan-bezel-block:23px;--floorplan-bezel-inline:34px;box-sizing:border-box;aspect-ratio:1180/716;width:min(100%,1180px,164.804cqh);padding:var(--floorplan-bezel-block) var(--floorplan-bezel-inline);background:#1d1e21;border:1px solid #34363b;border-radius:28px;place-items:center;display:grid;position:relative;box-shadow:0 18px 42px #181d2838}.floorplan-tablet-camera{background:#4a4c52;border-radius:50%;width:7px;height:7px;position:absolute;left:13px;box-shadow:inset 0 0 0 2px #24252a}.floorplan-screen{background:#f8f9fb;border-radius:13px;justify-content:center;align-items:center;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.floorplan-screen>iframe{background:#07111d;border:0;width:100%;height:100%;display:block}.floorplan-layout-canvas{aspect-ratio:1180/716;background:#fff;border:1px solid #d8dce5;border-radius:10px;width:min(100%,1180px);display:block;position:relative;overflow:hidden;box-shadow:0 14px 34px #181d281f}.floorplan-layout-canvas>iframe{background:#f7f8fa;border:0;width:100%;height:100%;display:block}.floorplan-stage.layout-mode{background:#f3f5f8}.floorplan-editor-caption{width:100%;min-width:0;min-height:36px;color:var(--muted);background:#f8f9fb;border-top:1px solid #dfe3eb;justify-content:space-between;align-items:center;gap:12px;padding:0 18px;font-size:12px;display:flex}.floorplan-editor-caption span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.floorplan-editor-caption>span{flex:auto;min-width:0}.floorplan-editor-caption strong{color:var(--ink);flex:none;font-weight:650}.floorplan-device-panel{background:#fff;border-left:1px solid #e3e6ed;flex-direction:column;grid-column:3;min-width:0;min-height:0;display:flex}.floorplan-device-heading{justify-content:space-between;align-items:center;gap:8px;min-height:58px;padding:10px 14px 7px;display:flex}.floorplan-device-heading>div{min-width:0}.floorplan-device-heading strong,.floorplan-device-heading span{display:block}.floorplan-device-heading strong{color:var(--ink);font-size:14px}.floorplan-device-heading span{color:var(--muted);margin-top:3px;font-size:11px}.floorplan-device-heading-status{flex:0 auto;align-items:center;gap:5px;min-width:0;max-width:56%;display:flex}.floorplan-selection-count{background:var(--accent-soft);white-space:nowrap;border-radius:6px;padding:5px 7px;font-weight:700;color:var(--accent)!important;margin-top:0!important;font-size:10px!important}.floorplan-placement-status{background:var(--accent-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;flex:0 auto;min-width:0;padding:5px 7px;font-weight:700;overflow:hidden;color:var(--accent)!important;font-size:10px!important}.floorplan-device-search{min-height:44px;color:var(--muted);background:#f8f9fb;border:1px solid #d8dce5;border-radius:8px;align-items:center;gap:8px;margin:0 14px;padding:0 10px;display:flex}.floorplan-device-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.floorplan-device-filters{background:#eef0f4;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin:8px 14px;padding:3px;display:grid}.floorplan-device-filters button{min-width:0;min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 5px;font-size:11px;font-weight:650}.floorplan-device-filters button.active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #1f25361f}.floorplan-device-scroll{overscroll-behavior-y:contain;scrollbar-color:#b2bac8 transparent;scrollbar-gutter:stable;scrollbar-width:thin;border-top:1px solid #eceef3;flex:auto;min-height:0;overflow-y:auto;box-shadow:inset 0 10px 12px -14px #222a3d80,inset 0 -10px 12px -14px #222a3d80}.floorplan-device-scroll::-webkit-scrollbar{width:9px}.floorplan-device-scroll::-webkit-scrollbar-thumb{background:#b2bac8 padding-box padding-box;border:2px solid #0000;border-radius:999px}.floorplan-device-scroll::-webkit-scrollbar-track{background:0 0}.floorplan-device-group+.floorplan-device-group{border-top:1px solid #dfe3eb}.floorplan-device-group-heading{z-index:2;width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:#f7f8fb;border:0;border-bottom:1px solid #e3e6ed;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 12px;display:grid;position:sticky;top:0}.floorplan-device-group-heading:hover{background:#f0f2f7}.floorplan-device-group-heading>svg{color:#747d8e;transition:transform .18s}.floorplan-device-group.collapsed .floorplan-device-group-heading>svg{transform:rotate(-90deg)}.floorplan-device-group-heading>span{min-width:0}.floorplan-device-group-heading small,.floorplan-device-group-heading strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.floorplan-device-group-heading small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.floorplan-device-group-heading strong{text-transform:uppercase;font-size:11px;font-weight:760}.floorplan-device-group-heading em{min-width:35px;color:var(--accent-dark);background:var(--accent-soft);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.floorplan-device-group-list{background:#fff}.floorplan-device-row{background:#fff;border-bottom:1px solid #eceef3;grid-template-columns:minmax(0,1fr);min-width:0;display:grid;position:relative}.floorplan-device-row.placed{grid-template-columns:34px minmax(0,1fr) 34px 34px}.floorplan-device-row:hover,.floorplan-device-row.selected,.floorplan-device-row.multi-selected{background:#f6f7ff}.floorplan-device-row.locked{background:#f7f8fa}.floorplan-device-check{cursor:pointer;place-items:center;min-height:44px;display:grid}.floorplan-device-check input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;margin:0}.floorplan-device-select{width:100%;min-width:0;min-height:44px;color:var(--ink);text-align:left;cursor:grab;background:0 0;border:0;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;padding:6px;display:grid}.floorplan-device-select:disabled{cursor:default}.floorplan-device-select>svg{color:var(--accent)}.floorplan-device-select strong{overflow-wrap:anywhere;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.3;display:block;overflow:hidden}.floorplan-device-row.locked .floorplan-device-select{color:#7d8492;cursor:default}.floorplan-device-lock,.floorplan-device-remove{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;align-self:center;place-items:center;display:grid}.floorplan-device-lock:hover,.floorplan-device-lock[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.floorplan-device-remove:hover{color:var(--danger);background:var(--danger-soft)}.floorplan-device-lock:disabled,.floorplan-device-remove:disabled{cursor:default;opacity:.45}.floorplan-list-empty{min-height:150px;color:var(--muted);text-align:center;place-items:center;padding:20px;font-size:12px;display:grid}.floorplan-device-footer{background:#fbfcfe;border-top:1px solid #e3e6ed;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:8px 14px;display:flex}.floorplan-device-footer .primary-button{min-height:44px}.floorplan-dirty-state{color:var(--muted);font-size:11px;font-weight:650}.floorplan-dirty-state:before{content:"";background:#8e929c;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.floorplan-dirty-state.active{color:#a25d08}.floorplan-dirty-state.active:before{background:#d87816}.layout-muted{color:var(--muted);font-size:13px;line-height:1.5}.layout-loading{border-bottom:1px solid var(--line);min-height:180px}.controlx-runtime-workspace{background:#eef1f5;place-items:start center;min-width:0;padding:18px;display:grid;overflow:auto}.controlx-runtime-viewport{--controlx-runtime-height:716px;width:min(100%,1180px);height:var(--controlx-runtime-height);background:#f7f6f6;border:1px solid #d8dce5;border-radius:8px;min-height:320px;position:relative;overflow:hidden;box-shadow:0 14px 34px #181d281f}.controlx-runtime-stage{width:1180px;height:716px;transform:scale(var(--controlx-runtime-scale,1));transform-origin:0 0;position:absolute;top:0;left:0}.controlx-runtime-stage>iframe{background:#f7f6f6;border:0;width:1180px;height:716px;display:block}.controlx-runtime-loading{z-index:1;color:var(--muted);background:#f7f8fa;align-content:center;place-items:center;gap:10px;font-size:13px;display:grid;position:absolute;inset:0}.dashboard-overview{padding:0}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.dashboard-heading h2{text-wrap:balance;margin:0;font-size:26px;font-weight:650;line-height:1.2}.dashboard-description{max-width:650px;color:var(--muted);margin:12px 0 0;font-size:15px;line-height:1.55}.dashboard-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.dashboard-kpi{background:#fff;border:1px solid #e3e7ef;border-radius:8px;min-width:0;min-height:150px;padding:20px;position:relative;overflow:hidden;box-shadow:0 8px 28px #2c375c0d}.dashboard-kpi-icon{border-radius:8px;place-items:center;width:40px;height:40px;margin-bottom:18px;display:grid!important}.dashboard-kpi.blue .dashboard-kpi-icon{color:#356ae6;background:#eaf1ff}.dashboard-kpi.orange .dashboard-kpi-icon{color:#d87816;background:#fff1df}.dashboard-kpi.green .dashboard-kpi-icon{color:#248a58;background:#e8f7ef}.dashboard-kpi.violet .dashboard-kpi-icon{color:#7854d8;background:#f0ebff}.dashboard-kpi span,.dashboard-kpi small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-kpi span{font-size:12px;font-weight:650}.dashboard-kpi strong{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:27px;font-weight:750;display:block;overflow:hidden}.dashboard-kpi small{margin-top:4px;font-size:12px}.health-tabs{overscroll-behavior-x:contain;scrollbar-width:none;border-bottom:1px solid #dfe3eb;align-items:flex-end;gap:4px;width:100%;min-width:0;max-width:100%;min-height:52px;margin-top:22px;display:flex;overflow:auto hidden}.health-tabs::-webkit-scrollbar{display:none}.health-tab{min-width:142px;min-height:48px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:8px;margin-bottom:-1px;padding:0 14px;font-size:13px;font-weight:650;display:inline-flex}.health-tab:hover{color:var(--ink);background:#f7f8fb}.health-tab:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.health-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:#f7f8ff}.health-tab-count{color:#5f6675;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #dfe3eb;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;display:grid}.health-tab.active .health-tab-count{color:var(--accent);border-color:#cfd5f8}.health-tab-panel{margin-top:14px}.health-tab-panel[hidden]{display:none}.health-overview-panel .dashboard-detail-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px}.health-tab-panel .health-monitor-panel{margin-top:0}.dashboard-columns{grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);gap:14px;margin-top:14px;display:grid}.dashboard-task-panel,.dashboard-status-panel{background:#fff;border:1px solid #e3e7ef;border-radius:8px;padding:22px;box-shadow:0 8px 28px #2c375c0d}.dashboard-panel-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-panel-heading h3{margin:0;font-size:16px;font-weight:650}.dashboard-panel-heading>span{color:var(--muted);font-size:12px}.dashboard-task-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.dashboard-task{width:100%;min-height:116px;color:var(--ink);text-align:left;cursor:pointer;background:#fbfcfe;border:1px solid #e5e8f0;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;display:grid}.dashboard-task:hover{color:var(--accent);background:#f7f8ff;border-color:#cfd5f8;transform:translateY(-1px);box-shadow:0 8px 20px #404ea714}.dashboard-task-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.dashboard-task-copy{min-width:0}.dashboard-task-copy strong,.dashboard-task-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-task-copy strong{font-size:14px;font-weight:600}.dashboard-task-copy small{color:var(--muted);white-space:normal;margin-top:5px;font-size:12px;line-height:1.45}.dashboard-task-status{white-space:nowrap;grid-column:2;font-size:11px;font-weight:700}.dashboard-task-status.accent{color:var(--accent)}.dashboard-task-status.attention{color:var(--attention)}.dashboard-task-status.success{color:var(--success)}.dashboard-task-status.neutral{color:var(--muted)}.dashboard-task>svg{color:var(--subtle);grid-area:1/3}.dashboard-health-credential{background:#fbfcfe;border:1px solid #dfe4ed;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;min-height:116px;padding:16px;display:grid}.dashboard-health-credential-copy{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:12px;min-width:0;display:grid}.dashboard-health-credential-copy>span:last-child{min-width:0}.dashboard-health-credential-copy strong,.dashboard-health-credential-copy small{overflow-wrap:anywhere;display:block}.dashboard-health-credential-copy strong{color:var(--ink);font-size:14px;font-weight:600}.dashboard-health-credential-copy small{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.45}.dashboard-health-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-health-credential>.dashboard-health-actions{padding-left:54px}.dashboard-health-actions .secondary-button,.dashboard-health-actions .revoke-button{min-height:40px}.dashboard-health-endpoint{overflow-wrap:anywhere;color:var(--muted);grid-column:1/-1;font-size:11px}.dashboard-health-endpoint code{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.dashboard-health-issued{color:#154f35;background:var(--success-soft);border:1px solid #b7dfc0;border-radius:8px;grid-column:1/-1;gap:12px;padding:16px;display:grid}.dashboard-health-issued strong,.dashboard-health-issued small{display:block}.dashboard-health-issued small{color:#3d6a52;margin-top:4px;font-size:12px;line-height:1.45}.dashboard-health-issued code{overflow-wrap:anywhere;color:#123b29;-webkit-user-select:all;user-select:all;background:#fff;border:1px solid #acd6b7;border-radius:6px;padding:11px 12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.55}.dashboard-health-empty{min-height:116px;color:var(--muted);background:#fbfcfe;border:1px dashed #d7dce7;border-radius:8px;grid-column:1/-1;align-items:center;gap:12px;padding:16px;display:flex}.dashboard-health-empty>svg{color:var(--attention);flex:none}.dashboard-health-empty>span{flex:1;min-width:0}.dashboard-health-empty strong,.dashboard-health-empty small{display:block}.dashboard-health-empty strong{color:var(--ink);font-size:14px;font-weight:600}.dashboard-health-empty small{margin-top:5px;font-size:12px;line-height:1.45}.dashboard-health-empty .secondary-button{flex:none}.health-overview-panel+.dashboard-health-empty{margin-top:14px}.health-device-panels{grid-template-columns:repeat(auto-fit,minmax(min(100%,640px),1fr));gap:14px;margin-top:14px;display:grid}.health-incident-panel{background:#fff;border:1px solid #e3e7ef;border-radius:8px;min-width:0;padding:22px;box-shadow:0 8px 28px #2c375c0d}.health-table-wrap{border-bottom:0;margin-top:14px}.health-incident-table th:first-child{width:31%}.health-incident-table th:nth-child(2){width:29%}.health-incident-table th:nth-child(3),.health-incident-table th:nth-child(4){width:20%}.health-incident-status{align-items:center;gap:7px;font-size:12px;font-weight:650;line-height:1.35;display:inline-flex}.health-incident-status svg{flex:none}.health-incident-status.success{color:var(--success)}.health-incident-status.attention{color:#9a5b0b}.health-incident-status.danger{color:var(--danger)}.health-incident-status.neutral{color:var(--muted)}.health-incident-empty{min-height:104px;color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:14px;padding:18px 0;display:flex}.health-incident-empty>svg{color:var(--success);flex:none}.health-incident-empty span{min-width:0}.health-incident-empty strong,.health-incident-empty small{display:block}.health-incident-empty strong{color:var(--ink);font-size:14px;font-weight:650}.health-incident-empty small{margin-top:5px;font-size:12px;line-height:1.45}.health-monitor-panel{background:#fff;border:1px solid #e3e7ef;border-radius:8px;min-width:0;margin-top:14px;padding:22px;box-shadow:0 8px 28px #2c375c0d}.health-device-toolbar{grid-template-columns:minmax(220px,1fr) minmax(170px,220px) minmax(170px,220px) auto;align-items:end;gap:10px;margin-top:14px;display:grid}.health-device-search{min-width:0;display:block;position:relative}.health-device-search>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.health-device-search input{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd5df;border-radius:6px;padding:9px 12px 9px 38px}.health-device-filter{gap:5px;min-width:0;display:grid}.health-device-filter>span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.health-device-filter select{width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd5df;border-radius:6px;padding:9px 34px 9px 11px}.health-device-search input:focus-visible,.health-device-filter select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.health-device-result-count{color:var(--muted);white-space:nowrap;align-self:center;font-size:12px}.health-monitored-table th:first-child{width:30%}.health-monitored-table th:nth-child(2){width:22%}.health-monitored-table th:nth-child(3){width:23%}.health-monitored-table th:nth-child(4){width:25%}.health-device-observation strong,.health-device-observation small{display:block}.health-device-observation strong{color:var(--ink);font-size:13px;font-weight:500}.health-device-observation small{color:var(--muted);margin-top:4px;font-size:12px}.health-device-empty>svg{color:var(--muted)}.health-room-groups{gap:18px;margin-top:16px;display:grid}.health-room-group{border-top:1px solid #e3e7ef;min-width:0}.health-room-heading{justify-content:space-between;align-items:center;gap:16px;padding:14px 2px 10px;display:flex}.health-room-heading h4{color:var(--ink);margin:0;font-size:15px;line-height:1.35}.health-room-heading span{color:var(--muted);white-space:nowrap;font-size:12px}.health-location-browser{grid-template-columns:minmax(180px,224px) minmax(0,1fr);align-items:start;gap:18px;margin-top:16px;display:grid}.health-floor-tabs{gap:6px;display:grid;position:sticky;top:12px}.health-floor-node{gap:4px;min-width:0;display:grid}.health-floor-tab{width:100%;min-height:52px;color:var(--muted);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:16px 18px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 10px;display:grid}.health-floor-tab:hover{color:var(--ink);background:#f5f7fb}.health-floor-tab.active{color:var(--ink);background:#eef0ff;border-color:#ccd4ff}.health-floor-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.health-floor-chevron{transition:transform .16s}.health-floor-chevron.expanded{transform:rotate(90deg)}.health-floor-tab>span:not(.health-floor-incident-count){gap:2px;min-width:0;display:grid}.health-floor-tab strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.3;overflow:hidden}.health-floor-tab small{color:var(--muted);font-size:11px}.health-floor-incident-count{color:#b44718;background:#fff1e8;border-radius:11px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:700;display:inline-grid}.health-room-list{border-left:1px solid #dce1eb;gap:3px;margin-left:16px;padding:2px 0 4px 11px;display:grid}.health-room-option{width:100%;min-height:46px;color:var(--muted);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:17px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.health-room-option:hover{color:var(--ink);background:#f5f7fb}.health-room-option.active{color:#3443ce;background:#f3f4ff;border-color:#d8ddff}.health-room-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.health-room-option>span:not(.health-room-incident-count){gap:2px;min-width:0;display:grid}.health-room-option strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.3;overflow:hidden}.health-room-option small{color:var(--muted);font-size:10px}.health-room-incident-count{color:#b44718;background:#fff1e8;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-weight:700;display:inline-grid}.health-room-detail{min-width:0}.health-room-prompt{min-height:170px;color:var(--muted);text-align:left;background:#fbfcfe;border:1px dashed #d7dce6;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.health-room-prompt>svg{flex:none}.health-room-prompt span{min-width:0}.health-room-prompt strong,.health-room-prompt small{display:block}.health-room-prompt strong{color:var(--ink);font-size:14px;font-weight:650}.health-room-prompt small{margin-top:4px;font-size:12px;line-height:1.45}.dashboard-detail-list{border-top:1px solid var(--line);gap:0;margin:16px 0 0;display:grid}.dashboard-detail-list div{border-bottom:1px solid #edf0f5;min-width:0;padding:14px 0}.dashboard-detail-list dt{color:var(--muted);font-size:12px}.dashboard-detail-list dd{overflow-wrap:anywhere;color:var(--ink);margin:4px 0 0;font-size:14px;font-weight:600}.project-operations{min-width:0}.project-operations-heading{margin-bottom:18px}.project-operations-heading h2{font-size:26px}.project-operations>.content-section+.content-section{margin-top:14px}.project-credential-content{margin-top:22px}.project-credential-content .dashboard-health-credential{max-width:880px}.project-credential-content .dashboard-health-issued{max-width:880px;margin-top:12px}.activation-section{background:#fff;border:1px solid #e3e7ef;border-radius:8px;margin:0;padding:28px;box-shadow:0 8px 28px #2c375c0d}.activation-form{gap:8px;max-width:700px;margin-top:22px;display:grid}.activation-form label{color:var(--ink);font-size:14px;font-weight:600}.activation-form>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.activation-form input{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #c7c7cc;border-radius:9px;padding:0 13px}.activation-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #4f5fe724}.activation-form input::placeholder{color:#86868b}.activation-form input{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:700}.activation-result{border-top:1px solid var(--line);grid-template-columns:minmax(190px,.7fr) minmax(320px,1.3fr) auto;align-items:center;gap:22px;margin-top:24px;padding-top:22px;display:grid}.activation-identity{gap:10px;min-width:0}.activation-identity svg{color:var(--accent);flex:none}.activation-identity span{min-width:0}.activation-identity strong,.activation-identity small{overflow-wrap:anywhere;display:block}.activation-identity small{color:var(--muted);margin-top:4px;font-size:12px}.activation-result dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 18px;margin:0;display:grid}.activation-result dl div{min-width:0}.activation-result dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.activation-result dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:13px;font-weight:600}.activation-target{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.activation-target strong{color:var(--ink)}.license-section{background:#fff;border:1px solid #e3e7ef;border-radius:8px;margin:0;padding:28px;box-shadow:0 8px 28px #2c375c0d}.license-heading{align-items:flex-start}.license-form{gap:8px;max-width:760px;margin-top:22px;display:grid}.license-form label{color:var(--ink);font-size:14px;font-weight:600}.license-form>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.license-form input{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #c7c7cc;border-radius:9px;padding:0 13px}.license-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #4f5fe724}.issued-license{color:#154f35;background:var(--success-soft);border:1px solid #b7dfc0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin-top:22px;padding:16px;display:grid}.issued-license>div{min-width:0}.issued-license span,.issued-license strong,.issued-license small{overflow-wrap:anywhere;display:block}.issued-license span{font-size:12px;font-weight:650}.issued-license strong{letter-spacing:0;margin-top:5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:20px}.issued-license small{color:var(--muted);margin-top:4px;font-size:12px}.license-table th:first-child{width:30%}.license-table th:nth-child(2){width:16%}.license-table th:last-child{width:132px}.section-empty{color:var(--muted);text-align:center;margin:18px 0 0;padding:28px 0;font-size:14px}.table-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;margin-top:22px;overflow-x:auto}.admin-table{border-collapse:collapse;table-layout:fixed;width:100%}.admin-table th,.admin-table td{text-align:left;vertical-align:middle;min-width:0;padding:15px 12px}.admin-table th{color:var(--muted);text-transform:uppercase;background:0 0;font-size:11px;font-weight:600}.admin-table td{color:var(--ink);background:#fff;border-top:1px solid #e9e9ed;font-size:14px}.admin-table td>strong,.admin-table td>small{overflow-wrap:anywhere;display:block}.admin-table td>small{color:var(--muted);margin-top:4px;font-size:12px}.admin-table tbody tr:hover td{background:#fbfbfd}.permission-muted{color:var(--muted);font-size:12px}.customer-table th:first-child{width:44%}.device-table th:first-child{width:24%}.device-table th:nth-child(2){width:21%}.device-table th:nth-child(3){width:18%}.device-table th:nth-child(4){width:16%}.device-table th:last-child{width:190px}.staff-account-table th:first-child{width:19%}.staff-account-table th:nth-child(2){width:14%}.staff-account-table th:nth-child(3){width:16%}.staff-account-table th:nth-child(5){width:150px}.device-identity{gap:9px;min-width:0}.device-identity>svg{color:var(--accent);flex:none}.device-identity>span{min-width:0}.device-identity strong,.device-identity small{overflow-wrap:anywhere;display:block}.device-identity small{color:var(--muted);margin-top:4px;font-size:11px}.table-action{text-align:right!important}.device-heading{align-items:flex-start}.revocation-note{color:#7a5600;background:var(--attention-soft);border:1px solid #f1d38d;border-radius:10px;align-items:flex-start;gap:8px;margin:20px 0 0;padding:13px 15px;font-size:13px;line-height:1.55;display:flex}.revocation-note svg{flex:none}.staff-accounts-section .section-intro{margin-top:10px;font-size:13px}.staff-accounts-section .table-wrap{margin-top:16px}.staff-account-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-top:18px;display:grid}.staff-account-form label{color:var(--ink);font-size:14px;font-weight:600}.staff-account-form input{width:100%;min-width:0;min-height:48px;color:var(--ink);background:#fff;border:1px solid #c7c7cc;border-radius:9px;padding:0 13px}.staff-account-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #4f5fe724}.staff-account-form>label:first-child{grid-area:1/1}.staff-account-form>input:nth-child(2){grid-area:2/1}.staff-account-form>label:nth-child(3){grid-area:1/2}.staff-account-form>input:nth-child(4){grid-area:2/2}.staff-account-form>label:nth-child(5){grid-area:1/3}.staff-account-form>input:nth-child(6){grid-area:2/3}.staff-account-form>.primary-button{white-space:nowrap;grid-area:1/4/span 2;min-height:48px}.staff-permission-presets{grid-area:3/1/auto/-1;justify-content:space-between;align-items:center;gap:14px;padding-top:2px;display:flex}.staff-permission-presets>span{color:var(--muted);font-size:12px;font-weight:600}.staff-permission-controls{align-items:center;gap:8px;display:flex}.staff-permission-preset-options{border:1px solid var(--line);background:#ededf0;border-radius:8px;gap:3px;padding:3px;display:inline-flex}.permission-preset{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:0 10px;font-size:12px;font-weight:600}.permission-preset:hover:not(:disabled){color:var(--ink)}.permission-preset.active{color:var(--ink);background:#fff;box-shadow:0 1px 3px #0000001a}.staff-permission-toggle{white-space:nowrap;min-height:42px;padding-inline:11px;font-size:12px}.staff-permission-toggle em{min-width:30px;color:var(--accent);font-variant-numeric:tabular-nums;font-size:10px;font-style:normal}.staff-permission-fieldset{border:1px solid var(--line);background:#fff;border-radius:8px;grid-area:4/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;margin:0;padding:12px 14px;display:grid}.staff-permission-fieldset legend{color:var(--ink);padding:0 6px;font-size:13px;font-weight:650}.staff-permission-option{min-height:36px;color:var(--ink);align-items:center;gap:9px;padding:3px 0;font-size:13px;line-height:1.4;display:flex}.staff-permission-option input,.staff-inline-permission-editor input{width:16px;height:16px;accent-color:var(--accent);margin:2px 0 0}.staff-inline-permission-editor{border:0;gap:8px;margin:0;padding:0;display:grid}.staff-inline-permission-editor label{color:var(--ink);align-items:flex-start;gap:7px;font-size:13px;line-height:1.4;display:flex}.staff-account-actions>span{align-items:center;gap:9px;display:inline-flex}.staff-account-actions .secondary-button{min-height:44px;padding-inline:10px;font-size:12px}.text-button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 8px;font-size:12px;font-weight:600}.text-button:hover:not(:disabled){color:var(--accent)}.text-button:disabled{cursor:not-allowed;opacity:.55}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1d1d1f6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--line);background:#fff;border-radius:14px;width:min(520px,100%);padding:28px;box-shadow:0 24px 72px #0003}.dialog-icon{width:44px;height:44px;color:var(--danger);background:var(--danger-soft);border:1px solid #f0beb9;border-radius:12px;place-items:center;margin-bottom:18px;display:grid}.confirm-dialog h2{margin:0;font-size:23px;font-weight:650;line-height:1.2}.confirm-dialog>p{color:var(--muted);margin:16px 0 0;font-size:14px;line-height:1.55}.confirm-dialog>p strong{color:var(--ink)}.confirmation-check{background:var(--attention-soft);cursor:pointer;border:1px solid #f1d38d;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:9px;margin-top:18px;padding:14px;font-size:13px;line-height:1.5;display:grid}.confirmation-check input{width:17px;height:17px;accent-color:var(--danger);margin:0}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.loading-state{min-height:300px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:15px;display:flex}.unavailable-state{min-height:300px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.unavailable-state>svg{color:var(--attention)}.unavailable-state strong{color:var(--ink);margin-top:13px;font-size:16px}.unavailable-state span{max-width:440px;margin-top:5px;font-size:14px;line-height:1.5}.unavailable-state button{margin-top:16px}.no-projects{min-height:100vh;color:var(--muted);background:var(--canvas);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.no-projects>svg{color:var(--accent)}.no-projects h1{color:var(--ink);margin:18px 0 0;font-size:30px;font-weight:650}.no-projects p{max-width:520px;margin:10px 0 22px;font-size:15px;line-height:1.6}@media (width<=1120px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.health-device-toolbar{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(150px,200px))}.health-device-result-count{grid-column:1/-1;justify-self:end}.floorplan-editor-toolbar{flex-wrap:wrap}.floorplan-editor-selectors{flex:330px}.floorplan-editor-body{grid-template-columns:180px minmax(0,1fr) 180px}.floorplan-canvas-viewport{padding:18px}.activation-result{grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr)}.activation-result>.primary-button{grid-column:1/-1;width:max-content}}@media (width<=900px){.admin-shell{grid-template-columns:1fr}.app-sidebar{display:none}.mobile-header-brand{display:block}.header-context{flex:1;max-width:min(42vw,260px);margin-left:12px;display:block}.header-context span{font-size:9px}.header-context strong{font-size:13px}.header-context small{font-size:10px}.header-nav{margin-inline:auto;display:flex}.header-actions{flex:none}.operator{display:none}.mobile-project-navigation{background:#fff;border-bottom:1px solid #e5e8f0;display:block}.mobile-project-navigation .project-navigation{padding:0}.mobile-project-navigation .navigation-heading,.mobile-project-navigation .project-search,.mobile-project-navigation .scope-note,.project-list{display:none}.mobile-project-select{gap:6px;width:min(100%,620px);margin:0 auto;padding:12px 22px;display:grid}.mobile-project-select>span{color:var(--muted);font-size:12px;font-weight:600}.mobile-project-select select{width:100%;min-height:44px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 12px;font-size:16px}.floorplan-editor-selectors select,.floorplan-device-search input{font-size:16px}.section-tabs{display:flex}.staff-account-form{grid-template-columns:1fr;align-items:stretch}.staff-account-form>label,.staff-account-form>input,.staff-account-form>fieldset,.staff-account-form>.staff-permission-presets,.staff-account-form>.primary-button{grid-area:auto/1}.staff-permission-fieldset{grid-template-columns:1fr}.staff-account-form>.primary-button{width:100%}.project-draft-form-body,.project-draft-form-fields{grid-template-columns:1fr}.project-draft-field-wide{grid-column:auto}.draft-onboarding-meta,.draft-publish-source-segments,.draft-candidate-summary{grid-template-columns:1fr}.draft-discovery-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-topology-grid,.draft-topology-device-row{grid-template-columns:1fr}.draft-preflight-meta{grid-template-columns:1fr 1fr}.draft-preflight-confirmations label{grid-template-columns:18px auto minmax(0,1fr)}.draft-preflight-confirmations label small,.draft-preflight-confirmations label>span:last-child{grid-column:3}.draft-onboarding-step{grid-template-columns:38px minmax(0,1fr)}.draft-onboarding-state{grid-column:2;justify-self:start}}@media (width<=760px){.auth-layout{padding:28px 22px 44px}.auth-context{padding:0}.auth-context .eyebrow{margin-top:22px}.auth-context h1{font-size:42px}.auth-intro{font-size:16px}.security-note{margin-top:20px}.auth-form{width:min(420px,100%);margin:28px auto 0}.app-header{padding-inline:20px}.admin-main{padding:24px 22px}.dashboard-detail-list{grid-template-columns:1fr}.dashboard-detail-list div+div{border-top:1px solid var(--line);border-left:0}.dashboard-task-list{grid-template-columns:1fr}.content-section,.control4-import-section,.activation-section,.license-section{padding:22px}.projects-home-toolbar{grid-template-columns:1fr}.projects-home-search input,.projects-home-sort select{font-size:16px}.project-draft-form{padding:20px}.project-draft-form-footer{flex-direction:column;align-items:stretch;gap:13px}.project-draft-form-footer-actions{justify-content:flex-end}}@media (width<=820px){.floorplan-editor-toolbar{align-items:stretch}.floorplan-editor-mode{order:3;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.floorplan-editor-body{grid-template-columns:150px minmax(0,1fr) 150px;height:600px}.floorplan-tool-panel{padding:14px 9px}.floorplan-tool-assets .secondary-button,.floorplan-tool-assets .primary-button{padding-inline:7px}.floorplan-tool-panel .floorplan-select-all{padding-inline:7px!important}.floorplan-stage{min-height:0}.floorplan-canvas-viewport{padding:14px}}@media (width<=600px){.floorplan-selection-summary{min-height:32px}.floorplan-selection-actions{flex:none;justify-content:flex-start;width:100%}.floorplan-select-all{flex:none}.draft-pairing-claim{grid-template-columns:1fr}.draft-pairing-code-field{grid-column:auto}.pairing-qr-scanner{min-width:0}.pairing-qr-actions .pairing-qr-image-button{width:42px}.draft-pairing-claim button{width:100%}.app-header{height:calc(60px + env(safe-area-inset-top,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-left:max(16px, env(safe-area-inset-left,0px))}.mobile-header-brand .brand-mark.small{width:78px}.mobile-header-brand .brand-mark.small img{width:64px}.header-nav{gap:2px}.header-nav-label{display:none}.header-nav-link{justify-content:center;width:44px;padding-inline:0}.admin-main{padding:24px max(17px, env(safe-area-inset-right,0px)) max(24px, env(safe-area-inset-bottom,0px)) max(17px, env(safe-area-inset-left,0px))}.projects-home-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-home-summary>div{padding:11px 13px}.projects-home-summary>div:first-child{border-bottom:0;grid-column:auto}.projects-home-summary>div:nth-child(2){border-left:1px solid #e1e5ed}.projects-home-summary>div:nth-child(3){border-top:1px solid #e1e5ed;border-left:0}.projects-home-summary>div:nth-child(4){border-top:1px solid #e1e5ed}.project-widget-grid{grid-template-columns:1fr}.project-widget{min-height:248px}.project-draft-form-heading{gap:14px}.project-draft-form-heading-actions>svg{display:none}.project-draft-form-footer-actions{width:100%}.project-draft-form-footer-actions>button{flex:1 1 0}.dashboard-overview{padding:0}.dashboard-heading{flex-direction:column;gap:14px}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-task{grid-template-columns:42px minmax(0,1fr) auto;gap:10px}.dashboard-task>svg{display:none}.dashboard-health-credential{grid-template-columns:1fr}.dashboard-health-credential>.dashboard-health-actions{padding-left:0}.dashboard-health-actions{width:100%}.dashboard-health-actions>button{flex:auto}.dashboard-health-empty{flex-wrap:wrap;align-items:flex-start}.dashboard-health-empty .secondary-button{width:100%}.health-device-toolbar{grid-template-columns:minmax(0,1fr);align-items:stretch}.health-device-result-count{justify-self:start}.health-room-heading{flex-direction:column;align-items:flex-start;gap:4px}.health-room-heading span{white-space:normal}.health-location-browser{grid-template-columns:minmax(0,1fr)}.health-floor-tabs{grid-template-columns:minmax(0,1fr);position:static}.section-tabs{gap:18px;overflow-x:auto}.section-tab{white-space:nowrap;min-height:44px}.section-heading h2{font-size:21px}.section-intro{font-size:16px}.control4-import-controls,.control4-naming-contract{grid-template-columns:1fr}.floorplan-editor-toolbar{flex-direction:column}.floorplan-editor-mode{order:initial}.floorplan-editor-body{grid-template-columns:1fr;height:auto}.floorplan-tool-panel{border-bottom:1px solid #e3e6ed;border-right:0;grid-column:1;min-height:0;padding:14px}.floorplan-tool-panel .floorplan-selection-actions{flex-flow:wrap;align-items:center}.floorplan-tool-panel .floorplan-select-all{width:auto}.floorplan-tool-panel .floorplan-tool-divider{width:1px;height:28px}.floorplan-tool-panel .floorplan-tool-group{width:auto}.floorplan-stage,.preview-mode .floorplan-stage,.floorplan-device-panel{grid-column:1}.floorplan-editor-selectors{grid-template-columns:1fr}.floorplan-stage{min-height:330px}.floorplan-canvas-viewport{padding:12px 8px}.floorplan-device-panel{border-top:1px solid #e3e6ed;border-left:0;min-height:420px;max-height:500px}.floorplan-tablet{--floorplan-bezel-block:12px;--floorplan-bezel-inline:18px;border-radius:18px}.floorplan-tablet-camera{width:5px;height:5px;left:6px}.floorplan-screen{border-radius:8px}.floorplan-layout-canvas{border-radius:8px;width:min(100%,960px)}.floorplan-editor-caption{padding-inline:12px}.floorplan-editor-caption strong{font-size:10px}.floorplan-editor-selectors select,.floorplan-device-search input{font-size:16px}.preview-mode .floorplan-stage{min-height:420px}.control4-import-controls .primary-button{width:100%}.control4-naming-contract div+div{border-top:1px solid var(--line);border-left:0}.activation-form>div,.license-form>div,.issued-license{grid-template-columns:1fr}.issued-license>.icon-button{width:100%}.activation-result{grid-template-columns:1fr}.activation-result>.primary-button{grid-column:auto;width:100%}.activation-result dl{grid-template-columns:1fr}.table-wrap{border-radius:0;overflow:visible}.admin-table,.admin-table tbody{display:block}.admin-table thead{display:none}.admin-table tr{border-top:1px solid var(--line);grid-template-columns:1fr auto;padding:13px 10px;display:grid}.admin-table tr:first-child{border-top:0}.admin-table td{text-align:right;border:0;justify-content:space-between;align-items:center;gap:12px;padding:5px 0;font-size:14px;display:flex}.admin-table td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;flex:none;font-size:11px;font-weight:600}.admin-table td:first-child{text-align:left;grid-column:1/-1;padding-bottom:9px;display:block}.admin-table td:first-child:before,.admin-table .table-action:before{display:none}.admin-table .table-action{grid-column:1/-1;padding-top:10px}.admin-table .table-action .revoke-button{width:100%}.health-incident-table td:nth-child(n+2),.health-monitored-table td:nth-child(n+2),.device-table td:nth-child(2),.device-table td:nth-child(3),.device-table td:nth-child(4){grid-column:1/-1}.device-identity{justify-content:flex-start}.staff-account-table tr{grid-template-columns:1fr}.staff-account-table td,.staff-account-table td:first-child,.staff-account-table .staff-account-actions{grid-column:1;display:block;text-align:left!important}.staff-account-table td:before{margin-bottom:4px;display:block}.staff-account-table td:first-child:before,.staff-account-table .staff-account-actions:before{display:none}.staff-account-actions>span{grid-template-columns:1fr auto;width:100%;display:grid}.staff-account-actions>.secondary-button,.staff-account-actions .secondary-button{width:100%}.staff-permission-presets,.staff-permission-controls{flex-direction:column;align-items:stretch}.staff-permission-preset-options{grid-template-columns:repeat(3,1fr);display:grid}.staff-permission-toggle{width:100%}.permission-preset{padding-inline:8px}.dialog-backdrop{padding:12px max(12px, env(safe-area-inset-right,0px)) max(12px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));align-items:end}.confirm-dialog{padding:20px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}@media (width<=420px){.dashboard-kpis{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.preview-mode .floorplan-stage{background:#dfe4e7}.controlx-interface-preview{isolation:isolate;background:#050d18;place-items:center;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden;container:controlx-preview/size}.controlx-preview-live-stage{width:var(--controlx-preview-width);height:var(--controlx-preview-height);contain:layout paint;transform:translate(-50%, -50%) scale(var(--controlx-preview-scale));transform-origin:50%;background:#050d18;position:absolute;top:50%;left:50%;overflow:hidden}.controlx-preview-input-shield{z-index:2;cursor:default;pointer-events:auto;position:absolute;inset:0}.controlx-preview-connection-state{z-index:4;color:#d8e1eb;text-align:center;background:#050d18db;align-content:center;place-items:center;gap:10px;padding:24px;display:grid;position:absolute;inset:0}.controlx-preview-connection-state strong{font-size:14px;font-weight:650}.controlx-preview-connection-state a{color:#fff;background:#ffffff1a;border:1px solid #ffffff42;border-radius:7px;align-items:center;min-height:40px;padding:0 13px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}.controlx-preview-connection-state a:hover{background:#ffffff29;border-color:#ffffff73}.floorplan-caption-label{align-items:center;gap:9px;min-width:0;display:inline-flex}@media (width<=600px){.controller-layout-publication{flex-direction:column;align-items:stretch}.controller-layout-publication>.primary-button{width:100%}.floorplan-caption-label{gap:6px}}@container floorplan-editor (width<=980px){.floorplan-editor-toolbar{flex-wrap:wrap;align-items:stretch}.floorplan-editor-selectors{flex:520px;width:min(100%,680px)}.floorplan-editor-mode{order:3;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0}.floorplan-editor-body{grid-template-columns:minmax(0,1fr);height:auto}.floorplan-tool-panel{overscroll-behavior-x:contain;scrollbar-width:thin;border-bottom:1px solid #e3e6ed;border-right:0;flex-direction:row;grid-column:1;align-items:center;gap:12px;padding:12px 14px;overflow-x:auto}.floorplan-tool-panel-heading{border-bottom:0;border-right:1px solid #e3e6ed;flex:0 0 168px;min-width:168px;padding:0 12px 0 0}.floorplan-tool-panel .floorplan-selection-actions{flex-direction:row;align-items:center;gap:8px;min-width:max-content}.floorplan-tool-panel .floorplan-selection-actions>.icon-button:last-child{margin-top:0}.floorplan-tool-panel .floorplan-select-all{width:auto;min-width:154px}.floorplan-tool-panel .floorplan-tool-divider{width:1px;height:28px}.floorplan-tool-panel .floorplan-tool-group{width:auto}.floorplan-stage,.preview-mode .floorplan-stage{grid-column:1;min-height:clamp(460px,68cqw,650px)}.floorplan-device-panel{border-top:1px solid #e3e6ed;border-left:0;grid-column:1;min-height:360px;max-height:min(520px,70dvh)}}@container floorplan-editor (width<=620px){.floorplan-editor-toolbar{flex-direction:column}.floorplan-editor-selectors{flex:none;grid-template-columns:1fr;width:100%}.floorplan-editor-mode{order:initial}.floorplan-tool-panel{flex-direction:column;align-items:stretch;overflow:visible}.floorplan-tool-panel-heading{border-bottom:1px solid #e3e6ed;border-right:0;flex-basis:auto;width:100%;min-width:0;padding:0 0 10px}.floorplan-tool-panel .floorplan-selection-actions{flex-flow:wrap;min-width:0}.floorplan-tool-panel .floorplan-selection-actions>.icon-button:last-child{margin-top:0}.floorplan-tool-panel .floorplan-select-all{min-width:0}.floorplan-stage,.preview-mode .floorplan-stage{min-height:clamp(330px,80cqw,500px)}.floorplan-editor-caption{min-height:44px;padding:5px 12px}.floorplan-caption-label{white-space:normal;flex-wrap:wrap;gap:5px 7px;line-height:1.25}.floorplan-device-panel{min-height:340px;max-height:min(480px,72dvh)}}@container floorplan-canvas (width<=560px){.floorplan-tablet{--floorplan-bezel-block:12px;--floorplan-bezel-inline:18px;border-radius:18px}.floorplan-tablet-camera{width:5px;height:5px;left:6px}.floorplan-screen{border-radius:8px}}@container controlx-preview (width<=520px){.controlx-preview-connection-state{gap:8px;padding:16px}.controlx-preview-connection-state strong{max-width:28ch;font-size:13px;line-height:1.35}.controlx-preview-connection-state a{min-height:38px;font-size:11px}}@container controlx-preview (height<=340px){.controlx-preview-connection-state{gap:7px;padding-block:10px}.controlx-preview-connection-state strong{font-size:12px;line-height:1.3}.controlx-preview-connection-state a{min-height:34px}}
