* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: 'Trebuchet MS', Verdana, sans-serif;
    background: #1a1a1a;
    color: #e0d8c0;
}
.cabecera {
    background: #2b2620;
    border-bottom: 2px solid #7a5c2e;
    padding: 0.6rem 1rem;
}
.cabecera h1 {
    margin: 0 0 0.4rem 0;
    font-size: 1.4rem;
    color: #d4af37;
}
.cabecera h1 span {
    font-size: 0.9rem;
    color: #a08a5c;
    font-weight: normal;
}
.menu a {
    color: #e0d8c0;
    text-decoration: none;
    margin-right: 0.9rem;
    font-size: 0.9rem;
}
.menu a:hover { color: #d4af37; }
.contenido {
    max-width: 900px;
    margin: 1.2rem auto;
    padding: 0 1rem;
}
.caja {
    background: #262019;
    border: 1px solid #4a3d24;
    border-radius: 6px;
    padding: 1rem;
    margin-bottom: 1rem;
}
.caja h2 {
    margin-top: 0;
    color: #d4af37;
    font-size: 1.1rem;
    border-bottom: 1px solid #4a3d24;
    padding-bottom: 0.4rem;
}
table { width: 100%; border-collapse: collapse; }
th, td { padding: 0.35rem 0.5rem; text-align: left; border-bottom: 1px solid #3a3020; font-size: 0.9rem; }
th { color: #d4af37; }
tr.afk { background: rgba(200,40,40,0.25); }
tr.gd { background: rgba(120,120,120,0.25); }
input[type=text], input[type=password], input[type=email], input[type=number], textarea, select {
    background: #17130e;
    border: 1px solid #4a3d24;
    color: #e0d8c0;
    padding: 0.35rem;
    border-radius: 4px;
    width: 100%;
    max-width: 320px;
}
textarea { max-width: 100%; }
label { display: block; margin: 0.5rem 0 0.2rem; font-size: 0.9rem; }
button, input[type=submit] {
    background: #7a5c2e;
    color: #fff;
    border: none;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    cursor: pointer;
    margin-top: 0.6rem;
}
button:hover, input[type=submit]:hover { background: #9c7a3e; }
.error { color: #ff8080; }
.ok { color: #90ee90; }
.horario-grid { font-size: 0.7rem; }
.horario-grid td { text-align: center; padding: 0.15rem; cursor: pointer; }
.horario-grid td.marcado { background: #4a7c2e; }
a { color: #d4af37; }
