:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#102033;background:radial-gradient(circle at top left,rgba(28,75,185,.16),transparent 30%),linear-gradient(180deg,#edf3f8,#f5f7fb)}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.admin-shell{display:grid;grid-template-columns:300px 1fr;min-height:100vh}.sidebar{padding:1.5rem;background:linear-gradient(180deg,#102033,#16304d);color:#eef5ff}.sidebar-brand p,.eyebrow,.topbar-label{margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:#7f9bc1}.sidebar-brand h1,.topbar h2,.login-card h2{margin:0}.sidebar-nav{margin-top:1.5rem;display:grid;gap:1rem}.sidebar-section{display:grid;gap:.4rem}.sidebar-section-title{font-size:.82rem;color:#9eb5d3}.sidebar-link{display:block;padding:.75rem .9rem;border-radius:12px;color:#d9e7f9}.sidebar-link.active,.sidebar-link:hover{background:#ffffff1a}.shell-main{padding:1.5rem}.topbar,.panel-header,.toolbar,.pagination,.form-actions,.topbar-actions,.user-chip,.top-groups,.content-grid,.card-grid{display:flex;gap:1rem}.topbar,.panel-header,.pagination,.form-actions{justify-content:space-between;align-items:center}.topbar-actions,.user-chip,.top-groups{align-items:center;flex-wrap:wrap}.user-chip{padding:.5rem .85rem;border-radius:999px;background:#1020330f}.user-chip button,.table-actions button{border:0;background:transparent;color:#0f4db8;cursor:pointer}.group-pill,.panel,.login-card,.login-hero{border-radius:22px;background:#ffffffe6;box-shadow:0 18px 60px #10203314}.group-pill{padding:.8rem 1rem;flex-direction:column}.page-shell,.content-grid{margin-top:1.25rem}.content-grid{flex-direction:column}.panel{padding:1.4rem}.hero-panel{padding:2rem}.card-grid{flex-wrap:wrap}.model-card{min-width:220px;padding:1rem;border-radius:16px;background:linear-gradient(180deg,#f6fbff,#edf5ff);border:1px solid rgba(70,106,150,.12);display:grid;gap:.3rem}.toolbar{margin:1rem 0;flex-wrap:wrap}.toolbar input,.toolbar select,.form-grid input,.form-grid select,.form-grid textarea,.login-card input{width:100%;border:1px solid rgba(70,106,150,.18);border-radius:14px;padding:.85rem 1rem;background:#fff}.toolbar>*{flex:1 1 220px}.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:.9rem;border-bottom:1px solid rgba(70,106,150,.12);vertical-align:top}.table-actions{display:flex;gap:.75rem;flex-wrap:wrap}.primary-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.1rem;border-radius:14px;border:0;cursor:pointer}.primary-button{background:#0f4db8;color:#fff}.ghost-button{background:#1020330f;color:#102033}.form-grid{display:grid;gap:1rem}.checkbox-field{display:flex;gap:.8rem;align-items:center}.json-panel{overflow:auto;padding:1rem;border-radius:16px;background:#0c1c2c;color:#dff1ff}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem;padding:1.5rem}.login-hero,.login-card{padding:2rem}.login-hero{min-height:calc(100vh - 3rem);background-position:center;background-size:cover;display:flex;align-items:flex-end;color:#fff}.login-hero-inner{display:grid;gap:.75rem}.login-hero .eyebrow{color:#ffffffb8}.login-hero h1{max-width:12ch;font-size:clamp(3.2rem,7vw,6rem);line-height:.9;margin:0;letter-spacing:.04em}.login-card{display:grid;gap:1rem;align-content:center}.login-card label,.form-grid label{display:grid;gap:.4rem}.form-error,.screen-state,.empty-state{padding:.9rem 1rem;border-radius:14px}.form-error{background:#ffe8e8;color:#b3261e}.screen-state,.empty-state{background:#f2f6fb;color:#48617d}.toast-stack{position:fixed;right:1rem;bottom:1rem;display:grid;gap:.75rem;z-index:1000}.toast{min-width:240px;padding:.9rem 1rem;border-radius:14px;color:#fff;box-shadow:0 18px 40px #1020332e}.toast-success{background:#177245}.toast-error{background:#b3261e}.toast-neutral{background:#16304d}.subtle-panel{background:#ffffffd1}@media(max-width:980px){.admin-shell,.login-shell{grid-template-columns:1fr}.sidebar{position:static}}
