:root{ --bg:#0e0f11; --card:#16181c; --line:#24272d; --txt:#e7e9ec; --dim:#8a8f98; --brand:#40f2fe; --win:#3fb950; --loss:#f85149; }
*{ box-sizing:border-box; }
html,body{ margin:0; background:var(--bg); color:var(--txt); font-family:'Segoe UI',system-ui,sans-serif; }
a{ color:var(--brand); }
.wrap{ max-width:920px; margin:0 auto; padding:20px 16px 60px; }
.center{ min-height:100vh; display:flex; align-items:center; justify-content:center; padding:16px; }
.card{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:22px; }
.card.narrow{ width:100%; max-width:380px; }
h1{ font-size:22px; margin:0 0 4px; } h1 .b{ color:var(--brand); }
.sub{ color:var(--dim); font-size:13px; margin:0 0 18px; }
label{ display:block; font-size:12px; color:var(--dim); margin:12px 0 5px; }
input{ width:100%; background:#0e0f11; border:1px solid var(--line); border-radius:8px; color:var(--txt); padding:10px 12px; font-size:14px; }
input:focus{ outline:none; border-color:var(--brand); }
button{ background:var(--brand); color:#00131a; border:0; border-radius:8px; padding:10px 16px; font-weight:700; font-size:14px; cursor:pointer; }
button:hover{ filter:brightness(1.08); } button:active{ transform:scale(.98); } button:disabled{ opacity:.5; cursor:default; }
button.ghost{ background:transparent; color:var(--dim); border:1px solid var(--line); }
button.sm{ padding:6px 12px; font-size:13px; }
.row{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.full{ width:100%; margin-top:16px; }
.toggle{ text-align:center; margin-top:14px; font-size:13px; color:var(--dim); }
.toggle a{ cursor:pointer; }
.msg{ margin-top:12px; font-size:13px; min-height:18px; }
.msg.err{ color:var(--loss); } .msg.ok{ color:var(--win); }
.top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; gap:10px; flex-wrap:wrap; }
.credits{ background:#0e0f11; border:1px solid var(--line); border-radius:20px; padding:6px 14px; font-weight:700; }
.credits .n{ color:var(--brand); }
table{ width:100%; border-collapse:collapse; font-size:13px; }
th,td{ text-align:left; padding:9px 10px; border-bottom:1px solid var(--line); }
th{ color:var(--dim); font-weight:600; font-size:11px; text-transform:uppercase; letter-spacing:.5px; }
.win{ color:var(--win); } .loss{ color:var(--loss); }
.tag{ font-size:11px; color:var(--dim); }
.muted{ color:var(--dim); }
.section{ margin-top:26px; }
.section h2{ font-size:15px; margin:0 0 12px; }
.jobrow{ display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--line); font-size:13px; }
.st{ font-size:11px; padding:2px 8px; border-radius:5px; background:#0e0f11; border:1px solid var(--line); }
.st.queued{ color:var(--brand); } .st.done{ color:var(--win); } .st.failed{ color:var(--loss); }

/* Checkbox de términos en el registro + páginas legales */
.check{ display:flex; gap:8px; align-items:flex-start; font-size:13px; color:var(--dim); margin:10px 0; }
.check input{ margin-top:2px; }
.legal h1{ margin-bottom:4px; }
.legal h2{ margin-top:22px; font-size:16px; }
.legal p, .legal li{ font-size:14px; line-height:1.55; color:var(--dim); }
.legal strong{ color:inherit; }
