/* Premium mychatbox login. All selectors are scoped; existing auth display:none wins.
   Illustration lives in inline SVG. No raster images, external fonts, or imports. */
@font-face{font-family:'Noto Sans Thai';src:url('./fonts/NotoSansThai.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
#loginPage.login-premium{--u:clamp(.85px,.083333333vw,1.5px);--brand:#087bff;box-sizing:border-box;position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:62% 38%;align-items:stretch!important;justify-content:stretch!important;width:100%;height:100%;min-height:0!important;padding:0!important;overflow:auto;background:#fff!important;color:#142941!important;color-scheme:light;font-family:'Noto Sans Thai',Arial,sans-serif;font-weight:400;isolation:isolate}
#loginPage.login-premium *,#loginPage.login-premium *::before,#loginPage.login-premium *::after{box-sizing:border-box}
#loginPage.login-premium::before,#loginPage.login-premium::after{display:none!important;content:none!important}
#loginPage.login-premium .login-visual-panel{position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 16% 39%,#eefbffb3,transparent 48%),radial-gradient(ellipse at 80% 52%,#73baff66,transparent 48%),linear-gradient(112deg,#dff2fd 0%,#cde9fc 43%,#a9d4fc 100%)}
#loginPage.login-premium .premium-artboard{position:absolute;width:100%;height:100%;min-height:calc(590 * var(--u));top:50%;transform:translateY(-50%);container-type:inline-size}
#loginPage.login-premium .premium-scene{position:absolute;inset:0;width:100%;height:100%;display:block;font-family:'Noto Sans Thai',Arial,sans-serif}
#loginPage.login-premium .login-visual-copy{position:absolute;z-index:1;left:4.2%;color:#8b9eaf;text-align:left}
#loginPage.login-premium .login-visual-copy-top{top:6.1%}
#loginPage.login-premium .login-visual-copy-bottom{bottom:6.5%}
#loginPage.login-premium .login-visual-copy h2{margin:0;font:400 2.48cqw/1.11 Arial,sans-serif;letter-spacing:-.03em;color:#8b9eaf}
#loginPage.login-premium .login-visual-copy span{display:block;width:3.8cqw;height:2px;margin:1.5cqw 0 1.3cqw;background:#0886e7}
#loginPage.login-premium .login-visual-copy p{margin:0;font-size:1.66cqw;line-height:1.4;color:#94a7b6}
#loginPage.login-premium .login-form-panel{min-width:0;min-height:calc(655 * var(--u));display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:calc(42 * var(--u)) calc(36 * var(--u)) calc(16 * var(--u));background:radial-gradient(ellipse at 30% 40%,#f8fcff 0%,#fff 70%)}
#loginPage.login-premium .lp-wrap{display:block!important;width:100%!important;max-width:calc(430 * var(--u))!important;margin:0!important}
#loginPage.login-premium .lp-hero{display:block!important;width:100%;margin:0!important;text-align:center!important}
#loginPage.login-premium .lp-brand-inline{display:inline-flex;align-items:center;justify-content:center;gap:calc(9 * var(--u));height:calc(36 * var(--u));margin:0 auto calc(42 * var(--u));color:#0078ec;white-space:nowrap}
#loginPage.login-premium .lp-brand-inline strong{font-family:Arial,sans-serif;font-size:calc(30 * var(--u));font-weight:750;letter-spacing:-.04em;color:#0078ec;line-height:1}
#loginPage.login-premium .lp-brand-inline strong span{color:#112844}
#loginPage.login-premium .lp-brand-bubble{position:relative;display:inline-block;width:calc(41 * var(--u));height:calc(33 * var(--u));border-radius:calc(8 * var(--u));background:linear-gradient(140deg,#0798ff,#0067ed);color:transparent;font-size:0;box-shadow:0 2px 5px #087bff26}
#loginPage.login-premium .lp-brand-bubble::before{content:'';position:absolute;left:calc(9 * var(--u));bottom:calc(-6 * var(--u));width:calc(12 * var(--u));height:calc(12 * var(--u));background:#0776f2;clip-path:polygon(0 0,100% 0,0 100%)}
#loginPage.login-premium .lp-brand-bubble::after{content:'';position:absolute;left:calc(10 * var(--u));top:calc(14 * var(--u));width:calc(4 * var(--u));height:calc(4 * var(--u));border-radius:50%;background:#fff;box-shadow:calc(8 * var(--u)) 0 #fff,calc(16 * var(--u)) 0 #fff}
#loginPage.login-premium .lp-login-box{position:relative;display:block;width:100%!important;max-width:none!important;margin:0!important;padding:calc(36 * var(--u)) calc(25 * var(--u)) calc(26 * var(--u))!important;border:1px solid #e0ebf4!important;border-radius:calc(17 * var(--u))!important;background:#ffffffed!important;box-shadow:0 0 9px #6dacf010,0 5px 25px #498acb12!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-align:left!important}
#loginPage.login-premium .lp-login-box::before,#loginPage.login-premium .lp-login-box::after{display:none!important}
#loginPage.login-premium .lp-title{display:block!important;margin:0!important;font-size:calc(25 * var(--u))!important;font-weight:750!important;line-height:1.3!important;letter-spacing:-.035em!important;text-align:center!important;color:#14263c!important;background:none!important;-webkit-text-fill-color:#14263c!important;text-shadow:none!important}
#loginPage.login-premium .lp-sub{display:block!important;margin:0 0 calc(26 * var(--u))!important;color:#8b949f!important;font-size:calc(14 * var(--u))!important;font-weight:400!important;line-height:1.6!important;text-align:center!important}
#loginPage.login-premium .lp-label{display:block;margin:0 0 calc(5 * var(--u));font:600 calc(12 * var(--u))/1.5 Arial,sans-serif;color:#243448}
#loginPage.login-premium .lp-field{position:relative!important;margin:0 0 calc(18 * var(--u))!important}
#loginPage.login-premium .lp-pw{position:relative}
#loginPage.login-premium .lp-inp{display:block;width:100%;height:calc(42 * var(--u))!important;padding:0 calc(42 * var(--u))!important;border:1px solid #d4e2eb!important;border-radius:calc(8 * var(--u))!important;background:#fff!important;box-shadow:inset 0 0 0 1px #eef5f866!important;outline:none;color:#253b50!important;font:400 calc(12 * var(--u)) 'Noto Sans Thai',Arial,sans-serif;transition:border-color .15s,box-shadow .15s}
#loginPage.login-premium .lp-inp::placeholder{color:#98a3af!important;opacity:1;font-weight:400}
#loginPage.login-premium .lp-inp:focus{border-color:#0786fa!important;box-shadow:0 0 0 3px #0786fa18!important}
#loginPage.login-premium .lp-input-icon{position:absolute!important;left:calc(14 * var(--u))!important;top:50%!important;transform:translateY(-50%)!important;display:grid;place-items:center;width:calc(18 * var(--u))!important;height:calc(18 * var(--u))!important;min-width:0!important;line-height:1!important;border:0!important;background:transparent!important;color:#8a99a7!important;pointer-events:none}
#loginPage.login-premium .lp-input-icon svg,#loginPage.login-premium .lp-eye svg{display:block;width:calc(18 * var(--u));height:calc(18 * var(--u));fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#loginPage.login-premium .lp-eye{position:absolute;right:0!important;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:calc(42 * var(--u));height:calc(42 * var(--u))!important;min-width:0;padding:0;border:0!important;background:transparent!important;color:#8292a0!important;cursor:pointer;border-radius:8px}
#loginPage.login-premium .lp-eye.is-visible{color:#087bff!important}
#loginPage.login-premium .lp-options{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:calc(-2 * var(--u)) 0 calc(20 * var(--u))!important;min-height:calc(22 * var(--u))!important;line-height:1.4!important;color:#40505f!important;font-size:calc(12 * var(--u));font-weight:450}
#loginPage.login-premium .lp-remember{display:flex;align-items:center;gap:calc(8 * var(--u));cursor:pointer;white-space:nowrap}
#loginPage.login-premium .lp-remember input{width:calc(16 * var(--u));height:calc(16 * var(--u));margin:0;accent-color:#087bff;cursor:pointer}
#loginPage.login-premium .lp-forgot{padding:3px 0;border:0;background:none;font:600 calc(12 * var(--u)) 'Noto Sans Thai',Arial,sans-serif;color:#1688dd!important;cursor:pointer}
#loginPage.login-premium .lp-forgot:hover{text-decoration:underline}
#loginPage.login-premium .lp-btn{display:flex;align-items:center;justify-content:center;gap:calc(13 * var(--u));width:100%!important;height:calc(48 * var(--u))!important;margin:0!important;padding:0 12px!important;border:0;border-radius:calc(9 * var(--u))!important;background:linear-gradient(105deg,#0585ff,#0067ff)!important;color:#fff!important;font:600 calc(14 * var(--u)) 'Noto Sans Thai',Arial,sans-serif!important;box-shadow:0 4px 10px #007aff0c!important;cursor:pointer;transition:filter .15s,transform .15s}
#loginPage.login-premium .lp-btn>span[aria-hidden]{font:400 calc(23 * var(--u))/1 Arial,sans-serif;color:#b8e2ff}
#loginPage.login-premium .lp-btn-icon{display:none}
#loginPage.login-premium .lp-btn:not(:has(>span[aria-hidden])):not(.busy)::after{content:'→';font-size:calc(23 * var(--u));color:#b8e2ff}
#loginPage.login-premium .lp-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}
#loginPage.login-premium .lp-btn:disabled{opacity:.65;cursor:wait;transform:none}
#loginPage.login-premium .lp-err{display:none;margin:0 0 12px;padding:9px 12px;border:1px solid #ffd6d6;border-radius:8px;background:#fff4f4!important;color:#b32626!important;border-color:#ffd6d6!important;box-shadow:none!important;font-size:12px;text-align:left;line-height:1.5}
#loginPage.login-premium .lp-note{display:block!important;margin:calc(62 * var(--u)) 0 0!important;font:400 calc(10 * var(--u))/1.5 'Noto Sans Thai',Arial,sans-serif!important;color:#939eaa!important;text-align:center;letter-spacing:0!important;text-transform:none!important}
#loginPage.login-premium .lp-note::before,#loginPage.login-premium .lp-note::after{display:none!important}
#loginPage.login-premium #devFixtureLogin{display:block!important;position:relative;flex-shrink:0;max-width:95%;width:max-content;margin:calc(12 * var(--u)) auto 0;padding:4px 9px;border:1px dashed #d6e5ef;border-radius:6px;background:#f8fcff;color:#758b9e;font:400 10px 'Noto Sans Thai',Arial,sans-serif;cursor:pointer}
#loginPage.login-premium :is(button,input,a):focus-visible{outline:2px solid #1785f0;outline-offset:3px}
@media(min-width:901px){#loginPage.login-premium .login-form-panel:has(#devFixtureLogin){padding-top:calc(74 * var(--u))}}
@media(max-width:900px){
 #loginPage.login-premium{--u:1px;grid-template-columns:minmax(0,1fr)}
 #loginPage.login-premium .login-visual-panel{display:none}
 #loginPage.login-premium .login-form-panel{min-height:max(100%,640px);padding:36px 22px;flex-direction:column}
 #loginPage.login-premium #devFixtureLogin{position:static;transform:none;max-width:100%;margin:20px auto 0;flex-shrink:0}
 #loginPage.login-premium .lp-wrap{max-width:410px!important}
 #loginPage.login-premium .lp-brand-inline{margin-bottom:34px}
 #loginPage.login-premium .lp-login-box{padding:30px 24px 26px!important}
 #loginPage.login-premium .lp-title{font-size:24px!important}
 #loginPage.login-premium .lp-inp{font-size:16px;height:46px!important;padding-left:40px!important}
 #loginPage.login-premium .lp-sub{font-size:13px!important}
 #loginPage.login-premium .lp-note{margin-top:36px!important}
 #loginPage.login-premium .lp-btn{height:48px!important}
 #loginPage.login-premium .lp-options{font-size:11px}
 #loginPage.login-premium .lp-forgot{font-size:11px}
}
@media(max-width:360px){#loginPage.login-premium .login-form-panel{padding-left:14px;padding-right:14px}#loginPage.login-premium .lp-login-box{padding:28px 17px 24px!important}#loginPage.login-premium .lp-title{font-size:22px!important}}
@media(prefers-reduced-motion:reduce){#loginPage.login-premium *{transition:none!important;animation:none!important}}
