  :root{
    --ink:#FFFFFF; --panel:#F8FAFC; --line:#E2E8F0; --paper:#0F172A;
    --paper-dim:#64748B; --signal:#2563EB; --signal-dim:#1D4ED8;
    --phosphor:#0891B2; --display:'Big Shoulders Display',system-ui,sans-serif;
    --body:'IBM Plex Sans',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);line-height:1.6}
  h1,h2{font-family:var(--display);font-weight:800;margin:0 0 .3em}
  .shell{max-width:720px;margin:0 auto;padding:48px 24px 90px}
  .brand{display:flex;align-items:center;gap:10px;margin-bottom:36px}
  .brand svg{width:32px;height:32px}
  .brand span{font-family:var(--display);font-weight:800;font-size:16px;letter-spacing:.5px}

  .gate{max-width:420px;margin:40px auto;background:#fff;border:1px solid var(--line);border-top:4px solid var(--signal);border-radius:8px;padding:30px;box-shadow:0 20px 40px -20px rgba(15,23,42,.15)}
  .gate p{color:var(--paper-dim);font-size:14px}
  .gate label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:1.5px;color:var(--paper-dim);text-transform:uppercase;margin-top:16px}
  .gate input{display:block;width:100%;margin-top:6px;background:var(--panel);border:1px solid var(--line);color:var(--paper);padding:12px;border-radius:6px;outline:none;font:inherit}
  .gate input:focus{border-color:var(--signal)}
  .gate button{margin-top:20px;width:100%}
  .msg{min-height:20px;margin-top:14px;font-size:13px;color:var(--signal)}
  .msg.erro{color:#DC2626}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:600;font-size:14px;padding:11px 20px;border-radius:6px;border:1px solid var(--line);background:var(--signal);border-color:var(--signal);color:#fff;cursor:pointer}
  .btn:hover{background:var(--signal-dim)}
  .btn-ghost{background:#fff;color:var(--paper)}

  .top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}
  .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--signal);text-transform:uppercase;margin:0 0 4px}

  .link-card{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--phosphor);border-radius:8px;padding:18px 20px;margin-bottom:24px}
  .link-card small{display:block;color:var(--paper-dim);font-size:11px;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}
  .link-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
  .link-row code{font-family:var(--mono);font-size:13px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:8px 12px;flex:1;min-width:200px;overflow-wrap:anywhere}

  .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}
  .stat{background:#fff;padding:20px 16px;text-align:center}
  .stat strong{display:block;font-family:var(--mono);font-size:28px;color:var(--signal)}
  .stat small{display:block;color:var(--paper-dim);font-size:11px;text-transform:uppercase;letter-spacing:1px;margin-top:6px}
  .stat.pendente strong{color:#D97706}

  .fineprint{font-size:12px;color:var(--paper-dim);margin-top:24px;line-height:1.7}

  .hidden{display:none}
  .no-margin{margin:0}
  .btn-full{justify-content:center}
  .btn-small{font-size:12px;padding:8px 14px}
