/* Login layout: independent of marketplace cards and third-party widget internals. */
body.login-page{--login-ink:#0e3461;--login-muted:#52657c;min-height:100vh;margin:0;background:#f2f5fa;color:var(--login-ink);font-family:'IBM Plex Sans Thai',sans-serif}
.login-page [hidden]{display:none!important}.login-page *{box-sizing:border-box}
.login-header{max-width:1200px;margin:auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.login-header .brand{display:flex;align-items:center;text-decoration:none;min-width:0}.back-to-shop{display:flex;gap:9px;align-items:center;font-size:14px;color:#0e3461;text-decoration:none}.back-to-shop:hover{text-decoration:underline;text-underline-offset:5px}
.login-main{width:min(1140px,calc(100% - 48px));margin:12px auto 48px;display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid #dce4ef;border-radius:24px;overflow:hidden;box-shadow:0 18px 55px #0e346110}
.welcome-panel{position:relative;overflow:hidden;padding:65px 46px;display:flex;align-items:center;background:radial-gradient(ellipse at 100% 0%,#29517e,transparent 65%),#0e3461;color:#fff}.welcome-content{position:relative;z-index:1;width:100%}.login-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#ffe2a0;background:#ffffff10;border:1px solid #ffffff25;border-radius:30px;padding:7px 12px}.login-eyebrow i{width:6px;height:6px;border-radius:50%;background:#fdb523}.welcome-panel h1{font-family:'Kanit',sans-serif;font-size:clamp(34px,3.6vw,47px);font-weight:600;line-height:1.35;margin:26px 0 20px;letter-spacing:-.02em}.welcome-panel h1 span{color:#fdb523}.welcome-lead{font-size:16px;line-height:1.95;color:#e3ebf5;max-width:370px;margin:0}.trust-features{display:grid;gap:14px;margin:34px 0}.feature-card{display:flex;align-items:center;gap:14px;background:#ffffff08;border:1px solid #ffffff20;border-radius:12px;padding:16px}.feature-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;background:#fdb523;color:#0e3461;border-radius:11px;font-size:22px}.feature-card b{display:block;color:white;font-size:16px;font-weight:600}.feature-card small{display:block;color:#d8e5f5;font-size:13px;line-height:1.7;margin-top:3px}.audience-note{display:flex;align-items:center;gap:12px;padding-top:23px;border-top:1px solid #ffffff25}.audience-note p{margin:0}.audience-note b{display:block;font-size:14px;color:white}.audience-note small{display:block;font-size:12px;color:#d8e5f5;margin-top:4px}.audience-avatars{display:flex;padding-right:5px}.audience-avatars span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#d9e5f6;color:#0e3461;border:2px solid #0e3461;font-size:12px}.audience-avatars span+span{margin-left:-8px;background:#fdb523}.audience-arrow{margin-left:auto;color:#fdb523;font-size:25px}.prototype-label{display:block;color:#c0cfe1;font-size:11px;margin-top:32px}.welcome-orbit{position:absolute;width:350px;height:350px;border:1px solid #ffffff0d;border-radius:50%;pointer-events:none}.orbit-a{right:-180px;bottom:-140px}.orbit-b{right:-130px;bottom:-190px}.welcome-spark{position:absolute;right:35px;top:40px;color:#fdb52335;font-size:52px;pointer-events:none}
.auth-panel{padding:45px 44px 25px;min-width:0}.auth-card{max-width:400px;margin:auto}.auth-card-heading{text-align:left}.login-mobile-logo{display:none}.auth-card-kicker{font-size:12px;font-weight:600;color:#6a7d94;letter-spacing:.08em}.auth-card-heading h2{font-family:'Kanit',sans-serif;font-size:30px;color:#0e3461;line-height:1.4;margin:10px 0}.auth-card-heading p{font-size:14px;line-height:1.8;color:#52657c;margin:0}.auth-tabs{display:flex;background:#edf2f8;padding:5px;border-radius:10px;margin:24px 0;gap:5px}.auth-tab{flex:1;min-height:42px;border:0;background:transparent;border-radius:7px;color:#52657c;font:600 14px 'IBM Plex Sans Thai',sans-serif;cursor:pointer}.auth-tab.active{color:#0e3461;background:#fff;box-shadow:0 2px 7px #0e346110}.auth-tab:disabled{cursor:wait}
.login-page .field{display:block;margin-bottom:17px}.field>span:first-child{display:flex;justify-content:space-between;gap:8px;font-size:14px;font-weight:600;margin-bottom:7px}.field small{font-weight:400;color:#60718a;font-size:11px}.login-page .field input{display:block;width:100%;height:48px;border:1px solid #c8d4e3;border-radius:8px;padding:11px 13px;background:#fff;color:#172e49;font:400 16px 'IBM Plex Sans Thai',sans-serif;outline:none}.login-page .field input::placeholder{color:#8996a8}.login-page .field input:focus{border-color:#0e3461;box-shadow:0 0 0 3px #0e346112}.password-wrap{display:block;position:relative}.login-page .password-wrap input{padding-right:66px}.password-toggle{position:absolute;right:8px;top:7px;height:34px;border:0;border-radius:5px;padding:0 9px;background:#f1f5fa;color:#0e3461;font:500 12px 'IBM Plex Sans Thai',sans-serif;cursor:pointer}.auth-submit{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:48px;border:0;border-radius:8px;padding:12px 18px;margin-top:23px;background:#fdb523;color:#0e3461;font:600 16px 'IBM Plex Sans Thai',sans-serif;cursor:pointer;text-decoration:none;transition:background .18s,box-shadow .18s}.auth-submit i{font-style:normal}.auth-submit:disabled{opacity:.65;cursor:wait}.form-message{padding:11px 13px;border-radius:7px;color:#a33030;background:#fff0ef;border:1px solid #f1d1cd;font-size:13px;line-height:1.8}.form-message.success{color:#21583e;background:#edf8f1;border-color:#bedccb}
.social-signin{margin-top:24px}.social-divider{display:flex;align-items:center;gap:12px;font-size:12px;color:#6e7c8e;margin:20px 0 16px}.social-divider:before,.social-divider:after{content:'';height:1px;flex:1;background:#e0e6ee}.google-signin-slot{width:100%;min-width:0;min-height:44px;display:flex;justify-content:center;align-items:center;position:relative;isolation:isolate}.google-placeholder{width:100%;display:flex;min-height:44px;align-items:center;justify-content:center;border:1px solid #d8e0eb;border-radius:5px;background:#f6f8fb;color:#60718a;font-size:13px}#google-button-mount{max-width:400px;width:100%;min-width:0;min-height:40px;line-height:normal}#google-button-mount:empty{display:none}#google-button-mount iframe{display:block;max-width:100%;border:0}#google-button-mount svg{width:20px;height:20px;flex-shrink:0}#google-button-mount [role=button]{font-size:14px;min-height:40px}#google-button-mount [role=button]:hover{filter:none;transform:none}.google-signin-slot[inert]{opacity:.55}.social-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;padding:10px;margin-top:10px;background:white;border:1px solid #d4deeb;border-radius:6px;color:#0e3461;font:500 14px 'IBM Plex Sans Thai',sans-serif;cursor:pointer}.facebook-f{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#1877f2;color:#fff;font:bold 18px Arial}.social-status{font-size:12px;line-height:1.7;color:#60718a;margin:10px 0 0;text-align:center;min-height:20px}.social-retry{display:block;margin:8px auto;padding:5px 9px;background:white;border:0;border-radius:4px;color:#0e3461;text-decoration:underline;font:500 12px 'IBM Plex Sans Thai',sans-serif;cursor:pointer}.server-note{text-align:center;font-size:11px;line-height:1.7;color:#60718a;margin:23px 0 0}.server-note>span{color:#8c9bae;font-size:8px;margin-right:5px}.server-connected>span{color:#368259}.server-disconnected>span{color:#be8037}.auth-footer{font-size:11px;line-height:1.8;text-align:center;margin:9px 0 0;color:#697a91}.page-copyright{font-size:10px;line-height:1.8;text-align:center;color:#6e7e92;margin-top:23px}.signed-in-panel{text-align:center}.sign-out-button{margin:15px auto;background:none;border:0;color:#0e3461;cursor:pointer}.login-page :is(button,a):focus-visible{outline:3px solid #fdb523;outline-offset:3px}
@media(max-width:850px){.login-main{grid-template-columns:.85fr 1fr}.welcome-panel{padding:42px 28px}.auth-panel{padding:38px 28px 24px}.feature-card{padding:12px}.welcome-panel h1{font-size:35px}.welcome-lead{font-size:14px}}
@media(max-width:650px){.login-header{padding:15px 20px}.back-to-shop{font-size:12px}.login-main{display:flex;flex-direction:column;width:calc(100% - 28px);margin:6px auto 25px;border-radius:17px}.auth-panel{order:0;padding:30px 23px 24px}.welcome-panel{order:1;padding:32px 24px}.welcome-panel h1{font-size:32px;margin:17px 0}.welcome-panel h1 br{display:none}.welcome-panel h1 span{display:block}.trust-features{margin:22px 0;gap:10px}.prototype-label{margin-top:20px}.welcome-spark{font-size:37px;right:20px;top:20px}.auth-card-heading h2{font-size:28px}.auth-tabs{margin:21px 0}.field small{font-size:10px}}
