:root{color-scheme:dark}
.auth-pending body>:not(.auth-loading){visibility:hidden}
.auth-pending .auth-loading{display:block}
.auth-loading{display:none;position:fixed;inset:35% 16px auto;text-align:center;color:#e8e8ed;font:16px sans-serif}
.account-link{color:#d9d9e0;text-decoration:none;font:600 12px sans-serif;border:1px solid #48484f;padding:9px 12px;border-radius:7px;white-space:nowrap}
.account-link:hover,.account-link:focus-visible{border-color:#ff3345;color:white}
.usage-status{margin:12px auto;max-width:1000px;padding:0 16px;color:#f2bf70;font:12px sans-serif}
.auth-page{margin:0;background:#09090c;color:#f5f5f7;font-family:'Noto Sans Thai',system-ui,sans-serif;min-height:100svh}
.auth-shell{width:min(940px,calc(100% - 32px));margin:0 auto;padding:32px 0 60px}
.auth-brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:#fff;font-weight:700;letter-spacing:1px}
.auth-brand img{width:100px;height:48px;object-fit:contain}
.auth-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:start;margin-top:54px}
.auth-intro small{color:#ff5966;letter-spacing:2px}
.auth-intro h1{font-size:clamp(32px,4.5vw,48px);line-height:1.2;margin:16px 0}
.auth-intro p{color:#a5a5b3;line-height:1.8}
.auth-card{background:#141418;border:1px solid #34343c;border-top:3px solid #ff3345;border-radius:12px;padding:28px;min-width:0}
.auth-card h2{font-size:24px;margin:0 0 22px}
.auth-card label{display:block;margin:18px 0 8px;font-size:14px}
.auth-card input{box-sizing:border-box;width:100%;background:#09090c;color:#fff;border:1px solid #50505b;border-radius:7px;padding:13px;font:inherit;min-height:48px}
.auth-card button,.auth-action{display:block;box-sizing:border-box;width:100%;padding:13px 16px;min-height:48px;margin:18px 0 0;background:#ff3345;color:#fff;border:1px solid transparent;border-radius:7px;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;text-align:center;text-decoration:none}
.auth-card button:disabled{opacity:.55;cursor:wait}
.auth-card .auth-secondary{background:transparent;border-color:#454550;color:#eee}
.auth-card .auth-text-button{background:none;border:0;width:auto;display:inline-block;padding:4px 0;min-height:36px;font-size:13px;margin:12px 18px 0 0;color:#bdbdc8}
.auth-message{font-size:14px;line-height:1.7;overflow-wrap:anywhere;color:#d4d4de}
.auth-message[data-error="true"]{color:#ff8791}
.auth-note{font-size:12px;line-height:1.8;color:#9999a8;margin:24px 0 0}
.auth-user-email{overflow-wrap:anywhere;color:#bdbdc8}
.auth-history{padding-left:20px;font-size:12px;color:#bcbcc7;line-height:1.9}
.auth-card :focus-visible{outline:2px solid white;outline-offset:3px}
[hidden]{display:none!important}
@media(max-width:700px){.auth-shell{padding-top:20px}.auth-layout{grid-template-columns:1fr;gap:20px;margin-top:30px}.auth-intro h1{font-size:32px}.auth-intro p{margin-bottom:0}.auth-card{padding:22px}.account-link{padding:8px;font-size:11px}}

/* Login: the same red, carbon and cut-corner language as the live landing page. */
.auth-page{background-color:#090909;background-image:radial-gradient(ellipse at 95% 35%,#b4111b21,transparent 55%),repeating-linear-gradient(118deg,transparent 0 90px,#ff334509 91px 92px,transparent 93px 180px),repeating-linear-gradient(45deg,#151515 0 2px,#0d0d0d 2px 5px,#111 5px 7px,#090909 7px 10px);background-attachment:fixed}
.auth-page *{box-sizing:border-box}
.auth-shell{width:min(1180px,calc(100% - 80px));padding:0 0 24px}
.auth-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff16}
.auth-brand img{width:174px;height:58px}
.auth-back{color:#b9b9be;font-size:12px;text-decoration:none;padding:12px 0 12px 18px}
.auth-back span{color:#ff3345;font-size:20px;margin-left:15px}
.auth-layout{grid-template-columns:1.15fr 1fr;gap:80px;align-items:center;margin:66px 0 70px;min-height:520px}
.auth-eyebrow{display:inline-block;font:800 italic 12px 'Exo 2',sans-serif!important;color:#fff!important;letter-spacing:2px!important;border-left:3px solid #ff293c;padding:7px 12px;background:linear-gradient(90deg,#ff334524,transparent)}
.auth-intro h1{font:800 italic clamp(40px,4.8vw,66px)/1.2 'Kanit',sans-serif;letter-spacing:-1px;margin:23px 0 22px}
.auth-intro h1 em{font-style:inherit;color:#ff293c;text-shadow:0 4px 30px #ff293c25}
.auth-intro .auth-lead{font-size:15px;color:#b9b9bf;line-height:1.95}
.auth-features{display:grid;gap:15px;margin-top:32px}
.auth-features>div{display:flex;gap:19px;align-items:center;border-left:2px solid #ff293c;padding:6px 16px;background:linear-gradient(90deg,#ff293c0b,transparent)}
.auth-features>div>span{font:800 italic 22px 'Exo 2',sans-serif;color:#ff293c}
.auth-features p{margin:0;font-size:12px;line-height:1.7}
.auth-features strong{display:block;color:#eee;font:700 italic 12px 'Exo 2',sans-serif;letter-spacing:1.3px;margin-bottom:3px}
.auth-intro .auth-privacy{display:flex;gap:14px;font-size:11px;line-height:1.9;margin:30px 0 0;color:#96969e}
.auth-privacy>span:first-child{color:#ff293c;font-size:24px}
.auth-privacy strong{display:block;color:#d8d8dd;font-size:12px}
.auth-page .auth-card{position:relative;border:1px solid #8f202a;border-radius:0;padding:30px;background:linear-gradient(145deg,#260e12 0,#101012 28%,#0b0b0d 74%,#1d0c10);box-shadow:0 22px 65px #0008;min-width:0}
.auth-page .auth-card:before,.auth-page .auth-card:after{content:'';position:absolute;width:42px;height:5px;background:#ff293c;transform:rotate(45deg);pointer-events:none}
.auth-page .auth-card:before{right:-7px;top:11px}.auth-page .auth-card:after{left:-7px;bottom:11px}
.auth-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;color:#ff4050;font:700 italic 10px 'Exo 2',sans-serif;letter-spacing:1.4px}
.auth-member-badge{border:1px solid #ff293c;border-radius:30px;padding:7px 10px;color:#fff;letter-spacing:.8px;box-shadow:0 0 20px #ff293c18}
.auth-page .auth-card h2{font:600 29px/1.4 'Kanit',sans-serif;margin:0 0 23px}
.auth-page .auth-card label{font-size:13px;color:#d4d4d9;margin:18px 0 9px}
.auth-page .auth-card input{background:#080809;border:1px solid #4a292e;border-radius:4px;min-height:54px;padding:14px 15px;font-size:15px;transition:border-color .15s,box-shadow .15s}
.auth-page .auth-card input::placeholder{color:#72727c;font-size:13px}
.auth-page .auth-card input:focus{border-color:#ff4050;box-shadow:0 0 0 3px #ff293c15;outline:none}
.auth-page #submit,.auth-page .auth-action{border-radius:0;background:#f32b3e;min-height:54px;font:700 italic 18px 'Kanit',sans-serif;margin-top:25px;box-shadow:0 6px 26px #ff293c19;transition:background .15s}
.auth-page #submit:hover:not(:disabled),.auth-page .auth-action:hover{background:#ff4354}
.auth-page #submit:after{content:'→';margin-left:20px;font-style:normal}
.auth-page #authModes{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 12px;border-bottom:1px solid #ffffff12;padding:3px 0 13px}
.auth-page .auth-text-button{margin-right:0;color:#c0c0c9;font-size:12px}
.auth-page .auth-text-button:hover{color:#ff6673}
.auth-page .auth-message:empty{display:none}
.auth-page .auth-note{margin-top:18px;font-size:11px;color:#9d9da5}
.auth-page .auth-message{margin-top:18px;font-size:13px}
.auth-page .auth-secondary{background:#171719;border-color:#4a3035;font-style:normal}
.auth-footer{border-top:1px solid #ffffff16;padding-top:20px;display:flex;justify-content:space-between;gap:15px;color:#74747b;font:700 italic 10px 'Exo 2',sans-serif;letter-spacing:1.4px}
.auth-back:focus-visible,.auth-brand:focus-visible{outline:2px solid #ff6673;outline-offset:5px}
@media(max-width:900px){.auth-shell{width:calc(100% - 48px)}.auth-layout{gap:34px}.auth-intro h1{font-size:44px}.auth-card-top{letter-spacing:.6px}.auth-page .auth-card{padding:24px}}
@media(max-width:700px){.auth-shell{width:calc(100% - 36px);padding-top:0}.auth-header{height:78px}.auth-brand img{width:143px;height:46px}.auth-layout{grid-template-columns:1fr;gap:28px;margin:30px 0 36px;min-height:0}.auth-intro h1{font-size:42px;margin:16px 0 12px}.auth-intro .auth-lead{font-size:13px;margin:0}.auth-features{display:none}.auth-intro .auth-privacy{display:none}.auth-page .auth-card{padding:25px 22px}.auth-footer{font-size:8px;letter-spacing:.7px}.auth-eyebrow{font-size:10px!important}.auth-page .auth-card h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.auth-page *{transition:none!important}}

/* Studio product photography is the focal point of the account page. */
.auth-page{background:#09090b;background-image:radial-gradient(ellipse at 16% 52%,#65151c25,transparent 55%),radial-gradient(ellipse at 98% 20%,#6b17201c,transparent 45%)}
.auth-shell{width:min(1320px,calc(100% - 80px))}
.auth-header{height:90px}
.auth-layout{grid-template-columns:minmax(0,1.55fr) minmax(360px,1fr);gap:58px;margin:42px 0 48px;align-items:center;min-height:580px}
.auth-intro{min-width:0}
.auth-intro h1{font-size:clamp(38px,3.6vw,53px);line-height:1.2;margin:19px 0 14px}
.auth-intro .auth-lead{font-size:13px;color:#a8a8b1;margin:0}
.auth-product{margin:22px -18px 0;position:relative}
.auth-product picture{display:block}.auth-product img{display:block;width:100%;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 12px 55px #0007}
.auth-product figcaption{display:flex;justify-content:center;gap:26px;margin-top:15px;font:700 9px 'Exo 2',sans-serif;letter-spacing:1.8px;color:#94949f}
.auth-product figcaption span{display:flex;align-items:center;gap:8px}
.auth-product figcaption span:before{content:'';width:4px;height:4px;border-radius:50%;background:#f73647}
.auth-intro .auth-privacy{font-size:11px;margin-top:22px}
.auth-page .auth-card{border:1px solid #ffffff1c;border-radius:20px;padding:33px;background:linear-gradient(145deg,#252024c9,#151416 40%,#101012);box-shadow:0 25px 80px #0008,0 1px 0 #ffffff08 inset}
.auth-page .auth-card:before{height:3px;width:75px;left:33px;right:auto;top:-1px;background:#ff3448;transform:none;border-radius:4px;box-shadow:0 0 22px #ff344875}
.auth-page .auth-card:after{display:none}
.auth-card-top{font-size:10px;letter-spacing:1.8px;margin-bottom:29px}
.auth-member-badge{font-size:8px;letter-spacing:.7px;border-color:#ffffff22;background:#ffffff04;color:#a8a8b1;padding:7px 9px;box-shadow:none}
.auth-page .auth-card h2{font-size:32px;margin:0 0 5px}
.auth-card-caption{font-size:12px;color:#92929e;margin:0 0 27px}
.auth-page .auth-card input{border:1px solid #ffffff1c;border-radius:9px;background:#09090c;min-height:53px}
.auth-page .auth-card label{font-size:12px;margin-top:20px;color:#c5c5cd}
.auth-page #submit,.auth-page .auth-action{border-radius:9px;margin-top:26px;background:linear-gradient(100deg,#e32438,#ff3d4f);font-size:17px;box-shadow:0 8px 25px #ed24302b}
.auth-page #authModes{border-bottom:1px solid #ffffff0e;padding-top:6px;padding-bottom:16px}
.auth-page .auth-note{color:#8f8f9a;font-size:10px;margin-top:19px}
.auth-page .auth-text-button{min-height:44px}
.auth-footer{font-size:9px;padding-top:22px}
@media(max-width:1000px){.auth-layout{gap:30px;grid-template-columns:minmax(0,1.1fr) minmax(340px,1fr)}.auth-shell{width:calc(100% - 48px)}.auth-intro h1{font-size:40px}.auth-page .auth-card{padding:27px}.auth-product{margin-left:0;margin-right:0}.auth-product figcaption{gap:14px;font-size:8px;letter-spacing:1px}}
@media(max-width:740px){.auth-shell{width:calc(100% - 36px)}.auth-header{height:74px}.auth-layout{grid-template-columns:1fr;gap:28px;margin:28px 0 34px;min-height:0}.auth-intro h1{font-size:36px;margin:15px 0 9px}.auth-intro .auth-lead{font-size:12px;line-height:1.8}.auth-product{margin:18px 0 0}.auth-product picture{display:block}.auth-product img{border-radius:10px}.auth-product figcaption{margin-top:12px;gap:18px;font-size:8px;letter-spacing:1px}.auth-page .auth-card{padding:27px 23px;border-radius:16px}.auth-card-top{margin-bottom:23px}.auth-page .auth-card h2{font-size:29px}.auth-intro .auth-privacy{display:none}.auth-card-caption{margin-bottom:22px}.auth-footer{font-size:8px;letter-spacing:.5px}}

/* Approved visual reference: full stage, red-lit product and glass access panel. */
.auth-page{background-color:#08090a;background-image:radial-gradient(ellipse at 0 0,#70747a36,transparent 32%),radial-gradient(ellipse at 45% 66%,#b6001422,transparent 45%)}
.auth-page:before{content:'';position:fixed;inset:0 0 0 72%;z-index:-1;opacity:.45;background:repeating-linear-gradient(48deg,#1b1b1b 0 3px,#080808 3px 7px,#151515 7px 10px,#070707 10px 14px);mask-image:linear-gradient(90deg,transparent,#000)}
.auth-shell{width:min(1540px,calc(100% - 100px))}
.auth-header{height:86px;position:relative}
.auth-header:after{content:'///';position:absolute;bottom:-7px;right:15%;font:900 italic 25px 'Exo 2',sans-serif;letter-spacing:-3px;color:#ff263e}
.auth-brand img{width:215px;height:62px}
.auth-layout{grid-template-columns:minmax(0,1.48fr) minmax(410px,1fr);gap:48px;margin:38px 0 0;align-items:center;min-height:650px}
.auth-intro{position:relative}
.auth-intro h1{font-size:clamp(42px,4.9vw,76px);line-height:1.12;letter-spacing:-1px;margin:14px 0 17px}
.auth-intro .auth-lead{font-size:16px;line-height:1.8;color:#b4bdc9}
.auth-eyebrow{font-size:11px!important;letter-spacing:2px!important}
.auth-device-strip{display:flex;align-items:center;gap:23px;margin-top:25px;position:relative;z-index:1}
.auth-device-strip>span{display:flex;gap:13px;align-items:center;font:800 italic 11px 'Exo 2',sans-serif;letter-spacing:1.5px;white-space:nowrap}
.auth-device-strip>span+span{border-left:1px solid #ff263e;padding-left:23px}
.auth-device-strip i{display:grid;place-items:center;width:43px;height:43px;border:1px solid #ff263e;border-radius:50%;color:#ff3448;box-shadow:0 0 18px #ff263e2b;background:#08090a}
.auth-device-strip svg{width:24px;height:24px}
.auth-product{margin:3px -26px -12px;isolation:isolate}
.auth-product picture{display:block}.auth-product img{width:100%;border-radius:0;box-shadow:none;mask-image:linear-gradient(to bottom,transparent,#000 13%,#000 82%,transparent),linear-gradient(to right,transparent,#000 5%,#000 94%,transparent);mask-composite:intersect}
.auth-intro .auth-privacy{display:none}
.auth-page .auth-card{padding:37px 34px 27px;border:1px solid #a4777c85;border-radius:21px;background:radial-gradient(ellipse at 0 0,#a92c3a30,transparent 44%),radial-gradient(ellipse at 100% 100%,#b51e2c24,transparent 45%),linear-gradient(120deg,#111315f0,#0c0e10ef);box-shadow:0 22px 80px #0008,inset 0 1px 0 #ffffff13}
.auth-page .auth-card:before{left:36px;width:65px;box-shadow:0 0 23px #ff3448}
.auth-card-top{margin:0 0 30px;color:#ff3448;font-size:11px}
.auth-page .auth-card h2{font:600 clamp(29px,2.7vw,43px)/1.25 'Kanit',sans-serif;letter-spacing:-.5px;margin-bottom:8px;overflow-wrap:anywhere}
.auth-card-caption{color:#aeb7c5;font-size:17px;margin:0 0 32px}
.auth-page .auth-card label{font-size:14px;margin:20px 0 9px;color:#f0f0f2}
.auth-input-wrap{position:relative}
.auth-input-icon{position:absolute;top:50%;left:17px;transform:translateY(-50%);width:20px;height:22px;color:#a1a9b5;pointer-events:none}
.auth-input-icon svg,.auth-eye svg,.auth-note-lock svg{width:100%;height:100%}
.auth-page .auth-input-wrap input{padding-left:50px}
.auth-page .auth-input-wrap #password{padding-right:49px}
.auth-page .auth-card input{min-height:53px;border-color:#ffffff30;background:linear-gradient(120deg,#090c0e,#0b0d0f);font-size:14px;border-radius:11px}
.auth-page .auth-card .auth-eye{position:absolute;right:5px;top:4px;margin:0;padding:12px;width:44px;height:45px;min-height:0;background:none;border:0;border-radius:7px;color:#a1a9b5;display:grid;place-items:center}
.auth-eye[aria-pressed="true"] .eye-slash{display:none}
.auth-page #submit{min-height:57px;font:600 20px 'Kanit',sans-serif;margin-top:27px;border:1px solid #ff8291;box-shadow:0 0 26px #ff243b40,inset 0 0 20px #ff58631c;background:linear-gradient(110deg,#ff273f,#f50926 65%,#ff344b);border-radius:11px}
.auth-page .auth-text-button{font-size:13px;color:#eee}
.auth-page #authModes{padding-top:5px;padding-bottom:14px}
.auth-page .auth-note{display:flex;align-items:center;gap:10px;font-size:11px;color:#8f99a8;margin-top:17px}
.auth-note-lock{width:19px;height:21px;flex-shrink:0}
.auth-footer{padding:10px 0 20px;border:0;align-items:center;font-weight:400;font-style:italic;letter-spacing:3px;line-height:1.8;font-size:9px;margin-top:6px}
.auth-footer>span:first-child{border-left:2px solid #ff263e;padding-left:16px}.auth-footer b{color:#ff263e;margin:0 14px}
@media(max-width:1100px){.auth-shell{width:calc(100% - 64px)}.auth-layout{grid-template-columns:minmax(0,1.25fr) minmax(350px,1fr);gap:30px;min-height:600px}.auth-intro h1{font-size:48px}.auth-intro .auth-lead{font-size:13px}.auth-page .auth-card{padding:30px 25px}.auth-device-strip{gap:12px}.auth-device-strip>span{font-size:9px;letter-spacing:.6px;gap:8px}.auth-device-strip>span+span{padding-left:12px}.auth-device-strip i{width:34px;height:34px}.auth-device-strip svg{width:19px;height:19px}.auth-card-caption{font-size:15px}.auth-product{margin-left:-16px;margin-right:-16px}}
@media(max-width:780px){.auth-shell{width:calc(100% - 36px)}.auth-header{height:72px}.auth-brand img{width:160px;height:49px}.auth-layout{grid-template-columns:1fr;gap:16px;margin-top:27px;min-height:0}.auth-intro h1{font-size:clamp(34px,7.5vw,54px);margin-top:13px}.auth-intro .auth-lead{font-size:12px}.auth-device-strip{justify-content:space-between;gap:5px;margin-top:18px}.auth-device-strip>span{font-size:8px;letter-spacing:.6px;gap:6px}.auth-device-strip>span+span{padding-left:8px}.auth-device-strip i{width:30px;height:30px}.auth-product{margin:0 -8px -10px}.auth-page .auth-card{padding:28px 23px 24px}.auth-page .auth-card h2{font-size:33px}.auth-card-top{margin-bottom:23px}.auth-card-caption{font-size:15px;margin-bottom:26px}.auth-footer{font-size:7px;letter-spacing:1px;margin-top:28px;gap:10px}.auth-footer b{margin:0 5px}.auth-header:after{right:30%;font-size:20px}.auth-eyebrow{font-size:9px!important;letter-spacing:1.2px!important}}

.auth-product:after{content:'';position:absolute;inset:0;pointer-events:none;background:url('login-product-studio.jpg') center/100% 100% no-repeat;background:image-set(url('login-product-studio.webp') type('image/webp'),url('login-product-studio.jpg') type('image/jpeg')) center/100% 100% no-repeat;mix-blend-mode:screen;filter:brightness(1.65) saturate(1.6) drop-shadow(0 0 5px #ff1837);mask-image:radial-gradient(ellipse 10% 7% at 21.5% 41%,#000 45%,transparent 100%),radial-gradient(ellipse 19% 12% at 62% 39%,#000 45%,transparent 100%),radial-gradient(ellipse 11% 8% at 79% 64%,#000 45%,transparent 100%);animation:product-logo-glow 2.8s ease-in-out infinite;will-change:opacity}
@keyframes product-logo-glow{0%,100%{opacity:.08}48%,58%{opacity:.78}}
@media(prefers-reduced-motion:reduce){.auth-product:after{animation:none;opacity:.28;will-change:auto}}

.auth-product-trace{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 0 5px #ff273f)}
.product-edges{stroke:#ff3047;stroke-width:2;opacity:.4;animation:product-edge-pulse 3.4s ease-in-out infinite}
.gauge-loading-track{stroke:#2b080d;stroke-width:7;stroke-linecap:round}
.gauge-loading-run{stroke:#ff263f;stroke-width:7;stroke-linecap:round;stroke-dasharray:42 100;animation:gauge-loading-loop 1.7s linear infinite}
@keyframes product-edge-pulse{0%,100%{opacity:.12}50%{opacity:.65}}
@keyframes gauge-loading-loop{from{stroke-dashoffset:42}to{stroke-dashoffset:-100}}
@property --card-orbit{syntax:'<angle>';initial-value:0deg;inherits:false}
.auth-page .auth-card:after{display:block;content:'';position:absolute;inset:-1px;width:auto;height:auto;transform:none;left:-1px;bottom:-1px;border-radius:inherit;padding:1px;pointer-events:none;background:conic-gradient(from var(--card-orbit),transparent 0deg 240deg,#ff304718 280deg,#ff5c7299 320deg,transparent 355deg);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;animation:card-light-orbit 8s linear infinite}
@keyframes card-light-orbit{to{--card-orbit:360deg}}
.auth-page #submit{position:relative;isolation:isolate;transition:transform .18s,box-shadow .18s,filter .18s}
.auth-page #submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 32px #ff243b65}
.auth-page #submit:active:not(:disabled){transform:scale(.985)}
.auth-page #submit.button-smoke:before{content:'';position:absolute;inset:-15px 5%;z-index:-1;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse,#ff6b7f70,transparent 70%);filter:blur(12px);animation:button-smoke-rise .8s ease-out both}
@keyframes button-smoke-rise{from{opacity:.7;transform:translateY(0) scale(.6)}to{opacity:0;transform:translateY(-80px) scale(1.5)}}
.auth-transition{position:fixed;inset:0;z-index:1000;background:#070709ec;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;overflow:hidden;pointer-events:all;animation:auth-transition-in .22s ease-out}
.auth-transition>img{width:min(300px,65vw);height:auto;position:relative;filter:drop-shadow(0 0 20px #ff304760);animation:product-edge-pulse 2.5s ease-in-out infinite}
.auth-transition>span{position:relative;font:13px 'Noto Sans Thai',sans-serif;color:#c9c9d1}
.auth-smoke{position:absolute;width:min(650px,95vw);height:400px;background:radial-gradient(ellipse at 30% 70%,#ff253f24,transparent 60%),radial-gradient(ellipse at 70% 80%,#b7bdcf12,transparent 60%);filter:blur(35px);animation:auth-smoke-drift 4s ease-in-out infinite alternate}
.auth-transition-track{width:160px;height:2px;background:linear-gradient(90deg,transparent,#ff3047,transparent);animation:auth-track 1.5s ease-in-out infinite}
@keyframes auth-transition-in{from{opacity:0}to{opacity:1}}
@keyframes auth-smoke-drift{from{transform:translateY(70px) scale(.8)}to{transform:translateY(-70px) scale(1.2)}}
@keyframes auth-track{0%,100%{transform:scaleX(.4);opacity:.3}50%{transform:scaleX(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.auth-product-trace *,.auth-page .auth-card:after,.auth-transition,.auth-transition *,.auth-page #submit.button-smoke:before{animation:none!important}.auth-page #submit:hover,.auth-page #submit:active{transform:none}}

/* ── Phase UI (2026-10-29): วัยรุ่นขึ้นนิด ไม่ลก — glow อ่อน, มุมโค้งขึ้น, shimmer ที่ปุ่มหลัก, hover ยกเล็กน้อย ── */
.auth-page .auth-intro:before{content:'';position:absolute;z-index:-1;left:-8%;top:-12%;width:70%;height:75%;background:radial-gradient(closest-side,color-mix(in srgb,var(--red-hi) 14%,transparent),transparent);filter:blur(20px);pointer-events:none}
.auth-page .auth-intro h1 em{background:linear-gradient(95deg,var(--red-hi),#ff6b5e);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--red-hi)}
.auth-page .auth-eyebrow{border-radius:0 8px 8px 0}
.auth-page .auth-device-strip i{transition:transform .2s,box-shadow .2s}
.auth-page .auth-device-strip>span:hover i{transform:translateY(-2px);box-shadow:0 0 22px color-mix(in srgb,var(--red-hi) 33%,transparent)}
.auth-page .auth-card{border-radius:24px;border-color:color-mix(in srgb,var(--red-hi) 21%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.auth-page .auth-card input{border-radius:13px}
.auth-page .auth-card input:focus{border-color:#ff5a6e;box-shadow:0 0 0 4px color-mix(in srgb,var(--red-hi) 13%,transparent),0 0 20px color-mix(in srgb,var(--red-hi) 9%,transparent)}
.auth-page .auth-member-badge{border-radius:30px;border-color:color-mix(in srgb,var(--red-hi) 33%,transparent);color:#c9ccd4}
.auth-page #submit{border-radius:14px;background:linear-gradient(110deg,var(--red) 0,var(--red) 38%,var(--red-hi) 50%,var(--red) 62%,var(--red-hi) 100%) 0 0/250% 100%;animation:ui-shimmer 5s ease-in-out infinite}
.auth-page #submit:hover:not(:disabled){transform:translateY(-2px)}
.auth-page .auth-text-button{border-radius:10px;padding:4px 10px;margin-left:-10px;transition:background .15s,color .15s}
.auth-page .auth-text-button:hover{background:#ffffff0d;color:#ff8a97}
.auth-page .auth-note{color:#a3acba}
.auth-page .auth-action{border-radius:14px}
@keyframes ui-shimmer{0%,55%{background-position:100% 0}100%{background-position:0 0}}
@media(max-width:780px){.auth-page .auth-card{border-radius:20px}.auth-page .auth-intro:before{left:-20%;width:100%}}
@media(prefers-reduced-motion:reduce){.auth-page #submit{animation:none}.auth-page .auth-device-strip>span:hover i,.auth-page #submit:hover:not(:disabled){transform:none}}

/* Phase CTA: ประโยชน์ของการเข้าสู่ระบบ (โหมด sign-in เท่านั้น) */
.auth-benefits{margin-top:22px;padding:16px 18px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.03)}
.auth-benefits h3{margin:0 0 10px;font-size:15px;font-weight:600;color:#e8e8ec}
.auth-benefits ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.auth-benefits li{position:relative;padding-left:18px;font-size:13px;line-height:1.6;color:#b9b9c2}
.auth-benefits li:before{content:"";position:absolute;left:0;top:.7em;width:7px;height:7px;border-radius:50%;background:#ff2b43}
.auth-benefits .soon{display:inline-block;margin-left:6px;padding:1px 8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:11px;color:#9d9da5;white-space:nowrap}
.auth-benefits .auth-benefits-note{margin:12px 0 0;font-size:12.5px;color:#d8d8dd}
