body{min-height:100vh;overflow-x:hidden}.login-layer{z-index:100;background:radial-gradient(circle at 15% 20%,#315fdf47,#0000 34%),radial-gradient(circle at 85% 80%,#0f9f8d38,#0000 30%),#0a1120;grid-template-columns:minmax(0,1fr);place-items:center;padding:24px;transition:all .22s;display:grid;position:fixed;inset:0}.login-layer.hidden{opacity:0;pointer-events:none;visibility:hidden}.login-card{color:#edf3ff;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#101a2df5;border:1px solid #97acd338;border-radius:8px;justify-self:center;width:calc(100vw - 48px);max-width:430px;padding:34px;box-shadow:0 32px 100px #0000006b}.login-brand,.admin-brand{align-items:center;gap:12px;text-decoration:none;display:flex}.login-brand>span,.admin-brand>span{color:#fff;background:linear-gradient(135deg,#4f7cff,#17b5a3);border-radius:14px;place-items:center;width:44px;height:44px;font-size:13px;font-weight:900;display:grid}.login-brand strong,.login-brand small,.admin-brand strong,.admin-brand small{line-height:1.2;display:block}.login-brand small,.admin-brand small{color:#7586a4;letter-spacing:.14em;margin-top:4px;font-size:9px}.login-copy{margin:38px 0 25px}.login-copy h1{letter-spacing:-.03em;margin:0 0 9px;font-size:30px}.login-copy p{color:#9aabc5;margin:0;font-size:13px}.login-card>label{color:#aab8ce;margin:15px 0 8px;font-size:12px;font-weight:750;display:block}.credential-field{background:#0c1628;border:1px solid #33435f;border-radius:8px;display:flex;overflow:hidden}.credential-field:focus-within{border-color:#7195ff;box-shadow:0 0 0 3px #7195ff24}.credential-field input{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:13px 14px}.credential-field button{color:#8da0bf;cursor:pointer;background:0 0;padding:0 14px;font-size:12px}.login-submit{width:100%;margin-top:18px}.login-error{color:#ff9292;min-height:22px;margin:12px 0 0;font-size:12px}.back-site{color:#8fa3c3;margin-top:12px;font-size:12px;text-decoration:none;display:inline-block}.admin-shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.admin-shell[aria-hidden=true]{visibility:hidden}.sidebar{z-index:40;color:#dce6f7;background:#0b1220;flex-direction:column;width:244px;padding:24px 17px;display:flex;position:fixed;inset:0 auto 0 0}.admin-brand{padding:0 8px 24px}.admin-brand strong{color:#f1f5ff;font-size:15px}.admin-nav{gap:6px;margin-top:16px;display:grid}.admin-nav button{color:#8291aa;cursor:pointer;text-align:left;background:0 0;border-radius:12px;align-items:center;gap:13px;min-height:46px;padding:0 13px;transition:all .15s;display:flex}.admin-nav button:hover{color:#dce7f8;background:#121d31}.admin-nav button.active{color:#fff;background:linear-gradient(135deg,#4f7cff3d,#17b5a321)}.admin-nav button span{color:#7195ff;place-items:center;width:25px;font-size:18px;display:grid}.admin-nav button strong{font-size:13px;font-weight:700}.sidebar-foot{border-top:1px solid #1d2940;margin-top:auto;padding:18px 10px 0}.sidebar-foot a{color:#aab8d0;font-size:12px;text-decoration:none}.sidebar-foot p{color:#566780;margin:10px 0 0;font-size:10px}.admin-main{grid-column:2;min-width:0}.admin-header{z-index:30;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:0 30px;display:flex;position:sticky;top:0}.header-title-group,.admin-header-actions,.backend-state,.auto-refresh,.panel-actions,.filter-actions,.pager-actions{align-items:center;display:flex}.header-title-group{gap:12px}.header-title-group h1{margin:0;font-size:20px;line-height:1.25}.header-title-group p{color:var(--text-faint);margin:4px 0 0;font-size:11px}.admin-header-actions{gap:10px}.backend-state,.auto-refresh{border:1px solid var(--line);background:var(--surface-solid);min-height:38px;color:var(--text-soft);border-radius:11px;gap:8px;padding:0 12px;font-size:11px;font-weight:700}.auto-refresh input{accent-color:var(--primary)}.quiet-button{border:1px solid var(--line);background:var(--surface-solid);min-height:38px;color:var(--text-soft);cursor:pointer;border-radius:10px;padding:0 13px;font-size:12px;font-weight:700}.quiet-button:hover{border-color:var(--primary);color:var(--primary)}.button.compact{border-radius:10px;min-height:38px;padding-inline:15px;font-size:12px}.mobile-sidebar-button{display:none}.admin-content{padding:28px 30px 50px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.summary-grid[hidden]{display:none}.metric-card{border:1px solid var(--line);background:var(--surface-solid);min-height:142px;box-shadow:var(--shadow-sm);border-radius:16px;padding:22px;position:relative;overflow:hidden}.metric-card:after{background:var(--metric-color);content:"";opacity:.1;border-radius:50%;width:100px;height:100px;position:absolute;top:-34px;right:-34px}.metric-card.blue{--metric-color:#4f7cff}.metric-card.green{--metric-color:#17a77e}.metric-card.orange{--metric-color:#d68b2e}.metric-card.purple{--metric-color:#8b67d9}.metric-card.red{--metric-color:#db5656}.metric-card span{color:var(--text-soft);font-size:12px;font-weight:700}.metric-card strong{letter-spacing:-.04em;margin-top:8px;font-size:31px;line-height:1;display:block}.metric-card p{color:var(--text-faint);margin:22px 0 0;font-size:10px}.data-panel{border:1px solid var(--line);background:var(--surface-solid);box-shadow:var(--shadow-sm);border-radius:18px;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:17px 20px;display:flex}.panel-head h2{margin:0;font-size:15px}.panel-head p{color:var(--text-faint);margin:4px 0 0;font-size:10px}.panel-actions{gap:8px}.filter-form{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-soft) 62%,var(--surface-solid));padding:18px 20px}.filter-form[hidden]{display:none}.filter-grid{grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;display:grid}.filter-grid label{gap:6px;display:grid}.filter-grid label>span{color:var(--text-soft);font-size:10px;font-weight:750}.filter-grid input,.filter-grid select,.pager select{border:1px solid var(--line);background:var(--surface-solid);border-radius:9px;outline:0;width:100%;min-height:38px;padding:0 11px;font-size:12px}.filter-grid input:focus,.filter-grid select:focus,.pager select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.filter-actions{gap:8px;margin-top:14px}.request-status{color:var(--text-faint);margin-left:6px;font-size:10px}.table-shell{min-height:300px;position:relative;overflow-x:auto}.table-shell[hidden]{display:none}.data-table{border-collapse:collapse;white-space:nowrap;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;max-width:260px;padding:13px 15px;font-size:11px}.data-table th{z-index:2;background:var(--surface-soft);color:var(--text-soft);letter-spacing:.02em;font-size:10px;font-weight:800;position:sticky;top:0}.data-table tbody tr{cursor:pointer;transition:all .1s}.data-table tbody tr:hover{background:color-mix(in srgb,var(--primary-soft) 50%,transparent)}.data-table .mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.cell-text{text-overflow:ellipsis;display:block;overflow:hidden}.badge{background:var(--surface-soft);min-height:23px;color:var(--text-soft);border-radius:999px;align-items:center;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.badge.success{background:var(--success-soft);color:var(--success)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.empty-state,.loading-state{background:var(--surface-solid);color:var(--text-faint);flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11px;display:none;position:absolute;inset:0}.empty-state.show,.loading-state.show{display:flex}.empty-state strong{color:var(--text-soft);font-size:14px}.loading-state i{border:2px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.pager{border-top:1px solid var(--line);min-height:66px;color:var(--text-faint);justify-content:space-between;align-items:center;padding:0 20px;font-size:11px;display:flex}.pager[hidden]{display:none}.pager-actions{gap:9px}.pager select{width:auto}.pager .icon-button{border-radius:9px;width:34px;height:34px}.pager button:disabled{opacity:.35;cursor:not-allowed;transform:none}.detail-dialog{border:1px solid var(--line);background:var(--surface-solid);width:min(680px,100% - 30px);max-height:min(760px,100vh - 40px);color:var(--text);box-shadow:var(--shadow-lg);border-radius:20px;padding:0;overflow:hidden}.detail-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#040a1494}.dialog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.dialog-head span{color:var(--text-faint);font-size:10px}.dialog-head h2{margin:3px 0 0;font-size:17px}.detail-content{max-height:620px;margin:0;padding:10px 20px 22px;display:grid;overflow-y:auto}.detail-content>div{border-bottom:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);gap:14px;padding:12px 0;display:grid}.detail-content dt{color:var(--text-faint);font-family:ui-monospace,Consolas,monospace;font-size:11px}.detail-content dd{overflow-wrap:anywhere;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;margin:0;font-size:12px;display:flex}.detail-content dd span{min-width:0}.detail-content button{background:var(--primary-soft);color:var(--primary);cursor:pointer;border-radius:7px;flex:none;padding:4px 7px;font-size:9px;font-weight:800}.toast{z-index:120;color:#bff3da;max-width:min(380px,100% - 30px);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;background:#10271f;border-radius:11px;padding:11px 15px;font-size:12px;transition:all .16s;position:fixed;bottom:24px;right:24px;transform:translateY(12px)}.toast.error{color:#ffc3cb;background:#3a1c24}.toast.show{opacity:1;transform:translateY(0)}.sidebar-mask{display:none}.password-dialog{border:1px solid var(--line);background:var(--surface-solid);width:min(92vw,480px);color:var(--text);box-shadow:var(--shadow-lg);border-radius:8px;padding:0}.password-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#040912a8}.password-dialog form{padding:22px}.password-dialog .dialog-head{margin:-22px -22px 20px}.password-dialog label{color:var(--text-soft);gap:7px;margin-top:14px;font-size:11px;font-weight:750;display:grid}.password-dialog input{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;outline:0;min-height:42px;padding:0 12px}.password-dialog input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.password-notice{color:var(--text-soft);background:#d68b2e1a;border-left:3px solid #d68b2e;margin:0 0 12px;padding:11px 12px;font-size:12px;line-height:1.6}.password-notice:empty{display:none}.password-rule{color:var(--text-faint);margin:10px 0 0;font-size:10px;line-height:1.5}.password-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}@media (width<=1180px){.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}}@media (width<=900px){.admin-shell{display:block}.admin-main{grid-column:auto}.sidebar{transition:all .18s;transform:translate(-105%)}.sidebar.open{transform:translate(0)}.sidebar-mask{z-index:35;background:#0409128c;position:fixed;inset:0}.sidebar-mask.show{display:block}.mobile-sidebar-button{display:inline-grid}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media (width<=680px){.admin-header{min-height:68px;padding:0 14px}.header-title-group p,.backend-state,.auto-refresh{display:none}.admin-header-actions{gap:6px}.admin-content{padding:16px 12px 36px}.summary-grid{gap:10px}.metric-card{min-height:124px;padding:17px}.metric-card strong{font-size:26px}.panel-head{flex-direction:column;align-items:flex-start;gap:12px}.panel-actions{width:100%}.panel-actions button{flex:1}.filter-grid{grid-template-columns:1fr}.filter-actions{flex-wrap:wrap}.request-status{width:100%;margin:3px 0 0}.pager{flex-direction:column;align-items:flex-start;gap:12px;padding-block:14px}.detail-content>div{grid-template-columns:1fr;gap:5px}}@media (width<=430px){.login-card{padding:26px 22px}.summary-grid{grid-template-columns:1fr}.metric-card{min-height:112px}.quiet-button{padding-inline:10px}}
