/* All display styles are scoped: existing First Light pages retain their appearance. */
.gctc-global-light{box-sizing:border-box;width:100%;max-width:1450px;margin:0 auto;padding:clamp(24px,4vw,58px);border:1px solid #253c4d;border-radius:24px;background:radial-gradient(ellipse at 50% 10%,#1a3447 0%,#081522 72%);color:#f2eee4;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;overflow:hidden}
.gctc-global-light *{box-sizing:border-box}.gctc-light-heading{text-align:center}.gctc-light-eyebrow{font:700 10px/1.2 Arial,sans-serif;letter-spacing:.32em;color:#d5b586}.gctc-light-heading h2{margin:14px 0 9px;color:#f7f1e5;font-size:clamp(30px,4vw,54px);font-weight:750;letter-spacing:.12em}.gctc-light-heading h2 span{display:block;margin-top:8px;font:700 12px/1.5 Arial,sans-serif;letter-spacing:.27em;color:#d1ac75}.gctc-light-heading p{margin:0;color:#afc1cb;font-size:15px;line-height:1.8}
.gctc-light-stats{display:flex;justify-content:center;gap:clamp(20px,7vw,105px);padding:29px 10px 18px}.gctc-light-stats div{text-align:center}.gctc-light-stats strong{display:block;font:700 clamp(30px,4vw,50px)/1.15 Georgia,serif;color:#e8c38c;font-variant-numeric:tabular-nums}.gctc-light-stats small{display:block;margin-top:6px;color:#becbd2;font-size:12px;letter-spacing:.06em}
.gctc-light-map-area{position:relative;width:100%;border:1px solid rgba(145,177,191,.2);border-radius:17px;overflow:hidden;background:#071524}.gctc-light-map-inner svg{display:block;width:100%;height:auto;overflow:visible}.gctc-map-graticule line{stroke:#315169;stroke-width:.7;opacity:.3}.gctc-map-country{fill:#415e6d;stroke:#19374a;stroke-width:.9;stroke-linejoin:round;cursor:pointer;transition:fill .35s ease,filter .35s ease,stroke .35s ease}.gctc-map-country:hover{fill:#a0b8bc;stroke:#d8c9a9;filter:brightness(1.3)}.gctc-map-country.is-lit{fill:#d6aa65;stroke:#f0d7aa;filter:drop-shadow(0 0 5px rgba(243,195,107,.47))}.gctc-map-country.is-lit:hover{fill:#f4d29a;filter:drop-shadow(0 0 9px rgba(255,214,136,.75))}.gctc-map-marker{stroke:#102534;stroke-width:.7;fill:#8197a6}.gctc-map-marker.is-lit{fill:#ffe0a0;stroke:#e6aa49;stroke-width:1.2;filter:drop-shadow(0 0 5px #f6c56d)}
.gctc-light-tooltip{position:absolute;bottom:16px;left:16px;max-width:calc(100% - 32px);padding:12px 16px;border:1px solid #cda972;border-radius:10px;background:rgba(7,24,35,.96);box-shadow:0 8px 22px #0006;color:#f8f1e4;font-size:14px;line-height:1.6;pointer-events:none}.gctc-light-tooltip strong{color:#f0c78d}
.gctc-light-bottom{display:grid;grid-template-columns:1fr minmax(240px,.86fr);gap:22px;margin-top:20px}.gctc-light-rank,.gctc-light-join{padding:clamp(18px,2.6vw,30px);border:1px solid rgba(145,177,191,.25);border-radius:17px;background:rgba(11,33,48,.78)}.gctc-light-rank h3,.gctc-light-join h3{margin:0 0 15px;color:#f3e8d6;font-size:21px}.gctc-light-rank-list{display:grid;gap:11px;margin:0;padding-left:24px}.gctc-light-rank-list li{color:#e8c38c}.gctc-light-rank-list li span{color:#deedf0}.gctc-light-rank-list li strong{float:right;color:#eac78d;font-variant-numeric:tabular-nums}.gctc-light-count-note{clear:both;margin:18px 0 0;font-size:12px;color:#99acb7;line-height:1.7}.gctc-light-join>span{display:block;color:#d5b586;font:700 10px Arial,sans-serif;letter-spacing:.2em}.gctc-light-join h3{margin:15px 0}.gctc-light-join p{color:#a7bbc6;font-size:14px;line-height:1.8}.gctc-light-join-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;margin-top:10px;padding:13px 20px;border-radius:999px;background:#d4ae79!important;color:#071827!important;font-size:14px;font-weight:800;text-decoration:none!important;transition:background .2s}.gctc-light-join-button:hover{background:#efc990!important;color:#071827!important}.gctc-light-join-button span{font-size:18px}
.gctc-light-counter{display:inline-block;padding:12px 18px;border:1px solid #cfb58c;border-radius:12px;background:#122939;color:#f7edde;font:600 15px/1.5 "Noto Sans TC",sans-serif}.gctc-light-counter strong{color:#f7ca82;font-variant-numeric:tabular-nums}
.gctc-light-country-field .gctc-light-country-select{width:100%!important;max-width:100%!important;min-height:48px!important;padding:10px 12px!important;border:1px solid #b8cbd6!important;border-radius:10px!important;background:#fff!important;color:#34495a!important;font-size:15px!important;box-sizing:border-box}.gctc-light-country-hint{display:block;margin-top:6px;color:#778890;font-size:12px;line-height:1.5}
@media(max-width:800px){.gctc-global-light{padding:20px 12px;border-radius:18px}.gctc-light-bottom{grid-template-columns:1fr}.gctc-light-map-area{overflow-x:auto}.gctc-light-map-inner{min-width:540px}.gctc-light-stats{gap:24px}.gctc-light-stats small{max-width:135px}.gctc-light-tooltip{bottom:8px;left:8px;max-width:calc(100% - 16px);padding:8px 10px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.gctc-map-country,.gctc-light-join-button{transition:none!important}}

/* v1.2: map navigation. Scoped to the world map only. */
.gctc-light-map-area .gctc-map-zoom-controls{position:absolute;top:12px;right:12px;z-index:30;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(122,151,170,.44);border-radius:13px;background:rgba(255,253,248,.94);box-shadow:0 7px 25px rgba(30,59,76,.16);backdrop-filter:blur(8px)}
.gctc-light-map-area .gctc-map-zoom-controls button{position:relative;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:39px;height:39px;min-height:39px!important;padding:3px 9px;border:1px solid rgba(108,141,159,.24)!important;border-radius:9px!important;background:#fff!important;color:#34566a!important;font:800 14px/1.1 "Noto Sans TC","Microsoft JhengHei",sans-serif!important;white-space:nowrap;cursor:pointer;box-shadow:none!important;transition:background .15s ease}
.gctc-light-map-area .gctc-map-zoom-controls button:hover:not(:disabled),.gctc-light-map-area .gctc-map-zoom-controls button:focus-visible{background:#e4f0f6!important;border-color:#769caf!important;outline:2px solid #c99a63;outline-offset:1px}
.gctc-light-map-area .gctc-map-zoom-controls button:disabled{opacity:.4;cursor:not-allowed}
.gctc-light-map-area .gctc-map-zoom-hint{position:absolute;right:12px;bottom:10px;z-index:11;padding:5px 8px;border-radius:9px;background:rgba(255,253,248,.88);color:#436071;font-size:11px;pointer-events:none}
.gctc-light-map-area .gctc-map-zoom-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.gctc-light-map-area svg.gctc-world-svg{cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none}
.gctc-light-map-area svg.gctc-world-svg:active{cursor:grabbing}
.gctc-light-map-area svg.gctc-world-svg:focus-visible{outline:2px solid #b99a62;outline-offset:-2px}
.gctc-light-map-area .gctc-map-country,.gctc-light-map-area .gctc-map-graticule line{vector-effect:non-scaling-stroke}
@media(max-width:600px){.gctc-light-map-area .gctc-map-zoom-controls{top:8px;right:8px;gap:3px;padding:4px;border-radius:11px}.gctc-light-map-area .gctc-map-zoom-controls button{height:36px;min-height:36px!important;min-width:36px;padding:2px 6px;font-size:12px!important}.gctc-light-map-area .gctc-map-zoom-hint{right:8px;bottom:7px;font-size:10px}}

/* v1.3: Member lights are clipped to each country's true SVG geometry. */
.gctc-light-map-area svg .gctc-member-light-layer,
.gctc-light-map-area svg .gctc-member-light-layer *{pointer-events:none!important}
.gctc-light-map-area .gctc-map-country.is-lit{filter:none!important;transition:fill .35s ease,stroke .35s ease}
.gctc-light-map-area .gctc-map-country.is-lit:hover{filter:none!important}
.gctc-light-map-area .gctc-member-light-dot{mix-blend-mode:screen;stroke:none;pointer-events:none!important}
.gctc-light-map-area .gctc-member-lights-legend{position:absolute;bottom:10px;left:12px;z-index:13;max-width:calc(100% - 180px);padding:5px 9px;border:1px solid rgba(126,163,185,.4);border-radius:9px;background:rgba(255,253,248,.93);color:#456273;font-size:11px;line-height:1.5;pointer-events:none}
.gctc-light-map-area .gctc-member-lights-legend .gctc-member-legend-star{color:#cc9145;font-weight:900}
.gctc-light-map-area .gctc-light-tooltip:not([hidden]){bottom:43px;z-index:21}
@media(max-width:600px){.gctc-light-map-area .gctc-member-lights-legend{left:8px;bottom:7px;max-width:calc(100% - 132px);font-size:9px;padding:4px 6px}.gctc-light-map-area .gctc-light-tooltip:not([hidden]){bottom:34px}}

/* Existing Page 139's custom styling is more specific than the plugin styles.
   Remove legacy shadows so member dots stay visually inside country borders. */
body.page-id-139 .glm-map .gctc-light-map-area .gctc-map-country.is-lit,
body.page-id-139 .glm-map .gctc-light-map-area .gctc-map-country.is-lit:hover{filter:none!important}

/* v1.4: names are captured at registration, matching existing Woo account details. */
.woocommerce .gctc-light-register-name-group{display:flow-root;clear:both;margin:6px 0 9px}
.woocommerce .gctc-light-register-name-group .gctc-light-name-field{box-sizing:border-box;min-width:0}
.woocommerce .gctc-light-register-name-group .gctc-light-name-field input{box-sizing:border-box;width:100%!important;max-width:100%!important;min-height:48px!important;border:1px solid #b8cbd6!important;border-radius:10px!important;background:#fff!important;color:#34495a!important;padding:10px 12px!important;font-size:15px!important}
.woocommerce .gctc-light-register-name-group .gctc-light-name-field input:focus{outline:2px solid rgba(201,154,99,.55);outline-offset:1px}
@media(max-width:600px){.woocommerce .gctc-light-register-name-group .form-row-first,.woocommerce .gctc-light-register-name-group .form-row-last{float:none!important;width:100%!important;margin:0 0 12px!important}}
