:root{--glga-green:#0b714f;--glga-dark:#104335;--glga-ink:#163d32;--glga-muted:#73877e;--glga-line:#dce8df;--glga-bg:#f3f8f4;--glga-panel:#fff}
body.glg-uea-active{background:var(--glga-bg)!important;padding:0!important;margin:0!important;font-family:system-ui,-apple-system,'Noto Sans Thai',Tahoma,sans-serif;color:var(--glga-ink)}
body.glg-uea-active #masthead,body.glg-uea-active .site-header,body.glg-uea-active #site-header,body.glg-uea-active .elementor-location-header,body.glg-uea-active .elementor-location-footer,body.glg-uea-active footer.site-footer,body.glg-uea-active #colophon,body.glg-uea-active .page-header,body.glg-uea-active .entry-header,body.glg-uea-active .wp-block-post-title,body.glg-uea-active .page-title,body.glg-uea-active .wp-site-blocks>header,body.glg-uea-active .wp-site-blocks>footer{display:none!important}
body.glg-uea-active .entry-content,body.glg-uea-active .wp-block-post-content,body.glg-uea-active .site-main,body.glg-uea-active .content-area,body.glg-uea-active main#main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
body.glg-uea-active .wp-site-blocks,body.glg-uea-active #page,body.glg-uea-active #content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.glga-app,.glga-app *{box-sizing:border-box}
.glga-app{width:100%;min-height:100dvh;background:var(--glga-bg);color:var(--glga-ink);font-family:system-ui,-apple-system,'Noto Sans Thai',Tahoma,sans-serif;line-height:1.5}
.glga-app button,.glga-app a{font-family:inherit;touch-action:manipulation}
.glga-app a{color:var(--glga-green)}
.glga-app button:focus-visible,.glga-app a:focus-visible{outline:3px solid #2bc390;outline-offset:2px}
.glga-topbar{position:sticky;top:0;z-index:160;display:flex;align-items:center;justify-content:space-between;min-height:70px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--glga-line);padding:9px max(16px,env(safe-area-inset-left));box-shadow:0 2px 14px #12422a0c;backdrop-filter:blur(10px)}
.glga-brand{display:flex;align-items:center;gap:10px;min-width:0}
.glga-brand img{width:42px;height:42px;object-fit:contain;border-radius:12px}
.glga-brand b{font-size:18px;font-weight:850;line-height:1.2;letter-spacing:-.02em;color:var(--glga-dark)}
.glga-brand b span{font-weight:670}
.glga-brand small{display:block;letter-spacing:.13em;color:var(--glga-muted);font-size:9px;font-weight:750}
.glga-topbar-actions{display:flex;gap:10px;align-items:center}
.glga-online{font-size:11px;color:#25775a;background:#e8f6ed;padding:5px 10px;border-radius:999px;font-weight:700;white-space:nowrap}
.glga-online>span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22b477;margin-right:4px}
.glga-top-more{border:1px solid var(--glga-line);background:#fff;border-radius:11px;color:var(--glga-dark);width:40px;height:40px;display:grid;place-items:center;cursor:pointer}
.glga-main{width:min(1120px,100%);margin:0 auto;padding:20px 18px 105px}
.glga-panel[hidden]{display:none!important}
.glga-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 4px 12px}
.glga-kicker{color:var(--glga-green);font-weight:830;letter-spacing:.11em;font-size:10px}
.glga-intro h1{font-size:clamp(23px,4vw,32px);line-height:1.25;letter-spacing:-.035em;margin:5px 0!important;color:var(--glga-dark);font-weight:850}
.glga-intro p{margin:0!important;color:var(--glga-muted);font-size:13px}
.glga-avatar{width:52px;height:52px;border-radius:17px;background:linear-gradient(135deg,#d4ecde,#eaf5ec);display:grid;place-items:center;font-size:23px;font-weight:800;color:#217553;border:2px solid #fff;box-shadow:0 2px 10px #0c643319}
/* GLG Employee Portal stays mounted and continues owning all clock/payroll operations. */
.glga-app #glg-employee-portal.glg-ep{max-width:100%!important;margin:0 auto!important;box-shadow:none!important;border:0!important;background:transparent!important;padding:0!important}
.glga-app #glg-employee-portal .ep-header{display:none!important}
.glga-app #glg-employee-portal .ep-toolbar-premium,.glga-app #glg-employee-portal .ep-tabs,.glga-app #glg-employee-portal .ep-mobile-dock{display:none!important}
.glga-app #glg-employee-portal .ep-app-shell{max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important}
.glga-app #glg-employee-portal .ep-tab-content{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important}
.glga-app #glg-employee-portal .ep-hero-card{margin-top:0!important}
.glga-app[data-screen]:not([data-screen="home"]) .glga-intro{display:none}
.glga-app[data-screen]:not([data-screen="home"]) #glg-employee-portal .ep-hero-card{display:none!important}
/* Overwrite native portal fixed bars ONLY inside this application. */
.glga-app .ep-mobile-dock,.glga-app .glgwh-app-dock{display:none!important}
.glga-page-title{margin:7px 0 23px}
.glga-page-title h2{font-size:clamp(23px,4vw,29px);line-height:1.3;color:var(--glga-dark);margin:4px 0}
.glga-page-title p{color:var(--glga-muted);font-size:13px;margin:2px 0}
.glga-group-title{font-size:13px!important;font-weight:800!important;color:#719084!important;letter-spacing:.015em;margin:21px 2px 10px!important}
.glga-menu-group{background:#fff;border:1px solid var(--glga-line);border-radius:18px;box-shadow:0 3px 14px #16523408;overflow:hidden}
.glga-menu-item{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 15px;min-height:76px;background:#fff;color:var(--glga-ink)!important;text-decoration:none!important;cursor:pointer;border:0;border-bottom:1px solid #e7eee9}
.glga-menu-item:last-child{border-bottom:0}
.glga-menu-item:hover{background:#f5faf6}
.glga-menu-item>svg:last-child{width:17px;height:17px;flex:none;color:#9bb4a7}
.glga-menu-item>a{text-decoration:none}
.glga-menu-icon{display:grid;place-items:center;width:43px;height:43px;min-width:43px;border-radius:14px;background:#e9f6ee;color:#16765a}
.glga-menu-txt{display:flex;flex-direction:column;min-width:0;flex:1}
.glga-menu-txt strong{font-size:15px;font-weight:770;line-height:1.35}
.glga-menu-txt small{font-size:12px;color:var(--glga-muted);margin-top:2px;line-height:1.35}
.glga-notice{font-size:12px;color:#5a796c;background:#e9f4ec;border:1px solid #d7e7dc;border-radius:12px;padding:13px;margin:24px 0}
.glga-embedded-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 2px 15px}
.glga-embedded-heading h2{margin:4px 0!important;font-size:23px!important;line-height:1.27;color:var(--glga-dark)}
.glga-embedded-heading p{font-size:12px;color:var(--glga-muted);margin:4px 0}
.glga-frame-controls{display:flex;gap:7px;align-items:center}
.glga-iconbtn{width:40px;height:40px;border:1px solid var(--glga-line);background:#fff;border-radius:12px;color:var(--glga-green);display:grid;place-items:center;cursor:pointer}
.glga-iframe{width:100%;display:block;background:#fff;min-height:68vh;height:calc(100dvh - 245px);max-height:1250px;border:1px solid var(--glga-line);border-radius:15px;box-shadow:0 4px 18px #18442b0a}
.glga-frame-loader{background:#fff;border-radius:13px;padding:14px;text-align:center;color:#587c6e;font-size:13px}
.glga-frame-loader[hidden]{display:none}
.glga-embedded-foot{font-size:11px;color:var(--glga-muted);margin:10px 1px}
.glga-panel-hr .glgr-hr{margin:0!important;max-width:none!important}
.glga-dock{position:fixed;bottom:0;left:0;right:0;z-index:300;display:flex;align-items:stretch;justify-content:center;background:#fff;border-top:1px solid var(--glga-line);box-shadow:0 -5px 20px #11452e12;min-height:70px;padding:6px max(8px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-right))}
.glga-dock button{flex:1 1 0;max-width:210px;min-width:0;border:0;background:transparent;color:#81978b;border-radius:13px;display:flex;gap:3px;align-items:center;justify-content:center;flex-direction:column;font-weight:720;font-size:11px;cursor:pointer;padding:5px 4px}
.glga-dock button svg{width:22px;height:22px}
.glga-dock button.is-active{color:var(--glga-green);background:#e9f6ed}
.glga-snackbar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(86px + env(safe-area-inset-bottom,0px));background:#173e33;color:#fff;border-radius:12px;padding:11px 14px;font-size:13px;z-index:310;box-shadow:0 8px 20px #002a1c35}
.glga-snackbar[hidden]{display:none}
.glga-login,.glga-dependency{width:min(600px,calc(100% - 24px));min-height:80vh;margin:18px auto;padding:35px 16px;text-align:center;font-family:system-ui,-apple-system,'Noto Sans Thai',sans-serif}
.glga-login-logo img{width:83px;height:83px;object-fit:contain}
.glga-login h1{font-size:26px;color:var(--glga-dark);margin:12px 0 7px}
.glga-login>p{font-size:14px;color:#718578;margin:0 auto 20px;max-width:370px}
.glga-login .glg-ep{background:transparent!important;box-shadow:none!important}
.glga-login .ep-header{display:none!important}
@media (min-width:1150px){.glga-main{padding:30px 20px 120px}}
@media (max-width:720px){.glga-topbar{min-height:63px}.glga-topbar .glga-online{display:none}.glga-brand img{width:39px;height:39px}.glga-main{padding:11px 12px 104px}.glga-avatar{width:43px;height:43px;min-width:43px;border-radius:14px;font-size:20px}.glga-intro{padding:10px 3px 13px}.glga-intro h1{font-size:24px}.glga-intro p{font-size:12px}.glga-iframe{min-height:calc(100dvh - 225px);height:calc(100dvh - 225px);border-radius:12px}.glga-embedded-heading h2{font-size:21px!important}.glga-dock button{font-size:10px}.glga-dock button svg{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.glga-app *{scroll-behavior:auto!important;animation-duration:.01ms!important}}

/* Attendance always displays the ORIGINAL native clock-in/out buttons. */
.glga-attendance-links{display:none;gap:8px;margin:10px 0 16px}
.glga-app[data-screen="attendance"] .glga-attendance-links,.glga-app[data-screen="attendance-history"] .glga-attendance-links{display:flex}
.glga-attendance-links button{flex:1;min-width:0;min-height:47px;display:flex;align-items:center;justify-content:center;gap:7px;background:#fff;border:1px solid var(--glga-line);border-radius:12px;color:#4b7665;font-size:13px;font-weight:750;cursor:pointer;padding:9px}
.glga-attendance-links button.is-active{background:#e1f3e8;color:#0a7250;border-color:#7bd5a7}
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-tab-content>.ep-hero-card,
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-tab-content>.ep-note,
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-tab-content>.ep-overview-cards,
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-tab-content>.ep-system-launcher,
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-tab-content>.ep-home-grid~*{display:none!important}
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-home-grid>.ep-card:not(.ep-card-attendance){display:none!important}
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-home-grid{display:block!important}
.glga-app[data-screen="attendance"] #glg-employee-portal .ep-home-grid>.ep-card-attendance{max-width:none!important;width:100%!important}
/* Month selector remains available on history, payroll and HQ views. */
.glga-app[data-screen="wages"] #glg-employee-portal .ep-toolbar-premium,
.glga-app[data-screen="attendance-history"] #glg-employee-portal .ep-toolbar-premium,
.glga-app[data-screen="overview"] #glg-employee-portal .ep-toolbar-premium{display:flex!important;align-items:center;justify-content:flex-end;padding:8px 4px;background:transparent!important;border:0!important;box-shadow:none!important;gap:12px}
.glga-app[data-screen="wages"] #glg-employee-portal .ep-toolbar-title,
.glga-app[data-screen="attendance-history"] #glg-employee-portal .ep-toolbar-title,
.glga-app[data-screen="overview"] #glg-employee-portal .ep-toolbar-title{display:none!important}
.glga-app[data-screen="wages"] #glg-employee-portal .ep-toolbar-controls,
.glga-app[data-screen="attendance-history"] #glg-employee-portal .ep-toolbar-controls,
.glga-app[data-screen="overview"] #glg-employee-portal .ep-toolbar-controls{display:flex;justify-content:flex-end;align-items:center;gap:9px}
/* v1.1 compact mobile-first shell: no duplicated theme or 2nd welcome heading */
.glga-standalone-root{min-height:100dvh;width:100%;overflow-x:clip}
.glga-standalone .glga-topbar{min-height:54px;padding:7px 14px}
.glga-standalone .glga-brand img{width:36px;height:36px}
.glga-standalone .glga-brand b{font-size:16px}
.glga-standalone .glga-brand small{font-size:8px;letter-spacing:.1em}
.glga-standalone .glga-top-more{width:35px;height:35px}
.glga-standalone .glga-main{padding-top:12px}
.glga-standalone #glg-employee-portal #ep-app{padding:0!important}
.glga-standalone #glg-employee-portal .ep-hero-card{padding:12px 15px!important;min-height:0!important;display:flex!important;gap:0!important;align-items:center!important;border-radius:16px!important;margin:4px 0 12px!important;box-shadow:0 5px 15px #0b523717!important}
.glga-standalone #glg-employee-portal .ep-hero-copy{display:none!important}
.glga-standalone #glg-employee-portal .ep-hero-user{min-width:0!important;width:100%!important;background:transparent!important;border:none!important;backdrop-filter:none!important;box-shadow:none!important;padding:0!important;gap:11px!important}
.glga-standalone #glg-employee-portal .ep-hero-user .ep-avatar{width:44px!important;height:44px!important;border-radius:13px!important}
.glga-standalone #glg-employee-portal .ep-hero-user strong{font-size:15px!important;line-height:1.25}
.glga-standalone #glg-employee-portal .ep-hero-user small{font-size:11px!important}
.glga-capture-shortcuts,.glga-projects-camera{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:5px 0 12px}
.glga-capture-cta,.glga-projects-camera button{display:flex;align-items:center;text-align:left;gap:10px;padding:13px 12px;border-radius:14px;border:1px solid #139367;background:linear-gradient(140deg,#087e56,#1b9c74);color:#fff;cursor:pointer;box-shadow:0 5px 15px #14493512}
.glga-capture-cta svg,.glga-projects-camera button svg{width:24px;height:24px;flex:none}
.glga-capture-cta span{min-width:0}.glga-capture-cta strong{display:block;font-size:13px;font-weight:800;color:inherit}.glga-capture-cta small{display:block;font-size:10px;color:#ddf5e8}
.glga-capture-cta-lite,.glga-projects-camera button:nth-child(2){background:#fff;border-color:#cfdfd7;color:#0a6849;box-shadow:none}.glga-capture-cta-lite small{color:#75887e}
.glga-projects-camera{margin:0 0 12px}.glga-projects-camera button{justify-content:center;font-weight:800;font-size:12px}
.glga-panel-camera{max-width:100%;min-width:0}
@media(max-width:720px){
 .glga-standalone .glga-main{padding:9px 12px calc(90px + env(safe-area-inset-bottom,0px))}
 .glga-standalone .glga-topbar{min-height:51px;padding:5px 12px}
 .glga-standalone .glga-brand img{width:33px;height:33px}
 .glga-capture-cta{padding:11px 10px;gap:7px}
 .glga-capture-cta svg{width:20px;height:20px}
 .glga-capture-cta strong{font-size:12px}
 .glga-capture-cta small{font-size:9px}
 .glga-standalone #glg-employee-portal .ep-card{box-shadow:0 3px 12px #0f4a2a09!important}
 .glga-standalone #glg-employee-portal .ep-home-grid{gap:10px!important}
 .glga-standalone #glg-employee-portal .ep-card-attendance{padding:16px 13px!important}
 .glga-dock{min-height:65px;padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom,0px))}
 .glga-dock button{min-height:52px}
}

/* Keep privacy preference control accessible but clear of the 5-tab mobile dock. */
body.glga-standalone .cky-btn-revisit-wrapper,
body.glga-standalone #cookie-law-info-again,
body.glga-standalone #cmplz-manage-consent {bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;z-index:350!important}

/* GLG v1.3.7 - one-screen, mobile-first home. Native functionality remains mounted. */
.glga-mobile-home{display:none}
@media(max-width:720px){
 .glga-app[data-screen="home"] .glga-mobile-home{display:block!important}
 .glga-app[data-screen="home"] #glg-employee-portal{display:none!important}
 .glga-app[data-screen="home"] .glga-panel-native>.glga-team-shortcut,
 .glga-app[data-screen="home"] .glga-panel-native>.glga-capture-shortcuts{display:none!important}
 .glga-app .glga-panel-native>.glga-team-shortcut,
 .glga-app .glga-panel-native>.glga-capture-shortcuts{display:none!important}
 .glga-mobile-home{padding:3px 0 16px;color:#183e32;font-size:14px}
 .glga-mobile-welcome{background:linear-gradient(112deg,#064938,#12845e);border-radius:18px;padding:17px 17px 18px;color:#fff;box-shadow:0 9px 18px #0b492217}
 .glga-mobile-greeting{display:flex;flex-direction:column;gap:3px;min-width:0}
 .glga-mobile-eyebrow{font-size:10px;letter-spacing:.13em;color:#bee7d0;font-weight:800}
 .glga-mobile-greeting strong{font-size:19px;line-height:1.32;letter-spacing:-.015em;overflow-wrap:anywhere;color:#fff;font-weight:850}
 .glga-mobile-greeting small{font-size:11px;color:#e3f5e9}
 .glga-mobile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0}
 .glga-mobile-action{width:100%;min-width:0;min-height:90px;display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left;background:#fff;border:1px solid #d4e5dc;border-radius:15px;padding:13px 12px;color:#11543d;box-shadow:0 2px 8px #153c2808;cursor:pointer}
 .glga-mobile-action.glga-mobile-primary{background:#087f55;border-color:#087f55;color:#fff}
 .glga-mobile-action svg{width:25px;height:25px;min-width:25px}
 .glga-mobile-action span{display:flex;flex-direction:column;min-width:0;gap:3px}
 .glga-mobile-action strong{font-size:14px;line-height:1.2;color:inherit;font-weight:800}
 .glga-mobile-action small{font-size:10px;color:#758f81;line-height:1.35;overflow-wrap:anywhere}
 .glga-mobile-primary small{color:#d8f4e5}
 .glga-mobile-shortlinks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .glga-mobile-shortlinks button{padding:10px 5px;border:1px solid #dce9e1;background:#fff;border-radius:12px;color:#205b48;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:11px;font-weight:750;min-height:66px;cursor:pointer}
 .glga-mobile-shortlinks svg{width:19px;height:19px}
 .glga-mobile-announcement{background:#fff8ed;border:1px solid #f2dfb7;border-radius:15px;padding:12px 14px;margin:13px 0 0}
 .glga-mobile-announcement[hidden],.glga-mobile-announcement [hidden]{display:none!important}
 .glga-mobile-announcement-head{display:flex;align-items:center;gap:8px;color:#70511b;font-size:13px}
 .glga-mobile-announcement-head svg{width:17px;height:17px}
 .glga-mobile-announcement p{margin:7px 0 0;font-size:12px;line-height:1.55;color:#6b5732;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
 .glga-mobile-announcement [data-glga-announcement-full]{white-space:pre-wrap;overflow-wrap:anywhere;color:#4c4537;font-size:12px;line-height:1.65;margin-top:8px}
 .glga-mobile-announcement button{border:0;background:transparent;padding:8px 0 0;color:#087653;font-size:12px;font-weight:800;cursor:pointer}
 .glga-mobile-hint{font-size:11px;color:#7b8c83;margin:11px 4px 2px;text-align:center}
 .glga-standalone .glga-main{padding:9px 12px calc(92px + env(safe-area-inset-bottom,0px))!important}
 .glga-standalone .glga-topbar{min-height:50px!important;padding:6px 12px!important}
 .glga-standalone .glga-brand img{height:33px!important;width:33px!important}
 .glga-app[data-screen="home"] .glga-main{overflow:visible}
}
