#fp{
  --coal:#080a0a; --stone:#1c1a17; --stone-hi:#2a2723; --stone-lo:#100f0d;
  --ivory:#ece0c6; --muted:#d8cbae; --gold:#d6a84e; --gold-bright:#f0c872; --danger:#e2958a;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--vvh:100dvh; --t:0; --panel:0;
}
#fp{position:fixed;left:0;right:0;top:0;height:var(--vvh,100dvh);z-index:15;pointer-events:none;font-family:'Kurale',Georgia,serif;font-size:17px;line-height:1.4;color:var(--ivory)}
#fp *{box-sizing:border-box}
#fp button,#fp input{font:inherit;color:inherit}
#fp .plate{position:absolute;left:calc(50% + 90px);bottom:calc(5vh + env(safe-area-inset-bottom));width:min(430px,calc(100% - 32px));
  max-height:calc(var(--vvh) - 24px);display:flex;flex-direction:column;
  transform:translate(-50%,calc((1 - var(--panel))*60px));opacity:clamp(0,calc((var(--panel) - .35)*6),1);
  pointer-events:none;visibility:hidden;
}
#fp .plate::before{content:'';position:absolute;inset:14px 8px 4px;border-radius:26px;z-index:-1;pointer-events:none;box-shadow:0 20px 34px 6px rgba(0,0,0,.62),0 0 44px 4px rgba(255,150,60,.08)}   
#fp .stone{position:absolute;inset:0;
  clip-path:polygon(0 14px,7px 5px,4% 0,27% 6px,52% 0,79% 5px,96% 0,100% 11px,calc(100% - 5px) 38%,100% 66%,calc(100% - 6px) 100%,88% calc(100% - 7px),74% calc(100% - 2px),64% calc(100% - 8px),47% calc(100% - 3px),31% 100%,18% calc(100% - 6px),5px calc(100% - 3px),0 84%,6px 48%);
  background:
    linear-gradient(100deg,rgba(255,140,50,.24),rgba(255,140,50,.05) 36%,transparent 60%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='620' preserveAspectRatio='none'%3E%3Cpath d='M5 0 L9 60 L3 120 L7 170' fill='none' stroke='%23000' stroke-opacity='.7' stroke-width='2'/%3E%3Cpath d='M6 0 L10 60 L4 120 L8 170' fill='none' stroke='%23ffe9c0' stroke-opacity='.18' stroke-width='1'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat,
    url(/assets/landing/plate/stone-768.webp?v=cc8a32be) 30% 20%/620px 620px;
  box-shadow:inset 4px 4px 7px rgba(255,215,160,.16),inset -4px -4px 7px rgba(0,0,0,.6),inset 0 0 38px rgba(0,0,0,.55)}
#fp .stone::after{content:'';position:absolute;inset:20px;border-radius:30px;background:rgba(9,8,7,.62);box-shadow:0 0 26px 14px rgba(9,8,7,.62)}
#fp .plate::after{content:'';position:absolute;left:-12%;right:-1%;bottom:-24px;height:46px;pointer-events:none;z-index:-1;
  background:
   radial-gradient(ellipse 55% 60% at 42% 40%,rgba(0,0,0,.85),transparent 72%)}
#fp .plate{visibility:visible;pointer-events:auto}
#fp .plate__scroll{position:relative;opacity:clamp(0,calc((var(--panel) - .35)*6),1);overflow-y:auto;overscroll-behavior:contain;padding:28px 28px 24px;scrollbar-width:thin;scrollbar-color:#6a5d48 transparent}
#fp .lang-switch{position:absolute;right:16px;top:12px;display:flex;gap:2px}
#fp .lang-switch button{min-width:44px;min-height:44px;background:none;border:0;color:var(--muted);cursor:pointer;letter-spacing:.06em;border-radius:6px}
#fp .lang-switch button.is-active{color:var(--gold-bright);text-decoration:underline;text-underline-offset:5px}
#fp .auth__kicker{margin:2px 0 4px;font-size:1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-bright);}
#fp .auth__title{margin:0 0 6px;font:400 clamp(1.7rem,6vw,2.1rem)/1.1 'Monomakh','Kurale',serif;color:#cbbb98;
  text-shadow:0 -2px 1px rgba(0,0,0,.9),0 1px 0 rgba(255,225,170,.35),0 0 1px rgba(0,0,0,.6)}
