:root{--fehu-gold:#e4c38a}
[hidden]{display:none!important}
.fehu-end{width:min(100%,620px);margin-top:clamp(12px,1.6vh,20px);font-family:Arial,Helvetica,sans-serif;text-shadow:none}
.fehu-join{padding:12px 14px 13px;border:1px solid #e4c38a87;background:rgba(6,13,17,.88);box-shadow:0 14px 38px #0009;backdrop-filter:blur(12px);color:#f4e9d8}
.fehu-join-heading{display:flex;align-items:center;gap:12px}
.fehu-join-heading>div:first-child{flex:1;min-width:0}
.fehu-join-heading h3{margin:0;font:700 clamp(13px,1vw,16px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:.075em;color:#f6e9d4}
.fehu-join-heading p{margin:4px 0 0;color:#d9bd87;font-size:9px;font-weight:700;letter-spacing:.11em}
.fehu-total{flex:none;width:95px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;border-left:1px solid #e4c38a56;color:#eacb96}
.fehu-total strong{font-size:25px;line-height:1}.fehu-total span{font-size:7px;font-weight:800;letter-spacing:.12em;white-space:nowrap}
.fehu-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px}
.fehu-paths button{min-height:37px;padding:7px 9px;border:1px solid #d7b87c8c;background:#1c2524e8;color:#eee2cc;font-size:10px;font-weight:800;letter-spacing:.045em;line-height:1.2;cursor:pointer;transition:background .18s,border-color .18s}
.fehu-paths button:hover,.fehu-paths button.is-selected{background:linear-gradient(110deg,#eed39e,#a87c45);border-color:#f2d7a0;color:#1c1711}
.fehu-form{margin-top:12px;animation:fehu-reveal .28s ease both}
.fehu-form h4{margin:0 0 9px;color:#e8d1a6;font-size:11px;font-weight:700;letter-spacing:.08em}
.fehu-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fehu-field label{display:block;margin-bottom:5px;color:#d9c092;font-size:9px;font-weight:800;letter-spacing:.13em}
.fehu-field input{display:block;width:100%;height:35px;padding:6px 9px;border:1px solid #e2c18b84;border-radius:0;background:#091317;color:#fff4de;font:700 14px Arial,Helvetica,sans-serif;outline:none}
.fehu-field input:focus{border-color:#f3d69c;box-shadow:0 0 0 2px #f3d69c36}
.fehu-field input[aria-invalid="true"]{border-color:#f3a59a}
.fehu-field small{display:block;min-height:12px;margin-top:3px;color:#ffc0b4;font-size:8px;line-height:1.2}
.fehu-form-foot{display:flex;align-items:center;gap:11px;margin-top:3px}
.fehu-continue{min-height:34px;min-width:144px;padding:6px 12px;border:1px solid #ecd09a;background:linear-gradient(110deg,#f1d9aa,#b68a52);color:#1d1810;font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer}
.fehu-continue:hover{filter:brightness(1.1)}.fehu-continue:disabled{opacity:.6;cursor:wait}
.fehu-feedback{margin:0;min-height:20px;color:#eacb96;font-size:9px;line-height:1.3}
.fehu-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px;animation:fehu-reveal .28s ease both}
.fehu-links a{min-height:38px;padding:7px 8px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid #d7b87c9c;background:linear-gradient(135deg,#282920e8,#102022e8);color:#f5e6c9;text-decoration:none;font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1.2;transition:background .18s}
.fehu-links a:hover{background:#dfbf84;color:#161a16}
.fehu-end :focus-visible{outline:2px solid #f5d99d;outline-offset:2px}
@keyframes fehu-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

/* Keep the original scene story and place the shared panel directly below it. */
.cinema.is-finale .story{top:clamp(104px,12vh,150px);transform:none}
.cinema.is-finale .eyebrow{margin-bottom:10px}
.cinema.is-finale .chapter{margin-bottom:6px}
.cinema.is-finale h2{font-size:clamp(42px,3.5vw,62px);line-height:.98;max-width:760px}
.cinema.is-finale .lead{max-width:640px;margin-top:12px;font-size:clamp(13px,.95vw,17px);line-height:1.35}
.kingdoms,.eternal{height:100dvh;min-height:0}
.kingdoms.is-finale .story,.eternal.is-finale .story{position:absolute;top:clamp(105px,12vh,150px);left:clamp(24px,8vw,150px);width:min(700px,55vw);margin:0}
.kingdoms.is-finale .overline{margin:11px 0 6px}
.kingdoms.is-finale h1,.eternal.is-finale h1{font-size:clamp(42px,3.7vw,66px)}
.kingdoms.is-finale .narrative,.eternal.is-finale .text{margin-top:11px;font-size:clamp(13px,.95vw,16px);line-height:1.35}
.kingdoms .actions,.eternal .destinations{display:none!important}
.eternal.is-finale .rune{display:none}
.eternal.is-finale .line{margin:10px 0}
@media(max-height:800px) and (min-width:801px){
 .cinema.is-finale .story,.kingdoms.is-finale .story,.eternal.is-finale .story{top:100px}
 .cinema.is-finale h2{font-size:50px}
 .cinema.is-finale .lead{font-size:13px;line-height:1.3}
 .kingdoms.is-finale h1,.eternal.is-finale h1{font-size:52px}
 .fehu-join{padding:9px 12px}
 .fehu-end{margin-top:9px}
}
@media(max-width:800px){
 html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
 .cinema.is-finale,.kingdoms.is-finale,.eternal.is-finale{height:max(100dvh,760px);min-height:760px}
 .cinema.is-finale .story,.kingdoms.is-finale .story,.eternal.is-finale .story{position:absolute;top:clamp(150px,18vh,180px);left:18px;right:18px;bottom:auto;width:auto;margin:0}
 .cinema.is-finale .eyebrow{margin-bottom:7px}
 .cinema.is-finale .chapter,.kingdoms.is-finale .overline,.eternal.is-finale .chapter{margin-bottom:5px;font-size:8px}
 .cinema.is-finale h2,.kingdoms.is-finale h1,.eternal.is-finale h1{font-size:clamp(30px,8vw,46px);line-height:1}
 .cinema.is-finale .lead,.kingdoms.is-finale .narrative,.eternal.is-finale .text{font-size:clamp(11px,2.8vw,14px);line-height:1.27;margin-top:8px}
 .eternal.is-finale .line{margin:8px 0}
 .fehu-end{margin-top:9px;width:min(100%,600px)}
 .fehu-join{padding:9px 10px}
 .fehu-join-heading h3{font-size:12px}
 .fehu-join-heading p{font-size:8px}
 .fehu-total{width:77px}.fehu-total strong{font-size:20px}.fehu-total span{font-size:6px}
 .fehu-paths{gap:5px;margin-top:8px}
 .fehu-paths button{min-height:35px;padding:5px;font-size:8px}
 .fehu-form{margin-top:9px}.fehu-form h4{font-size:10px;margin-bottom:7px}
 .fehu-field input{height:32px}.fehu-field label{font-size:8px}
 .fehu-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:8px}
 .fehu-links a{min-height:36px;padding:5px 3px;font-size:7px;letter-spacing:.04em}
 .cinema.is-finale .music,.kingdoms.is-finale .music,.eternal.is-finale .sound{top:72px;right:18px;left:auto;bottom:auto}
 .kingdoms.is-finale .music span,.eternal.is-finale .sound span{display:none}
 .kingdoms.is-finale .music,.eternal.is-finale .sound{padding:5px}
 .kingdoms.is-finale .music button,.eternal.is-finale .sound button{padding:6px 8px}
}
@media(max-width:420px){
 .fehu-join-heading h3{font-size:11px}.fehu-join-heading p{font-size:7px;letter-spacing:.06em}
 .fehu-total{width:67px}.fehu-total span{font-size:5px}
 .fehu-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){.cinema.is-finale .music{top:72px;width:200px;padding:4px 5px}.cinema.is-finale .music-info{display:none}.cinema.is-finale .music-buttons button{width:34px;height:28px}}
@media(prefers-reduced-motion:reduce){.fehu-form,.fehu-links{animation:none}.fehu-paths button,.fehu-links a{transition:none}}

/* The conditional form shares the existing finale panel and visual language. */
.fehu-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}
.fehu-identity .fehu-warriors-field{grid-column:1/-1}
.fehu-resources{margin-top:11px;padding-top:10px;border-top:1px solid #e4c38a56;animation:fehu-reveal .28s ease both}
.fehu-resource-lead,.fehu-supply-note{margin:0 0 9px;color:#e4d5bd;font-size:10px;line-height:1.35}
.fehu-resources .fehu-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.fehu-stepper{display:flex;min-width:0}
.fehu-stepper input{min-width:0;text-align:center;padding:5px 2px;appearance:textfield;-moz-appearance:textfield}
.fehu-stepper input::-webkit-outer-spin-button,.fehu-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fehu-stepper button{flex:none;width:31px;border:1px solid #e2c18b84;background:#1c2524;color:#f5d99d;font-size:17px;font-weight:700;cursor:pointer}
.fehu-stepper button:hover{background:#b68a52;color:#111}
.fehu-supplies{margin:5px 0 0;padding:0;border:0}
.fehu-supplies legend{padding:0 0 6px;color:#e8d1a6;font-size:11px;font-weight:700;letter-spacing:.08em}
.fehu-supply-options{display:flex;flex-wrap:wrap;gap:6px}
.fehu-supply-options label{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #e2c18b84;background:#091317;color:#f4e9d8;font-size:10px;cursor:pointer}
.fehu-supply-options input{width:16px;height:16px;margin:0;accent-color:#eacb96;cursor:pointer}
.fehu-supply-note{margin:8px 0}
.fehu-resources .fehu-form-foot{margin-top:7px}
.cinema.is-finale.fehu-form-expanded,.kingdoms.is-finale.fehu-form-expanded,.eternal.is-finale.fehu-form-expanded{height:auto;min-height:100dvh;overflow:visible;padding-bottom:1px}
html:has(body.fehu-join-expanded),body.fehu-join-expanded{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
.cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{position:relative;top:auto;left:auto;right:auto;bottom:auto;transform:none;width:min(720px,calc(100% - 60px));margin:clamp(115px,13vh,160px) 0 155px clamp(24px,8vw,150px)}
@media(max-width:800px){
 .cinema.is-finale.fehu-form-expanded,.kingdoms.is-finale.fehu-form-expanded,.eternal.is-finale.fehu-form-expanded{min-height:100dvh}
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{width:auto;margin:clamp(155px,18vh,190px) 18px 150px}
 .fehu-identity{grid-template-columns:1fr}
 .fehu-identity .fehu-warriors-field{grid-column:auto}
 .fehu-resources .fehu-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
 .fehu-stepper button{width:27px}
}
@media(max-width:420px){.fehu-resources .fehu-fields{grid-template-columns:1fr}.fehu-supply-options{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.fehu-resources{animation:none}}

/* Finale: let the expanded join panel use the viewport instead of reserving
   155px beneath it. Short desktop screens place the story beside the panel. */
@media (min-width:901px) and (min-height:680px){
 html:has(body.fehu-join-expanded),body.fehu-join-expanded{height:100%;min-height:0;overflow:hidden}
 .cinema.is-finale.fehu-form-expanded,.kingdoms.is-finale.fehu-form-expanded,.eternal.is-finale.fehu-form-expanded{height:100dvh;min-height:0;overflow:hidden;padding-bottom:0}
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{margin-bottom:0}
}
@media (min-width:901px) and (min-height:881px){
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{margin-top:clamp(64px,8vh,100px)}
}
@media (min-width:901px) and (min-height:680px) and (max-height:880px){
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{
  --fehu-panel-width:min(620px,55vw);
  position:absolute;top:clamp(88px,13vh,110px);left:clamp(24px,8vw,150px);right:24px;bottom:auto;
  width:auto;min-height:512px;margin:0;padding-left:calc(var(--fehu-panel-width) + 25px);transform:none
 }
 .cinema.is-finale.fehu-form-expanded [data-fehu-entrance],.kingdoms.is-finale.fehu-form-expanded [data-fehu-entrance],.eternal.is-finale.fehu-form-expanded [data-fehu-entrance]{position:absolute;top:0;left:0;width:var(--fehu-panel-width)}
 .cinema.is-finale.fehu-form-expanded .fehu-end,.kingdoms.is-finale.fehu-form-expanded .fehu-end,.eternal.is-finale.fehu-form-expanded .fehu-end{width:var(--fehu-panel-width);margin-top:0}
 .cinema.is-finale.fehu-form-expanded .music{top:auto;bottom:clamp(140px,20vh,175px)}
}
@media (min-width:901px) and (min-height:680px) and (max-height:950px){
 .fehu-form-expanded .fehu-field small:empty{display:none}
 .fehu-form-expanded .fehu-paths{margin-top:8px}
 .fehu-form-expanded .fehu-form{margin-top:8px}
 .fehu-form-expanded .fehu-resources{margin-top:8px;padding-top:7px}
 .fehu-form-expanded .fehu-links{margin-top:6px}
 .fehu-form-expanded .fehu-links a{min-height:32px;padding-block:5px}
}

/* Compact join sheet: all fields stay visible without nested cards. */
.fehu-end{width:min(100%,720px)}
.fehu-join{padding:11px 13px 12px;border:1px solid #d6b477;border-radius:2px;background:rgba(6,13,17,.97);box-shadow:0 15px 38px #000a;color:#f6eee0}
.fehu-join-heading{gap:10px}
.fehu-join-heading h3{font:800 18px/1.12 Arial,Helvetica,sans-serif;letter-spacing:0;color:#fff4df}
.fehu-join-heading p{margin:3px 0 0;color:#eacb95;font-size:10.5px;letter-spacing:0}
.fehu-total{width:83px;min-height:35px;gap:1px;border-left:1px solid #a98a58}
.fehu-total strong{font-size:23px}.fehu-total span{font-size:7.5px;letter-spacing:.04em}
.fehu-paths{gap:8px;margin-top:7px}
.fehu-paths button{min-height:34px;padding:6px 9px;border:1px solid #a88a5a;border-radius:2px;background:#192423;color:#f7efdf;font-size:12px;letter-spacing:0}
.fehu-paths button:hover,.fehu-paths button.is-selected{background:linear-gradient(110deg,#efd5a5,#b68a51);border-color:#f0d49e;color:#1a150e}
.fehu-form{display:block;margin-top:8px}
.fehu-identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;padding:0;border:0;background:transparent}
.fehu-identity::before{display:none;content:none}
.fehu-identity .fehu-warriors-field{grid-column:auto}
.fehu-field label,.fehu-identity .fehu-field label{display:flex;align-items:flex-end;min-height:27px;margin:0 0 4px;color:#efd19c;font-size:12.5px;font-weight:800;line-height:1.13;letter-spacing:0}
.fehu-field input,.fehu-identity .fehu-field input{height:34px;padding:5px 8px;border:1px solid #ae9875;border-radius:2px;background:#0c191d;color:#fff8ec;font-size:15px}
.fehu-field input:focus{border-color:#f1d29a;box-shadow:0 0 0 2px #f1d29a35}
.fehu-field small:empty,.fehu-feedback:empty{display:none}
.fehu-resources{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;min-width:0;margin:8px 0 0;padding:8px 0 0;border:0;border-top:1px solid #91774e;background:transparent}
.fehu-resources h4{grid-column:1/-1;margin:0;color:#f3d6a2;font-size:14px;line-height:1.15;letter-spacing:0}
.fehu-resource-lead,.fehu-supply-note{display:none}
.fehu-resources .fehu-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.fehu-resources .fehu-field label{min-height:0;margin-bottom:3px;font-size:12.5px}
.fehu-stepper input,.fehu-stepper button{height:33px}
.fehu-stepper button{width:29px;border-color:#ae9875}
.fehu-supplies{grid-column:1;margin:0;padding:0;border:0;align-self:end}
.fehu-supplies legend{padding:0 0 4px;color:#efd19c;font-size:12px;letter-spacing:0}
.fehu-supply-options{gap:5px}
.fehu-supply-options label{padding:4px 6px;border:1px solid #ae9875;border-radius:2px;font-size:11px}
.fehu-supply-options input{width:15px;height:15px}
.fehu-resources .fehu-form-foot{grid-column:2;align-self:end;margin:0}
.fehu-continue{min-width:137px;min-height:33px;padding:5px 9px;border-radius:2px;font-size:11.5px;letter-spacing:0}
.fehu-feedback{min-height:0}
.fehu-links{gap:7px;margin-top:7px}
.fehu-links a{min-height:32px;padding:5px 6px;border:1px solid #ae9875;border-radius:2px;font-size:10.5px;letter-spacing:0}
.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity{grid-template-columns:1fr}
.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:9px}
.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field label{min-height:0;margin:0}
@media(min-width:901px) and (min-height:680px) and (max-height:880px){
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{--fehu-panel-width:min(720px,55vw)}
}
@media(max-width:800px){
 .fehu-join{padding:10px}
 .fehu-join-heading h3{font-size:16px}
 .fehu-paths button{font-size:11px}
 .fehu-identity{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fehu-identity .fehu-warriors-field{grid-column:1/-1}
 .fehu-links a{font-size:9px}
}
@media(max-width:520px){
 .fehu-identity{grid-template-columns:1fr}
 .fehu-identity .fehu-warriors-field{grid-column:auto}
 .fehu-resources .fehu-fields{gap:5px}
 .fehu-stepper button{width:24px}
 .fehu-supply-options label{font-size:10px}
}
@media(max-width:420px){
 .fehu-join-heading h3{font-size:15px}
 .fehu-resources .fehu-fields{grid-template-columns:1fr}
 .fehu-resources{grid-template-columns:1fr}
 .fehu-supplies,.fehu-resources .fehu-form-foot{grid-column:1}
 .fehu-links{grid-template-columns:1fr}
}

/* Final join panel: compact rows shared by all three intros. */
.fehu-end,.fehu-end *{box-sizing:border-box}
.fehu-end{width:min(100%,650px)}
.fehu-join{padding:10px 12px 11px}
.fehu-paths{margin-top:7px}
.fehu-form{margin-top:7px}
.fehu-identity{display:grid;grid-template-columns:minmax(0,1fr);gap:5px}
.fehu-identity .fehu-field,
.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){
 display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:5px 9px;min-width:0
}
.fehu-identity .fehu-field label{min-height:0;margin:0;overflow-wrap:anywhere}
.fehu-identity .fehu-field input{min-width:0;width:100%;height:34px}
.fehu-identity .fehu-warriors-field input{width:72px;max-width:100%;justify-self:start}
.fehu-identity .fehu-field small{grid-column:2;margin:0}
.fehu-resources{display:block;min-width:0;margin-top:7px;padding-top:7px}
.fehu-resources h4{margin:0 0 6px}
.fehu-resources .fehu-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.fehu-resources .fehu-field{display:grid;grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:4px 8px;min-width:0}
.fehu-resources .fehu-field label{min-width:0;min-height:0;margin:0}
.fehu-resources .fehu-field small{grid-column:1/-1;margin:0}
.fehu-stepper{width:118px;max-width:100%;justify-self:end}
.fehu-stepper button{width:32px;min-height:34px}
.fehu-stepper input{width:54px;min-width:0;height:34px}
.fehu-supplies{display:block;min-width:0;width:100%;margin-top:6px}
.fehu-supply-options{display:flex;flex-wrap:wrap;gap:5px;min-width:0;max-width:100%}
.fehu-supply-options label{min-width:0;max-width:100%;white-space:normal}
.fehu-status-row{display:flex;justify-content:flex-end;align-items:center;margin:7px 0 3px}
.fehu-status-row .fehu-total{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:5px;width:auto;min-height:0;border:0}
.fehu-status-row .fehu-total strong{font-size:18px;line-height:1}
.fehu-status-row .fehu-total span{font-size:10px;letter-spacing:.03em}
.fehu-resources .fehu-form-foot{display:block;margin:0}
.fehu-continue{display:block;width:100%;min-height:36px}
.fehu-feedback:not(:empty){margin-top:5px}
.fehu-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}
.fehu-links .fehu-explore{grid-column:1/-1;display:flex;gap:7px;min-height:36px}
.fehu-explore.is-locked{border-color:#bc685f;background:linear-gradient(135deg,#3a1b1b,#251719);color:#f4aaa0;cursor:not-allowed}
.fehu-explore.is-unlocked{border-color:#81c794;background:linear-gradient(135deg,#173e2b,#102c25);color:#a6edb8}
.fehu-explore.is-unlocked .fehu-lock{animation:fehu-lock-pulse 2.5s ease-in-out infinite}
.fehu-lock{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex:none}
.fehu-lock svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@keyframes fehu-lock-pulse{0%,100%{opacity:.72;filter:drop-shadow(0 0 0 #81c79400)}50%{opacity:1;filter:drop-shadow(0 0 5px #81c794a0)}}

@media(min-width:901px){
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{margin-left:19px;width:min(700px,calc(100% - 38px))}
 .fehu-links:has(a:nth-child(2):not([hidden])){grid-template-columns:repeat(3,minmax(0,1fr))}
 .fehu-links:has(a:nth-child(2):not([hidden])) .fehu-explore{grid-column:auto}
}
@media(min-width:1200px) and (min-height:680px) and (max-height:880px){
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{
  --fehu-panel-width:min(650px,52vw);left:19px;right:19px;width:auto;margin:0
 }
}
@media(min-width:901px) and (max-width:1199px) and (min-height:680px) and (max-height:880px){
 html:has(body.fehu-join-expanded),body.fehu-join-expanded{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
 .cinema.is-finale.fehu-form-expanded,.kingdoms.is-finale.fehu-form-expanded,.eternal.is-finale.fehu-form-expanded{height:auto;min-height:100dvh;overflow:visible}
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{
  position:relative;top:auto;left:auto;right:auto;bottom:auto;min-height:0;width:min(700px,calc(100% - 38px));
  margin:110px 0 125px 19px;padding-left:0
 }
 .cinema.is-finale.fehu-form-expanded [data-fehu-entrance],.kingdoms.is-finale.fehu-form-expanded [data-fehu-entrance],.eternal.is-finale.fehu-form-expanded [data-fehu-entrance]{position:static;width:auto}
 .cinema.is-finale.fehu-form-expanded .fehu-end,.kingdoms.is-finale.fehu-form-expanded .fehu-end,.eternal.is-finale.fehu-form-expanded .fehu-end{width:min(100%,650px);margin-top:10px}
}
@media(max-width:800px){
 .fehu-end{width:100%}
 .fehu-identity .fehu-field,.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){grid-template-columns:minmax(125px,40%) minmax(0,1fr)}
 .fehu-stepper button{width:32px}
}
@media(max-width:420px){
 .fehu-join{padding:9px}
 .fehu-resources .fehu-fields{grid-template-columns:minmax(0,1fr)}
 .fehu-supply-options{display:flex;flex-wrap:wrap}
 .fehu-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1200px) and (min-height:680px) and (max-height:950px){
 .fehu-join{padding-top:8px;padding-bottom:8px}
 .fehu-paths button{min-height:31px}
 .fehu-identity{gap:3px}
 .fehu-identity .fehu-field input{height:32px}
 .fehu-resources{margin-top:5px;padding-top:5px}
 .fehu-resources h4{margin-bottom:3px}
 .fehu-resources .fehu-fields{gap:2px}
 .fehu-stepper button,.fehu-stepper input{height:31px;min-height:31px}
 .fehu-supplies{margin-top:4px}
 .fehu-status-row{margin-top:4px}
 .fehu-continue{min-height:34px}
 .fehu-links{margin-top:4px}
 .fehu-links .fehu-explore{min-height:33px}
}
@media(prefers-reduced-motion:reduce){.fehu-explore.is-unlocked .fehu-lock{animation:none}}

/* FEHU final join sheet, shared by intro1, intro2 and intro3. */
.fehu-end{width:min(100%,620px);font-family:Arial,Helvetica,sans-serif}
.fehu-join{position:relative;isolation:isolate;min-width:0;padding:15px 17px 13px;border:1px solid #d9b665;border-radius:2px;background:radial-gradient(circle at 16% 12%,#3a3c3b66,transparent 40%),repeating-linear-gradient(132deg,#ffffff05 0 1px,transparent 1px 6px),linear-gradient(145deg,#222627f5,#191d1ff8);box-shadow:inset 0 0 0 3px #171b1de8,inset 0 0 0 4px #c49b4a88,0 18px 40px #000b;color:#e9e9e6}
.fehu-join::before,.fehu-join::after{content:'ᛟ';position:absolute;z-index:1;color:#e4bd68;font:24px/1 Georgia,serif;text-shadow:0 0 5px #000;pointer-events:none}
.fehu-join::before{top:2px;left:5px}.fehu-join::after{right:5px;bottom:2px;transform:rotate(180deg)}
.fehu-discord{display:flex;align-items:center;justify-content:center;gap:17px;min-height:48px;padding:7px 12px;border:1px solid #9296ff;border-radius:7px;background:linear-gradient(145deg,#6264f4,#3732ce);box-shadow:inset 0 1px #ffffff75,0 2px 10px #11115d80;color:#fff;text-decoration:none;font:800 clamp(17px,2.2vw,24px)/1.15 Arial,Helvetica,sans-serif;text-align:center}
.fehu-discord:hover,.fehu-discord:focus-visible{background:linear-gradient(145deg,#7375ff,#4640df);color:#fff}
.fehu-discord svg{width:35px;height:27px;flex:none}
.fehu-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.fehu-paths button{min-width:0;min-height:40px;padding:6px 8px;border:1px solid #a0a6aa;border-radius:4px;background:linear-gradient(#323639,#25292c);color:#ededeb;font:700 13px/1.2 Arial,Helvetica,sans-serif;letter-spacing:0;text-align:center}
.fehu-paths button.is-selected,.fehu-paths button.is-selected:hover{border-color:#ffe2a0;background:linear-gradient(120deg,#f2d995,#c69b4d);color:#171916}
.fehu-form{margin-top:10px}
.fehu-identity{gap:6px}
.fehu-identity .fehu-field,.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){grid-template-columns:minmax(105px,36%) minmax(0,1fr);gap:5px 10px}
.fehu-field label,.fehu-identity .fehu-field label,.fehu-resources .fehu-field label{color:#e8e8e5;font:700 14px/1.2 Arial,Helvetica,sans-serif}
.fehu-field input,.fehu-identity .fehu-field input{height:38px;border:1px solid #90969c;border-radius:4px;background:#292e31;color:#f5f5f3;font-size:15px}
.fehu-identity .fehu-warriors-field input{width:78px;text-align:center}
.fehu-resources{margin-top:13px;padding-top:12px;border-top:1px solid #d8b461}
.fehu-resources h4{margin-bottom:8px;color:#f4d687;font:800 18px/1.2 Arial,Helvetica,sans-serif}
.fehu-resources .fehu-fields{gap:6px}
.fehu-resources .fehu-field{grid-template-columns:minmax(0,1fr) minmax(138px,40%)}
.fehu-stepper{width:100%;max-width:190px;justify-self:end}
.fehu-stepper button,.fehu-stepper input{height:37px;min-height:37px;border-color:#8e9599;background:#292e31;color:#f1d17d;font-size:19px}
.fehu-stepper button{width:39px}
.fehu-stepper input{width:calc(100% - 78px);color:#f5f5f3;text-align:center;font-size:17px}
.fehu-supplies{margin-top:9px}
.fehu-supplies legend{display:none}
.fehu-supply-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.fehu-supply-options label{display:flex;align-items:center;justify-content:center;min-height:36px;padding:5px 6px;border:1px solid #91989a;border-radius:4px;background:#292d30;color:#ececea;font:700 12px/1.1 Arial,Helvetica,sans-serif}
.fehu-supply-options input{accent-color:#dbb65e}
.fehu-status-row{margin:8px 0 5px}
.fehu-status-row .fehu-total{color:#f1cf79}
.fehu-status-row .fehu-total strong{font-size:22px}.fehu-status-row .fehu-total span{font-size:11px;letter-spacing:.08em}
.fehu-links{display:block;margin-top:6px}
.fehu-links .fehu-explore{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:49px;padding:7px 10px;border:1px solid;border-radius:5px;font:800 clamp(17px,2vw,22px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:.03em;cursor:pointer}
.fehu-links .fehu-explore.is-checking{border-color:#9ea5a6;background:#303637;color:#d6dedc;cursor:wait;box-shadow:none}
.fehu-links .fehu-explore.is-locked{border-color:#e07c72;background:linear-gradient(135deg,#472423,#2c2022);color:#ffaaa0;cursor:not-allowed;box-shadow:inset 0 0 0 1px #ec766533}
.fehu-links .fehu-explore.is-unlocked{border-color:#80e4a7;background:linear-gradient(135deg,#174833,#0f3027);color:#a9ffd0;box-shadow:0 0 14px #29c57055}
.fehu-lock,.fehu-lock svg{width:23px;height:23px}
.fehu-gate-message{margin:5px 0 0;color:#e8b4a9;font-size:11px;line-height:1.2;text-align:center}
.fehu-form-foot{min-height:0}.fehu-feedback:not(:empty){margin:3px 0;color:#e9b7ab;font-size:11px}
@media(max-width:520px){
 .fehu-join{padding:12px 11px 11px}
 .fehu-discord{min-height:44px;font-size:17px;gap:10px}.fehu-discord svg{width:29px;height:23px}
 .fehu-paths button{min-height:42px;font-size:11px}
 .fehu-identity .fehu-field,.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){grid-template-columns:minmax(95px,38%) minmax(0,1fr)}
 .fehu-field label,.fehu-identity .fehu-field label,.fehu-resources .fehu-field label{font-size:12px}
 .fehu-supply-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fehu-supply-options label{justify-content:flex-start}
}
@media(max-width:350px){.fehu-paths{grid-template-columns:1fr}.fehu-supply-options{grid-template-columns:1fr}}
@media(max-width:700px){.cinema.is-finale.fehu-form-expanded .music{top:-82px;left:18px;right:auto}}
@media(max-width:700px){.cinema.is-finale.fehu-form-expanded .story{padding-top:55px}}
@media(max-width:700px){.cinema.is-finale.fehu-form-expanded .topbar .skip{display:none}}

/* Desktop sheet: 310px instead of 620px; compact rows preserve every field. */
.fehu-save{width:100%;min-height:30px;margin-top:4px;border:1px solid #d8b461;border-radius:4px;background:#34312a;color:#f5dc9e;font:700 12px Arial;cursor:pointer}
.fehu-save:disabled{opacity:.55;cursor:default}
@media(min-width:901px){
 .fehu-end,.cinema.is-finale.fehu-form-expanded .fehu-end,.kingdoms.is-finale.fehu-form-expanded .fehu-end,.eternal.is-finale.fehu-form-expanded .fehu-end{width:310px;max-width:100%}
 .cinema.is-finale.fehu-form-expanded .story,.kingdoms.is-finale.fehu-form-expanded .story,.eternal.is-finale.fehu-form-expanded .story{--fehu-panel-width:310px}
 .fehu-join{padding:8px 11px 7px}
 .fehu-discord{min-height:35px;padding:5px;gap:8px;font-size:16px}.fehu-discord svg{width:25px;height:20px}
 .fehu-paths{gap:5px;margin-top:6px}.fehu-paths button{min-height:32px;padding:4px;font-size:10px}
 .fehu-form{margin-top:6px}.fehu-identity{gap:3px}
 .fehu-identity .fehu-field,.fehu-form:has(.fehu-clan-field[hidden]) .fehu-identity .fehu-field:not([hidden]){grid-template-columns:95px minmax(0,1fr);gap:5px}
 .fehu-field label,.fehu-identity .fehu-field label,.fehu-resources .fehu-field label{font-size:12px}
 .fehu-field input,.fehu-identity .fehu-field input{height:29px;font-size:13px}
 .fehu-resources{margin-top:7px;padding-top:6px}.fehu-resources h4{font-size:14px;margin-bottom:4px}
 .fehu-resources .fehu-fields{gap:3px}.fehu-resources .fehu-field{grid-template-columns:minmax(0,1fr) 116px}
 .fehu-stepper{width:116px}.fehu-stepper button,.fehu-stepper input{height:28px;min-height:28px;font-size:14px}.fehu-stepper button{width:30px}.fehu-stepper input{width:56px}
 .fehu-supplies{margin-top:5px}.fehu-supply-options{gap:3px}.fehu-supply-options label{padding:3px;min-height:29px;font-size:9px}.fehu-supply-options input{width:13px;height:13px;margin:0 3px 0 0}
 .fehu-status-row{float:right;margin:11px 0 0}.fehu-status-row .fehu-total strong{font-size:17px}.fehu-status-row .fehu-total span{font-size:9px}
 .fehu-save{width:135px}.fehu-feedback{clear:both}
 .fehu-links{margin-top:5px}.fehu-links .fehu-explore{min-height:36px;font-size:16px;gap:8px}.fehu-gate-message{font-size:10px;margin-top:4px}
}
@media(max-width:900px){.fehu-end{max-width:100%}.fehu-field input{min-width:0}.fehu-identity .fehu-field input{font-size:16px}.fehu-save{min-height:40px}}
