:root{
  --primary: #4e73df;
  --primary-dark: #2e59d9;
  --bg: #f4f6fb;
  --card: #ffffff;
  --text: #2d3748;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;background:linear-gradient(90deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 6px 18px rgba(46,89,217,0.12)}
.navbar .brand{font-weight:700;font-size:18px}
.navbar .menu a{color:#fff;margin-right:18px;text-decoration:none;font-weight:600;opacity:0.95}
.navbar .menu a:hover{opacity:1;text-decoration:underline}
.navbar .user{font-size:14px}
.container{max-width:1100px;margin:40px auto;padding:28px;background:var(--card);border-radius:12px;box-shadow:0 10px 30px rgba(18,52,86,0.06)}
h1,h2,h3{color:var(--primary);margin:0 0 18px 0;font-weight:700}
a{color:var(--primary)}
.button{background:var(--primary);color:#fff;padding:10px 16px;border-radius:8px;border:none;cursor:pointer;font-weight:600;text-decoration:none;display:inline-block}
.button.alt{background:#6c757d}
.table{width:100%;border-collapse:collapse;margin-top:16px}
.table th,.table td{padding:12px 14px;border-bottom:1px solid #eef2f6;text-align:left}
.table th{background:#f7f9fc;font-weight:700}
.form-row{display:flex;gap:12px;flex-wrap:wrap}
.form-group{flex:1;min-width:180px;margin-bottom:12px}
input[type=text],input[type=email],input[type=number],input[type=date],select,textarea,input[type=time]{width:100%;padding:10px;border:1px solid #e3e8ef;border-radius:8px;background:#fbfdff}
.login-container{max-width:420px;margin:100px auto;padding:36px;background:var(--card);border-radius:12px;box-shadow:0 12px 40px rgba(18,52,86,0.08);text-align:center}
.login-container h2{margin-bottom:18px}
.footer{max-width:1100px;margin:20px auto;color:#94a3b8;font-size:13px;text-align:center}

/* responsive */
@media (max-width:800px){.form-row{flex-direction:column}.navbar{padding:12px}.container{margin:20px}}
