/* GLG CONNECT — frontend UI (isolated from the active WordPress theme) */
.glg-app{--glg-dark:#0c382c;--glg-main:#126a49;--glg-bright:#2aa875;--glg-ink:#142b25;--glg-muted:#6a7b74;--glg-line:#e0ebe4;--glg-bg:#f5f9f5;max-width:1220px;margin:24px auto 60px;font-family:system-ui,-apple-system,"Noto Sans Thai",Tahoma,sans-serif;color:var(--glg-ink);font-size:15px;line-height:1.6;box-sizing:border-box}
.glg-app *, .glg-app *:before, .glg-app *:after{box-sizing:border-box}
.glg-app a{color:#086c47;text-decoration:none}
.glg-app a:hover{text-decoration:underline}
.glg-app h1,.glg-app h2,.glg-app h3{font-family:inherit;line-height:1.4;letter-spacing:0;color:var(--glg-ink);margin:0}
.glg-app h1{font-weight:800;font-size:clamp(28px,3.2vw,43px)}
.glg-app h2{font-weight:750;font-size:20px;margin-bottom:12px}
.glg-app h3{font-weight:700;font-size:16px}
.glg-app p{margin:8px 0 14px}
.glg-app .glg-muted{color:var(--glg-muted)}
.glg-app .glg-small{font-size:13px}
.glg-app .glg-center{text-align:center}
.glg-app .glg-narrow{max-width:570px}
.glg-app.glg-narrow{max-width:590px}
.glg-head{position:relative;text-align:center;min-height:204px;margin-bottom:22px;padding:18px 12px 12px;border-radius:23px;background:radial-gradient(circle at 50% -10%,#e8f8ec 0,#f8fcf7 65%,#fff 100%)}
.glg-logo{width:76px;height:76px;object-fit:contain;display:block;margin:0 auto 8px}
.glg-head .glg-overline{font-size:11px;letter-spacing:2px;font-weight:750;color:var(--glg-main);margin:2px 0 10px}
.glg-head h1{margin:2px 0 8px}
.glg-head p{color:var(--glg-muted);max-width:690px;margin:0 auto;font-size:15px}
.glg-grid{display:grid;gap:20px}
.glg-join-grid{grid-template-columns:minmax(0,1.68fr) minmax(265px,0.88fr);align-items:start}
.glg-box{background:white;border:1px solid var(--glg-line);border-radius:18px;padding:26px;box-shadow:0 8px 30px rgba(17,72,40,.045)}
.glg-form{display:flex;flex-direction:column;gap:16px}
.glg-form label:not(.glg-check){display:block;font-size:13px;font-weight:700;color:#26473a}
.glg-form label span:not(.glg-check span){color:#b24b27}
.glg-form input:not([type=checkbox]), .glg-form select,.glg-login-box input[type=text],.glg-login-box input[type=password]{display:block;background:#fff;color:#17392c;outline:none;width:100%;height:44px;min-height:44px;border:1px solid #ccdfd2;padding:9px 13px;margin-top:5px;border-radius:10px;font-family:inherit;font-size:14px;box-shadow:none}
.glg-form input:focus,.glg-form select:focus,.glg-login-box input:focus{border-color:#389b6c;box-shadow:0 0 0 3px rgba(34,144,89,.13)}
.glg-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.glg-form .glg-interests{border:1px solid var(--glg-line);border-radius:12px;padding:13px 14px;display:grid;grid-template-columns:1fr 1fr;column-gap:12px;row-gap:9px;margin:0;min-width:0}
.glg-interests legend{font-size:13px;font-weight:750;color:#26473a;padding:0 5px}
.glg-app .glg-interests label{display:flex!important;align-items:flex-start;gap:7px;font-size:12px!important;font-weight:500!important;line-height:1.5;margin:0;color:#34483c!important;cursor:pointer}
.glg-interests label input{margin:2px 0 0;width:15px;height:15px;accent-color:var(--glg-main);flex-shrink:0}
.glg-app .glg-check{display:flex;gap:9px;font-size:12px;line-height:1.7;color:#385346;cursor:pointer;align-items:flex-start}
.glg-check input{flex-shrink:0;margin-top:4px;accent-color:#0b764e;width:15px;height:15px}
.glg-check span{flex:1}
.glg-check strong{color:#a74624}
.glg-btn,.glg-app input[type=submit],.glg-login-box input[type=submit]{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1px solid var(--glg-main);border-radius:10px;background:linear-gradient(135deg,#0d6b46,#145238);color:#fff!important;font-family:inherit;font-size:14px;font-weight:750;min-height:44px;padding:10px 18px;box-shadow:none;text-decoration:none!important;cursor:pointer;white-space:normal;transition:filter .14s}
.glg-btn:hover,.glg-app input[type=submit]:hover{filter:brightness(1.12)}
.glg-btn-full{width:100%}
.glg-btn-small{font-size:12px;padding:8px 12px;min-height:36px}
.glg-app .glg-btn-outline{background:#fff!important;color:#116641!important;border:1px solid #bdd8c9;font-size:12px;min-height:36px;padding:7px 11px}
.glg-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.glg-aside{background:#f7fcf8;position:sticky;top:30px}
.glg-aside h2{font-size:19px}
.glg-feature{display:flex;align-items:start;gap:13px;border-bottom:1px solid var(--glg-line);padding:18px 0}
.glg-feature b{display:grid;place-items:center;background:#dff4e5;border-radius:10px;min-width:40px;height:40px;color:#167048;font-size:14px}
.glg-feature strong{display:block;font-size:14px}
.glg-feature p{font-size:12px;color:#607769;margin:3px 0 0}
.glg-aside-foot{margin-top:21px;font-size:12px;line-height:1.7;border:1px solid #c6e3d0;background:#e9f7ee;color:#226747;border-radius:11px;padding:13px}
.glg-alert{margin-bottom:18px;padding:13px 16px;border-radius:11px;border:1px solid #a8d9ba;background:#eaf9ef;color:#175333;font-size:14px}
.glg-alert-error{background:#fff3ef;color:#7a2a19;border-color:#f1c7bb}
.glg-login-box{max-width:500px;margin:auto}
.glg-login-box #loginform{display:flex;flex-direction:column;gap:8px;margin:0}
.glg-login-box #loginform p{margin:4px 0}
.glg-login-box #loginform label{display:block;font-size:13px;font-weight:750}
.glg-login-box input[type=checkbox]{accent-color:var(--glg-main)}
.glg-login-box input[type=submit]{width:100%}
.glg-login-box .login-remember label{display:inline-flex!important;gap:8px;align-items:center;font-weight:500!important}
.glg-dash-hero{background:radial-gradient(circle at 85% 15%,#1a7a4c,#0b412e 65%);color:#fff;border-radius:22px;padding:18px 30px 30px;margin-bottom:18px}
.glg-dash-brand{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:750;letter-spacing:1.5px;opacity:.94}
.glg-dash-brand .glg-logo-small{width:44px;height:44px;margin:0}
.glg-dash-hero-row{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:15px}
.glg-dash-hero h1{color:#fff!important;margin:0 0 6px}
.glg-dash-hero p{color:#d3eddf;margin:5px 0}
.glg-kicker{font-size:12px;font-weight:700;letter-spacing:.4px}
.glg-id-box{background:#ffffff16;border:1px solid #ffffff3a;padding:16px 20px;min-width:230px;border-radius:15px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex-shrink:0}
.glg-id-box small{color:#c6e9d3}
.glg-id-box strong{font-size:20px;color:#fff;white-space:nowrap;letter-spacing:.7px}
.glg-badge{display:inline-block;padding:4px 10px;border-radius:99px;background:#def4e7;color:#14643e;font-size:11px;font-weight:700}
.glg-badge-light{background:#d8f9e5;color:#0b6035}
.glg-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.glg-stat{background:#fff;border:1px solid var(--glg-line);padding:15px 19px;border-radius:14px;display:flex;flex-direction:column;gap:2px}
.glg-stat small{font-size:12px;color:var(--glg-muted)}
.glg-stat strong{font-size:24px;color:var(--glg-main)}
.glg-dash-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:18px;align-items:start}
.glg-dash-main,.glg-dash-sidebar{display:flex;flex-direction:column;gap:18px;min-width:0}
.glg-section-head{margin-bottom:14px}
.glg-event{display:grid;grid-template-columns:65px minmax(0,1fr);align-items:start;gap:13px;border-top:1px solid var(--glg-line);padding:19px 0}
.glg-event:first-of-type{border-top:0;padding-top:6px}
.glg-event-date{border-radius:10px;background:#e7f5ea;color:#126c46;text-align:center;padding:8px 6px;display:flex;flex-direction:column;align-items:center}
.glg-event-date b{font-size:24px;line-height:1.3}
.glg-event-date small{font-size:10px}
.glg-event-body h3{font-size:16px;margin-bottom:3px}
.glg-event-desc{font-size:13px;color:#516459;margin:9px 0 0}
.glg-event-desc p{margin:0}
.glg-event form{grid-column:2;margin:0}
.glg-news{border-top:1px solid var(--glg-line);padding:15px 0}
.glg-news:first-of-type{border-top:0;padding-top:3px}
.glg-news h3{margin:2px 0 7px}
.glg-news div{font-size:13px;color:#4c6457;line-height:1.8}
.glg-news div p{margin:0 0 8px}
.glg-detail{display:flex;justify-content:space-between;align-items:start;gap:10px;padding:10px 0;border-bottom:1px solid var(--glg-line);font-size:12px}
.glg-detail span{color:#728277;flex-shrink:0}
.glg-detail b{color:#244735;text-align:right;font-weight:650}
.glg-break{overflow-wrap:anywhere}
.glg-small-title{font-size:13px!important;margin:17px 0 10px!important}
.glg-tags{display:flex;flex-wrap:wrap;gap:7px}
.glg-tags span{background:#e8f6ed;padding:5px 8px;border:1px solid #d2e9d9;border-radius:30px;font-size:11px;color:#276b49}
.glg-dash-sidebar .glg-form{gap:11px}
.glg-dash-sidebar .glg-form .glg-interests{grid-template-columns:1fr}
.glg-logout{display:inline-block;margin-top:10px;font-size:13px;font-weight:700}
@media(max-width:950px){.glg-join-grid{grid-template-columns:1fr}.glg-aside{position:static}.glg-dash-grid{grid-template-columns:1fr}.glg-dash-sidebar{display:grid;grid-template-columns:1fr 1fr;align-items:start}}
@media(max-width:650px){.glg-app{margin-top:8px}.glg-box{padding:19px 17px;border-radius:15px}.glg-two{grid-template-columns:1fr}.glg-form .glg-interests{grid-template-columns:1fr}.glg-head{padding:10px 12px 20px}.glg-head h1{font-size:28px}.glg-dash-hero{padding:17px}.glg-dash-hero-row{flex-direction:column;align-items:start}.glg-id-box{min-width:0;width:100%}.glg-stats{gap:7px}.glg-stat{padding:11px 9px}.glg-stat small{font-size:10px}.glg-stat strong{font-size:19px}.glg-dash-sidebar{display:flex;flex-direction:column}.glg-event{grid-template-columns:53px minmax(0,1fr);gap:10px}.glg-event form{grid-column:1/-1}.glg-event-date b{font-size:21px}}
.glg-soft-divider{height:1px;border:0;background:#e1ebe4;margin:23px 0 18px}
.glg-resend{margin-top:9px}
.glg-resend .glg-btn-outline{max-width:max-content}

/* v1.2 - clear dashboard actions, admin portal and member competitions */
.glg-connect-screen .entry-title,.glg-connect-screen .wp-block-post-title,.glg-connect-screen .page-title,.glg-connect-screen .entry-header .entry-title{display:none!important}
.glg-app .glg-action-row{display:flex;align-items:stretch;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:17px}
.glg-app .glg-action-row .glg-btn{min-width:185px;flex:0 1 auto;padding:12px 22px;min-height:48px}
.glg-app .glg-state-actions{text-align:center;padding:29px 27px}
.glg-app .glg-state-actions p{margin:0;color:#506b5a}
.glg-app .glg-stats-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.glg-app .glg-admin-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.glg-app .glg-admin-action{display:flex;min-height:145px;flex-direction:column;gap:6px;padding:18px;border:1px solid #dce9e0;border-radius:13px;background:#f9fcf9;color:#194b33;text-decoration:none!important;transition:transform .2s,box-shadow .2s}
.glg-app .glg-admin-action:hover{background:#edf7ef;transform:translateY(-2px);box-shadow:0 8px 22px #06351d12}
.glg-app .glg-admin-action span{font-size:24px}.glg-app .glg-admin-action b{font-size:15px}.glg-app .glg-admin-action small{font-size:12px;color:#62776a}
.glg-app .glg-admin-footer-actions{justify-content:flex-start;border-top:1px solid #e5eee6;margin-top:24px;padding-top:20px}
.glg-app .glg-admin-portal .glg-stats{margin-top:15px}
.glg-app .glg-challenge-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.glg-app .glg-challenge-heading h2{margin:3px 0 8px}
.glg-app .glg-challenge-heading p{margin:0}
.glg-app .glg-eyebrow{color:#248052;font-size:10px;font-weight:850;letter-spacing:1.1px}
.glg-app .glg-points-chip{background:#dff5e3;border:1px solid #b9dfbf;padding:9px 15px;border-radius:50px;color:#14623c;font-size:13px;font-weight:850;white-space:nowrap}
.glg-app .glg-competition-note{background:#f1f7ec;border-left:3px solid #82b947;padding:11px 13px;border-radius:6px;color:#43644d;font-size:12px;line-height:1.9;margin:16px 0}
.glg-app .glg-empty-challenge{text-align:center;background:#f8faf8;border:1px dashed #c8dfc9;border-radius:13px;padding:25px 14px;color:#52715e}
.glg-app .glg-empty-challenge span{display:block;font-size:29px}.glg-app .glg-empty-challenge b{display:block;font-size:16px;margin:5px 0}.glg-app .glg-empty-challenge p{font-size:13px;margin:5px 0}
.glg-app .glg-challenge-card{border:1px solid #e0ebe4;border-radius:14px;padding:20px;margin-bottom:12px;background:#fff;box-shadow:0 5px 15px #063f1a08}
.glg-app .glg-challenge-meta{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:12px}.glg-app .glg-challenge-meta span{font-size:10px;letter-spacing:1px;color:#809388;font-weight:800}.glg-app .glg-challenge-meta b{font-size:12px;background:#e6f5e4;padding:5px 9px;border-radius:20px;color:#207747;white-space:nowrap}
.glg-app .glg-challenge-question{font-size:13px;color:#496456;margin:8px 0 17px;line-height:1.85}.glg-app .glg-challenge-question p{margin:0 0 9px}
.glg-app .glg-challenge-form fieldset{border:0;margin:0 0 14px;padding:0;display:grid;gap:8px}
.glg-app .glg-quiz-option{display:flex;gap:11px;align-items:center;background:#f8fbf9;border:1px solid #d9e8dd;border-radius:10px;padding:12px 14px;cursor:pointer;color:#214532;line-height:1.5}
.glg-app .glg-quiz-option:has(input:checked){border-color:#4fa974;background:#eaf7ee}
.glg-app .glg-quiz-option input{accent-color:#177146;flex:none;width:17px;height:17px}.glg-app .glg-quiz-option span{width:24px;height:24px;border-radius:7px;background:#e5f1e6;display:grid;place-items:center;font-weight:850;font-size:12px;flex:none}.glg-app .glg-quiz-option b{font-size:13px;font-weight:650}
.glg-app .glg-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.glg-app .glg-answer-closed{padding:12px 14px;background:#f0f8f0;color:#2b6440;border-radius:9px;font-weight:750;font-size:13px}
.glg-app .glg-rank-list{display:flex;flex-direction:column;gap:7px}.glg-app .glg-rank{display:flex;align-items:center;gap:12px;border-radius:9px;padding:10px 12px;border:1px solid #e2ede3;color:#224832;background:#fafdfa}.glg-app .glg-rank-me{background:#e8f8ea;border-color:#a8d6b3}
.glg-app .glg-rank-number{background:#e0eee2;display:grid;place-items:center;width:30px;height:30px;border-radius:10px;flex:none;font-weight:900;color:#297047}.glg-app .glg-rank b{font-size:12px;flex:1}.glg-app .glg-rank strong{font-size:13px;color:#167647;white-space:nowrap}
@media(max-width:980px){.glg-app .glg-stats-four{grid-template-columns:repeat(2,minmax(0,1fr))}.glg-app .glg-admin-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.glg-app .glg-action-row{flex-direction:column}.glg-app .glg-action-row .glg-btn{width:100%;min-width:0}.glg-app .glg-admin-links{grid-template-columns:1fr 1fr;gap:8px}.glg-app .glg-admin-action{min-height:136px;padding:13px}.glg-app .glg-admin-action b{font-size:13px}.glg-app .glg-admin-action small{font-size:11px}.glg-app .glg-admin-portal .glg-dash-hero h1{font-size:26px}.glg-app .glg-challenge-card{padding:14px}.glg-app .glg-challenge-meta{align-items:start;gap:7px}}
