:root{--primary:#2563eb;--primary-hover:#1d4ed8;--bg-body:#f3f4f6;--bg-card:#fff;--text-main:#1f2937;--text-muted:#6b7280;--border:#e5e7eb;--danger:#ef4444;--success:#10b981;--radius:12px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-body);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--border);margin-bottom:20px;padding:24px}h1{color:var(--text-main);margin-bottom:.5rem;font-size:1.8rem;font-weight:700}h2{margin-bottom:1rem;font-size:1.5rem;font-weight:600}h3{margin-bottom:.8rem;font-size:1.2rem;font-weight:600}p{color:var(--text-muted);line-height:1.5}label{color:var(--text-main);margin-bottom:6px;font-size:.9rem;font-weight:500;display:block}input,select,textarea{border:1px solid var(--border);background-color:#f9fafb;border-radius:8px;outline:none;width:100%;padding:12px;font-size:16px;transition:all .2s}input:focus,select:focus,textarea:focus{border-color:var(--primary);background-color:#fff;box-shadow:0 0 0 3px #2563eb1a}.form-grid{gap:16px;display:grid}@media (min-width:768px){.form-grid{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr 1fr 1fr}}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:100%;padding:12px 24px;font-size:1rem;font-weight:600;transition:transform .1s,opacity .2s;display:inline-flex}@media (min-width:640px){.btn{width:auto}}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-secondary{border:1px solid var(--border);color:var(--text-main);background-color:#fff}.btn-secondary:hover{background-color:#f9fafb}.btn-danger{background-color:var(--danger);color:#fff}.btn-success{background-color:var(--success);color:#fff}.navbar{border-bottom:1px solid var(--border);z-index:100;box-shadow:var(--shadow-sm);background:#fff;justify-content:space-between;align-items:center;padding:15px 20px;display:flex;position:sticky;top:0}.brand{color:var(--primary);font-size:1.2rem;font-weight:800;text-decoration:none}.nav-links{gap:15px;display:flex}.badge{text-transform:uppercase;border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:700}.badge-Admin{color:#166534;background:#dcfce7}.badge-user{color:#374151;background:#f3f4f6}
