:root{color-scheme:dark;--bg:#070b0f;--surface:#101820;--surface2:#141f29;--line:#243441;--text:#edf4f6;--muted:#8fa1ad;--green:#48d6ad;--green2:#1d8e70;--red:#ff6d7d;--amber:#e5b85c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 10%,rgba(72,214,173,.08),transparent 28%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),var(--bg);background-size:auto,64px 64px,64px 64px;color:var(--text);min-height:100vh}button,input,select,textarea{font:inherit}.panel{background:rgba(16,24,32,.94);border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.35)}[hidden]{display:none!important}.login{min-height:100vh;display:grid;grid-template-columns:minmax(300px,650px) minmax(360px,460px);place-content:center;gap:70px;padding:40px}.login-visual{height:560px;position:relative;display:grid;place-items:center}.login-visual img{width:112px;z-index:2;filter:drop-shadow(0 0 28px rgba(72,214,173,.3))}.orbit{position:absolute;border:1px solid rgba(72,214,173,.16);border-radius:50%;animation:spin 18s linear infinite}.orbit:after{content:"";position:absolute;width:9px;height:9px;background:var(--green);border-radius:50%;top:13%;left:13%;box-shadow:0 0 18px var(--green)}.o1{width:310px;height:310px}.o2{width:500px;height:500px;animation-direction:reverse;animation-duration:28s}@keyframes spin{to{transform:rotate(360deg)}}.login-card{padding:44px;border-radius:28px;align-self:center}.brand{display:flex;align-items:center;gap:12px}.brand img{width:43px;height:43px}.brand div{display:grid}.brand strong{font-size:16px}.brand span{font-size:12px;color:var(--muted)}.eyebrow{color:var(--green);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.eyebrow i,.aside-foot i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green);margin-right:8px}.login h1{font-size:48px;line-height:1.03;margin:28px 0 16px;letter-spacing:-.045em}.login h1 em{color:var(--green);font-style:normal}.login-card>p:not(.eyebrow,.message){color:var(--muted);line-height:1.7}.button{border:0;border-radius:13px;padding:14px 20px;font-weight:800;cursor:pointer}.primary{background:var(--green);color:#04110d}.primary:hover{background:#5de5bd}.login-card .button{width:100%;margin-top:22px}.message{min-height:20px;color:var(--red);font-size:13px}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{position:fixed;inset:0 auto 0 0;width:250px;border-right:1px solid var(--line);padding:26px 20px;background:rgba(8,13,18,.97);display:flex;flex-direction:column}aside nav{margin-top:48px;display:grid;gap:8px}aside nav>span{font-size:10px;color:#6e818e;letter-spacing:.15em;margin:0 12px 8px}aside nav button{border:0;background:transparent;color:var(--muted);text-align:left;padding:13px 14px;border-radius:12px;font-weight:700}aside nav button.active{background:rgba(72,214,173,.1);color:var(--green);border:1px solid rgba(72,214,173,.18)}aside nav small{float:right;color:#60717c}.aside-foot{margin-top:auto;color:var(--muted);font-size:12px;padding:14px}.app main{grid-column:2;padding:0 36px 48px;min-width:0}.app header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}h2,h3,p{margin-top:0}.app header h2{margin:4px 0 0;font-size:25px}.account{display:flex;gap:18px;align-items:center;color:var(--muted);font-size:13px}.account button{border:1px solid var(--line);background:transparent;color:var(--text);padding:9px 14px;border-radius:10px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}.metrics article{background:linear-gradient(145deg,rgba(20,31,41,.95),rgba(13,21,28,.95));border:1px solid var(--line);border-radius:16px;padding:20px}.metrics span{display:block;color:var(--muted);font-size:13px}.metrics strong{display:block;color:var(--green);font-size:29px;margin-top:9px}.content-panel{border-radius:20px;overflow:hidden}.toolbar{padding:23px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.toolbar h3{margin-bottom:5px}.toolbar p{margin:0;color:var(--muted);font-size:13px}.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#0b1218;border-radius:11px;padding:0 13px;min-width:310px}.search input{width:100%;padding:11px 0;border:0;outline:0;background:transparent;color:var(--text)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{text-align:left;padding:16px 20px;border-bottom:1px solid rgba(36,52,65,.7);font-size:13px}th{color:#758894;font-size:11px;text-transform:uppercase;letter-spacing:.08em}td strong{display:block;font-size:14px}td small{display:block;color:var(--muted);margin-top:4px}.badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-weight:800;font-size:11px}.active-badge{color:var(--green);background:rgba(72,214,173,.11)}.inactive-badge{color:#9aa9b2;background:rgba(143,161,173,.1)}.manage{border:1px solid var(--line);background:transparent;color:var(--text);padding:8px 12px;border-radius:9px;cursor:pointer}.empty{padding:60px;text-align:center;color:var(--muted)}.banner{margin-top:20px;padding:13px 16px;border:1px solid rgba(255,109,125,.35);background:rgba(255,109,125,.08);color:#ffc4ca;border-radius:12px}.modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px}.scrim{position:absolute;inset:0;background:rgba(0,0,0,.72);border:0}.dialog{position:relative;width:min(520px,100%);border-radius:22px;padding:30px;z-index:1}.close{position:absolute;right:18px;top:15px;border:0;background:transparent;color:var(--muted);font-size:28px;cursor:pointer}.person{display:grid;background:#0b1218;border:1px solid var(--line);padding:14px;border-radius:12px;margin:18px 0}.person span{color:var(--muted);font-size:13px;margin-top:3px}.dialog form{display:grid;gap:15px}.dialog label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700}.dialog input,.dialog select,.dialog textarea{background:#0b1218;color:var(--text);border:1px solid var(--line);border-radius:11px;padding:12px;outline:0}.dialog textarea{min-height:82px;resize:vertical}.quick{display:flex;gap:8px}.quick button{flex:1;border:1px solid var(--line);background:transparent;color:var(--green);padding:9px;border-radius:9px;cursor:pointer}.dialog-actions{display:flex;justify-content:space-between;gap:12px;margin-top:8px}.danger{background:rgba(255,109,125,.12);color:var(--red);border:1px solid rgba(255,109,125,.3)}@media(max-width:900px){.login{grid-template-columns:1fr}.login-visual{display:none}.app{display:block}aside{display:none}.app main{padding:0 16px 32px}.metrics{grid-template-columns:repeat(2,1fr)}.toolbar{align-items:stretch;gap:16px;flex-direction:column}.search{min-width:0}.account span{display:none}}@media(max-width:520px){.login{padding:20px}.login-card{padding:28px}.login h1{font-size:38px}.metrics{grid-template-columns:1fr 1fr}.metrics article{padding:16px}.dialog-actions{flex-direction:column-reverse}.dialog-actions .button{width:100%}}

.toolbar-controls{display:flex;align-items:flex-end;gap:10px}.refresh-button{height:43px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:1px solid rgba(72,214,173,.28);border-radius:11px;background:rgba(72,214,173,.08);color:var(--green);font-weight:800;white-space:nowrap;cursor:pointer}.refresh-button>span:first-child{font-size:19px;line-height:1}.refresh-button:hover,.refresh-button:focus-visible{border-color:var(--green);background:rgba(72,214,173,.14);outline:0;box-shadow:0 0 0 3px rgba(72,214,173,.1)}.refresh-button:disabled{cursor:wait;opacity:.65}.refresh-button[aria-busy="true"]>span:first-child{animation:refresh-spin .8s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}.status-filter{display:grid;gap:5px}.status-filter>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.status-filter select{height:43px;min-width:132px;border:1px solid var(--line);background:#0b1218;color:var(--text);border-radius:11px;padding:0 34px 0 12px;outline:0}.status-filter select:focus-visible,.search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(72,214,173,.1)}.sortable-heading{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.sort-actions{display:inline-flex;gap:3px}.sort-actions button{width:23px;height:23px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:6px;background:#0b1218;color:#758894;cursor:pointer;font-size:13px;line-height:1}.sort-actions button:hover,.sort-actions button:focus-visible{border-color:var(--green);color:var(--green)}.sort-actions button.active{border-color:rgba(72,214,173,.5);background:rgba(72,214,173,.12);color:var(--green);box-shadow:0 0 10px rgba(72,214,173,.08)}@media(max-width:1100px){.toolbar{align-items:stretch;gap:16px;flex-direction:column}.toolbar-controls{width:100%}.search{flex:1}}@media(max-width:620px){.toolbar-controls{align-items:stretch;flex-direction:column}.refresh-button,.status-filter select{width:100%}.search{min-width:0}}

.metrics{grid-template-columns:repeat(5,minmax(0,1fr))}aside nav button:not(:disabled){cursor:pointer}.trial-badge{color:var(--amber);background:rgba(229,184,92,.12)}.subscription-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px}.subscription-summary>div{display:grid;gap:5px;padding:13px;background:#0b1218;border:1px solid var(--line);border-radius:11px}.subscription-summary span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em}.subscription-summary strong{font-size:14px}.subscription-summary p{grid-column:1/-1;margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.5}@media(max-width:1200px){.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.subscription-summary{grid-template-columns:1fr}}

.date-filter{display:grid;gap:5px}.date-filter>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.date-filter input{height:43px;width:142px;border:1px solid var(--line);background:#0b1218;color:var(--text);color-scheme:dark;border-radius:11px;padding:0 11px;outline:0}.date-filter input:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px rgba(72,214,173,.1)}.audit-granted{color:var(--green);background:rgba(72,214,173,.11)}.audit-updated{color:var(--amber);background:rgba(229,184,92,.12)}.audit-revoked{color:var(--red);background:rgba(255,109,125,.12)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;color:var(--muted);font-size:12px}.pagination>div{display:flex;gap:8px}.pagination button{border:1px solid var(--line);background:#0b1218;color:var(--text);padding:8px 12px;border-radius:9px;cursor:pointer}.pagination button:disabled{opacity:.4;cursor:not-allowed}.audit-dialog{width:min(760px,100%)}.audit-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.audit-meta>div{display:grid;gap:5px;padding:13px;background:#0b1218;border:1px solid var(--line);border-radius:11px}.audit-meta span,.audit-comparison>section>p{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.audit-meta strong{font-size:13px;overflow-wrap:anywhere}.audit-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.audit-comparison>section{padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(11,18,24,.72)}.audit-comparison>section>p{margin-bottom:11px}.audit-snapshot dl{display:grid;gap:9px;margin:0}.audit-snapshot dl>div{display:grid;grid-template-columns:90px 1fr;gap:9px}.audit-snapshot dt{color:var(--muted);font-size:11px}.audit-snapshot dd{margin:0;color:var(--text);font-size:12px;overflow-wrap:anywhere}.snapshot-empty,.audit-readonly{color:var(--muted);font-size:12px;line-height:1.5}.audit-readonly{margin:16px 0 0}.snapshot-empty{margin:0}.toolbar:has(.date-filter:not([hidden])) .toolbar-controls{flex-wrap:wrap;justify-content:flex-end}@media(max-width:760px){.audit-meta,.audit-comparison{grid-template-columns:1fr}.date-filter input{width:100%}.audit-snapshot dl>div{grid-template-columns:78px 1fr}}@media(max-width:620px){.pagination{align-items:stretch;flex-direction:column}.pagination>div,.pagination button{width:100%}.pagination button{flex:1}}
