:root {
    --black: #070707;
    --gold: #D4AF37;
    --gold2: #f0d878;
    --white: #fff;
    --gray: #aaa;
    --line: rgba(212, 175, 55, .25);
}
* { box-sizing: border-box; }
body { margin: 0; font-family: Arial, sans-serif; background: var(--black); color: var(--white); }
a { color: inherit; text-decoration: none; }
.topbar { display: flex; justify-content: space-between; align-items: center; padding: 18px 22px; background: #050505; border-bottom: 1px solid var(--line); }
.topbar nav { display: flex; gap: 14px; flex-wrap: wrap; }
.topbar a { color: var(--gold2); font-weight: bold; }
.container { width: min(1100px, calc(100% - 32px)); margin: 34px auto; }
.grid { display: grid; gap: 16px; }
.panel-card, .box, .login-card, .customer-row, .digital-card { background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); border: 1px solid var(--line); border-radius: 22px; padding: 22px; }
.panel-card p, .box p, .login-card p { color: var(--gray); }
.login-body { min-height: 100vh; display: grid; place-items: center; padding: 20px; }
.login-card { width: min(430px, 100%); }
.login-card.wide { width: min(720px, 100%); }
label { display: block; margin: 14px 0 6px; color: var(--gold2); font-weight: bold; }
input, select, textarea { width: 100%; padding: 13px; border-radius: 12px; border: 1px solid var(--line); background: #0b0b0b; color: var(--white); }
textarea { min-height: 90px; }
button, .button-link { display: inline-block; margin-top: 18px; padding: 13px 18px; border: 0; border-radius: 999px; background: linear-gradient(135deg, var(--gold), var(--gold2)); color: #111; font-weight: 900; cursor: pointer; }
.inline-form { display: grid; gap: 10px; }
.customer-row { margin-top: 14px; display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.customer-row a { color: var(--gold2); font-weight: bold; }
.error { background: rgba(255,60,60,.15); border: 1px solid rgba(255,60,60,.35); padding: 12px; border-radius: 12px; margin: 14px 0; }
.success { background: rgba(80,255,150,.12); border: 1px solid rgba(80,255,150,.28); padding: 12px; border-radius: 12px; margin: 14px 0; }
.digital-card { text-align: center; background: radial-gradient(circle at top, rgba(212,175,55,.25), transparent 42%), #0b0b0b; }
@media (min-width: 760px) {
    .grid { grid-template-columns: repeat(3, 1fr); }
    .inline-form { grid-template-columns: 1fr auto; align-items: end; }
}
