@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@500;600;700;800&display=swap";
:root{--bg:#f6f7fb;--ink:#151927;--muted:#777f91;--line:#e9ebf1;--purple:#6558e8;--navy:#171b2d}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}.center{min-height:100vh;color:var(--muted);text-align:center;place-content:center;gap:16px;display:grid}.loader{border:3px solid #e4e4f4;border-top-color:var(--purple);border-radius:50%;width:28px;height:28px;margin:auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-shell{background:radial-gradient(circle at 15% 15%,#eceaff,#0000 35%),#f7f8fc;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(420px,100%);padding:42px;box-shadow:0 20px 70px #22234a0d}.brand-mark{background:var(--purple);color:#fff;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:28px;font:800 26px Manrope;display:grid}.eyebrow{letter-spacing:1.8px;color:var(--purple);margin:0 0 10px;font-size:10px;font-weight:800}.login-card h1,.heading-row h1{letter-spacing:-1px;margin:0 0 8px;font:800 30px Manrope}.muted{color:var(--muted);margin:0;line-height:1.6}.login-card form{gap:18px;margin-top:30px;display:grid}label{gap:8px;font-size:12px;font-weight:600;display:grid}input,select{width:100%;height:43px;color:var(--ink);background:#fff;border:1px solid #e1e4ed;border-radius:9px;outline:none;padding:0 12px}input:focus,select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6558e817}.primary{background:var(--purple);color:#fff;border:0;border-radius:9px;padding:12px 18px;font-weight:700;box-shadow:0 5px 12px #6558e82b}.primary:hover{background:#5548d7}.primary:disabled{opacity:.6;cursor:wait}.full{height:46px;margin-top:4px}.login-foot{border-top:1px solid var(--line);text-align:center;color:#9298a7;margin:26px 0 0;padding-top:18px;font-size:11px}.app-shell{min-height:100vh}.sidebar{background:var(--navy);color:#fff;flex-direction:column;width:236px;padding:26px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:1px;align-items:center;gap:11px;padding:0 8px 48px;font:800 18px Manrope;display:flex}.brand-mark.small{border-radius:10px;width:34px;height:34px;margin:0;font-size:18px}.side-label{letter-spacing:1.5px;color:#82879c;padding:0 12px 12px;font-size:10px}.nav-item{color:#b8bdd0;border-radius:9px;align-items:center;gap:12px;margin-bottom:5px;padding:12px;display:flex}.nav-item.selected{color:#fff;background:#ffffff16}.side-bottom{border-top:1px solid #ffffff20;align-items:center;gap:10px;margin-top:auto;padding:20px 3px 0;display:flex}.avatar{background:#766bed;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.admin-info{gap:3px;min-width:0;display:grid}.admin-info b{text-overflow:ellipsis;font-size:11px;overflow:hidden}.admin-info small{color:#9ca3b7;font-size:10px}.logout{color:#c6c9d5;background:0 0;border:0;margin-left:auto;font-size:20px}.workspace{min-height:100vh;margin-left:236px}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:66px;padding:0 38px;font-weight:700;display:flex}.top-user{color:#249d76;font-size:11px}.top-user span{color:#6e7788;margin-left:6px}.content{max-width:1500px;margin:auto;padding:38px}.heading-row,.section-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.heading-row{margin-bottom:28px}.heading-row h1{font-size:28px}.stats{grid-template-columns:repeat(3,1fr);gap:17px;margin:28px 0 38px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:13px;gap:9px;padding:20px 22px;display:grid}.stat span{color:var(--muted);font-size:12px;font-weight:600}.stat b{font:800 28px Manrope}.stat small{color:#9aa0ae;font-size:11px}.section-head{margin-bottom:18px}.section-head h2,.modal h2{margin:0 0 5px;font:800 18px Manrope}.search{width:245px}.filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.filter{border:1px solid var(--line);color:#697184;background:#fff;border-radius:8px;padding:8px 13px;font-size:11px;font-weight:700}.filter.active{color:var(--purple);background:#eeecff;border-color:#d9d4ff}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:720px}th{letter-spacing:1px;color:#969cad;background:#fafbfc;padding:15px 18px;font-size:9px}td{border-top:1px solid #f0f1f5;padding:16px 18px;font-size:12px}td b{display:block}td small{color:#9298a7;margin-top:4px;display:block}.code{color:#5147c9;font-weight:800}.status{border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.status.active{color:#17875f;background:#e8f8f1}.status.inactive{color:#a66b15;background:#fff3df}.status.deleted{color:#bd4754;background:#ffe9eb}.action{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 9px;font-size:10px;font-weight:700}.empty{text-align:center;color:#939aaa;padding:42px}.table-note{color:#9aa0ae;margin-top:12px;font-size:10px}.alert,.success{border-radius:9px;margin-bottom:18px;padding:12px 15px;font-size:12px}.alert{color:#b83f4a;background:#fff0f0;border:1px solid #f5d6d8}.success{color:#197a58;background:#eaf8f1;border:1px solid #c9ebda;position:relative}.alert button,.success button{float:right;background:0 0;border:0;font-size:17px}.modal-backdrop{z-index:5;background:#11152680;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:17px;width:min(850px,100%);max-height:92vh;padding:26px;overflow:auto;box-shadow:0 20px 80px #0003}.modal-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.close{background:#f1f2f6;border:0;border-radius:8px;width:32px;height:32px;font-size:21px}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.form-grid small{color:#939aaa;font-size:10px;font-weight:400}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;display:flex}.secondary{border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px 17px;font-weight:700}@media (max-width:800px){.sidebar{width:66px;padding:20px 10px}.brand{padding:0 5px 40px}.brand>span:last-child,.side-label,.nav-item span,.admin-info,.logout{display:none}.nav-item,.side-bottom{justify-content:center}.workspace{margin-left:66px}.content{padding:24px 16px}.topbar{padding:0 18px}.stats{grid-template-columns:1fr}.heading-row,.section-head{flex-direction:column;align-items:flex-start}.search{width:100%}.form-grid{grid-template-columns:1fr}.login-card{padding:28px}}
