/* Tela de entrada (14/11/2026): identidade própria, influenciada pelo Astrolábio do jogador (noite, latão, celeste).
   Não usa as variáveis de tema do gestor: é igual no tema claro e no escuro. */
@font-face{font-family:'Cinzel';font-style:normal;font-weight:500 800;font-display:swap;src:url(./assets/fonts/cinzel-latin.woff2) format('woff2')}

body:has(.entrance){min-width:0;background:#050913}
.entrance{
 --night:#050913;--deep:#0a1330;--ink:#eef1fb;--mist:#9ba8c8;--brass:#d9b46a;--brass-hi:#f6dc9c;--brass-lo:#8d6230;--celeste:#9cc8ff;--ember:#ffb27a;
 --px:0;--py:0;
 position:relative;min-height:100vh;min-height:100dvh;overflow:hidden;isolation:isolate;color:var(--ink);
 font:15px/1.5 system-ui,'Segoe UI',sans-serif;
 background:
  radial-gradient(1200px 700px at 72% 18%,#1b2c63 0%,transparent 60%),
  radial-gradient(900px 600px at 18% 85%,#2a1846 0%,transparent 65%),
  linear-gradient(180deg,#070d1f 0%,var(--night) 70%);
}
.entrance-sky{position:absolute;inset:0;width:100%;height:100%;z-index:0}

/* Arte-chave: Arenveel, o astrônomo, se dissolvendo no céu. */
.entrance-art{
 position:absolute;top:-3%;bottom:-3%;right:-2%;width:min(64vw,1060px);z-index:1;
 background-size:cover;background-position:50% 12%;
 -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 42%),linear-gradient(0deg,transparent 0%,#000 22%);
 -webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,#000 42%),linear-gradient(0deg,transparent 0%,#000 22%);mask-composite:intersect;
 transform:translate3d(calc(var(--px) * -18px),calc(var(--py) * -12px),0) scale(1.04);
 filter:saturate(1.05) contrast(1.04);
 animation:entrance-art-in 2.2s cubic-bezier(.2,.7,.2,1) both;
}
.entrance-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
 background:linear-gradient(90deg,rgba(5,9,19,.92) 0%,rgba(5,9,19,.55) 38%,rgba(5,9,19,0) 62%),radial-gradient(ellipse at 50% 120%,rgba(5,9,19,.9),transparent 55%)}

/* Astrolábio */
.entrance-astrolabe{position:absolute;z-index:1;pointer-events:none;width:min(108vh,980px);aspect-ratio:1;left:clamp(-260px,calc(30vw - 54vh),200px);top:50%;
 transform:translate3d(calc(var(--px) * 22px),calc(-50% + var(--py) * 16px),0);opacity:.5;animation:entrance-astrolabe-in 2.4s cubic-bezier(.2,.7,.2,1) both}
.entrance-astrolabe svg{width:100%;height:100%;overflow:visible}
.entrance-astrolabe .ring{transform-origin:500px 500px}
.entrance-astrolabe .rim{fill:none;stroke:var(--brass);stroke-opacity:.55;stroke-width:2}
.entrance-astrolabe .rim.thin{stroke-width:1;stroke-opacity:.32}
.entrance-astrolabe line{stroke:var(--brass);stroke-opacity:.42;stroke-width:1.2}
.entrance-astrolabe line.long{stroke-opacity:.8;stroke-width:2}
.entrance-astrolabe .orbit{fill:none;stroke:var(--celeste);stroke-opacity:.22;stroke-width:1;stroke-dasharray:2 7}
.entrance-astrolabe .pointer{fill:none;stroke:var(--brass-hi);stroke-opacity:.5;stroke-width:1.5}
.entrance-astrolabe .star{fill:var(--brass-hi)}
.entrance-astrolabe .hub{fill:var(--night);stroke:var(--brass);stroke-width:3}
.entrance-astrolabe .gem-halo{opacity:.2;animation:entrance-gem 3.2s ease-in-out infinite;animation-delay:var(--d)}
.entrance-astrolabe .ring-outer{animation:entrance-spin 240s linear infinite}
.entrance-astrolabe .ring-gems{animation:entrance-spin 140s linear infinite reverse}
.entrance-astrolabe .ring-inner{animation:entrance-spin 90s linear infinite}
.entrance-astrolabe .ring-rete{animation:entrance-spin 60s linear infinite reverse}

/* Título e menu */
.entrance-hero{position:relative;z-index:2;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;
 padding:72px 24px 96px clamp(24px,8vw,150px);max-width:calc(560px + clamp(24px,8vw,150px))}
.entrance-kicker{display:flex;align-items:center;gap:12px;font:600 .74rem/1 'Cinzel',Georgia,serif;letter-spacing:.32em;text-transform:uppercase;color:var(--celeste);
 animation:entrance-rise .9s .2s both}
.entrance-kicker i{width:6px;height:6px;transform:rotate(45deg);background:var(--brass)}
.entrance-logo{margin:22px 0 0;display:flex;flex-direction:column;align-items:flex-start;line-height:.95;font-family:'Cinzel',Georgia,serif;font-weight:700}
.entrance-logo-main{font-size:clamp(2.9rem,6.6vw,5.9rem);letter-spacing:.05em;text-transform:uppercase;
 background:linear-gradient(100deg,#a8773a 0%,#e9c27a 22%,#fff6dd 30%,#f0c97c 38%,#b98a45 60%,#e9c27a 100%);background-size:260% 100%;
 -webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 2px 0 rgba(0,0,0,.5)) drop-shadow(0 0 26px rgba(243,199,122,.22));
 animation:entrance-logo-in 1.4s cubic-bezier(.2,.7,.2,1) both,entrance-shine 9s 2s ease-in-out infinite}
.entrance-logo-main:last-child{animation-delay:.25s,2.4s}
.entrance-logo-of{display:flex;align-items:center;gap:14px;margin:.18em 0 .12em .2em;font-size:clamp(1rem,1.8vw,1.35rem);letter-spacing:.4em;color:var(--brass);text-transform:uppercase;animation:entrance-rise 1s .45s both}
.entrance-logo-of i{display:block;height:1px;width:clamp(40px,6vw,90px);background:linear-gradient(90deg,transparent,var(--brass))}
.entrance-logo-of i:last-child{background:linear-gradient(90deg,var(--brass),transparent)}

.entrance-menu{margin-top:44px;display:grid;gap:14px;max-width:440px}
.entrance-choice{
 --cut:14px;position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;
 padding:14px 20px 14px 16px;text-align:left;color:var(--ink);border:0;border-radius:0;cursor:pointer;
 background:linear-gradient(135deg,rgba(217,180,106,.7),rgba(141,98,48,.55) 50%,rgba(217,180,106,.6));
 clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut));
 transition:transform .25s cubic-bezier(.2,.7,.2,1),filter .25s;animation:entrance-slide .8s both}
.entrance-choice:nth-child(1){animation-delay:.9s}.entrance-choice:nth-child(2){animation-delay:1.02s}.entrance-choice:nth-child(3){animation-delay:1.14s}
.entrance-choice::before{content:'';position:absolute;inset:1px;z-index:-1;clip-path:inherit;background:linear-gradient(180deg,rgba(20,30,62,.94),rgba(9,14,32,.96))}
.entrance-choice::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(255,240,205,.16) 45%,transparent 60%);transform:translateX(-120%);transition:transform .7s ease}
.entrance-choice:hover,.entrance-choice:focus-visible{transform:translateX(6px);filter:drop-shadow(0 0 18px rgba(243,199,122,.28));background:linear-gradient(135deg,var(--brass-hi),var(--brass) 50%,var(--brass-hi))}
.entrance-choice:hover::after,.entrance-choice:focus-visible::after{transform:translateX(120%)}
.entrance-choice:focus-visible{outline:2px solid var(--celeste);outline-offset:4px}
.entrance-choice-gem{width:40px;height:40px;display:grid;place-items:center;position:relative;color:var(--brass-hi)}
.entrance-choice-gem::before{content:'';position:absolute;inset:6px;transform:rotate(45deg);border:1px solid var(--brass);background:radial-gradient(circle at 35% 30%,rgba(156,200,255,.35),rgba(10,19,48,.9) 70%);transition:box-shadow .25s}
.entrance-choice:hover .entrance-choice-gem::before{box-shadow:0 0 14px rgba(156,200,255,.55)}
.entrance-choice-gem svg{position:relative;width:18px;height:18px}
.entrance-choice-text{display:grid;gap:2px;min-width:0}
.entrance-choice-text strong{font:700 1.02rem/1.2 'Cinzel',Georgia,serif;letter-spacing:.06em}
.entrance-choice-text small{color:var(--mist);font-size:.82rem}
.entrance-choice-arrow{font:300 1.8rem/1 Georgia,serif;color:var(--brass);transition:transform .25s}
.entrance-choice:hover .entrance-choice-arrow{transform:translateX(4px)}
.entrance-choice.primary::before{background:linear-gradient(180deg,#e6c27c,#b0813f)}
.entrance-choice.primary{color:#1b1206}
.entrance-choice.primary .entrance-choice-text small{color:#3d2a10}
.entrance-choice.primary .entrance-choice-arrow{color:#2a1b08}
.entrance-choice.primary .entrance-choice-gem{color:#fff4d8}
.entrance-choice.primary .entrance-choice-gem::before{border-color:#4a3112;background:radial-gradient(circle at 35% 30%,#3c5ea8,#0d1736 70%)}

.entrance-seal{position:absolute;z-index:3;left:clamp(24px,8vw,150px);bottom:26px;display:flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;
 background:rgba(9,14,32,.66);border:1px solid rgba(255,178,122,.35);color:#ffcfa3;font:600 .72rem/1 'Cinzel',Georgia,serif;letter-spacing:.14em;text-transform:uppercase;
 backdrop-filter:blur(6px);animation:entrance-rise 1s 1.4s both}
.entrance-seal span{color:var(--ember);font-size:.6rem}
.entrance-seal:hover{background:rgba(30,20,20,.8);border-color:var(--ember)}
.entrance-seal:focus-visible{outline:2px solid var(--celeste);outline-offset:3px}

/* Janelas modais */
.entrance-dialog{padding:0;border:0;background:transparent;width:min(480px,calc(100vw - 32px));max-height:none;overflow:visible;color:var(--ink);font:15px/1.5 system-ui,'Segoe UI',sans-serif;
 --brass:#d9b46a;--brass-hi:#f6dc9c;--mist:#9ba8c8;--celeste:#9cc8ff;--ink:#eef1fb}
.entrance-dialog[open]{animation:entrance-dialog-in .32s cubic-bezier(.2,.8,.2,1)}
.entrance-dialog.closing{animation:entrance-dialog-out .18s ease-in forwards}
.entrance-dialog::backdrop{background:radial-gradient(ellipse at center,rgba(5,9,19,.35),rgba(3,5,12,.7));backdrop-filter:blur(2px)}
.entrance-dialog.closing::backdrop{opacity:0;transition:opacity .18s}
.entrance-frame{position:relative;margin-top:30px;padding:46px 34px 30px;max-height:calc(100dvh - 60px);overflow:auto;
 background:linear-gradient(180deg,rgba(18,28,60,.97),rgba(8,13,30,.98));border:1px solid rgba(217,180,106,.55);border-radius:4px;
 box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 6px rgba(9,14,32,.6),0 0 0 7px rgba(217,180,106,.18),inset 0 1px 0 rgba(255,240,205,.08)}
.entrance-frame::before,.entrance-frame::after{content:'';position:absolute;width:26px;height:26px;border:2px solid var(--brass);pointer-events:none}
.entrance-frame::before{top:8px;left:8px;border-right:0;border-bottom:0}
.entrance-frame::after{bottom:8px;right:8px;border-left:0;border-top:0}
.entrance-medallion{position:absolute;z-index:1;left:50%;top:0;margin-left:-30px;width:60px;height:60px;border-radius:50%;
 background:radial-gradient(circle,#0a1330 52%,transparent 53%),conic-gradient(from 0deg,var(--brass),var(--brass-hi),#8d6230,var(--brass),var(--brass-hi),#8d6230,var(--brass));
 box-shadow:0 0 0 4px rgba(8,13,30,.98),0 0 24px rgba(243,199,122,.35);animation:entrance-spin 18s linear infinite}
.entrance-medallion::after{content:'';position:absolute;inset:22px;transform:rotate(45deg);background:var(--celeste);box-shadow:0 0 12px var(--celeste)}
.entrance-close{position:absolute;top:10px;right:12px;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mist);font:300 1.6rem/1 Georgia,serif;cursor:pointer}
.entrance-close:hover{background:rgba(255,255,255,.06);color:var(--ink)}
.entrance-form{display:grid;gap:14px}
.entrance-eyebrow{margin:0;text-align:center;font:600 .7rem/1 'Cinzel',Georgia,serif;letter-spacing:.3em;text-transform:uppercase;color:var(--celeste)}
.entrance-form h2{margin:-4px 0 4px;text-align:center;font:700 1.6rem/1.2 'Cinzel',Georgia,serif;letter-spacing:.04em;color:var(--brass-hi);padding:0;border:0}
.entrance-lead{margin:0 0 4px;text-align:center;color:var(--mist);font-size:.92rem}
.entrance-field{display:grid;gap:6px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mist)}
.entrance-field input{width:100%;padding:.75rem .9rem;border:1px solid rgba(155,168,200,.28);border-radius:3px;background:rgba(4,8,20,.7);color:var(--ink);
 font:15px/1.3 system-ui,'Segoe UI',sans-serif;letter-spacing:0;text-transform:none;transition:border-color .2s,box-shadow .2s}
.entrance-field input:hover{border-color:rgba(217,180,106,.5)}
.entrance-field input:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px rgba(217,180,106,.18)}
.entrance-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.entrance-action{--cut:10px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:6px;padding:.85rem 1rem;border:0;border-radius:0;
 clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut));
 background:linear-gradient(180deg,#f0d08e,#c4924a 55%,#a7743a);color:#1b1206;font:700 .95rem/1 'Cinzel',Georgia,serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;
 transition:filter .2s,transform .2s}
.entrance-action:hover{filter:brightness(1.1) drop-shadow(0 0 12px rgba(243,199,122,.4));background:linear-gradient(180deg,#f0d08e,#c4924a 55%,#a7743a)}
.entrance-action:active{transform:translateY(1px)}
.entrance-action:focus-visible{outline:2px solid var(--celeste);outline-offset:3px}
.entrance-action:disabled{opacity:.6;cursor:wait}
.entrance-action svg{width:18px;height:18px}
.entrance-status:empty{display:none}
.entrance-status{display:grid;gap:8px}
.entrance-error{margin:0;padding:.65rem .8rem;border-left:3px solid #ff8f84;background:rgba(255,100,90,.1);color:#ffc2bb;font-size:.9rem}
.entrance-note{margin:0;padding:.65rem .8rem;border-left:3px solid var(--celeste);background:rgba(156,200,255,.08);color:#d6e6ff;font-size:.9rem}
.entrance-warning{margin:0;padding:.75rem .9rem;border:1px solid rgba(255,178,122,.3);background:rgba(255,150,80,.08);color:#ffd9b8;font-size:.86rem;border-radius:3px}
.entrance-small{margin:0;color:var(--mist);font-size:.82rem}

/* Animações */
@keyframes entrance-spin{to{transform:rotate(360deg)}}
@keyframes entrance-gem{50%{opacity:.5}}
@keyframes entrance-shine{0%,55%{background-position:100% 0}85%,100%{background-position:0 0}}
@keyframes entrance-logo-in{from{opacity:0;filter:blur(12px);letter-spacing:.28em}to{opacity:1}}
@keyframes entrance-rise{from{opacity:0;transform:translateY(14px)}}
@keyframes entrance-slide{from{opacity:0;transform:translateX(-24px)}}
@keyframes entrance-art-in{from{opacity:0;transform:scale(1.12)}}
@keyframes entrance-astrolabe-in{from{opacity:0;scale:.86}}
@keyframes entrance-dialog-in{from{opacity:0;transform:translateY(16px) scale(.96)}}
@keyframes entrance-dialog-out{to{opacity:0;transform:translateY(8px) scale(.97)}}

@media (max-width:860px){
 .entrance-art{width:100%;right:0;opacity:.42;-webkit-mask-image:linear-gradient(0deg,transparent 10%,#000 70%);mask-image:linear-gradient(0deg,transparent 10%,#000 70%);mask-composite:add;-webkit-mask-composite:source-over}
 .entrance-shade{background:linear-gradient(180deg,rgba(5,9,19,.35),rgba(5,9,19,.85) 70%)}
 .entrance-astrolabe{width:150vw;left:50%;top:30%;transform:translate(-50%,-50%);opacity:.4}
 .entrance-hero{padding:56px 16px 110px;max-width:none}
 .entrance-menu{max-width:none}
 .entrance-seal{left:16px;right:16px;justify-content:center;font-size:.62rem;letter-spacing:.08em}
 .entrance-pair{grid-template-columns:1fr}
 .entrance-frame{padding:42px 20px 24px}
}
@media (prefers-reduced-motion:reduce){
 .entrance *,.entrance *::before,.entrance *::after,.entrance,.entrance-dialog,.entrance-dialog *{animation:none!important;transition:none!important}
}
