/* CHARME editorial commerce system — monochrome luxury UI */
:root{
  --ink:#111;
  --muted:#606060;
  --paper:#fff;
  --canvas:#fff;
  --accent:#111;
  --accent-dark:#000;
  --line:#d9d9d9;
  --shadow-sm:none;
  --shadow:0 24px 70px rgba(0,0,0,.14);
  --radius-sm:0;
  --radius:0;
  --radius-lg:0;
}
body{background:#fff;color:#111;font-family:Arial,Helvetica,sans-serif}
button,input,select,textarea{border-radius:0!important}
.section-heading h2,.catalog-title-row h2,.drawer-header h2,.checkout-dialog h2,.auth-pane h2,.account-profile-card+form h2{
  font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;
  font-weight:400;
}
.section-kicker,.product-category,.dialog-category{color:#111;letter-spacing:.14em}
.text-button{color:#111}
.text-button:hover{text-decoration:underline;text-underline-offset:4px}

/* Discovery and category navigation */
.discovery{gap:0;border-bottom:1px solid #111}
.search-wrap{border:0;border-radius:0;box-shadow:none}
.filter-button{border:0;border-left:1px solid #d2d2d2;border-radius:0;background:#fff;color:#111;box-shadow:none}
.filter-button:hover{background:#f5f5f5}
.category-card{border:1px solid #ddd;border-radius:0;background:#fff;box-shadow:none}
.category-card:hover,.category-card.active{border-color:#111;box-shadow:none;transform:none}
.category-name{font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:1.18rem;font-weight:500}
.category-card small{color:#666}
.section-heading{border-bottom:1px solid #111;padding-bottom:15px}

/* Offer and benefit areas */
.offer{border-radius:0;background-color:#222;background-blend-mode:luminosity}
.offer::after{background:linear-gradient(90deg,rgba(10,10,10,.2),rgba(10,10,10,.8) 48%,#111 100%)}
.offer h2{font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-weight:400}
.offer .secondary-button{border:1px solid #fff;border-radius:0;background:#fff;color:#111;box-shadow:none}
.discount-seal{border:1px solid #111;border-radius:0;background:#fff;color:#111}
.trust-strip,.bottom-benefits{border:1px solid #ddd;border-radius:0;background:#fff;box-shadow:none}
.trust-strip b,.bottom-benefits b{color:#111}

/* Catalog controls */
.products-section{color:#111}
.catalog-title-row{border-bottom-color:#111}
.catalog-title-row h2{letter-spacing:-.02em}
.catalog-toolbar{top:82px;border-bottom:1px solid #111;background:rgba(255,255,255,.97)}
.catalog-filter-trigger,.sort-control select,.view-toggle,.view-toggle button{border-color:#aaa;border-radius:0;background:#fff}
.view-toggle button.active{background:#111;color:#fff}
.active-filters button{border-color:#111;border-radius:0;color:#111}
.clear-all-filters{color:#111}
.catalog-filters details,.filter-drawer-head{border-color:#ccc}
.facet-options input,.facet-check input{accent-color:#111}
.apply-filters-mobile{background:#111;color:#fff}
.catalog-pagination button{border:1px solid #111;border-radius:0;background:#fff;color:#111;box-shadow:none}
.catalog-pagination button:hover:not(:disabled){background:#111;color:#fff}

/* Product cards */
.product-grid{gap:40px 20px}
.product-card{background:#fff}
.product-image{border:1px solid #ddd;border-radius:0;background-color:#fff}
.product-card:hover .product-image{border-color:#111}
.product-badge{border-radius:0;background:#111;color:#fff;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}
.favorite-button{border:0;border-radius:0;background:transparent;color:#111;box-shadow:none}
.favorite-button.active{background:transparent;color:#111}
.favorite-button.active svg{fill:#111}
.quick-view-button{border:1px solid #111;border-radius:0;background:#fff;color:#111;text-transform:uppercase;letter-spacing:.08em}
.quick-view-button:hover{background:#111;color:#fff}
.product-info{padding-top:15px}
.product-category{font-size:.63rem;font-weight:700}
.product-card h3{font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:1.2rem;font-weight:500;line-height:1.15}
.product-subtitle{color:#555}
.stars{color:#111;letter-spacing:.06em}
.rating-copy{color:#333}
.product-perk{color:#111;text-decoration:underline;text-underline-offset:3px}
.price{font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:1.2rem;font-weight:500}
.old-price{color:#777}
.add-button{height:43px;border:1px solid #111;border-radius:0;background:#111;color:#fff;box-shadow:none;text-transform:uppercase;letter-spacing:.04em}
.add-button:hover{background:#fff;color:#111}
.add-button:disabled{border-color:#aaa;background:#aaa;color:#fff}

/* Product detail and purchase UI */
.product-dialog{width:min(1180px,calc(100% - 36px));border:1px solid #111;border-radius:0;background:#fff;box-shadow:0 26px 90px rgba(0,0,0,.28)}
.product-dialog::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(3px)}
.product-dialog[open]{grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)}
.dialog-close,.dialog-expand{border:1px solid #111;border-radius:0;background:#fff;color:#111;box-shadow:none}
.dialog-close:hover,.dialog-expand:hover{background:#111;color:#fff;transform:none}
.dialog-media{gap:12px;padding:12px;border-right:1px solid #ddd;background:#fff}
.gallery-thumb{border:1px solid #ccc;border-radius:0;background-color:#fff}
.gallery-thumb:hover,.gallery-thumb.active{border-color:#111;box-shadow:0 0 0 1px #111}
.dialog-product-image{min-height:630px;background-color:#fff}
.dialog-product-info{justify-content:flex-start;padding:52px 48px;color:#111}
.dialog-product-info>.dialog-category{order:1;font-size:.68rem}
.dialog-product-info>h2{order:2;margin:10px 0 12px;font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:clamp(2.25rem,3.2vw,3.35rem);font-weight:400;line-height:1.02;letter-spacing:-.02em}
.dialog-product-info>.dialog-price{order:3;margin:0 0 12px}
.dialog-price strong{font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:1.35rem;font-weight:500}
.dialog-price del{color:#777;font-size:.9rem}
.dialog-product-info>.dialog-rating{order:4;margin:0 0 20px;color:#111;font-size:.9rem;letter-spacing:.04em}
.dialog-product-info>.dialog-description{order:5;margin:0 0 26px;color:#222;font-size:1rem;line-height:1.62}
.dialog-product-info>.dialog-variants{order:6;margin:0 0 23px;padding-top:18px;border-top:1px solid #ccc}
.variant-heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.variant-heading span,.variant-heading strong{color:#111}
.variant-option{border:1px solid #aaa;border-radius:0;background:#fff;color:#111}
.variant-option:hover,.variant-option.active{border-color:#111;box-shadow:0 0 0 1px #111}
.color-variant i{border-radius:50%;box-shadow:0 0 0 1px #777}
.color-variant.active i{box-shadow:0 0 0 2px #111}
.dialog-product-info>.dialog-stock{order:7;margin:0 0 19px;color:#111}
.dialog-stock .stock-dot{background:#111}
.dialog-stock small{color:#555}
.dialog-product-info>.dialog-delivery{display:none}
.dialog-product-info>.dialog-purchase{order:8;grid-template-columns:116px 1fr;gap:18px;margin-top:4px}
.dialog-quantity{height:50px;border:1px solid #bbb;border-radius:0}
.dialog-quantity button:hover{background:#f2f2f2}
.dialog-add{min-height:50px;border:1px solid #111;border-radius:0;background:#242424;color:#fff;text-transform:uppercase;letter-spacing:.06em}
.dialog-add:hover{background:#000}
.dialog-add svg{display:none}
.dialog-purchase-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}
.dialog-buy{width:auto;min-width:82px;min-height:50px;justify-self:start;padding:0 22px;border:1px solid #111;border-radius:0;background:#242424;color:#fff;font-size:.72rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.dialog-buy:hover{border-color:#000;background:#000}
.dialog-buy:disabled{border-color:#bbb;background:#bbb;cursor:not-allowed}
.dialog-product-info>.dialog-wishlist{order:9;width:max-content;display:inline-flex;align-items:center;gap:10px;margin:26px 0 32px;padding:0 0 4px;border:0;border-bottom:1px solid #111;background:transparent;color:#111;font-size:.75rem;font-weight:800;text-transform:uppercase;cursor:pointer}
.dialog-wishlist svg{width:19px;height:19px}
.dialog-wishlist.active svg{fill:#111}
.dialog-product-info>.dialog-meta{order:10;display:grid;gap:7px;margin:0;padding:0;font-family:"Bodoni 72","Bodoni MT",Didot,"Times New Roman",serif;font-size:1rem}
.dialog-meta div{display:flex;gap:7px}.dialog-meta dt{font-weight:500}.dialog-meta dd{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:.88rem}

/* Cart */
.cart-drawer{border-left:1px solid #111;background:#fff;box-shadow:-24px 0 70px rgba(0,0,0,.18)}
.drawer-header{border-bottom-color:#111}
.drawer-header h2{font-size:2rem;font-weight:400}
.drawer-header .section-kicker,.clear-cart{color:#111}
.close-cart{border:1px solid #111;border-radius:0;background:#fff}
.shipping-progress i{border-radius:0;background:#eee}
.shipping-progress i b{background:#111}
.cart-item,.cart-summary{border-color:#ccc}
.cart-remove{color:#111}
.promo-code input{border-color:#111}
.promo-code button{border:1px solid #111;background:#fff;color:#111}
.promo-code button:hover{background:#111;color:#fff}
.checkout-button{border:1px solid #111;border-radius:0;background:#111;color:#fff;text-transform:uppercase;letter-spacing:.05em}
.checkout-button:hover{background:#fff;color:#111}

/* Account, checkout and order confirmation */
.customer-dialog,.checkout-dialog,.order-success-dialog{border:1px solid #111;border-radius:0;color:#111;box-shadow:0 28px 90px rgba(0,0,0,.25)}
.customer-dialog::backdrop,.checkout-dialog::backdrop,.order-success-dialog::backdrop{background:rgba(0,0,0,.62)}
.account-brand-panel{background:#111;color:#fff}
.account-brand-panel img{filter:grayscale(1) brightness(5)}
.account-brand-panel p,.account-benefits{color:#ddd}
.account-benefits b{color:#fff}
.account-tabs{border-bottom-color:#bbb}
.account-tabs button{color:#666}
.account-tabs button.active{color:#111;border-color:#111}
.phase6-close{border:1px solid #111;border-radius:0;color:#111}
.customer-form label,.checkout-form label{color:#111}
.customer-form input,.checkout-form input,.checkout-form textarea{border:1px solid #aaa;border-radius:0;color:#111}
.customer-form input:focus,.checkout-form input:focus,.checkout-form textarea:focus{border-color:#111;box-shadow:0 0 0 1px #111}
.customer-form button,.checkout-submit,.success-close{border:1px solid #111;background:#111;color:#fff;text-transform:uppercase;letter-spacing:.04em}
.customer-form button:hover,.checkout-submit:hover,.success-close:hover{background:#fff;color:#111}
.customer-form .auth-link{border:0;background:transparent;color:#111;text-transform:none;letter-spacing:0}
.account-profile-card,.checkout-summary,.delivery-choice{border-color:#ccc;background:#f7f7f7}
.delivery-choice input{accent-color:#111}
.checkout-head,.checkout-totals,.checkout-summary{border-color:#ccc}
.success-mark{border:1px solid #111;border-radius:0;background:#fff;color:#111}
.order-number{background:#f3f3f3}

/* Footer and mobile navigation */
.site-footer{background:#111}
.footer-grid a{color:#ccc}
.footer-about{display:flex;flex-direction:column;align-items:flex-start}
.footer-about p{max-width:none;margin:auto 0 0;color:#d8d8d8;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:400;line-height:1.4;letter-spacing:.01em;white-space:nowrap}
.footer-bottom{margin-top:20px}
.mobile-nav{border-top:1px solid #bbb;border-radius:0;background:#fff;box-shadow:0 -8px 22px rgba(0,0,0,.08)}
.mobile-nav .active,.mobile-nav button:hover,.mobile-nav a:hover{color:#111}
.mobile-nav .cart-count,.mobile-nav .wishlist-count{background:#111;color:#fff}

@media(max-width:760px){
  .catalog-toolbar{top:70px}
  .product-grid{gap:28px 10px}
  .product-card h3{font-size:1.02rem}
  .product-dialog{box-sizing:border-box;width:calc(100vw - 20px);max-width:calc(100vw - 20px);margin:auto;border:0;overflow-x:hidden}
  .product-dialog[open]{display:block}
  .dialog-media,.dialog-product-info{width:100%;max-width:100%;min-width:0}
  .dialog-product-info>*{min-width:0;max-width:100%}
  .dialog-media{border-right:0;border-bottom:1px solid #ccc}
  .dialog-product-image{min-height:370px}
  .dialog-product-info{padding:27px 20px calc(32px + env(safe-area-inset-bottom,0px))}
  .dialog-product-info>h2{width:100%;max-width:100%;font-size:2.15rem;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere}
  .dialog-product-info>.dialog-description{width:100%;max-width:100%;font-size:.92rem;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere}
  .dialog-product-info>.dialog-purchase{grid-template-columns:105px minmax(0,1fr);gap:10px}
  .dialog-product-info>.dialog-wishlist{margin:23px 0 27px}
}
@media(max-width:430px){
  .dialog-product-image{min-height:300px}
  .dialog-product-info{padding-inline:16px}
  .dialog-product-info>h2{font-size:1.85rem}
  .dialog-product-info>.dialog-purchase{grid-template-columns:96px minmax(0,1fr)}
  .dialog-add{font-size:.74rem}
  .dialog-purchase-actions{grid-template-columns:1fr}
}
