/* Ekannto Experience v9 — shared refined UI, unified component language.
   Espresso #382215 + White #FFF; icons remain supplied by inline Lucide-style SVG. */
:root {
 --v9-ink:#382215;--v9-ink-soft:#654735;--v9-cream:#fbf8f4;
 --v9-line:#e7dcd0;--v9-sand:#f3eadf;--v9-gold:#cba57b;
 --v9-shadow:0 18px 42px rgba(56,34,21,.09);
 --v9-strong-shadow:0 23px 64px rgba(56,34,21,.17);
 --v9-radius:19px;--v9-ease:cubic-bezier(.2,.7,.2,1);
}
body{color:#39271e;background:linear-gradient(148deg,#fffefa 0%,#f9f3ed 48%,#fcfaf7 100%);}
button,.btn,a,.chip{touch-action:manipulation}
:focus-visible{outline:3px solid #ad8258!important;outline-offset:3px}
button:active,.btn:active{transform:scale(.985)}
.header{backdrop-filter:blur(20px);background:#fffefdf5}
.header-main{min-height:74px}
.brand-name{font-size:clamp(22px,2vw,28px)}
.search-cluster .searchbox{border-radius:16px;min-height:47px;border-color:var(--v9-line);background:#fff}
.searchbox:hover,.searchbox:focus-visible{box-shadow:0 0 0 3px #bd98752b}
.desk-nav{gap:10px}
.desk-nav a{border-radius:11px 11px 0 0;padding:11px 17px;font-weight:800}
.desk-nav a.active{background:#efe4d9;color:var(--v9-ink);box-shadow:inset 0 -3px 0 #8d6646}
.location-strip{background:#fbf8f4;border-color:var(--v9-line)}
.location-inner{font-size:11px;gap:8px}
.location-inner b{color:var(--v9-ink);font-size:12px}
.page-context{margin:0 0 22px;border:1px solid #e9ded2;background:#fff;border-radius:17px;box-shadow:0 6px 20px #3822150a}
.page-context-mark{background:var(--v9-sand);color:var(--v9-ink)}
.page-context strong{font-size:13px}
.section{margin-bottom:38px}
.section-title{letter-spacing:-1px;color:var(--v9-ink)}
.section-head{gap:13px}
.section-head .link{border-color:#d0ae90}
.hero,.market-masthead,.search-landing{box-shadow:var(--v9-strong-shadow);border:1px solid #74564142}
.hero{border-radius:29px}
.quick-access{gap:14px}
.quick-tile{background:linear-gradient(130deg,#fff,#fffcf8);border:1px solid var(--v9-line);box-shadow:0 10px 27px #3822150a}
.quick-tile:hover{border-color:#b28e6c}
.quick-symbol{border:1px solid #ead7c5}
/* All product cards, collections and search results share this presentation. */
.product-card.premium-product-card{border:1px solid #e6dacd;background:#fff;border-radius:21px;box-shadow:0 9px 28px #3822150c;overflow:hidden;isolation:isolate}
.product-card.premium-product-card:hover{border-color:#c7a98a;box-shadow:0 20px 52px #3822151c;transform:translateY(-4px)}
.premium-product-card .product-media{background:linear-gradient(155deg,#f9f6f1,#ece1d5);aspect-ratio:1/1.04}
.premium-product-card .product-media img{object-fit:cover;width:100%;height:100%}
.premium-product-card .product-body{display:flex;flex-direction:column;gap:5px;padding:15px 15px 13px}
.premium-product-card .product-category{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#917963;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.premium-product-card .product-name{font-weight:780;font-size:13px;line-height:1.55;min-height:39px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#332219}
.premium-product-card .price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;margin:2px 0}
.premium-product-card .price-row strong{font-size:19px;color:var(--v9-ink);letter-spacing:-.7px}
.premium-product-card .price-row s{font-size:11px;color:#9b8980}
.premium-product-card .product-meta{display:flex;align-items:center;justify-content:space-between;gap:7px;padding-top:9px;border-top:1px solid #f1eae2;font-size:10px;color:#806d5e}
.premium-product-card .product-meta svg{color:#9a7754}
.premium-product-card .product-meta span{display:flex;align-items:center;gap:4px}
.premium-product-card .product-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:7px;font-weight:850;font-size:11px;color:#4f3525}
.premium-product-card .product-card-foot svg{transition:transform .2s var(--v9-ease)}
.premium-product-card:hover .product-card-foot svg{transform:translateX(3px)}
.premium-product-card .sample-ribbon{top:10px;bottom:auto;left:auto;right:10px;padding:5px 9px;background:#ffffffee;border:1px solid #ddcabb;border-radius:8px;font-size:9px;letter-spacing:1px}
.premium-product-card .discount{left:11px;top:11px;font-weight:850;padding:7px 9px;border-radius:8px;font-size:10px}
.premium-product-card .product-open{position:absolute;right:10px;bottom:10px;background:#fff;box-shadow:0 5px 17px #38221524;color:var(--v9-ink);border-radius:50%;width:29px;height:29px;display:grid;place-items:center}
.products-grid{row-gap:16px}
.hscroll{scroll-padding:0 10px;gap:12px}
/* Product detail: immersive gallery, horizontal thumbs, readable purchase flow. */
.product-action-dock ~ *{box-sizing:border-box}
.has-product-dock .page{padding-bottom:155px}
.detail-grid,.premium-product-grid{align-items:start;gap:clamp(20px,3.5vw,56px)}
.detail-grid>div{min-width:0}
.main-photo.premium-photo{position:relative;overflow:hidden;box-shadow:0 18px 42px #38221514;border:1px solid #e8d9c8;background:#f5eee5;border-radius:24px}
.main-photo.premium-photo img{width:100%;height:100%;object-fit:contain}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:39px;height:39px;border-radius:50%;display:grid;place-items:center;color:var(--v9-ink);background:#fffffff0;box-shadow:0 7px 17px #38221526;border:1px solid #e9dfd6;z-index:5}
.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}
.gallery-arrow:hover{background:#382215;color:white}
.gallery-counter{position:absolute;right:13px;bottom:14px;background:#382215d9;color:white;border-radius:100px;padding:6px 11px;font-size:11px;font-weight:800}
.thumb-row.product-thumb-rail{display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:10px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#ad8c70 transparent;scroll-snap-type:x mandatory;padding:12px 2px 15px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.product-thumb-rail .thumb{width:78px!important;height:78px!important;flex:0 0 78px!important;border:2px solid transparent;background:#f1e7dc;border-radius:13px;scroll-snap-align:start;transition:transform .15s,border-color .15s}
.product-thumb-rail .thumb:hover{transform:translateY(-2px)}
.product-thumb-rail .thumb.active{border-color:#382215;box-shadow:0 4px 14px #3822151b}
.product-thumb-rail .thumb img{object-fit:contain;width:100%;height:100%}
.sample-detail-notice{background:#fbf7ed;border-color:#e6d7c0;color:#6c4a32}
.premium-detail-panel{background:#fff;border:1px solid #ece0d4;box-shadow:0 12px 34px #3822150b;border-radius:24px;gap:15px}
.premium-detail-panel .detail-title{margin:7px 0 5px}
.product-heading .round-btn{width:42px;height:42px;background:#fbf6f0;border:1px solid var(--v9-line)}
.detail-title{font-family:Georgia,serif;font-size:clamp(26px,3vw,40px);line-height:1.18;letter-spacing:-1.1px;color:#322117}
.detail-price{font-size:clamp(29px,3vw,38px);font-weight:850;letter-spacing:-1.1px;color:#382215}
.detail-price .pill{font-size:11px;letter-spacing:0;background:#382215;color:white;vertical-align:middle}
.premium-rating-row,.detail-ratings{border-bottom:1px solid #f0e7dc;padding-bottom:12px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;color:#6f5545}
.premium-rating-row svg,.detail-ratings svg{color:#a77a42}
.detail-variant h4{font-weight:850;font-size:12px;text-transform:uppercase;letter-spacing:.75px;color:#765a46;margin-bottom:10px}
.detail-variant .opt-row{display:flex;flex-wrap:wrap;gap:8px}
.option{background:#fff;border:1px solid #e4d7c7;color:#583c2c;border-radius:10px;padding:10px 14px}
.option.selected{background:#382215;color:#fff;border-color:#382215;box-shadow:0 4px 13px #38221533}
.premium-buy-box{box-shadow:none;background:#fbf7f3;border:1px solid #e9dccf}
.quantity-explainer{font-size:11px;color:#796658}
.inline-quantity-select{padding:8px 0 16px;border-bottom:1px solid #f0e7dc}
.qty-large{background:#fff;height:50px;border:1px solid #dcccbb;max-width:186px}
.qty-large button{height:48px;width:48px}
.qty-large input{width:75px;height:48px;color:#382215}
.info-strip{border-color:#e9e0d7;background:#fff;border-radius:13px}
.info-strip strong{font-size:12px}
.info-strip small{font-size:11px;line-height:1.55}
.seller-preview-card,.seller-banner{border-radius:21px}
.panel,.surface-list,.auth-wrap,.order-card{border-color:#e7dcd0;box-shadow:0 10px 28px #3822150c}
/* Sticky purchase dock; replaces duplicate inline buttons. Desktop anchors at bottom. */
.product-action-dock{position:fixed;bottom:0;left:0;right:0;z-index:88;background:#fffefaef;backdrop-filter:blur(22px);border-top:1px solid #e4d6c6;box-shadow:0 -12px 42px #38221520;padding:12px max(14px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}
.product-dock-inner{max-width:1160px;margin:0 auto;display:flex;align-items:center;gap:13px;min-width:0}
.product-dock-store{width:64px;height:55px;display:flex;flex-direction:column;gap:4px;justify-content:center;align-items:center;flex:0 0 64px;border:1px solid #e6d9cd;border-radius:13px;background:#faf5ee;color:#382215;font-size:10px;font-weight:850}
.product-dock-store:hover{background:#efe0d0}
.dock-product-info{display:flex;flex-direction:column;gap:3px;min-width:110px;flex:1}
.dock-product-info small{font-size:10px;color:#937966;font-weight:750}
.dock-product-info strong{font-size:22px;line-height:1;color:#382215}
.dock-action{border-radius:13px;padding:0 19px;min-height:55px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:850;font-size:13px;white-space:nowrap;min-width:172px;border:1px solid #382215;transition:transform .16s,filter .16s}
.dock-cart{background:#fff;color:#382215}.dock-buy{background:#382215;color:#fff}
.dock-action:hover{filter:brightness(1.06)}
.dock-action[disabled]{opacity:.55;cursor:not-allowed}
/* Shared account, search, cart, seller and admin polish */
.search-form-premium,.auth-wrap,.search-landing,.market-masthead{border-radius:23px}
.search-form-premium{box-shadow:0 13px 34px #38221513}
.search-tags button,.chip{border-radius:11px}
.chip.active{background:#382215;color:#fff;border-color:#382215}
.profile-head{border-radius:22px}
.profile-shortcuts a,.status-row a{border-radius:13px;transition:transform .18s}
.profile-shortcuts a:hover,.status-row a:hover{transform:translateY(-2px)}
.auth-wrap{border:1px solid #e6d9cc;overflow:hidden}
.field input,.field select,.field textarea{border-radius:12px;min-height:46px}
.btn{font-weight:800;border-radius:12px}
.order-card{border-radius:18px}
.toast{z-index:150}
.console-page .side-menu{border-radius:19px}
.console-page .panel,.console-page .stat-card{border-radius:18px}
/* Tablet and mobile */
@media(max-width:900px){.dock-product-info{display:none}.dock-action{flex:1;min-width:0}.product-dock-inner{gap:9px}.product-dock-store{width:55px;flex-basis:55px}.product-action-dock{padding:10px}}
@media(max-width:700px){
 .page{padding-top:15px}
 .has-product-dock .page{padding-bottom:170px}
 .header-main{min-height:61px}
 .page-context{margin-bottom:14px}
 .quick-access{gap:9px}
 .quick-tile{border-radius:14px}
 .product-card.premium-product-card{border-radius:15px}
 .premium-product-card .product-body{padding:10px 9px 9px;gap:4px}
 .premium-product-card .product-category{font-size:8px;letter-spacing:.65px}
 .premium-product-card .product-name{min-height:34px;font-size:11px;line-height:1.45}
 .premium-product-card .price-row strong{font-size:15px}
 .premium-product-card .product-meta{font-size:9px}
 .premium-product-card .product-card-foot{font-size:10px}
 .premium-product-card .discount{font-size:9px;padding:5px 6px;top:7px;left:7px}
 .premium-product-card .sample-ribbon{font-size:8px;top:7px;right:7px;padding:4px 5px}
 .product-thumb-rail .thumb{width:67px!important;height:67px!important;flex-basis:67px!important;border-radius:11px}
 .gallery-arrow{width:34px;height:34px}
 .detail-grid{gap:20px}
 .sample-detail-info,.premium-detail-panel{border-radius:19px;padding:17px}
 .detail-title,.sample-detail-info .detail-title{font-size:28px}
 .premium-rating-row{font-size:11px;gap:10px}
 .product-action-dock{bottom:calc(74px + env(safe-area-inset-bottom));padding:8px 10px 9px;background:#fffcf9f5;box-shadow:0 -7px 24px #3822151a}
 .product-dock-inner{gap:7px}
 .product-dock-store{height:49px;width:52px;flex-basis:52px;border-radius:11px;font-size:9px}
 .product-dock-store svg{width:19px;height:19px}
 .dock-action{min-height:49px;border-radius:10px;font-size:11px;padding:0 7px;gap:5px}
 .dock-action svg{width:15px;height:15px}
 .mobile-nav{z-index:90;box-shadow:0 -1px 14px #38221517}
 .mobile-nav a.active{box-shadow:0 5px 15px #38221533}
 .seller-preview-card{padding:16px;border-radius:18px}
 .seller-preview-copy strong{font-size:18px}
 .toast{bottom:calc(145px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){.product-dock-store{width:46px;flex-basis:46px}.dock-action{font-size:10px}.product-thumb-rail .thumb{width:59px!important;height:59px!important;flex-basis:59px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Keep selected mobile navigation text and icons visible on espresso backgrounds. */
.mobile-nav a.active{color:#fff!important}
.mobile-nav a.active svg,.mobile-nav a.active span{color:#fff!important;stroke:currentColor!important;opacity:1!important;visibility:visible!important}
