/* LumaFlow Console · Instrument Panel. Shared tokens; no external dependencies. */
:root{color-scheme:dark;--bg:#0d1219;--sidebar:#101721;--panel:#141c27;--raised:#1b2837;--hover:#223347;--line:#2b394a;--soft:#222e3d;--text:#edf3f9;--muted:#9eafc2;--quiet:#8193a8;--blue:#69bdf8;--green:#69d6b2;--amber:#e7c186;--red:#f1a1aa;--font:Inter,"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{background:var(--bg);scrollbar-gutter:stable}body{margin:0;color:var(--text);font:14px/1.55 var(--font);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:background-color .12s,border-color .12s}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px #54b5ff18}h1,h2,h3,p{margin:0}h2{font-size:15px;font-weight:650}h3{font-size:14px}.hidden,[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.ui-icon{width:18px;height:18px;flex:none;vertical-align:middle}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--sidebar);border-right:1px solid var(--soft);display:flex;flex-direction:column;z-index:40;padding:28px 16px 18px}.brand,.login-brand{display:flex;align-items:center;gap:12px}.brand{padding:0 12px 26px}.brand-mark{width:37px;height:37px;overflow:hidden;display:grid;place-items:center;flex:none}.brand-logo-img{display:block;width:61px;height:61px;max-width:none}.brand-name{font-size:19px;font-weight:760;letter-spacing:-.4px;line-height:1.25}.brand-sub{color:var(--muted);font-size:11px;margin-top:4px;letter-spacing:1px}.nav{display:flex;flex-direction:column;gap:5px}.nav-group-label{font-size:10px;letter-spacing:1.5px;color:var(--quiet);padding:16px 16px 9px}.nav-item{border:1px solid transparent;border-radius:7px;background:transparent;color:#aab8c8;width:100%;min-height:43px;padding:10px 14px;text-align:left;display:flex;align-items:center;gap:12px;font-size:13px;position:relative}.nav-item:hover{background:#192534;color:var(--text)}.nav-item.active{background:#16314a;border-color:#294a65;color:#bbdfff;font-weight:600}.nav-item.active:before{content:"";position:absolute;width:3px;left:-17px;top:12px;bottom:12px;border-radius:2px;background:var(--blue)}.nav-icon{display:flex;opacity:.88}.sidebar-footer{margin-top:auto;padding:24px 6px 0}.server-state{display:flex;gap:10px;align-items:flex-start;margin:0 10px 20px}.state-dot,.sync-status i,.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);flex:none}.state-dot{margin-top:7px}.server-state strong{display:block;font-size:11px;font-weight:500;color:#acbdcf}.server-state small{display:block;color:var(--quiet);font-size:11px;margin-top:2px}.main{margin-left:232px;padding:0 clamp(24px,3.4vw,64px) 56px;max-width:1792px}.topbar{height:134px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--soft);margin-bottom:30px}.breadcrumb{font-size:11px;color:var(--quiet);margin-bottom:12px}.breadcrumb span{margin:0 9px;color:#5c6e82}.topbar h1{font-size:25px;font-weight:650;letter-spacing:-.7px;line-height:1.2}.topbar p{font-size:12px;color:var(--muted);margin-top:8px}.top-actions{display:flex;align-items:center;gap:9px}.view{display:none}.view.active{display:block;animation:reveal .15s ease-out}.overview-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.overview-heading h2{font-size:20px;font-weight:550;letter-spacing:-.5px}.eyebrow{font-size:10px;color:var(--quiet);letter-spacing:1.5px;display:block;margin-bottom:8px}.sync-status{font-size:11px;color:var(--quiet);display:flex;align-items:center;gap:8px;white-space:nowrap}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;background:var(--panel);margin-bottom:24px;overflow:hidden}.stat-card{padding:20px 24px}.stat-card+.stat-card{border-left:1px solid var(--line)}.stat-card>span{display:block;color:#aebed0;font-size:12px}.stat-card>strong{font-size:32px;font-weight:600;letter-spacing:-1px;display:block;font-variant-numeric:tabular-nums;margin:6px 0 2px}.stat-card>small{font-size:11px;color:var(--quiet)}.stat-card>small i{margin-right:5px}.overview-workspace{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr);gap:22px}.overview-primary,.overview-secondary{display:flex;min-width:0;flex-direction:column;gap:22px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;min-width:0}.panel-head{padding:20px 22px;display:flex;gap:16px;align-items:center;justify-content:space-between}.panel-head p{font-size:11px;color:var(--quiet);margin-top:5px}.panel-hint{font-size:11px;color:var(--quiet)}.distribution-body{padding:0 22px 22px}.distribution-bar{display:flex;height:8px;overflow:hidden;border-radius:5px;background:var(--line);gap:3px}.distribution-bar span{min-width:2px}.distribution-bar .active{background:#4bbd9b}.distribution-bar .pending{background:#639dd7}.distribution-bar .suspended{background:#c6a16c}.distribution-bar .revoked{background:#be7684}.distribution-bar .expired{background:#596a7c}.distribution-legend{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px}.distribution-legend>span{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.distribution-legend i{height:6px;width:6px;display:inline-block;border-radius:2px;background:var(--quiet)}.distribution-legend strong{font-weight:600;color:var(--text);margin-left:4px}.expiry-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--soft);background:#121a25}.expiry-strip>div,.expiry-strip>button{display:flex;gap:8px;align-items:center;padding:14px 20px;color:var(--muted);font-size:11px;border:0;background:transparent;min-width:0}.expiry-strip>button:hover{background:var(--raised)}.expiry-strip>button+button,.expiry-strip>div{border-left:1px solid var(--soft)}.expiry-strip strong{color:var(--amber);font-size:15px;font-weight:600;margin-left:auto}.expiry-strip>div strong{color:var(--muted)}.service-list{padding:0 22px 16px}.service-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--soft);font-size:12px}.service-row>span{color:var(--muted)}.service-row strong{font-size:11px;font-weight:500}.service-row strong i{margin-right:6px}.service-metrics{display:grid;grid-template-columns:1fr 1fr;padding:14px 22px;background:#121a25;gap:20px;border-top:1px solid var(--soft)}.service-metrics span{display:block;color:var(--quiet);font-size:11px}.service-metrics strong{font-size:21px;font-weight:550;display:block;margin-top:3px;font-variant-numeric:tabular-nums}.activity-list{padding:0 22px 8px}.activity-row{display:grid;grid-template-columns:30px 1fr auto;gap:12px;padding:13px 0;border-top:1px solid var(--soft);align-items:start}.activity-symbol{width:26px;height:26px;border:1px solid #34465b;border-radius:6px;display:grid;place-items:center;color:var(--blue);font-size:14px}.activity-copy strong{font-size:12px;font-weight:500}.activity-copy small{font-size:11px;color:var(--quiet);display:block;margin-top:3px}.activity-row time{font-size:10px;color:var(--quiet)}.v3-alert-list{padding:0 20px 12px;max-height:525px;overflow:auto}.v3-alert-item{padding:15px 0;border-top:1px solid var(--soft);display:flex;flex-direction:column;align-items:start;gap:8px}.v3-alert-main strong{font-size:12px;font-weight:550;display:block}.v3-alert-main span{display:block;color:var(--amber);font-size:11px;margin-top:5px}.v3-alert-item.danger .v3-alert-main span{color:var(--red)}.v3-alert-item .text-button{font-size:11px;padding:0}
button{border-radius:6px}.primary-button,.secondary-button,.danger-button,.danger-outline-button,.icon-button,.event-delete-button,.v5-modal-close,.modal-close{border:1px solid var(--line);padding:8px 13px;line-height:1.35;font-size:12px;font-weight:550;white-space:nowrap;display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:35px;text-decoration:none;color:var(--text);background:var(--raised)}.primary-button{background:#49aef0;border-color:#49aef0;color:#07131d}.primary-button:hover{background:#77c7fc;border-color:#77c7fc}.secondary-button:hover,.icon-button:hover{background:#293d52;border-color:#48627d}.text-button,.license-link{background:transparent;border:0;padding:3px 0;color:#93cef8;font-size:12px;font-weight:500;text-align:left}.text-button:hover,.license-link:hover{color:#d5eeff}.danger-button{background:#a73e4b;border-color:#b44c58;color:#fff}.danger-button:hover{background:#ba4f5c}.danger-outline-button,.danger-outline{border-color:#6a3d49;background:#341f2a;color:#f5acb4}.danger-outline-button:hover,.danger-outline:hover{background:#4d2634}.icon-button{min-height:28px;padding:5px 9px;border-color:transparent;background:transparent;font-size:11px;color:#b0c3d6}.more-action-button{font-size:18px;line-height:1;padding:3px 9px}.row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px}.badge{display:inline-flex;align-items:center;gap:6px;min-height:23px;padding:3px 8px;border-radius:4px;background:#25313f;color:#b7c6d5;font-size:10px;font-weight:500;line-height:1.3;white-space:nowrap}.badge:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}.badge.active,.badge.success{color:#7cdeba;background:#19382f}.badge.pending{color:#a2d3ff;background:#1a3248}.badge.suspended{color:#ebca90;background:#3b3222}.badge.revoked,.badge.disabled,.badge.error{color:#f5acb4;background:#3d2530}.badge.expired,.badge.unbound{color:#b8c4d3;background:#2a303a}.toolbar,.v5-audit-controls{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:10px;min-width:240px;flex:1;max-width:490px;background:#131d29;border:1px solid var(--line);border-radius:7px;padding:0 12px;min-height:39px;color:var(--quiet)}.search-box:focus-within{border-color:var(--blue)}.search-box input{width:100%;border:0;background:transparent;outline:0;padding:9px 0;box-shadow:none;font-size:12px;min-height:36px}.search-box .ui-icon{width:16px;height:16px}input,select,textarea{border:1px solid #3b4d61;color:var(--text);background:#101925;border-radius:6px;min-height:38px;padding:8px 11px;font-size:13px;min-width:0}input::placeholder,textarea::placeholder{color:#8194aa}select{padding-right:30px;cursor:pointer}textarea{resize:vertical;line-height:1.7}input[type=checkbox]{width:14px;height:14px;min-height:14px;padding:0;accent-color:var(--blue);cursor:pointer;flex:none}.search-box input:focus{box-shadow:none}.table-wrap{overflow:auto;width:100%}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.data-table th{font-size:10px;letter-spacing:.35px;font-weight:500;color:#96aac0;padding:11px 18px;border-top:1px solid var(--soft);border-bottom:1px solid var(--soft);background:#121a24;white-space:nowrap;text-align:left}.data-table td{padding:14px 18px;border-bottom:1px solid var(--soft);vertical-align:middle;line-height:1.5}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#1b2939}.data-table th:last-child{text-align:right}.license-key{font-family:"Cascadia Code",Consolas,monospace;font-size:11px;white-space:nowrap;color:#b6cfe5;letter-spacing:.3px}.customer-name{font-weight:550;color:#e6edf5;display:block;font-size:12px}.customer-note{display:block;color:var(--quiet);font-size:10px;font-weight:400;margin-top:3px;max-width:320px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.license-list-panel .data-table{min-width:800px}.count-label{color:var(--quiet);font-size:11px;font-weight:400;margin-left:8px}.seat-value{display:flex;align-items:center;gap:9px;font-variant-numeric:tabular-nums;white-space:nowrap}.seat-meter{height:3px;width:40px;background:#2b3948;border-radius:2px;overflow:hidden}.seat-meter i{display:block;height:100%;background:#5c9bca}.expiry-value{font-variant-numeric:tabular-nums;white-space:nowrap}.expiry-value.urgent{color:var(--amber)}.recent-panel .data-table th,.recent-panel .data-table td{padding:12px 18px}.recent-panel .customer-note{max-width:150px}.recent-panel .license-key{font-size:10px}.pagination{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--soft);font-size:11px;color:var(--quiet)}.pagination:empty{display:none}.pagination-controls{display:flex;align-items:center;gap:9px}.pagination button{padding:4px 10px;min-height:28px}.v5-license-check-cell{width:34px;padding-right:0!important}.v5-license-bulk{display:flex;align-items:center;gap:8px}.v5-license-bulk button{font-size:11px;padding:6px 9px;min-height:30px}#v5SelectedCount{font-size:11px;color:var(--muted);margin-right:5px}.v3-bulk-actions{margin-left:auto;display:flex;gap:8px}.device-hash{font-family:Consolas,monospace;max-width:180px}#devicesTable .data-table{min-width:1050px}.device-version{font-variant-numeric:tabular-nums;font-size:11px}.device-meta{color:var(--quiet);font-size:10px;display:block;margin-top:4px}
.modal-backdrop{position:fixed;inset:0;background:#03070dbb;z-index:200;display:flex;align-items:center;justify-content:center;padding:30px;backdrop-filter:blur(3px)}.modal{background:#151f2b;border:1px solid #3d5269;border-radius:12px;width:min(600px,100%);max-height:calc(100dvh - 60px);overflow:auto;box-shadow:0 30px 100px #0007;animation:reveal .16s ease-out}.modal-header,.v5-modal-head{padding:24px 26px 20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-header h2,.v5-modal-head h2{font-size:20px;font-weight:600;letter-spacing:-.5px}.modal-header p,.v5-modal-head p{font-size:12px;color:var(--muted);margin-top:7px}.modal-close,.v5-modal-close{width:30px;height:30px;min-height:30px;padding:4px;background:transparent;color:var(--muted);border-color:transparent;font-size:20px}.modal-body,.v5-modal-body{padding:24px 26px}.modal-actions,.v5-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:20px 26px;border-top:1px solid var(--line);background:#121b26}.modal-body>.modal-actions{margin:22px -26px -24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}.form-field.full{grid-column:1/-1}.form-field>label,.v5-field>span{font-size:12px;color:#c3d2e2;font-weight:500}.form-section-title{grid-column:1/-1;font-size:10px;letter-spacing:1px;color:var(--quiet);border-bottom:1px solid var(--line);padding-bottom:9px;margin-top:5px}.form-help{font-size:11px;color:var(--quiet);line-height:1.6}.number-control{display:flex;background:#101925;border:1px solid #3b4d61;border-radius:6px;overflow:hidden;min-height:38px}.number-control input{width:100%;text-align:center;border:0;border-radius:0;background:transparent;appearance:textfield}.number-control input::-webkit-inner-spin-button{appearance:none}.number-control button{background:#1c2937;border:0;color:#bacfe2;width:38px;flex:none;border-radius:0}.number-control button:hover{background:#2b3e53}.quick-days{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.quick-days button{padding:6px 10px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:11px}.quick-days button.is-active{border-color:#4c85ad;background:#1d3e58;color:#b5ddfa}.activation-anchor-field{background:#142a36;border:1px solid #315267;border-radius:6px;padding:12px}.activation-anchor-toggle{display:flex;align-items:center;gap:8px;font-size:12px}.activation-anchor-field .customer-note{white-space:normal;max-width:none;line-height:1.6;margin-top:7px;color:#a0b9cb}.v5-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.v5-password-shell,.password-shell{position:relative;display:flex}.v5-password-shell input,.password-shell input{width:100%;padding-right:55px}.v5-password-shell>button,.password-toggle{position:absolute;right:6px;top:4px;bottom:4px;border:0;background:transparent;color:var(--muted);font-size:11px;padding:0 8px}.v5-password-strength{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--quiet)}.v5-password-strength i{width:30px;height:3px;background:var(--line)}.v5-password-strength[data-level="1"] i:first-child{background:var(--amber)}.v5-password-strength[data-level="2"] i:not(:nth-child(3)),.v5-password-strength[data-level="3"] i{background:var(--green)}.v5-password-strength span{margin-left:5px}.v5-form-error,.login-error{font-size:12px;color:var(--red);padding:8px 0}.v5-security-note,.v5-confirm-box,.modal-warning,.owner-cleanup-confirm-warning{padding:13px 16px;border-radius:6px;border:1px solid #66503a;background:#34291f;color:#eacda8;font-size:12px;margin-bottom:18px}.one-time-key,.license-key-once{font:17px/1.7 Consolas,monospace;padding:18px;border:1px solid #395a74;border-radius:6px;background:#102735;word-break:break-all;color:#b3e1ff}.modal-backdrop:has(.license-detail-modal){justify-content:flex-end;padding:0;background:#03070d99}.license-detail-modal{width:min(960px,92vw);height:100dvh;max-height:100dvh;border-radius:0;border-width:0 0 0 1px;animation:drawer-in .18s ease-out}.license-detail-modal .modal-header{position:sticky;top:0;background:#151f2b;z-index:4;padding:26px 28px}.license-detail-modal .modal-body{padding:0 28px 28px}.detail-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);background:#151f2b;padding-top:8px}.detail-tabs button{background:transparent;border:0;border-radius:0;padding:14px 0;color:var(--muted);font-size:12px;border-bottom:2px solid transparent}.detail-tabs button.active{border-bottom-color:var(--blue);color:#b9e2ff}.detail-section{padding-top:24px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:4px 0 24px}.detail-item>span{display:block;font-size:11px;color:var(--quiet);margin-bottom:7px}.detail-item>strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere}.detail-item .customer-note{max-width:none;white-space:normal}.detail-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding:20px 0}.v3-detail-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:22px 0}.v3-detail-kpi{padding:13px 16px;border:1px solid var(--soft);border-radius:6px;background:#111b27}.v3-detail-kpi span{font-size:11px;color:var(--quiet);display:block}.v3-detail-kpi strong{font-size:14px;font-weight:550;display:block;margin-top:5px}.section-title{font-size:13px;margin:22px 0 14px;font-weight:600}.device-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);padding:16px;margin-bottom:12px;border-radius:7px;background:#121c28}.device-card strong{font-size:12px}.device-card small{display:block;font-size:10px;color:var(--quiet);max-width:360px;overflow-wrap:anywhere;margin-top:8px}.device-card .row-actions{flex-shrink:0;max-width:240px}.event-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.event-history-summary{font-size:12px}.event-history-summary span{font-size:10px;color:var(--quiet);margin-left:8px}.event-history-actions{display:flex;gap:6px}.event-history-actions button{font-size:10px;padding:5px 8px;min-height:28px}.event-delete-button{font-size:10px;min-height:26px;padding:4px 7px;background:transparent;color:var(--muted);border-color:transparent}.event-delete-button:hover{background:#3a2530;color:var(--red)}.event-history-table{min-width:700px}.history-item{display:grid;grid-template-columns:1fr auto;padding:14px 0;border-top:1px solid var(--soft);gap:4px 18px}.history-item strong{font-size:12px}.history-item span{font-size:10px;color:var(--quiet)}.history-item small{grid-column:1/-1;color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.action-menu,.v5-row-menu,.v5-account-menu{position:fixed;z-index:300;background:#1c2938;border:1px solid #47617b;border-radius:8px;padding:5px;min-width:160px;box-shadow:0 14px 34px #0005}.action-menu button,.v5-row-menu button,.v5-account-menu button{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#c6d5e5;width:100%;padding:10px 12px;text-align:left;font-size:12px;border-radius:4px}.action-menu button:hover,.v5-row-menu button:hover,.v5-account-menu button:hover{background:#2b4055}.action-menu .danger,.v5-row-menu .danger{color:var(--red)}.v5-account-card{width:100%;display:flex;align-items:center;gap:10px;padding:11px 8px;border:1px solid var(--line);background:#141e2a;color:var(--text);border-radius:7px;text-align:left}.v5-account-avatar{height:30px;width:30px;background:#253c53;border:1px solid #42627e;display:grid;place-items:center;border-radius:6px;font-size:12px;color:#afe0ff}.v5-account-copy{flex:1;min-width:0}.v5-account-copy strong{font-size:12px;display:block;font-weight:500}.v5-account-copy small{font-size:10px;color:var(--quiet);display:block;margin-top:2px}.v5-account-chevron{color:var(--quiet)}.v5-account-menu{bottom:20px;left:225px}.v5-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.v5-status-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:20px;display:flex;gap:15px;align-items:flex-start}.v5-status-icon{background:#1c3041;border:1px solid #3a5970;width:31px;height:31px;display:grid;place-items:center;color:#a0d6fc;font:10px Consolas,monospace;border-radius:6px}.v5-status-card span,.v5-status-card small{display:block;font-size:10px;color:var(--muted)}.v5-status-card strong{font-size:22px;font-weight:550;display:block;margin:5px 0}.v5-admin-panel,.v5-runtime-panel{margin-bottom:24px}.v5-admin-row,.v5-admin-item{padding:16px 22px;border-top:1px solid var(--soft);display:flex;gap:14px;align-items:center}.v5-admin-info{flex:1}.v5-admin-info strong{font-size:13px}.v5-admin-info small{font-size:11px;color:var(--quiet)}.v5-admin-avatar{width:34px;height:34px;border-radius:6px;background:#22394d;display:grid;place-items:center;color:#b4e0ff}.v5-admin-role,.v5-admin-status{font-size:11px;padding:3px 8px;border-radius:4px;color:var(--green);background:#1b352e}.v5-admin-role.owner{color:#abd8fa;background:#1d3447}.v5-admin-meta{font-size:10px;color:var(--quiet)}.v5-runtime-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 22px 20px;gap:20px}.v5-runtime-item{border-top:1px solid var(--soft);padding-top:15px}.v5-runtime-item>span{display:block;font-size:11px;color:var(--quiet);margin-bottom:7px}.v5-runtime-item>strong{font-size:12px;font-weight:500}.v5-audit-table{min-width:920px}.v5-audit-table td:nth-child(1){white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.v5-audit-table td:nth-child(2){font-size:11px}.v5-audit-table td:last-child{max-width:420px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.lf-audit-action{font-size:11px;color:#b7d2e9}.audit-security .lf-audit-action{color:var(--amber)}.audit-denied .lf-audit-action{color:var(--red)}.permissions-panel{padding:20px 22px;border-top:1px solid var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:24px}.permission-group h3{font-size:12px;margin-bottom:8px}.permission-group p{font-size:11px;color:var(--quiet);line-height:1.8}.role-badge{font-size:10px;margin-left:8px;padding:3px 7px;background:#1f3547;color:#abd8fa;border-radius:4px}
.owner-cleanup-warning{background:#201e1b;border-color:#544735;margin-bottom:20px}.owner-cleanup-warning h2{color:#e4c99f}.owner-cleanup-warning p{max-width:800px;color:#b7aa94;line-height:1.7}.owner-cleanup-tabs{display:flex;align-items:center;gap:6px;margin-bottom:18px}.owner-cleanup-tabs button{border:1px solid transparent;background:transparent;color:var(--muted);padding:9px 16px;font-size:12px}.owner-cleanup-tabs button.active{background:#203347;border-color:#3a5871;color:#b9def9}.owner-cleanup-tabs span{font-size:10px;padding:2px 6px;background:#283544;border-radius:4px;margin-left:6px}.owner-cleanup-toolbar{padding:16px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.owner-cleanup-selected{font-size:11px;color:var(--muted);margin-left:auto}.owner-cleanup-check{width:36px}.cleanup-blocker{display:block;font-size:10px;color:var(--quiet);max-width:280px;white-space:normal;line-height:1.6}.cleanup-eligible{font-size:11px;color:var(--green)}.cleanup-row-action{color:var(--muted);font-size:11px;border:0;background:transparent;padding:6px 8px}.cleanup-row-action:hover{color:var(--red);background:#33222b}.owner-cleanup-table{min-width:880px}.owner-cleanup-confirm-warning strong{font-size:18px;padding:0 4px}.cleanup-target-list{padding:12px 16px;max-height:170px;overflow:auto;background:#111a26;border:1px solid var(--line);border-radius:6px;margin-bottom:18px;font-size:12px}.cleanup-target-list p{padding:5px 0;color:var(--muted)}
.login-screen{min-height:100dvh;display:grid;place-items:center;padding:30px;background:radial-gradient(ellipse at 50% 0,#1a2b3d 0,transparent 62%),#0d131c}.login-card{width:390px;max-width:100%;padding:36px;border:1px solid #354a60;border-radius:12px;background:#141e2af2;box-shadow:0 30px 100px #0005}.login-brand{margin-bottom:35px}.login-copy{margin-bottom:25px}.login-copy h1{font-size:22px;letter-spacing:-.5px}.login-copy p{font-size:12px;color:var(--quiet);margin-top:7px}.login-field{margin-bottom:18px}.login-field>label{display:block;font-size:12px;color:#c1d2e5;margin-bottom:8px}.login-field input{width:100%;height:42px}.login-button{width:100%;background:#53b4f4;border:1px solid #53b4f4;color:#081521;min-height:42px;font-size:13px;font-weight:600;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:10px}.login-button:hover{background:#76c3f7}.caps-lock-hint{font-size:11px;color:var(--amber);margin-top:6px}.login-spinner{width:13px;height:13px;border:2px solid #0d223d55;border-top-color:#0d223d;border-radius:50%;animation:spin .6s linear infinite}.toast-host{position:fixed;right:25px;bottom:58px;z-index:700;display:flex;flex-direction:column;gap:8px;max-width:400px}.toast{padding:13px 17px;border:1px solid #426a5f;background:#1c332f;border-radius:8px;color:#c4f0e1;font-size:12px;box-shadow:0 10px 40px #0005}.toast.error{background:#38232d;border-color:#7b4d5b;color:#fac4cb}.empty-state,.loading,.error-state{text-align:center;padding:32px 22px;color:var(--quiet);font-size:12px;line-height:1.8}.error-state{color:#efb6c0}.error-state button{margin-top:10px}.mobile-nav-toggle,.mobile-nav-backdrop{display:none}.muted-action{color:var(--quiet)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes reveal{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes drawer-in{from{opacity:.7;transform:translateX(20px)}to{opacity:1;transform:none}}
@media(min-width:2200px){.main{max-width:1760px;margin-left:max(248px,calc((100vw - 1648px)/2));padding-left:56px;padding-right:56px}.sidebar{width:248px}}
@media(max-width:1250px){.sidebar{width:208px;padding-left:12px;padding-right:12px}.main{margin-left:208px;padding-left:24px;padding-right:24px}.overview-workspace{grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:16px}.stat-card{padding:18px}.stat-card>strong{font-size:28px}.overview-primary,.overview-secondary{gap:16px}.recent-panel .data-table th,.recent-panel .data-table td{padding:12px}.v5-status-card{padding:15px;gap:10px}.v5-status-icon{display:none}.expiry-strip>div,.expiry-strip>button{padding:12px;font-size:10px}.topbar{height:122px}.panel-head{padding:18px}.panel-head h2{font-size:14px}.overview-heading h2{font-size:18px}}
@media(max-width:1060px){.overview-workspace{grid-template-columns:1fr}.overview-secondary{display:grid;grid-template-columns:1fr 1fr;align-items:start}.v3-alert-list{max-height:360px}.recent-panel .data-table{min-width:660px}.v5-status-grid{grid-template-columns:1fr 1fr}.v5-runtime-grid{grid-template-columns:1fr 1fr}.v5-license-bulk{flex-wrap:wrap}.overview-heading h2{font-size:18px}.stat-card>span{font-size:11px}.panel-hint{display:none}}
@media(max-width:820px){.sidebar{width:228px;transform:translateX(-100%);transition:transform .18s;z-index:500}.mobile-nav-open .sidebar{transform:none}.mobile-nav-open .mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:490;border:0;border-radius:0;background:#0009}.main{margin-left:0;padding:0 20px 40px}.topbar{height:112px;justify-content:flex-start;gap:15px;margin-bottom:24px}.topbar h1{font-size:22px}.topbar p{display:none}.breadcrumb{margin-bottom:9px;font-size:10px}.top-actions{margin-left:auto}.mobile-nav-toggle{display:flex;flex-direction:column;gap:4px;width:32px;background:transparent;border:0;padding:6px;color:var(--text)}.mobile-nav-toggle span{display:block;height:1.5px;width:19px;background:currentColor}.stats-grid{grid-template-columns:1fr 1fr}.stat-card:nth-child(3){border-left:0;border-top:1px solid var(--line)}.stat-card:nth-child(4){border-top:1px solid var(--line)}.overview-heading{align-items:flex-start}.overview-heading h2{font-size:17px}.sync-status{font-size:10px}.overview-secondary{grid-template-columns:1fr}.toolbar{gap:8px}.search-box{max-width:none;min-width:220px}.v3-bulk-actions{margin-left:0}.v5-runtime-grid{grid-template-columns:1fr 1fr}.modal-backdrop{padding:16px}.modal{max-height:calc(100dvh - 32px)}.license-detail-modal{width:100vw;max-height:100dvh}.modal-header,.modal-body,.v5-modal-head,.v5-modal-body{padding:20px}.license-detail-modal .modal-body{padding:0 20px 20px}.modal-body>.modal-actions{margin:20px -20px -20px}.modal-actions,.v5-modal-actions{padding:16px 20px}.device-card{flex-direction:column;align-items:stretch}.device-card .row-actions{max-width:none;justify-content:flex-start}.form-grid{gap:16px}.v5-account-menu{left:20px;bottom:82px}.permissions-panel{grid-template-columns:1fr}.v5-audit-controls select{flex:1}.owner-cleanup-selected{margin-left:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Final density, detail and audit refinements. */
.data-table{font-size:13px}.data-table th{font-size:11px}.customer-name{font-size:13px}.badge{font-size:11px}.customer-note{font-size:11px}.nav-item{font-size:14px}.panel-head p,.form-help,.service-row strong{font-size:12px}.activity-copy strong{font-size:13px}.activity-row time{font-size:11px}.distribution-legend>span{font-size:12px}.distribution-legend i.active{background:#4bbd9b}.distribution-legend i.pending{background:#639dd7}.distribution-legend i.suspended{background:#c6a16c}.distribution-legend i.revoked{background:#be7684}.distribution-legend i.expired{background:#596a7c}
.v3-detail-hero{padding:0 0 24px}.v3-detail-kpi{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.v3-detail-kpi strong{margin:0}.v3-detail-kpi .badge{font-size:12px}.v3-detail-hero:empty{display:none}.detail-item>strong{font-size:14px}.detail-item .customer-note{font-size:12px}.detail-tabs{position:sticky;top:110px;z-index:3}.detail-section{padding-top:24px}.audit-time{white-space:nowrap;font-variant-numeric:tabular-nums}.audit-actor{font-size:12px}.audit-detail{max-width:480px}.audit-detail>span{font-size:12px;color:var(--muted);display:block}.audit-detail small{display:block;color:var(--quiet);font-size:11px;margin-top:5px;overflow-wrap:anywhere}.audit-failure{box-shadow:inset 2px 0 #b76573}.security-event{color:#b7d6f0}.v5-audit-table{min-width:860px}.batch-description{margin-bottom:20px;font-size:13px;color:var(--muted)}#oneTimeLicenseKey{width:100%;font:16px/1.6 Consolas,monospace;padding:16px;color:#b7e1ff;background:#102736}
.v5-admin-identity small,.v5-admin-cell>span{font-size:11px}.v5-admin-identity strong,.v5-admin-cell strong{font-size:13px}.v5-admin-avatar{font-size:14px}.v5-role-note{border:1px solid var(--line);background:#122635;border-radius:6px;padding:14px 16px;margin-bottom:20px;color:var(--muted);font-size:12px}.v5-role-note p{margin-top:7px}.v5-field>small{font-size:11px;color:var(--quiet)}.v5-role-badge{font-size:11px;color:var(--blue)}.v5-security-note{line-height:1.75}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.v5-admin-row{display:grid;grid-template-columns:minmax(170px,1.6fr) minmax(85px,.7fr) minmax(75px,.65fr) minmax(125px,1fr) minmax(110px,.9fr) minmax(125px,1fr) 55px;gap:20px}.v5-admin-identity{display:flex;align-items:center;gap:12px;min-width:0}.v5-admin-identity strong{display:block}.v5-admin-identity small{display:block;color:var(--quiet);margin-top:4px}.v5-admin-cell>span{display:block;color:var(--quiet);margin-bottom:7px}.v5-admin-cell strong{font-weight:500;white-space:nowrap}.v5-role-pill{font-size:11px;padding:4px 8px;border-radius:4px;background:#233443;color:#c1d7e9}.v5-role-pill.owner{background:#1b364c;color:#aedaff}.v5-state.ok{color:var(--green)}.v5-state.off{color:var(--red)}.v5-protected{font-size:11px;color:var(--quiet);white-space:nowrap}.v5-more{background:transparent;border:1px solid var(--line);color:var(--muted);padding:5px 9px}.v5-mono{font-family:Consolas,monospace}.v5-admin-list{overflow:auto}.v5-admin-row{min-width:940px}.permissions-panel p{font-size:12px}.v5-status-card span,.v5-status-card small{font-size:11px}
@media(max-width:1250px){.v5-admin-row{gap:14px;grid-template-columns:170px 90px 75px 125px 110px 125px 55px}.detail-tabs{top:110px}}
.brand-mark{position:relative;display:block}.brand-mark .brand-logo-img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:61px;height:61px}.v5-license-check{width:36px;padding-right:0!important}.detail-tabs{top:110px}.v3-alert-list:empty{min-height:100px}
@media(min-width:2200px){body{font-size:15px}.data-table{font-size:14px}.data-table th{font-size:12px}.customer-name{font-size:14px}.nav-item{font-size:15px}.primary-button,.secondary-button,.danger-button{font-size:13px;min-height:38px}.topbar h1{font-size:28px}}
#initialStatus{display:none}.auth-initializing #initialStatus{display:grid;position:fixed;inset:0;place-items:center;background:var(--bg);color:var(--muted);font-size:14px;z-index:800}.auth-initializing #loginScreen{visibility:hidden}.expiry-preview{border:1px solid var(--line);padding:16px;border-radius:6px;background:#112534;display:grid;grid-template-columns:1fr auto 1fr;gap:8px 16px;align-items:center;margin-bottom:24px}.expiry-preview>span{font-size:11px;color:var(--muted)}.expiry-preview>strong{font-size:14px;font-weight:550}.expiry-preview b{color:var(--blue)}.danger-note{font-size:12px;color:var(--amber);border:1px solid #69533c;background:#32291f;padding:14px 16px;line-height:1.8;border-radius:6px}

/* Final visual pass: shared readability, bounded workspace and detail proportions. */
:root {
  --muted: #afbed0;
  --quiet: #99abbe;
  --line: #304052;
  --soft: #263342;
  --sidebar-width: 232px;
  --workspace-width: 1840px;
}
body { font-size: 15px; }
.sidebar { width: var(--sidebar-width); }
.main {
  width: calc(100% - var(--sidebar-width));
  max-width: var(--workspace-width);
  margin-left: calc(var(--sidebar-width) + max(0px, (100% - var(--sidebar-width) - var(--workspace-width)) / 2));
  padding: 0 clamp(24px, 3vw, 56px) 48px;
}
.topbar { height: 128px; margin-bottom: 28px; }
.topbar p, .breadcrumb { font-size: 12px; }
.topbar h1 { font-size: 27px; }
.nav-item { font-size: 14px; min-height: 45px; }
.nav-group-label, .brand-sub, .server-state strong, .server-state small { font-size: 12px; }
.panel, .stats-grid, .v5-status-card {
  border-color: var(--line);
  box-shadow: inset 0 1px 0 #ffffff04, 0 3px 12px #0000000c;
}
.panel-head { padding: 20px 24px; }
.panel-head h2 { font-size: 16px; }
.panel-head p, .panel-hint { font-size: 12px; }
.eyebrow, .sync-status, .stat-card>small { font-size: 12px; }
.stat-card>span { font-size: 13px; color: #c0cddd; }
.stat-card>strong { font-size: 34px; }
.overview-heading h2 { font-size: 21px; }
.overview-workspace { grid-template-columns: minmax(0, 1.9fr) minmax(320px, 1fr); }
.expiry-strip>div, .expiry-strip>button { font-size: 12px; }
.distribution-legend>span { font-size: 13px; }
.service-row, .service-row strong, .service-metrics span { font-size: 13px; }
.activity-copy strong { font-size: 14px; }
.activity-copy small, .activity-row time { font-size: 12px; }
.v3-alert-main strong { font-size: 14px; }
.v3-alert-main span, .v3-alert-item .text-button { font-size: 12px; }
.primary-button, .secondary-button, .danger-button, .danger-outline-button {
  min-height: 36px; font-size: 13px; padding: 8px 14px;
}
.secondary-button { background: #1d2c3b; border-color: #3b5066; }
.secondary-button:hover { background: #2a4055; border-color: #587a99; }
.icon-button { font-size: 12px; min-height: 32px; }
.text-button, .license-link { font-size: 13px; }
.row-actions { gap: 6px; }
button:disabled { opacity: .6; }
.search-box { min-height: 40px; }
.search-box input, input, select, textarea { font-size: 14px; }
input, select, textarea { min-height: 40px; }
input[type=checkbox] { min-height: 14px; }
.search-box input::placeholder { color: #9bacbe; }
.data-table { font-size: 14px; }
.data-table th { font-size: 12px; color: #b5c5d7; letter-spacing: .1px; padding-block: 13px; }
.data-table td { padding-block: 15px; }
.data-table tbody tr:hover { background: #1b2b3c; }
.customer-name { font-size: 14px; color: #eff5fc; font-weight: 600; }
.customer-note { font-size: 12px; line-height: 1.6; }
.badge { font-size: 12px; min-height: 25px; padding: 4px 9px; }
.license-key, .device-version, .device-meta { font-size: 12px; }
.recent-panel .license-key { font-size: 11px; }
.count-label, .pagination { font-size: 12px; }
.v5-license-bulk button, #v5SelectedCount { font-size: 12px; }
.pagination button { min-height: 30px; }
.form-field>label, .v5-field>span { font-size: 13px; }
.form-section-title { font-size: 12px; letter-spacing: .3px; }
.form-help, .v5-field>small, .v5-security-note, .v5-confirm-box, .v5-role-note { font-size: 12px; }
.quick-days button, .activation-anchor-toggle { font-size: 12px; }
.modal, .v5-modal { border-color: #48617b; box-shadow: 0 24px 80px #0006; }
.modal-header p, .v5-modal-head p { line-height: 1.6; font-size: 13px; }
.modal-header h2, .v5-modal-head h2 { font-size: 21px; }
.modal-close:hover, .v5-modal-close:hover { background: #2a3b4f; color: #fff; }
.v5-status-card span, .v5-status-card small { font-size: 12px; }
.v5-status-card strong { font-size: 25px; }
.v5-status-icon { width: 34px; height: 34px; font-size: 11px; }
.v5-admin-identity strong, .v5-admin-cell strong { font-size: 14px; }
.v5-admin-identity small, .v5-admin-cell>span, .v5-admin-role, .v5-admin-status,
.v5-role-pill, .v5-protected, .v5-runtime-item>span, .v5-runtime-item>strong { font-size: 12px; }
.permissions-panel p { color: var(--muted); font-size: 13px; }
.v5-account-copy strong { font-size: 13px; }
.v5-account-copy small { font-size: 12px; }
.action-menu button, .v5-row-menu button, .v5-account-menu button { font-size: 13px; }
.v5-audit-table td:nth-child(1), .v5-audit-table td:nth-child(2) { font-size: 13px; }
.v5-audit-table td:last-child, .audit-detail>span, .audit-actor { font-size: 13px; }
.audit-detail small, .lf-audit-action { font-size: 12px; }
.owner-cleanup-tabs button { font-size: 14px; }
.owner-cleanup-tabs span, .owner-cleanup-selected, .cleanup-eligible, .cleanup-blocker { font-size: 12px; }
.cleanup-blocker { color: var(--muted); max-width: 340px; }
.owner-cleanup-warning p { color: #cfc1ac; font-size: 13px; }
.empty-state, .loading, .error-state { font-size: 13px; }

/* A bounded detail workspace: persistent context, three unchanged content tabs. */
.modal-backdrop:has(.license-detail-modal) {
  padding: 24px;
  justify-content: flex-end;
  background: #03070daa;
}
.license-detail-modal {
  display: flex;
  flex-direction: column;
  width: min(1000px, 76vw);
  height: min(700px, calc(100dvh - 48px));
  max-height: calc(100dvh - 48px);
  border: 1px solid #48617b;
  border-radius: 12px;
  overflow: hidden;
}
.license-detail-modal .modal-header {
  position: static; flex: none; padding: 22px 28px 18px;
  background: #182331; border-bottom-color: var(--soft); align-items: center;
}
.license-detail-modal .modal-header p { font-family: Consolas, monospace; color: #b8d4ec; }
.license-detail-modal .modal-body {
  padding: 0; min-height: 0; flex: 1;
  display: flex; flex-direction: column;
}
.v3-detail-hero { grid-template-columns: .85fr .8fr 1.55fr; gap: 0; padding: 20px 28px 16px; flex: none; }
.v3-detail-kpi { display: block; padding: 0 20px; border: 0; border-radius: 0; background: none; }
.v3-detail-kpi:first-child { padding-left: 0; }
.v3-detail-kpi + .v3-detail-kpi { border-left: 1px solid var(--line); }
.v3-detail-kpi>span { font-size: 12px; color: var(--muted); }
.v3-detail-kpi>strong { margin-top: 8px; font-size: 19px; font-weight: 550; line-height: 1.5; }
.v3-detail-kpi strong em { font-size: 14px; font-style: normal; color: var(--quiet); }
.v3-detail-kpi .badge { display: inline-flex; font-size: 13px; }
.v3-detail-kpi.detail-expiry strong { font-size: 16px; font-variant-numeric: tabular-nums; }
.detail-tabs { position: static; flex: none; padding: 0 28px; gap: 26px; background: none; }
.detail-tabs button { font-size: 14px; padding: 12px 0; color: var(--muted); }
.detail-tabs button.active { color: #c5e7ff; }
.detail-tabs button:hover { color: #e4f4ff; }
.detail-tabs button span { font-size: 12px; background: #2c3d50; border-radius: 4px; padding: 2px 6px; margin-left: 5px; }
.detail-section { min-height: 0; overflow: auto; flex: 1; padding: 24px 28px; scrollbar-gutter: stable; }
.detail-profile { display: grid; grid-template-columns: 1.1fr 1fr; gap: 28px; }
.detail-block + .detail-block { padding-left: 28px; border-left: 1px solid var(--line); }
.detail-block h3 { font-size: 14px; font-weight: 600; margin-bottom: 20px; }
.detail-grid { gap: 20px 16px; padding: 0; }
.detail-item-wide { grid-column: 1 / -1; }
.detail-item>span { font-size: 12px; color: var(--quiet); margin-bottom: 7px; }
.detail-item>strong { font-size: 14px; line-height: 1.65; font-weight: 500; }
.detail-item .detail-note { white-space: pre-wrap; }
.detail-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding-top: 22px; margin-top: 24px; border-top: 1px solid var(--line); }
.detail-footer .detail-actions { padding: 0; border: 0; }
.section-title { font-size: 14px; margin: 0 0 18px; }
.device-card { align-items: stretch; flex-direction: column; gap: 16px; padding: 18px 20px; background: #121d29; }
.detail-device-info { min-width: 0; }
.detail-device-title { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.device-card strong { font-size: 15px; overflow-wrap: anywhere; }
.detail-device-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; margin-top: 14px; color: var(--quiet); font-size: 12px; }
.detail-device-meta b { font-size: 13px; font-weight: 500; color: var(--text); margin-left: 8px; overflow-wrap: anywhere; }
.device-card .detail-fingerprint { max-width: none; display: flex; gap: 14px; font: 12px/1.7 Consolas, monospace; color: var(--muted); margin-top: 12px; }
.detail-fingerprint>span { flex: none; color: var(--quiet); font-family: var(--font); }
.device-card .row-actions { max-width: none; border-top: 1px solid var(--soft); padding-top: 12px; gap: 8px; }
.device-card .row-actions .icon-button { border-color: #35485c; background: #1b2b3b; min-height: 32px; }
.device-card .row-actions .icon-button:hover { background: #2a4055; }
.event-history-summary { font-size: 14px; }
.event-history-summary span, .event-history-actions button, .event-delete-button { font-size: 12px; }
.event-history-table { min-width: 730px; }
.event-history-table th { text-align: left; }
.event-history-table td { font-size: 13px; }
.event-history-table .event-check-cell { width: 36px; padding-right: 0; }
.detail-audit-history { margin-top: 24px; border-top: 1px solid var(--line); }
.detail-audit-history .panel-head { padding: 20px 0 16px; }
.history-item { padding: 15px 0; }
.history-item strong { font-size: 14px; font-weight: 500; }
.history-item span, .history-item small { font-size: 12px; }

@media (min-width: 2200px) {
  :root { --sidebar-width: 248px; --workspace-width: 2080px; }
  .main { padding-inline: 56px; }
  .nav-item { font-size: 15px; }
  .data-table, .customer-name { font-size: 15px; }
  .data-table td { padding-block: 17px; }
  .topbar { height: 144px; }
  .topbar h1 { font-size: 30px; }
  .overview-workspace { grid-template-columns: minmax(0, 2fr) minmax(400px, 1fr); gap: 28px; }
  .overview-primary, .overview-secondary { gap: 28px; }
  .v3-alert-list { max-height: 620px; }
  .v3-alert-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px; }
  .license-detail-modal { width: 1100px; height: min(760px, calc(100dvh - 64px)); }
  .modal-backdrop:has(.license-detail-modal) { padding: 32px; justify-content: center; }
}
@media (max-width: 1250px) {
  :root { --sidebar-width: 208px; }
  .overview-workspace { grid-template-columns: minmax(0, 1.55fr) minmax(300px, 1fr); }
  .main { padding-inline: 24px; }
  .stat-card { padding: 18px; }
  .stat-card>strong { font-size: 30px; }
  .expiry-strip>div, .expiry-strip>button { padding-inline: 12px; font-size: 11px; }
  .license-detail-modal { width: min(940px, calc(100vw - 48px)); }
}
@media (max-width: 1060px) {
  .overview-workspace { grid-template-columns: 1fr; }
  .overview-secondary { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 820px) {
  .main { margin-left: 0; width: 100%; padding-inline: 20px; }
  .sidebar { width: 228px; }
  .overview-secondary { grid-template-columns: 1fr; }
  .topbar { height: 112px; }
  .topbar h1 { font-size: 24px; }
  .modal-backdrop:has(.license-detail-modal) { padding: 12px; }
  .license-detail-modal { width: 100%; height: calc(100dvh - 24px); max-height: calc(100dvh - 24px); border-radius: 10px; }
  .license-detail-modal .modal-header { padding: 20px; }
  .v3-detail-hero { padding: 18px 20px 14px; grid-template-columns: .8fr .7fr 1.4fr; }
  .v3-detail-kpi { padding-inline: 12px; }
  .v3-detail-kpi.detail-expiry strong { font-size: 13px; }
  .detail-tabs { padding-inline: 20px; gap: 20px; }
  .detail-section { padding: 20px; }
  .detail-profile { grid-template-columns: 1fr; gap: 22px; }
  .detail-block + .detail-block { border-left: 0; border-top: 1px solid var(--line); padding: 20px 0 0; }
  .detail-block h3 { margin-bottom: 16px; }
  .detail-device-meta { grid-template-columns: 1fr; }
}
