[hidden]{display:none!important}:root{--accent:#0c59ae;--bg:#f4f7fb;--radius:18px;--ink:#17243a;--muted:#718096;--line:#e1e7ef;--columns:4;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body{height:100%;min-height:100%}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9bbde8;outline-offset:3px}.topline{background:var(--accent);color:#fff;text-align:center;font-size:11px;letter-spacing:.1em;padding:11px}.header,main,footer{max-width:1424px;margin:auto}.header{padding:30px 48px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:10px;align-items:center;font-size:21px;font-weight:700;text-decoration:none}.brand-mark{display:grid;place-items:center;background:var(--accent);width:36px;height:36px;border-radius:50%;color:#fff;font-size:27px}.header-actions{display:flex;gap:16px;align-items:center}.primary,.secondary,.quiet{border:0;border-radius:9px;padding:13px 20px;font-size:13px;font-weight:600}.primary{background:var(--accent);color:white}.secondary{background:white;border:1px solid var(--line)}.quiet{background:none;color:var(--ink)}#cart-count{margin-left:10px;padding:2px 6px;border-radius:20px;background:#ffffff25}main{padding:0 48px}.hero{min-height:345px;display:grid;grid-template-columns:1.25fr 1fr;background:var(--accent-soft);border-radius:var(--radius);overflow:hidden;padding:45px 55px;position:relative}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:650;color:var(--accent)}h1{font-size:clamp(34px,4.1vw,58px);line-height:1.06;letter-spacing:-.045em;max-width:650px;margin:20px 0}p{line-height:1.65}.hero p{font-size:14px;max-width:420px;color:var(--muted)}.hero-link{display:inline-flex;align-items:center;gap:35px;font-size:13px;font-weight:600;margin-top:14px;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:8px}.hero-art{position:relative;min-height:260px}.orbit{width:260px;height:260px;border:1px solid var(--accent-line);border-radius:50%;position:absolute;left:20%;top:0}.vase{position:absolute;width:115px;height:150px;background:linear-gradient(100deg,#b5b6a3,#e4e1d0 35%,#c4c4ad 75%,#abae98);bottom:-10px;left:40%;border-radius:18px 18px 50px 50px;transform:rotate(-6deg);box-shadow:25px 18px 22px #61674a15}.stem{position:absolute;width:3px;height:160px;background:var(--accent);left:53%;bottom:108px;transform:rotate(-25deg);transform-origin:bottom}.s2{transform:rotate(28deg);height:175px}.leaf{position:absolute;background:linear-gradient(120deg,var(--accent-line),var(--accent));width:98px;height:49px;border-radius:90% 0 90% 0;left:32%;top:18%;transform:rotate(25deg)}.l2{left:55%;top:5%;transform:rotate(-38deg);width:120px;height:54px}.hero-stamp{position:absolute;right:0;bottom:20px;width:95px;height:95px;border:1px solid var(--accent-line);border-radius:50%;display:grid;place-content:center;text-align:center;letter-spacing:.1em;font-size:8px;line-height:1.6;transform:rotate(12deg)}.hero-stamp span{font-size:26px}.catalog{padding-top:45px;scroll-margin-top:20px}.catalog-heading{display:flex;justify-content:space-between;align-items:center}h2{font-size:29px;letter-spacing:-.035em;margin:8px 0 24px;font-weight:600}.muted{color:var(--muted);font-size:12px}.catalog-tools{display:flex;gap:16px;margin-bottom:20px}.search{display:flex;align-items:center;gap:10px;flex:1;background:white;border:1px solid var(--line);border-radius:9px;padding:0 16px}.search span{font-size:28px;color:var(--muted)}.search input{border:0;min-width:0;width:100%;padding:14px 0;background:none;outline:none;font-size:13px}select{background:white;border:1px solid var(--line);padding:12px;border-radius:9px;font-size:13px;color:var(--ink)}.categories{display:flex;gap:8px;overflow:auto;max-height:95px;flex-wrap:wrap;margin-bottom:22px}.categories button{background:none;white-space:nowrap;border:1px solid #dbe0d6;border-radius:30px;padding:9px 17px;color:#667266;font-size:12px}.categories button.active{background:var(--accent);border-color:var(--accent);color:white}.products{display:grid;gap:26px 20px}.product{min-width:0}.product-image{background:#edf2f8;border:0;border-radius:var(--radius);position:relative;width:100%;aspect-ratio:1.05;overflow:hidden;display:grid;place-items:center;padding:0}.product-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .3s}.product-image:hover img{transform:scale(1.045)}.no-image{display:grid;place-content:center;text-align:center;color:#8b9bb0;font-size:60px;font-weight:200}.no-image small{font-size:9px;letter-spacing:.13em;margin-top:10px}.stock{position:absolute;top:12px;left:12px;background:#ffffffdb;border-radius:20px;font-size:10px;padding:5px 8px;color:var(--accent)}.product-name{display:block;border:0;background:none;text-align:left;padding:13px 0 3px;font-size:14px;font-weight:550;line-height:1.45;width:100%;height:56px;overflow:hidden}.product-meta{font-size:11px;color:var(--muted);margin:4px 0 13px}.product-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.price{font-size:18px;font-weight:650;letter-spacing:-.03em}.price small{font-size:11px;font-weight:400}.add{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:0;background:transparent;width:36px;height:36px;padding:7px;border-radius:9px;color:var(--accent)}.add svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.add:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin:35px 0;font-size:12px}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-strip b{display:block;font-size:12px;margin-bottom:8px;font-weight:550}.service-strip span{font-size:11px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:15px;padding:27px 48px;font-size:11px;color:var(--muted)}footer>span:first-child{font-size:14px;color:var(--ink);font-weight:600}.status{color:var(--muted);font-size:13px}.status:empty{display:none}.status.error{color:#ad412d;background:#fff1ec;padding:14px;border-radius:10px}.empty{padding:60px 25px;background:#edf2f8;text-align:center;border-radius:var(--radius);grid-column:1/-1;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:22px;font-weight:500;margin-bottom:10px}dialog{border:0;border-radius:20px;padding:32px;max-width:calc(100% - 24px);color:var(--ink);box-shadow:0 25px 90px #18315326}dialog::backdrop{background:#081a3350;backdrop-filter:blur(3px)}.close{border:0;background:#f0f3f7;border-radius:50%;font-size:25px;width:35px;height:35px;flex-shrink:0}.detail-dialog{width:850px}.detail-dialog>.close{position:absolute;right:18px;top:18px;z-index:1}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:35px}.detail-photo{aspect-ratio:1;background:#edf2f8;border-radius:15px;display:grid;place-items:center;overflow:hidden}.detail-photo img{width:100%;height:100%;object-fit:contain}.detail-info{padding-top:26px}.detail-info h2{margin:10px 0 20px}.detail-description{white-space:pre-wrap;color:var(--muted);font-size:14px}.thumbnails{display:flex;gap:7px;margin-top:10px;overflow:auto}.thumbnails button{width:55px;height:55px;padding:0;border:1px solid var(--line);background:white;border-radius:7px;overflow:hidden;flex-shrink:0}.thumbnails img{width:100%;height:100%;object-fit:contain}.drawer{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:520px;border-radius:20px 0 0 20px;overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.dialog-head h2{margin-top:5px}.cart-line{display:grid;grid-template-columns:1fr auto;gap:10px;border-bottom:1px solid var(--line);padding:17px 0;font-size:13px}.quantity{display:flex;gap:10px;align-items:center}.quantity button{border:1px solid var(--line);background:white;border-radius:7px;width:27px;height:27px}.cart-total{display:flex;justify-content:space-between;font-size:22px;font-weight:600;margin:25px 0}.cart-subtotal{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-top:13px}label{font-size:12px;display:block}form label{margin-bottom:15px}form input,form textarea,form select{width:100%;display:block;margin-top:7px;border:1px solid var(--line);background:white;border-radius:8px;padding:12px;font-size:14px;color:var(--ink)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{width:100%;margin-top:15px}.account-dialog{width:480px}.account-card{background:var(--accent-soft);border-radius:15px;padding:25px;margin-bottom:24px}.account-card b{font-size:24px;display:block;margin:15px 0}.order-line{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 22px;border-radius:10px;font-size:13px;box-shadow:0 5px 25px #0002;z-index:5}.embed .topline,.embed .service-strip,.embed footer{display:none}.embed .hero{min-height:200px;padding:25px}.embed .hero-art{min-height:200px}.embed .header{padding-top:18px;padding-bottom:18px}@media(max-width:1000px){.hero{padding:35px}.header,footer{padding-left:30px;padding-right:30px}main{padding:0 30px}.hero-art{transform:scale(.85)}}@media(max-width:650px){.topline{font-size:9px}.header{padding:20px 18px}.brand{font-size:17px}.header-actions{gap:3px}.header-actions button{padding:10px;font-size:11px}.brand-mark{width:29px;height:29px;font-size:22px}main{padding:0 18px}.hero{padding:27px;grid-template-columns:1fr;min-height:290px}.hero-art{display:none}.hero p{font-size:12px;max-width:300px}.hero h1{font-size:40px}.catalog{padding-top:30px}.catalog-heading h2{font-size:25px}.catalog-tools{gap:8px}.catalog-tools select{max-width:145px;font-size:11px}.search{padding:0 10px}.search input{font-size:11px}.products{gap:22px 13px}.product-name{font-size:12px;height:51px}.price{font-size:16px}.stock{font-size:8px;top:8px;left:8px}.service-strip{grid-template-columns:1fr;padding:24px 0;gap:20px}.service-strip div{display:flex;justify-content:space-between;gap:12px}.service-strip b,.service-strip span{font-size:10px}footer{padding:24px 18px;flex-wrap:wrap}.detail-layout{grid-template-columns:1fr;gap:10px}.detail-dialog{padding:20px}.detail-photo{max-height:290px}.drawer{border-radius:0;padding:23px;max-width:100%;width:100%}.field-row{grid-template-columns:1fr;gap:0}.categories{max-height:85px}.categories button{font-size:11px;padding:8px 12px}.hero-stamp{display:none}}

.cart-quantity{width:65px;border:1px solid var(--line);border-radius:6px;padding:5px;font-size:12px;text-align:center}

:root{--accent-soft:color-mix(in srgb,var(--accent) 9%,white);--accent-line:color-mix(in srgb,var(--accent) 35%,white)}
.vase{background:linear-gradient(100deg,#a6b7cc,#e1e9f4 35%,#b9c9dc 75%,#98abc4);box-shadow:25px 18px 22px #18315315}.no-image{color:#8b9bb0}.product-image{background:#edf2f8}.primary:hover{filter:brightness(.94)}
/* Quiet catalogue navigation; shares the store accent without a framed card. */
.catalog-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}
.catalog-results{min-width:0}
.group-sidebar{position:relative;align-self:stretch;min-width:0;padding-right:8px}
.group-sidebar h3{margin:0;padding:10px 12px 16px;font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--muted)}
.group-picker{display:none}
.categories{display:block;height:auto;max-height:none;overflow:visible;margin:0;padding:0 5px 6px 0}
.categories::-webkit-scrollbar{width:4px;height:4px}
.categories::-webkit-scrollbar-track{background:transparent}
.categories::-webkit-scrollbar-thumb{background:#c9d1dc;border:0;border-radius:8px}
.categories::-webkit-scrollbar-button{display:none;width:0;height:0}
.group-node{position:relative;display:flex;align-items:center;gap:6px;min-height:38px;margin:2px 0;padding:5px 12px 5px calc(8px + var(--depth)*14px);border-radius:8px;cursor:pointer;font-size:13px;font-weight:400;color:#526174;transition:background-color .12s,color .12s}
.group-node[aria-level="1"]{font-weight:500}
.group-node:hover{background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--ink)}
.group-node.active{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent);font-weight:500}
.group-node.active::before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:2px;border-radius:2px;background:var(--accent);opacity:.65}
.group-node:focus-visible{outline:2px solid var(--accent-line);outline-offset:-2px}
.group-name{min-width:0;overflow-wrap:anywhere;line-height:1.55}
.categories .group-toggle{display:grid;place-items:center;flex:0 0 20px;width:20px;height:26px;min-width:20px;padding:0;border:0;border-radius:5px;background:transparent;color:#8a97a8}
.categories .group-toggle:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent)}
.group-toggle svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .12s}
.group-node[aria-expanded="true"]>.group-toggle svg{transform:rotate(90deg)}
.group-spacer{width:20px;flex-shrink:0}
@media(min-width:761px){
 .group-sidebar{display:flex;flex-direction:column}
 .group-sidebar h3{flex-shrink:0}
 .categories{flex:none;max-height:none}
}
@media(min-width:761px) and (max-width:1150px){.catalog-layout{grid-template-columns:210px minmax(0,1fr);gap:18px}}
@media(max-width:760px){
 .catalog-layout{display:block}
 .group-sidebar{position:relative;top:auto;padding:0;margin-bottom:18px}
 .group-sidebar h3{display:none}
 .group-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:13px 15px;background:#fff;color:#526174;border:1px solid var(--line);border-radius:10px;font-size:13px}
 .group-picker>svg{width:16px;height:16px;fill:none;stroke:#8a97a8;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .12s}
 .groups-open .group-picker>svg{transform:rotate(180deg)}
 .categories{display:none;position:static;max-height:none;overflow:visible;margin-top:6px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px}
 .groups-open .categories{display:block}
 .groups-open .group-picker{border-color:var(--accent-line)}
 .group-node{min-height:44px}
 .categories .group-toggle{height:34px}

}
@media(prefers-reduced-motion:reduce){.group-node,.group-toggle svg,.group-picker>svg{transition:none}}

/* Persistent cart: a reserved right column, not an overlay over the catalogue. */
body{padding-right:280px}
.header,footer{padding-left:28px;padding-right:28px}main{padding-left:28px;padding-right:28px}
.catalog-layout{grid-template-columns:270px minmax(0,1fr);gap:20px}

.cart-panel{position:fixed;inset:0 0 0 auto;z-index:4;width:280px;background:#fff;border-left:1px solid var(--line);padding:24px 20px;display:flex;flex-direction:column;color:var(--ink);outline:none}
.cart-panel .dialog-head{align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);flex-shrink:0}
.cart-panel .dialog-head h2{font-size:22px;margin:5px 0 0;letter-spacing:-.025em}
.cart-panel .eyebrow{font-size:9px}
.cart-expand{display:none}
.cart-body{display:flex;flex-direction:column;flex:1;min-height:0;padding-top:4px}
#cart-items{flex:1;min-height:80px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9d1dc transparent;padding-right:3px}
.cart-panel .cart-line{grid-template-columns:minmax(0,1fr) auto;gap:8px;font-size:12px;padding:16px 0}
@media(min-width:1101px){
 .cart-panel .cart-line>div{display:contents}
 .cart-panel .cart-line>div>b{grid-column:1;grid-row:1}
 .cart-panel .cart-line>b{grid-column:2;grid-row:1}
 .cart-panel .cart-line>div>p,.cart-panel .cart-line .quantity{grid-column:1/-1}
 .cart-panel .cart-line>div>p{margin:0}
}
.cart-line>div{min-width:0}.cart-line b{font-weight:500;overflow-wrap:anywhere;line-height:1.5}.cart-line>b{white-space:nowrap;font-size:12px}
.cart-panel .quantity{gap:6px;flex-wrap:wrap}.cart-panel .quantity button{flex-shrink:0}.cart-panel .cart-quantity{width:55px}
.cart-panel .cart-total{font-size:20px;margin:16px 0}.cart-panel .cart-subtotal{font-size:12px}
.cart-panel .empty{padding:28px 12px;background:transparent;font-size:12px;line-height:1.7}.cart-panel .empty strong{font-size:17px;margin-bottom:12px}
.cart-panel .field-row{grid-template-columns:1fr;gap:0}
.cart-panel form input,.cart-panel form textarea,.cart-panel form select{padding:10px;font-size:13px}
.cart-panel .status{font-size:12px;line-height:1.5;flex-shrink:0;max-height:110px;overflow:auto;margin-bottom:0}
.checkout-section{flex-shrink:0;max-height:52vh;overflow:auto;scrollbar-width:thin}
.checkout-section:has(#checkout[hidden]){display:none}
.checkout-section summary{display:flex;justify-content:space-between;align-items:center;background:var(--accent);color:white;border-radius:8px;padding:13px 15px;font-size:13px;font-weight:500;cursor:pointer;list-style:none}
.checkout-section summary::-webkit-details-marker{display:none}
.checkout-section summary:focus-visible{outline:2px solid var(--accent-line);outline-offset:-3px}
.checkout-section[open] summary{background:var(--accent-soft);color:var(--accent);margin-bottom:16px}
.checkout-section[open] summary span{transform:rotate(-90deg)}
@media(min-width:1101px) and (max-width:1500px){.hero{padding:32px;grid-template-columns:1.5fr 1fr}.hero-art{transform:scale(.7);transform-origin:center}.hero h1{font-size:38px}.catalog-layout{grid-template-columns:250px minmax(0,1fr);gap:18px}}
@media(max-width:1100px){
 body{padding-right:0;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
 .cart-panel{inset:auto 0 0;width:100%;height:238px;padding:12px 20px calc(10px + env(safe-area-inset-bottom));border-left:0;border-top:1px solid var(--line);box-shadow:0 -6px 24px #18315309}
 .cart-panel .dialog-head{padding-bottom:8px}.cart-panel .dialog-head h2{font-size:18px;margin:0}.cart-panel .eyebrow{display:none}
 .cart-expand{display:block;background:none;border:0;color:var(--accent);font-size:12px;padding:8px}
 .cart-panel.expanded{height:85dvh}
 .cart-panel:not(.expanded){display:none}
 .cart-panel.expanded .dialog-head{white-space:nowrap}
 .mobile-cart:not([hidden]){display:flex;align-items:center;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:4;width:100%;height:calc(56px + env(safe-area-inset-bottom));padding:8px 18px calc(8px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);border-radius:0;background:#fff;color:var(--accent);box-shadow:0 -4px 20px #18315312;white-space:nowrap;text-align:left}
 .mobile-cart svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
 .mobile-cart .cart-bar-action{margin-left:auto;font-size:12px}.mobile-cart #mobile-cart-count{font-size:14px;font-variant-numeric:tabular-nums}
 .cart-panel .cart-line{padding:8px 0}.cart-panel .cart-line p{margin:5px 0}.cart-panel .cart-total{font-size:17px;margin:8px 0}
 .cart-panel:not(.expanded) .cart-subtotal,.cart-panel:not(.expanded) .checkout-section{display:none}
 .cart-panel:not(.expanded) .empty{padding:12px;font-size:12px}.cart-panel:not(.expanded) .empty strong{font-size:15px;margin-bottom:5px}
 .cart-panel:not(.expanded) .status{max-height:38px;margin-top:3px}
 .cart-panel .checkout-section{max-height:42dvh}

 .toast{bottom:255px}
}
@media(max-width:760px){.catalog-layout{display:block}.header,footer{padding-left:18px;padding-right:18px}main{padding-left:18px;padding-right:18px}.cart-panel{padding-left:18px;padding-right:18px}}

.basket-count{display:inline-block;vertical-align:middle;min-width:22px;padding:3px 7px;margin-left:5px;border-radius:20px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:500;text-align:center}
.checkout-dialog{width:560px;padding:28px;max-height:calc(100dvh - 32px);overflow:auto}
.checkout-dialog h2{font-size:25px}.checkout-dialog .dialog-head{margin-bottom:16px}.checkout-dialog .cart-total{margin:16px 0 24px}.checkout-dialog form h3{font-size:16px;margin-top:0}
#checkout-open{flex-shrink:0;margin-top:0}
.header-actions #account{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1100px){.cart-panel:not(.expanded) #checkout-open{padding:9px;font-size:12px}.cart-panel{height:274px}body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.cart-panel.expanded{height:85dvh}.cart-panel:not(.expanded) #cart-items{min-height:62px}.toast{bottom:calc(72px + env(safe-area-inset-bottom))}}
@media(max-width:650px){.checkout-dialog{padding:20px}.checkout-dialog .field-row{grid-template-columns:1fr}.header-actions #account{max-width:140px}}

/* Cart rows: one quiet stepper and an independent remove action. */
.cart-panel .cart-line{padding:17px 0;gap:9px;border-color:#edf0f5}
.cart-panel .cart-line b{font-size:13px;font-weight:500;line-height:1.5}
.cart-panel .cart-line>b{font-weight:650;font-variant-numeric:tabular-nums}
.cart-panel .cart-line .muted{font-size:11px;color:#8b97a8}
.cart-panel .quantity{display:flex;align-items:center;flex-wrap:nowrap;gap:9px;margin-top:2px}
.quantity-stepper{display:inline-flex;align-items:center;flex-shrink:0;background:#f4f6f9;border:1px solid #e8edf3;border-radius:10px;padding:3px;gap:0}
.cart-panel .quantity-stepper button{display:grid;place-items:center;width:29px;height:29px;border:0;border-radius:7px;background:transparent;color:#62748a;transition:background-color .12s,color .12s,box-shadow .12s}
.cart-panel .quantity-stepper button:hover:not(:disabled){background:white;color:var(--accent);box-shadow:0 1px 4px #18315312}
.cart-panel .quantity-stepper button:active:not(:disabled){background:var(--accent-soft)}
.cart-panel .quantity button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cart-panel .quantity-stepper .cart-quantity{width:44px;min-width:0;height:29px;padding:0 2px;border:0;border-radius:5px;background:transparent;color:var(--ink);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}
.cart-quantity::-webkit-inner-spin-button,.cart-quantity::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.quantity-unit{font-size:11px;color:#8b97a8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cart-panel .quantity .cart-remove{display:grid;place-items:center;margin-left:auto;width:33px;height:33px;background:transparent;border:0;border-radius:9px;color:#9aa5b4;transition:background-color .12s,color .12s}
.cart-panel .quantity .cart-remove:hover{background:#fff0f1;color:#c53d48}
.cart-panel .quantity button:focus-visible,.cart-panel .cart-quantity:focus-visible{outline:2px solid var(--accent-line);outline-offset:1px}
@media(max-width:1100px){.cart-panel .cart-line{padding:10px 0}.cart-panel .quantity-stepper button{width:32px;height:32px}.cart-panel .quantity .cart-remove{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.cart-panel .quantity button{transition:none}}

/* Store appearance */
.store-logo{width:auto;max-width:180px;height:56px;object-fit:contain}.store-banner{display:block;width:100%;max-height:480px;object-fit:contain;margin:0 0 24px;border-radius:var(--radius)}
body, input, select, textarea, p, label, .detail-description, .order-line, .account-card{font-family:var(--font-body)!important;font-size:var(--size-body)!important;font-weight:var(--weight-body)!important;}
.brand, #footer-brand{font-family:var(--font-brand)!important;font-size:var(--size-brand)!important;font-weight:var(--weight-brand)!important;}
h1{font-family:var(--font-hero)!important;font-size:var(--size-hero)!important;font-weight:var(--weight-hero)!important;}
h2, h3, .detail-info h2{font-family:var(--font-heading)!important;font-size:var(--size-heading)!important;font-weight:var(--weight-heading)!important;}
.hero p{font-family:var(--font-description)!important;font-size:var(--size-description)!important;font-weight:var(--weight-description)!important;}
.group-name, .group-picker{font-family:var(--font-category)!important;font-size:var(--size-category)!important;font-weight:var(--weight-category)!important;}
.product-name, .cart-line>div>b{font-family:var(--font-product)!important;font-size:var(--size-product)!important;font-weight:var(--weight-product)!important;}
.price, .cart-total, .cart-subtotal, .cart-line>b, .account-card b{font-family:var(--font-price)!important;font-size:var(--size-price)!important;font-weight:var(--weight-price)!important;}
button, .primary, .secondary, .quiet, .hero-link{font-family:var(--font-button)!important;font-size:var(--size-button)!important;font-weight:var(--weight-button)!important;}
.muted, .eyebrow, .stock, .product-meta, .quantity-unit, .topline, .status, footer, .service-strip, .service-strip b, .service-strip span, .hero-stamp, .toast, #page-label, .basket-count{font-family:var(--font-meta)!important;font-size:var(--size-meta)!important;font-weight:var(--weight-meta)!important;}
h1{font-size:min(var(--size-hero),max(24px,5vw))!important;overflow-wrap:anywhere}.product-name,.cart-line>div>b,.brand,.group-name{overflow-wrap:anywhere}.product-name{height:auto;min-height:2.6em}.cart-line>div>b{white-space:normal}
@media(max-width:600px){.store-logo{max-width:100px;height:40px}.brand{min-width:0}.header{gap:12px}.header-actions{flex-shrink:0}}

/* The selected desktop column count has a single source, without breakpoint overrides. */
.products{grid-template-columns:repeat(var(--columns,4),minmax(0,1fr));gap:var(--card-gap,20px);align-items:stretch}
.products>.product{width:100%;max-width:var(--card-width,100%);min-height:var(--card-height,0px);justify-self:center;display:flex;flex-direction:column}
.products .product-image{height:var(--card-image-height,auto);flex-shrink:0;min-height:0}
.products .product-bottom{margin-top:auto;flex-wrap:wrap}
.products .product-name{flex-shrink:0;overflow-wrap:anywhere}
@media(max-width:760px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}

.store-hero-image{display:block;width:100%;height:auto;border-radius:var(--radius);object-fit:contain}

.products .product-name{height:auto;min-height:0}
.product-title-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--product-name-lines,2);line-clamp:var(--product-name-lines,2);overflow:hidden;text-overflow:ellipsis;line-height:1.45;min-height:calc(var(--product-name-lines,2)*1.45em);max-height:calc(var(--product-name-lines,2)*1.45em)}

.discount-price{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;min-width:0}.discount-price del{width:100%;color:var(--muted);font-size:.8em;font-weight:400}.discount-badge{display:inline-block;padding:3px 6px;border-radius:6px;background:#e0f2e7;color:#216a40;font:600 12px system-ui;white-space:nowrap}

.auth-dialog{width:460px;max-height:calc(100dvh - 32px);overflow:auto}.auth-switch{text-align:center;margin:22px 0 0}.auth-switch button{border:0;background:none;color:var(--accent);padding:4px;text-decoration:underline;text-underline-offset:3px}.auth-dialog input[name="code"]{text-align:center;letter-spacing:.3em;font-size:24px!important}.auth-dialog .status:empty{display:none}

/* Belarusian ruble sign: NBRB, 2026; public-domain vector from Wikimedia Commons (File:BYN_symbol.svg). */
.byn-symbol{display:inline-block;width:.72em;height:.78em;vertical-align:-.02em;background:currentColor;-webkit-mask:url("./byn-symbol.svg?v=20260928_byn_sign_01") center/contain no-repeat;mask:url("./byn-symbol.svg?v=20260928_byn_sign_01") center/contain no-repeat;}

/* Glass frame: layered paint only, without per-card backdrop filters. */
.products>.product{
 position:relative;isolation:isolate;padding:12px;
 border:1px solid rgba(255,255,255,.88);border-radius:calc(var(--radius) + 8px);
 background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,255,255,.58) 52%,rgba(235,243,252,.72));
 box-shadow:0 8px 24px rgba(31,58,92,.07),0 1px 4px rgba(31,58,92,.04),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(255,255,255,.6);
 transition:box-shadow .2s ease,border-color .2s ease;
}
.products>.product::before{
 content:"";position:absolute;inset:3px;border:1px solid rgba(255,255,255,.62);
 border-radius:calc(var(--radius) + 4px);pointer-events:none;z-index:-1;
 background:linear-gradient(125deg,rgba(255,255,255,.4),transparent 38%,transparent 72%,rgba(255,255,255,.2));
}
.products .product-image{
 border:1px solid rgba(255,255,255,.78);
 background:linear-gradient(150deg,rgba(246,249,253,.96),rgba(229,237,248,.84));
 box-shadow:inset 0 1px 3px rgba(35,64,99,.04);
}
.products .product-bottom{padding-top:10px;border-top:1px solid rgba(133,158,190,.16)}
.products .stock{border:1px solid rgba(255,255,255,.88);box-shadow:0 2px 8px rgba(31,58,92,.05)}
.products .add{border:1px solid rgba(255,255,255,.85);background:rgba(255,255,255,.72);box-shadow:0 2px 6px rgba(31,58,92,.05)}
@media(hover:hover) and (pointer:fine){
 .products>.product:hover{border-color:var(--accent-line);box-shadow:0 12px 30px rgba(31,58,92,.12),0 2px 6px rgba(31,58,92,.05),inset 0 1px 0 #fff}
}
.products>.product:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 2px var(--accent-soft),0 8px 24px rgba(31,58,92,.09),inset 0 1px 0 #fff}
@media(max-width:760px){.products>.product{padding:8px;border-radius:calc(var(--radius) + 5px)}.products .product-bottom{padding-top:8px}}

/* Нет в наличии: приглушённая (серая) карточка с эффектом неактивности. */
.products>.product.is-out{opacity:.62;filter:grayscale(.86) saturate(.4)}
.products>.product.is-out .add{opacity:.5;cursor:not-allowed}
.products>.product.is-out .price,.products>.product.is-out .cart-total{color:var(--muted)}
@media(hover:hover) and (pointer:fine){
 .products>.product.is-out:hover{transform:none;border-color:rgba(255,255,255,.88);box-shadow:0 8px 24px rgba(31,58,92,.07),0 1px 4px rgba(31,58,92,.04),inset 0 1px 0 #fff}
}

/* Short, quiet transitions; the catalogue remains usable while requests finish. */
@keyframes storefront-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes storefront-dialog{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
@keyframes storefront-spin{to{transform:rotate(360deg)}}
.products>.product{animation:storefront-reveal .3s ease-out both;animation-delay:var(--reveal-delay,0ms)}
.products{transition:opacity .18s ease}
.products[aria-busy="true"]{opacity:.45;pointer-events:none}
#status:not(:empty)::before,.loading-spinner{content:"";display:inline-block;width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:storefront-spin .8s linear infinite;margin-right:10px;vertical-align:middle}
#status.error::before{display:none}
.detail-dialog[open]{animation:storefront-dialog .22s ease-out}
.detail-dialog[open]::backdrop{animation:storefront-reveal .2s ease-out}
.detail-layout{animation:storefront-reveal .22s ease-out}
.detail-loading{min-height:220px;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.mobile-cart{display:none}
@media(max-width:760px){
 .topline,.hero,#store-banner,#store-hero-image,.catalog-heading,.header .brand{display:none!important}
 body{padding-bottom:88px}
 .header{padding:12px 16px;justify-content:flex-end}
 main{padding:0 14px}.catalog{padding-top:8px}
 .catalog-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 .catalog-tools select{max-width:none;width:100%}.search input{min-width:0;font-size:16px!important}
 .products{gap:20px 12px}.products>.product{min-height:0;max-width:100%}
 .products .product-image{height:auto;aspect-ratio:1}
 .product-name{font-size:min(var(--size-product),16px)!important}
 .product-bottom .price{font-size:min(var(--size-price),20px)!important}
 .detail-dialog{padding:18px;max-height:calc(100dvh - 24px);overflow:auto;width:calc(100% - 24px)}
 .detail-layout{grid-template-columns:minmax(0,1fr);gap:16px}.detail-info h2{font-size:22px!important}
 .detail-photo{max-height:36dvh}.detail-description{overflow-wrap:anywhere}
 .cart-panel:not(.expanded){display:none}
 .cart-panel.expanded{height:auto;max-height:85dvh;bottom:0;border-radius:20px 20px 0 0;padding:18px 16px calc(16px + env(safe-area-inset-bottom));animation:storefront-reveal .2s ease-out}
 .mobile-cart:not([hidden]){justify-content:flex-start}
 .mobile-cart svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
 #mobile-cart-count{font-size:14px;font-variant-numeric:tabular-nums}
 .toast{bottom:calc(82px + env(safe-area-inset-bottom));max-width:calc(100% - 32px);width:max-content}
}
/* The external host expands the frame to intrinsic content height and reports its visible slice. */
html.storefront-embedded,html.storefront-embedded body{height:auto;min-height:0}
.storefront-embedded body{display:flow-root}
.storefront-embedded .cart-panel{top:var(--embed-top,0px);bottom:var(--embed-bottom,0px)}
.storefront-embedded .mobile-cart:not([hidden]){bottom:var(--embed-bottom,0px)}
.storefront-embedded dialog[open]{position:fixed;top:calc(var(--embed-top,0px) + 12px);bottom:auto;margin:0 auto;max-height:calc(var(--embed-viewport-height,100dvh) - 24px);overflow:auto}
.storefront-embedded .detail-photo{max-height:calc(var(--embed-viewport-height,100dvh)*.36)}
.storefront-embedded .toast{bottom:calc(var(--embed-bottom,0px) + 72px)}
@media(max-width:1100px){
 .storefront-embedded .cart-panel{top:auto}
 .storefront-embedded .cart-panel.expanded{height:calc(var(--embed-viewport-height,100dvh)*.85);max-height:calc(var(--embed-viewport-height,100dvh)*.85)}
}
@media(prefers-reduced-motion:reduce){
 .products>.product,.detail-dialog[open],.detail-dialog[open]::backdrop,.detail-layout,.cart-panel.expanded,#status::before,.loading-spinner{animation:none!important}
 .products,.products>.product{transition:none}
}
