:root{color-scheme:dark;font-family:Aptos,Segoe UI,ui-sans-serif,system-ui,sans-serif;background:#111310;color:#f3f0e8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),#111310;background-size:48px 48px}button,input,textarea{font:inherit}button{cursor:pointer}pre{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:28px;height:100vh;padding:24px;border-right:1px solid #34372f;background:#121411f5}.brand{display:flex;align-items:center;gap:12px}.brand__mark{display:grid;width:40px;height:40px;place-items:center;border:1px solid #d8ff69;color:#d8ff69;font-weight:800;letter-spacing:0}.brand strong,.brand small{display:block}.brand small,.muted,.sidebar__footer small,.overline{color:#a7aa9f}.muted--pad{margin:0;padding:4px 2px}.nav{display:grid;gap:8px}.nav__item,.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #44483e;background:#1a1d18;color:#f3f0e8}.nav__item{justify-content:flex-start;width:100%;min-height:42px;padding:0 12px;border-radius:6px}.nav__item--active{border-color:#d8ff69;color:#d8ff69;background:#242a18}.sidebar__footer{display:grid;gap:10px;margin-top:auto;overflow-wrap:anywhere}.badge{width:max-content;padding:4px 8px;border:1px solid #c08b36;color:#ffc76b;text-transform:uppercase;font-size:12px}.main{min-width:0;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1,.login-panel h1,.center-screen h1{margin:0;font-size:34px;line-height:1;letter-spacing:0}.overline{display:block;margin-bottom:8px;text-transform:uppercase;font-size:12px;font-weight:800}.admin-id{display:inline-flex;align-items:center;gap:10px;max-width:420px;overflow-wrap:anywhere}.icon-button{width:38px;height:38px;padding:0;border-radius:6px}.button{min-height:40px;padding:0 14px;border-radius:6px;font-weight:750}.button:hover,.icon-button:hover,.nav__item:hover{border-color:#d8ff69}.button--wide{width:100%}.button--secondary{background:#22251f}.button--danger{border-color:#e45b4e;background:#351d1a;color:#ffd8d4}.button--ghost{background:transparent}.button--disabled{color:#7c8075;cursor:not-allowed}.page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{min-width:0;border:1px solid #34372f;border-radius:8px;background:#141612f0}.panel--span{grid-column:1 / -1}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #34372f}.panel h2{margin:0;font-size:16px;letter-spacing:0}.search-row{display:flex;align-items:flex-end;gap:12px;padding:16px}.field{display:grid;gap:7px}.field--grow{flex:1}.field span{color:#a7aa9f;font-size:12px;font-weight:800;text-transform:uppercase}.field input,.field textarea{width:100%;border:1px solid #44483e;border-radius:6px;background:#0d0f0c;color:#f3f0e8;outline:none}.field input{height:42px;padding:0 12px}.field textarea{min-height:120px;resize:vertical;padding:12px}.field input:focus,.field textarea:focus{border-color:#d8ff69}.table-list,.action-stack{display:grid;gap:10px;padding:14px}.row-card{display:grid;gap:4px;width:100%;padding:12px;border:1px solid #34372f;border-radius:6px;background:#12140f;color:inherit;text-align:left}.row-card:hover{border-color:#d8ff69}.row-card code,.json-block{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.row-card code,.row-card span,.row-card small{color:#a7aa9f;overflow-wrap:anywhere}.json-block{max-height:420px;overflow:auto;padding:14px 16px;color:#e4e1d5;font-size:12px;line-height:1.55}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:1px;background:#34372f}.kv{min-width:0;padding:12px;background:#12140f}.kv dt,.record-fields dt{color:#a7aa9f;font-size:11px;font-weight:800;text-transform:uppercase}.kv dd,.record-fields dd{margin:5px 0 0;color:#f3f0e8;overflow-wrap:anywhere}.record-list{display:grid;gap:10px;padding:14px}.record-item{display:grid;gap:8px;padding:12px;border:1px solid #34372f;border-radius:6px;background:#12140f}.record-item>span{color:#a7aa9f;overflow-wrap:anywhere}.record-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}.metric{min-height:96px;padding:14px;border:1px solid #34372f;border-radius:6px;background:#0d0f0c}.metric span{display:block;color:#a7aa9f;font-size:12px;text-transform:uppercase}.metric strong{display:block;margin-top:12px;color:#d8ff69;font-size:30px;line-height:1}.abuse-panel{overflow:hidden;border-color:#4b503d;background:linear-gradient(135deg,rgba(216,255,105,.035),transparent 34%),#141612f5}.abuse-panel__header{min-height:70px;background:#0d0f0cb8}.abuse-panel__title,.abuse-panel__meta,.abuse-metric__label,.abuse-detail__header,.abuse-panel__footer{display:flex;align-items:center}.abuse-panel__title{gap:12px}.abuse-panel__title p{margin:5px 0 0;color:#a7aa9f;font-size:12px}.abuse-panel__mark{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid #d8ff69;color:#d8ff69;background:#1d2215}.abuse-panel__meta{justify-content:flex-end;gap:10px;color:#8f9388;font-size:11px;text-transform:uppercase}.read-only-badge{padding:4px 7px;border:1px solid #59604a;color:#d8ff69;font-weight:800;letter-spacing:.05em}.abuse-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;padding:1px;border-bottom:1px solid #34372f;background:#34372f}.abuse-metric{min-width:0;min-height:112px;padding:15px;background:#11140f}.abuse-metric__label{gap:8px;color:#a7aa9f;font-size:11px;font-weight:800;line-height:1.35;text-transform:uppercase}.abuse-metric strong{display:block;margin-top:20px;color:#f3f0e8;font-size:31px;line-height:1}.abuse-metric--safe strong{color:#d8ff69}.abuse-metric--alert{box-shadow:inset 0 2px #e45b4e}.abuse-metric--alert strong{color:#ff8175}.abuse-panel__warning{margin-top:14px}.abuse-detail-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;padding:14px}.abuse-detail{min-width:0;border:1px solid #34372f;background:#0d0f0c}.abuse-detail__header{justify-content:space-between;gap:14px;min-height:64px;padding:12px 14px;border-bottom:1px solid #34372f}.abuse-detail__header h3{margin:0;font-size:15px}.abuse-detail__header .overline{margin-bottom:5px;font-size:10px}.abuse-detail__header>span{color:#8f9388;font-size:11px;text-align:right;text-transform:uppercase}.abuse-table-wrap{max-height:350px;overflow:auto}.abuse-table{width:100%;border-collapse:collapse;font-size:12px}.abuse-table th,.abuse-table td{padding:11px 13px;border-bottom:1px solid #292c26;text-align:left;white-space:nowrap}.abuse-table th{position:sticky;top:0;z-index:1;color:#8f9388;background:#131610;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.abuse-table th:not(:first-child),.abuse-table td:not(:first-child){text-align:right}.abuse-table tbody tr:last-child td{border-bottom:0}.abuse-table tbody tr:hover td{background:#d8ff6909}.abuse-table code{color:#d7d4c8;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px}.abuse-table--reservations th:nth-child(2),.abuse-table--reservations td:nth-child(2){text-align:left}.count-signal{display:inline-grid;min-width:28px;height:24px;place-items:center;padding:0 7px;border:1px solid #3b3f36;color:#b9bcb1;font-weight:800}.count-signal--warning{border-color:#8d672a;color:#ffc76b;background:#c08b361a}.count-signal--alert{border-color:#9c463d;color:#ff8175;background:#e45b4e1a}.abuse-table__empty{margin:0;padding:24px 14px;color:#8f9388;text-align:center}.abuse-panel__footer{justify-content:space-between;gap:18px;padding:0 14px 14px;color:#8f9388;font-size:11px;line-height:1.45}.abuse-panel__footer span:last-child{max-width:620px;text-align:right}.warning,.error{margin:12px 16px;padding:10px 12px;border-radius:6px}.warning{display:flex;align-items:center;gap:8px;border:1px solid #c08b36;background:#c08b361f;color:#ffd18a}.error{border:1px solid #e45b4e;background:#e45b4e1f;color:#ffd8d4;white-space:pre-wrap}.login-screen,.center-screen{display:grid;min-height:100vh;place-items:center;padding:24px}.login-panel,.center-screen{text-align:center}.login-panel{width:min(440px,100%);padding:28px;border:1px solid #34372f;border-radius:8px;background:#141612f5}.login-panel__mark{display:grid;width:56px;height:56px;margin:0 auto 18px;place-items:center;border:1px solid #d8ff69;color:#d8ff69}.login-panel p,.center-screen p{color:#c9c6ba;line-height:1.5}.loader{width:36px;height:36px;border:3px solid #34372f;border-top-color:#d8ff69;border-radius:50%;animation:spin .8s linear infinite}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#000000b8}.modal{display:grid;gap:16px;width:min(560px,100%);padding:18px;border:1px solid #e45b4e;border-radius:8px;background:#141612}.modal__header,.modal__actions{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal__header h2{margin:0}.modal__header p{margin:8px 0 0;color:#c9c6ba}.modal__actions{justify-content:flex-end}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1200px){.abuse-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.abuse-detail-grid{grid-template-columns:1fr}}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:16px}.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav__item{justify-content:center}.main{padding:18px}.topbar,.search-row{align-items:stretch;flex-direction:column}.page-grid,.metric-grid,.abuse-metric-grid,.kv-grid,.record-fields{grid-template-columns:1fr}.abuse-panel__header,.abuse-panel__footer{align-items:flex-start;flex-direction:column}.abuse-panel__meta{justify-content:flex-start}.abuse-panel__footer span:last-child{text-align:left}}
