/* Wickwyrd sign-in page: main-menu painting behind a layered umber card, lantern-gold accents, candlelight glow. */
body.login-page{--accent:#f0b24e;--lf-gold-1:#fff1c2;--lf-gold-2:#f3c25a;--lf-gold-3:#c7801f;--lf-ember:#d9622b;--lf-oxblood:#6e1f1a;--lf-parch:#f1e3c6;--lf-umber:#1c140f;--lf-char:#120d0a;
  --lf-glow:0 0 0 1px rgba(240,178,78,.6),0 0 16px rgba(255,186,90,.4),0 0 40px rgba(217,98,43,.22);
  margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  box-sizing:border-box;background:var(--lf-char);color:var(--lf-parch);font:16px/1.5 'Lora',Georgia,serif;overflow-x:hidden}
.lg-art{position:fixed;inset:0;background:#0d0906 center/cover no-repeat;transform:scale(1.04);animation:lgDrift 40s ease-in-out infinite alternate;z-index:0;filter:sepia(.25) saturate(1.1)}
@keyframes lgDrift{to{transform:scale(1.1) translate(-1%,-1%)}}
@media (prefers-reduced-motion:reduce){.lg-art{animation:none}.lg-logo{animation:none!important}}
.lg-veil{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 50% 40%,rgba(255,170,70,.10) 0,rgba(20,12,8,.55) 50%,rgba(12,8,6,.94) 100%),linear-gradient(180deg,rgba(18,10,6,.25),rgba(18,10,6,.7))}
.lg-card{position:relative;z-index:1;width:100%;max-width:420px;box-sizing:border-box;padding:28px 30px 22px;border-radius:22px;
  background:linear-gradient(170deg,rgba(43,30,21,.86),rgba(26,18,13,.9) 55%,rgba(20,13,10,.94));backdrop-filter:blur(12px) saturate(1.15);-webkit-backdrop-filter:blur(12px) saturate(1.15);
  border:1px solid rgba(199,128,31,.45);box-shadow:inset 0 1px 0 rgba(255,225,160,.12),0 18px 50px rgba(0,0,0,.6),0 0 0 6px rgba(28,19,13,.55),0 0 60px rgba(255,160,60,.08)}
