.geo-creator{--geo-green:#167d69;color:#213c36;border:1px solid #d7e6df;border-radius:16px;background:#fff;overflow:hidden;max-width:100%;box-shadow:0 8px 28px #183d2910;font-size:14px;line-height:1.5}
.geo-creator *{box-sizing:border-box}
.geo-creator [hidden]{display:none!important}
.geo-intro{padding:22px;background:#edf6f2}
.geo-intro>span{color:var(--geo-green);font-size:10px;font-weight:700;letter-spacing:1.5px}
.geo-intro h2{font-size:25px;line-height:1.2;margin:8px 0;color:#183e34;font-weight:600}
.geo-intro p{margin:0;color:#567269;font-size:13px}
.geo-step{padding:18px;border-top:1px solid #e2ece6;min-width:0}
.geo-step h3{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:600;margin:0 0 14px;line-height:1.3;color:#213c36}
.geo-step h3>b{display:inline-grid;place-items:center;background:#e6f2ed;color:var(--geo-green);width:26px;height:26px;border-radius:50%;font-size:13px;flex-shrink:0}
.geo-filter-label{font-size:12px;display:block;margin:0 0 5px}
.geo-creator select{width:100%;padding:10px 12px;border:1px solid #ccdcd4;border-radius:6px;background:#fff;color:#213c36;font-size:14px;margin:0 0 12px}
.geo-patterns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:365px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:2px 5px 3px 2px}
.geo-pattern{position:relative;display:flex;flex-direction:column;padding:4px 4px 9px;border:2px solid #e1e8e4;border-radius:8px;background:#fff;cursor:pointer;min-width:0;color:#213c36;align-items:stretch;line-height:1.3;text-align:left}
.geo-pattern:hover{border-color:#72aa99}
.geo-pattern[aria-pressed=true]{border-color:var(--geo-green);background:#ecf6f1;box-shadow:0 0 0 1px var(--geo-green)}
.geo-pattern[aria-pressed=true]:after{content:'✓';position:absolute;right:8px;top:8px;background:var(--geo-green);color:white;border-radius:50%;width:22px;height:22px;text-align:center;line-height:22px;font-weight:bold}
.geo-thumb,.geo-sample{display:block;aspect-ratio:2/3;background-size:300% 200%;background-repeat:no-repeat;background-color:#000;border-radius:4px}
.geo-pattern strong{display:block;font-size:12px;margin:7px 4px 2px}
.geo-pattern-name{font-size:11px;margin:0 4px;overflow-wrap:anywhere}
.geo-selection{margin:12px 0 0;font-size:12px;font-weight:600;color:var(--geo-green)}
.geo-personalize{display:grid;grid-template-columns:minmax(115px,.85fr) minmax(145px,1.15fr);gap:16px;align-items:start}
.geo-personalize figure{margin:0;min-width:0}
.geo-sample{width:100%;max-width:230px;margin:0 auto}
.geo-personalize figcaption{font-size:10px;line-height:1.5;color:#62776f;margin-top:8px}
.geo-fields{min-width:0}
.geo-field{margin-bottom:12px}
.geo-field label{display:block;font-size:12px;line-height:1.35;font-weight:600;margin:0 0 5px}
.geo-field input{display:block;width:100%;min-width:0;min-height:42px;border:1px solid #c8d9d0;border-radius:6px;padding:8px 10px;font-size:16px;color:#213c36;background:#fff;box-shadow:none}
.geo-field input[aria-invalid=true]{border-color:#b33d35}
.geo-field input:focus,.geo-creator select:focus,.geo-pattern:focus-visible{outline:2px solid #167d69;outline-offset:2px}
.geo-counter{display:block;text-align:right;font-size:10px;color:#64776f;margin-top:3px}
.geo-hint,.geo-fixed{font-size:12px;line-height:1.6;color:#5b7067;margin:8px 0 0}
.geo-summary{padding:14px;border-radius:8px;background:#eef6f1;overflow-wrap:anywhere;white-space:pre-wrap;font-size:13px}
.geo-summary>strong{display:block;color:#176e58;margin-bottom:7px}
.geo-summary p{margin:4px 0;font-size:13px;line-height:1.5}
.geo-footnote{font-size:11px;line-height:1.6;color:#64766e;margin:12px 0 0}
.geo-error{color:#a43d32;font-size:12px;margin:8px 0 0}
.geo-error:empty{display:none}
body.plexido-geometric-pilot .plexido-engraving-card-host{width:100%;min-width:0}
body.plexido-geometric-pilot #add-to-cart-or-refresh>.product-add-to-cart .add-to-cart{white-space:normal;font-size:13px;line-height:1.4;padding:13px 14px}
body.plexido-geometric-pilot #add-to-cart-or-refresh>.product-add-to-cart .add-to-cart:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:380px){.geo-step{padding:12px}.geo-patterns{gap:6px}.geo-personalize{grid-template-columns:minmax(0,1fr)}.geo-sample{max-width:190px}.geo-intro{padding:18px}.geo-intro h2{font-size:22px}}

.gw-creator .gw-mode{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
body.plexido-glassware-product #add-to-cart-or-refresh>.product-add-to-cart .add .add-to-cart{display:inline-flex!important}
body.plexido-glassware-product #add-to-cart-or-refresh>.product-add-to-cart .show-customization{display:none!important}
.gw-creator .gw-quantity-choice{margin-top:16px;max-width:260px}.gw-creator .gw-quantity-choice label{font-size:13px;font-weight:600;display:block;margin-bottom:5px}.gw-creator .gw-quantity-choice select{margin-bottom:0}
.gw-creator .gw-choice{border:1px solid #c8d9d0;background:#fff;color:#176e58;padding:10px 12px;border-radius:7px;cursor:pointer;font-size:12px;line-height:1.4}
.gw-creator .gw-choice[aria-pressed=true]{background:#e6f2ed;border:2px solid #167d69;font-weight:600;padding:9px 11px}
.gw-creator .gw-count{font-size:12px;color:#536e62;margin:0 0 14px}
.gw-creator .gw-count:empty,.gw-creator .gw-mode:empty{display:none}
.gw-creator .gw-personalization{margin-top:14px}
.gw-creator .gw-pattern-thumb{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:white;border-radius:5px}
.gw-creator .geo-summary strong:not(:first-child){margin-top:14px}
.gw-creator .geo-field label{text-align:left!important}
.gw-creator .geo-personalize{grid-template-columns:minmax(125px,1fr) minmax(150px,1.1fr)}
@media(max-width:600px){.gw-creator .geo-personalize{grid-template-columns:minmax(0,1fr)}.gw-creator .geo-personalize figure{max-width:340px;width:100%;margin:auto}.gw-creator .geo-patterns{max-height:340px}.gw-creator .geo-fields{margin-top:12px}}
