@font-face{font-family:"Press Start 2P";src:url("assets/PressStart2P-Regular.ttf") format("truetype");font-display:swap}
:root{
  --bg:#0b0805; --panel:#16100a; --panel2:#1d150c; --line:#5a4318;
  --gold:#e8b84a; --gold-hi:#ffe08a; --gold-lo:#9a6f1f;
  --text:#f1e6cf; --muted:#c2b08a; --ok:#8fd66b; --err:#ff8a6b; --warn:#ffd24a;
  --px:'Press Start 2P',ui-monospace,monospace;
  --body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at top,#2a1a08 0,var(--bg) 60%);color:var(--text);font:16px/1.6 var(--body)}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:#000;padding:8px 12px;z-index:9}
.skip:focus{left:8px}
.hero{position:relative;height:clamp(150px,30vw,300px);overflow:hidden;border-bottom:4px solid var(--gold-lo);background:linear-gradient(#050302,#3a210c 64%,#050302)}
.hero canvas{position:absolute;left:0;top:0;display:block;image-rendering:pixelated;pointer-events:none}
.hero img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;image-rendering:pixelated}
.hero-fade{position:absolute;inset:0;background:linear-gradient(transparent 40%,var(--bg))}
.wrap{max-width:680px;margin:0 auto;padding:0 16px}
.title{text-transform:uppercase;font:clamp(26px,9.4vw,64px)/1.2 var(--px);margin:-30px 0 6px;text-align:center;position:relative;letter-spacing:.02em;white-space:nowrap}
/* mesmo logo da intro do launcher: MINE em pedra (#D4D4D4 > #707070), RING em dourado (#FFF3B8 > #B07A1C), contorno #140A02 e extrusao em bevel */
.title span{display:inline-block;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.title .mine{background-image:linear-gradient(#D4D4D4 0 30%,#707070);filter:drop-shadow(2px 0 0 #140A02) drop-shadow(-2px 0 0 #140A02) drop-shadow(0 2px 0 #140A02) drop-shadow(0 -2px 0 #140A02) drop-shadow(4px 4px 0 #2A2A2E)}
.title .ring{background-image:linear-gradient(#FFF3B8 0 30%,#B07A1C);filter:drop-shadow(2px 0 0 #140A02) drop-shadow(-2px 0 0 #140A02) drop-shadow(0 2px 0 #140A02) drop-shadow(0 -2px 0 #140A02) drop-shadow(4px 4px 0 #4A3009)}
.title-sub{text-transform:uppercase;font:clamp(8px,2.2vw,13px)/1.4 var(--px);text-align:center;margin:10px 0 6px;letter-spacing:.06em;color:#F0D283}
.title-sub b{font-weight:normal;color:#D4D4D4}
.tag{font:10px/1.8 var(--px);color:var(--muted);text-align:center;margin:18px 0 28px}
.panel{background:linear-gradient(var(--panel2),var(--panel));border:3px solid var(--gold-lo);box-shadow:0 0 0 3px #000,6px 6px 0 3px #000;padding:24px 20px;margin:0 6px 28px}
.panel[hidden]{display:none}
.panel h2{font:clamp(12px,3.4vw,15px)/1.6 var(--px);color:var(--gold);margin:0 0 14px}
.panel p{margin:0 0 16px}
.small{font-size:14px;color:var(--muted)}
a{color:var(--gold-hi);text-decoration-color:var(--gold-lo);text-underline-offset:3px}
a:visited{color:#d9b866}
a:hover,a:focus-visible{color:#fff2c4;text-decoration-color:var(--gold-hi)}
.btn,.btn:visited,.author,.author:visited{text-decoration:none}
code{background:#000;padding:1px 6px;border:1px solid var(--line);font-size:.9em}
.list{margin:0 0 16px;padding-left:20px}
.panel-warn{border-color:var(--warn)} .panel-warn h2{color:var(--warn)}
.panel-error{border-color:var(--err)} .panel-error h2{color:var(--err)}
.panel-ok{border-color:var(--ok)} .panel-ok h2{color:var(--ok)}
.badge{font:10px/1.6 var(--px);color:var(--ok);margin:0 0 10px!important}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;font:11px/1.5 var(--px);color:var(--gold-hi);background:#000;border:3px solid var(--gold-lo);cursor:pointer;text-decoration:none;text-align:center;box-shadow:4px 4px 0 #000}
.btn:hover{border-color:var(--gold);background:#1a1206}
.btn:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #000}
.btn-primary{background:linear-gradient(var(--gold),#b9852a);color:#1a1004;border-color:var(--gold-hi)}
.btn-primary:hover{background:linear-gradient(var(--gold-hi),var(--gold))}
a.btn-primary,a.btn-primary:visited,a.btn-primary:hover,a.btn-primary:focus-visible{color:#1a1004}
a.btn:not(.btn-primary),a.btn:not(.btn-primary):visited{color:var(--gold-hi)}
.btn-big{display:flex;width:100%;min-height:68px;font-size:clamp(11px,3.6vw,14px);margin:6px 0 24px}
.gicon{width:18px;height:18px}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}
.actions .btn{flex:1 1 220px}
:focus-visible{outline:3px solid #fff;outline-offset:3px}
.steps{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px}
.steps li{display:flex;gap:14px;align-items:flex-start;background:#0c0804;border:2px solid var(--line);padding:12px}
.steps span{flex:none;width:34px;height:34px;display:grid;place-items:center;background:var(--gold);color:#1a1004;font:12px var(--px)}
.loader{display:flex;gap:8px;margin-bottom:16px}
.loader i{width:16px;height:16px;background:var(--gold);animation:blk 1s steps(2) infinite}
.loader i:nth-child(2){animation-delay:.15s}.loader i:nth-child(3){animation-delay:.3s}.loader i:nth-child(4){animation-delay:.45s}
@keyframes blk{50%{opacity:.15}}
.foot{text-align:center;color:var(--muted);font-size:13px;padding-bottom:40px}
.legal h2{margin-top:28px}.legal h2:first-of-type{margin-top:0}
@media (prefers-reduced-motion:reduce){.loader i{animation:none}.btn:active{transform:none}}
@media (max-width:420px){.panel{margin-inline:0;padding:20px 14px}}

.author{display:flex;width:fit-content;max-width:100%;align-items:center;gap:12px;margin:0;cursor:pointer;padding:8px 14px 8px 8px;border:2px solid var(--gold-lo);background:rgba(42,32,16,.7);color:inherit;text-decoration:none}
.author:hover,.author:focus-visible{border-color:var(--gold)}
.author img{width:56px;height:56px;display:block;border:2px solid var(--gold);object-fit:cover}
.author strong{display:block;font-family:var(--px);font-size:11px;color:var(--gold-hi,var(--gold));letter-spacing:.04em}
.author small{display:block;margin-top:6px;font-size:13px;opacity:.8}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 auto 22px}
.author .ext{width:12px;height:12px;flex:none;margin-left:4px;color:var(--gold-lo)}
.author:hover .ext,.author:focus-visible .ext{color:var(--gold-hi)}
.author:hover,.author:focus-visible{border-color:var(--gold-hi);background:rgba(70,52,24,.85)}
.ghicon{width:40px;height:40px;flex:none;margin:8px;color:var(--gold-hi)}

.about-lite{max-width:640px;margin:34px auto 0;padding:18px 6px 0;border-top:1px solid rgba(154,111,31,.35);color:var(--muted);font-size:12.5px;line-height:1.75}
.about-lite h2{font:10px/1.6 var(--px);color:var(--gold-lo);margin:0 0 10px;letter-spacing:.04em}
.about-lite p{margin:0 0 10px}
.about-lite strong{color:#d8c79a;font-weight:600}
.about-lite a{color:var(--gold-hi)}

/* chips do autor: mesma largura e alinhamento do card de download */
.chips{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 6px 28px;justify-content:stretch}
.chips .author{width:100%;max-width:none;box-sizing:border-box;min-width:0}
.chips .author>span{min-width:0}
.chips .author small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:420px){.chips{margin-inline:0}}
@media (max-width:480px){.chips{grid-template-columns:1fr}}

/* ---- revisao: ritmo vertical e legibilidade ---- */
:root{--s1:8px;--s2:12px;--s3:16px;--s4:24px;--s5:32px;--s6:48px}
.tag{margin:var(--s3) auto var(--s5);max-width:520px;line-height:1.9;text-wrap:balance}
.title-sub{font-size:clamp(10px,2.2vw,13px)}
.panel{padding:var(--s5) 28px;margin:0 6px var(--s5)}
.panel h2{line-height:1.5;margin:0 0 var(--s3)}
.panel p{line-height:1.65;margin:0 0 var(--s4)}
.panel .small{line-height:1.65;margin:0 0 var(--s1)}
.panel .small.reqs{margin-top:var(--s3);color:var(--muted)}
.panel>:last-child{margin-bottom:0}
#btn-login{display:flex;width:100%;min-height:56px;font-size:12px;margin:0 0 var(--s3)}
#btn-login .gicon{width:20px;height:20px}
.btn-big{margin:var(--s4) 0}
.panel .actions{margin:var(--s4) 0 var(--s3)}
.steps{margin-top:var(--s4)}
@media(max-width:420px){.panel{padding:var(--s4) 18px}}
.btn:disabled,.btn[aria-busy=true]{opacity:.55;cursor:not-allowed;transform:none}
.btn-primary:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 #000}
.chips{gap:var(--s3);align-items:stretch;margin:0 6px var(--s5)}
.chips .author{min-height:76px;border:3px solid var(--gold-lo);box-shadow:4px 4px 0 #000}
.author small{opacity:1;color:var(--muted)}
.author .ext{width:14px;height:14px;color:var(--muted)}
@media(max-width:420px){.chips{margin-inline:0}}
.about-lite{margin-top:var(--s6);padding-top:var(--s4);font-size:14px;line-height:1.7}
.about-lite h2{color:var(--gold)}
.about-lite p{margin:0 0 var(--s2)}

/* ---- cards do autor: icone externo com respiro; botao: icone alinhado; scrollbar no tema ---- */
.chips .author{padding:10px 22px 10px 10px;gap:14px}
.chips .author .ext{margin-left:auto;flex:none}
.chips .author>span{flex:1}
.btn{line-height:1}
.btn .gicon{flex:none;display:block}
html{scrollbar-width:thin;scrollbar-color:#9a6f1f #0b0805}
::-webkit-scrollbar{width:14px;height:14px;background:#0b0805}
::-webkit-scrollbar-track{background:#0b0805;border-left:2px solid #2a1d08}
::-webkit-scrollbar-thumb{background:#9a6f1f;border:3px solid #0b0805;border-left-width:2px;min-height:48px;box-shadow:inset -2px -2px 0 #6e4d12,inset 2px 2px 0 #c9953a}
::-webkit-scrollbar-thumb:hover{background:#e8b84a;box-shadow:inset -2px -2px 0 #b9852a,inset 2px 2px 0 #ffe08a}
::-webkit-scrollbar-corner{background:#0b0805}

/* ---- botao principal: fonte pixel em multiplo de 8px (nitida) e largura proporcional ao texto ---- */
#btn-login,.btn-big{font-size:16px;letter-spacing:0;padding:18px 32px;min-height:64px;gap:14px;-webkit-font-smoothing:none;text-rendering:optimizeSpeed}
#btn-login{width:auto;min-width:min(100%,320px);display:inline-flex}
#btn-login .gicon{width:22px;height:22px}
.btn-big{width:auto;min-width:min(100%,320px);display:inline-flex}
@media(max-width:480px){#btn-login,.btn-big{font-size:12px;padding:16px 18px;width:100%;min-height:56px}}
