:root{color-scheme:light;--ink:#142d35;--muted:#64747b;--green:#176453;--green-dark:#123c36;--line:#dce5e3;--paper:#f4f7f5;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans Thai",Tahoma,sans-serif;font-family:var(--font);font-synthesis:none;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{min-width:280px;scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 88% 0,#e8f0e9 0,transparent 50%),var(--paper);font-size:16px;line-height:1.5}a{color:inherit}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #087b80;outline-offset:5px}svg{display:block;width:100%;height:100%}.page-shell{max-width:1264px;min-height:100vh;margin:0 auto;padding:0 48px;display:flex;flex-direction:column}.skip-link{position:fixed;top:-90px;left:24px;padding:12px 20px;border-radius:10px;background:var(--green-dark);color:#fff;text-decoration:none;z-index:10}.skip-link:focus{top:12px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:126px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;flex-shrink:0}.brand-mark{width:46px;height:46px;display:grid;place-items:center;padding:10px;color:#f1f8ec;background:var(--green-dark);border-radius:14px}.brand-copy{display:grid;gap:1px}.brand-copy strong{font-size:21px;font-weight:750;letter-spacing:-.65px}.brand-copy>span{font-size:12px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:24px}.test-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#667650;white-space:nowrap}.test-badge>span:first-child{width:6px;height:6px;border-radius:50%;background:#88a967}.language-switch{display:flex;gap:3px;padding:4px;border:1px solid #dce4df;border-radius:11px;background:#ecf1ed}.language-switch button{border:0;background:transparent;min-width:44px;min-height:36px;padding:5px 11px;border-radius:7px;font-size:12px;font-weight:650;cursor:pointer;color:#77817e}.language-switch button[aria-pressed=true]{background:#fff;color:var(--green-dark);box-shadow:0 1px 4px #1c302012}.language-switch button:hover{color:var(--green-dark)}main{flex:1}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding:55px 0 42px}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--green);font-size:12px;font-weight:700;margin:0 0 17px;letter-spacing:.25px}.eyebrow>span:first-child{width:18px;height:2px;background:currentColor}h1{font-size:clamp(36px,4.2vw,52px);font-weight:740;line-height:1.3;letter-spacing:-1.65px;margin:0}.intro-description{margin:19px 0 0;color:var(--muted);font-size:15px}.intro-note{display:flex;align-items:flex-start;gap:12px;max-width:285px;padding:17px 20px;background:#eaf0e9;border:1px solid #e0e8dd;border-radius:12px;margin-bottom:2px;color:#54754f}.intro-note>svg{width:23px;height:23px;flex-shrink:0;margin-top:2px}.intro-note strong{font-size:13px;font-weight:650}.intro-note p{font-size:11px;line-height:1.7;margin:4px 0 0;color:#74816d}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.section-heading h2{font-size:15px;font-weight:700;margin:0}.section-heading p{font-size:12px;color:#83908f;margin:0}.systems:focus{outline:none}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.module-card{background:#fff;border:1px solid #dde5e2;border-radius:19px;min-height:288px;padding:28px 28px 22px;text-decoration:none;box-shadow:0 4px 13px #1b403204;display:flex;flex-direction:column;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.module-card:hover{transform:translateY(-4px);border-color:#6f998b;box-shadow:0 13px 26px #163e3210}.card-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.module-icon{width:56px;height:56px;padding:10px;border-radius:15px;background:#e9f2ed;color:#2d6a55}.sales-card .module-icon{background:#eef0f5;color:#465b80}.attendance-card .module-icon{background:#f5f1e7;color:#8a744a}.module-number{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;color:#a1afaa;align-self:flex-start;padding-top:4px}.card-copy{margin:27px 0 22px}.card-copy h3{font-size:26px;font-weight:710;line-height:1.4;letter-spacing:-.8px;margin:0 0 7px}.card-copy p{font-size:13px;color:var(--muted);margin:0;line-height:1.7}.card-action{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #edf1ee;padding-top:16px;margin-top:auto;font-size:12px;font-weight:650;color:var(--green)}.arrow-circle{width:30px;height:30px;padding:6px;border:1px solid #e2ebe6;border-radius:50%;transition:background .18s ease,color .18s ease}.module-card:hover .arrow-circle{background:var(--green);border-color:var(--green);color:#fff}.finance-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px;padding:22px 27px;border-radius:15px;background:var(--green-dark);color:#f5faf6}.finance-copy{display:flex;align-items:center;gap:17px}.finance-icon{height:42px;width:42px;flex-shrink:0;padding:5px;color:#b8d7bf}.finance-copy h2{font-size:17px;font-weight:650;letter-spacing:-.2px;margin:0 0 3px}.finance-copy p{font-size:12px;line-height:1.7;color:#a7c0b7;margin:0}.finance-link{display:inline-flex;align-items:center;justify-content:center;gap:18px;flex-shrink:0;min-height:44px;padding:10px 17px;border:1px solid #507369;border-radius:9px;text-decoration:none;font-size:12px;font-weight:600;transition:background .18s ease,border-color .18s ease}.finance-link svg{width:17px;height:17px}.finance-link:hover{background:#ffffff0d;border-color:#abc4b7}.finance-link:focus-visible{outline-color:#d6ebac}.return-hint{display:flex;justify-content:center;align-items:center;gap:8px;margin:22px 0 0;font-size:11px;color:#85918c}.return-hint svg{width:15px;height:15px;flex-shrink:0}.footer{display:flex;align-items:center;gap:15px;padding:28px 0 25px;margin-top:46px;border-top:1px solid var(--line);font-size:11px;color:#8c9792}.footer>span:first-child{font-size:13px;font-weight:750;letter-spacing:1px;color:#75867e}.footer p{margin:0}.footer-test{margin-left:auto}
@media(min-width:1350px) and (min-height:950px){.intro{padding-top:75px;padding-bottom:50px}.module-card{min-height:315px}.finance-panel{margin-top:28px}.footer{margin-top:60px}}
@media(max-width:900px){.page-shell{padding:0 28px}.topbar{min-height:102px}.intro{padding-top:38px;padding-bottom:33px}.intro-note{max-width:250px;padding:14px}.module-grid{gap:14px}.module-card{padding:23px 21px 18px;min-height:275px}.card-copy h3{font-size:24px}.card-copy p{font-size:12px}.module-icon{width:51px;height:51px}.finance-panel{padding:21px}}
@media(max-width:680px){.page-shell{padding:0 22px}.topbar{min-height:94px;gap:12px}.brand{gap:10px}.brand-mark{width:39px;height:39px;padding:9px;border-radius:11px}.brand-copy strong{font-size:18px}.brand-copy>span{font-size:10px}.header-actions{gap:12px}.test-badge{display:none}.language-switch button{min-width:38px;padding:5px 9px;min-height:36px}.intro{display:block;padding:31px 0 28px}.eyebrow{font-size:11px;margin-bottom:13px}h1{font-size:38px;letter-spacing:-1.1px;line-height:1.3}.intro-description{font-size:13px;margin-top:13px}.intro-note{margin:23px 0 0;max-width:none;padding:12px 14px;align-items:center;gap:10px;border-radius:10px}.intro-note>svg{width:21px;height:21px;margin-top:0}.intro-note>div{display:flex;flex-wrap:wrap;gap:2px 12px;align-items:baseline}.intro-note strong{font-size:12px}.intro-note p{font-size:10px;margin:0}.section-heading{margin-bottom:12px;gap:12px}.section-heading h2{font-size:14px}.section-heading p{font-size:10px}.module-grid{grid-template-columns:1fr;gap:12px}.module-card{position:relative;display:grid;grid-template-columns:56px 1fr 31px;align-items:center;gap:17px;min-height:120px;padding:23px 20px;border-radius:15px}.card-top{display:block}.module-icon{width:53px;height:53px;padding:10px;border-radius:13px}.module-number{display:none}.card-copy{margin:0}.card-copy h3{font-size:23px;margin-bottom:3px}.card-copy p{font-size:11px;line-height:1.65}.card-action{border:0;padding:0;margin:0}.card-action>span:first-child{display:none}.arrow-circle{width:30px;height:30px}.module-card:hover{transform:translateY(-2px)}.finance-panel{margin-top:20px;padding:19px 18px;gap:12px;align-items:center}.finance-copy{gap:11px}.finance-icon{width:31px;height:31px;padding:2px}.finance-copy h2{font-size:15px}.finance-copy p{font-size:10px;max-width:150px}.finance-link{padding:9px 11px;font-size:11px;gap:9px;min-height:43px}.finance-link svg{width:15px;height:15px}.return-hint{font-size:10px;gap:6px;margin-top:18px}.footer{margin-top:29px;padding:22px 0;gap:10px;font-size:10px;flex-wrap:wrap}.footer-test{width:100%;margin-left:0;padding-left:0;font-size:10px}}
@media(max-width:355px){.page-shell{padding:0 15px}.brand-copy>span{display:none}.brand-copy strong{font-size:17px}.header-actions{gap:7px}.module-card{padding:19px 15px;grid-template-columns:45px 1fr 27px;gap:12px}.module-icon{width:45px;height:45px;padding:8px}.card-copy h3{font-size:21px}.card-copy p{font-size:10px}.finance-panel{padding:17px 13px}.finance-icon{display:none}.finance-copy p{max-width:140px}.section-heading p{max-width:145px;text-align:right}.return-hint{align-items:flex-start}.return-hint svg{margin-top:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.language-switch button{min-width:44px;min-height:44px}.finance-copy,.finance-copy>div{min-width:0}.finance-copy{flex:1}
[hidden]{display:none!important}.account-strip{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:21px 0;border-bottom:1px solid var(--line)}.account-strip strong{font-size:14px;font-weight:650}.account-strip p{font-size:12px;color:var(--muted);margin:4px 0 0}.account-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.signup-link,.login-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:9px;padding:10px 16px;font-size:12px;font-weight:650;text-decoration:none;cursor:pointer}.signup-link{background:var(--green);color:#fff;border:1px solid var(--green)}.signup-link:hover{background:var(--green-dark)}.login-link{background:#fff;color:var(--green-dark);border:1px solid #d8e2dc}.login-link:hover{border-color:#78978a}.free-label{font-size:12px;color:var(--green);font-weight:650}.module-card[aria-disabled=true],.finance-link[aria-disabled=true]{opacity:.65;cursor:wait}.module-card[aria-disabled=true]:hover{transform:none;box-shadow:none}.account-actions button:disabled{opacity:.6;cursor:wait}@media(max-width:680px){.account-strip{flex-wrap:wrap;gap:13px;padding:19px 0}.account-strip>div:first-child{width:100%}.account-strip strong{font-size:13px}.account-actions{flex-wrap:wrap;gap:9px}.signup-link,.login-link{font-size:12px;padding:10px 13px}.topbar{gap:10px}.brand-copy>span{font-size:9px}.brand-copy strong{font-size:17px}.language-switch{gap:0;padding:3px}.language-switch button{padding:5px 7px}.header-actions{gap:0}}@media(max-width:355px){.brand-mark{width:31px;height:31px;padding:7px}.brand{gap:7px}.brand-copy strong{font-size:15px}.language-switch button{min-width:39px;font-size:11px}.brand-copy>span{display:none}}

.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}body[data-page="home"] .systems{padding-top:28px}body[data-page="home"] #account-status{margin:0}

/* Five shared destinations; operational modules stay grouped on the first row. */
.module-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.module-grid>.module-card{grid-column:span 2}.module-grid>.finance-card,.module-grid>.membership-card{grid-column:span 3}.module-grid>.finance-link{display:flex;align-items:stretch;justify-content:flex-start;gap:0;min-height:288px;padding:28px 28px 22px;font-size:inherit;border:1px solid #dde5e2;border-radius:19px}.finance-card .module-icon{background:#e9f2ed;color:#2d6a55}.membership-card .module-icon{background:#eeeaf5;color:#71558d}.module-grid>.finance-link:hover{background:#fff;border-color:#6f998b}.module-grid>.finance-link .card-top svg,.module-grid>.finance-link .card-action svg{width:100%;height:100%}.session-actions{justify-content:flex-end;margin-top:20px}
@media(max-width:900px){.module-grid>.finance-link{padding:23px 21px 18px;min-height:275px}}
@media(max-width:680px){.module-grid{grid-template-columns:1fr}.module-grid>.module-card{grid-column:auto}.module-grid>.finance-link{display:grid;grid-template-columns:56px 1fr 31px;align-items:center;gap:17px;min-height:120px;padding:23px 20px;border-radius:15px}.module-grid>.finance-link .card-copy h3{font-size:21px}}
@media(max-width:355px){.module-grid>.finance-link{padding:19px 15px;grid-template-columns:45px 1fr 27px;gap:12px}.module-grid>.finance-link .card-copy h3{font-size:19px}}

.brand-clock{font-size:13px;font-weight:400;white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.5;color:var(--muted,#64747b)}
@media(max-width:650px){.topbar{flex-wrap:wrap;gap:12px}.brand{flex-wrap:wrap;gap:6px 12px;flex-shrink:1}.brand-clock{font-size:12px}}

/* Main system header: brand at the upper left and a two-line Bangkok clock. */
body[data-page="home"]>.topbar{min-height:0;padding:8px 12px;align-items:flex-start}
body[data-page="home"] .brand{align-items:flex-start;flex-wrap:wrap}
body[data-page="home"] .brand-subtitle{display:block}
body[data-page="home"] .brand-clock{display:grid;font-size:14.3px;line-height:1.5}
@media(max-width:650px){body[data-page="home"] .brand-clock{font-size:13.2px}}

.language-dropdown{position:relative;flex-shrink:0}
.language-dropdown>summary{cursor:pointer;padding:7px 12px;border:1px solid #dce4df;border-radius:9px;background:#fff;color:var(--green-dark);font-size:13px;font-weight:650;min-height:36px}
.language-dropdown>summary:focus-visible{outline:3px solid #087b80;outline-offset:3px}
.language-dropdown .language-switch{position:absolute;right:0;top:calc(100% + 6px);z-index:30;display:grid;min-width:130px;box-shadow:0 8px 24px #123c3620}
.language-dropdown:not([open]) .language-switch{display:none}
.language-dropdown .language-switch button{text-align:left;white-space:nowrap}

/* Two modules per row; card heights are 20% lower than the previous layout. */
body[data-page="home"]>.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:12px;padding:12px max(12px,calc((100vw - 1168px)/2));width:100%}
body[data-page="home"] .brand{min-width:0;flex-shrink:1}
body[data-page="home"] .brand-copy strong{font-size:20px;overflow-wrap:anywhere}
body[data-page="home"] .brand-subtitle{font-size:12px;white-space:nowrap}
body[data-page="home"] .brand-clock{display:grid;white-space:nowrap;font-size:14.95px;line-height:1.5;text-align:right}
body[data-page="home"] .module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:80%;margin-inline:auto}
body[data-page="home"] .module-grid>.module-card{grid-column:auto;display:flex;align-items:center;justify-content:center;min-height:195.84px;padding:19.04px 22px 14.96px;text-align:center;min-width:0}
body[data-page="home"] .card-copy{margin:0;min-width:0}
body[data-page="home"] .card-copy h3{font-size:24px;line-height:1.45;margin:0;letter-spacing:0;overflow-wrap:anywhere}
body[data-page="home"] .finance-card .card-copy{width:100%;container-type:inline-size}
body[data-page="home"] .finance-card .card-copy h3{font-size:min(24px,16cqi)}
body[data-page="home"] #account-status:not([hidden]){margin:12px 0;padding:10px;border:1px solid #ba7a66;border-radius:8px}
body[data-page="home"] .return-hint{display:none}
@media(min-width:1350px) and (min-height:950px){body[data-page="home"] .module-grid>.module-card{min-height:214.2px}}
@media(max-width:900px){body[data-page="home"] .module-grid>.module-card{min-height:187px;padding:15.64px 16px 12.24px}}
@media(max-width:680px){body[data-page="home"]>.topbar{gap:8px;padding:10px 12px;grid-template-columns:minmax(0,1fr) auto auto}body[data-page="home"] .brand-copy strong{font-size:16px}body[data-page="home"] .brand-subtitle{font-size:10px}body[data-page="home"] .brand-clock{font-size:11.5px}body[data-page="home"] .language-dropdown>summary{font-size:12px;padding:6px}body[data-page="home"] .module-grid{gap:10px}body[data-page="home"] .module-grid>.module-card{min-height:81.6px;padding:15.64px 12px;border-radius:12px}body[data-page="home"] .card-copy h3{font-size:18px}}
@media(max-width:355px){body[data-page="home"] .page-shell{padding-inline:12px}body[data-page="home"] .brand-copy strong{font-size:14px}body[data-page="home"] .brand-subtitle{font-size:9px}body[data-page="home"] .brand-clock{font-size:10.35px}body[data-page="home"] .module-grid>.module-card{padding:15.2px 10px}body[data-page="home"] .card-copy h3{font-size:16px}}

.language-toggle{display:inline-flex;align-items:center;justify-content:center;width:max-content;cursor:pointer;min-height:44px;padding:7px 12px;border:1px solid #dce4df;border-radius:9px;background:#fff;color:var(--green-dark);font:inherit;font-size:13px;font-weight:650;white-space:nowrap}.language-toggle:focus-visible{outline:3px solid #087b80;outline-offset:3px}body[data-page="home"] .sales-card .card-copy p{margin-top:5px}@media(max-width:680px){.language-toggle{padding:6px;font-size:12px}}

/* The language choice sits between the identity and clock on the same row. */
body[data-page="home"]>.topbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}
body[data-page="home"]>.topbar>.language-dropdown{grid-column:2;grid-row:1;justify-self:center}
body[data-page="home"]>.topbar>.brand{grid-column:1;grid-row:1}
body[data-page="home"]>.topbar>.brand-clock{grid-column:3;grid-row:1}
body[data-page="home"] .brand-copy{min-width:0;max-width:100%}
body[data-page="home"] .brand-copy strong,body[data-page="home"] .brand-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body[data-page="home"] .language-toggle{font-size:14.95px}
body[data-page="home"] .brand-subtitle{font-size:13.2px}
body[data-page="home"] .sales-card .card-copy p{font-size:14.95px}
@media(max-width:680px){body[data-page="home"] .language-toggle{font-size:13.8px}body[data-page="home"] .brand-subtitle{font-size:11px}body[data-page="home"] .sales-card .card-copy p{font-size:12.65px}}
@media(max-width:355px){body[data-page="home"] .brand-subtitle{font-size:9.9px}}

/* Immediate confirmation persists while the chosen module opens. */
body[data-page="home"] [data-main-link]:active,
body[data-page="home"] [data-main-link].is-opening{position:relative;background:#d9f2e7!important;border-color:#087b60!important;outline:3px solid #087b60;outline-offset:2px;box-shadow:0 0 0 5px #087b6020!important}
body[data-page="home"] [data-main-link].is-opening::after{content:attr(data-opening-label);position:absolute;right:10px;bottom:5px;font-size:12px;font-weight:700;color:#075e49;line-height:1.2}

/* Home owns one identity/language/clock row even before shared layout loads. */
body[data-page="home"]>.topbar{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;overflow-x:auto;scrollbar-width:thin}
body[data-page="home"]>.topbar>.brand{display:flex;flex-direction:column;flex-wrap:nowrap;flex:0 0 auto;width:max-content}
body[data-page="home"]>.topbar>:is(.language-dropdown,.brand-clock){flex:0 0 auto}

/* Latest home layout: identity, Bangkok date/time and language together at left. */
body[data-page="home"]>.topbar{justify-content:flex-start}
body[data-page="home"]>.topbar>.brand{order:0}
body[data-page="home"]>.topbar>.brand-clock{order:1}
body[data-page="home"]>.topbar>.language-dropdown{order:2}
body[data-page="home"]>.topbar>#customer-service-return{order:-1;flex:0 0 auto;min-height:53px;height:53px;max-width:18ch;padding:4px 8px;background:#10365f;border-color:#10365f;color:#fff;font:600 14px/1.2 system-ui,sans-serif;white-space:pre-line;text-align:center}
body[data-page="home"] .chatbot-card .card-copy p{margin-top:5px;font-size:14.95px}
@media(max-width:680px){body[data-page="home"] .chatbot-card .card-copy p{font-size:12.65px}}

/* Each home track is85% of its former half-width: .85 * (100% - 4px) / 2.
   Keep two equal columns, the actual4px gap and the upper-left alignment. */
body[data-page="home"]{display:flex;flex-direction:column;min-height:100dvh}
body[data-page="home"]>.module-functions[data-rcb-section="2"]{display:grid;grid-template-columns:repeat(2,minmax(0,calc(42.5% - 1.7px)));justify-content:start;align-items:stretch;align-content:start;gap:4px;padding:4px;margin:0;width:100%;border-bottom:0;background:transparent}
body[data-page="home"]>.module-functions>.module-card{grid-column:auto;width:100%;max-width:100%;min-width:0;min-height:53px;padding:8px 12px;justify-self:stretch}
body[data-page="home"]>.page-shell{flex:1 0 auto;width:100%;max-width:none;min-height:0;margin:0;padding:0}
/* A saved unresolved question needs attention; read errors never set this. */
body[data-page="home"]>.module-functions>.chatbot-card.has-unresolved:not(.is-opening){background:#fff0f0!important;border-color:#dfa0a0!important;box-shadow:inset 0 0 0 1px #f2cccc}
