
:root{--paper:#fffbf7;--ink:#161616;--blue:#118bfb;--mint:#9fd2a9;--line:#d9d4cf;--muted:#55524f}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,sans-serif}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:4px}a{color:inherit;text-underline-offset:4px}h1,h2,p{margin:0}
.page{min-height:100svh;display:flex;align-items:center;justify-content:center;max-width:1600px;margin:auto}
main{position:relative;width:100%;aspect-ratio:3/2;display:grid;grid-template-columns:60% 40%;align-items:center}
.login-scene{position:absolute;inset:0;margin:0;z-index:0}.login-scene .scene-art{display:block;width:100%;height:100%;object-fit:contain}
.form-panel{position:relative;z-index:1;grid-column:2;justify-self:center;width:calc(100% - 64px);max-width:410px;padding:34px 30px 30px;border:1px solid #d9d4cf;border-radius:18px;background:#fffbf7f2;box-shadow:0 16px 60px #2524210b}
.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px;color:var(--muted)}.lab-dot{width:8px;height:8px;background:var(--mint);border-radius:50%}.form-panel h2{font-size:32px;line-height:1.15;letter-spacing:-.035em}.form-panel>p{margin-top:12px;color:var(--muted);font-size:14px}
.badge-overlay{position:absolute;left:27.6041667%;top:44.921875%;width:4.1666667%;height:auto;z-index:1;filter:drop-shadow(0 1px 1px #3332)}
.scene-detail{position:absolute;z-index:1;pointer-events:none;height:auto;object-fit:contain}.muse-detail{left:8.2%;bottom:25%;width:2%;filter:contrast(.94) saturate(.94) blur(.2px) drop-shadow(1px 1px .6px #302b2424)}.petra-detail{left:47.8%;bottom:20.1%;width:5.2%;filter:contrast(.86) saturate(.94) brightness(1.03) blur(.1px) drop-shadow(1px 1.5px .8px #302b2418)}.petra-ground{position:absolute;left:48.1%;bottom:19.8%;width:4.6%;height:.8%;border-radius:50%;background:#302b244a;filter:blur(2px);transform:rotate(5deg);pointer-events:none}.meta-detail{left:31.9%;top:36.75%;width:1.05%;opacity:.86;transform:rotate(9deg) skewY(-3deg) scaleX(.86);filter:drop-shadow(.4px .6px .35px #151b3940)}.cloud-detail{left:26.1%;top:38.6%;width:1.1%;opacity:.9;transform:rotate(-5deg);filter:drop-shadow(0 1px .5px #151b3966)}.lab-glyph{display:block;width:22px;height:22px;flex:none;color:var(--ink)}
.brand{position:absolute;z-index:1;left:32px;bottom:28px;display:block;width:164px;background:transparent;border:0;padding:0;filter:drop-shadow(0 1px 1px #fffbf7d9)}.brand img{display:block;width:100%;height:auto}
.fields{margin-top:30px}.field{margin-bottom:19px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.field input{width:100%;height:52px;border:1px solid #b9b3ad;border-radius:7px;background:var(--paper);padding:12px 14px;color:var(--ink);font-size:15px}.field input::placeholder{color:#77716d}.password-wrap{position:relative}.password-wrap input{padding-right:66px}.toggle{position:absolute;right:6px;top:6px;min-width:52px;height:40px;padding:0 9px;border:0;border-radius:5px;color:var(--ink);background:transparent;font-size:12px}.toggle:hover{background:#e7eef7}.primary{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:52px;border:1px solid var(--ink);border-radius:7px;background:var(--ink);color:var(--paper);font-weight:600;font-size:14px;text-decoration:none;margin-top:27px}.primary:hover{background:#3a2f2b}.primary svg{width:18px;height:18px}.primary:disabled{cursor:wait;opacity:.75}.secondary{display:block;min-height:44px;padding:10px 14px;width:100%;border:1px solid var(--line);border-radius:7px;margin-top:12px;background:var(--paper);color:var(--ink);font-size:14px}.form-foot{padding-top:22px;margin-top:26px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.error{margin-top:20px;padding:13px 14px;background:#fff0e8;border-left:3px solid #a84612;border-radius:0 6px 6px 0;font-size:13px;line-height:1.5;color:#75330f}.error:focus{outline:3px solid var(--blue);outline-offset:4px}.signed-email{overflow-wrap:anywhere}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.form-panel{width:calc(100% - 32px);padding:26px 22px}.form-panel h2{font-size:28px}.brand{left:22px;bottom:20px;width:136px}}
@media(max-width:820px){.page{display:block;min-height:100svh;padding-bottom:24px}main{display:flex;flex-direction:column;aspect-ratio:auto}.login-scene{position:relative;inset:auto;width:100%;aspect-ratio:3/2}.login-scene .scene-art{height:auto;object-fit:contain}.form-panel{width:calc(100% - 40px);max-width:480px;margin:12px 20px 0;padding:27px 24px;border-radius:14px;background:var(--paper)}.form-panel h2{font-size:29px}.eyebrow{margin-bottom:16px}.fields{margin-top:24px}.primary{margin-top:22px}.form-foot{margin-top:22px;padding-top:18px}.brand{position:absolute;left:9px;bottom:8px;width:72px;margin:0;background:transparent;padding:0}}
@media(max-width:360px){.form-panel{width:calc(100% - 32px);margin-inline:16px;padding:23px 20px}.brand{left:8px;width:64px}.form-panel h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.scene-repair{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hand-flourish{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.spark-hand{position:absolute;width:0;height:0}.spark-left{left:19.3%;top:40.8%}.spark-right{left:42%;top:44%}.spark-hand i{position:absolute;display:block;width:var(--size,14px);height:var(--size,14px);opacity:0;background:#f2cc73;filter:drop-shadow(0 0 2px #fff9) drop-shadow(0 0 5px #ffdf8c66);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);--dx:-65px;--dy:-68px;--delay:0s}
.spark-hand i:nth-child(2){--dx:-16px;--dy:-100px;--delay:.1s;--size:10px;background:#fff2c8}
.spark-hand i:nth-child(3){--dx:60px;--dy:-84px;--delay:.2s;--size:13px;background:#118bfb}
.spark-hand i:nth-child(4){--dx:100px;--dy:-30px;--delay:.3s;--size:10px;background:#fff2c8}
.spark-hand i:nth-child(5){--dx:88px;--dy:40px;--delay:.4s;--size:16px}
.spark-hand i:nth-child(6){--dx:44px;--dy:86px;--delay:.5s;--size:9px;background:#9fd2a9}
.spark-hand i:nth-child(7){--dx:-20px;--dy:92px;--delay:.6s;--size:12px;background:#fff2c8}
.spark-hand i:nth-child(8){--dx:-90px;--dy:50px;--delay:.7s;--size:10px}
.spark-hand i:nth-child(9){--dx:-104px;--dy:-10px;--delay:.8s;--size:14px;background:#118bfb}
.spark-hand i:nth-child(10){--dx:22px;--dy:-52px;--delay:.25s;--size:7px;background:#fff2c8}
.spark-hand i:nth-child(11){--dx:-48px;--dy:20px;--delay:.45s;--size:7px;background:#9fd2a9}
.spark-hand i:nth-child(12){--dx:30px;--dy:34px;--delay:.65s;--size:8px}
.hand-flourish[data-active] i{animation:welcome-sparkle 3.2s ease-out var(--delay) 1 both}
@keyframes welcome-sparkle{0%{opacity:0;transform:translate(0,0) scale(.2) rotate(0)}12%{opacity:1;transform:translate(calc(var(--dx) * .55),calc(var(--dy) * .55)) scale(1.2) rotate(20deg)}28%{opacity:.35;transform:translate(calc(var(--dx) * .8),calc(var(--dy) * .8)) scale(.55) rotate(45deg)}42%{opacity:1;transform:translate(calc(var(--dx) * .95),calc(var(--dy) * .95)) scale(1.1) rotate(70deg)}60%{opacity:.35;transform:translate(calc(var(--dx) * 1.1),calc(var(--dy) * 1.1)) scale(.6) rotate(95deg)}75%{opacity:.95;transform:translate(calc(var(--dx) * 1.2),calc(var(--dy) * 1.2)) scale(1.05) rotate(120deg)}100%{opacity:0;transform:translate(calc(var(--dx) * 1.35),calc(var(--dy) * 1.35)) scale(.1) rotate(160deg)}}@media(max-width:820px){.spark-hand{transform:scale(.65)}.hand-flourish{contain:paint}}@media(prefers-reduced-motion:reduce){.hand-flourish{display:none}}

.muse-ground{position:absolute;left:8.4%;bottom:24.6%;width:1.6%;height:.35%;border-radius:50%;background:#302b2444;filter:blur(.8px);pointer-events:none}

.petra-ground::after{content:"";position:absolute;left:32%;top:3px;width:110px;height:8px;background:#53616b29;border-radius:50%;transform:rotate(16deg);transform-origin:left center;filter:blur(2.5px)}
@media(max-width:820px){.petra-ground::after{width:28px;height:2px;top:1px;filter:blur(.8px)}}

.form-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.replay-sparkle{display:inline-flex;align-items:center;gap:7px;min-height:44px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--ink);font-size:12px;padding:8px 12px}.replay-sparkle:hover{background:#eaf3fb}.replay-sparkle:disabled{cursor:default;color:var(--muted);opacity:.75}.replay-sparkle>span{color:var(--blue);font-size:16px}

/* Complete desktop composition, including narrow desktop panels. */
.page{display:flex;width:100%;min-height:100svh;max-width:1600px;padding:16px;align-items:center;justify-content:center}
main{display:grid;grid-template-columns:60% 40%;width:min(100%,calc((100svh - 32px) * 1.5));aspect-ratio:3/2;min-height:min(540px,calc(100svh - 32px));align-items:center}
.login-scene{position:absolute;inset:auto;left:0;top:50%;width:100%;height:auto;aspect-ratio:3/2;transform:translateY(-50%)}
.login-scene .scene-art{width:100%;height:100%;object-fit:contain}
.form-panel{grid-column:2;width:calc(100% - 32px);max-width:410px;margin:0;padding:24px 22px;border-radius:16px;background:#fffbf7f2;justify-self:center}
.brand{position:absolute;left:2.1%;bottom:2.7%;width:10.7%;margin:0;padding:0;background:transparent}
.form-panel h2{font-size:clamp(23px,2.3vw,32px)}.eyebrow{margin-bottom:14px}.fields{margin-top:22px}.field{margin-bottom:14px}.field label{margin-bottom:6px}.field input{height:46px}.primary{min-height:46px;margin-top:20px}.form-foot{margin-top:18px;padding-top:14px}.spark-hand{transform:none}
@media(max-width:900px){.form-panel{padding:18px 16px;width:calc(100% - 20px)}.eyebrow{font-size:10px;letter-spacing:.06em;gap:6px}.form-panel h2{font-size:24px}.form-panel>p{font-size:13px}.fields{margin-top:18px}.field{margin-bottom:12px}.field label{font-size:12px}.field input{height:44px;font-size:13px;padding:10px}.primary{min-height:44px;margin-top:16px}.form-foot{font-size:11px;margin-top:16px;padding-top:10px}.replay-sparkle{min-height:40px;padding:6px 10px;font-size:12px}}
@media(max-width:480px) and(pointer:coarse){.page{display:block;padding:0 0 24px;min-height:100svh}main{display:flex;flex-direction:column;width:100%;aspect-ratio:auto;min-height:0}.login-scene{position:relative;inset:auto;left:auto;top:auto;transform:none;aspect-ratio:3/2;width:100%}.form-panel{width:calc(100% - 32px);max-width:410px;margin:12px auto 0;padding:24px}.form-panel h2{font-size:28px}.field input{font-size:16px;height:48px}.primary{min-height:48px}.spark-hand{transform:scale(.7)}}
@media(prefers-reduced-motion:reduce){.hand-flourish[data-manual]{display:block}.hand-flourish[data-manual][data-active] i{animation:welcome-sparkle 3.2s ease-out var(--delay) 1 both!important}}

.eyebrow>.replay-sparkle{margin-left:auto;flex:none;min-height:40px;letter-spacing:normal;text-transform:none;font-weight:500;white-space:nowrap}.eyebrow>.lab-glyph{flex:none}.eyebrow>span{white-space:nowrap}

.eyebrow{flex-wrap:wrap;row-gap:8px}@media(max-width:900px){.password-wrap input{padding-right:66px}.toggle{top:3px;height:38px}}
