* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Arial, sans-serif; }
body { background: #f0f4f8; }
.login-body { display: flex; align-items: center; justify-content: center; min-height: 100vh; background: linear-gradient(135deg, #0d47a1, #1976d2); }
.login-box { background: white; padding: 40px 30px; border-radius: 12px; box-shadow: 0 8px 32px rgba(0,0,0,0.2); width: 100%; max-width: 400px; }
.login-box h2 { text-align: center; color: #0d47a1; margin-bottom: 5px; font-size: 20px; }
.login-box h3 { text-align: center; color: #555; margin-bottom: 25px; font-size: 16px; font-weight: normal; }
.error { background: #ffebee; color: #c62828; padding: 10px; border-radius: 6px; margin-bottom: 15px; text-align: center; }
.success { background: #e8f5e9; color: #2e7d32; padding: 10px; border-radius: 6px; margin-bottom: 15px; }
.form-group { margin-bottom: 15px; }
.form-group label { display: block; margin-bottom: 5px; font-weight: 500; color: #333; }
input, textarea, button { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; }
button { background: #0d47a1; color: white; border: none; cursor: pointer; font-weight: 600; transition: 0.2s; }
button:hover { background: #1565c0; }
.container { display: flex; min-height: 100vh; }
.sidebar { width: 260px; background: #0d47a1; color: white; padding: 20px 0; position: fixed; height: 100vh; overflow-y: auto; }
.sidebar h2 { padding: 0 20px 15px; font-size: 18px; border-bottom: 1px solid #1976d2; margin-bottom: 15px; }
.user-info { padding: 0 20px 15px; font-size: 13px; color: #bbdefb; }
.menu-link { display: block; padding: 12px 20px; color: #e3f2fd; text-decoration: none; transition: 0.2s; }
.menu-link:hover { background: #1565c0; }
.menu-link.logout { margin-top: 20px; color: #ffcdd2; }
.content { margin-left: 260px; padding: 30px; flex: 1; }
h1, h2, h3 { margin-bottom: 20px; color: #1a237e; }
h3 { margin-top: 30px; font-size: 17px; border-bottom: 2px solid #e0e0e0; padding-bottom: 8px; }
.data-table { width: 100%; border-collapse: collapse; margin-top: 15px; background: white; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.08); }
.data-table th, .data-table td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #eee; font-size: 14px; }
.data-table th { background: #f5f7fa; font-weight: 600; color: #333; }
.data-table tr:hover { background: #f9fafc; }
.btn-small { display: inline-block; padding: 5px 10px; background: #e3f2fd; color: #0d47a1; text-decoration: none; border-radius: 4px; margin-right: 5px; font-size: 13px; }
.btn-small:hover { background: #bbdefb; }
.form-style { background: white; padding: 25px; border-radius: 10px; box-shadow: 0 2px 12px rgba(0,0,0,0.08); margin-bottom: 30px; }