/* Heliox Shop global directory. Builds on the existing light/dark design tokens. */
.world-promo{margin-top:34px;display:flex;align-items:center;gap:23px;padding:27px 30px;background:var(--surface);border:1px solid var(--line);border-radius:23px;box-shadow:var(--shadow)}
.world-promo-icon{width:69px;height:69px;flex:none;display:grid;place-items:center;border-radius:21px;background:var(--surface2);color:var(--accent)}
.world-promo>div:nth-child(2){flex:1;min-width:0}.world-promo h2{font-size:23px;margin:8px 0 6px;line-height:1.18}.world-promo p{font-size:13px;margin:0;max-width:770px}.world-promo .btn{white-space:nowrap}
.world-page{padding-bottom:65px}.world-hero{background:radial-gradient(circle at 76% 24%,#176956 0,transparent 41%),linear-gradient(126deg,#062e2c,#095145 72%,#064138);color:#f4fff7;border-radius:25px;min-height:318px;padding:42px 48px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.9fr);gap:50px;align-items:center;position:relative;overflow:hidden}
.world-hero:after{content:"";position:absolute;right:-86px;top:-175px;width:480px;height:480px;border:1px solid #ffffff17;border-radius:50%;pointer-events:none;box-shadow:0 0 0 72px #ffffff07,0 0 0 146px #ffffff05}
.world-hero-copy{position:relative;z-index:1}.world-hero-copy .eyebrow{color:#b7edbe;font-size:10px;letter-spacing:.16em;display:flex;align-items:center;gap:8px;font-weight:780}.world-hero h1{font-size:clamp(32px,3.8vw,54px);font-weight:740;max-width:730px;line-height:1.07;margin:15px 0 16px}.world-hero p{color:#c1dcd3;font-size:14px;max-width:690px;line-height:1.75;margin-bottom:24px}.world-hero .btn{background:#c5f8aa;color:#0b4233}
.world-metrics{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:stretch}.world-metrics>div:not(.world-no-feed){display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:90px;padding:15px 19px;background:#ffffff13;border:1px solid #ffffff29;border-radius:15px;backdrop-filter:blur(4px)}.world-metrics strong{font-size:29px;line-height:1;letter-spacing:-.07em;font-weight:800;color:#f3fff8}.world-metrics span{font-size:11px;line-height:1.3;color:#cde5d6}.world-no-feed{grid-column:1/-1;font-size:11px;color:#f5e4b7;display:flex;gap:9px;align-items:center;padding:5px 2px}
.world-filters{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:22px 23px;margin-top:22px;box-shadow:var(--shadow)}.world-filter-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1.04fr .93fr;gap:12px}.world-filter-grid label{font-size:11px;font-weight:700;color:var(--muted);display:flex;flex-direction:column;gap:8px}.world-filter-grid input,.world-filter-grid select{min-width:0;width:100%;height:45px;padding:0 13px;border-radius:10px;border:1px solid var(--line);background:var(--input);color:var(--ink);font-size:13px;outline-offset:2px}.world-filter-grid input:focus,.world-filter-grid select:focus{border-color:var(--accent)}.world-filter-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px}.world-filter-actions,.world-tabs{display:flex;align-items:center;gap:9px}.world-filter-actions .btn{white-space:nowrap}.world-tab{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);padding:8px 12px;border-radius:9px;border:1px solid transparent;font-weight:650}.world-tab.active{background:var(--surface2);border-color:var(--line);color:var(--ink)}.world-tab>span{font-size:10px;border-radius:20px;padding:1px 6px;background:var(--surface3)}
.world-result-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:39px 0 17px}.world-result-head .eyebrow{font-size:10px;font-weight:760;letter-spacing:.13em}.world-result-head h2{font-size:25px;margin:6px 0 0;display:flex;align-items:baseline;gap:11px}.world-result-head h2 span{font-size:14px;font-weight:680;color:var(--muted)}.world-result-location{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);padding-bottom:5px;white-space:nowrap}
.world-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.world-card{background:var(--surface);border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);padding:19px;transition:transform .15s ease,box-shadow .15s ease;min-height:246px;min-width:0;display:flex;flex-direction:column}.world-card:hover{transform:translateY(-2px);box-shadow:0 13px 31px #102b2117}.world-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:17px}.world-logo{width:60px;height:60px;min-width:60px;border-radius:15px;border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;padding:9px;overflow:hidden}.world-logo img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.world-logo.is-fallback{background:var(--surface2);padding:0}.world-logo.is-fallback img{object-fit:cover}.world-save{display:grid;place-items:center;min-width:31px;height:31px;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:transparent}.world-save:hover,.world-save.is-saved{color:#be5975;background:#fff0f2;border-color:#f2bec9}.world-card-content{display:flex;flex:1;flex-direction:column;min-height:0}.world-card h3{font-size:16px;line-height:1.32;margin:0 0 4px;min-height:21px;overflow-wrap:anywhere}.world-card p{font-size:11px;color:var(--muted);margin:0 0 12px;line-height:1.45}.world-dot{padding:0 3px;color:var(--dim)}.world-tag{display:inline-flex;align-items:center;align-self:flex-start;font-size:10px;font-weight:750;padding:5px 9px;line-height:1.28;border-radius:7px;max-width:100%}.world-tag.unverified{background:var(--surface2);color:var(--muted)}.world-tag.documented{background:#e6f5ed;color:#126943}.world-tag.shipping{background:#edf1ff;color:#5364a3}.world-tag.neutral{background:var(--surface2);color:var(--muted)}[data-theme="dark"] .world-tag.documented{background:#153c30;color:#a4e5ba}[data-theme="dark"] .world-tag.shipping{background:#273455;color:#c0cdff}[data-theme="dark"] .world-save.is-saved{background:#422b34;color:#f5a0bc;border-color:#704356}
.world-card-bottom{margin-top:auto;padding-top:19px;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;color:var(--muted)}.world-card-bottom>span:first-child{display:flex;align-items:center;gap:7px}.world-arrow{color:var(--accent)}.world-pagination{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:28px}.world-pagination span{font-size:12px;color:var(--muted)}.world-pagination span strong{color:var(--ink)}.world-pagination .btn{display:flex;align-items:center;gap:8px}.world-pagination button:first-child svg{transform:rotate(180deg)}
.world-empty{display:flex;align-items:center;flex-direction:column;gap:14px;background:var(--surface);border:1px dashed var(--line);border-radius:18px;padding:55px 20px;text-align:center}.world-empty h3{margin:0;font-size:18px}.world-disclaimer{margin-top:38px;padding:20px 21px;border:1px solid var(--line);border-radius:15px;display:flex;align-items:flex-start;gap:14px;background:var(--surface2);color:var(--muted)}.world-disclaimer svg{margin-top:2px;color:var(--accent)}.world-disclaimer p{font-size:11px;margin:0;line-height:1.6;max-width:1100px}
.world-detail{padding-bottom:85px}.world-back{font-size:12px;color:var(--accent);display:inline-flex;align-items:center;gap:7px;margin:0 0 27px;font-weight:650}.world-back svg{transform:rotate(180deg)}.world-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 29px;border:1px solid var(--line);border-radius:22px;background:var(--surface);margin-bottom:21px}.world-detail-ident{display:flex;align-items:center;gap:21px;min-width:0}.world-detail-ident .world-logo{width:105px;height:105px;min-width:105px;padding:16px;border-radius:20px}.world-detail-ident .world-logo.is-fallback{padding:0}.world-detail h1{font-size:clamp(29px,3vw,43px);margin:8px 0 14px;overflow-wrap:anywhere}.world-detail-tags{display:flex;gap:8px;flex-wrap:wrap}.world-favorite{white-space:nowrap;display:flex;gap:9px;align-items:center}.world-favorite.is-saved{color:#be5975}.world-detail-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(295px,.85fr);gap:20px}.world-facts,.world-next{background:var(--surface);border:1px solid var(--line);padding:29px;border-radius:22px}.world-facts h2,.world-next h2{font-size:21px;margin-bottom:26px}.world-facts dl{margin:0}.world-facts dl>div{display:grid;grid-template-columns:185px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.world-facts dt{font-size:12px;color:var(--muted)}.world-facts dd{margin:0;font-size:13px;font-weight:620;overflow-wrap:anywhere}.world-source-notice{font-size:12px;line-height:1.6;margin:24px 0 13px}.world-facts .link-arrow{display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-weight:650;font-size:12px}.world-next-icon{width:48px;height:48px;border-radius:13px;background:var(--soft);color:var(--accent);display:grid;place-items:center;margin-bottom:22px}.world-next h2{margin:0 0 13px}.world-next p{font-size:13px;line-height:1.7}.world-next-meta{display:grid;gap:13px;font-size:12px;color:var(--muted);margin:22px 0 28px}.world-next-meta>div{display:flex;gap:9px;align-items:flex-start}.world-next-meta svg{color:var(--accent);margin-top:2px}.world-next .btn{display:inline-flex;gap:10px;align-items:center;justify-content:center;width:100%;font-size:12px;line-height:1.3;padding:12px}.world-url-notice{border:1px solid var(--line);background:var(--surface2);padding:13px;border-radius:10px;font-size:12px!important;overflow-wrap:anywhere}
@media(max-width:1200px){.world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.world-hero{gap:23px;padding:38px}.world-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.world-hero{grid-template-columns:1fr;padding:29px}.world-hero h1{font-size:39px}.world-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.world-no-feed{grid-column:1/-1}.world-metrics>div:not(.world-no-feed){min-height:82px}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-promo{flex-wrap:wrap}.world-promo .btn{margin-left:90px}.world-detail-layout{grid-template-columns:1fr}.world-detail-heading{align-items:flex-start}}
@media(max-width:590px){.world-hero{padding:25px 22px}.world-hero h1{font-size:33px}.world-hero p{font-size:12px}.world-metrics{grid-template-columns:1fr 1fr;gap:8px}.world-metrics>div:not(.world-no-feed){padding:13px;min-height:78px}.world-metrics strong{font-size:24px}.world-metrics span{font-size:10px}.world-filters{padding:17px}.world-filter-grid{grid-template-columns:1fr}.world-filter-bottom{align-items:stretch;flex-direction:column}.world-tabs{justify-content:space-between}.world-filter-actions{justify-content:space-between}.world-filter-actions .btn{flex:1}.world-result-head{align-items:flex-start;gap:8px}.world-result-head h2{font-size:22px}.world-result-location{font-size:10px}.world-grid{grid-template-columns:1fr}.world-card{min-height:215px}.world-pagination{gap:10px}.world-pagination .btn{padding:9px;font-size:11px}.world-promo{padding:20px;gap:15px}.world-promo-icon{width:51px;height:51px;border-radius:14px}.world-promo h2{font-size:18px}.world-promo .btn{margin-left:0;width:100%;justify-content:center}.world-detail-ident .world-logo{width:74px;height:74px;min-width:74px;padding:7px}.world-detail-heading{padding:19px;flex-direction:column;gap:20px}.world-detail-ident{align-items:flex-start;gap:13px}.world-detail h1{font-size:27px}.world-favorite{width:100%;justify-content:center}.world-facts,.world-next{padding:21px}.world-facts dl>div{grid-template-columns:1fr;gap:3px}}

.world-feed-access{padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);margin:18px 0}.world-feed-access strong{font-size:12px;color:var(--ink)}.world-feed-access p{font-size:11px;margin:6px 0 0;line-height:1.65}.world-feed-access small{display:block;margin-top:7px;font-size:10px;color:var(--muted)}

/* Retailer initial shown instead of a logo until permission is granted (HELIOX_RETAILER_LOGOS). */
.world-logo.is-initial{background:var(--soft);padding:0}
.world-logo.is-initial .initial{font-weight:850;color:var(--accent);font-size:26px;letter-spacing:-.04em}
