*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:#f4f7fb;color:#132033}aside{position:fixed;left:0;top:0;bottom:0;width:270px;background:linear-gradient(180deg,#0f172a,#111827);color:#fff;padding:22px;overflow:auto}aside h2{margin:0 0 18px}aside a{display:block;color:#d1d5db;text-decoration:none;padding:11px 12px;border-radius:12px;margin:4px 0}aside a:hover{background:#263244;color:#fff}.userbox{background:#1e293b;border-radius:14px;padding:12px;margin-bottom:14px}.userbox small{display:block;color:#cbd5e1;text-transform:capitalize}main{margin-left:270px;padding:28px}header{background:#fff;border-radius:22px;padding:18px 24px;margin-bottom:20px;box-shadow:0 10px 30px #0001}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.card,table,form{background:#fff;border-radius:20px;padding:20px;box-shadow:0 10px 30px #0001}.card span{color:#64748b;font-weight:700}.card h2{margin:10px 0 0;font-size:30px}table{width:100%;border-collapse:collapse;margin-top:16px}th,td{text-align:left;border-bottom:1px solid #edf0f5;padding:12px;vertical-align:top}th{background:#f8fafc}.btn,button{background:#2563eb;color:#fff;border:0;border-radius:12px;padding:10px 16px;text-decoration:none;display:inline-block;cursor:pointer;font-weight:600}input,select,textarea{width:100%;padding:12px;border:1px solid #dbe1ea;border-radius:12px;margin:8px 0;background:#fff}textarea{min-height:90px}.alert{padding:12px 16px;background:#dcfce7;color:#166534;border-radius:12px;margin-bottom:12px}.error{padding:12px 16px;background:#fee2e2;color:#991b1b;border-radius:12px;margin-bottom:12px}.logout-form{background:transparent;box-shadow:none;padding:0;margin-top:12px}.logout-form button{width:100%;background:#ef4444}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#2563eb)}.login-card{width:430px;background:#fff;border-radius:24px;padding:32px;box-shadow:0 30px 80px #0004}.full{width:100%}.demo{margin-top:16px;padding:12px;background:#f1f5f9;border-radius:12px}@media(max-width:900px){aside{position:relative;width:100%;height:auto}main{margin-left:0}}
