/* My Kingdom Keys RC5.8.1 — production authentication experience */
.is-guest{background:#0d1d19;color:#13231e}
.is-guest .app-shell{max-width:none;min-height:100dvh;padding-bottom:0;background:#0d1d19;overflow:visible}
.is-guest .content{padding:0;min-height:100dvh}

.auth-entry{
    --auth-ink:#10231d;
    --auth-forest:#123a2d;
    --auth-forest-deep:#0b231c;
    --auth-leaf:#386d50;
    --auth-gold:#d9b75e;
    --auth-cream:#f6efe0;
    --auth-card:#fffdf8;
    --auth-muted:#66746e;
    position:relative;
    min-height:100dvh;
    overflow:hidden;
    background:
        radial-gradient(circle at 88% 8%,rgba(217,183,94,.18),transparent 28%),
        radial-gradient(circle at 5% 56%,rgba(74,126,91,.26),transparent 34%),
        linear-gradient(155deg,#0a2019 0%,#123529 46%,#173f30 100%);
    color:#fff;
    padding:30px 18px max(30px,env(safe-area-inset-bottom));
}
.auth-entry *{box-sizing:border-box}
.auth-inner{position:relative;z-index:2;width:min(100%,540px);margin:0 auto}
.auth-ambient{position:absolute;border-radius:999px;pointer-events:none;filter:blur(1px)}
.auth-ambient-one{width:430px;height:430px;right:-245px;top:-210px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 54px rgba(255,255,255,.025),0 0 0 108px rgba(255,255,255,.018)}
.auth-ambient-two{width:310px;height:310px;left:-205px;bottom:-80px;background:rgba(217,183,94,.055);border:1px solid rgba(217,183,94,.08)}
.auth-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 72%);pointer-events:none}

.auth-brand-lockup{display:flex;align-items:center;gap:13px;margin-bottom:42px}
.auth-brand-mark{position:relative;display:grid;place-items:center;width:50px;height:50px;border-radius:17px;background:linear-gradient(145deg,#f8e6ac,#d5ad4c);color:#163126;box-shadow:0 16px 36px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.6)}
.auth-brand-mark b{font-family:"Manrope",system-ui,sans-serif;font-size:24px;font-weight:900;line-height:1}
.auth-brand-mark i{position:absolute;width:5px;height:13px;right:-3px;bottom:7px;border-radius:0 3px 3px 0;background:#d9b75e;box-shadow:5px 4px 0 -1px #d9b75e}
.auth-brand-copy{display:flex;flex-direction:column;gap:3px}
.auth-brand-copy strong{font-family:"Manrope",system-ui,sans-serif;font-size:15px;line-height:1;letter-spacing:.09em;font-weight:900;color:#fff}
.auth-brand-copy small{font-size:13px;line-height:1.25;color:rgba(255,255,255,.64)}

.auth-hero-copy{max-width:500px}
.auth-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.14em;color:#e9cc7b}
.auth-kicker::before{content:"";width:24px;height:2px;border-radius:2px;background:#e9cc7b}
.auth-hero-copy h1{font-family:"Manrope",system-ui,sans-serif;font-size:clamp(38px,9vw,57px);line-height:.98;letter-spacing:-.052em;margin:12px 0 15px;color:#fff;font-weight:800}
.auth-hero-copy h1 em{font-style:normal;color:#f0d68e}
.auth-hero-copy p{max-width:465px;margin:0;color:rgba(255,255,255,.75);font-size:17px;line-height:1.58}

.auth-journey{display:flex;align-items:center;gap:8px;margin:25px 0 25px;color:rgba(255,255,255,.68);font-size:11px;font-weight:900;letter-spacing:.09em;white-space:nowrap}
.auth-journey i{height:1px;flex:1;min-width:9px;background:linear-gradient(90deg,rgba(240,214,142,.25),rgba(240,214,142,.7))}

.auth-card{position:relative;background:linear-gradient(180deg,rgba(255,253,248,.99),rgba(248,242,229,.99));color:var(--auth-ink);border:1px solid rgba(255,255,255,.65);border-radius:28px;padding:23px;box-shadow:0 28px 70px rgba(0,0,0,.25),0 3px 12px rgba(0,0,0,.08)}
.auth-card::before{content:"";position:absolute;left:24px;right:24px;top:0;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,transparent,#d9b75e,transparent);opacity:.9}
.auth-card-heading{margin-bottom:18px}
.auth-card-heading>span{display:block;color:#8a7134;font-size:11px;line-height:1.25;font-weight:900;letter-spacing:.1em;margin-bottom:8px}
.auth-card-heading h2{font-family:"Manrope",system-ui,sans-serif;font-size:27px;line-height:1.1;letter-spacing:-.025em;margin:0 0 5px;color:#10231d}
.auth-card-heading p{font-size:15px;line-height:1.45;color:#6b776f;margin:0}

.auth-form-modern{display:grid;gap:14px}
.auth-field{display:grid;gap:7px}
.auth-field>span{font-size:14px;line-height:1.2;font-weight:800;color:#263a32}
.auth-field input{width:100%;min-height:54px;border:1.5px solid #d7d9d0;border-radius:16px;background:#fff;color:#13261f;padding:13px 15px;font-size:16px;line-height:1.2;outline:none;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.auth-field input::placeholder{color:#9aa29d;opacity:1}
.auth-field input:hover{border-color:#b9c1bb}
.auth-field input:focus{border-color:#35694d;box-shadow:0 0 0 4px rgba(53,105,77,.12);background:#fff}
.auth-submit{min-height:56px;width:100%;border:0;border-radius:17px;padding:14px 17px;margin-top:2px;background:linear-gradient(135deg,#123c2e,#1f5a42);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:16px;font-weight:900;cursor:pointer;box-shadow:0 14px 28px rgba(18,60,46,.20);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.auth-submit b{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:rgba(255,255,255,.12);font-size:20px;line-height:1}
.auth-submit:hover{filter:brightness(1.05);box-shadow:0 17px 32px rgba(18,60,46,.26)}
.auth-submit:active{transform:translateY(1px)}
.auth-submit:focus-visible{outline:3px solid #e0bd63;outline-offset:3px}
.auth-error{border:1px solid #e8b8b0;background:#fff0ed;color:#7a2f28;border-radius:14px;padding:11px 13px;font-size:14px;line-height:1.4;font-weight:700}
.auth-switch-modern{text-align:center;color:rgba(255,255,255,.72);font-size:14px;line-height:1.5;margin:19px 0 0}
.auth-switch-modern a{color:#f1d78f;font-weight:900;text-underline-offset:3px}

.auth-register{padding-top:24px;padding-bottom:34px}
.auth-register .auth-brand-lockup{margin-bottom:30px}
.auth-register .auth-hero-copy h1{font-size:clamp(34px,8.4vw,50px)}
.auth-register .auth-journey{margin:20px 0}

@media (min-width:700px){
    .auth-entry{display:flex;align-items:center;padding:44px}
    .auth-inner{width:min(100%,600px)}
    .auth-brand-lockup{margin-bottom:44px}
    .auth-card{padding:28px}
}

@media (max-width:390px){
    .auth-entry{padding-left:15px;padding-right:15px}
    .auth-brand-lockup{margin-bottom:32px}
    .auth-brand-copy small{font-size:12px}
    .auth-hero-copy h1{font-size:36px}
    .auth-hero-copy p{font-size:16px}
    .auth-journey{gap:5px;font-size:10px;letter-spacing:.05em}
    .auth-card{padding:19px;border-radius:24px}
}

@media (prefers-reduced-motion:reduce){
    .auth-submit,.auth-field input{transition:none}
}
