/* MARVETO v0.5.6 - restrained premium finishing layer. System fonts only. */
:root {--mv56-radius:18px;--mv56-green:#159776;--mv56-ink:#173148;}
/* Typography: improve readability instead of using tiny luxury-brand-style labels. */
body{font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;font-size:15px;letter-spacing:normal}
.product-name,.section-top h2,.scanner-intro h2,.hero h1{font-family:Inter,"Segoe UI",system-ui,sans-serif;letter-spacing:-.035em}
.market-section .product-grid{align-items:stretch;gap:20px}
.product-card{border-radius:20px!important;box-shadow:0 11px 29px rgba(19,52,74,.06)!important;display:flex;flex-direction:column;min-width:0;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.product-card:hover{transform:translateY(-3px);box-shadow:0 17px 40px rgba(15,39,57,.13)!important}
.product-photo{min-height:145px;height:145px}
.product-content{display:flex;flex:1;flex-direction:column;padding:20px!important}
.product-name{font-size:clamp(17px,1.65vw,20px)!important;line-height:1.38;margin-bottom:16px;min-height:0;overflow-wrap:anywhere}
.product-category{font-size:12px!important;letter-spacing:.1em}
.brand-pill{font-size:12px!important;padding:8px 11px!important}
.save-button{width:44px!important;height:44px!important;font-size:25px!important;box-shadow:0 5px 18px rgba(7,30,45,.12)!important}
.market-list{margin-top:4px;border-top:1px solid #d7e3e9!important}
.market-line{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(112px,auto);gap:12px!important;padding:12px 8px!important;border-bottom:1px solid #d7e3e9!important;align-items:center!important;min-height:60px;border-radius:0}
.market-line.best{background:rgba(26,165,122,.085);border-radius:9px;margin:4px -5px;padding-left:13px!important;padding-right:13px!important}
.market-line .market-country{display:flex;align-items:center;gap:8px;font-size:clamp(12px,1.1vw,14px)!important;font-weight:650!important;line-height:1.35;color:#32485a!important;overflow-wrap:normal!important;min-width:0}
.market-line .market-country .country-flag{display:block;flex:0 0 28px;width:28px;height:19px;object-fit:cover;border-radius:3px;border:1px solid rgba(120,145,160,.34);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.market-name{min-width:0;overflow-wrap:break-word}
.market-star{flex:0 0 auto;color:#007b5e!important;font-size:17px;line-height:1}
.market-line .price-pair{display:flex!important;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;max-width:none!important;min-width:0;white-space:nowrap!important}
.market-line .price-pair strong{font-size:clamp(16px,1.7vw,19px)!important;line-height:1.22!important;letter-spacing:-.012em;color:#112f44!important;font-variant-numeric:tabular-nums;font-weight:820!important}
.market-line .price-pair small{font-size:clamp(12px,1.15vw,13px)!important;color:#4e6475!important;font-weight:700;line-height:1.2}
.product-content .saving-line{margin-top:auto;align-items:center!important;flex-direction:row!important;padding-top:17px;min-width:0}
.product-content .saving-line span:first-child{font-size:12px!important;line-height:1.4;min-width:0;overflow-wrap:break-word;color:#486073!important}
.product-content .saving-pill{font-size:15px!important;padding:8px 12px!important;white-space:nowrap}
.product-card .card-cta{min-height:48px;font-size:14px!important;border-radius:12px!important}
.favorites-toggle{display:inline-flex!important;align-items:center;gap:8px;font-size:15px!important;font-weight:750!important;line-height:1.2;min-height:46px;padding:9px 13px!important;border:1px solid #9fb9c6!important;background:#ecf6f6!important;border-radius:11px!important;color:#15394c!important}
.favorites-toggle>span:first-child{font-size:23px;line-height:1;color:#0e7d62}
.favorites-toggle #fav-count{font-size:14px;font-weight:850;white-space:nowrap}
.favorites-toggle.active{background:#c6f2df!important;color:#084a39!important}
.catalog-count strong,.catalog-count-number{font-size:clamp(24px,3vw,36px)!important;line-height:1.15}
/* Dark surface contrast, including market rows that previously inherited a pale foreground. */
html[data-theme="dark"] .product-card{background:#1e3546!important;border:1px solid #4b6b79!important}
html[data-theme="dark"] .product-content,html[data-theme="dark"] .product-photo{background:#203b4c!important;color:#eef8fb!important}
html[data-theme="dark"] .market-line{border-color:#486576!important}
html[data-theme="dark"] .market-line .market-country,html[data-theme="dark"] .market-name{color:#e2f1f9!important}
html[data-theme="dark"] .market-line .price-pair strong{color:#ffffff!important}
html[data-theme="dark"] .market-line .price-pair small{color:#bcdce9!important}
html[data-theme="dark"] .market-line.best{background:#1c5248!important}
html[data-theme="dark"] .market-line.best .price-pair strong{color:#adf6d1!important}
html[data-theme="dark"] .market-star{color:#a6fbd4!important}
html[data-theme="dark"] .product-content .saving-line span:first-child{color:#d8e9f3!important}
html[data-theme="dark"] .favorites-toggle{background:#294a5d!important;border-color:#7298a8!important;color:#f1fcff!important}
html[data-theme="dark"] .favorites-toggle.active{background:#2a5f50!important;color:#c9ffe5!important}
html[data-theme="dark"] .save-button{background:#eaf5f8!important;color:#1a5f58!important}
html[data-theme="dark"] .product-card .brand-pill{color:#1a3d51!important;background:#f2f7f8!important}
/* Scanner: keep language-dependent country row labels and numbers apart. */
.scan-market{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px}
.scan-market>div{min-width:0;overflow-wrap:break-word}
.scan-market>div>strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap;line-height:1.4}
.scan-market>div>strong .country-flag{width:26px;height:18px;display:inline-block;object-fit:cover;flex-shrink:0;border-radius:3px}
.scan-market>strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:clamp(15px,1.7vw,20px)}
/* Clean showcase; no sticker covering French/Russian/Hungarian captions. */
.hero-visual .showcase{overflow:visible!important}
.hero-visual .showcase-head{display:flex!important;flex-wrap:wrap;align-items:center;min-width:0;gap:10px}
.hero-visual .showcase-chip{font-size:clamp(11px,1.2vw,14px)!important;max-width:calc(100% - 35px)!important;overflow-wrap:break-word;white-space:normal!important;line-height:1.4}
.hero-visual .showcase-footer{display:flex!important;justify-content:space-between;gap:13px;flex-wrap:wrap;align-items:center!important}
.hero-visual .showcase-footer span{max-width:100%!important;min-width:0}
.hero-visual .mini-sticker{position:relative!important;bottom:auto!important;left:auto!important;max-width:100%!important;width:max-content!important;margin:13px auto 0!important}
/* Active visitor stats stay connected to the existing D1 API and retain accurate names. */
.visitor-banner{border-radius:19px!important;padding:clamp(16px,2.3vw,25px)!important;gap:14px 24px!important;box-shadow:0 10px 32px rgba(10,35,49,.08)}
.visitor-banner #visitor-title{font-size:clamp(15px,1.7vw,20px)!important;letter-spacing:-.02em}
.visitor-banner .visitor-stats{display:flex;gap:18px 30px;flex-wrap:wrap;margin-left:auto}
.visitor-banner .visitor-stat{display:flex;flex-direction:column;gap:5px;min-width:94px}
.visitor-banner .visitor-stat small{font-size:13px!important;line-height:1.4}
.visitor-banner .visitor-stat strong{font-size:clamp(26px,3.4vw,38px)!important;font-variant-numeric:tabular-nums;line-height:1.05}
html[data-theme="dark"] .visitor-banner{background:#19394a!important;border-color:#487284!important}
html[data-theme="dark"] .visitor-banner #visitor-title,html[data-theme="dark"] .visitor-banner .visitor-stat strong{color:#f5feff!important}
html[data-theme="dark"] .visitor-banner .visitor-stat small{color:#b8e0ea!important}
html[data-theme="light"] .visitor-banner{background:#f0faf8!important;border-color:#a1c9bf!important}
/* Buttons keep 44px tap targets and high contrast. */
.future-cta a,.request-submit,.scanner-entry button,.card-cta,.plan-card .plan-status{font-size:clamp(14px,1.35vw,16px)!important;line-height:1.35!important;min-height:44px;overflow-wrap:break-word}
html[data-theme="dark"] .future-cta a{color:#effcf9!important;background:#216856!important;border:1px solid #58b795!important}
html[data-theme="dark"] .catalog-bottom a{color:#9feacf!important}
@media(max-width:720px){.market-section .product-grid{gap:15px}.product-content{padding:16px!important}.market-line{grid-template-columns:minmax(0,1fr) minmax(96px,auto);padding:10px 2px!important}.market-line .price-pair strong{font-size:16px!important}.market-line .price-pair small{font-size:12px!important}.visitor-banner .visitor-stats{margin-left:0}.favorites-toggle{font-size:14px!important}}
@media(max-width:420px){.market-line .market-country{font-size:12px!important}.market-line .price-pair strong{font-size:15px!important}.market-line .market-country .country-flag{width:23px;height:16px;flex-basis:23px}.market-line{grid-template-columns:minmax(0,1fr) minmax(92px,auto);gap:5px!important}.market-line .price-pair small{font-size:11px!important}.hero-visual .showcase-chip{max-width:100%!important}.visitor-banner{gap:16px!important}}
@media(prefers-reduced-motion:reduce){.product-card{transform:none!important;transition:none!important}}

@media(max-width:550px){.product-content .saving-line{flex-wrap:wrap!important;gap:7px}.product-content .saving-pill{margin-left:auto}.scanner-panel .scan-market{grid-template-columns:minmax(0,1fr)!important}.scan-market>strong{justify-self:start}}