#fp .auth__lead{margin:0 0 16px;color:var(--muted);font-size:1rem}
#fp .method-tabs{display:flex;gap:6px;margin-bottom:14px}
#fp .method-tab{flex:1;min-height:46px;background:rgba(0,0,0,.28);border:1px solid rgba(0,0,0,.65);border-radius:6px;cursor:pointer;color:var(--muted);
  box-shadow:inset 0 1px 0 rgba(255,235,200,.06)}
#fp .method-tab.is-active{color:#0a0600;font-weight:700;background:var(--noise),#b8914a;border:2px solid #2b1d08;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(255,226,160,.3),inset 0 -3px 0 rgba(0,0,0,.28)}
#fp .method[hidden]{display:none}
#fp .field{display:block;margin-bottom:12px}
#fp .field-label{display:block;margin-bottom:5px;color:var(--muted);font-size:1rem}
#fp input:not([type=checkbox]){width:100%;min-height:48px;padding:10px 14px;border-radius:3px;
  background:#0c0b09;border:1px solid #000;color:var(--ivory);font-size:1.05rem;
  box-shadow:inset 0 3px 7px rgba(0,0,0,.85),0 1px 0 rgba(255,235,200,.1)}
#fp input::placeholder{color:#a79a82;opacity:1}
#fp .password-field{position:relative;display:block}
#fp .password-field input{padding-right:104px}
#fp .reveal{position:absolute;right:4px;top:4px;bottom:4px;min-width:92px;background:none;border:0;border-radius:5px;color:var(--gold-bright);cursor:pointer}
#fp .otp{display:flex;gap:8px;margin:6px 0 14px}
#fp .otp-input{text-align:center;padding:10px 0!important;font-size:1.3rem!important}
#fp .primary-action{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;margin-top:6px;cursor:pointer;
  border-radius:3px;border:2px solid #2b1d08;color:#0a0600;font-size:1.1rem;font-weight:700;
  background:linear-gradient(180deg,rgba(255,235,190,.07),rgba(0,0,0,.12)),var(--noise),#b8914a;
  box-shadow:inset 0 0 0 1px rgba(255,226,160,.3),inset 0 -3px 0 rgba(0,0,0,.28),0 2px 0 rgba(0,0,0,.6)}
#fp .primary-action:hover{filter:brightness(1.07)}
#fp .form-message{min-height:0;margin:6px 0 0;color:var(--danger);font-size:1rem}
#fp .auth-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-top:6px}
#fp .auth-links button{min-height:44px;padding:0 6px;background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#fp .auth-links button:hover{color:var(--gold-bright)}
#fp .test-banner{margin:10px 0 0;padding:10px 12px;border-radius:4px;background:rgba(0,0,0,.16);border:0;box-shadow:inset 0 3px 6px rgba(0,0,0,.7);color:var(--muted);font-size:1rem}
#fp :where(button,#fp input):focus-visible{outline:3px solid var(--gold-bright);outline-offset:2px}
@media (max-width:700px){
  #fp .plate::after{display:none}
  #fp .stone{clip-path:polygon(0 18px,10px 6px,9% 11px,24% 2px,41% 9px,58% 0,76% 8px,91% 2px,calc(100% - 8px) 10px,100% 22px,calc(100% - 2px) 60%,100% 100%,0 100%,3px 55%)}
  #fp .plate{left:50%;bottom:0;width:calc(100% - 14px);transform:translate(-50%,calc((1 - var(--panel))*70px));max-height:calc(var(--vvh) - 12px)}
  #fp .plate__scroll{padding:20px 18px calc(18px + env(safe-area-inset-bottom))}
  #fp .lang-switch{right:6px;top:4px}
  #fp .auth__lead{display:none}
  #fp.kb  .auth__kicker,#fp.kb  .test-banner{display:none}
}

