:root{--orange:#ffb238;--orange-dark:#e59618;--dark:#1c2630;--text:#222b35;--muted:#6d7580;--bg:#f4f5f7;--white:#fff;--line:#e4e7eb;--shadow:0 18px 46px rgba(20,30,40,.12);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 32px));margin:0 auto}.site-header{background:#fff;box-shadow:0 8px 34px rgba(16,24,32,.08);position:sticky;top:0;z-index:50}.header-main{display:grid;grid-template-columns:260px 190px 1fr auto;align-items:center;gap:24px;padding:20px 0}.brand{display:flex;align-items:center;gap:12px}.brand__mark{width:54px;height:54px;border-radius:13px;background:linear-gradient(135deg,#ffcf6b,#ff8f1f);display:grid;place-items:center;color:#fff;font-size:30px;font-weight:900;box-shadow:0 12px 26px rgba(255,178,56,.35);transition:.25s}.brand:hover .brand__mark{transform:rotate(-8deg) scale(1.04)}.brand__text b{display:block;font-size:24px;letter-spacing:-.6px}.brand__text small{display:block;color:var(--muted);font-weight:700;font-size:12px}.header-phone{display:flex;align-items:center;gap:10px;color:var(--dark)}.header-phone span{width:34px;height:34px;border-radius:50%;background:#fff4dc;color:var(--orange-dark);display:grid;place-items:center}.header-info{display:grid;gap:4px;color:var(--muted);font-size:14px}.header-info a{color:var(--dark);font-weight:700}.header-user-actions{display:flex;align-items:center;gap:10px}.icon-link,.cart-pill{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;display:flex;gap:6px;align-items:center;font-weight:800;transition:.2s}.icon-link:hover,.cart-pill:hover{border-color:var(--orange);color:var(--orange-dark);transform:translateY(-2px)}.cart-pill{background:var(--orange);border-color:var(--orange);color:#fff}.main-nav{border-top:1px solid var(--line)}.nav-inner{display:grid;grid-template-columns:auto auto auto auto auto auto 1fr auto;align-items:center;gap:10px;padding:12px 0}.menu-btn,.catalog-btn,.calc-btn,.toolbar-btn,.wish-btn,.compare-btn{border:0;cursor:pointer}.menu-btn,.catalog-btn,.calc-btn{height:42px;border-radius:12px;padding:0 14px;font-weight:900;transition:.2s}.menu-btn{background:#fff;border:1px solid var(--line)}.catalog-btn,.calc-btn{background:var(--orange);color:#fff;box-shadow:0 10px 20px rgba(255,178,56,.25)}.menu-btn:hover,.catalog-btn:hover,.calc-btn:hover{transform:translateY(-2px)}.nav-link{font-size:14px;font-weight:800;color:var(--dark);padding:10px 6px;border-bottom:2px solid transparent}.nav-link:hover,.nav-link.is-active{color:var(--orange-dark);border-color:var(--orange)}.search-form{height:42px;display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.search-form input{border:0;outline:0;padding:0 12px;width:100%;min-width:210px}.search-form button{border:0;background:#fff;color:var(--orange-dark);width:46px;cursor:pointer}.menu-panel,.catalog-panel{display:none;position:absolute;left:50%;transform:translateX(-50%);top:100%;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line);z-index:60}.menu-panel.is-open{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:14px}.menu-panel a{padding:14px 18px;border-radius:12px;font-weight:700}.menu-panel a:hover{background:#fff4df;color:var(--orange-dark)}.catalog-panel.is-open{display:grid;grid-template-columns:390px 1fr;align-items:start;max-height:72vh;overflow:auto}.catalog-panel__list{border-right:1px solid var(--line)}.catalog-row{border-bottom:1px solid var(--line)}.catalog-row>button{width:100%;height:52px;border:0;background:#fff;display:grid;grid-template-columns:34px 1fr 20px;align-items:center;gap:10px;padding:0 16px;cursor:pointer;text-align:left;font-weight:800}.catalog-row>button:hover{background:#fff9ee}.cat-icon{width:28px;height:28px;border-radius:9px;background:#f2f4f6;display:grid;place-items:center;color:var(--orange-dark)}.catalog-row__children{display:none;padding:0 16px 14px 60px}.catalog-row.is-open .catalog-row__children{display:grid;gap:7px}.catalog-row__children a{color:var(--muted);font-size:14px}.catalog-row__children a:hover{color:var(--orange-dark)}.catalog-panel__promo{padding:32px;min-height:220px;background:linear-gradient(135deg,#fff7e9,#fff)}.btn{border:0;border-radius:12px;padding:13px 18px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 12px 24px rgba(255,178,56,.28)}.btn-light{background:#fff;border:1px solid var(--line);color:var(--dark)}.btn-dark{background:var(--dark);color:#fff}.btn-ghost{background:#fff;border:1px solid var(--line);color:var(--text)}.btn-full{width:100%}.hero{background:radial-gradient(circle at 75% 20%,rgba(255,178,56,.22),transparent 32%),linear-gradient(135deg,#ffffff 0%,#eef1f4 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;min-height:520px;align-items:center}.eyebrow{color:var(--orange-dark);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.hero h1,.page-hero h1{font-size:54px;line-height:1.05;margin:14px 0 18px;color:var(--dark);letter-spacing:-1.8px}.hero p,.page-hero p{font-size:18px;color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.hero-visual{min-height:360px;border-radius:32px;background:linear-gradient(145deg,#1d2732,#4b5661);position:relative;box-shadow:var(--shadow);overflow:hidden}.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent),repeating-linear-gradient(45deg,transparent 0 22px,rgba(255,255,255,.045) 22px 24px)}.hero-badge{position:absolute;left:28px;top:28px;background:var(--orange);color:#fff;padding:12px 18px;border-radius:16px;font-weight:900}.material-stack{position:absolute;right:80px;bottom:58px;width:230px;height:150px}.material-stack i{position:absolute;width:220px;height:70px;background:#fff;border:5px solid var(--orange);border-radius:18px;transform:skew(-18deg);box-shadow:0 18px 40px rgba(0,0,0,.2)}.material-stack i:nth-child(1){bottom:0}.material-stack i:nth-child(2){bottom:42px;left:18px}.material-stack i:nth-child(3){bottom:84px;left:36px}.section{padding:70px 0}.section-muted{background:#eceff2}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-head h2{font-size:36px;margin:0;color:var(--dark);letter-spacing:-1px}.section-head p{color:var(--muted)}.service-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:-38px;position:relative;z-index:2}.service-card,.category-card,.product-card,.feature-card,.login-card,.dashboard-card,.summary-card,.cart-card,.support-card,.delivery-card,.wholesale-card,.form-card,.contact-card,.status-card,.tabs-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px rgba(20,30,40,.06)}.service-card{padding:22px;display:grid;gap:4px;transition:.25s}.service-card span{font-size:26px}.service-card b{font-size:18px}.service-card small{color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.category-card{min-height:170px;padding:24px;display:grid;gap:10px;transition:.25s}.category-card:hover,.product-card:hover,.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#ffd792}.category-card>span{font-size:42px;color:var(--orange-dark)}.category-card h3{margin:0}.category-card p{margin:0;color:var(--muted);font-size:14px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.product-card{overflow:hidden;display:flex;flex-direction:column;transition:.25s}.product-card__image{height:185px;background:#f8f9fb;display:grid;place-items:center;padding:28px}.product-card__image img{height:128px;object-fit:contain;transition:.25s}.product-card:hover .product-card__image img{transform:scale(1.06) rotate(-2deg)}.product-card__body{padding:18px;display:grid;gap:11px;flex:1}.product-card__top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.wish-btn{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--orange-dark);font-size:18px;transition:.2s}.wish-btn.is-active,.wish-btn:hover{background:var(--orange);color:#fff}.product-card h3{margin:0;font-size:17px;line-height:1.25}.rating{color:#ffb000;font-weight:900}.rating small{color:var(--muted);font-weight:600;margin-left:5px}.mini-attrs{list-style:none;margin:0;padding:0;display:grid;gap:5px}.mini-attrs li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dotted #cbd0d6;color:var(--muted);font-size:12px}.mini-attrs b{color:var(--text)}.stock{margin:0;color:#59705b;font-size:13px;font-weight:800}.price-row{display:flex;align-items:baseline;gap:10px}.price-row strong{font-size:22px;color:var(--dark)}.price-row del{color:var(--muted)}.product-actions{display:grid;grid-template-columns:1fr 1fr 42px;gap:8px}.compare-btn{border-radius:12px;background:#fff;border:1px solid var(--line)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-card{padding:28px}.feature-card span{color:var(--orange-dark);font-weight:900}.feature-card h3{margin:10px 0}.page-hero{padding:52px 0;background:linear-gradient(135deg,#fff,#eef1f5)}.page-hero.compact{padding:22px 0}.breadcrumbs{font-size:14px!important;color:var(--muted)}.catalog-layout{display:grid;grid-template-columns:280px 1fr;gap:24px}.filters{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;height:max-content;position:sticky;top:158px}.filter-form{display:grid;gap:11px}.filters input,.filters select,.checkout-form input,.checkout-form textarea,.login-card input,.form-card input,.form-card textarea,.inline-form input,.modal input,.modal textarea,.chat-form input{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px;background:#fff;outline:0}.filters input:focus,.filters select:focus,.checkout-form input:focus,.login-card input:focus,.chat-form input:focus{border-color:var(--orange)}.range-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check{display:flex;align-items:center;gap:8px;color:var(--muted)}.filter-link{display:block;padding:9px 11px;border-radius:10px;color:var(--muted);font-weight:700}.filter-link:hover,.filter-link.is-active{background:#fff4df;color:var(--orange-dark)}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px;margin-bottom:20px}.toolbar-btn{width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid var(--line)}.toolbar-btn.is-active{background:var(--orange);color:#fff}.product-grid.is-list{grid-template-columns:1fr}.product-grid.is-list .product-card{display:grid;grid-template-columns:230px 1fr}.empty-card{padding:28px;background:#fff;border:1px dashed #cbd0d6;border-radius:var(--radius);color:var(--muted)}.product-detail{display:grid;grid-template-columns:460px 1fr;gap:30px}.product-gallery{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:60px;display:grid;place-items:center}.product-gallery img{height:260px;object-fit:contain}.product-info{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px}.product-info h1{font-size:40px;line-height:1.1;margin:8px 0}.sku{color:var(--muted);font-size:13px}.price-big{font-size:34px;font-weight:900;margin:24px 0;color:var(--dark)}.price-big del{font-size:18px;color:var(--muted);margin-left:12px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap}.service-note{margin-top:20px;padding:16px;background:#fff8e8;border-radius:12px}.tabs-card{padding:24px}.tabs,.role-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs button,.role-tabs button,.admin-menu button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;cursor:pointer;font-weight:800}.tabs button.is-active,.role-tabs button.is-active,.admin-menu button.is-active{background:var(--orange);color:#fff;border-color:var(--orange)}.tab-panel{display:none}.tab-panel.is-active{display:block;animation:fade .2s ease}.attrs-table{width:100%;border-collapse:collapse}.attrs-table th,.attrs-table td{border-bottom:1px solid var(--line);padding:12px;text-align:left}.attrs-table th{width:240px;color:var(--muted)}.cart-layout,.checkout-grid,.account-grid,.contacts-grid{display:grid;grid-template-columns:1fr 360px;gap:24px}.checkout-grid{grid-template-columns:1fr 380px}.account-grid{grid-template-columns:370px 1fr}.cart-card,.summary-card,.login-card,.dashboard-card,.checkout-form,.contact-card,.status-card{padding:26px;background:#fff;border-radius:var(--radius);border:1px solid var(--line);box-shadow:0 8px 28px rgba(20,30,40,.06)}.cart-list{display:grid;gap:12px}.cart-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.cart-item button{border:0;background:#ffe8e8;color:#a33;border-radius:8px;width:34px;height:34px;cursor:pointer}.summary-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid textarea,.checkout-form textarea{grid-column:1/-1;min-height:105px}.option-grid{display:grid;gap:10px;margin:12px 0 24px}.option-grid label{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.hint,.muted{color:var(--muted)}.demo-logins{margin-top:20px;padding:16px;background:#f8f9fb;border-radius:14px;font-size:13px}.role-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.role-preview-grid div{background:#f8f9fb;border-radius:14px;padding:16px}.role-preview-grid span{display:block;color:var(--muted);font-size:14px;margin-top:6px}.checked-list{list-style:none;padding:0;margin:0}.checked-list li{padding:10px 0;border-bottom:1px solid var(--line)}.checked-list li:before{content:"✓";color:var(--orange-dark);font-weight:900;margin-right:8px}.admin-shell{display:grid;grid-template-columns:230px 1fr;gap:24px}.admin-menu{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px;height:max-content}.admin-content{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.table-card{background:#f7f8fa;border:1px solid var(--line);border-radius:12px;padding:18px;margin:12px 0}.analytics-bars{height:190px;display:flex;align-items:end;gap:18px;background:#f7f8fa;border-radius:16px;padding:18px}.analytics-bars span{width:46px;height:var(--h);background:linear-gradient(var(--orange),#ff8c1f);border-radius:10px 10px 0 0;animation:grow .75s ease}.support-grid,.delivery-grid,.wholesale-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.delivery-grid{grid-template-columns:repeat(4,1fr)}.support-card,.delivery-card,.wholesale-card,.form-card{padding:28px;transition:.25s}.support-card:hover,.delivery-card:hover,.wholesale-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.support-card span,.delivery-card span{font-size:34px}.faq{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{font-weight:900;cursor:pointer}.store-photo-section{padding:70px 0;background:#f0f2f4}.store-photo-grid{display:grid;grid-template-columns:.95fr 1.05fr;background:#fff;box-shadow:var(--shadow);border-radius:var(--radius);overflow:hidden}.newsletter-card{padding:50px}.inline-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.store-photo{min-height:310px;background:linear-gradient(rgba(28,38,48,.25),rgba(28,38,48,.6)),linear-gradient(135deg,#dde2e8,#aeb7c1);display:grid;place-items:center;text-align:center;color:#fff;position:relative;overflow:hidden}.store-photo:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 42px,rgba(255,255,255,.08) 42px 44px)}.store-photo div{position:relative}.store-photo span{display:block;text-transform:uppercase;letter-spacing:.1em}.store-photo strong{font-size:26px}.address-section{padding:56px 0;background:#fff}.center{text-align:center}.footer{background:#fff;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;padding:40px 0}.footer-grid a{display:block;color:var(--muted);margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0;color:var(--muted);font-size:13px}.chat-widget{position:fixed;right:20px;bottom:20px;z-index:100}.chat-toggle{width:64px;height:64px;border:0;border-radius:50%;background:var(--orange);color:#fff;font-size:28px;box-shadow:var(--shadow);cursor:pointer;transition:.2s}.chat-toggle:hover{transform:scale(1.06)}.chat-box{display:none;width:360px;max-width:calc(100vw - 32px);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.22);overflow:hidden}.chat-widget.is-open .chat-box{display:block;animation:pop .18s ease}.chat-widget.is-open .chat-toggle{display:none}.chat-head{background:var(--dark);color:#fff;padding:16px;display:flex;justify-content:space-between;align-items:center}.chat-head button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:50%;width:30px;height:30px;cursor:pointer}.chat-body{padding:16px;max-height:310px;overflow:auto;background:#f7f8fa}.msg{padding:11px 13px;border-radius:14px;margin:8px 0;max-width:88%;font-size:14px}.msg-manager{background:#fff;border:1px solid var(--line)}.msg-client{background:var(--orange);color:#fff;margin-left:auto}.quick-questions{display:grid;gap:8px;margin-top:12px}.quick-questions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;text-align:left;cursor:pointer}.quick-questions button:hover{border-color:var(--orange);color:var(--orange-dark)}.chat-form{display:grid;grid-template-columns:1fr 48px;gap:8px;padding:12px;background:#fff;border-top:1px solid var(--line)}.chat-form button{border:0;border-radius:12px;background:var(--orange);color:#fff;cursor:pointer}.modal{position:fixed;inset:0;background:rgba(17,24,32,.55);display:none;align-items:center;justify-content:center;z-index:120;padding:18px}.modal.is-open{display:flex}.modal__dialog{width:min(460px,100%);background:#fff;border-radius:var(--radius);padding:28px;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.28);animation:pop .18s ease}.modal__close{position:absolute;right:14px;top:12px;width:32px;height:32px;border:0;border-radius:50%;background:#f1f2f4;cursor:pointer}.modal form{display:grid;gap:12px}.modal textarea{min-height:100px}.toast,.flash{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120%);background:var(--dark);color:#fff;padding:13px 18px;border-radius:999px;box-shadow:var(--shadow);z-index:140;transition:.25s}.toast.is-open,.flash{transform:translate(-50%,0)}.alert{background:#fff0e6;border:1px solid #ffc692;border-radius:14px;padding:16px;margin:16px 0}pre{background:#101820;color:#fff;padding:16px;border-radius:14px;overflow:auto}.map-card{min-height:320px;background:radial-gradient(circle at 35% 40%,#ffd385,transparent 20%),linear-gradient(135deg,#dfe5eb,#b5bec8);border-radius:var(--radius);display:grid;place-items:center;text-align:center;box-shadow:var(--shadow)}.map-card span{display:block;color:var(--orange-dark);font-weight:900}.map-card b{font-size:28px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes pop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes grow{from{height:0}to{height:var(--h)}}
@media(max-width:1100px){.header-main{grid-template-columns:1fr 1fr}.header-user-actions{grid-column:1/-1}.nav-inner{grid-template-columns:auto auto 1fr auto}.nav-link{display:none}.search-form{grid-column:1/-1}.hero-grid,.store-photo-grid,.product-detail,.cart-layout,.checkout-grid,.account-grid,.contacts-grid{grid-template-columns:1fr}.product-grid,.category-grid{grid-template-columns:repeat(2,1fr)}.catalog-layout,.admin-shell{grid-template-columns:1fr}.filters{position:static}.service-strip,.feature-grid,.support-grid,.delivery-grid,.wholesale-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.inline-form{grid-template-columns:1fr}.catalog-panel.is-open{grid-template-columns:1fr}.catalog-panel__list{border-right:0}.catalog-panel__promo{display:none}}
@media(max-width:660px){.container{width:min(100% - 22px,1180px)}.header-main{grid-template-columns:1fr}.header-info,.header-user-actions{display:none}.nav-inner{grid-template-columns:1fr 1fr}.search-form,.calc-btn{grid-column:1/-1}.hero h1,.page-hero h1{font-size:34px}.hero-grid{min-height:auto;padding:42px 0}.hero-visual{min-height:240px}.service-strip{margin-top:0}.product-grid,.category-grid,.service-strip,.feature-grid,.support-grid,.delivery-grid,.wholesale-grid,.footer-grid,.role-preview-grid,.form-grid{grid-template-columns:1fr}.product-grid.is-list .product-card{grid-template-columns:1fr}.menu-panel.is-open{grid-template-columns:1fr}.product-actions{grid-template-columns:1fr}.footer-bottom{display:block}.chat-box{width:calc(100vw - 24px)}}

/* === RungoCraft v0.2 corrections === */
:root{--orange:#ff8a00;--orange-dark:#e87500;--blue:#004574;--blue-dark:#00385f;--dark:#102235;}
.brand-logo img,.footer-brand img{width:64px;height:64px;object-fit:contain;flex:0 0 auto}.brand-logo .brand__text b,.footer-brand .brand__text b{color:var(--blue)}.brand__mark{display:none}.header-phone,.header-phone b{white-space:nowrap}.header-main{grid-template-columns:310px 230px 1fr auto}.employee-link{border-color:rgba(0,69,116,.18);color:var(--blue)}
.hero-clean{background:radial-gradient(circle at 76% 20%,rgba(255,138,0,.14),transparent 28%),linear-gradient(135deg,#fff,#eef4f8)}.hero-logo-card{min-height:440px;border-radius:32px;background:#fff;box-shadow:0 28px 90px rgba(0,69,116,.11);display:grid;place-items:center;padding:34px}.hero-logo-card img{width:min(430px,90%);height:auto;display:block}.hero-clean .hero-grid{grid-template-columns:1fr .92fr}.service-card{border:0;text-align:left;cursor:pointer;text-decoration:none;color:var(--text)}.service-card:hover{transform:translateY(-5px);border-color:rgba(255,138,0,.45)}.catalog-home-section{background:#fff}.alphabet-panel{display:flex;gap:8px;flex-wrap:wrap;background:#f4f7fa;border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:24px}.alphabet-panel a{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid var(--line);font-weight:900;color:var(--blue);transition:.2s}.alphabet-panel a:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-2px)}.category-grid-hover .category-card{min-height:185px;align-items:flex-start;text-align:left;overflow:hidden}.category-grid-hover .category-card span{font-size:40px}.category-grid-hover .category-card ul{list-style:none;padding:0;margin:10px 0 0;max-height:0;opacity:0;transition:.25s}.category-grid-hover .category-card:hover ul{max-height:160px;opacity:1}.category-grid-hover .category-card li{font-size:13px;color:var(--muted);padding:4px 0;border-top:1px solid var(--line)}.wide-card{grid-column:1/-1}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 8px 28px rgba(20,30,40,.06)}.review-stars{color:var(--orange);letter-spacing:2px;margin-bottom:12px}.account-grid-clean{grid-template-columns:minmax(360px,560px) 1fr}.account-grid-clean .login-card{max-width:560px}.auth-tabs{display:flex;gap:10px;margin-bottom:22px}.auth-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 18px;font-weight:900;cursor:pointer}.auth-tabs button.is-active{background:var(--orange);border-color:var(--orange);color:#fff}.store-photo-only{padding:56px 0;background:#f0f2f4}.store-image-card{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);background:#fff}.store-image-card img{display:block;width:100%;height:auto;min-height:260px;object-fit:cover}.footer-brand{align-items:center}.footer-brand img{width:82px;height:82px}.footer-grid-public{grid-template-columns:1.35fr 1fr 1fr 1.15fr}.footer-grid span{display:block;color:var(--muted);margin:8px 0}.footer-socials{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.footer-socials a{display:inline-flex;align-items:center;justify-content:center;min-width:108px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;font-weight:900;color:var(--blue);background:#fff;transition:.2s}.footer-socials a:hover{transform:translateY(-2px);border-color:var(--orange);color:var(--orange-dark)}.toast{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,140%);padding:0}.toast.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);padding:13px 18px}.flash{transform:translate(-50%,0)}
@media(max-width:1100px){.header-main{grid-template-columns:1fr 1fr}.hero-clean .hero-grid{grid-template-columns:1fr}.hero-logo-card{min-height:300px}.reviews-grid{grid-template-columns:1fr 1fr}.footer-grid-public{grid-template-columns:1fr 1fr}.account-grid-clean{grid-template-columns:1fr}}
@media(max-width:660px){.brand-logo img{width:58px;height:58px}.header-phone{display:flex}.reviews-grid,.footer-grid-public{grid-template-columns:1fr}.hero-logo-card{min-height:240px}.alphabet-panel a{width:34px;height:34px}}

/* ========================================================================== */
/* RungoCraft final UI corrections - header, footer, toast, newsletter photo  */
/* Put img_go.png into: assets/img/img_go.png                              */
/* ========================================================================== */

:root {
    --orange: #ff8a00;
    --orange-dark: #e87500;
    --blue: #004574;
    --blue-dark: #00385f;
    --dark: #102235;
    --text: #1d2937;
    --muted: #667085;
    --bg: #f3f6f8;
    --white: #ffffff;
    --line: #e3e8ef;
    --shadow: 0 18px 46px rgba(0, 69, 116, .13);
    --radius: 18px;
}

body {
    background: var(--bg);
    color: var(--text);
}

.site-header {
    background: #fff;
    border-bottom: 1px solid rgba(0, 69, 116, .08);
    box-shadow: 0 8px 34px rgba(0, 69, 116, .08);
}

.header-main {
    grid-template-columns: 320px 245px 1fr auto;
    gap: 22px;
}

.brand-logo img,
.footer-brand img {
    width: 102px;
    height: 102px;
    object-fit: contain;
    flex: 0 0 auto;
}

.footer-brand img {
    width: 102px;
    height: 102px;
}

.brand-logo .brand__text b,
.footer-brand .brand__text b {
    color: var(--blue);
}

.brand-logo .brand__text small,
.footer-brand .brand__text small {
    color: var(--muted);
}

.brand__mark {
    display: none !important;
}

.header-phone,
.header-phone b {
    white-space: nowrap;
}

.header-phone span {
    background: rgba(255, 138, 0, .12);
    color: var(--orange-dark);
}

.header-info a {
    color: var(--blue);
}

.icon-link:hover,
.cart-pill:hover {
    border-color: var(--orange);
    color: var(--orange-dark);
}

.cart-pill {
    background: linear-gradient(135deg, var(--orange), #ffad32);
    border-color: var(--orange);
    color: #fff;
}

.catalog-btn,
.calc-btn,
.btn-primary {
    background: linear-gradient(135deg, var(--orange), #ffad32);
    color: #fff;
}

.nav-link:hover,
.nav-link.is-active {
    color: var(--orange-dark);
    border-color: var(--orange);
}

.hero h1,
.page-hero h1,
.section-head h2 {
    color: var(--blue-dark);
}

/* Hide technical/empty toast until JS opens it */
.toast {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate(-50%, 140%) !important;
    padding: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
}

.toast.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) !important;
    padding: 13px 18px !important;
}

.flash {
    transform: translate(-50%, 0);
}

/* Newsletter + image block like reference: left form, right image */
.store-photo-section {
    padding: 48px 0 34px !important;
    background: #f0f2f4 !important;
}

.store-photo-grid {
    display: grid !important;
    grid-template-columns: 340px 1fr !important;
    align-items: stretch !important;
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08) !important;
}

.newsletter-card {
    min-height: 360px !important;
    padding: 54px 42px !important;
    background: #fff !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.newsletter-card h2 {
    margin: 0 0 12px !important;
    color: var(--blue-dark) !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    letter-spacing: -.4px !important;
}

.newsletter-card p {
    margin: 0 0 26px !important;
    color: var(--muted) !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.newsletter-card .inline-form,
.newsletter-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.newsletter-card input,
.newsletter-form input {
    width: 100% !important;
    height: 46px !important;
    border: 1px solid #d9dfe7 !important;
    border-radius: 0 !important;
    padding: 0 14px !important;
    background: #fff !important;
    color: #17212f !important;
    font-size: 15px !important;
    outline: none !important;
    transition: border-color .2s ease, box-shadow .2s ease !important;
}

.newsletter-card input:focus,
.newsletter-form input:focus {
    border-color: var(--orange) !important;
    box-shadow: 0 0 0 3px rgba(255, 138, 0, .14) !important;
}

.newsletter-card .btn,
.newsletter-form .btn {
    width: auto !important;
    min-width: 170px !important;
    height: 48px !important;
    margin-top: 6px !important;
    align-self: flex-start !important;
    border-radius: 0 !important;
    font-weight: 800 !important;
    font-size: 15px !important;
}

.store-photo-image,
.store-image-card,
.store-photo {
    position: relative !important;
    min-height: 360px !important;
    background: #e9ecef url('/assets/img/img_go.png') center center / cover no-repeat !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    color: transparent !important;
}

.store-photo-image img,
.store-image-card img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 360px !important;
    object-fit: cover !important;
}

.store-photo::before {
    display: none !important;
    content: none !important;
}

.store-photo div,
.store-photo span,
.store-photo strong {
    display: none !important;
}

.store-photo-only {
    padding: 48px 0 34px !important;
    background: #f0f2f4 !important;
}

/* Footer */
.footer {
    background: #fff;
    border-top: 1px solid var(--line);
}

.footer-grid-public,
.footer-grid {
    grid-template-columns: 1.35fr 1fr 1fr 1.15fr;
}

.footer-grid span {
    display: block;
    color: var(--muted);
    margin: 8px 0;
}

.footer-socials {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.footer-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 108px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 999px;
    font-weight: 900;
    color: var(--blue);
    background: #fff;
    transition: .2s;
}

.footer-socials a:hover {
    transform: translateY(-2px);
    border-color: var(--orange);
    color: var(--orange-dark);
}

.footer a[href*="maps"],
.footer a[href*="google.com/maps"] {
    color: var(--blue);
    font-weight: 800;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.employee-link {
    border-color: rgba(0, 69, 116, .18);
    color: var(--blue);
}

.catalog-empty {
    padding: 22px;
    color: var(--muted);
    font-weight: 700;
}

@media (max-width: 1100px) {
    .header-main {
        grid-template-columns: 1fr 1fr;
    }

    .brand-logo img {
        width: 58px;
        height: 58px;
    }

    .store-photo-grid {
        grid-template-columns: 1fr !important;
    }

    .newsletter-card {
        min-height: auto !important;
        padding: 36px 24px !important;
    }

    .store-photo-image,
    .store-image-card,
    .store-photo,
    .store-photo-image img,
    .store-image-card img {
        min-height: 260px !important;
    }

    .footer-grid-public,
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 660px) {
    .brand-logo img {
        width: 52px;
        height: 52px;
    }

    .header-phone {
        display: flex;
    }

    .store-photo-section {
        padding: 32px 0 18px !important;
    }

    .newsletter-card {
        padding: 28px 18px !important;
    }

    .newsletter-card h2 {
        font-size: 24px !important;
    }

    .newsletter-card .btn,
    .newsletter-form .btn {
        width: 100% !important;
        align-self: stretch !important;
    }

    .footer-grid-public,
    .footer-grid {
        grid-template-columns: 1fr;
    }
}

/* Catalog directory and popular category section */
.popular-category-section {
  background: #fff;
}

.popular-category-grid {
  grid-template-columns: repeat(5, 1fr);
}

.popular-category-grid .category-card {
  min-height: 170px;
}

.catalog-directory {
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 18px 42px rgba(16, 34, 53, .10);
  overflow: hidden;
}

.catalog-directory h3 {
  margin: 0;
  padding: 18px 24px 8px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--blue-dark, #00385f);
  position: relative;
}

.catalog-directory h3::after {
  content: "";
  display: block;
  width: 220px;
  height: 2px;
  background: var(--orange, #ff8a00);
  margin: 8px auto 0;
}

.catalog-directory-tabs {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  background: #e7e7e7;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.catalog-directory-tabs button {
  border: 0;
  background: transparent;
  min-height: 44px;
  padding: 8px 10px;
  cursor: pointer;
  font-weight: 800;
  color: #102235;
  transition: .18s ease;
}

.catalog-directory-tabs button:hover,
.catalog-directory-tabs button.is-active {
  background: #66737e;
  color: #fff;
}

.catalog-directory-panel {
  display: none;
  padding: 22px 28px 28px;
  column-count: 5;
  column-gap: 34px;
  min-height: 120px;
}

.catalog-directory-panel.is-active {
  display: block;
  animation: fade .18s ease;
}

.catalog-directory-panel a {
  display: block;
  break-inside: avoid;
  padding: 4px 0;
  font-size: 14px;
  color: #102235;
  line-height: 1.25;
}

.catalog-directory-panel a:hover {
  color: var(--orange-dark, #e87500);
  text-decoration: underline;
}

@media (max-width: 1100px) {
  .popular-category-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .catalog-directory-tabs {
    grid-template-columns: repeat(3, 1fr);
  }

  .catalog-directory-panel {
    column-count: 3;
  }
}

@media (max-width: 660px) {
  .popular-category-grid {
    grid-template-columns: 1fr;
  }

  .catalog-directory-tabs {
    grid-template-columns: repeat(2, 1fr);
  }

  .catalog-directory-panel {
    column-count: 1;
    padding: 18px;
  }
}

/* v21: header position, chat height, real newsletter/reviews/catalog filters */
.header-main{grid-template-columns:260px minmax(360px,1fr) auto;gap:20px}.header-contact-stack{display:grid;gap:8px;align-items:center}.header-contact-stack .header-phone{width:max-content}.header-info-inline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px;margin-left:44px}.header-info-inline span,.header-info-inline a{white-space:nowrap}.header-user-actions{justify-content:flex-end}.header-user-actions .cart-pill{order:2}.header-user-actions .icon-link:nth-of-type(1){order:1}.header-user-actions .icon-link:nth-of-type(2){order:3}.header-user-actions .icon-link:nth-of-type(3){order:4}.employee-link{order:0!important}.chat-widget{bottom:112px;right:22px}.chat-toggle{border:4px solid #fff}.attribute-filter-group{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.attribute-filter-group h4{margin:0}.filter-hint{font-size:12px;color:var(--muted);margin:0}.filter-actions-row{display:grid;grid-template-columns:1fr;gap:8px}.product-reviews-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.big-rating{font-size:20px}.big-rating small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.review-form,.order-review-form{display:grid;gap:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;margin:16px 0}.review-form label,.order-review-form label{display:grid;gap:7px;font-weight:800}.review-form textarea,.order-review-form textarea{width:100%;min-height:90px}.product-reviews-grid{grid-template-columns:repeat(2,1fr);margin-top:18px}.review-card small{display:block;color:var(--muted);margin-top:8px}.accounting-export-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 8px 28px rgba(20,30,40,.06);margin-top:18px}.admin-order-status-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px;align-items:center}.admin-order-status-form input{grid-column:1/-1}.telegram-campaign-box{border-left:5px solid #2aabee}@media(max-width:1100px){.header-main{grid-template-columns:1fr}.header-info-inline{margin-left:0}.header-user-actions{justify-content:flex-start;flex-wrap:wrap}.chat-widget{bottom:92px}.product-reviews-grid{grid-template-columns:1fr}}@media(max-width:660px){.header-info-inline{display:grid;gap:4px}.chat-widget{right:14px;bottom:88px}.chat-toggle{width:58px;height:58px}.header-user-actions{display:flex}.header-user-actions .icon-link span{display:none}.header-user-actions .cart-pill{min-width:96px;justify-content:center}}

/* v23: auth UX, catalog cards, Google map, order details, fixed chat position */
.header-main {
    grid-template-columns: 300px minmax(430px, 1fr) auto !important;
    align-items: center !important;
}
.header-contact-stack {
    min-width: 420px !important;
}
.header-info-inline {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
    margin-left: 44px !important;
    white-space: nowrap !important;
}
.header-info-inline span,
.header-info-inline a {
    display: inline-flex !important;
    white-space: nowrap !important;
    line-height: 1.25 !important;
}
.header-user-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}
.header-user-actions .cart-pill {
    order: 2 !important;
}
.header-user-actions .icon-link:nth-of-type(1) {
    order: 1 !important;
}
.header-user-actions .icon-link:nth-of-type(2) {
    order: 3 !important;
}
.header-user-actions .icon-link:nth-of-type(3) {
    order: 4 !important;
}

.product-grid {
    grid-template-columns: repeat(auto-fill, minmax(285px, 1fr)) !important;
    align-items: stretch !important;
}
.product-card {
    min-width: 0 !important;
    min-height: 530px !important;
}
.product-card__image-wrap {
    position: relative !important;
    background: #f8f9fb !important;
}
.product-card__image {
    height: 210px !important;
    padding: 28px !important;
}
.product-card__image img {
    max-height: 148px !important;
    width: 100% !important;
    object-fit: contain !important;
}
.product-card__wish-form {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 4 !important;
}
.wish-btn--overlay {
    width: 42px !important;
    height: 42px !important;
    font-size: 22px !important;
    background: #fff !important;
    border: 1px solid rgba(0, 69, 116, .12) !important;
    box-shadow: 0 10px 24px rgba(0, 69, 116, .12) !important;
}
.wish-btn--overlay:hover {
    background: var(--orange) !important;
    color: #fff !important;
    transform: translateY(-2px) scale(1.04) !important;
}
.product-actions {
    grid-template-columns: minmax(112px, 1fr) 88px 56px !important;
    gap: 8px !important;
    align-items: stretch !important;
}
.product-actions .btn,
.product-actions .compare-btn {
    min-height: 52px !important;
}
.compare-form,
.compare-btn {
    width: 100% !important;
    height: 100% !important;
}
.compare-btn {
    min-width: 54px !important;
    border-radius: 14px !important;
    font-size: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
}
.rating--empty {
    color: #aab3bf !important;
}
.rating--empty small {
    color: #7b8794 !important;
}

.map-card-google {
    position: relative !important;
    overflow: hidden !important;
    min-height: 360px !important;
    padding: 0 !important;
    background: linear-gradient(135deg, #dfe5eb, #b5bec8) !important;
    display: block !important;
}
.map-card-google iframe {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    filter: saturate(.9) contrast(.95) opacity(.88) !important;
}
.map-route-card {
    position: absolute !important;
    left: 22px !important;
    right: 22px !important;
    bottom: 22px !important;
    padding: 18px !important;
    border-radius: 18px !important;
    background: rgba(16, 34, 53, .88) !important;
    color: #fff !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, .22) !important;
    display: grid !important;
    gap: 8px !important;
    text-align: left !important;
}
.map-route-card span {
    color: var(--orange) !important;
    font-weight: 900 !important;
}
.map-route-card b {
    color: #fff !important;
    font-size: 24px !important;
}
.map-route-card .btn {
    width: max-content !important;
    max-width: 100% !important;
}

.chat-widget {
    bottom: 170px !important;
    right: 26px !important;
    z-index: 160 !important;
}
.chat-toggle {
    border: 1px solid #fff !important;
    box-shadow: 0px 0px 42px rgba(0, 69, 116, .24) !important;
}

.order-card header {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(130px, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
}
.order-card header > div,
.order-details-grid > div,
.success-summary-grid > div {
    background: #f7fafc !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    padding: 12px 14px !important;
    min-width: 0 !important;
}
.order-card header span,
.order-details-grid span,
.success-summary-grid span {
    display: block !important;
    color: var(--muted) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 4px !important;
}
.order-card header b,
.order-card header h3,
.order-details-grid b,
.success-summary-grid b {
    display: block !important;
    color: var(--dark) !important;
    word-break: break-word !important;
    line-height: 1.25 !important;
}
.order-details-grid,
.success-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 16px 0 !important;
    text-align: left !important;
}
.order-details-grid .span-2,
.success-summary-grid .span-2 {
    grid-column: span 2 !important;
}
.order-items-title {
    margin: 18px 0 10px !important;
    color: var(--blue-dark) !important;
    font-weight: 900 !important;
    font-size: 16px !important;
}
.order-items-table > div,
.order-success-items--full > div {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(90px, auto) minmax(90px, auto) !important;
    align-items: center !important;
    gap: 14px !important;
}
.order-items-table small,
.order-success-items small {
    display: block !important;
    color: var(--muted) !important;
    margin-top: 4px !important;
}
.success-card {
    max-width: 860px !important;
    text-align: center !important;
}
.order-delivery-summary,
.order-payment-summary {
    text-align: left !important;
}

@media (max-width: 1180px) {
    .header-main {
        grid-template-columns: 1fr !important;
    }
    .header-contact-stack {
        min-width: 0 !important;
    }
    .header-info-inline {
        margin-left: 0 !important;
        flex-wrap: wrap !important;
    }
    .order-card header,
    .order-details-grid,
    .success-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 660px) {
    .chat-widget {
        right: 14px !important;
        bottom: 118px !important;
    }
    .product-grid {
        grid-template-columns: 1fr !important;
    }
    .product-actions,
    .order-card header,
    .order-details-grid,
    .success-summary-grid,
    .order-items-table > div,
    .order-success-items--full > div {
        grid-template-columns: 1fr !important;
    }
    .order-details-grid .span-2,
    .success-summary-grid .span-2 {
        grid-column: auto !important;
    }
}

/* v24: catalog list view, staff login, readable status blocks */
.product-grid.is-list {
    grid-template-columns: 1fr !important;
}
.product-grid.is-list .product-card {
    display: grid !important;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
    min-height: 280px !important;
    width: 100% !important;
}
.product-grid.is-list .product-card__image-wrap {
    min-height: 100% !important;
}
.product-grid.is-list .product-card__image {
    height: 100% !important;
    min-height: 280px !important;
}
.product-grid.is-list .product-card__body {
    min-width: 0 !important;
    padding: 24px !important;
}
.product-grid.is-list .product-card h3 {
    font-size: 22px !important;
    max-width: 100% !important;
}
.product-grid.is-list .product-actions {
    grid-template-columns: minmax(130px, 180px) 110px 64px !important;
    justify-content: start !important;
    max-width: 380px !important;
}
.product-grid:not(.is-list) .product-card {
    min-height: 540px !important;
}
.product-grid:not(.is-list) .product-actions {
    overflow: visible !important;
}
.product-grid:not(.is-list) .product-actions .compare-btn {
    min-width: 52px !important;
}
.staff-login-body {
    min-height: 100vh;
    background: radial-gradient(circle at 20% 20%, rgba(255,138,0,.16), transparent 32%), linear-gradient(135deg, #eef4f8, #ffffff);
}
.staff-login-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 28px;
}
.staff-login-card {
    width: min(560px, 100%);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 28px;
    box-shadow: 0 28px 90px rgba(0,69,116,.16);
    padding: 34px;
}
.staff-login-logo {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
}
.staff-login-logo img {
    width: 70px;
    height: 70px;
    object-fit: contain;
}
.staff-login-logo span {
    display: grid;
    gap: 3px;
}
.staff-login-logo b {
    font-size: 24px;
    color: var(--blue, #004574);
}
.staff-login-logo small {
    color: var(--muted);
    font-weight: 800;
}
.staff-login-alert {
    padding: 14px 16px;
    border-radius: 16px;
    margin: 16px 0;
    background: #fff4df;
    border: 1px solid rgba(255,138,0,.35);
    color: #7a4100;
    font-weight: 800;
}
.staff-login-back {
    display: inline-flex;
    margin-top: 18px;
    color: var(--blue, #004574);
    font-weight: 900;
}
@media(max-width: 760px) {
    .product-grid.is-list .product-card {
        grid-template-columns: 1fr !important;
    }
    .product-grid.is-list .product-card__image {
        min-height: 220px !important;
    }
    .product-grid.is-list .product-actions {
        grid-template-columns: 1fr !important;
        max-width: none !important;
    }
}

/* v29 mobile responsive pass */
@media (max-width: 1024px) {
  .container { max-width: 100%; padding-left: 16px; padding-right: 16px; }
  .header-top .container, .header-main .container { flex-wrap: wrap; gap: 12px; }
  .header-actions { flex-wrap: wrap; justify-content: flex-start; }
  .main-nav .container { overflow-x: auto; white-space: nowrap; gap: 8px; }
  .search-form { min-width: 220px; flex: 1; }
  .catalog-layout, .checkout-grid, .cart-layout, .product-layout, .account-layout { grid-template-columns: 1fr !important; }
  .filters-panel { position: static !important; }
  .products-grid, .popular-grid, .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 680px) {
  body { font-size: 15px; }
  .brand img { width: 54px; height: auto; }
  .brand__text b { font-size: 20px; }
  .products-grid, .popular-grid, .category-grid, .footer-grid, .store-photo-grid { grid-template-columns: 1fr !important; }
  .hero, .section { padding: 28px 0; }
  .page-hero h1, .section-head h2 { font-size: 28px; line-height: 1.15; }
  .btn { min-height: 42px; }
  .chat-widget { right: 14px; bottom: 92px; }
  .chat-box { width: calc(100vw - 28px); right: 0; }
}

/* v33: catalog subcategories, locked forms and larger contact map */
.filter-link-main {
    font-weight: 900;
}
.filter-subcategories {
    display: grid;
    gap: 6px;
    margin: -4px 0 10px 10px;
    padding-left: 10px;
    border-left: 2px solid #e8edf2;
}
.filter-link-child {
    font-size: 13px !important;
    padding: 8px 10px !important;
    color: var(--muted) !important;
}
.filter-link-child.is-active,
.filter-link-child:hover {
    color: var(--orange-dark) !important;
    background: #fff7e8 !important;
}
.locked-card {
    background: #fff8ea;
    border: 1px solid rgba(255, 178, 56, .45);
    border-radius: 18px;
    padding: 22px;
    display: grid;
    gap: 12px;
}
.locked-card h3 { margin: 0; color: var(--dark); }
.locked-card p { margin: 0; color: var(--muted); }
.contacts-grid {
    grid-template-columns: minmax(310px, .72fr) minmax(520px, 1.28fr) !important;
    align-items: stretch;
}
.map-card-google {
    min-height: 540px !important;
    padding: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    display: block !important;
    text-align: left !important;
}
.map-card-google iframe {
    width: 100% !important;
    height: 100% !important;
    min-height: 540px !important;
    border: 0 !important;
    display: block !important;
}
.map-route-card {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    background: rgba(255,255,255,.94);
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 16px 45px rgba(0,0,0,.14);
    padding: 16px;
    display: grid;
    gap: 8px;
    max-width: 420px;
}
.map-route-card span {
    color: var(--orange-dark);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 12px;
}
.map-route-card b {
    color: var(--dark);
    font-size: 22px;
}
@media (max-width: 1100px) {
    .contacts-grid { grid-template-columns: 1fr !important; }
    .map-card-google, .map-card-google iframe { min-height: 420px !important; }
}
@media (max-width: 680px) {
    .map-card-google, .map-card-google iframe { min-height: 360px !important; }
    .map-route-card { position: static; margin: 12px; max-width: none; }
}

.review-context {
    display: inline-block;
    margin: 0 0 10px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #fff4e5;
    color: #d96b00;
    font-weight: 800;
    font-size: 12px;
}

/* v38 media/gallery/search UX fixes */
.account-content.reveal,
.cart-card.reveal,
.summary-card.reveal {
    opacity: 1;
    transform: none;
}
.product-card__image,
.account-product-image,
.cart-item__image {
    overflow: hidden;
}
.product-card__image img,
.account-product-image img,
.cart-item__image img {
    width: 100%;
    height: 100%;
    max-width: 190px;
    max-height: 150px;
    margin: 0 auto;
    object-fit: contain;
}
.product-card__image img[src*="/uploads/"],
.product-gallery img[src*="/uploads/"],
.account-product-image img[src*="/uploads/"] {
    background: #fff;
}
.product-gallery {
    display: grid;
    gap: 14px;
    padding: 26px;
    align-content: start;
}
.product-gallery__main {
    position: relative;
    min-height: 330px;
    display: grid;
    place-items: center;
    background: #f7f9fb;
    border-radius: 18px;
}
.product-gallery__main img {
    width: 100%;
    max-width: 360px;
    height: 300px;
    object-fit: contain;
}
.product-gallery__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #fff;
    color: var(--dark);
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(16,24,32,.08);
}
.product-gallery__nav--prev { left: 12px; }
.product-gallery__nav--next { right: 12px; }
.product-gallery__thumbs {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 4px;
}
.product-gallery__thumbs button {
    width: 74px;
    height: 62px;
    flex: 0 0 auto;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    padding: 6px;
    cursor: pointer;
}
.product-gallery__thumbs button.is-active {
    border-color: var(--orange);
    box-shadow: 0 0 0 3px rgba(255,138,0,.13);
}
.product-gallery__thumbs img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.wish-btn.is-active,
.compare-btn.is-active,
.product-card.is-in-wishlist .wish-btn,
.product-card.is-in-comparison .compare-btn {
    background: var(--orange);
    border-color: var(--orange);
    color: #fff;
}
@media (max-width: 860px) {
    .product-gallery__main { min-height: 260px; }
    .product-gallery__main img { height: 230px; }
}
.btn.is-active,
.btn-ghost.is-active {
    background: var(--orange);
    border-color: var(--orange);
    color: #fff;
}

/* v39 catalog image and favorite state refinements */
.product-card__image-wrap {
    background: #fff !important;
}
.product-card__image {
    height: 235px !important;
    width: 100% !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
}
.product-card__image img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    padding: 10px !important;
    background: #fff !important;
}
.product-gallery,
.product-gallery__main {
    background: #fff !important;
    border-color: var(--line, #e4e7eb) !important;
}
.product-gallery__main img {
    width: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    background: #fff !important;
}
.wish-btn.is-active,
.product-card.is-in-wishlist .wish-btn,
.product-card.is-in-wishlist .wish-btn--overlay {
    background: #ffc107 !important;
    border-color: #ffc107 !important;
    color: #fff !important;
}
.product-card.is-in-wishlist {
    border-color: rgba(255, 193, 7, .75) !important;
}


/* v40 product photo hover zoom and comparison limit removal UX */
.product-gallery__main[data-zoom-area] {
    overflow: hidden !important;
    cursor: zoom-in;
}
.product-gallery__main[data-zoom-area] img {
    transform-origin: var(--zoom-x, 50%) var(--zoom-y, 50%);
    transition: transform .18s ease, transform-origin .05s linear;
    will-change: transform;
}
.product-gallery__main[data-zoom-area]:hover img {
    transform: scale(1.75);
}
.product-gallery__main[data-zoom-area]::after {
    content: "Наведіть, щоб збільшити";
    position: absolute;
    left: 14px;
    bottom: 14px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(22, 33, 44, .72);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
}
.product-gallery__main[data-zoom-area]:hover::after {
    opacity: 1;
}
@media (hover: none) {
    .product-gallery__main[data-zoom-area]:hover img {
        transform: none;
    }
    .product-gallery__main[data-zoom-area]::after {
        display: none;
    }
}

/* v42 product status display fix */
.stock--in_stock { color: #59705b !important; }
.stock--low_stock { color: #a66a00 !important; }
.stock--out_of_stock,
.stock--expected,
.stock--archived { color: #a33 !important; }
.stock--preorder { color: #6b5bb7 !important; }
.product-actions--unavailable {
    grid-template-columns: 1fr auto 42px !important;
    align-items: center;
}
.product-unavailable-note {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 12px;
    background: #fff4f0;
    color: #a33;
    font-weight: 900;
    font-size: 12px;
    text-align: center;
}
.stock-warning {
    display: grid;
    gap: 4px;
    padding: 12px 14px;
    border: 1px solid #ffd1c8;
    border-radius: 14px;
    background: #fff6f3;
    color: #a33;
}
.stock-warning span {
    color: var(--muted);
    font-size: 13px;
}
@media (max-width: 660px) {
    .product-actions--unavailable {
        grid-template-columns: 1fr !important;
    }
}


/* v44: recursive category tree in header/catalog */
.catalog-row__children--tree {
    gap: 6px;
}
.catalog-tree-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 0;
}
.catalog-tree-link--all {
    font-weight: 900;
    color: var(--dark) !important;
}
.catalog-tree-link--level-2 { padding-left: 14px; }
.catalog-tree-link--level-3 { padding-left: 28px; }
.catalog-tree-link--level-4 { padding-left: 42px; }
.catalog-tree-link--level-5 { padding-left: 56px; }
.catalog-tree-badge {
    border: 1px solid #e8edf2;
    border-radius: 999px;
    padding: 2px 7px;
    font-size: 11px;
    color: var(--muted);
    background: #fff;
}

/* v45: compact recursive catalog menu */
.catalog-panel.is-open {
    display: block;
    width: min(460px, calc(100vw - 32px));
    max-height: 72vh;
    overflow: auto;
    padding: 0;
}
.catalog-panel__list {
    border-right: 0 !important;
}
.catalog-panel__promo {
    display: none !important;
}
.catalog-row > button[aria-expanded="true"] b,
.catalog-subrow.is-open > .catalog-subrow__head .catalog-subrow__toggle {
    transform: rotate(180deg);
}
.catalog-row__children--tree {
    padding: 10px 16px 16px 58px;
}
.catalog-row.is-open .catalog-row__children--tree {
    display: block;
}
.catalog-tree-link {
    display: block;
    flex: 1;
    min-width: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.25;
    padding: 8px 0;
}
.catalog-tree-link:hover {
    color: var(--orange-dark);
}
.catalog-tree-link--all {
    color: var(--dark) !important;
    font-weight: 900;
    margin-bottom: 6px;
}
.catalog-subrow {
    border-radius: 12px;
}
.catalog-subrow__head {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
}
.catalog-subrow__head:hover {
    background: #fff9ee;
}
.catalog-subrow__toggle {
    width: 30px;
    height: 30px;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: #fff;
    color: var(--dark);
    cursor: pointer;
    font-weight: 900;
    line-height: 1;
    transition: .2s;
    flex: 0 0 auto;
}
.catalog-subrow__toggle:hover {
    border-color: var(--orange);
    color: var(--orange-dark);
}
.catalog-subrow__children {
    display: none;
    margin-left: 14px;
    padding-left: 14px;
    border-left: 1px dashed var(--line);
}
.catalog-subrow.is-open > .catalog-subrow__children {
    display: block;
}
.catalog-subrow--level-2 .catalog-tree-link { padding-left: 8px; }
.catalog-subrow--level-3 .catalog-tree-link { padding-left: 16px; }
.catalog-subrow--level-4 .catalog-tree-link { padding-left: 24px; }
.catalog-subrow--level-5 .catalog-tree-link { padding-left: 32px; }
.catalog-tree-badge {
    display: none !important;
}


/* v46: multiple characteristic filters */
.attribute-filter-block{display:grid;gap:8px;margin:12px 0 14px}.attribute-filter-title{font-weight:800;color:var(--dark);margin:0!important}.attribute-check-list{display:grid;gap:7px;max-height:178px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.attribute-check{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin:0!important;padding:7px 8px;border-radius:10px;font-size:13px;cursor:pointer}.attribute-check:hover{background:#fff4df}.attribute-check input{accent-color:var(--orange)}.attribute-check span{min-width:0;overflow:hidden;text-overflow:ellipsis}.attribute-check small{color:var(--muted);font-weight:800}.attribute-filter-group .filter-hint{font-size:12px;line-height:1.35}
