:root { --bg:#0b0e14; --card:#121826; --fg:#e6e6e6; --muted:#aab3c0; --accent:#4cc3ff; --bad:#ff6b6b; --good:#31c48d; }
* { box-sizing: border-box; }
body { margin:0; font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:var(--fg); background: linear-gradient(180deg,#0b0e14,#0e1420); }
.wrapper { max-width: 960px; margin: 0 auto; padding: 16px; }
.site-header, .site-footer { display:flex; justify-content:space-between; align-items:center; padding:12px 0; }
.site-header h1 { margin:0; font-size: 1.25rem; color: var(--fg); }
nav a { color: var(--muted); margin-left: 12px; text-decoration:none; }
nav a:hover { color: var(--accent); }
.content { background: var(--card); border-radius: 16px; padding: 20px; box-shadow: 0 10px 30px rgba(0,0,0,.35); }
.panel h2, .panel h3 { margin-top: 0; }
.form { display:grid; gap: 10px; max-width: 420px; }
.form input[type="password"], .form select { padding:10px; border-radius:10px; border:1px solid #2a3347; background:#0e1522; color:var(--fg); }
button { appearance:none; border:none; padding:10px 16px; border-radius:10px; background:var(--accent); color:#00121a; font-weight:700; cursor:pointer; }
button:hover { filter:brightness(1.1); }
.flash { padding:10px 12px; border-radius:10px; margin-bottom:10px; }
.flash.error { background: rgba(255,107,107,.15); color:#ffd2d2; border:1px solid rgba(255,107,107,.4); }
.flash.success { background: rgba(49,196,141,.15); color:#d1ffef; border:1px solid rgba(49,196,141,.4); }
.result { width:100%; border-collapse: collapse; margin-top: 12px; }
.result th, .result td { padding:8px; border-bottom:1px solid #273149; text-align:left; }
.result th { color: var(--muted); }
.small { font-size:.9rem; color:var(--muted); }
.disclaimer { margin-top: 16px; line-height:1.45; }
