.gctc-sep-choices,.gctc-sep-choices *,.gctc-sep-join,.gctc-sep-join *{box-sizing:border-box}
.gctc-sep-choices{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:22px auto;max-width:1100px}
.gctc-sep-choice,.gctc-sep-plan{min-width:0;overflow-wrap:anywhere;padding:24px;border:1px solid #d4e1e6;border-radius:20px;background:#fffdf9;box-shadow:0 8px 24px rgba(50,85,101,.07);color:#344f61}
.gctc-sep-kicker{font:800 11px/1.35 Arial,sans-serif;letter-spacing:.12em;color:#9d7946}
.gctc-sep-choice h3,.gctc-sep-region h3{font-size:clamp(18px,2vw,25px);line-height:1.3;margin:9px 0;color:#315c71}
.gctc-sep-choice p{font-size:14px;line-height:1.75;min-height:48px;color:#637783}
.gctc-sep-btn,.gctc-sep-join button.gctc-sep-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 15px;margin:0;border:1px solid #52778c;border-radius:12px;background:#52778c;color:#fff!important;font-size:14px;font-weight:750;text-decoration:none!important;cursor:pointer;white-space:normal;text-align:center;line-height:1.4;max-width:100%}
.gctc-sep-btn.gctc-sep-outline{background:#f5fafb;color:#365a71!important}
.gctc-sep-btn.is-disabled{color:#667782!important;background:#e5eaec;border-color:#d3dade;cursor:not-allowed}
.gctc-sep-join{font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;max-width:1130px;margin:20px auto 35px;padding:clamp(15px,2.5vw,30px);background:linear-gradient(130deg,#e8f2f7,#fffaf0);border-radius:22px;color:#354e60}
.gctc-sep-hero h2{color:#315b72;font-size:clamp(26px,3vw,40px);margin:8px 0}
.gctc-sep-hero p{font-size:14px;line-height:1.7}
.gctc-sep-status,.gctc-sep-notice{padding:12px 16px;border:1px solid #cbdce5;border-radius:12px;background:#fffdf9;color:#3f6174}
.gctc-sep-regions{display:grid;gap:20px;margin-top:24px}
.gctc-sep-region h3{margin:0 0 12px}
.gctc-sep-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gctc-sep-plan{display:flex;flex-direction:column;align-items:start;gap:10px;padding:20px}
.gctc-sep-plan strong{font-size:clamp(24px,2.6vw,32px);color:#3a6478}
.gctc-sep-plan p{margin:0 0 8px;flex:1;font-size:13px;line-height:1.6;color:#637783}
.gctc-sep-plan form{margin:0}
.gctc-sep-small,.gctc-sep-fineprint{font-size:12px;line-height:1.6;color:#627889}
.gctc-sep-fineprint{margin:22px 0 0;padding-top:16px;border-top:1px solid #d6e2e5}
.gctc-sep-account-note,.gctc-sep-free-note{box-sizing:border-box;padding:15px 18px;margin:12px 0;border:1px solid #ccdce5;border-radius:12px;background:#f3f9fb;color:#37596b;max-width:100%;overflow-wrap:anywhere}
.gctc-sep-account-note p{margin:7px 0}.gctc-sep-free-note{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.gctc-sep-free-note span{font-size:13px}.gctc-sep-account-note a,.gctc-sep-free-note a{color:#2e6585;text-decoration:underline}
.gctc-sep-paywall{padding:20px;border:1px solid #d2dee3;border-radius:12px;background:#f8fafb}
@media(max-width:700px){.gctc-sep-choices,.gctc-sep-plans{grid-template-columns:1fr}.gctc-sep-choice,.gctc-sep-plan{padding:16px}.gctc-sep-choice p{min-height:0}}

.gctc-sep-learn-note{margin:18px 0!important;padding:18px 22px!important;border-radius:14px!important;background:#eaf4f6!important;color:#32576b!important;border:1px solid #b9d3df!important}
.gctc-sep-learn-note a,.gctc-sep-learn-link{display:inline-flex;min-height:44px;align-items:center;color:#376a85!important;font-weight:800;text-decoration:underline!important}

.gctc-sep-page-header-wrap{max-width:1380px;margin:0 auto 18px;padding:0 12px}
.gctc-sep-page-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 20px;border:1px solid #eadfcd;border-radius:0 0 0 0;background:#f6f2e8;box-shadow:0 1px 0 rgba(141,112,68,.12);font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif}
.gctc-sep-brand{display:flex;align-items:center;gap:14px;min-width:0;flex:0 0 auto}
.gctc-sep-brand .custom-logo{display:block;max-height:52px;width:auto}
.gctc-sep-brand-link{text-decoration:none!important;color:#274457;font-weight:800;font-size:18px;line-height:1.25}
.gctc-sep-brand-text{display:flex;align-items:center}
.gctc-sep-page-nav{display:flex;align-items:center;justify-content:center;gap:12px 18px;flex:1 1 auto;flex-wrap:wrap;min-width:0}
.gctc-sep-page-link{text-decoration:none!important;color:#2d4857;font-size:14px;font-weight:700;line-height:1.4;padding:6px 2px;border-bottom:2px solid transparent}
.gctc-sep-page-link:hover,.gctc-sep-page-link:focus{color:#8f6a35;border-bottom-color:#8f6a35}
.gctc-sep-page-link.is-active{color:#8f6a35;border-bottom-color:#8f6a35}
.gctc-sep-page-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.gctc-sep-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:999px;border:1px solid #5e8297;background:#5e8297;color:#fff!important;font-size:15px;font-weight:800;text-decoration:none!important;white-space:nowrap}
.gctc-sep-action-outline{background:transparent;color:#35576b!important}
@media(max-width:1100px){.gctc-sep-page-header{flex-wrap:wrap;justify-content:center}.gctc-sep-brand{justify-content:center;width:100%}.gctc-sep-page-actions{width:100%;justify-content:center}}
@media(max-width:700px){.gctc-sep-page-header{padding:14px 14px;border-radius:18px}.gctc-sep-page-nav{justify-content:flex-start}.gctc-sep-page-link{font-size:13px}.gctc-sep-action{min-height:40px;padding:9px 16px;font-size:14px}}


/* v1.1.2 member center sidebar: same data / links on desktop and mobile. */
.woocommerce-account .woocommerce-MyAccount-navigation a[href]{overflow-wrap:anywhere;word-break:normal}
.woocommerce-account .woocommerce-MyAccount-navigation ul,.woocommerce-account .woocommerce-MyAccount-navigation li{min-width:0}
.woocommerce-account .woocommerce-MyAccount-navigation a[href]{box-sizing:border-box;min-width:0;max-width:100%;line-height:1.45}
.woocommerce-account .woocommerce-MyAccount-content{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
  body.page-id-498 .gctc-account-content .woocommerce-MyAccount-navigation ul{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important
  }
  body.page-id-498 .gctc-account-content .woocommerce-MyAccount-navigation li{width:100%!important;min-width:0!important}
  body.page-id-498 .gctc-account-content .woocommerce-MyAccount-navigation li a{
    display:flex!important;align-items:center;justify-content:center;
    min-height:48px!important;padding:10px 7px!important;
    text-align:center!important;white-space:normal!important;
    overflow-wrap:anywhere!important;font-size:clamp(12px,3.5vw,14px)!important;
    border-radius:10px!important
  }
  body.page-id-498 .gctc-account-content .woocommerce-MyAccount-content{
    width:100%!important;min-width:0!important;padding:clamp(15px,4vw,22px)!important;
  }
}
@media(max-width:370px){
  body.page-id-498 .gctc-account-content .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
}

/* WooCommerce dashboard introduces two default paragraphs before the GCTC status card. */
body.gctc-sep-account-dashboard .woocommerce-MyAccount-content > p:first-child,
body.gctc-sep-account-dashboard .woocommerce-MyAccount-content > p:nth-child(2){display:none!important}

/* v1.2.2: unify join and course catalog with the existing First Light homepage header.
 * Only applied when a page contains the relevant GCTC shortcode.
 */
body.gctc-sep-landing-page{margin:0!important;overflow-x:clip!important;background:#f7f3ec!important}
body.gctc-sep-landing-page .wp-site-blocks{padding:0!important;margin:0!important;overflow-x:clip!important}
body.gctc-sep-landing-page .wp-site-blocks > header,
body.gctc-sep-landing-page header.wp-block-template-part,
body.gctc-sep-landing-page .wp-site-blocks > .wp-block-template-part:first-child,
body.gctc-sep-landing-page .wp-block-post-title{display:none!important}
body.gctc-sep-landing-page .wp-site-blocks > main,
body.gctc-sep-landing-page .wp-block-post-content,
body.gctc-sep-landing-page main > .wp-block-group.alignfull.has-global-padding,
body.gctc-sep-landing-page .wp-block-shortcode,
body.gctc-sep-landing-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.gctc-sep-landing-page .wp-block-post-content > .wp-block-shortcode{max-width:none!important}
body.gctc-sep-landing-page .gctc-sep-join,
body.gctc-sep-landing-page .gctc-course-catalog{width:min(1150px,calc(100% - 36px))!important;max-width:1150px!important;margin:clamp(26px,4vw,50px) auto 55px!important}
body.gctc-sep-landing-page .gctc-sep-join{padding:clamp(18px,2.8vw,34px)!important}
body.gctc-sep-landing-page .gctc-sep-join .gctc-sep-plans{grid-template-columns:repeat(2,minmax(0,1fr))}
body.gctc-sep-landing-page .gctc-sep-join .gctc-sep-regions{gap:28px}
.gctc-sep-site-header,.gctc-sep-site-header *{box-sizing:border-box}
.gctc-sep-site-header{position:relative;z-index:80;width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding:0!important;background:#f7f3ec!important;color:#394a56;border-bottom:2px solid #c99a63;box-shadow:0 10px 28px rgba(56,87,102,.07);font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
.gctc-sep-site-header-inner{width:100%;max-width:100%;display:flex;align-items:center;gap:clamp(15px,2vw,30px);min-height:78px;padding:9px clamp(20px,3vw,52px)}
.gctc-sep-site-brand{display:flex;flex:0 0 auto;align-items:center;gap:12px;text-decoration:none!important;color:#394a56!important;min-width:0}
.gctc-sep-site-brand img{display:block;width:54px;height:54px;max-width:none;object-fit:contain;flex:none}
.gctc-sep-site-brand span{display:flex;flex-direction:column;gap:2px;min-width:0}
.gctc-sep-site-brand strong{display:block;font-size:clamp(14px,1.25vw,19px);font-weight:800;line-height:1.22;white-space:nowrap;color:#394a56}
.gctc-sep-site-brand small{display:block;font:800 8px/1.2 Arial,sans-serif;letter-spacing:.03em;white-space:nowrap;color:#526777}
.gctc-sep-site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.15vw,23px);flex:1 1 auto;min-width:0;white-space:nowrap}
.gctc-sep-site-nav a{font-size:clamp(11px,.85vw,13px);font-weight:750;line-height:1.35;text-decoration:none!important;color:#4e6573!important;white-space:nowrap;padding:12px 0}
.gctc-sep-site-nav a:hover,.gctc-sep-site-nav a:focus-visible{color:#a67843!important}
.gctc-sep-site-user{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.gctc-sep-site-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 17px;border-radius:999px;border:1px solid #557d92;background:#557d92;color:#fff!important;font-size:13px;font-weight:750;line-height:1.3;text-decoration:none!important;white-space:nowrap}
.gctc-sep-site-outline{border-color:#c4d1d8;background:rgba(255,255,255,.65);color:#35566a!important}
.gctc-sep-site-langs{margin-left:4px;white-space:nowrap;font-size:10px;color:#a98e70}
.gctc-sep-site-langs i{font-style:normal;color:#c1c8cb;margin:0 4px}
.gctc-sep-site-mobile{display:none;position:relative;flex:0 0 auto}
.gctc-sep-site-mobile summary{display:flex;align-items:center;justify-content:center;gap:4px;width:50px;height:46px;padding:8px;border-radius:13px;border:1px solid #c2d4de;background:#e8f2f7;color:#34566a;cursor:pointer;list-style:none}
.gctc-sep-site-mobile summary::-webkit-details-marker{display:none}
.gctc-sep-site-mobile summary span{display:none}
.gctc-sep-site-mobile summary b{font-size:13px}
.gctc-sep-site-mobile nav{position:absolute;top:calc(100% + 9px);right:0;width:min(360px,calc(100vw - 28px));max-height:calc(100dvh - 90px);overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:12px;background:#fffdf8;border:1px solid #c8dbe4;border-radius:16px;box-shadow:0 20px 40px rgba(46,79,95,.17)}
.gctc-sep-site-mobile:not([open]) nav{display:none}
.gctc-sep-site-mobile nav a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:8px;color:#34566a!important;font-size:15px;font-weight:700;text-decoration:none!important;white-space:normal}
.gctc-sep-site-mobile nav a:hover,.gctc-sep-site-mobile nav a:focus-visible{background:#e5f2f8}
body.gctc-sep-landing-page .gctc-sep-plan{min-width:0}
@media(max-width:1300px){.gctc-sep-site-nav{gap:9px}.gctc-sep-site-langs{display:none}.gctc-sep-site-header-inner{gap:14px}.gctc-sep-site-btn{padding:8px 12px}}
@media(max-width:1150px){.gctc-sep-site-nav{display:none}.gctc-sep-site-mobile{display:block;margin-left:auto}.gctc-sep-site-header-inner{gap:13px}.gctc-sep-site-user{margin-left:auto}}
@media(max-width:700px){.gctc-sep-site-header-inner{padding:8px 13px;min-height:68px;gap:8px}.gctc-sep-site-brand img{width:40px;height:40px}.gctc-sep-site-brand strong{font-size:13px}.gctc-sep-site-brand small{font-size:6px}.gctc-sep-site-user{display:none}.gctc-sep-site-mobile{margin-left:auto}.gctc-sep-site-mobile nav{right:0}.gctc-sep-landing-page .gctc-sep-join .gctc-sep-plans{grid-template-columns:1fr!important}.gctc-sep-site-mobile summary{width:46px;height:44px}}
@media(max-width:380px){.gctc-sep-site-brand strong{font-size:12px}.gctc-sep-site-brand small{font-size:5.5px}.gctc-sep-site-brand{gap:7px}}

/* v1.2.3: align landing page with the original First Light full-width masthead. */
body.gctc-sep-landing-page .gctc-sep-site-header{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;box-shadow:0 10px 28px rgba(56,87,102,.07)!important}
body.gctc-sep-landing-page .gctc-sep-site-header-inner{min-height:70px!important;padding:8px clamp(18px,2.5vw,47px)!important}
body.gctc-sep-landing-page .gctc-sep-site-brand{max-width:100%}
body.gctc-sep-landing-page .gctc-sep-site-nav a{min-height:44px;display:flex;align-items:center}
body.gctc-sep-landing-page .gctc-sep-site-mobile nav a{max-width:100%;overflow-wrap:anywhere}
body.gctc-sep-landing-page .gctc-sep-join,body.gctc-sep-landing-page .gctc-course-catalog{box-sizing:border-box;max-width:min(1150px,calc(100% - 36px))!important;min-width:0!important}
@media(max-width:700px){body.gctc-sep-landing-page .gctc-sep-site-header-inner{min-height:68px!important;padding:8px 15px!important}body.gctc-sep-landing-page .gctc-sep-join,body.gctc-sep-landing-page .gctc-course-catalog{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;margin:16px auto 32px!important;padding:16px!important}}
