:root {
    color-scheme: dark;
    font-family: Georgia, "Times New Roman", serif;
    background: #16100d;
    color: #f6ead8;
}
* { box-sizing: border-box; }
body {
    min-height: 100vh;
    margin: 0;
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 50% 10%, rgba(181, 118, 53, .28), transparent 35rem),
        linear-gradient(145deg, #251a14, #0e0b09 72%);
}
.auth-shell { width: min(92vw, 430px); padding: 3rem 0; }
.auth-card {
    padding: 2.25rem;
    border: 1px solid #7a5633;
    border-radius: 8px;
    background: rgba(24, 17, 13, .94);
    box-shadow: 0 20px 70px rgba(0, 0, 0, .55), inset 0 0 45px rgba(128, 76, 30, .08);
}
.auth-mark {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1rem;
    display: grid;
    place-items: center;
    border: 1px solid #cc9b5e;
    transform: rotate(45deg);
    color: #e8bd7c;
    font: 700 .95rem/1 system-ui, sans-serif;
}
.auth-mark::first-line { transform: rotate(-45deg); }
h1 { margin: .25rem 0; text-align: center; font-weight: 500; letter-spacing: .06em; }
h2 { font-size: 1.1rem; }
.subtitle { margin: 0 0 1.5rem; text-align: center; color: #bca88e; }
label { display: grid; gap: .45rem; margin: 1rem 0; color: #d9c4a9; }
label span { color: #8d806f; font-size: .85em; }
input {
    width: 100%;
    padding: .75rem .8rem;
    border: 1px solid #66513b;
    border-radius: 4px;
    background: #100d0b;
    color: #fff7ea;
    font: 1rem system-ui, sans-serif;
}
input:focus { outline: 2px solid #b9884e; outline-offset: 1px; }
button {
    width: 100%;
    margin-top: .65rem;
    padding: .8rem;
    border: 1px solid #d0a568;
    border-radius: 4px;
    background: linear-gradient(#795026, #4b2d16);
    color: #fff4df;
    font: 600 .95rem system-ui, sans-serif;
    cursor: pointer;
}
button:hover { filter: brightness(1.12); }
button.danger { border-color: #b66; background: #612f2f; }
a { color: #e5b876; }
.auth-switch { margin: 1.4rem 0 0; text-align: center; color: #aa9780; }
.form-error { padding: .75rem; border: 1px solid #9d4b4b; background: #421d1d; color: #ffd9d9; }
.account-details { display: grid; grid-template-columns: 8rem 1fr; gap: .6rem; }
.account-details dt { color: #a99780; }
.account-details dd { margin: 0; }
hr { margin: 1.75rem 0; border: 0; border-top: 1px solid #493727; }
