:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,sans-serif;color:#e9edf3;background:#090b0f;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #090b0f;--surface: #10141b;--surface-raised: #151a23;--border: #252b36;--border-light: #303846;--text: #e9edf3;--muted: #8490a1;--muted-strong: #aab3c0;--green: #40db8b;--green-dark: #163f2c;--red: #ff6d75;--red-dark: #3f1d23;--amber: #f0b95b;--amber-dark: #3c3020}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% -20%,rgba(52,95,75,.16),transparent 36rem),var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}code{font-family:Cascadia Code,Consolas,monospace}.splash{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:28px}.loader{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.brand{display:flex;align-items:center;gap:11px;-webkit-user-select:none;user-select:none}.brand-mark{width:31px;height:31px;display:grid;place-items:center;border:1px solid #426c58;border-radius:9px;color:var(--green);background:#10231a;font:700 15px/1 Cascadia Code,Consolas,monospace;box-shadow:inset 0 0 18px #40db8b14}.brand-name{font-size:18px;font-weight:700;letter-spacing:-.03em}.brand-name span{color:var(--green)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,430px);padding:34px;border:1px solid var(--border);border-radius:16px;background:#10141bf0;box-shadow:0 30px 80px #00000061}.login-heading{margin:42px 0 25px}.eyebrow{margin:0 0 7px;color:var(--green);font:600 11px/1.4 Cascadia Code,Consolas,monospace;letter-spacing:.09em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:8px;font-size:28px;line-height:1.2;letter-spacing:-.04em}h2{margin-bottom:0;font-size:18px;line-height:1.3;letter-spacing:-.025em}.login-heading>p:last-child,.page-heading>div>p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.form-stack{display:grid;gap:17px}label{display:grid;gap:8px;color:var(--muted-strong);font-size:12px;font-weight:600}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:8px;outline:none;color:var(--text);background:#0b0e13;transition:border-color .15s,box-shadow .15s}input{min-height:43px;padding:0 13px}textarea{min-height:110px;padding:12px 13px;line-height:1.55;resize:vertical}select{min-height:43px;padding:0 34px 0 12px}input:focus,textarea:focus,select:focus{border-color:#3d725a;box-shadow:0 0 0 3px #40db8b14}input::placeholder{color:#545d6a}textarea::placeholder{color:#545d6a}.button{min-height:39px;padding:0 16px;border:1px solid transparent;border-radius:8px;color:var(--text);background:transparent;font-size:12px;font-weight:700;transition:transform .15s,background .15s,border-color .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.55}.button.primary{color:#06130d;background:var(--green);box-shadow:0 8px 24px #40db8b21}.button.primary:hover:not(:disabled){background:#5ae39b}.button.ghost{border-color:var(--border);color:var(--muted-strong);background:var(--surface)}.button.ghost:hover:not(:disabled){border-color:var(--border-light);color:var(--text);background:var(--surface-raised)}.button.full{width:100%;min-height:44px}.button.small{min-height:33px;padding:0 12px}.login-note{margin:24px 0 0;padding-top:20px;border-top:1px solid var(--border);color:var(--muted);font-size:11px;line-height:1.55;text-align:center}.app-shell{min-height:100vh}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--border);background:#090b0fe0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);position:sticky;top:0;z-index:20}.topbar-actions,.stats,.filters,.modal-actions{display:flex;align-items:center}.topbar-actions{gap:8px}.admin-chip{display:inline-flex;align-items:center;gap:8px;margin-right:8px;color:var(--muted-strong);font-size:12px}.online-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px #40db8ba6}.workspace{width:min(calc(100% - 48px),1440px);display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px;margin:0 auto}.sidebar{height:calc(100vh - 96px);position:sticky;top:80px;display:flex;flex-direction:column;justify-content:space-between;padding:22px 0 28px}.sidebar nav,.sidebar-bottom{display:grid;gap:6px}.sidebar button{width:100%;min-height:52px;display:flex;align-items:center;gap:11px;border:1px solid transparent;border-radius:9px;padding:8px 10px;color:var(--muted);background:transparent;text-align:left}.sidebar button:hover,.sidebar button.active{border-color:var(--border);color:var(--text);background:var(--surface)}.sidebar button.active{border-color:#315542;background:linear-gradient(110deg,#10231a,var(--surface))}.sidebar button>span:last-child{min-width:0;display:grid;gap:3px}.sidebar strong{font-size:12px;font-weight:650}.sidebar small{color:#626d7c;font-size:9px}.nav-icon{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;color:var(--muted-strong);background:#0d1015;font:600 13px/1 Cascadia Code,Consolas,monospace}.sidebar button.active .nav-icon{border-color:#37634b;color:var(--green);background:#10271c}.sidebar-bottom{padding-top:16px;border-top:1px solid var(--border)}.dashboard{width:100%;min-width:0;margin:0;padding:48px 0 42px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.page-heading h1{font-size:32px}.stats{gap:28px}.section-counter{display:grid;justify-items:end;gap:2px;color:var(--muted)}.section-counter span{color:var(--green);font:600 25px/1.2 Cascadia Code,Consolas,monospace}.section-counter small{font-size:10px}.stats>div{display:grid;gap:2px;min-width:58px;color:var(--muted);font-size:10px;text-align:right}.stat-value{color:var(--text);font:600 22px/1.2 Cascadia Code,Consolas,monospace}.stat-value.active{color:var(--green)}.stat-value.muted{color:var(--muted-strong)}.panel,.delivery-card{margin-bottom:18px;border:1px solid var(--border);border-radius:12px;background:#10141beb}.panel-heading{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;border-bottom:1px solid var(--border)}.security-note{padding:5px 8px;border:1px solid #294c3b;border-radius:5px;color:#70c99c;background:#10251b;font:500 10px/1 Cascadia Code,Consolas,monospace}.create-form{display:grid;gap:18px;padding:21px 20px 19px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.optional{color:#596271;font-weight:400}.secret-input{display:flex;border:1px solid var(--border);border-radius:8px;background:#0b0e13}.secret-input:focus-within{border-color:#3d725a;box-shadow:0 0 0 3px #40db8b14}.secret-input textarea{border:0;box-shadow:none;background:transparent;font-family:Cascadia Code,Consolas,monospace;font-size:12px}.secret-input textarea:focus{box-shadow:none}.secret-input button{align-self:flex-start;min-height:38px;border:0;padding:0 13px;color:var(--muted);background:transparent;font-size:11px}.secret-input button:hover{color:var(--text)}.masked-secret{-webkit-text-security:disc}.create-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:1px}.create-footer p{margin:0;color:var(--muted);font-size:11px}.create-footer code{color:var(--muted-strong)}.delivery-card{padding:20px;border-color:#2a573f;background:linear-gradient(140deg,#142e21c7,#10141bf0)}.delivery-top{display:flex;align-items:center;gap:12px;margin-bottom:17px}.delivery-top .icon-button{margin-left:auto}.success-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #3c7657;border-radius:50%;color:var(--green);background:#102b1e;font-weight:700}.icon-button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:7px;color:var(--muted);background:transparent;font-size:22px}.icon-button:hover{color:var(--text);background:#ffffff0d}.alert{padding:11px 13px;border:1px solid;border-radius:7px;font-size:12px;line-height:1.5}.alert.error{border-color:#633038;color:#ff9ca2;background:var(--red-dark)}.alert.warning{border-color:#5f4a27;color:#e4bd75;background:var(--amber-dark)}.alert.dismissible{display:flex;justify-content:space-between;margin-bottom:18px}.alert.dismissible button{border:0;color:inherit;background:transparent;font-size:18px}.command-list{display:grid;gap:8px;margin-top:14px}.command-row{min-width:0;display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid #29352e;border-radius:7px;background:#070a099e}.command-label{color:var(--green);font:500 10px/1 Cascadia Code,Consolas,monospace;text-transform:uppercase}.command-row code{min-width:0;overflow:hidden;color:#cdd5df;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.copy-button{min-height:29px;border:1px solid var(--border-light);border-radius:6px;padding:0 10px;color:var(--muted-strong);background:var(--surface-raised);font-size:10px}.copy-button:hover{color:var(--text);border-color:#425064}.history-heading{min-height:76px}.filters{gap:8px}.auto-refresh{display:inline-flex;align-items:center;gap:6px;padding:0 4px;color:#667181;font-size:9px;font-weight:600;white-space:nowrap}.auto-refresh>span{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 7px #40db8b8c}.filters .search{width:170px;min-height:34px;font-size:11px}.filters select{width:142px;min-height:34px;font-size:11px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{padding:11px 14px;color:#657080;background:#0d1016;font-size:9px;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase}td{max-width:230px;padding:13px 14px;border-top:1px solid #1e242e;color:var(--muted-strong);vertical-align:middle}tbody tr:first-child td{border-top:0}tbody tr:hover{background:#ffffff04}td strong{display:block;overflow:hidden;color:var(--text);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cell-note{display:block;max-width:240px;margin-top:3px;overflow:hidden;color:#697383;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.status{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border-radius:5px;font-size:10px;font-weight:600}.status>span{width:5px;height:5px;border-radius:50%;background:currentColor}.status.active{color:var(--green);background:var(--green-dark)}.status.used{color:#86a9d7;background:#1b2a3e}.status.revoked,.status.expired{color:#9aa3af;background:#252a32}.user-agent{display:block;max-width:190px;overflow:hidden;color:#737e8d;font-family:Cascadia Code,Consolas,monospace;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.actions-cell{width:80px;text-align:right}.danger-link{border:0;color:var(--red);background:transparent;font-size:10px}.danger-link:hover{text-decoration:underline}.empty-row{height:110px;color:var(--muted);text-align:center}footer{width:min(calc(100% - 48px),1240px);display:flex;justify-content:space-between;margin:0 auto;padding:0 0 30px;color:#4c5461;font-size:10px}footer span:first-child{color:#6d7786;font-weight:700}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#030507c2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(100%,430px);padding:22px;border:1px solid var(--border-light);border-radius:12px;background:var(--surface);box-shadow:0 25px 70px #00000080}.modal.api-modal,.modal.callback-modal{width:min(100%,720px);max-height:calc(100vh - 40px);overflow-y:auto}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.field-hint{color:#606a78;font-size:10px;font-weight:400}.modal-actions{justify-content:flex-end;gap:8px;margin-top:5px}.api-key-created{display:grid;gap:12px;margin-bottom:18px;padding:14px;border:1px solid #38684f;border-radius:8px;background:#10271c}.api-key-created>div:first-child{display:grid;gap:4px}.api-key-created strong{color:var(--green);font-size:12px}.api-key-created span{color:#83a091;font-size:10px}.api-key-value{min-width:0;display:flex;align-items:center;gap:8px}.api-key-value code{min-width:0;flex:1;overflow:hidden;color:#d8e4dd;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.api-key-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.api-help{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:20px 0;padding:13px;border:1px solid var(--border);border-radius:8px;background:#0b0e13}.api-help .eyebrow,.api-help span{grid-column:1 / -1}.api-help code{padding:8px 9px;border-radius:5px;color:#b8c4d1;background:#141922;font-size:10px}.api-help span{color:var(--muted);font-size:10px}.api-key-list{display:grid;gap:8px;padding-top:18px;border-top:1px solid var(--border)}.api-key-list-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.api-key-list-heading strong{font-size:12px}.api-key-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,auto) auto;align-items:center;gap:14px;padding:11px 12px;border:1px solid var(--border);border-radius:7px;background:#0c0f14}.api-key-row>div:first-child,.api-key-meta{min-width:0;display:grid;gap:3px}.api-key-row strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.api-key-row code,.api-key-meta{color:#687382;font-size:9px}.api-revoked{color:#78818e;font-size:9px}.api-empty{margin:8px 0;color:var(--muted);font-size:11px;text-align:center}.callback-created{display:grid;gap:12px;margin-bottom:18px;padding:14px;border:1px solid #38684f;border-radius:8px;background:#10271c}.callback-created>div:first-child{display:grid;gap:4px}.callback-created strong{color:var(--green);font-size:12px}.callback-created span,.callback-note{color:#82908a;font-size:10px}.callback-created.received,.callback-created.revoked{border-color:var(--border-light);background:#151922}.callback-created.received strong,.callback-created.revoked strong{color:var(--muted-strong)}.callback-note{margin:12px 0 20px;padding:10px 12px;border:1px solid var(--border);border-radius:7px;background:#0c0f14}.callback-list{margin-top:0}.callback-page-body{padding:20px}.callback-page .api-key-list{padding-bottom:2px}.report-list{display:grid;gap:12px;padding:18px 20px}.report-card{min-width:0;display:grid;gap:13px;padding:16px;border:1px solid var(--border);border-radius:9px;background:#0c0f14}.report-card-heading,.report-meta{display:grid;gap:12px}.report-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start}.report-card-heading>div:first-child{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 9px}.report-card h3{margin:0;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.report-card-heading code{grid-column:1 / -1;overflow-wrap:anywhere;color:var(--muted);font-size:10px}.report-status{padding:4px 7px;border:1px solid #315b46;border-radius:5px;color:var(--green);background:var(--green-dark);font:600 10px/1 Cascadia Code,Consolas,monospace}.report-time{display:grid;gap:3px;color:var(--muted);font-size:9px;text-align:right}.report-meta{grid-template-columns:repeat(4,minmax(0,1fr))}.report-meta>div,.report-value{min-width:0;display:grid;gap:4px}.report-meta span,.report-value span{color:#65707e;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.report-meta strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.report-value{padding:9px 11px;border:1px solid #20252d;border-radius:6px;background:#090c10}.report-value code{overflow-wrap:anywhere;color:#b5c0cc;font-size:10px}.report-log{border-top:1px solid var(--border);padding-top:10px}.report-log summary{color:var(--muted-strong);cursor:pointer;font-size:10px}.report-log pre{max-height:260px;margin:10px 0 0;overflow:auto;padding:11px;border-radius:6px;color:#aeb9c5;background:#080a0e;font:10px/1.55 Cascadia Code,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.file-upload-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:end;gap:14px;padding:20px}.file-upload-form input[type=file]{padding:8px}.file-upload-form input[type=file]::file-selector-button{min-height:27px;margin-right:10px;border:1px solid var(--border-light);border-radius:6px;padding:0 10px;color:var(--muted-strong);background:var(--surface-raised);font-size:10px}.file-created-meta{display:grid;gap:6px;color:var(--muted);font-size:10px}.file-created-meta code{color:var(--muted-strong);overflow-wrap:anywhere}.bundle-form{display:grid;gap:18px;padding:21px 20px 19px}.uid-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.uid-input-row .button{min-height:43px;white-space:nowrap}.config-form{display:grid;gap:18px;padding:21px 20px 19px}.config-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.config-switches{display:flex;flex-wrap:wrap;gap:10px}.check-field{display:flex;grid-template-columns:none;align-items:center;gap:8px;min-height:38px;border:1px solid var(--border);border-radius:7px;padding:0 11px;color:var(--muted-strong);background:#0c0f14}.check-field input{width:15px;min-height:15px;margin:0;accent-color:var(--green)}.config-preview{min-width:0;padding:13px;border:1px solid var(--border);border-radius:8px;background:#0a0d12}.config-preview pre{max-height:280px;margin:0;overflow:auto;color:#aeb9c6;font:10px/1.55 Cascadia Code,Consolas,monospace}.config-list{display:grid;gap:9px;padding:18px 20px 20px}.config-card{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr) auto;align-items:center;gap:16px;border:1px solid var(--border);border-radius:8px;padding:12px;background:#0c0f14}.config-card>div:first-child{min-width:0;display:grid;gap:4px}.config-card strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.config-card span{color:var(--muted);font-size:9px}.config-card-meta,.config-card-actions{display:flex;align-items:center;gap:7px}.config-card-meta{min-width:0;flex-wrap:wrap}.config-card-meta code{border-radius:5px;padding:5px 7px;color:#7e8998;background:#141922;font-size:9px}.config-card-actions{justify-content:flex-end}.bundle-form input[type=file]{padding:8px}.bundle-form input[type=file]::file-selector-button{min-height:27px;margin-right:10px;border:1px solid var(--border-light);border-radius:6px;padding:0 10px;color:var(--muted-strong);background:var(--surface-raised);font-size:10px}.bundle-delivery{border-color:#42624f}.json-delivery{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin:14px 0;padding:12px;border:1px solid #29352e;border-radius:8px;background:#070a09b8}.json-delivery pre{min-width:0;margin:0;overflow-x:auto;color:#cdd5df;font:11px/1.6 Cascadia Code,Consolas,monospace}.table-code{color:#8290a2;font-size:9px}.status.file-active{color:var(--green);background:var(--green-dark)}.status.file-downloading{color:var(--amber);background:var(--amber-dark)}.status.file-downloaded{color:#86a9d7;background:#1b2a3e}.status.file-revoked{color:#9aa3af;background:#252a32}.status.config-active{color:var(--green);background:var(--green-dark)}.status.config-used{color:#86a9d7;background:#1b2a3e}.status.config-revoked,.status.config-missing{color:#9aa3af;background:#252a32}.callback-row{display:grid;grid-template-columns:minmax(140px,1fr) auto minmax(190px,1fr) auto;align-items:center;gap:13px;padding:11px 12px;border:1px solid var(--border);border-radius:7px;background:#0c0f14}.callback-row>div:first-child,.callback-client{min-width:0;display:grid;gap:3px}.callback-row strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.callback-row>div:first-child span,.callback-client span,.callback-client code{overflow:hidden;color:#687382;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.status.callback-waiting{color:var(--green);background:var(--green-dark)}.status.callback-received{color:#86a9d7;background:#1b2a3e}.status.callback-revoked{color:#9aa3af;background:#252a32}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:6px;color:#687382;font-size:9px}.pagination>div{display:flex;gap:7px}.panel-pagination{padding:12px 14px;border-top:1px solid var(--border)}@media(max-width:820px){.topbar{padding:0 18px}.admin-chip{display:none}.workspace{width:min(calc(100% - 28px),1240px);display:block}.sidebar{height:auto;position:static;display:flex;overflow-x:auto;padding:14px 0 0}.sidebar nav,.sidebar-bottom{display:flex;flex:0 0 auto}.sidebar-bottom{margin-left:6px;padding:0 0 0 6px;border-top:0;border-left:1px solid var(--border)}.sidebar button{width:auto;min-height:42px;white-space:nowrap}.sidebar button>span:last-child{display:block}.sidebar small{display:none}.nav-icon{width:24px;height:24px;flex-basis:24px}.dashboard{padding-top:30px}.page-heading{align-items:flex-start;flex-direction:column}.stats>div{text-align:left}.form-row{grid-template-columns:1fr}.history-heading{align-items:flex-start;flex-direction:column}.filters{width:100%;flex-wrap:wrap}.filters .search{flex:1;width:auto;min-width:130px}.command-row{grid-template-columns:1fr auto}.command-label{grid-column:1 / -1}.api-key-row{grid-template-columns:1fr auto}.api-key-meta{grid-column:1 / -1;grid-row:2}.callback-row{grid-template-columns:minmax(0,1fr) auto}.callback-client{grid-column:1 / -1}.report-card-heading{grid-template-columns:1fr}.report-time{text-align:left}.report-meta{grid-template-columns:1fr 1fr}.file-upload-form{grid-template-columns:1fr}.config-fields{grid-template-columns:1fr 1fr}.config-card{grid-template-columns:1fr auto}.config-card-meta{grid-column:1 / -1;grid-row:2}}@media(max-width:520px){.login-card{padding:25px}.topbar-actions .button:first-of-type{display:none}.create-footer{align-items:stretch;flex-direction:column}.command-row{grid-template-columns:minmax(0,1fr)}.command-label{grid-column:auto}.copy-button{justify-self:start}footer{width:calc(100% - 28px);gap:16px;flex-direction:column}.api-key-form,.api-help{grid-template-columns:1fr}.api-help .eyebrow,.api-help span{grid-column:auto}.pagination{align-items:stretch;flex-direction:column}.json-delivery,.config-fields,.report-meta,.config-card{grid-template-columns:1fr}.config-card-meta,.config-card-actions{grid-column:auto;grid-row:auto}}