.lg-card::before{content:"";position:absolute;inset:7px;border-radius:16px;border:1px solid rgba(240,178,78,.18);pointer-events:none}
.lg-head{text-align:center;margin-bottom:18px}
.lg-logo{display:block;width:92px;height:92px;margin:-4px auto 4px;filter:drop-shadow(0 0 14px rgba(255,180,80,.45)) drop-shadow(0 4px 6px rgba(0,0,0,.5));animation:lfFlicker 5s ease-in-out infinite}
@keyframes lfFlicker{0%,100%{filter:drop-shadow(0 0 14px rgba(255,180,80,.45)) drop-shadow(0 4px 6px rgba(0,0,0,.5))}45%{filter:drop-shadow(0 0 20px rgba(255,190,90,.6)) drop-shadow(0 4px 6px rgba(0,0,0,.5))}60%{filter:drop-shadow(0 0 11px rgba(255,160,70,.4)) drop-shadow(0 4px 6px rgba(0,0,0,.5))}}
.lf-wordmark{font-family:'Cinzel',Georgia,serif;font-weight:700;letter-spacing:.12em;
  background:linear-gradient(180deg,var(--lf-gold-1,#fff1c2) 0%,var(--lf-gold-2,#f3c25a) 48%,var(--lf-gold-3,#b9792a) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 2px 0 rgba(60,28,8,.9)) drop-shadow(0 0 16px rgba(255,170,70,.35))}
.lg-head h1{margin:0;font-size:2.1rem}
.lg-tag{margin:4px 0 0;font-family:'EB Garamond','Lora',serif;font-style:italic;color:#d8c09a;font-size:1.06rem}
.lg-h2{font-family:'Cinzel',serif;text-align:center;margin:0 0 8px;font-size:1.2rem;color:var(--lf-gold-2)}
.lg-tabs{display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(12,8,6,.6);border:1px solid rgba(199,128,31,.3);margin-bottom:16px}
.lg-card .lg-tabs button{flex:1;display:flex;align-items:center;justify-content:center!important;text-align:center!important;padding:0 10px;min-height:44px;border:0;border-radius:999px;background:transparent;color:#c4ab84;font:600 .98rem 'Lora',Georgia,serif;cursor:pointer;transition:background .16s,color .16s,box-shadow .16s}
.lg-card .lg-tabs button:hover{color:var(--lf-parch)}
.lg-card .lg-tabs button.on{background:linear-gradient(180deg,#f6c870,#d98f2e 60%,#a9601a);color:#2a160a;box-shadow:0 1px 0 rgba(255,240,200,.5) inset,0 0 14px rgba(255,170,70,.35)}
.lg-card label{display:block;margin:12px 0;font-size:.9rem;color:#d3ba92;font-weight:600;letter-spacing:.03em}
.lg-card input{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:48px;padding:10px 14px;font:16px 'Lora',Georgia,serif;border-radius:12px;background:rgba(10,7,5,.65);color:var(--lf-parch);border:1px solid rgba(120,82,45,.65);transition:border-color .16s,box-shadow .2s}
.lg-card input:focus{outline:none;border-color:#f0b24e;box-shadow:var(--lf-glow)}
.lg-card .lg-go{width:100%;min-height:50px;margin-top:10px;border-radius:999px!important;font:700 1.04rem 'Cinzel',Georgia,serif;letter-spacing:.08em;color:#2a160a!important;border:1px solid #7a4510!important;
  background:linear-gradient(180deg,#ffd987 0%,#f0b24e 45%,#c9761f 100%)!important;box-shadow:inset 0 1px 0 rgba(255,245,210,.7),0 6px 18px rgba(0,0,0,.45),0 0 22px rgba(255,170,70,.28);transition:box-shadow .2s,transform .08s}
.lg-card .lg-go:hover{box-shadow:inset 0 1px 0 rgba(255,245,210,.7),0 6px 18px rgba(0,0,0,.45),0 0 32px rgba(255,180,80,.5)}
.lg-card .lg-go:active{transform:translateY(1px)}
.lg-card .lg-go:focus-visible,.lg-card .lg-tabs button:focus-visible{outline:none;box-shadow:var(--lf-glow)}
.lg-msg{min-height:1.2em;margin:10px 0 0;color:#ff8a5c;font-size:.92rem;text-align:center}
.lg-note{text-align:center;color:#c4ab84;font-size:.95rem}.lg-note a{color:#f0b24e}
.lg-foot{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(199,128,31,.25);color:#b39b77;font-size:.86rem;text-align:center;line-height:1.45}
.lg-credit{position:relative;z-index:1;margin:14px 0 0;font-size:.72rem;color:rgba(241,227,198,.55);text-align:center;text-shadow:0 1px 3px #000}
@media (max-width:520px){
  body.login-page{justify-content:flex-start;padding-top:max(24px,env(safe-area-inset-top))}
  .lg-card{padding:22px 18px 18px;max-width:none}
  .lg-head h1{font-size:1.8rem}.lg-logo{width:78px;height:78px}
}
.lg-rules{list-style:none;margin:-4px 0 6px;padding:10px 12px;border-radius:12px;background:rgba(10,7,5,.45);border:1px solid rgba(120,82,45,.4);display:grid;gap:4px;font-size:.88rem}
.lg-rules[hidden]{display:none!important}
.lg-rules li{display:flex;align-items:center;gap:8px;color:#a8916d;transition:color .2s}
.lg-rules li::before{content:"";flex:none;width:14px;height:14px;border-radius:50%;border:1.5px solid rgba(199,128,31,.55);box-sizing:border-box;transition:all .2s}
.lg-rules li.ok{color:#f1e3c6}
.lg-rules li.ok::before{border-color:#f0b24e;background:radial-gradient(circle,#fff1c2 0,#f0b24e 55%,#c7801f 100%);box-shadow:0 0 8px rgba(255,180,80,.6)}
.lg-forgot{text-align:center;margin:8px 0 0;font-size:.92rem}.lg-forgot a{color:#f0b24e;text-decoration:none;border-bottom:1px dotted rgba(240,178,78,.5)}
.lg-forgot[hidden]{display:none!important}
.lg-msg.ok{color:#cfe0a4}

/* Wickwyrd full logo in the login header; emblem on the reset page */
.lg-brand{display:block;margin:-12px auto 0}
.lg-brand img{display:block;width:300px;max-width:84%;height:auto;margin:0 auto;animation:wwFlicker 5.5s ease-in-out infinite}
.lg-emblem img{display:block;width:110px;height:110px;margin:-6px auto 4px;animation:wwFlicker 5.5s ease-in-out infinite}
@keyframes wwFlicker{0%,100%{filter:drop-shadow(0 0 16px rgba(255,170,70,.28)) drop-shadow(0 5px 8px rgba(0,0,0,.6))}42%{filter:drop-shadow(0 0 24px rgba(255,186,90,.42)) drop-shadow(0 5px 8px rgba(0,0,0,.6))}58%{filter:drop-shadow(0 0 13px rgba(255,150,60,.24)) drop-shadow(0 5px 8px rgba(0,0,0,.6))}}
@media (prefers-reduced-motion:reduce){.lg-brand img,.lg-emblem img{animation:none}}
@media (max-width:520px){.lg-brand img{width:250px}.lg-emblem img{width:92px;height:92px}}
