:root{font-family:"DM Sans",system-ui,sans-serif;color:#e8edf7;background:#090d16;font-synthesis:none;--panel:#111827;--line:#202b3d;--muted:#8c9ab0;--accent:#8b5cf6}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 75% -15%,#20213d 0,transparent 42%),#090d16}.shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:26px 16px 18px;border-right:1px solid var(--line);background:#0c111d;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:700;padding:0 10px 30px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.brand-mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#a78bfa,#6d28d9);font-size:19px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#9aa8bd;padding:11px 12px;border-radius:9px;display:flex;align-items:center;gap:11px;text-align:left;font:inherit;font-size:12px;cursor:pointer}.nav-item svg{width:16px}.nav-item:hover,.nav-item.active{background:#1b2033;color:#fff}.sidebar-bottom{margin-top:auto;padding:10px}.sidebar-bottom a{color:#9aa8bd;text-decoration:none;font-size:12px}.user-mini{border-top:1px solid var(--line);padding-top:15px;margin-top:15px;font-size:11px}.main{min-width:0;padding:0 38px 55px}.topbar{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:28px}.topbar h1{font-size:22px;margin:0}.eyebrow{color:#a78bfa;font-size:10px;letter-spacing:1.5px;font-weight:700;margin:0 0 6px}.top-actions{display:flex;gap:12px;align-items:center}.role-pill,.tag{border:1px solid #51427c;background:#241d3b;color:#c4b5fd;border-radius:30px;padding:6px 10px;font-size:10px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 13px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:11px;font-weight:700;cursor:pointer;text-decoration:none}.button svg{width:14px}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.subtle{background:#151d2b;color:#d3dceb}.danger{background:#351d27;color:#fecaca;border-color:#6b293c}.page{display:none}.page.active{display:block}.welcome{display:flex;align-items:center;justify-content:space-between;padding:25px 27px;border:1px solid #332b52;border-radius:14px;background:linear-gradient(110deg,#1b1930,#121a29 75%);margin-bottom:18px}.welcome h2{font-size:23px;margin:0 0 7px}.welcome p:not(.eyebrow){font-size:12px;color:var(--muted);margin:0}.live{font-size:11px;color:#a7f3d0}.live b{display:inline-block;width:7px;height:7px;border-radius:50%;background:#34d399;margin-right:6px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.stat,.panel{background:rgba(17,24,39,.9);border:1px solid var(--line);border-radius:12px}.stat{padding:17px}.stat span,.stat small{display:block;color:var(--muted);font-size:10px}.stat strong{display:block;font-size:24px;margin:11px 0 4px}.panel{padding:21px;margin-bottom:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px}.panel h3,.panel-head h3{font-size:15px;margin:0 0 5px}.panel-head p,.panel>p{font-size:11px;color:var(--muted);margin:0}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.quick-grid button{background:#151e2e;border:1px solid var(--line);border-radius:10px;padding:15px;text-align:left;color:#e7edf8;display:grid;gap:8px;cursor:pointer}.quick-grid svg{color:#b9a5ff;width:19px}.quick-grid span{font-size:12px;font-weight:700}.quick-grid small{font-size:10px;color:var(--muted)}.login-panel{max-width:430px;margin:9vh auto;padding:34px;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:15px}.login-icon{width:52px;height:52px;border-radius:14px;background:#282044;color:#c4b5fd;display:grid;place-items:center;margin:auto}.login-panel h2{font-size:20px}.login-panel p,.login-panel small{color:var(--muted);font-size:12px;line-height:1.6}.login-panel .button{margin:15px auto;display:inline-flex}.login-panel small{display:block}.role-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 25px}.role-card{padding:17px;border-radius:11px;background:#151e2e;border:1px solid var(--line)}.role-card svg{color:#c4b5fd;width:20px}.role-card h4{margin:10px 0 7px}.role-card p{font-size:11px;line-height:1.6;color:var(--muted);min-height:85px}.role-card strong{font-size:10px;color:#c4b5fd}.role-card.owner{border-color:#8b5cf6}.permission-group{margin:20px 0}.permission-group h3{font-size:14px}.permission-group h4{font-size:11px;color:#b9a5ff;margin:16px 0 5px}.permission-row{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;border-bottom:1px solid var(--line);font-size:11px}.permission-row input,.check input{accent-color:#8b5cf6}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:11px}.data-table th,.data-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table th{color:var(--muted);font-weight:600;white-space:nowrap}.data-table td{color:#d9e2ef}.member-name{display:flex;align-items:center;gap:9px}.avatar{width:28px;height:28px;border-radius:50%;background:#322956;display:grid;place-items:center;color:#d6ccff}.thumb{width:38px;height:38px;object-fit:contain;background:#0a101b;border-radius:6px}.small-select,.add-form input,.add-form select,.editor input,.editor textarea{background:#0b1220;border:1px solid var(--line);border-radius:7px;color:#e5e7eb;padding:9px;font:inherit;font-size:11px;min-width:0;width:100%}.editor{background:#0d1523;border:1px solid var(--line);padding:16px;border-radius:10px;margin-bottom:18px}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.editor label,.add-form label{display:grid;gap:6px;color:var(--muted);font-size:10px}.editor textarea{min-height:78px;resize:vertical}.editor .wide{grid-column:1/-1}.editor .check{display:flex;align-items:center;gap:8px}.editor .check input{width:auto}.form-actions{display:flex;gap:8px;margin-top:14px}.add-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap;background:#0d1523;border:1px solid var(--line);padding:14px;border-radius:9px;margin-bottom:18px}.add-form label{flex:1;min-width:130px}.empty-state{text-align:center;padding:45px 18px;color:var(--muted)}.empty-state svg{width:28px;color:#a78bfa}.empty-state h3{color:#e8edf7;font-size:14px}.empty-state p{font-size:11px}.notice{padding:13px;border:1px solid #54452b;background:#251f15;color:#e8c98c;border-radius:9px;font-size:11px;line-height:1.6;margin-top:18px}.muted{color:var(--muted);font-size:11px}#toast{position:fixed;bottom:22px;right:24px;padding:12px 16px;border-radius:8px;background:#18372f;border:1px solid #27634f;color:#a7f3d0;font-size:12px;opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:none}[hidden]{display:none!important}@media(max-width:950px){.shell{grid-template-columns:205px 1fr}.main{padding:0 20px 40px}.stat-grid{grid-template-columns:repeat(2,1fr)}.role-cards{grid-template-columns:1fr}.role-card p{min-height:0}}@media(max-width:650px){.shell{display:block}.sidebar{position:relative;height:auto;padding:13px}.brand{padding:0 5px 12px}.sidebar nav{display:flex;overflow:auto}.nav-item{white-space:nowrap;padding:9px}.sidebar-bottom{display:none}.main{padding:0 12px 28px}.topbar{height:72px}.topbar h1{font-size:18px}.welcome{display:block}.live{display:block;margin-top:13px}.stat-grid{gap:8px}.stat{padding:12px}.stat strong{font-size:20px}.quick-grid,.editor-grid{grid-template-columns:1fr}.panel{padding:14px}.panel-head{align-items:flex-start;flex-direction:column}.add-form{display:grid}.add-form label{min-width:0}.role-cards{grid-template-columns:1fr}.editor .wide{grid-column:auto}}
.analytics-bars{display:grid;gap:9px;margin:24px 0}.analytics-day{display:grid;grid-template-columns:100px minmax(80px,1fr) 90px 100px;gap:12px;align-items:center;font-size:11px;color:#aab6c9}.analytics-day strong{color:#e8edf7;text-align:right}.analytics-track{height:9px;border-radius:20px;background:#202b3d;overflow:hidden}.analytics-track i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,#8b5cf6,#60a5fa)}@media(max-width:700px){.analytics-day{grid-template-columns:76px minmax(40px,1fr) 76px}.analytics-day small{display:none}}

/* Accessibility: visible keyboard focus and respect reduced-motion preferences. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #c4b5fd;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
