:root{color:#202421;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:0;background:#f4f6f5;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}body{background:#f4f6f5;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,p{margin:0}.boot-screen,.login-shell{place-items:center;min-height:100vh;display:grid}.boot-screen{color:#5f6963;align-content:center;gap:12px;font-size:14px}.login-shell{background:#eef2ef;padding:24px}.login-panel{background:#fff;border:1px solid #d9dfdb;border-radius:8px;width:min(420px,100%);padding:32px;box-shadow:0 12px 32px #1d282114}.brand-mark{color:#fff;background:#1f6f4a;border-radius:8px;place-items:center;width:44px;height:44px;margin-bottom:20px;display:grid}.brand-mark.small{width:36px;height:36px;margin:0}.eyebrow{color:#1f6f4a;text-transform:uppercase;font-size:12px;font-weight:700}.login-panel h1{margin-top:5px;font-size:26px}.muted,.section-heading p,.modal header p{color:#68736c;margin-top:6px;font-size:14px;line-height:1.5}.login-form,.modal form{gap:18px;margin-top:28px;display:grid}label{color:#313733;gap:7px;font-size:13px;font-weight:600;display:grid}label span{justify-content:space-between;align-items:center;display:flex}label em{color:#a64343;font-size:11px;font-style:normal}label small{color:#79827d;font-weight:400}input,select,textarea{color:#202421;background:#fff;border:1px solid #cbd3ce;border-radius:6px;outline:none;width:100%}input,select{min-height:40px;padding:0 11px}textarea{resize:vertical;padding:10px 11px}input:focus,select:focus,textarea:focus{border-color:#2e7d57;box-shadow:0 0 0 3px #2e7d571f}.form-error{color:#a53636;background:#fff1f1;border:1px solid #efc5c5;border-radius:6px;padding:9px 11px;font-size:13px}.primary-button,.secondary-button,.text-button{border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-weight:650;display:inline-flex}.primary-button{color:#fff;background:#1f6f4a;border:1px solid #1f6f4a}.primary-button:hover{background:#185b3d}.secondary-button{color:#303733;background:#fff;border:1px solid #c8d0cb}.secondary-button:hover{background:#f5f7f6}.text-button{color:#56615a;background:0 0;border:0}.full-button{width:100%}.danger-button{background:#a33a3a;border-color:#a33a3a}.danger-button:hover{background:#892f2f}.icon-button{color:#4c5750;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;width:36px;height:36px;padding:0;display:inline-grid}.icon-button:hover{background:#edf1ee;border-color:#d7ddd9}.danger-quiet{color:#a33a3a}.app-shell{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #dce2de;justify-content:space-between;align-items:center;height:64px;padding:0 max(24px,50vw - 620px);display:flex}.brand-line,.account-actions{align-items:center;gap:11px;display:flex}.brand-line>div:last-child{gap:2px;display:grid}.brand-line strong{font-size:15px}.brand-line span,.account-name{color:#6d7771;font-size:12px}.view-tabs{background:#fff;border-bottom:1px solid #dce2de;align-items:stretch;gap:4px;min-height:48px;padding:0 max(24px,50vw - 620px);display:flex}.view-tabs button{color:#68736c;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:650;display:inline-flex}.view-tabs button.active{color:#1f6f4a;border-bottom-color:#1f6f4a}.summary-band{background:#fff;border:1px solid #dce2de;border-radius:8px;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:22px auto 0;display:grid}.summary-band>div{border-right:1px solid #e4e8e5;flex-direction:column;justify-content:center;gap:6px;min-height:84px;padding:16px 22px;display:flex}.summary-band>div:last-child{border:0}.summary-band span{color:#6d7771;font-size:12px}.summary-band strong{font-size:24px}.summary-band .summary-rule{color:#775f21;font-size:17px}.workspace,.audit-band{max-width:1240px;margin:18px auto 0}.workspace{background:#fff;border:1px solid #dce2de;border-radius:8px}.section-heading{justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.section-heading h1{font-size:20px}.section-heading h2{font-size:17px}.toolbar{border-bottom:1px solid #e3e7e4;align-items:center;gap:10px;padding:0 24px 16px;display:flex}.search-box{color:#758079;border:1px solid #cbd3ce;border-radius:6px;align-items:center;gap:9px;width:min(480px,100%);min-height:40px;padding-left:11px;display:flex}.search-box:focus-within{border-color:#2e7d57;box-shadow:0 0 0 3px #2e7d571f}.search-box input{min-height:38px;box-shadow:none;border:0;padding-left:0}.toolbar select{width:130px}.table-wrap{min-height:180px;position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%}th{color:#66716a;text-align:left;background:#f8faf9;font-size:12px;font-weight:650}th,td{vertical-align:middle;white-space:nowrap;border-bottom:1px solid #e6e9e7;padding:13px 16px}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}td{font-size:13px}.customer-name,.cell-secondary{display:block}.customer-name{font-size:13px}.cell-secondary{color:#758079;text-overflow:ellipsis;max-width:230px;margin-top:4px;font-size:12px;overflow:hidden}.code-suffix{color:#3e4741;background:#f0f3f1;border-radius:4px;padding:5px 7px;font-family:Consolas,monospace}.code-suffix.trial-code{color:#23576a;background:#e8f4f7;font-family:inherit}.status-pill{border-radius:999px;padding:4px 8px;font-size:12px;font-weight:650;display:inline-flex}.status-pill.unused{color:#6b5b27;background:#fff6d8}.status-pill.activated{color:#17603e;background:#e2f4e9}.status-pill.trial{color:#23576a;background:#e4f3f7}.status-pill.expired{color:#75551e;background:#fff0c9}.status-pill.revoked{color:#8b3838;background:#fbe8e8}.device-count{color:#344039;background:0 0;border:0;border-bottom:1px dashed #8e9892;align-items:center;gap:6px;padding:3px 0;display:inline-flex}.action-column,.row-actions{text-align:right;width:60px}.device-row td{background:#fbfcfb;padding:0 24px 14px}.device-panel{border:1px solid #dce2de;border-radius:6px;gap:8px;padding:12px;display:grid}.device-item{grid-template-columns:24px 1fr auto;align-items:center;gap:10px;min-height:48px;display:grid}.device-item>div{gap:3px;display:grid}.device-item span{color:#737d77;font-size:12px}.device-item.released{opacity:.62}.released-label{padding-right:8px}.compact{min-height:32px;padding:0 10px;font-size:12px}.empty-inline{color:#768079;font-size:13px}.empty-state{text-align:center;color:#78817c;height:180px}.empty-state>*{margin:5px auto;display:block}.empty-state strong{color:#444d47}.table-loading{color:#59645d;background:#ffffffc7;justify-content:center;align-items:center;gap:9px;font-size:13px;display:flex;position:absolute;inset:0}.pagination{color:#6d7771;justify-content:space-between;align-items:center;min-height:58px;padding:0 20px 0 24px;font-size:12px;display:flex}.pagination>div{align-items:center;gap:8px;display:flex}.audit-band{background:#fff;border:1px solid #dce2de;border-radius:8px;margin-bottom:36px}.compact-heading{border-bottom:1px solid #e4e8e5;padding-bottom:16px}.audit-list{grid-template-columns:1fr 1fr;column-gap:28px;padding:10px 24px 18px;display:grid}.audit-item{border-bottom:1px solid #edf0ee;grid-template-columns:8px 92px 1fr auto;align-items:center;gap:9px;min-height:40px;font-size:12px;display:grid}.audit-item strong{color:#3f4943}.audit-item span,.audit-item time{color:#78817c}.audit-dot{background:#5b8c70;border-radius:50%;width:7px;height:7px}.release-workspace{max-width:1240px;margin:22px auto 36px}.release-heading{justify-content:space-between;align-items:flex-start;gap:20px;padding:4px 0 18px;display:flex}.release-heading h1{font-size:22px}.release-heading p{color:#68736c;margin-top:6px;font-size:14px}.product-code{color:#526059;background:#e9eeeb;border-radius:4px;padding:6px 9px;font:12px Consolas,monospace}.release-section{background:#fff;border:1px solid #dce2de;border-radius:8px;margin-bottom:18px;overflow:hidden}.release-error{margin-bottom:14px}.release-upload{border-bottom:1px solid #e3e7e4;grid-template-columns:minmax(240px,.75fr) minmax(320px,1.5fr) auto;align-items:end;gap:16px;padding:18px 24px;display:grid}.file-picker{color:#335443;cursor:pointer;text-align:center;background:#f3f8f5;border:1px dashed #8fb09d;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:92px;padding:14px;display:flex}.file-picker input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.release-notes-field{align-self:stretch}.release-notes-field textarea{min-height:92px}.release-submit{padding-bottom:1px}.release-table-wrap{min-height:150px}.release-note-preview{max-width:260px}.digest{color:#455149;font-size:12px}.status-pill.release-draft{color:#6b5b27;background:#fff6d8}.status-pill.release-published{color:#17603e;background:#e2f4e9}.status-pill.release-withdrawn{color:#8b3838;background:#fbe8e8}.minimum-section{overflow:visible}.minimum-section .compact-heading{align-items:center}.affected-count{color:#68736c;grid-template-columns:1fr auto;align-items:center;gap:14px;min-width:180px;font-size:12px;display:grid}.affected-count strong{color:#8b3838;font-size:22px}.minimum-form{align-items:end;gap:12px;padding:18px 24px 22px;display:flex}.minimum-form label{width:min(360px,100%)}.modal-backdrop{z-index:20;background:#151c1875;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #cfd6d1;border-radius:8px;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 18px 54px #141d173d}.modal header{justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px 0;display:flex}.modal h2{font-size:19px}.modal form{margin:0;padding:22px 24px 24px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.modal footer{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.code-modal{width:min(620px,100%);padding-bottom:22px}.activation-code{color:#183f2c;background:#edf7f1;border:1px solid #a8cdb7;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;width:calc(100% - 48px);min-height:58px;margin:22px 24px 14px;padding:10px 14px;display:flex}.activation-code code{overflow-wrap:anywhere;min-width:0;font-size:16px;font-weight:700}.notice{color:#705e28;background:#fff9e8;border:1px solid #ead9a1;border-radius:6px;align-items:flex-start;gap:9px;margin:0 24px;padding:11px;font-size:12px;line-height:1.5;display:flex}.code-modal footer,.confirm-modal footer{padding:18px 24px 0}.confirm-modal{width:min(440px,100%);padding-bottom:22px}.toast{z-index:40;color:#fff;background:#263a2e;border-radius:6px;align-items:center;gap:8px;padding:11px 14px;font-size:13px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #141e1833}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1288px){.summary-band,.workspace,.audit-band,.release-workspace{margin-left:24px;margin-right:24px}}@media (width<=760px){.topbar{padding:0 14px}.brand-line span,.account-name{display:none}.view-tabs{padding:0 8px}.summary-band{grid-template-columns:1fr 1fr;margin:14px}.summary-band>div:nth-child(2){border-right:0}.summary-band>div:nth-child(-n+2){border-bottom:1px solid #e4e8e5}.workspace,.audit-band,.release-workspace{margin-left:14px;margin-right:14px}.section-heading{align-items:flex-start;padding:18px 16px}.section-heading .primary-button{flex-shrink:0}.toolbar{flex-wrap:wrap;padding:0 16px 14px}.search-box{width:100%}.toolbar select{flex:1}th:first-child,td:first-child{padding-left:16px}th:last-child,td:last-child{padding-right:16px}.audit-list{grid-template-columns:1fr;padding-left:16px;padding-right:16px}.form-grid{grid-template-columns:1fr}.release-heading{flex-direction:column;align-items:stretch}.product-code{overflow-wrap:anywhere;align-self:flex-start;max-width:100%}.release-upload{grid-template-columns:minmax(0,1fr);padding:16px}.release-submit .primary-button{width:100%}.minimum-section .compact-heading{flex-direction:column;align-items:flex-start}.minimum-form{flex-direction:column;align-items:stretch;padding:16px}.minimum-form label{width:100%}.modal{max-height:calc(100vh - 20px)}.modal-backdrop{padding:10px}}
