:root { color-scheme:dark; --bg:#07111f; --card:#0e1b2e; --line:#24415e; --accent:#37e6a5; --muted:#9bb0c5; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; font-family:Inter,"Segoe UI",sans-serif; color:#f4f8fb; background:radial-gradient(circle at 20% 10%,#123459 0,transparent 35%),var(--bg); }
.landing { display:grid; place-items:center; padding:24px; }
.auth-card { width:min(620px,100%); padding:42px; border:1px solid var(--line); border-radius:22px; background:rgba(14,27,46,.94); box-shadow:0 24px 80px #0008; }
.eyebrow { color:var(--accent); font:700 12px ui-monospace,monospace; letter-spacing:.18em; }
h1 { margin:12px 0 18px; font-size:clamp(32px,6vw,52px); }
p { color:var(--muted); line-height:1.75; }
.consent { display:flex; gap:12px; margin:28px 0; color:#dbe6ef; line-height:1.5; cursor:pointer; }
.consent input { width:18px; height:18px; accent-color:var(--accent); }
button { width:100%; padding:14px 18px; border:0; border-radius:12px; color:#042319; background:var(--accent); font-size:16px; font-weight:750; cursor:pointer; }
button:disabled { opacity:.4; cursor:not-allowed; }
.status { min-height:28px; margin-bottom:8px; }
.status[data-kind="success"] { color:var(--accent); }
.status[data-kind="error"] { color:#ff8c96; }
.dashboard-link { color:#8ecbff; }
.debug-console { margin-top:18px; border:1px solid var(--line); color:#8ecbff; background:transparent; }
.debug-console:hover { border-color:#8ecbff; background:#102943; }
.dashboard { width:min(1180px,calc(100% - 32px)); margin:48px auto; }
.dashboard header { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:24px; }
.dashboard h1 { font-size:36px; margin:0; }
.summary { color:var(--accent); font-size:18px; }
.table-wrap { overflow:auto; border:1px solid var(--line); border-radius:16px; background:var(--card); }
table { width:100%; border-collapse:collapse; min-width:760px; }
th,td { padding:15px 18px; text-align:left; border-bottom:1px solid var(--line); }
th { color:var(--muted); font-size:13px; letter-spacing:.05em; }
tbody tr:last-child td { border-bottom:0; }
.footer-row { display:flex; justify-content:space-between; margin-top:16px; }
@media (max-width:640px) { .auth-card{padding:28px 22px}.dashboard header,.footer-row{align-items:start;flex-direction:column} }
