body { background: #111; color: #eee; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; margin: 0; padding: 0; }
.container { width: 95%; max-width: 1200px; margin: 0 auto; }
.header-main { background: #000; border-bottom: 2px solid #a00; padding: 15px 0; }
.header-flex { display: flex; align-items: center; gap: 25px; }
.logo-img { height: 65px; width: auto; }
.header-text h1 { color: #d00; margin: 0; font-size: 1.8em; letter-spacing: 2px; }

.nav-main { margin-top: 8px; font-size: 0.9em; display: flex; align-items: center; }
.nav-main a { color: #aaa; text-decoration: none; transition: 0.2s; }
.nav-main a:hover { color: #f00; }
.sep { color: #444; padding: 0 15px; font-weight: normal; }

.form-card { background: #1a1a1a; padding: 35px; border-radius: 12px; max-width: 450px; margin: 50px auto; border: 1px solid #331111; box-shadow: 0 10px 30px rgba(0,0,0,0.5); }
.form-card h2 { color: #d00; margin-top: 0; text-align: center; margin-bottom: 25px; }
label { display: block; margin: 15px 0 5px; color: #888; font-size: 0.85em; text-transform: uppercase; }
input, select, textarea { width: 100%; padding: 12px; background: #222; border: 1px solid #333; color: #fff; box-sizing: border-box; border-radius: 5px; font-size: 1em; }
input:focus { border-color: #800; outline: none; background: #252525; }
.btn-red { background: #a00; color: #fff; border: none; padding: 15px; width: 100%; margin-top: 30px; cursor: pointer; font-weight: bold; border-radius: 5px; transition: 0.2s; }
.btn-red:hover { background: #d00; box-shadow: 0 0 15px rgba(200,0,0,0.4); }

.link-red { color: #a00; text-decoration: none; font-weight: bold; transition: 0.2s; }
.link-red:hover { color: #f33; text-decoration: underline; }

.msg-container { margin: 20px 0; border-radius: 8px; overflow: hidden; box-shadow: 0 5px 15px rgba(0,0,0,0.3); }
.msg-header { padding: 12px 20px; font-weight: bold; }
.msg-body { padding: 20px; line-height: 1.6; }
.msg-normal { border: 1px solid #333; }
.msg-normal .msg-header { background: #333; color: #eee; }
.msg-normal .msg-body { background: #222; }
.msg-error { border: 1px solid #600; }
.msg-error .msg-header { background: #600; color: #fff; }
.msg-error .msg-body { background: #2a1111; color: #fcc; }

.dashboard-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 25px; margin-top: 40px; }
.dash-card { background: #1a1a1a; border: 1px solid #333; padding: 50px 20px; text-align: center; cursor: pointer; transition: 0.3s; border-radius: 12px; font-weight: bold; }
.dash-card:hover { border-color: #a00; background: #222; transform: translateY(-5px); }

@media (max-width: 600px) {
    .header-flex { flex-direction: column; text-align: center; gap: 10px; }
    .logo-img { height: 50px; }
    .nav-main { justify-content: center; }
    .form-card { margin: 20px 10px; padding: 20px; }
}