/* Country & Glory: a single, standalone login composition. */
body[data-auth="0"]{margin:0;min-width:0;min-height:100svh;background:#08131b;color:#efe8d7;overflow-x:hidden;font-family:Arial,sans-serif}
body[data-auth="0"]:before,body[data-auth="0"]:after,body[data-auth="0"]>.masthead,body[data-auth="0"]>footer{display:none!important}
body[data-auth="0"] *,body[data-auth="0"] *:before,body[data-auth="0"] *:after{box-sizing:border-box}
.gate-screen{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:100svh;padding:clamp(28px,5vh,60px) 0 0;margin:0;width:100%;background:#08131b}
.gate-screen:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#07121b10 0%,transparent 55%,#08131b88 85%,#08131b 100%),url('/assets/kingdom-gate-v13.webp') center 48%/cover no-repeat}
.gate-title{margin:0 auto;text-align:center;padding:0 20px;max-width:1200px;text-shadow:0 3px 20px #0008}
.gate-title>p{margin:0 0 16px;color:#f0d494;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.32em}
.gate-title h1{margin:0;color:#ebc567;font:700 clamp(44px,6.2vw,104px)/1.04 Georgia,serif;letter-spacing:-.035em;text-shadow:0 2px 0 #654722,0 7px 30px #0008}
@supports(background-clip:text){.gate-title h1{background:linear-gradient(180deg,#fff0bd 8%,#e7bd60 50%,#ad7930 100%);background-clip:text;color:transparent}}
.gate-title h1 i{font-style:normal;font-size:.7em;vertical-align:8%;padding:0 .06em}
.gate-title h2{margin:17px 0 0;color:#e7e3d8;font:400 clamp(15px,1.3vw,20px)/1.5 Georgia,serif}
.gate-access{position:relative;margin-top:clamp(240px,39vh,600px);padding:0 max(24px,calc((100% - 1100px)/2)) 23px;background:linear-gradient(180deg,#08131b00,#08131bef 32%,#08131b);width:100%;border:0;box-shadow:none}
.gate-tabs{display:flex;justify-content:center;gap:12px;margin:0 0 20px;padding:0;border:0;background:none}
.gate-tabs button{min-width:160px;min-height:42px;padding:10px 22px;border:1px solid #d2b36945;border-radius:0;background:#0a1720d9;color:#aabac4;font:700 11px/1.2 Arial,sans-serif;letter-spacing:.13em;box-shadow:none;cursor:pointer}
.gate-tabs button.selected{background:#a17c282b;border-color:#c3a15b;color:#f7d687}
.gate-tabs button:hover{background:#243440;color:#f7d687}
.gate-access #auth-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 245px;align-items:end;gap:20px;margin:0;padding:22px 0 0;border:0;border-top:1px solid #a78e5659;background:none;box-shadow:none}
.gate-access #auth-form>label,.gate-access .password-field{display:block;margin:0;min-width:0;color:#c1cbd0;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.13em}
.gate-access #auth-form>label>span,.gate-access .password-field>label{display:block;margin:0 0 8px;color:#c1cbd0;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.13em}
.gate-access #auth-form label b{margin-left:5px;color:#84959e;font:400 9px Arial,sans-serif}
.gate-access #auth-form input{display:block;margin:0;width:100%;height:52px;padding:0 16px;border:1px solid #617584;border-radius:0;background:#0b1923e8;color:#f7f0de;font:400 16px Arial,sans-serif;box-shadow:inset 0 2px 8px #0003}
.gate-access #auth-form input::placeholder{color:#91a1aa;opacity:1}
.gate-access .password-control{position:relative}
.gate-access #auth-form .password-control input{padding-right:72px}
.gate-access #auth-form .password-toggle{position:absolute;right:1px;top:1px;width:62px;height:50px;margin:0;padding:0;border:0;border-left:1px solid #61758455;border-radius:0;background:transparent;color:#dec27f;font:700 10px Arial,sans-serif;letter-spacing:.06em;cursor:pointer;box-shadow:none}
.gate-access #auth-submit{width:100%;height:52px;margin:0;padding:0 20px;border:1px solid #f1d68e;border-radius:0;background:linear-gradient(110deg,#b88b36,#edcb79 48%,#c69b49);color:#20180b;font:800 12px Arial,sans-serif;letter-spacing:.14em;box-shadow:0 5px 20px #0006;cursor:pointer}
.gate-access #auth-submit:hover{background:linear-gradient(110deg,#caa044,#f8dd94 48%,#ddb45b)}
.gate-access button:focus-visible,.gate-access input:focus-visible{outline:2px solid #ffe1a1;outline-offset:3px}
.gate-access button:disabled{cursor:wait;opacity:.65}
.gate-access #auth-error{grid-column:1/-1;position:static;margin:0;padding:12px 15px;border:1px solid #b16d5d;background:#42211fb3;color:#ffcdc2;font:400 14px/1.6 Arial,sans-serif;overflow-wrap:anywhere}
.gate-access #auth-error:empty{display:none}
.gate-access .beta-note{margin:18px 0 0;text-align:center;color:#9eaeb6;font:400 11px/1.5 Arial,sans-serif}
.gate-access [hidden]{display:none!important}
.gate-access .password-field>small{display:block;margin-top:7px;color:#9eaeb6;font:400 11px/1.4 Arial,sans-serif;letter-spacing:0}
.gate-access #auth-form:has(.register-only:not([hidden])){grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;max-width:880px;margin:auto;gap:18px 24px}
.gate-access #auth-form:has(.register-only:not([hidden])) #auth-submit{grid-column:1/-1;justify-self:center;width:min(360px,100%)}
.gate-screen:has(.register-only:not([hidden])) .gate-access{margin-top:clamp(170px,28vh,400px)}
.gate-access input:-webkit-autofill{-webkit-text-fill-color:#f3ead5;box-shadow:inset 0 0 0 100px #172b38!important}
.battle-atmosphere{position:absolute;inset:25% 0 20%;z-index:-1;pointer-events:none;overflow:hidden}
.battle-atmosphere:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 68%,#ffba57aa 0 1px,transparent 3px),radial-gradient(circle at 77% 74%,#ffd79780 0 1px,transparent 3px),radial-gradient(circle at 32% 89%,#ffab4670 0 1px,transparent 3px);animation:gate-embers 17s linear infinite}
@keyframes gate-embers{0%{transform:translateY(35px);opacity:0}30%{opacity:.7}80%{opacity:.4}100%{transform:translateY(-65px);opacity:0}}
@media(prefers-reduced-motion:reduce){.battle-atmosphere:before{animation:none;opacity:.3}}
@media(min-width:1600px){.gate-screen:before{background-position:center 52%}.gate-access{padding-bottom:30px}}
@media(max-width:900px){.gate-access #auth-form{grid-template-columns:repeat(2,minmax(0,1fr))}.gate-access #auth-submit{grid-column:1/-1;max-width:360px;justify-self:center}.gate-access{margin-top:270px;padding-inline:28px}.gate-screen:before{background-position:center top}.gate-title h1{font-size:clamp(42px,7.5vw,68px)}}
@media(max-width:600px){.gate-screen{padding-top:28px}.gate-screen:before{background-size:auto 600px;background-position:center 0;background-repeat:no-repeat}.gate-title{padding:0 16px}.gate-title>p{font-size:8px;margin-bottom:12px}.gate-title h1{font-size:clamp(38px,10vw,57px)}.gate-title h2{font-size:16px;max-width:340px;margin:14px auto 0}.gate-access,.gate-screen:has(.register-only:not([hidden])) .gate-access{margin-top:245px;padding:0 20px 25px;background:linear-gradient(180deg,transparent,#08131b 75px)}.gate-tabs{gap:8px;margin-bottom:16px}.gate-tabs button{min-width:0;flex:1;max-width:190px;padding:12px 8px;font-size:10px}.gate-access #auth-form,.gate-access #auth-form:has(.register-only:not([hidden])){grid-template-columns:1fr;gap:18px;padding-top:18px}.gate-access #auth-submit{max-width:none;width:100%}.gate-access .beta-note{font-size:11px}}
@media(max-height:600px) and (min-width:901px){.gate-screen{padding-top:22px}.gate-title h1{font-size:58px}.gate-access{margin-top:180px}}
.gate-title h1{background:none;color:#f2d184;text-shadow:0 2px 1px #61431c,0 4px 18px #0009}.gate-title h2{display:table;padding:5px 16px;margin:14px auto 0;background:radial-gradient(ellipse,#09131b99,transparent 75%)}
/* Local contrast behind the title, fading smoothly into the sky. */
.gate-title{position:relative;isolation:isolate}
.gate-title:before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-28px -8% -28px;background:radial-gradient(ellipse at center,#07111bcc 0%,#07111b80 42%,#07111b20 65%,transparent 76%)}
.gate-title h1{color:#ffdc88;text-shadow:0 2px 1px #39230d,0 4px 8px #000c,0 0 28px #0009}
.gate-title h2{color:#fff5df;background:none;font-weight:500;text-shadow:0 2px 3px #000,0 0 12px #000,0 0 24px #0009}
.gate-title>p{color:#ffe3a1;text-shadow:0 1px 3px #000,0 0 10px #000}
@media(max-width:600px){.gate-title:before{inset:-20px -10px -25px}}
.gate-help{display:flex;justify-content:center;gap:26px;margin:18px 0 0}.gate-help button{border:0;background:none;color:#ddc58e;font:400 12px Arial,sans-serif;padding:5px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.gate-dialog{width:min(560px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:24px;border:1px solid #a88e54;border-radius:0;background:#0d1b25;color:#dce4e7;box-shadow:0 20px 80px #000b}.gate-dialog::backdrop{background:#02080dbb}.gate-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.gate-dialog h2{margin:0;color:#f0d08c;font:700 26px Georgia,serif}.gate-dialog header button{border:1px solid #526573;background:none;color:#e1c48c;width:36px;height:36px;font:24px Arial;cursor:pointer}.gate-dialog p,.gate-dialog li{font:400 14px/1.7 Arial,sans-serif}.gate-dialog ol{padding-left:22px}.gate-dialog li{margin-bottom:16px}.gate-dialog li strong{color:#efd493}.gate-dialog form{display:grid;gap:16px;background:none;border:0;padding:0}.gate-dialog label{display:grid;gap:8px;font:700 11px Arial,sans-serif;color:#b9c8cf}.gate-dialog input{width:100%;height:50px;border:1px solid #647884;background:#07131c;color:#fff;padding:12px;font:16px Arial,sans-serif}.gate-dialog form>button{min-height:48px;border:1px solid #e7ca80;background:#d8b461;color:#20180c;font:800 11px Arial,sans-serif;cursor:pointer}.gate-dialog [hidden]{display:none!important}.gate-dialog [data-recovery-status]:empty{display:none}.gate-dialog [data-recovery-status]{margin:0;overflow-wrap:anywhere;color:#f0d08c}.gate-dialog button:focus-visible,.gate-dialog input:focus-visible{outline:2px solid #ffe1a1;outline-offset:3px}