#fp .have-acc{margin:12px 0 8px;color:var(--muted);font-size:1rem}
#fp .otp-hint{margin:0 0 8px;color:var(--muted);font-size:1rem}
#fp #site-login-btn,#fp #login-btn{background:rgba(0,0,0,.3);color:var(--ivory);border:2px solid #6a5d48;box-shadow:none}
#fp #create-primary{margin-top:0}
@media (max-width:700px){#fp .plate{bottom:8px;max-height:calc(var(--vvh) - 74px)}#fp .auth__kicker{margin-top:0}}

body.flat #fp{position:relative;height:auto;z-index:1;pointer-events:auto;padding:24px 0 48px}
body.flat #fp .plate{position:relative;left:auto;bottom:auto;transform:none;margin:0 auto;visibility:visible;pointer-events:auto;opacity:1;max-height:none}
#fp .plate{width:min(480px,calc(100% - 32px))}
#fp .test-banner,#fp .otp-hint,#fp .have-acc,#fp .auth-links button{font-size:1rem}
body.flat #fp{align-self:center;width:100%;text-align:left}


#fp [hidden]{display:none!important}
#fp .back{min-height:44px;margin:0 0 8px;padding:0 6px 0 0;background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#fp .back:hover{color:var(--gold-bright)}
#fp .agreement{display:flex;gap:10px;align-items:flex-start;margin:4px 0 10px;color:var(--muted);font-size:1rem;cursor:pointer}
#fp .agreement input{width:22px;min-height:22px;margin-top:3px;flex:none;accent-color:#b8914a}
#fp .quiet-note{margin:10px 0 0;color:var(--muted);font-size:1rem}
#fp #site-register-btn{margin-top:4px}


#fp .hero-only,#fp .hero-signin,#fp .about-link{display:none}
#fp[data-mode=hero] .hero-only{display:block}
#fp[data-mode=hero] .final-only{display:none}
#fp[data-mode=hero] .plate{left:clamp(24px,4.5vw,96px);bottom:calc(5vh + env(safe-area-inset-bottom));width:clamp(340px,34vw,470px);transform:translate(0,calc((1 - var(--hk,1))*-14px))}
#fp[data-mode=hero] .plate__scroll{overscroll-behavior:auto}
#fp[data-mode=hero] .auth__title.hero-only{font-size:clamp(2.2rem,3vw,2.9rem);margin-bottom:8px}
#fp[data-mode=hero] .auth__lead.hero-only{font-size:1.1rem;margin-bottom:18px}
#fp[data-mode=hero] .about-link{display:block;margin:8px auto 0;min-height:44px;padding:0 8px;background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#fp[data-mode=hero] .about-link:hover{color:var(--gold-bright)}
#fp.intro .plate{animation:fp26in .8s ease .2s backwards}
@keyframes fp26in{from{opacity:0}}
body.hero-plate #s0 .copy{display:none!important}
@media (max-width:700px){
  
  #fp[data-mode=hero] .plate{left:50%;bottom:8px;width:calc(100% - 14px);transform:translate(-50%,calc((1 - var(--hk,1))*-14px));max-height:calc(var(--vvh) - 74px)}
  #fp[data-mode=hero] .auth__title.hero-only{font-size:clamp(1.9rem,8vw,2.3rem)}
  #fp[data-mode=hero] .auth__lead.hero-only{display:block;font-size:1rem;margin-bottom:12px}
  #fp[data-mode=hero]:not(.hx) :is(.have-acc,.method-tabs,.method,.auth-links,.test-banner,.about-link){display:none!important}
  #fp[data-mode=hero]:not(.hx) #create-primary{margin-bottom:10px}
  #fp[data-mode=hero]:not(.hx) .hero-signin{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;cursor:pointer;border-radius:3px;font-size:1.1rem;font-weight:700;color:var(--ivory);background:rgba(0,0,0,.3);border:2px solid #6a5d48}
  #fp[data-mode=hero].hx .about-link{display:none}
  #fp.kb .hero-only.auth__lead{display:none}
}


#fp .recovery-mark{width:52px;height:52px;display:grid;place-items:center;margin:2px auto 12px;border:1px solid #6a5d48;border-radius:50%;color:var(--gold-bright);background:rgba(0,0,0,.28);font-size:24px}
#fp .one-time{margin:0 0 12px;text-align:center;color:var(--muted);font-size:1rem}
#fp .recovery-value{padding:16px 12px;border:1px solid #6a5d48;border-radius:3px;color:var(--gold-bright);background:#0c0b09;box-shadow:inset 0 3px 7px rgba(0,0,0,.85);text-align:center;font-family:'Monomakh','Kurale',serif;font-size:clamp(1rem,4.2vw,1.25rem);letter-spacing:.06em;word-break:break-all;user-select:all}
#fp .copy-action{display:block;min-height:44px;margin:8px auto 0;padding:0 10px;background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#fp .copy-action:hover{color:var(--gold-bright)}
#fp .agreement--code{margin-top:14px}
#fp #recovery-code-continue:disabled{opacity:.5;cursor:default;filter:none}
