/* Shared final brand layer. Status colors and icon fonts retain their semantics. */
.iot-role-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.iot-role-metrics .card { height:100%; }
.iot-role-metrics h3 { font-size:1.125rem; margin-top:8px; }
.iot-role-value { font-size:2rem; font-weight:600; margin:20px 0 8px; font-variant-numeric:tabular-nums; }
.iot-role-value small { font-size:1rem; color:var(--vera-muted); }
.vera-avatar-editor { position:relative; width:96px; margin-inline:auto; }
.vera-avatar-edit { position:absolute; bottom:0; right:-8px; background:var(--vera-surface,#fff); border:1px solid var(--tblr-border-color); }
.vera-avatar-dialog { width:min(520px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; border:1px solid var(--tblr-border-color); border-radius:8px; color:var(--vera-text); background:var(--vera-surface,#fff); }
.vera-avatar-dialog::backdrop { background:#0008; }
.vera-avatar-preview { width:120px; height:120px; border-radius:50%; object-fit:cover; }
.vera-avatar-dialog [hidden] { display:none !important; }
.vera-account-layout { align-items:start; }
.vera-account-layout > .order-1 > :first-child { margin-top:0 !important; }
@media(max-width:767.98px) { .iot-role-metrics { grid-template-columns:1fr; } }
.device-workspace { min-width:0; }
.device-summary-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.device-summary-columns > section { min-width:0; }
.device-summary-wide { grid-column:1 / -1; }
.device-ble-toolbar { display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap; }
.device-ble-toolbar > div:first-child { flex:1 1 320px;min-width:0; }
.device-management-features { margin:0 0 20px; }
.device-management-features > div { display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--tblr-border-color); }
.device-management-features dd { margin:0; }
@media(max-width:575.98px){.device-management-features > div{grid-template-columns:1fr;gap:8px;}}
@media(max-width:991.98px) { .device-summary-columns { grid-template-columns:1fr; gap:0; } }
.device-next-step { display:flex; align-items:center; gap:16px; padding:20px 0; }
.device-next-step > .la { font-size:1.5rem; flex:none; }
.device-next-step > div { flex:1; min-width:0; }
.device-next-step h2 { font-size:1.125rem; margin:0 0 4px; }
.device-next-step p { color:var(--vera-muted); margin:0; }
.device-workspace .device-assignment-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
.device-assignment-summary > div { min-width:0; overflow-wrap:anywhere; }
.device-assignment-summary > div > .small:first-child { margin-bottom:8px; }
.device-workspace :is(#device-company-section,#device-identity-title) { scroll-margin-top:100px; }
@media(max-width:767.98px) {
    .device-next-step { flex-wrap:wrap; }
    .device-next-step > .btn { margin-left:40px; }
    .device-workspace .device-assignment-summary { grid-template-columns:1fr; gap:20px; }
}
.device-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-block:1px solid var(--tblr-border-color); padding:20px 0; gap:24px; }
.device-overview strong { display:block; font-size:1.25rem; margin:6px 0; overflow-wrap:anywhere; }
.device-overview p { color:var(--vera-muted); font-size:.8125rem; margin:0; }
.device-section { padding:24px 0; border-bottom:1px solid var(--tblr-border-color); }
[data-software-preparation] [hidden], [data-device-discovery] [hidden] { display:none !important; }
[data-software-preparation] { overflow-wrap:anywhere; }
[data-software-preparation] fieldset { min-width:0; }
.device-section-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:16px; }
.device-section-heading h2 { margin:0; font-size:1.125rem; }
.device-assignment-summary { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.device-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; }
.device-facts dt { color:var(--vera-muted); font-weight:400; font-size:.8125rem; }
.device-facts dd { margin:4px 0 0; overflow-wrap:anywhere; }
.device-topic { overflow-wrap:anywhere; min-width:180px; }
.device-configuration summary,.device-management summary { cursor:pointer; padding:10px 0; }
.device-workspace #assignment-history { margin-top:24px; scroll-margin-top:80px; }
@media(max-width:991.98px) { .device-overview { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:575.98px) { .device-facts { grid-template-columns:1fr; } .device-overview { gap:20px 16px; } .device-assignment-summary > div { width:100%; } }
/* One page gutter; legacy view containers must not add another page inset. */
body[bp-layout="vertical"] { --vera-page-gutter:32px; }
body[bp-layout="vertical"] .page-wrapper > .page-body { margin:0; padding:24px 0; }
body[bp-layout="vertical"] .page-body > main {
    box-sizing:border-box; width:100%; max-width:none; min-width:0;
    margin:0; padding:0 var(--vera-page-gutter) !important;
}
body[bp-layout="vertical"] .page-body > main > :is(.container-fluid,.container-xl,.container-xxl),
body[bp-layout="vertical"] .page-body > main > .page-header > :is(.container-fluid,.container-xl,.container-xxl),
body[bp-layout="vertical"] .page-body > main > .container-fluid > :is(.container-fluid,.container-xl,.container-xxl),
body[bp-layout="vertical"] .page-body > main > .container-fluid > .page-header > :is(.container-fluid,.container-xl,.container-xxl) {
    width:100%; max-width:none !important; margin-left:0; margin-right:0; padding-left:0 !important; padding-right:0 !important;
}
body[bp-layout="vertical"] .page-body > main .page-header { margin-top:0; }
body[bp-layout="vertical"] .page-body > main .vera-dashboard-lab { padding-top:0; }
@media (min-width:768px) and (max-width:991.98px) {
    body[bp-layout="vertical"] { --vera-page-gutter:24px; }
}
@media (max-width:767.98px) {
    body[bp-layout="vertical"] { --vera-page-gutter:16px; }
    body[bp-layout="vertical"] .page-wrapper > .page-body { padding-top:16px; }
}
.vera-global-header { position:fixed; top:0; left:0; right:0; height:64px; z-index:1035; display:flex; align-items:center; gap:16px; padding:0 32px; background:var(--vera-surface,#fff); border-bottom:1px solid var(--tblr-border-color); }
.vera-sidebar-controls .ot-sidebar-toggle { position:relative; inset:auto; width:44px; height:44px; border-radius:4px; flex-shrink:0; border:0; background:transparent; box-shadow:none; color:var(--vera-muted); }
.vera-sidebar-controls .ot-sidebar-toggle > i { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; font-size:20px; line-height:1; }
.vera-sidebar-controls .ot-sidebar-toggle:focus:not(:focus-visible) { outline:none; box-shadow:none; }
.vera-sidebar-controls .ot-sidebar-toggle::before { content:none; }
.vera-menu-search { flex:0 0 auto; width:100%; padding:12px; background:var(--vera-surface); border-bottom:1px solid var(--vera-border); }
.vera-menu-search .form-control { width:100%; min-width:0; height:40px; }
.vera-menu-search-expand { display:none; }
body #vera-sidebar #mobile-menu [hidden] { display:none !important; }
#vera-menu-results { width:100%; }
.vera-menu-search-status { padding:12px 16px 4px; margin:0; color:var(--vera-muted); font-size:.8125rem; }
body #vera-sidebar #mobile-menu .nav-link { min-height:44px; padding-block:8px; border-radius:4px; }
body #vera-sidebar .ot-sidebar-section { margin-top:12px; margin-bottom:2px; padding-block:2px; }
body #vera-sidebar #mobile-menu .nav-item:not(.ot-sidebar-section) { margin-block:0; }
@media(min-width:992px) {
    html.ot-sidebar-compact .vera-menu-search input { display:none; }
    html.ot-sidebar-compact .vera-menu-search-expand { display:inline-flex; }
    html.ot-sidebar-compact .vera-menu-search { display:flex; justify-content:center; padding-inline:0; }
}
.vera-sidebar-controls .ot-sidebar-toggle:hover { background:var(--vera-accent-soft); color:var(--vera-text); }
.vera-sidebar-controls .ot-sidebar-toggle:focus-visible { outline:2px solid var(--vera-link); outline-offset:2px; }
@media(min-width:992px) {
    body .navbar.navbar-vertical > .container-fluid { padding-bottom:0 !important; }
    body .navbar.navbar-vertical #mobile-menu { overscroll-behavior-y:contain; }
    .vera-sidebar-controls { flex:0 0 52px; min-height:52px; width:100%; align-items:center; padding:4px 12px; border-top:1px solid var(--vera-border); background:var(--vera-surface); }
    html.ot-sidebar-compact .vera-sidebar-controls { justify-content:center; padding-inline:0; }
}
.vera-global-brand { display:flex; align-items:center; flex:0 0 112px; min-width:0; height:40px; overflow:hidden; color:inherit; text-decoration:none; }
.vera-global-header .vera-global-brand img { width:112px; height:36px; max-width:100%; max-height:36px; object-fit:contain; }
.vera-global-header > .btn { flex-shrink:0; }
.vera-global-context { border-left:1px solid var(--tblr-border-color); padding-left:16px; }
.vera-global-header :is(a,button):focus-visible { outline:2px solid var(--vera-text,#171717); outline-offset:3px; }
@media(min-width:992px) { body .navbar.navbar-vertical.navbar-expand-lg.navbar-fixed { top:64px !important; height:calc(100dvh - 64px) !important; } }
.vera-coach { position:fixed; z-index:1060; width:min(350px,calc(100vw - 32px)); padding:20px; border:1px solid var(--tblr-border-color); border-radius:6px; background:var(--vera-surface,#fff); color:var(--vera-text,#182433); box-shadow:0 8px 30px #0003; }
.vera-coach[hidden] { display:none; }
.vera-coach button[hidden] { display:none !important; }
.vera-coach { max-height:calc(100dvh - 32px); overflow:auto; overflow-wrap:anywhere; }
.vera-guidance-preview { width:min(100%, 420px); padding:20px; border:1px solid var(--tblr-border-color); border-radius:6px; background:var(--vera-surface,#fff); }
.vera-guidance-preview h3 { font-size:1rem; }
body .page nav[aria-label="Guide e novita"] { overflow-y:hidden; }
#editor { scroll-margin-top:84px; }
.vera-coach h2 { font-size:1rem; margin:0 32px 8px 0; }
.vera-coach p { margin-bottom:16px; }
.vera-coach-close { position:absolute; right:8px; top:8px; }
.vera-update-entry { padding:24px 0; border-bottom:1px solid var(--tblr-border-color); }
.vera-global-context { display:flex; flex-direction:column; min-width:0; }
.vera-global-context strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.vera-global-actions { margin-left:auto; display:flex; align-items:center; gap:20px; flex-shrink:0; }
.vera-global-actions .vera-notification-trigger { position:relative; top:auto; right:auto; }
body .page-wrapper { padding-top:64px; }
@media(max-width:991.98px) {
    .vera-global-header { left:0; padding:0 16px; gap:10px; }
    .vera-global-context { flex:1; padding-left:10px; }
    .vera-global-context .vera-context-label .small { display:none; }
    .vera-global-actions { gap:12px; }
    body #vera-sidebar.navbar-vertical { position:fixed !important; inset:0 auto 0 0 !important; width:min(288px,calc(100vw - 48px)) !important; max-width:none !important; height:100dvh !important; max-height:100dvh !important; min-height:0; padding:0 !important; overflow:hidden !important; z-index:1045; background:var(--vera-surface) !important; border-right:1px solid var(--vera-border); }
    body #vera-sidebar > .container-fluid { display:flex !important; flex-direction:column; flex-wrap:nowrap; align-items:stretch; height:100%; min-height:0; padding:0 !important; overflow:hidden !important; }
    body #vera-sidebar #mobile-menu { display:flex !important; flex:1 1 auto; min-height:0; width:100%; margin:0 !important; overflow-y:auto !important; overflow-x:hidden !important; overscroll-behavior-y:contain; align-items:flex-start; }
    body #vera-sidebar #mobile-menu > .navbar-nav { width:100%; margin:0; padding:8px !important; }
    .vera-sidebar-heading { display:flex; align-items:center; gap:12px; flex:0 0 64px; padding:8px 12px 8px 20px; border-bottom:1px solid var(--vera-border); background:var(--vera-surface); }
    .vera-sidebar-heading strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .vera-sidebar-heading .btn { flex:0 0 40px; margin-left:auto; }
    .vera-global-header .vera-menu-trigger { border:0; box-shadow:none; background:transparent; }
    .vera-global-header .vera-global-brand { display:none; }
    .vera-global-actions .ot-user-menu { padding-right:0 !important; }
    .vera-global-actions .vera-notification-trigger { top:auto; right:auto; }
}
@media(max-width:575.98px) {
    .vera-global-header { padding-inline:12px; gap:6px; }
    .vera-global-brand { flex-basis:60px; }
    .vera-global-header .vera-global-brand img { width:60px; }
    .vera-global-actions { gap:4px; }
    .vera-global-context { font-size:.8125rem; padding-left:6px; }
    .vera-global-header .btn-icon { width:36px; height:36px; padding:0; }
    .vera-global-header .vera-context-switch { width:28px; }
}
.registry-identity { display: flex; align-items: center; gap: 12px; min-width: 200px; }
/* Shared navigation surfaces: context is separate from personal account. */
.vera-global-header .vera-global-context { flex:0 1 360px; min-width:0; }
.vera-context-trigger { display:flex; align-items:center; gap:12px; min-width:0; min-height:44px; padding:4px 8px; border:0; border-radius:4px; background:transparent; color:var(--vera-text); font:inherit; text-align:left; }
.vera-context-label { display:flex; flex-direction:column; min-width:0; gap:2px; }
.vera-context-trigger > i { flex-shrink:0; font-size:14px; }
.vera-context-trigger:hover,.vera-account-trigger:hover { background:var(--vera-accent-soft); }
.vera-global-header .vera-global-actions { gap:8px; }
.vera-global-header .vera-global-actions > .btn-icon { width:44px; height:44px; border:0; border-radius:4px; box-shadow:none; background:transparent; }
.vera-global-header .vera-notification-trigger { width:44px; height:44px; border:0; border-radius:4px; background:transparent; color:var(--vera-text); }
.vera-global-header .vera-notification-trigger:hover,.vera-global-header .vera-global-actions > .btn-icon:hover { background:var(--vera-accent-soft); }
.vera-global-header .vera-notification-trigger span { top:0; right:0; }
.vera-global-header .ot-user-menu { padding-right:0 !important; }
.vera-global-header .vera-account-trigger { min-width:44px; min-height:44px; gap:8px; padding:4px 8px; border:0; border-radius:4px; background:transparent; max-width:240px; }
.vera-global-header .vera-account-trigger:focus:not(:focus-visible) { outline:none; box-shadow:none; }
.vera-global-header .vera-menu-trigger { min-width:44px; min-height:44px; }
.vera-account-name { max-width:156px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.vera-global-header .vera-header-menu { width:300px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 88px); overflow-y:auto; padding:6px; border:1px solid var(--vera-border); border-radius:6px; background:var(--vera-surface); color:var(--vera-text); box-shadow:0 4px 16px #0002; }
.vera-header-menu-identity { display:flex; flex-direction:column; gap:4px; padding:10px 12px 14px; margin-bottom:6px; border-bottom:1px solid var(--vera-border); overflow-wrap:anywhere; }
.vera-header-menu-identity > span { font-size:.8125rem; }
.vera-global-header .vera-header-menu .dropdown-item { display:flex; align-items:center; gap:10px; min-height:44px; padding:8px 12px; border-radius:4px; white-space:normal; }
.vera-global-header .vera-header-menu .dropdown-item i { flex:0 0 20px; font-size:20px; margin:0 !important; text-align:center; }
.vera-global-header .vera-header-menu .dropdown-item:hover { background:var(--vera-accent-soft); }
@media(max-width:991.98px) {
    .vera-global-header .vera-global-context { flex:1 1 auto; border-left:0; padding-left:0; }
    .vera-global-header .vera-header-menu { position:fixed !important; inset:72px 12px auto auto !important; transform:none !important; }
    .vera-global-header .vera-context-switch { width:auto; }
}
@media(max-width:575.98px) {
    .vera-global-header { padding-inline:8px; gap:4px; }
    .vera-global-header .vera-global-actions { gap:0; }
    .vera-global-header .vera-account-trigger { padding-inline:4px; }
    .vera-context-trigger { gap:4px; padding-inline:4px; }
}
.registry-identity__icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 36px; height: 36px; border-radius: 4px; color: var(--vera-link); background: var(--vera-accent-soft); font-size: 1.125rem; }
.registry-sort-link { display: inline-flex; align-items: center; gap: 8px; color: inherit; text-decoration: none !important; }
.registry-sort-link i { color: var(--vera-link); }
.registry-inline-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.registry-inline-trigger { float: right; margin-left: 6px; min-width: 32px; min-height: 32px; }
body .page .table .registry-row-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: nowrap; gap: 6px; margin: 0; width: max-content; min-width: 100%; }
body .page .table .registry-row-actions > * { flex-shrink: 0; margin: 0; }
body .page .table .registry-row-actions .btn { height: 36px; min-height: 36px; padding-top: 0; padding-bottom: 0; white-space: nowrap; }
body .page .table .registry-row-actions > form { display: flex; align-items: center; flex-wrap: nowrap; gap: 6px; }
body .page .table .registry-row-actions .registry-inline-trigger { float: none; margin: 0; }
/* The first data column absorbs spare width; selection and secondary columns stay intrinsic. */
body .page main table:has(thead) { table-layout: auto; width: 100%; }
body .page main table:has(thead) > :is(thead, tbody) > tr > :is(th, td):not([colspan]) { width: 1%; white-space: nowrap; }
body .page main table:has(thead) > :is(thead, tbody) > tr > :is(th, td):first-child:not([colspan]) { width: 100%; white-space: normal; }
body .page main table:has(thead tr > :first-child input[type="checkbox"]) > :is(thead, tbody) > tr > :is(th, td):first-child:not([colspan]) { width: 1%; white-space: nowrap; }
body .page main table:has(thead tr > :first-child input[type="checkbox"]) > :is(thead, tbody) > tr > :is(th, td):nth-child(2):not([colspan]) { width: 100%; white-space: normal; }
body .page .table .registry-row-actions .registry-icon-action { width: 36px; min-width: 36px; padding-inline: 0; }
body .page .table .registry-row-actions .registry-icon-action > :is(i, svg) { margin: 0 !important; }
body .page .registry-register .registry-inline-row > td { text-align: left !important; }
body .page .registry-inline-row > td { background: var(--vera-surface); padding: 0 !important; white-space: normal; }
.registry-inline-row [data-inline-form] { padding: 20px 24px; border-block: 1px solid var(--vera-border); }
.registry-register > .table-responsive { container-type: inline-size; }
.registry-register .registry-inline-row [data-inline-form] { position: sticky; left: 0; width: 100cqi; max-width: 100%; box-sizing: border-box; }
.registry-register .table-responsive:has(.registry-empty-state) { container-type: inline-size; }
body .page .registry-register td:has(> .registry-empty-state) { padding: 0 !important; white-space: normal; }
.registry-register .registry-empty-state { position: sticky; left: 0; width: 100cqi; max-width: 100%; box-sizing: border-box; padding: 24px 20px; text-align: center; overflow-wrap: anywhere; }
.registry-inline-header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.registry-inline-header .card-title { margin:4px 0 0; overflow-wrap:anywhere; }
.registry-inline-footer { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; padding-top:16px; margin-top:20px; border-top:1px solid var(--vera-border); }
.registry-inline-row .registry-identifier { padding:10px 12px; background:var(--vera-canvas,var(--vera-surface)); border-radius:4px; }
.registry-inline-row .registry-copy-value { overflow-wrap:anywhere; }
.registry-inline-row[hidden] { display: none !important; }
.registry-inline-fields input { min-width: 0; width: 100%; }
.registry-inline-fields > div { min-width: 0; }
body .page .registry-copy-value { position: relative; display: block; width: 100%; min-height: 44px; padding: 10px 0; border: 0; border-radius: 3px; background: transparent; color: var(--vera-text); font: inherit; text-align: left; overflow-wrap: anywhere; cursor: copy; user-select: text; }
body .page .registry-copy-value:hover { color: var(--vera-link); background: transparent; }
body .page .registry-copy-value:focus-visible { outline: 2px solid var(--vera-link); outline-offset: 3px; }
.registry-copy-tooltip { position: absolute; bottom: 100%; left: 0; z-index: 10; width: max-content; max-width: 100%; padding: 5px 8px; border-radius: 4px; background: var(--vera-text); color: var(--vera-surface); font-size: .75rem; pointer-events: none; opacity: 0; }
.registry-copy-value:is(:hover,:focus-visible,.is-copy-feedback) .registry-copy-tooltip { opacity: 1; }
body .page .table .btn.btn-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 36px; width: 36px; min-width: 36px; height: 36px; min-height: 36px; padding: 0; border-radius: 6px; }
body .page .table .btn.btn-icon i { margin: 0 !important; font-size: 18px; line-height: 1; }
body .page .table .btn.btn-outline-danger { color: var(--vera-danger, #b42318) !important; border-color: var(--vera-danger, #b42318) !important; background: var(--vera-surface) !important; }
body .page .table .btn.btn-outline-danger:is(:hover,:focus-visible) { color: #fff !important; background: var(--vera-danger, #b42318) !important; border-color: var(--vera-danger, #b42318) !important; text-decoration: none !important; }
body .page .table .btn.btn-outline-danger:focus-visible { outline: 2px solid var(--vera-danger, #b42318); outline-offset: 3px; }
@media (max-width: 767.98px) { .registry-inline-fields { grid-template-columns: minmax(0, 1fr); max-width: none; } }
/* Registers share a quiet header, aligned numeric summaries and row-level feedback. */
body .page .registry-register { box-shadow: none; border: 1px solid var(--vera-border); border-radius: 6px; }
body .page .registry-register > .card-header { padding: 16px 20px; gap: 12px; flex-wrap: wrap; background: var(--vera-surface); }
body .page .registry-register .table { margin-bottom: 0; }
body .page .registry-register .table thead th { background: color-mix(in srgb, var(--vera-accent) 4%, var(--vera-surface)); color: var(--vera-muted); text-transform: none; font-size: var(--vera-type-small); font-weight: 600; padding-top: 12px; padding-bottom: 12px; }
body .page .registry-register .table tbody tr:not(.registry-inline-row) > td { border-color: var(--vera-border); padding-top: 10px !important; padding-bottom: 10px !important; vertical-align: middle; }
body .page .registry-register .iot-data-table tbody td { padding-top: 10px !important; padding-bottom: 10px !important; }
body .page .registry-register .table tbody tr:hover > td,
body .page .registry-register .table tbody tr:focus-within > td { background: color-mix(in srgb, var(--vera-accent) 4%, var(--vera-surface)); }
body .page .registry-register .company-table__stat { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-decoration: none; }
body .page .registry-register .company-table__stat strong { color: var(--vera-text); font-variant-numeric: tabular-nums; }
body .page .registry-register .company-table__stat span { font-size: var(--vera-type-small); color: var(--vera-muted); }
body .page .registry-register a.company-table__stat:hover strong { text-decoration: underline; }
body .page .registry-filters__heading { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; font-size: var(--vera-type-card); font-weight: 600; color: var(--vera-text); }
body .page .registry-filters__heading i { color: var(--vera-link); }
/* Registry summaries are individual metrics; filters remain a separate working area. */
body .page .registry-overview.card { background: transparent; border: 0; box-shadow: none; border-radius: 0; gap: 12px; overflow: visible; margin-bottom: 24px !important; }
body .page :is(.registry-overview__primary,.registry-overview__metric) { background: var(--vera-surface); border: 1px solid var(--vera-border); border-radius: 6px; min-height: 116px; box-shadow: none; }
body .page .registry-overview__icon { background: var(--vera-accent-soft) !important; color: var(--vera-link) !important; }
body .page :is(.registry-overview__headline,.registry-overview__value,.registry-overview__metric strong) { color: var(--vera-text) !important; font-variant-numeric: tabular-nums; }
body .page .registry-overview .progress { background: var(--vera-border); height: 4px; }
body .page .registry-overview .progress-bar { background: var(--vera-accent) !important; }
body .page a.registry-overview__metric:hover { background: color-mix(in srgb, var(--vera-accent) 5%, var(--vera-surface)); border-color: var(--vera-link); }
body .page a.registry-overview__metric:focus-visible { outline: 2px solid var(--vera-link); outline-offset: 2px; }
body .page :is(.registry-filters,.ot-filter-card) { background: var(--vera-surface); background-image: none; border: 1px solid var(--vera-border); border-radius: 6px; box-shadow: none; }
body .page .registry-register > .registry-filters { margin: 0 !important; border: 0; border-bottom: 1px solid var(--vera-border); border-radius: 6px 6px 0 0; box-shadow: none; }
body .page .registry-register > .registry-bulk { margin: 0 !important; border-radius: 0; box-shadow: none; }
body .page .registry-filters .card-body { padding: 18px 20px; }
body .page .registry-filters .form-label { font-size: var(--vera-type-small); color: var(--vera-muted); margin-bottom: 6px; font-weight: 600; }
body .page .registry-filters :is(.form-control,.form-select,.btn) { min-height: 42px; }
body .page .ot-filter-card::before { display: none; }
@media (max-width: 767.98px) {
    body .page .registry-filters .card-body { padding: 16px; }
    body .page :is(.registry-overview__primary,.registry-overview__metric) { min-height: 96px; }
}
:root { font-size: calc(16px * var(--vera-font-scale, 1)) !important; }
body { font-size: var(--vera-font-size, 14px); }
body .navbar-vertical #mobile-menu .nav-link { font-size: .875rem; min-height: 44px; gap: 10px; }
body .navbar-vertical #mobile-menu .nav-icon { display: inline-flex !important; align-items: center; justify-content: center; width: 20px; min-width: 20px; font-size: 1.125rem; margin-right: 0; }
body .navbar-vertical .ot-sidebar-section { margin: 16px 16px 4px; padding: 4px 0; text-align: left; border: 0; color: var(--vera-muted); font-size: .8125rem; line-height: 1.5; font-weight: 400; text-transform: none; }
body .navbar-vertical .ot-sidebar-section:first-child { margin-top: 10px; }
.ot-sidebar-tools { position: relative; width: 100%; height: 8px; flex: 0 0 8px; padding: 0; }
.ot-sidebar-toggle { position: absolute; left: calc(100% - 1px); top: 6px; z-index: 2; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 24px; padding: 0; border: 1px solid var(--vera-border, #d8e2ef); border-radius: 0 4px 4px 0; background: var(--vera-surface, #fff); color: var(--vera-text); font-size: 1rem; }
.ot-sidebar-toggle:hover { background: var(--vera-accent-soft); }
.ot-sidebar-toggle:focus-visible { outline: 2px solid var(--vera-text); outline-offset: 3px; }
body .navbar-vertical .navbar-brand .ot-sidebar-logo-icon { display: none; }
@media (min-width: 992px) {
    body .page .navbar.navbar-vertical.navbar-expand-lg.navbar-fixed { overflow: visible !important; }
    .ot-sidebar-toggle { position: fixed; left: calc(var(--ot-sidebar-width, 272px) - 9px); top: 84px; width: 18px; height: 44px; border-radius: 3px; font-size: .75rem; }
    .ot-sidebar-toggle::before { content: ''; position: absolute; inset: 0 -3px; }
    html.ot-sidebar-compact body { --ot-sidebar-width: 76px; }
    html.ot-sidebar-compact body .navbar.navbar-vertical { overflow: visible !important; }
    html.ot-sidebar-compact .navbar-vertical .navbar-brand { margin: 12px 0 !important; padding: 0 6px; }
    html.ot-sidebar-compact .navbar-vertical .ot-sidebar-logo-full { display: none; }
    html.ot-sidebar-compact body .navbar-vertical .navbar-brand .ot-sidebar-logo-icon { display: inline-block; width: 36px !important; height: 36px !important; max-width: 36px !important; object-fit: contain; }
    html.ot-sidebar-compact body .navbar-vertical #mobile-menu .nav-link { justify-content: center; padding: 10px !important; gap: 0; min-height: 48px; }
    html.ot-sidebar-compact body .navbar-vertical #mobile-menu [data-current-group] { background:var(--vera-accent-soft) !important; }
    html.ot-sidebar-compact body .navbar-vertical #mobile-menu [data-current-group]::before { content:''; position:absolute; left:0; top:10px; bottom:10px; width:3px; background:var(--vera-link); }
    html.ot-sidebar-compact body .navbar-vertical #mobile-menu .nav-link .nav-icon { width: 24px; min-width: 24px; height: 24px; font-size: 22px !important; line-height: 1; }
    html.ot-sidebar-compact #mobile-menu .nav-link > span,
    html.ot-sidebar-compact #mobile-menu .nav-link::after,
    html.ot-sidebar-compact #mobile-menu .dropdown-menu,
    html.ot-sidebar-compact .ot-sidebar-section > span { display: none !important; }
    html.ot-sidebar-compact body .navbar-vertical .ot-sidebar-section { display: block !important; height: 1px; min-height: 0; margin: 18px 20px; padding: 0; border-bottom: 1px solid var(--vera-border, #d8e2ef); }
    html.ot-sidebar-compact body .navbar-vertical .ot-account-footer { padding: 10px 6px; }
    html.ot-sidebar-compact body .navbar-vertical .ot-account-footer .nav-link { justify-content: center !important; padding: 6px !important; }
    html.ot-sidebar-compact .ot-account-footer .ot-user-name,
    html.ot-sidebar-compact .ot-account-footer .dropdown-toggle::after { display: none !important; }
    html.ot-sidebar-compact body .navbar-vertical .ot-account-footer .dropdown-menu { width: 240px; right: auto; }
}
/* Text links keep a readable underline; compound controls never underline their contents. */
body a {
    text-underline-offset: .2em;
    text-decoration-thickness: 1px;
    text-decoration-skip-ink: auto;
}
body a:is(.btn, [role="button"], .nav-link, .dropdown-item, .page-link,
    .vera-lab-button, .vera-lab-pill, .vera-lab-functional-value, .vera-lab-task),
body .ot-section-tabs > a,
body .vera-lab-section-grid > a {
    text-decoration: none !important;
}
body a:is(.btn, [role="button"], .vera-lab-button, .vera-lab-pill,
    .vera-lab-functional-value, .vera-lab-task):focus-visible,
body .vera-lab-section-grid > a:focus-visible {
    outline: 2px solid var(--vera-text, currentColor);
    outline-offset: 3px;
}
body .vera-lab-section-grid > a:is(:hover, :focus-visible) .vera-lab-workspace-cta {
    text-decoration: underline;
    text-underline-offset: .2em;
}
body a > :is(i, svg), body .vera-lab-workspace-cta > i {
    display: inline-block;
    text-decoration: none;
}
html, body, body .page, body .page-wrapper, body .page-body, body .wrapper,
body .content-wrapper, body .main-content {
    background-color: var(--vera-canvas) !important;
}
body .page-title { font-size: 1.75rem !important; }
body .btn-primary, body .btn-outline-primary,
body .btn-primary:focus, body .btn-outline-primary:focus {
    background: var(--vera-accent) !important;
    border-color: var(--vera-accent) !important;
    color: var(--vera-on-primary) !important;
}
body .btn-primary:hover, body .btn-outline-primary:hover {
    background: var(--vera-accent) !important;
    border-color: var(--vera-accent) !important;
    color: var(--vera-on-primary) !important;
    box-shadow: inset 0 0 0 100px #0000000d;
}
body .btn-primary:disabled, body .btn-outline-primary:disabled { opacity: .55; }
body .page .btn.btn-outline-danger:is(:hover,:focus-visible,:active) { color:#fff !important; background:#b42318 !important; border-color:#b42318 !important; text-decoration:none !important; }
body .page .btn.btn-outline-danger:is(:hover,:focus-visible,:active) :is(i,svg) { color:inherit !important; }
body .navbar-vertical .nav-link { border: 0 !important; box-shadow: none !important; border-radius: 4px; }
body .navbar-vertical .nav-link:focus:not(:focus-visible) { outline: none !important; }
body .navbar-vertical .nav-link:hover,
body .navbar-vertical .nav-item.show > .nav-link,
body .navbar-vertical .nav-link[aria-expanded="true"],
body .navbar-vertical .dropdown-menu .dropdown-item:hover {
    background: color-mix(in srgb, var(--vera-accent) 5%, var(--vera-surface, #fff)) !important;
    color: var(--vera-text) !important;
}
body .navbar-vertical .nav-item.active > .nav-link,
body .navbar-vertical .nav-link.active,
body .navbar-vertical .dropdown-item.active,
body .navbar-vertical .dropdown-menu .nav-item.active > .nav-link {
    background: color-mix(in srgb, var(--vera-accent) 10%, var(--vera-surface, #fff)) !important;
    color: var(--vera-text) !important;
    font-weight: 600;
}
body .navbar-vertical .nav-link.active .nav-link-icon,
body .navbar-vertical .nav-item.active > .nav-link .nav-link-icon { color: inherit !important; }
body .navbar-vertical #mobile-menu > .navbar-nav { padding-top: 4px !important; }
body #vera-sidebar #mobile-menu :is(.nav-link, .dropdown-item) { position:relative; min-height:44px; padding:8px 16px; gap:10px; white-space:normal; font-size:var(--vera-type-body); font-weight:400; line-height:1.5; color:var(--vera-text); }
body #vera-sidebar #mobile-menu .nav-icon { display:inline-flex !important; align-items:center; justify-content:center; flex:0 0 20px; width:20px; height:20px; font-size:20px; color:var(--vera-muted); }
body .navbar-vertical #mobile-menu .dropdown-toggle[aria-expanded="true"] { background:transparent !important; font-weight:400; }
body #vera-sidebar #mobile-menu :is([aria-current="page"],.nav-link.active,.dropdown-item.active) { background:var(--vera-accent-soft) !important; font-weight:600; color:var(--vera-text); }
body #vera-sidebar #mobile-menu :is([aria-current="page"],.active) > .nav-icon { color:var(--vera-link); }
body .navbar-vertical #mobile-menu [aria-current="page"]::before { content:''; position:absolute; left:0; top:10px; bottom:10px; width:3px; border-radius:2px; background:var(--vera-link); }
body .navbar-vertical #mobile-menu .dropdown-menu { padding-block:4px; }
body .navbar-vertical #mobile-menu .dropdown-menu :is(.nav-link, .dropdown-item) { font-size:var(--vera-type-body); padding-inline-start:36px; }
body #vera-sidebar #mobile-menu .dropdown-menu { margin-inline:26px 10px; padding:4px 0; border-left:1px solid var(--vera-border); }
body #vera-sidebar #mobile-menu .dropdown-menu :is(.nav-link,.dropdown-item) { padding:8px 12px; margin:0 0 2px 8px; min-height:44px; }
body #vera-sidebar #mobile-menu .dropdown-menu .nav-icon { display:none !important; }
/* Expanded navigation only: compact rail and external flyouts retain their contract. */
html:not(.ot-sidebar-compact) body #vera-sidebar { --vera-nav-surface:color-mix(in srgb,var(--vera-text) 2%,var(--vera-surface)); background:var(--vera-nav-surface) !important; }
html:not(.ot-sidebar-compact) body #vera-sidebar .vera-menu-search { position:relative; padding:12px 12px 8px; border-bottom:0; background:var(--vera-nav-surface); }
html:not(.ot-sidebar-compact) body #vera-sidebar .vera-menu-search::before { content:'\f002'; font-family:'Line Awesome Free'; font-weight:900; position:absolute; left:24px; top:24px; line-height:20px; color:var(--vera-muted); pointer-events:none; }
html:not(.ot-sidebar-compact) body #vera-sidebar .vera-menu-search input { height:44px; padding-inline:36px 12px; border-radius:6px; border-color:color-mix(in srgb,var(--vera-text) 16%,var(--vera-surface)); background:var(--vera-surface); color:var(--vera-text); box-shadow:0 1px 2px color-mix(in srgb,var(--vera-text) 3%,transparent); }
html:not(.ot-sidebar-compact) body #vera-sidebar .vera-menu-search input::placeholder { color:var(--vera-muted); opacity:1; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu > .navbar-nav { padding:4px 12px 16px !important; gap:0; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu :is(.nav-link,.dropdown-item) { display:flex; align-items:center; justify-content:flex-start; min-height:44px; padding:8px 12px !important; gap:10px; font-size:.875rem; line-height:1.5; border-radius:6px; box-shadow:none; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .nav-icon { flex:0 0 20px; width:20px; height:20px; font-size:20px; line-height:1; color:color-mix(in srgb,var(--vera-text) 65%,var(--vera-surface)); }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu :is(.nav-link,.dropdown-item) > span { min-width:0; overflow-wrap:anywhere; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .ot-sidebar-section { display:flex; flex-direction:row; justify-content:flex-start; align-items:center; align-self:stretch; gap:12px; min-height:20px; margin:12px 12px 4px; padding:0; font-size:.8125rem; font-weight:600; line-height:20px; color:var(--vera-muted); letter-spacing:0; text-transform:none; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .ot-sidebar-section::after { content:''; flex:1; min-width:12px; height:1px; background:color-mix(in srgb,var(--vera-text) 12%,var(--vera-surface)); }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .ot-sidebar-section:first-child { margin-top:8px; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu :is(.nav-link,.dropdown-item):hover:not([aria-current='page']):not(.active) { background:color-mix(in srgb,var(--vera-text) 6%,var(--vera-surface)) !important; color:var(--vera-text) !important; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu :is([aria-current='page'],.nav-link.active,.dropdown-item.active) > .nav-icon { color:var(--vera-link); }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu :is(.nav-link,.dropdown-item):focus-visible { outline:2px solid var(--vera-link); outline-offset:-2px; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .dropdown-toggle::after { margin-left:auto; flex-shrink:0; color:var(--vera-muted); }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .dropdown-toggle[data-current-group] { color:var(--vera-text); font-weight:500; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .dropdown-menu { margin:2px 4px 8px 22px; padding:0 0 0 8px; border-left:1px solid var(--vera-border); }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu .dropdown-menu :is(.nav-link,.dropdown-item) { margin:0; padding:10px 12px; }
html:not(.ot-sidebar-compact) body #vera-sidebar #mobile-menu [aria-current='page']::before { left:0; top:12px; bottom:12px; width:2px; }
html:not(.ot-sidebar-compact) body #vera-sidebar .vera-sidebar-controls { padding-inline:12px; background:var(--vera-nav-surface); }
html:not(.ot-sidebar-compact) body #vera-sidebar .ot-sidebar-toggle { display:flex; align-items:center; justify-content:flex-start; gap:10px; width:100%; padding-inline:12px; font-size:.8125rem; text-align:left; }
.vera-sidebar-toggle-label { display:none; }
html:not(.ot-sidebar-compact) .vera-sidebar-toggle-label { display:inline; }
.vera-navigation-preview { position:fixed; z-index:1050; width:max-content; max-width:min(300px,calc(100vw - 96px)); max-height:calc(100dvh - 16px); overflow-y:auto; overscroll-behavior:contain; border:1px solid var(--vera-border); border-radius:6px; background:var(--vera-surface); color:var(--vera-text); box-shadow:0 4px 16px #0002; }
.vera-navigation-preview[hidden] { display:none; }
.vera-navigation-preview-title { padding:10px 14px; font-weight:600; font-size:.875rem; overflow-wrap:anywhere; }
.vera-navigation-preview.is-submenu { width:272px; }
.vera-navigation-preview.is-submenu .vera-navigation-preview-title { border-bottom:1px solid var(--vera-border); }
.vera-navigation-preview ul { list-style:none; margin:8px 12px 12px 18px; padding:0 0 0 8px; border-left:1px solid var(--vera-border); }
.vera-navigation-preview li { margin:0; padding:0; }
.vera-navigation-preview a { display:flex; align-items:center; min-height:44px; padding:8px 12px; border-radius:4px; color:var(--vera-text); text-decoration:none; font-family:var(--ot-font-sans); font-size:.875rem; font-weight:400; line-height:1.5; overflow-wrap:anywhere; }
.vera-navigation-preview a:is(:hover,[aria-current="page"]) { background:var(--vera-accent-soft); color:var(--vera-link); }
.vera-navigation-preview a[aria-current="page"] { font-weight:600; }
.vera-navigation-preview a:focus-visible { outline:2px solid var(--vera-link); outline-offset:-2px; }
@media (min-width:992px) {
    body .navbar-vertical .navbar-brand { margin-bottom:8px !important; }
}
body .page-item.active .page-link {
    background: var(--vera-accent) !important;
    border-color: var(--vera-accent) !important;
    color: var(--vera-on-primary) !important;
}
body .form-check-input:checked { background-color: var(--vera-accent); border-color: var(--vera-accent); }
body :is(.btn,.nav-link,.form-control,.form-select):focus-visible {
    outline: 2px solid var(--vera-text);
    outline-offset: 3px;
}
body .navbar-vertical .nav-link:focus-visible { outline: 2px solid var(--vera-link) !important; outline-offset: -3px; }
.ot-font-size-controls { display: grid; grid-template-columns: minmax(0, 1fr) 4rem; gap: .5rem; align-items: center; min-width: 0; }
.ot-font-size-controls input[type="range"] { width: 100%; min-width: 0; accent-color: var(--vera-accent); }
.ot-font-size-controls input[type="number"] { width: 100%; min-width: 0; }
.ot-branding-header, .ot-branding-section > .card-header { flex-wrap: wrap; }
.ot-branding-header .page-title { overflow-wrap: anywhere; }
.ot-branding-grid > *, .ot-assets-grid > * { min-width: 0; }
.ot-branding-grid :is(.form-control,.form-select,.ot-color-control) { min-width: 0; max-width: 100%; box-sizing: border-box; }
body .navbar-vertical .nav-link { white-space: normal; overflow-wrap: anywhere; }

/* One type scale for the administrative shell; icon fonts and previews stay independent. */
body .page { --vera-type-small: .8125rem; font-family: var(--ot-font-sans); color: var(--vera-text); font-size: var(--vera-type-body, .875rem); line-height:1.5; }
body .page :is(h1,h2,h3,h4,h5,h6,p,a,label,button,input,select,textarea,td,th,dt,dd,summary,.badge,.form-text,.nav-link,.dropdown-item) {
    font-family: var(--ot-font-sans) !important;
    letter-spacing: 0 !important;
}
body .page :is(code,kbd,pre,.font-monospace,.iot-cell-value,.iot-tree-branch > span) { font-family: var(--ot-font-mono) !important; }
body .page :is(.page-title,.page-header h1,.iot-page-header h1,.vera-lab-heading h1) {
    font-size: var(--vera-type-title, 1.75rem) !important; line-height: 1.25 !important; font-weight: 600 !important; color: var(--vera-text) !important;
}
body .page :is(.page-body h2,.vera-lab-section-heading h2,.iot-section-heading h2) {
    font-size: var(--vera-type-section, 1.25rem) !important; line-height: 1.3; font-weight: 600;
}
body .page :is(.card-title,.card-header h3,.vera-lab-card h3,.ot-registry-heading,.iot-card h3) {
    font-size: var(--vera-type-card, 1rem) !important; line-height: 1.35; font-weight: 600; color: var(--vera-text);
}
body .page :is(.form-control,.form-select,.form-label,.btn,.dropdown-item,.ot-section-tabs > a,.vera-lab-button,.vera-lab-pill) {
    font-size: var(--vera-type-body, .875rem) !important; line-height: 1.5;
}
body .page :is(.table td,.table th,.iot-data-table td,.iot-data-table th) { font-size: var(--vera-type-body, .875rem) !important; }
body .page :is(small,.small,.form-text,.page-pretitle,.breadcrumb,.vera-lab-eyebrow,.vera-lab-kicker,.iot-eyebrow) {
    font-size: var(--vera-type-small, .75rem) !important; line-height: 1.5; letter-spacing: 0 !important;
}
body .page :is(.page-pretitle,.vera-lab-eyebrow,.vera-lab-kicker,.iot-eyebrow) { text-transform:none; font-weight:500; }
body .page :is(.text-secondary,.text-muted,.form-text,.page-pretitle,.vera-lab-eyebrow,.vera-lab-kicker,.iot-eyebrow) { color: var(--vera-muted) !important; }
body .page :is(.table thead th,.form-label,.table td) { color: var(--vera-text); }
body .page .recharts-wrapper { font-family: var(--ot-font-sans); }
body .page .recharts-cartesian-axis-tick-value { fill: var(--vera-muted); font-family: var(--ot-font-sans); font-size: var(--vera-type-small, .75rem); }
body .page :is(.recharts-default-tooltip,.recharts-tooltip-label,.recharts-tooltip-item) { font-family: var(--ot-font-sans) !important; font-size: var(--vera-type-small, .75rem) !important; }
body .page :is(.iot-dashboard,.iot-payload-explorer,.iot-live) {
    --iot-ink: var(--vera-text); --iot-muted: var(--vera-muted); --iot-line: var(--vera-border); --iot-soft: var(--vera-canvas); --iot-gold: var(--vera-link);
}
body .page .telemetry-dashboard { --telemetry-text: var(--vera-text); --telemetry-muted: var(--vera-muted); --telemetry-border: var(--vera-border); }
body .page :is(.btn-primary,.btn-outline-primary,.vera-lab-button:not(.ghost)) {
    background: var(--vera-accent) !important; border-color: var(--vera-accent) !important; color: var(--vera-on-primary) !important;
}
body .page a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link):not([class^="vera-lab-"]):not(.telemetry-picker-row) { color: var(--vera-link); }
body .page :is(.form-control,.form-select) { color: var(--vera-text); border-color: var(--vera-border); }
body .page :is(.form-control,.form-select):focus { border-color: var(--vera-accent); box-shadow: 0 0 0 2px var(--vera-accent-soft); }
body .page :is(.telemetry-filter-context span,.telemetry-picker-selected em,.telemetry-picker-row em,
    .telemetry-picker-pages > span,.telemetry-filter-grid label > span,.telemetry-table-live,
    .telemetry-section-heading span,.telemetry-primary-status,.telemetry-primary-metric footer,
    .telemetry-status-section dt,.telemetry-alert-context__items em,.cm-kpi p,.cm-table-wrap th) {
    font-size: var(--vera-type-small, .75rem) !important;
}
body .page :is(.telemetry-section-heading h2,.telemetry-secondary-section summary,.iot-card-title) { font-size: var(--vera-type-card, 1rem); }
@media (max-width: 575.98px) {
    .ot-branding-grid, .ot-assets-grid { grid-template-columns: minmax(0, 1fr); }
    .ot-branding-actions > span { display: none; }
    .ot-branding-actions { gap: 0; }
}
body .iot-segmented button.active, body .iot-pagination button.is-active,
body .iot-filter-toggle.active {
    background: var(--vera-accent) !important;
    border-color: var(--vera-accent) !important;
    color: var(--vera-on-primary) !important;
}
body .telemetry-picker-row.is-selected { background: var(--vera-accent-soft); }
body .recharts-cartesian-axis-tick-value { font-size: calc(11px * var(--vera-font-scale, 1)); }

/* Page navigation follows the Smart Login tab contract, not action-button styling. */
body .ot-section-tabs { display:flex; flex-wrap:nowrap; gap:2px; border-bottom:1px solid var(--tblr-border-color, #d7e0eb); overflow-x:auto; max-width:100%; scrollbar-width:thin; }
body .ot-section-tabs > a { display:inline-flex; flex:0 0 auto; align-items:center; gap:6px; min-height:44px; padding:8px 14px; color:var(--vera-link); text-decoration:none; border:0; border-bottom:2px solid transparent; border-radius:0; background:none; font-size:.875rem; font-weight:500; white-space:nowrap; }
body .ot-section-tabs > a:hover { color:var(--vera-link); border-bottom-color:var(--vera-accent); background:none; }
body .ot-section-tabs > a[aria-current="page"] { border-bottom-color:var(--vera-accent); background:none; font-weight:600; }
body .ot-section-tabs > a:focus-visible { outline:2px solid var(--vera-text); outline-offset:-3px; }

/* Page tabs share the company navigation model, independently of Bootstrap markup. */
body .page :is(.nav-tabs, .nav-pills) { flex-wrap:nowrap; overflow-x:auto; max-width:100%; gap:2px; border-bottom:1px solid var(--tblr-border-color); }
body .page :is(.nav-tabs, .nav-pills) .nav-item { flex:0 0 auto; }
body .page :is(.nav-tabs, .nav-pills) .nav-link { display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:8px 14px; white-space:nowrap; border:0 !important; border-bottom:2px solid transparent !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:var(--vera-link) !important; }
body .page :is(.nav-tabs, .nav-pills) .nav-link.active { border-bottom-color:var(--vera-accent) !important; font-weight:600; }
.vera-account-layout > * { min-width:0; }
.vera-account-layout aside :is(h2, dd, .text-secondary, li) { overflow-wrap:anywhere; }
.vera-account-layout .avatar-xl { width:96px; height:96px; flex-shrink:0; }
.vera-account-layout .avatar img { width:100%; height:100%; object-fit:cover; }
.vera-account-layout input[type=file] { max-width:100%; }
body .page :is(.nav-tabs, .nav-pills) .nav-link:hover { border-bottom-color:var(--vera-accent) !important; }

/* Card commands stay in their original section, aligned right. */
body .card-footer:has(.btn):not(:has(.pagination, [data-table-page-size])) { text-align:right !important; justify-content:flex-end !important; gap:.5rem; }
body .card-footer:has(.btn) > :is(.d-flex, form) { justify-content:flex-end !important; }
body .card-footer > .btn { align-self:flex-end; }
body .card-footer:has(.btn) :is(.ms-auto, .float-end) { margin-left:0 !important; float:none !important; }
body .card-header:has(> .card-actions .btn) { flex-wrap:wrap; }
body .card-header > .card-actions:has(.btn) { flex-basis:100%; margin-left:0 !important; justify-content:flex-end !important; text-align:right !important; }
body .entity-header { grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:24px; }
body .entity-header__actions { justify-content:flex-end !important; }
body .entity-header__main { min-width:0; }
body .entity-header__subtitle { display:block; margin-top:6px; font-size:.875rem; overflow-wrap:anywhere; }
body .entity-header > .entity-header__actions { padding-top:24px; flex-wrap:wrap; max-width:100%; }
body .entity-header > .entity-header__actions .btn { flex:0 0 auto; width:auto; white-space:nowrap; }
body .page :is(.entity-header__meta .btn-sm, [data-permalink-edit]) { display:inline-flex; align-items:center; justify-content:center; flex:none; width:auto; min-height:36px; height:36px; padding:4px 10px; font-size:.875rem; line-height:1.25; white-space:nowrap; }
@media(max-width:991.98px) {
    body .entity-header { grid-template-columns:minmax(0,1fr); gap:16px; }
    body .entity-header > .entity-header__actions { padding-top:0; flex-wrap:wrap; }
}
.access-activation-list { display:flex; flex-direction:column; }
body .form-save-box { padding:1.5rem; border:1px solid var(--tblr-border-color); border-radius:6px; background:var(--vera-surface, #fff); text-align:left; }
body .form-save-box__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.5rem; }
body .form-save-box__actions .btn { margin-left:0; flex:none; }
body .ot-company-login-url { flex-direction:column; align-items:flex-start; justify-content:flex-start; }

body .ot-company-login-url > .btn { align-self:flex-end; }
.company-permalink { padding:14px 0; min-width:0; }
.company-permalink__display { display:flex; align-items:center; flex-wrap:wrap; gap:12px; font-size:.875rem; }
.company-permalink__display > a { overflow-wrap:anywhere; min-width:0; }
.company-permalink__display > .btn { flex-shrink:0; }
.company-permalink [hidden] { display:none !important; }
.company-permalink__controls { display:flex; align-items:center; gap:16px; }
.company-permalink__address { display:flex; align-items:center; gap:10px; flex:1; min-width:0; }
.company-permalink__address > span { color:var(--vera-muted); font-size:.875rem; overflow-wrap:anywhere; }
.company-permalink__address > input { flex:1; min-width:160px; min-height:46px; }
.company-permalink__commands { display:flex; justify-content:flex-end; gap:8px; flex-shrink:0; }
@media(max-width:991.98px) {
    .company-permalink__controls { align-items:stretch; flex-direction:column; }
    .company-permalink__address { display:grid; grid-template-columns:minmax(0,1fr); gap:6px; }
    .company-permalink__address > input { min-width:0; width:100%; }
}
body .page-body details > summary.btn { display:table; margin-left:auto; }
/* The user tabs also carry nav-link: neutralize its filled active styling. */
body .page .ot-section-tabs > a { color:var(--vera-link) !important; background:transparent !important; border:0 !important; border-bottom:2px solid transparent !important; border-radius:0 !important; box-shadow:none !important; }
body .page .ot-section-tabs > a:is(.active, [aria-current="page"], [aria-selected="true"]) { color:var(--vera-link) !important; background:transparent !important; border-bottom-color:var(--vera-accent) !important; font-weight:600; }
body .page .ot-section-tabs > a:hover { border-bottom-color:var(--vera-accent) !important; }
.access-activation { padding:1.25rem 0; }
.access-activation:first-child { padding-top:0; }
.access-activation:last-child { padding-bottom:0; }
.access-activation + .access-activation { border-top:1px solid var(--tblr-border-color); }
.access-activation .form-check { margin-bottom:.5rem; }
.access-activation__description { margin:0 0 .5rem; max-width:65ch; color:var(--vera-muted, var(--tblr-secondary)); }
.transfer-section { padding:1.5rem 0; border-bottom:1px solid var(--tblr-border-color); }
.transfer-section:first-child { padding-top:0; }
.transfer-section > h2 { margin-bottom:1rem; }
.transfer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; max-width:960px; }
.transfer-fields > div { min-width:0; }
.transfer-summary { display:grid; grid-template-columns:140px minmax(0,1fr); gap:.5rem 1rem; max-width:960px; }
.transfer-summary dd { margin:0; overflow-wrap:anywhere; }
.transfer-workspace [hidden] { display:none !important; }
.dataset-export-controls { display:flex; align-items:flex-end; gap:1rem; }
.dataset-export-controls > div { flex:1; min-width:0; }
.dataset-export-controls > .btn { flex:none; }
.backup-scope { display:grid; grid-template-columns:1fr minmax(240px, 1fr); gap:2rem; align-items:start; }
.backup-coverage { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.backup-coverage > div + div { border-left:1px solid var(--tblr-border-color); padding-left:2rem; }
.backup-coverage ul { padding-left:1.25rem; margin-bottom:0; }
.backup-coverage li + li { margin-top:.5rem; }
.backup-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.backup-facts dt { color:var(--vera-muted); font-weight:500; margin-bottom:.5rem; }
.backup-facts dd { margin:0; }
.backup-submit { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.25rem 0; }
.backup-submit .btn { flex:none; margin-left:auto; }
@media(max-width:767px) { .backup-scope,.backup-coverage,.backup-facts { grid-template-columns:1fr; gap:1rem; } .backup-coverage > div + div { border-left:0; border-top:1px solid var(--tblr-border-color); padding:1rem 0 0; } .dataset-export-controls,.backup-submit { flex-wrap:wrap; } .dataset-export-controls > div { flex-basis:100%; } .dataset-export-controls > .btn { margin-left:auto; } }
@media(max-width:575px) { .transfer-fields { grid-template-columns:1fr; } .transfer-summary { grid-template-columns:1fr; gap:.25rem; } .transfer-summary dd { margin-bottom:.75rem; } }
@media (min-width:992px) {
    body .navbar.navbar-vertical .ot-account-footer .nav-link { justify-content:flex-start !important; text-align:left; width:100%; padding-left:12px; padding-right:12px; }
    body .navbar.navbar-vertical .ot-account-footer .ot-user-avatar { flex-shrink:0; }
    body .navbar.navbar-vertical .ot-account-footer .dropdown-toggle::after { margin-left:auto; }
}
.registry-identifiers { margin: 8px 0 0; font-size: var(--vera-type-small); color: var(--vera-muted); }
.registry-identifiers > div { display: flex; align-items: baseline; gap: 6px; }
.registry-identifiers dt { font-weight: 500; min-width: 34px; }
.registry-identifiers dd { margin: 0; min-width: 0; white-space: normal; overflow-wrap: anywhere; }
[data-table-copy], .table-copy-target { cursor: copy; }
[data-table-copy]:focus-visible, table td[tabindex="0"]:focus-visible { outline: 2px solid var(--vera-link); outline-offset: 2px; }

/* Keep saved fills and table geometry; use readable ink for small semantic labels. */
body .vera-global-header .ot-user-initials { color: var(--vera-on-primary); }
body .page .badge.bg-blue-lt { color: color-mix(in srgb, var(--tblr-blue, #066fd1) 75%, black) !important; }
body .page .badge.bg-cyan-lt { color: color-mix(in srgb, var(--tblr-cyan, #17a2b8) 60%, black) !important; }
body .page .badge.bg-success-lt { color: var(--tblr-success-text-emphasis, #1a4a3c) !important; }
body .page .badge.bg-warning-lt { color: var(--tblr-warning-text-emphasis, #664d03) !important; }
body .page main :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline: 2px solid var(--vera-link) !important;
    outline-offset: 2px;
    scroll-margin-block: 16px;
}
#vera-main-content { scroll-padding-block: 16px; }
@media (prefers-reduced-motion: reduce) {
    body .page main .animated { animation: none !important; }
}
.table-copy-feedback { position: fixed; z-index: 11000; max-width: calc(100vw - 16px); padding: 6px 10px; background: var(--vera-text); color: var(--vera-surface); border-radius: 4px; pointer-events: none; font-size: var(--vera-type-small); }
@media (max-width: 991.98px) { .registry-optional-info { display: none !important; } }
/* Table contract 2.2: filter commands inline; page size left, bulk commands right. */
body .page .registry-register .registry-filter-row {
    display: flex !important; flex-wrap: nowrap; align-items: flex-end !important;
    gap: 12px !important; padding-bottom: 4px; overflow-x: auto;
}
body .page .registry-register .registry-filter-row > :not(.registry-filter-commands) {
    flex: 1 1 140px; min-width: 112px; margin: 0; width: auto; grid-column: auto !important;
}
body .page .registry-register .registry-filter-row > :is(.registry-filters__search,.is-wide) { flex-grow: 1.6; min-width: 160px; }
body .page .registry-register .registry-filter-row :is(input,select) { width: 100%; min-width: 0; }
body .page .registry-register .registry-filter-row > .registry-filter-commands {
    display: flex; flex: 0 0 auto; align-items: center; gap: 8px; margin: 0;
    padding: 0 !important; border: 0; width: auto; white-space: nowrap;
}
body .page .registry-table-toolbar {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
    gap: 12px; padding: 10px 20px; border-bottom: 1px solid var(--vera-border);
}
body .page .registry-table-pagesize { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; margin: 0; font-weight: 500; }
body .page .registry-table-pagesize select { width: 84px; min-height: 36px; padding-top: 6px; padding-bottom: 6px; }
body .page .registry-table-bulk {
    margin: 0 0 0 auto !important; padding: 0 !important; border: 0 !important;
    box-shadow: none; background: transparent; width: auto;
}
body .page .registry-table-bulk .card-body { padding: 0 !important; }
body .page .registry-table-bulk > .d-flex { justify-content: flex-end; }
body .page .registry-table-bulk [data-bulk-clear] { margin-left: 0 !important; }
body .page [data-bulk-scope] > form[id$="-bulk"] > .d-flex { justify-content: flex-end; flex-wrap: wrap; }
@media (max-width: 991.98px) {
    body .page .registry-register .registry-filter-row { flex-wrap: wrap; overflow: visible; }
    body .page .registry-register .registry-filter-row > :not(.registry-filter-commands) { flex-basis: calc(50% - 12px); min-width: 0; }
    body .page .registry-register .registry-filter-row > .registry-filter-commands { margin-left: auto; }
    body .page .registry-table-toolbar { padding: 10px 16px; }
    body .page .registry-table-bulk { max-width: 100%; }
}
@media (max-width: 479.98px) {
    body .page .registry-register .registry-filter-row > :not(.registry-filter-commands) { flex-basis: 100%; }
}
/* Table contract 2.4: one operational row; pagination controls belong in the footer. */
#payload-register .registry-unified-toolbar > .ot-context-field:not(.registry-toolbar-search) {
    flex: 0 0 130px !important;
    min-width: 130px !important;
}
#payload-register .registry-unified-toolbar .form-check-label { white-space: nowrap; }
#payload-register .registry-unified-toolbar > .registry-filter-commands {
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 0 !important;
}
@media (max-width: 767.98px) {
    #payload-register .registry-unified-toolbar .registry-filter-commands > :is(a, button) {
        flex: 0 0 38px !important;
        width: 38px !important;
        min-width: 38px !important;
    }
}
body .page .registry-unified-toolbar {
    display: flex; flex-wrap: nowrap !important; justify-content: flex-start; align-items: center;
    gap: 8px; padding: 12px 20px; overflow-x: auto;
}
body .page .registry-unified-toolbar > :not(.registry-table-bulk):not(.registry-filter-commands) {
    flex: 0 1 130px; min-width: 105px; max-width: 160px; margin: 0;
}
body .page .registry-unified-toolbar > .registry-toolbar-search { flex: 1 1 200px !important; min-width: 140px !important; max-width: none !important; }
body .page .registry-unified-toolbar .registry-table-bulk {
    flex: 0 0 auto; margin: 0 !important; max-width: none;
    flex-wrap: nowrap !important; align-items: center; white-space: nowrap; width: max-content;
}
body .page .registry-unified-toolbar .registry-table-bulk::before {
    content: none;
}
body .page .registry-unified-toolbar .registry-table-bulk :is(.card-body,.d-flex) { flex-wrap: nowrap !important; white-space: nowrap; }
body .page .registry-unified-toolbar :is(input:not([type="checkbox"]),select,.btn) { min-height: 38px !important; height: 38px !important; }
body .page .registry-unified-toolbar select { min-width: 105px; max-width: 160px; width: 100%; }
body .page #alert-register .registry-unified-toolbar > .ot-context-field:not(.registry-toolbar-search) { flex: 0 0 160px; min-width: 160px; max-width: 160px; }
body .page #alert-register .registry-unified-toolbar > .registry-toolbar-search { min-width: 220px !important; }
body .page #alert-register .registry-unified-toolbar .ot-picker-disclosure > summary { min-height: 36px; height: 36px; padding: 0 10px; }
body .page #alert-register .registry-unified-toolbar .ot-picker-disclosure > summary > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body .page #alert-register table { min-width: 1240px; }
body .page #alert-register :is(th, td) { vertical-align: top; }
body .page #alert-register td { padding-top: 12px; padding-bottom: 12px; }
body .page #alert-register .alert-time { white-space: nowrap; }
body .page #alert-register .alert-user-heading { display: flex; align-items: center; gap: 8px; min-width: 220px; }
body .page #alert-register .alert-user-heading > a:first-child { flex: 1; }
body .page #alert-register .alert-user-heading .btn-icon { flex: 0 0 32px; width: 32px; min-width: 32px; height: 32px; min-height: 32px; padding: 0; }
body .page #alert-register .alert-user-email { max-width: 260px; overflow-wrap: anywhere; }
body .page #alert-register td .badge { white-space: nowrap; }
body .page .registry-unified-toolbar .btn-icon { width: 38px; min-width: 38px; padding: 0; }
body .page .registry-unified-toolbar .registry-filter-commands { display: flex; flex: 0 0 auto; gap: 8px; padding: 0 0 0 8px; border: 0; margin: 0 0 0 auto; order: 99; position: sticky; right: 0; z-index: 2; background: var(--vera-surface, #fff); box-shadow: 8px 0 0 var(--vera-surface, #fff); }
body .page .registry-unified-toolbar :is(.form-label,.ot-context-field__label), body .page .registry-toolbar-search > label { display: none !important; }
body .page .registry-unified-toolbar > .registry-search-toggle { display: none; flex: 0 0 38px !important; min-width: 38px !important; max-width: 38px; }
body .page .registry-unified-toolbar [hidden], body .page .registry-register > .registry-filters[hidden] { display: none !important; }
body .page .registry-unified-toolbar .iot-query-field label > span { display: none; }
body .page .registry-native-search-panel { display: none; }
body .page .registry-register > .telemetry-identity-grid[hidden] { display: none !important; }
body .page .registry-register > .telemetry-identity-grid { padding: 16px 20px; border-bottom: 1px solid var(--vera-border); }
body .page .registry-table-footer { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
body .page .registry-table-footer > :not(.registry-table-pagesize) { flex: 1 1 260px; width: auto !important; }
@media (max-width: 767.98px) {
    body .page .registry-unified-toolbar { padding: 10px 12px; }
    body .page .registry-unified-toolbar > .registry-table-bulk { flex: 0 0 auto; }
    body .page .registry-unified-toolbar > .registry-search-toggle { display: inline-flex; order: -1; }
    body .page .registry-unified-toolbar > .registry-table-bulk { order: -3; }
    body .page .registry-unified-toolbar > .registry-filter-commands { order: 99; }
    body .page .registry-unified-toolbar { gap: 6px; }
    body .page .registry-unified-toolbar .registry-table-bulk :is(.card-body,.d-flex) { gap: 4px !important; }
    body .page .registry-unified-toolbar .registry-table-bulk select { min-width: 95px; max-width: 95px; padding-left: 6px; }
    body .page .registry-unified-toolbar .registry-table-bulk .btn-icon { min-width: 32px; width: 32px; }
    body .page .registry-unified-toolbar .registry-filter-commands button { width: 38px; min-width: 38px; padding: 0; font-size: 0 !important; gap: 0; }
    body .page .registry-unified-toolbar .registry-filter-commands button i { font-size: 18px; margin: 0 !important; }
    body .page .registry-search-panel { display: none; padding: 10px 12px; border-bottom: 1px solid var(--vera-border); }
    body .page .registry-search-panel.is-search-open { display: block; }
    body .page .registry-search-panel input { width: 100%; }
    body .page .registry-unified-toolbar > .registry-native-desktop-search { display: none; }
}
.company-profile__sections { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
/* Keep scrolling controls in flow: sticky commands must not cover filter inputs. */
body .page .registry-unified-toolbar .registry-filter-commands {
    position: static; box-shadow: none;
}
@media (max-width: 1023.98px) {
    body .page .registry-unified-toolbar .registry-filter-commands {
        order: -2 !important; margin-left: 0; padding-left: 0;
    }
    body .page .registry-unified-toolbar > .registry-table-bulk { order: 90; }
    body .page .registry-unified-toolbar :is(input:not([type="checkbox"]),select,.btn),
    body .page .registry-table-footer :is(select,.page-link),
    body .page .registry-search-panel input {
        min-height: 44px !important; height: 44px !important;
    }
    body .page .registry-unified-toolbar .btn-icon,
    body .page #payload-register .registry-unified-toolbar .registry-filter-commands > :is(a,button),
    body .page .registry-unified-toolbar > .registry-search-toggle,
    body .page .registry-unified-toolbar .registry-filter-commands > :is(a,button),
    body .page .registry-row-actions .registry-icon-action {
        flex: 0 0 44px !important; min-width: 44px !important; width: 44px !important;
        min-height: 44px !important; height: 44px !important;
    }
    body .page .registry-row-actions { gap: 8px; }
    body .page .registry-unified-toolbar > :not(.registry-table-bulk):not(.registry-filter-commands):not(.registry-search-toggle):not(.registry-toolbar-search) {
        flex-shrink: 0; min-width: 160px; max-width: 180px;
    }
    body .page .registry-unified-toolbar select { min-width: 0; max-width: 100%; }
    body .page .registry-unified-toolbar .registry-table-bulk select { min-width: 160px; max-width: 180px; }
    body .page main table:has(thead input[type="checkbox"]) :is(th,td):nth-child(2) { min-width: 240px; }
    body .page .device-identity { min-width: 320px; }
}
@media (min-width: 768px) and (max-width: 1023.98px) {
    body .page .registry-unified-toolbar .registry-filter-commands > button,
    body .page #payload-register .registry-unified-toolbar .registry-filter-commands > button {
        flex: 0 0 auto !important; width: auto !important; padding-inline: 12px;
    }
}
.vera-password-field { min-width: 0; flex-wrap: nowrap; }
.vera-password-field > .form-control { min-width: 0; }
.vera-password-field > [data-password-toggle] { flex: 0 0 42px; min-width: 42px; }
.vera-password-field:has(> .is-invalid) ~ .invalid-feedback,
.was-validated .vera-password-field:has(> :invalid) ~ .invalid-feedback { display: block; }
.company-profile__section { min-width: 0; padding: 24px; }
.company-profile__section + .company-profile__section { border-left: 1px solid var(--vera-border); }
.company-profile__heading { margin: 0 0 20px; font-size: var(--vera-type-card); font-weight: 600; }
.company-profile__footer { display: flex; justify-content: flex-end; padding: 16px 24px; background: transparent; }
@media (max-width: 767.98px) {
    .company-profile__sections { grid-template-columns: minmax(0, 1fr); }
    .company-profile__section { padding: 20px; }
    .company-profile__section + .company-profile__section { border-left: 0; border-top: 1px solid var(--vera-border); }
    .company-profile__footer { padding: 16px 20px; }
}
