/* Public catalogue and product pages; account checkout stays unchanged. */
.product-surface{--dim:#9caec9;--store-surface:#0c1628;--store-soft:#111f36;--store-art:linear-gradient(135deg,#102641,#171637);--store-heading:#eff5ff;--store-muted:#a8bad4;--store-border:rgba(133,168,226,.21)}
.product-surface.light,html[data-osp-theme="light"] .product-surface{--text:#142640;--muted:#485d79;--dim:#586c87;--cyan:#007e99;--green:#087650;--violet:#7043c4;--store-surface:#fff;--store-soft:#f1f6ff;--store-art:linear-gradient(135deg,#e6f7ff,#efedff);--store-heading:#142640;--store-muted:#4a607d;--store-border:rgba(63,105,169,.2)}
.product-surface :is(.btn,.card-kicker,.preview-bar,.preview-label,.status-pill,.store-version){font-family:Inter,"Segoe UI",system-ui,sans-serif}
.product-surface :is(.catalog-card h3,.managed-price,.pdp-price,.preview-title){font-family:Sora,Inter,"Segoe UI",system-ui,sans-serif}
.product-surface .gradient{background-image:linear-gradient(105deg,#16b7db,#497cf6 55%,#b170ef)}
.product-surface.light .gradient{background-image:linear-gradient(105deg,#007e9d,#245cdb 50%,#8a3cce)}
.product-surface .btn.primary{background:linear-gradient(115deg,#087fa2,#2563eb 55%,#7446d6);color:#fff}
.product-surface .btn{transition:transform .22s ease,box-shadow .22s ease,border-color .25s ease}
.product-surface :is(a,button,input,select):focus-visible{outline:3px solid #4f83ed;outline-offset:4px}
.product-surface :is(.panel-preview,.info-panel){background:var(--store-art);border-color:var(--store-border);box-shadow:0 28px 70px -45px rgba(53,97,203,.4)}
.product-surface :is(.preview-title,.preview-row strong,.info-panel h3){color:var(--store-heading)}
.product-surface :is(.preview-row small,.preview-footer,.preview-bar,.preview-label){color:var(--store-muted)}
.product-surface .preview-row{background:transparent;border-color:var(--store-border)}
.product-surface .status-pill{color:var(--cyan);border-color:var(--store-border);background:color-mix(in srgb,var(--cyan) 8%,transparent)}
.product-surface :is(.managed-products,.rental-offers){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.product-surface .managed-products:has(>.store-card:only-child),.product-surface .rental-offers:has(>.store-card:only-child){grid-template-columns:minmax(0,480px);justify-content:center}
.product-surface .managed-products:has(>.store-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px;margin-inline:auto}
.product-surface .store-card{padding:0!important;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--store-border);border-radius:24px;background:var(--store-surface);box-shadow:0 12px 36px -28px rgba(38,77,146,.4);min-width:0;transition:transform .25s ease,border-color .3s ease,box-shadow .3s ease,background .35s ease}
.product-surface .store-card[hidden]{display:none!important}
.store-card-cover{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:200px;aspect-ratio:16/9;overflow:hidden;background:var(--store-art);border-bottom:1px solid var(--store-border)}
.store-card-cover--modules{background:radial-gradient(at 80% 20%,rgba(171,89,238,.18),transparent 65%),var(--store-art)}
.store-card-cover--rental{background:radial-gradient(at 20% 20%,rgba(24,185,160,.17),transparent 65%),var(--store-art)}
.store-card-cover>img{height:100%;width:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.store-cover-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(var(--store-border) 1px,transparent 1px),linear-gradient(90deg,var(--store-border) 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,black,transparent 75%)}
.store-cover-symbol{display:grid;place-items:center;width:74px;height:74px;border-radius:23px;background:linear-gradient(135deg,#159fc9,#7750d9);color:#fff;box-shadow:0 20px 45px -20px rgba(88,93,224,.6);transform:rotate(-5deg)}
.store-cover-symbol>.osp-vector{width:36px;height:36px}.store-type>.osp-vector{width:14px;height:14px}.store-cover-open>.osp-vector{width:18px;height:18px}
.store-type{position:absolute;left:16px;top:16px;display:flex;align-items:center;gap:7px;background:var(--store-surface);color:var(--store-heading);border:1px solid var(--store-border);padding:7px 11px;border-radius:99px;font-size:.65rem;font-weight:700;box-shadow:0 5px 20px -12px #142640}
.store-cover-open{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:var(--store-surface);border:1px solid var(--store-border);color:var(--store-heading)}
.store-card-content{padding:24px;display:flex;flex-direction:column;flex:1;min-width:0}.store-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.store-card-meta .card-kicker{margin:0;font-size:.63rem;line-height:1.5;letter-spacing:.09em;color:var(--cyan)}
.store-version{flex:none;font-size:.62rem;padding:4px 8px;border:1px solid var(--store-border);border-radius:8px;color:var(--store-muted)}
.product-surface .store-card h3{font-size:clamp(1.18rem,2vw,1.45rem);line-height:1.35;letter-spacing:-.03em;margin:0 0 12px;overflow-wrap:anywhere}.store-card h3 a:hover{color:var(--cyan)}
.product-surface .store-card-description{font-size:.82rem;line-height:1.8;color:var(--muted);margin:0 0 20px;overflow-wrap:anywhere}
.product-surface .store-feature-preview{margin:0 0 12px;display:grid;gap:10px}.product-surface .store-feature-preview li{display:flex;gap:9px;align-items:flex-start;padding:0;font-size:.75rem;line-height:1.65;color:var(--muted)}.product-surface .store-feature-preview li:before{display:none}.store-feature-preview .osp-vector{color:var(--green);flex:none;margin-top:3px}
.store-more-features{font-size:.73rem;font-weight:600;color:var(--cyan);margin:0 0 18px}.store-more-features:hover{text-decoration:underline}
.store-card-bottom{margin-top:auto;padding-top:21px;border-top:1px solid var(--store-border)}.store-price{display:grid;gap:5px}.store-price>span{font-size:.64rem;letter-spacing:.06em;color:var(--muted)}.store-price strong{font-size:1.65rem;letter-spacing:-.04em;line-height:1.2;color:var(--text);overflow-wrap:anywhere}.store-price small{font-size:.68rem;color:var(--muted);min-height:19px}
.product-surface .store-card .card-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;align-items:center}.store-card .card-actions .btn{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;min-height:44px;font-size:.74rem}.store-checkout{font-size:.72rem;color:var(--muted);font-weight:650;padding:8px 0}.store-checkout:hover{color:var(--cyan)}
.store-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;padding:18px;border:1px solid var(--store-border);background:var(--store-surface);border-radius:18px;margin-bottom:16px}.store-toolbar label{display:grid;gap:8px;font-size:.71rem;color:var(--muted);flex:1;min-width:160px}.store-toolbar label:first-child{flex:3}.store-toolbar :is(input,select){border:1px solid var(--store-border);border-radius:11px;background:var(--bg2);color:var(--text);font:inherit;font-size:.8rem;min-height:45px;padding:11px 13px;width:100%}.store-results{font-size:.76rem;color:var(--muted);margin:0 0 24px}
.store-empty{grid-column:1/-1;padding:36px;border:1px dashed var(--store-border);border-radius:22px;background:var(--store-surface);text-align:center}.store-empty[hidden]{display:none}.store-empty p{color:var(--muted);margin:12px 0 20px}
.product-surface .pdp-shell{padding-top:35px}.product-surface .pdp-breadcrumb{margin-bottom:30px}.product-surface .pdp-intro h1{font-size:clamp(2.2rem,4.4vw,3.9rem)}
.product-surface :is(.pdp-panel,.pdp-buy-card,.pdp-related-card){background:var(--store-surface);border-color:var(--store-border);box-shadow:0 18px 46px -36px rgba(37,88,176,.4);transition:background .35s,border-color .25s,box-shadow .25s}
.product-surface .pdp-buy-card{position:relative;overflow:hidden;padding:28px;border-radius:24px}.pdp-buy-card:before{content:"";height:3px;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,#18b5d7,#6a5cdd,#bb71e8)}
.product-surface .pdp-visual{background:var(--store-art);border-color:var(--store-border)}.product-surface .pdp-visual-center{color:var(--store-heading)}.product-surface :is(.pdp-visual-kicker,.pdp-visual-center p,.pdp-visual-top,.pdp-visual-bottom){color:var(--store-muted)}.product-surface .pdp-visual-bottom{background:color-mix(in srgb,var(--store-surface) 75%,transparent);border-color:var(--store-border)}
.product-surface .pdp-visual-top{border-color:var(--store-border)}.product-surface .pdp-jump-nav{gap:8px}.product-surface .pdp-jump-nav a{background:var(--store-surface);border-color:var(--store-border);font-size:.72rem}.product-surface .pdp-jump-nav a.is-current{color:var(--cyan);border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 8%,var(--store-surface))}
.store-product-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.store-product-meta span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:9px;border:1px solid var(--store-border);background:var(--store-soft);font-size:.67rem;color:var(--muted)}
.product-surface .pdp-feature-grid li{background:var(--store-soft);border-color:var(--store-border)}.pdp-feature-grid .osp-vector{flex:none;color:var(--green);margin-top:3px}.pdp-buy-details .osp-vector{color:var(--cyan)}
@media(hover:hover) and (pointer:fine){.product-surface .store-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--cyan) 45%,transparent);box-shadow:0 24px 50px -32px rgba(50,95,199,.45)}.store-card:hover .store-card-cover>img{transform:scale(1.04)}.product-surface .btn:hover{transform:translateY(-2px)}}
@media(max-width:1050px){.product-surface :is(.managed-products,.rental-offers){grid-template-columns:repeat(2,minmax(0,1fr))}.store-card-content{padding:20px}}
@media(max-width:650px){.product-surface :is(.managed-products,.rental-offers),.product-surface .managed-products:has(>.store-card:nth-child(2):last-child){grid-template-columns:minmax(0,1fr)}.store-card-cover{min-height:180px}.store-toolbar{padding:14px;gap:14px}.store-toolbar label{min-width:100%}.store-card-content{padding:21px}.product-surface .pdp-buy-card{padding:22px}.store-product-meta{gap:7px}.store-product-meta span{font-size:.62rem}.product-surface .pdp-feature-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.product-surface *,.product-surface *:before,.product-surface *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Public hero: preserve the original airy preview instead of solid table rows. */
.product-surface .page-hero{padding:44px 0 76px}
.product-surface .page-hero .breadcrumb{margin-bottom:36px}
.product-surface .page-hero .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,70px);align-items:center}
.product-surface .page-hero h1{font-size:clamp(2.6rem,4.5vw,3.8rem);line-height:1.09;letter-spacing:-.045em;text-wrap:balance}
.product-surface .page-hero .hero-desc{max-width:58ch;font-size:1rem;line-height:1.85;margin-top:24px}
.product-surface .page-hero .hero-actions{margin-top:30px;gap:12px}
.product-surface .page-hero .panel-preview{padding:26px;border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--store-surface) 94%,transparent),var(--store-soft));border-color:var(--store-border)}
.product-surface .page-hero .preview-bar{margin-bottom:10px;padding-bottom:18px}
.product-surface .page-hero .preview-row{padding:17px 0;gap:14px;border-radius:0;line-height:1.6}
.product-surface .page-hero .preview-row>span:first-child:not(.preview-icon){display:flex;align-items:center;gap:12px;flex:1}
.product-surface .page-hero .preview-row>span:first-child>span[aria-hidden]{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid var(--store-border);border-radius:11px;background:color-mix(in srgb,var(--cyan) 7%,transparent);color:var(--cyan)}
.product-surface .page-hero .preview-row .category-tag{background:transparent;border-color:var(--store-border);font-size:.61rem}
.product-surface .page-hero .preview-row:last-child{padding-bottom:0}
.product-surface .store-card-content{gap:0}.product-surface .store-card h3{font-weight:750}.product-surface .store-card-cover{min-height:180px;aspect-ratio:16/8.5}
.product-surface .store-card .store-card-meta{min-height:25px}.product-surface .store-card .card-actions{padding-top:0}
.product-surface .store-checkout{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 4px}
.product-surface .pdp-intro{padding-top:6px;padding-bottom:32px}
.product-surface .pdp-lede{font-size:1rem;line-height:1.85;margin-top:20px}
.product-surface .pdp-hero-actions{margin-top:24px}
.product-surface .pdp-buy-card h2{font-size:1rem;color:var(--store-heading);line-height:1.55}
.product-surface .pdp-buy-card .pdp-checkout-note{font-size:.74rem;line-height:1.75}
.product-surface .pdp-buy-details>li>.osp-vector{grid-row:1/3;align-self:start;margin-top:2px;width:17px;height:17px}
.product-surface .pdp-visual-top>span:first-child,.product-surface .pdp-visual-bottom>span{display:inline-flex;align-items:center;gap:8px}
.product-surface .pdp-visual-center{min-height:250px;padding:32px 24px}
.product-surface .pdp-related-card h3{line-height:1.4}
@media(max-width:1000px){.product-surface .page-hero .hero-grid{grid-template-columns:1fr;gap:38px}.product-surface .page-hero .hero-copy{text-align:center}.product-surface .page-hero .hero-desc{margin-inline:auto}.product-surface .page-hero .hero-art{max-width:600px;margin-inline:auto}}
@media(max-width:620px){.product-surface .page-hero{padding:28px 0 52px}.product-surface .page-hero .breadcrumb{margin-bottom:26px}.product-surface .page-hero h1{font-size:clamp(2.25rem,9.2vw,3rem);line-height:1.12}.product-surface .page-hero .hero-desc{font-size:.9rem;line-height:1.8}.product-surface .page-hero .panel-preview{padding:20px}.product-surface .page-hero .preview-row{font-size:.75rem;gap:9px}.product-surface .page-hero .preview-row .category-tag{padding:5px 7px;font-size:.56rem}.product-surface .pdp-hero-actions .btn{min-height:46px}.product-surface .pdp-jump-nav{flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin}.product-surface .pdp-jump-nav a{flex:none;white-space:nowrap}.product-surface .pdp-layout{gap:24px}}
