:root{color:#e9eef5;background:#0b0f14;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;background:#3a7afe;color:#fff;padding:.65rem 1rem;cursor:pointer;font-weight:650}button:hover:not(:disabled){filter:brightness(1.1)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #76a5ff;outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:#202936}button.danger{background:#b73743}a{color:#75a7ff;text-decoration:none}h1{font-size:clamp(1.6rem,4vw,2.2rem);margin:0}h2{font-size:1.1rem;margin:0 0 1rem}h3{color:#9ba9ba;font-size:.85rem;margin:1.25rem 0 .5rem;text-transform:uppercase}label{display:grid;gap:.4rem;color:#acb7c7;font-size:.85rem}input,select,textarea{width:100%;border:1px solid #344151;border-radius:8px;color:#edf2f7;background:#101720;padding:.68rem .75rem}textarea{min-height:90px;resize:vertical}form{display:grid;gap:.9rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{background:#111720;border-right:1px solid #252d39;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.brand{font-size:1.1rem;font-weight:800;letter-spacing:.02em}.sidebar nav{display:grid;gap:.35rem}.sidebar nav a{color:#aab7c8;padding:.7rem .8rem;border-radius:8px}.sidebar nav a.active{color:#fff;background:#26354a}.admin-card{border-top:1px solid #293240;display:grid;gap:.2rem;margin-top:auto;padding-top:1rem}.admin-card small,td small{display:block;color:#7f8b9b;margin-top:.2rem}.content{min-width:0;padding:clamp(1rem,3vw,2.5rem)}.page-header{min-height:52px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.detail-heading p{color:#7f8b9b;margin:.3rem 0 0}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem}.metric,.panel{background:#121923;border:1px solid #293340;border-radius:12px;padding:1.2rem}.metric{display:grid;gap:.7rem}.metric span{color:#8f9cad;font-size:.85rem}.metric strong{font-size:1.8rem}.filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;margin-bottom:1rem}.table-scroll{overflow-x:auto;border:1px solid #293340;border-radius:10px}table{width:100%;border-collapse:collapse;font-size:.88rem}th{color:#8593a5;font-size:.75rem;text-align:left;text-transform:uppercase}th,td{border-bottom:1px solid #252e3a;padding:.8rem .9rem;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#151e29}.status{border-radius:999px;display:inline-block;font-size:.72rem;padding:.25rem .55rem;background:#3b4655}.status.active{background:#123f33;color:#7ee3ba}.status.deactivated,.status.disabled{background:#54242b;color:#ff9da8}.pager{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.notice{text-align:center;color:#9ba8b8;padding:2rem}.notice.error,.field-error{color:#ff939d}.center{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-page{background:radial-gradient(circle at top,#192a42,#0b0f14 50%)}.auth-card{width:min(420px,100%);background:#111821;border:1px solid #2b3745;border-radius:14px;box-shadow:0 24px 70px #0008;display:grid;gap:1.3rem;padding:2rem}.auth-card h1{font-size:1.45rem}.secret{color:#fff;font-family:ui-monospace,monospace;overflow-wrap:anywhere;background:#080c11;padding:.75rem;border-radius:7px}.recovery-codes{columns:2;padding-left:1.2rem}.recovery-codes li{padding:.3rem}.tabs{display:flex;gap:.35rem;overflow-x:auto;margin-bottom:1rem;padding-bottom:.2rem}.tabs button{white-space:nowrap;background:transparent;color:#9aa8ba}.tabs button.active{background:#26354a;color:#fff}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.section-stack{display:grid;gap:1rem}.facts{margin:0;display:grid;gap:.75rem}.facts div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #28313d;padding-bottom:.65rem}.facts dt{color:#8c99aa}.facts dd{margin:0;text-align:right}.action-stack,.row-actions{display:flex;flex-wrap:wrap;gap:.5rem}.item-list{list-style:none;padding:0;margin:0;display:grid;gap:.4rem}.item-list li{background:#19222e;border-radius:7px;display:flex;justify-content:space-between;padding:.55rem .7rem}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-heading h2{margin:0}.positive{color:#6ee0ab}.negative{color:#ff8b96}.note-form{max-width:620px;margin-bottom:1.5rem}.timeline{border-left:2px solid #2d3a49;list-style:none;margin:0;padding-left:1.5rem}.timeline li{margin-bottom:1rem;position:relative}.timeline li:before{background:#5c8fe9;border-radius:50%;content:"";width:8px;height:8px;position:absolute;left:calc(-1.5rem - 5px);top:.4rem}.timeline p{margin:0 0 .3rem;white-space:pre-wrap}.timeline small{color:#8491a2}.admin-create{max-width:650px;margin-bottom:1rem}fieldset{border:1px solid #344151;border-radius:8px;display:flex;flex-wrap:wrap;gap:.7rem}.check{display:flex;align-items:center}.check input{width:auto}.dialog-overlay{position:fixed;inset:0;background:#000b;z-index:20}.dialog-content{position:fixed;z-index:21;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;background:#151d27;border:1px solid #3a4758;border-radius:12px;box-shadow:0 25px 80px #000;padding:1.4rem}.confirmation{background:#0d131b;border-radius:8px;display:grid;grid-template-columns:120px 1fr;gap:.5rem;margin:1rem 0;padding:.8rem}.confirmation span{color:#8491a2}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}@media(max-width:720px){.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #252d39;border-right:0;display:grid;grid-template-columns:1fr auto;padding:.8rem 1rem;position:sticky;top:0;z-index:10}.sidebar nav{grid-column:1 / -1;display:flex;overflow-x:auto}.admin-card{display:none}.sidebar>button{grid-column:2;grid-row:1}.filter-bar{grid-template-columns:1fr}.content{padding:1rem}.detail-grid{grid-template-columns:1fr}}
