html,body,#root{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;background:#f6f8fc;color:#14213d}*{box-sizing:border-box}button,input,textarea{font:inherit}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#10213d,#0c1730);color:#edf4ff;padding:24px 18px;display:flex;flex-direction:column;gap:24px}.brand{font-size:26px;font-weight:800}.brand-sub{color:#9db8e7}.nav{display:flex;flex-direction:column;gap:8px}.nav-item{border:0;background:transparent;color:#edf4ff;text-align:left;padding:12px 14px;border-radius:14px;cursor:pointer}.nav-item.active,.nav-item:hover{background:#5e99ff2e}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:12px}.admin-name{color:#9db8e7;font-size:14px}.content{padding:28px;display:flex;flex-direction:column;gap:20px}.page-header h1{margin:0;font-size:34px}.page-header p{margin:6px 0 0;color:#60708d}.grid{display:grid;gap:16px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.panel{background:#ffffffeb;border:1px solid #dbe5f4;border-radius:20px;padding:18px;box-shadow:0 14px 40px #234f9814}.panel h3{margin-top:0}.stat-value{font-size:32px;font-weight:800;margin:8px 0}.toolbar{margin-bottom:14px}.toolbar input,.login-card input,textarea{width:100%;padding:12px 14px;border-radius:14px;border:1px solid #d6e1f1;background:#fff}textarea{min-height:120px;margin-top:8px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 10px;border-bottom:1px solid #e7eef8;text-align:left;vertical-align:top}.table tbody tr{cursor:pointer}.table tbody tr:hover{background:#f6f9ff}.simple-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.simple-list li,.kv{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e7eef8}.mini-chart{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));align-items:end;gap:6px;min-height:220px}.bar-wrap{display:flex;align-items:end}.bar{width:100%;border-radius:999px 999px 0 0;background:linear-gradient(180deg,#7bb0ff,#4f8ff0)}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,rgba(114,166,255,.34),transparent 34%),linear-gradient(180deg,#f8fbff,#eef4fd 56%,#f8fbff)}.login-card{width:min(100%,480px);background:#fffffff0;padding:30px;border-radius:28px;border:1px solid #dbe5f4;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 60px #254d931f}.login-brand{display:flex;align-items:center;justify-content:space-between;gap:16px}.login-wordmark{font-size:28px;font-weight:800;color:#14213d}.login-wordmark span{color:#4f8ff0}.login-badge{border-radius:999px;background:#eaf2ff;color:#356dc4;padding:8px 12px;font-size:13px;font-weight:700}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:0;font-weight:600;color:#1f2f4f}.password-field{position:relative}.password-field input{padding-right:58px}.password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);border:0;background:transparent;color:#8ca0c2;cursor:pointer;padding:6px;font-size:18px;line-height:1}.hint-box{background:#eff6ff;color:#24467d;padding:12px 14px;border-radius:14px;border:1px solid #cfe0ff}.primary-button,.ghost-button,.pager button{border:0;border-radius:999px;padding:12px 16px;cursor:pointer}.primary-button{background:linear-gradient(135deg,#6fa7ff,#4f8ff0);color:#fff}.ghost-button,.pager button{background:#edf4ff;color:#294777}.error-box{background:#fff1ed;color:#9a3412;padding:12px 14px;border-radius:14px;border:1px solid #fed7aa}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#110a0673;display:flex;justify-content:flex-end}.drawer{width:min(520px,100%);background:#fff;height:100%;padding:24px;overflow:auto}.pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:14px}label{display:block;margin-bottom:14px;font-weight:600}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10}.nav{flex-direction:row;overflow:auto}}
