/* Welcome elevator: entirely isolated from the Tầng 3 FM interface. */
.fm-elevator{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:0;overflow:auto;overscroll-behavior:contain;color:#fff7e9;background:linear-gradient(145deg,#202633 0%,#282b36 54%,#372c30 100%);z-index:100000;opacity:1;transition:opacity .24s ease;font-family:'Quicksand','Segoe UI',Arial,sans-serif;text-align:center}
.fm-elevator::backdrop{background:#1f2632}
.fm-elevator--exit{opacity:0;pointer-events:none}
.fm-elevator__wash{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 53%,#dc967522 0%,transparent 54%),radial-gradient(ellipse at 82% 22%,#ffffff0b,transparent 44%);opacity:.85}
.fm-elevator__inner{position:relative;z-index:1;min-height:100%;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 24px 30px;gap:0}
.fm-elevator__eyebrow{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:2.4px;color:#e9b69c;margin:0 0 12px}
.fm-elevator__onair{width:7px;height:7px;border-radius:100%;background:#e7ad87;box-shadow:0 0 0 5px #e7ad8722,0 0 18px #e7ad8788}
.fm-elevator h2{margin:0 0 20px!important;font-size:clamp(27px,4.6vw,42px)!important;line-height:1.14!important;font-weight:850;letter-spacing:-.8px;color:#fff7ec}
.fm-elevator h2 em{font-style:normal;color:#efae91}
.fm-elevator__lift{width:min(310px,90vw);position:relative;filter:drop-shadow(0 22px 33px #0005)}
.fm-elevator__indicator{width:118px;height:44px;margin:0 auto 13px;display:flex;align-items:center;justify-content:center;gap:7px;border:5px solid #b78e76;border-radius:9px;background:#131c24;box-shadow:inset 0 0 15px #080d16,0 0 0 1px #e8baa077;color:#f8bb83;font-variant-numeric:tabular-nums}
.fm-elevator__up{font-size:23px;line-height:1;color:#edb582;transform:translateY(1px)}
.fm-elevator--moving .fm-elevator__up{animation:fm-elevator-arrow .55s ease-in-out infinite alternate}
.fm-elevator--arrived .fm-elevator__up{animation:none;color:#c0ecce}
.fm-elevator__number{font-size:26px;line-height:1;font-weight:800;letter-spacing:1px;text-shadow:0 0 10px #ffd1a170}
.fm-elevator__unit{writing-mode:vertical-rl;font-size:6px;letter-spacing:1px;color:#e7ad96;opacity:.7}
.fm-elevator__frame{height:345px;width:100%;position:relative;border:11px solid #a27a67;border-top:15px solid #cda38a;border-bottom:11px solid #ad8675;background:#e2bfa8;box-shadow:0 0 0 5px #5d4b4a,0 0 0 7px #e3ad8b66,inset 0 0 0 4px #f4d7be;overflow:hidden;border-radius:9px 9px 2px 2px;isolation:isolate}
.fm-elevator__inside{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(ellipse at 50% 40%,#ffeed9 0%,#f3c7b5 70%,#e3a99f 100%);color:#713f38}
.fm-elevator__welcome-mini{font-size:9px;font-weight:800;letter-spacing:1.5px;color:#995c52}
.fm-elevator__lala{width:158px;height:183px;object-fit:cover;object-position:center top;border-radius:100px 100px 22px 22px;border:5px solid #ffffffc9;box-shadow:0 10px 24px #6f393922;background:white}
.fm-elevator__inside strong{font-size:25px;letter-spacing:-.5px;font-weight:900;color:#7a3933;line-height:1.1}
.fm-elevator__inside>span:last-child{font-size:11px;letter-spacing:.2px;color:#925c55}
.fm-elevator__door{position:absolute;top:0;bottom:0;width:50.18%;z-index:2;background:linear-gradient(90deg,#b8ada3,#e2d4c4 17%,#c4b7ac 48%,#e1d5c8 82%,#aaa098);box-shadow:inset 0 0 0 3px #ffffff1c;transition:transform 1.05s cubic-bezier(.25,.8,.24,1);will-change:transform}
.fm-elevator__door--left{left:0;border-right:1px solid #746459}
.fm-elevator__door--right{right:0;border-left:1px solid #746459}
.fm-elevator__door i{position:absolute;top:14px;bottom:14px;left:17%;right:17%;border:2px solid #a29990;border-radius:5px;box-shadow:inset 0 0 0 3px #f7eee728}
.fm-elevator__door b{position:absolute;top:0;bottom:0;left:53%;width:2px;background:#ffffff35}
.fm-elevator__door--right b{left:45%}
.fm-elevator--moving:not(.fm-elevator--arrived) .fm-elevator__door{animation:fm-elevator-rumble .17s linear infinite alternate}
.fm-elevator--arrived .fm-elevator__door{animation:none!important}
.fm-elevator--doors-open .fm-elevator__door--left{transform:translateX(-101%)}
.fm-elevator--doors-open .fm-elevator__door--right{transform:translateX(101%)}
.fm-elevator__lip{position:absolute;bottom:0;left:0;right:0;height:7px;background:#936b5d;z-index:3;box-shadow:0 -2px 6px #68423640}
.fm-elevator__floor-labels{display:flex;align-items:center;justify-content:center;gap:13px;padding:15px 0 0;font-size:11px;font-weight:800;letter-spacing:2px;color:#aa8e87;font-variant-numeric:tabular-nums}
.fm-elevator__floor-labels span[data-ef]{transition:color .2s,transform .2s}
.fm-elevator__floor-labels span.current{color:#f5c4a7;transform:scale(1.25)}
.fm-elevator__track{height:1px;width:24px;background:#967e7a}
.fm-elevator__status{min-height:22px;margin:15px 0 10px;font-size:12px;font-weight:600;letter-spacing:.1px;color:#f1dacf}
.fm-elevator__skip{border:1px solid #f7e9df59;background:#ffffff10;color:#fff0e6;border-radius:999px;padding:10px 16px;font-size:12px;min-height:39px;font-weight:700;transition:background .16s,transform .16s;white-space:nowrap}
.fm-elevator__skip:hover{background:#ffffff28;transform:translateY(-1px)}
.fm-elevator__skip:focus-visible{outline:3px solid #f6c4a6;outline-offset:4px}
.fm-elevator__skip span{font-size:15px;margin-left:4px}
@keyframes fm-elevator-rumble{from{filter:brightness(.985);transform:translateY(-.75px)}to{filter:brightness(1.025);transform:translateY(.75px)}}
@keyframes fm-elevator-arrow{from{transform:translateY(3px)}to{transform:translateY(-3px)}}
@media(max-height:710px){.fm-elevator__inner{justify-content:flex-start;padding:14px 16px 12px}.fm-elevator h2{font-size:24px!important;margin-bottom:12px!important}.fm-elevator__frame{height:240px}.fm-elevator__lala{width:100px;height:115px}.fm-elevator__eyebrow{margin-bottom:6px}.fm-elevator__indicator{margin-bottom:9px}.fm-elevator__status{margin:9px 0 7px}}
@media(max-width:410px){.fm-elevator__inner{padding-left:15px;padding-right:15px}.fm-elevator__frame{height:315px}.fm-elevator__lift{width:min(285px,87vw)}.fm-elevator__lala{width:145px;height:170px}}
@media(prefers-reduced-motion:reduce){.fm-elevator,.fm-elevator *, .fm-elevator *::before,.fm-elevator *::after{transition:none!important;animation:none!important}}
/* V1.1.5 — match the new headline system in the welcome elevator. */
.fm-elevator h2,.fm-elevator__inside strong{font-family:'LF Curve Retro','Quicksand',sans-serif!important;font-weight:400!important;letter-spacing:0;line-height:1.22}
.fm-elevator h2{font-size:clamp(25px,4.2vw,40px)!important}
