@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

:root {
  --mauve:#9a8584;
  --dark:#3f302b;
  --text:#5e646b;
  --heading:#111111;
  --line:#e4e4e4;
  --gold:#c9a167;
  --white:#ffffff;
  --soft:#faf9f7;
  --footer:#998484;
  --shadow:0 18px 45px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Montserrat", Arial, sans-serif;
  color:var(--text);
  background:#fff;
  font-size:15px;
  font-weight:400;
  line-height:1.75;
}
img{display:block;max-width:100%}
a{color:inherit}
.container{width:min(1510px,calc(100% - 70px));margin:0 auto}

/* Header */
.top-strip{height:45px;background:var(--mauve);color:#fff;font-size:13px;letter-spacing:2px}
.strip-inner{height:45px;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:20px}
.socials{display:flex;gap:15px;font-size:12px;font-weight:600;color:#fff;align-items:center}
.strip-address{text-align:center;font-weight:700;display:flex;gap:8px;align-items:center;justify-content:center}
.strip-email{text-align:right;color:#fff;text-decoration:none;font-weight:700}
.mini-icon{width:16px;height:16px;fill:currentColor;display:inline-block}

.brand-header{background:#fff}
.brand-inner{height:150px;position:relative;display:flex;align-items:center;justify-content:center}
.logo img{width:330px;height:auto}
.header-icons{position:absolute;right:70px;top:65px;display:flex;align-items:center;gap:11px;color:#000}
.header-icons a{display:inline-flex;align-items:center;text-decoration:none;color:#000}
.header-icons svg{width:19px;height:19px;fill:#000;display:block}
.header-icons .basket-count{font-size:15px;line-height:1;color:#111;margin-left:2px}

.nav-bar{height:56px;background:#fff;border-top:1px solid #eee;border-bottom:1px solid #e5e5e5}
.nav-inner{height:56px;display:flex;align-items:center;justify-content:center}
.main-nav{display:flex;align-items:center;justify-content:center;gap:28px}
.main-nav a{text-decoration:none;color:#4d5962;font-size:14px;font-weight:400;line-height:56px}
.main-nav a:hover,.main-nav a.active{color:#9a8584}
.menu-toggle{display:none}

/* Homepage */
.home-hero{padding:125px 0 80px;background:#fff}
.home-hero img{width:100%;max-width:1510px;margin:0 auto;height:auto}

.home-panels{padding:0 0 78px;background:#fff}
.info-panel{
  min-height:315px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  align-items:center;
  gap:70px;
  border:1px solid var(--line);
  border-radius:9px;
  padding:48px 38px;
  margin:0 0 29px;
  background:#fff;
}
.info-panel.image-left{grid-template-columns:360px minmax(0,1fr)}
.panel-copy h2{
  margin:0 0 20px;
  font-family:"Montserrat", Arial, sans-serif;
  font-size:28px;
  line-height:1.2;
  font-weight:700;
  color:#111;
}
.panel-copy p{margin:0 0 18px;color:#5e646b}
.panel-image{display:flex;align-items:center;justify-content:center}
.panel-image img{
  width:245px;
  height:245px;
  object-fit:cover;
  border-radius:50%;
  box-shadow:0 16px 32px rgba(0,0,0,.14);
}

/* Catalogue pages — tuned to original WooCommerce layout */
.catalogue-section{
  padding:58px 0 96px;
  background:#fff;
}
.catalogue-section .container{
  width:min(1420px,calc(100% - 70px));
  margin:0 auto;
}
.catalogue-section h1{
  margin:0 0 18px;
  color:#111;
  font-family:"Montserrat", Arial, sans-serif;
  font-size:42px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-0.025em;
}
.category-description{
  font-size:17px;
  margin:0 0 28px;
  color:#6a7077;
}
.catalogue-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin:0 0 26px;
  color:#6a7077;
  font-size:18px;
}
.catalogue-toolbar p{margin:0}
.catalogue-toolbar select{
  width:250px;
  max-width:100%;
  font-family:Arial, sans-serif;
  font-size:18px;
  padding:2px 6px;
  border:1px solid #8f8f8f;
  border-radius:3px;
  background:#f4f4f8;
  color:#000;
}

.product-grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  column-gap:54px;
  row-gap:58px;
  align-items:start;
}
.product-card{
  text-align:center;
  min-width:0;
}
.product-card a:first-child{
  display:block;
}
.product-card img{
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:22px;
  margin:0 0 21px;
  background:#f7f7f7;
}
.product-card h2{
  color:#111;
  font-family:"Montserrat", Arial, sans-serif;
  font-size:18px;
  line-height:1.18;
  font-weight:700;
  letter-spacing:-0.01em;
  margin:0 auto 8px;
  min-height:42px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  max-width:240px;
}
.catalogue-price{
  font-size:17px;
  font-weight:400;
  color:#9a8584;
  margin:0 0 14px;
  min-height:28px;
}
.select-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:47px;
  border:3px solid #111;
  border-radius:9px;
  color:#111;
  text-decoration:none;
  background:#fff;
  font-family:"Montserrat", Arial, sans-serif;
  font-weight:700;
  font-size:15px;
  line-height:1.2;
}
.select-btn:hover{background:#111;color:#fff}

/* Product detail */
.product-detail-section{padding:70px 0 100px}
.product-detail{
  width:min(1420px,calc(100% - 70px));
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:start;
}
.product-detail-image img{
  width:100%;
  max-width:610px;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:18px;
}
.breadcrumb{font-size:14px;color:#7a7a7a;margin-bottom:18px}
.product-detail-copy h1{
  font-family:"Montserrat", Arial, sans-serif;
  font-size:42px;
  font-weight:700;
  color:#111;
  margin:0 0 16px;
  line-height:1.08;
  letter-spacing:-0.025em;
}
.detail-price{font-size:24px;color:#9a8584;margin-bottom:22px}
.detail-description{font-size:17px;color:#5e646b;margin-bottom:28px}
.detail-cart-btn{max-width:290px}

/* General page formatting */
.section{padding:70px 0}
.section .container{width:min(1420px,calc(100% - 70px))}
.section.alt{background:var(--soft)}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--gold);font-size:13px;font-weight:700;margin-bottom:10px}
h1,h2,h3{color:var(--heading);line-height:1.15}
h1{
  font-family:"Montserrat", Arial, sans-serif;
  font-size:42px;
  font-weight:700;
  margin:0 0 20px;
  color:#111;
  letter-spacing:-0.025em;
}
.lead{font-size:18px;max-width:780px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:10px 22px;border-radius:999px;border:1px solid var(--gold);background:var(--dark);color:#fff;text-decoration:none;font-weight:700}
.btn.light{background:#fff;color:var(--dark)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.card-body{padding:22px}
.product-img{aspect-ratio:1/1;object-fit:cover;width:100%}
.price{font-weight:700;color:var(--gold);font-size:18px;margin:8px 0 16px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}
.content-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:34px;box-shadow:var(--shadow)}
.form{display:grid;gap:16px}
.input,textarea,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}
textarea{min-height:130px}
.notice{background:#fff7df;border:1px solid #efd78d;border-radius:12px;padding:16px;margin:20px 0}

/* Footer */
.site-footer{background:var(--footer);padding:75px 0 92px;color:#fff}
.footer-grid{display:grid;grid-template-columns:360px 1fr 1fr;gap:100px;align-items:start}
.footer-flower img{width:285px}
.footer-column h3{
  font-family:"Montserrat", Arial, sans-serif;
  font-size:29px;
  line-height:1.2;
  margin:0 0 25px;
  color:#111;
  font-weight:700;
}
.footer-column a{
  display:block;
  color:#fff;
  text-decoration:none;
  font-size:17px;
  padding:10px 0;
  border-top:1px solid rgba(255,255,255,.65);
}
.footer-bottom{height:57px;display:flex;align-items:center;justify-content:center;gap:18px;background:#fff;color:#6b6b6b;font-size:14px}
.footer-credit-link{color:inherit;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
.footer-credit-link:hover{opacity:.82}

/* Admin */
.admin-wrap{min-height:100vh;background:#f7f3ef;padding:30px}
.admin-card{max-width:1100px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow)}
.admin-table{width:100%;border-collapse:collapse;margin-top:18px}
.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
.admin-nav{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.admin-nav a{background:var(--dark);color:#fff;padding:10px 14px;border-radius:999px;text-decoration:none}

@media(max-width:1180px){
  .product-grid{grid-template-columns:repeat(4,1fr);gap:44px 34px}
}
@media(max-width:980px){
  .container,.catalogue-section .container,.product-detail,.section .container{width:min(100% - 30px,1510px)}
  .top-strip{height:auto}
  .strip-inner{height:auto;display:flex;flex-direction:column;padding:10px 0;text-align:center;gap:6px}
  .strip-email{text-align:center}
  .brand-inner{height:125px}
  .logo img{width:255px}
  .header-icons{right:15px;top:52px}
  .nav-bar{height:auto}
  .nav-inner{height:auto;display:block;padding:10px 0}
  .menu-toggle{display:inline-flex;border:1px solid #ddd;background:#fff;border-radius:999px;padding:9px 17px}
  .main-nav{display:none;flex-direction:column;align-items:flex-start;gap:0;margin-top:10px}
  .main-nav.open{display:flex}
  .main-nav a{line-height:1.4;padding:8px 0}
  .home-hero{padding:45px 0 35px}
  .info-panel,.info-panel.image-left{grid-template-columns:1fr;gap:24px;padding:26px 22px}
  .info-panel.image-left .panel-image{order:0}
  .info-panel.image-left .panel-copy{order:1}
  .panel-image img{width:220px;height:220px}
  .footer-grid{grid-template-columns:1fr;gap:35px}
  .footer-flower img{width:220px}
  .cards,.grid-2,.product-detail{grid-template-columns:1fr}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:36px 24px}
  .catalogue-toolbar{align-items:flex-start;flex-direction:column}
  .product-card h2{min-height:auto}
}
@media(max-width:540px){
  .product-grid{grid-template-columns:1fr}
  .catalogue-section h1{font-size:34px}
  h1,.product-detail-copy h1{font-size:34px}
}

/* v1.1.0 styled filters and product detail options */
.catalogue-toolbar select,
.nice-select,
.product-options-form select {
  appearance: none;
  -webkit-appearance: none;
  background:
    linear-gradient(45deg, transparent 50%, #7f6d6c 50%) right 16px center / 7px 7px no-repeat,
    linear-gradient(135deg, #ffffff, #fbf8f6);
  border: 1px solid #d8c9c8;
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(63,48,43,.06);
  color: #3f302b;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 15px;
  min-height: 44px;
  padding: 9px 42px 9px 14px;
}

.product-page-refined {
  padding-top: 38px;
}

.product-detail-shell {
  width: min(1180px, calc(100% - 70px));
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  gap: 42px;
  align-items: start;
}

.product-gallery {
  min-width: 0;
}

.main-product-image {
  background: #f7f5f4;
  border-radius: 18px;
  overflow: hidden;
}

.main-product-image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.product-thumbs {
  display: flex;
  gap: 10px;
  margin-top: 14px;
  flex-wrap: wrap;
}

.product-thumb {
  width: 62px;
  height: 62px;
  padding: 3px;
  border: 1px solid #d8c9c8;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}

.product-thumb.active {
  border-color: #9a8584;
  box-shadow: 0 0 0 2px rgba(154,133,132,.18);
}

.product-thumb img {
  width: 100%;
  height: 100%;
  border-radius: 5px;
  object-fit: cover;
}

.product-order-card {
  background: #fff;
  border: 1px solid #dedede;
  border-radius: 16px;
  box-shadow: 0 16px 42px rgba(0,0,0,.08);
  padding: 26px 28px;
}

.product-order-card h1 {
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 6px;
  color: #111;
}

.product-order-card .detail-price {
  color: #111;
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 18px;
}

.product-options-form {
  display: grid;
  gap: 14px;
}

.option-field {
  display: grid;
  gap: 6px;
}

.option-field span {
  color: #111;
  font-size: 12px;
  font-weight: 700;
}

.option-field input,
.option-field textarea,
.option-field select {
  width: 100%;
  min-height: 40px;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  background-color: #fff;
  color: #3f302b;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 13px;
  padding: 9px 11px;
}

.option-field textarea {
  min-height: 90px;
}

.order-total {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-top: 10px;
  color: #111;
  font-size: 13px;
}

.order-total strong {
  font-weight: 800;
}

.qty-row {
  display: flex;
  gap: 10px;
  align-items: center;
}

.qty-row input {
  width: 60px;
  min-height: 38px;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  text-align: center;
}

.add-basket-btn {
  min-height: 38px;
  padding: 9px 18px;
  border: 0;
  border-radius: 5px;
  background: #111;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.payment-note {
  margin: 16px 0 0;
  font-size: 11px;
  color: #6d6d6d;
}

.product-description-block {
  width: min(1180px, calc(100% - 70px));
  border-top: 1px solid #d8c9c8;
  margin-top: 34px;
  padding-top: 22px;
}

.product-description-block h2,
.related-products h2 {
  color: #111;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 12px;
}

.product-description-block p {
  font-size: 13px;
  color: #5e646b;
}

.related-products {
  width: min(1180px, calc(100% - 70px));
  margin-top: 28px;
}

.related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.related-card {
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 12px;
  text-align: center;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}

.related-card img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 8px;
}

.related-card h3 {
  font-size: 12px;
  line-height: 1.2;
  color: #111;
  min-height: 30px;
}

.mini-cart-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 24px;
  border-radius: 5px;
  background: #111;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}

.admin-grid-2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 28px;
  align-items: start;
}

.admin-options-panel {
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 22px;
  background: #fbf8f6;
}

.admin-options-panel h2 {
  margin-top: 0;
}

.admin-option-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 12px 0;
  border-top: 1px solid #e7dada;
}

.admin-option-check span {
  display: grid;
}

.admin-option-check small {
  color: #7a6b65;
}

.basket-line {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
}

.basket-options {
  margin: 8px 0 0;
  padding-left: 18px;
  font-size: 13px;
}

@media(max-width:980px){
  .product-detail-shell,
  .admin-grid-2 {
    grid-template-columns: 1fr;
    width: min(100% - 30px, 1180px);
  }
  .related-grid {
    grid-template-columns: 1fr;
  }
  .product-description-block,
  .related-products {
    width: min(100% - 30px, 1180px);
  }
}

/* v1.2.0 admin dashboard */
.admin-login-page,
.admin-shell {
  min-height: 100vh;
  background:
    radial-gradient(circle at 10% 10%, rgba(154,133,132,.16), transparent 28%),
    linear-gradient(135deg, #f8f3ee, #fffdf9);
  font-family: "Montserrat", Arial, sans-serif;
}

.admin-login-page {
  display: grid;
  place-items: center;
  padding: 24px;
}

.admin-login-card {
  width: min(460px, 100%);
  background: #fff;
  border: 1px solid #eadfd5;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 24px 60px rgba(63,48,43,.12);
}

.admin-login-card img {
  width: 220px;
  margin: 0 auto 22px;
}

.admin-login-card h1 {
  text-align: center;
}

.admin-login-btn {
  width: 100%;
}

.admin-shell {
  display: grid;
  grid-template-columns: 285px minmax(0, 1fr);
}

.admin-sidebar {
  min-height: 100vh;
  background: #3f302b;
  color: #fff;
  padding: 26px 18px;
  position: sticky;
  top: 0;
}

.admin-brand {
  display: block;
  background: #fff;
  border-radius: 18px;
  padding: 14px;
  margin-bottom: 26px;
}

.admin-brand img {
  width: 210px;
  margin: auto;
}

.admin-side-nav {
  display: grid;
  gap: 8px;
}

.admin-side-nav a {
  color: #fff;
  text-decoration: none;
  padding: 13px 15px;
  border-radius: 14px;
  font-weight: 600;
  opacity: .88;
}

.admin-side-nav a:hover,
.admin-side-nav a.active {
  background: rgba(255,255,255,.12);
  opacity: 1;
}

.admin-main {
  padding: 28px;
}

.admin-topbar {
  min-height: 68px;
  background: rgba(255,255,255,.86);
  border: 1px solid #eadfd5;
  border-radius: 22px;
  padding: 16px 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 14px 38px rgba(63,48,43,.08);
  margin-bottom: 24px;
}

.admin-topbar strong,
.admin-topbar span {
  display: block;
}

.admin-topbar span {
  color: #83736c;
  font-size: 13px;
}

.admin-topbar a {
  color: #3f302b;
  font-weight: 700;
  text-decoration: none;
}

.admin-hero {
  background:
    linear-gradient(135deg, rgba(154,133,132,.96), rgba(63,48,43,.94));
  color: #fff;
  border-radius: 28px;
  padding: 34px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 22px;
  box-shadow: 0 24px 60px rgba(63,48,43,.16);
}

.admin-hero p {
  margin: 0 0 6px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: 12px;
  opacity: .8;
}

.admin-hero h1 {
  color: #fff;
  margin: 0;
  font-size: 40px;
}

.admin-role-pill {
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 700;
}

.developer-announcement {
  background: #fff;
  border: 1px solid #eadfd5;
  border-left: 8px solid #9a8584;
  border-radius: 22px;
  padding: 24px;
  display: flex;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
  box-shadow: 0 14px 38px rgba(63,48,43,.08);
}

.developer-announcement span {
  display: block;
  color: #9a8584;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  margin-bottom: 8px;
}

.developer-announcement h2 {
  margin: 0 0 8px;
  color: #111;
}

.developer-announcement p {
  margin: 0;
}

.admin-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-bottom: 22px;
}

.admin-stat-grid article,
.admin-panel {
  background: rgba(255,255,255,.9);
  border: 1px solid #eadfd5;
  border-radius: 22px;
  box-shadow: 0 14px 38px rgba(63,48,43,.08);
}

.admin-stat-grid article {
  padding: 22px;
}

.admin-stat-grid span {
  display: block;
  color: #83736c;
  font-size: 13px;
  font-weight: 700;
}

.admin-stat-grid strong {
  display: block;
  color: #111;
  font-size: 34px;
  line-height: 1.1;
  margin-top: 8px;
}

.admin-dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.admin-panel {
  padding: 24px;
}

.admin-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}

.admin-panel-head h2 {
  margin: 0;
  color: #111;
  font-size: 23px;
}

.admin-panel-head a,
.admin-action {
  color: #3f302b;
  font-weight: 800;
  text-decoration: none;
}

.quick-actions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.quick-actions a {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: center;
  background: #f8f3ee;
  border: 1px solid #eadfd5;
  border-radius: 16px;
  color: #3f302b;
  font-weight: 800;
  text-decoration: none;
}

.admin-list {
  display: grid;
  gap: 12px;
}

.admin-list div {
  border-top: 1px solid #eadfd5;
  padding-top: 12px;
}

.admin-list strong,
.admin-list span {
  display: block;
}

.admin-list span {
  color: #83736c;
  font-size: 13px;
}

.admin-page-title {
  margin-bottom: 22px;
}

.admin-page-title h1 {
  margin-bottom: 8px;
}

.users-grid {
  grid-template-columns: 420px minmax(0, 1fr);
}

.admin-table.refined {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}

.admin-table.refined th {
  background: #f8f3ee;
  color: #3f302b;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.admin-product-thumb {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 10px;
}

.status-pill,
.role-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}

.status-pill.active {
  background: #e8f7ed;
  color: #247644;
}

.status-pill.hidden {
  background: #fff0f0;
  color: #9c2f2f;
}

.role-badge {
  background: #f8f3ee;
  color: #3f302b;
}

.admin-check {
  display: flex;
  gap: 8px;
  align-items: center;
}

.announcement-list {
  display: grid;
  gap: 14px;
}

.announcement-list article {
  border-top: 1px solid #eadfd5;
  padding-top: 14px;
}

.announcement-list strong,
.announcement-list span {
  display: block;
}

.announcement-list span {
  color: #83736c;
  font-size: 13px;
}

.announcement-list a {
  color: #9a8584;
  font-weight: 800;
}

@media(max-width: 980px) {
  .admin-shell {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    min-height: auto;
    position: static;
  }

  .admin-main {
    padding: 16px;
  }

  .admin-hero,
  .developer-announcement,
  .admin-topbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .admin-stat-grid,
  .admin-dashboard-grid,
  .users-grid {
    grid-template-columns: 1fr;
  }

  .quick-actions {
    grid-template-columns: 1fr;
  }
}

/* v1.2.1 admin restyle: pale dashboard, white sidebar, modal editing */
.admin-login-page,
.admin-shell {
  min-height: 100vh;
  background: #f5f3f0;
  font-family: "Montserrat", Arial, sans-serif;
}

.admin-shell {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
}

.admin-sidebar {
  min-height: 100vh;
  background: #ffffff;
  color: #2f3337;
  padding: 24px 18px;
  border-right: 1px solid #e4e0dc;
  box-shadow: 12px 0 30px rgba(42, 46, 50, .04);
  position: sticky;
  top: 0;
}

.admin-brand {
  display: block;
  background: #ffffff;
  border: 1px solid #e7e2de;
  border-radius: 20px;
  padding: 16px;
  margin-bottom: 16px;
  box-shadow: 0 10px 24px rgba(42,46,50,.05);
}

.admin-brand img {
  width: 220px;
  margin: auto;
}

.admin-user-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f7f7f6;
  border: 1px solid #e4e0dc;
  border-radius: 18px;
  padding: 14px;
  margin-bottom: 12px;
}

.admin-avatar {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #e9e6e2;
  color: #2f3337;
  font-weight: 800;
}

.admin-user-card strong,
.admin-user-card span {
  display: block;
}

.admin-user-card span {
  color: #777d83;
  font-size: 12px;
}

.admin-view-site {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  border-radius: 14px;
  background: #2f3337;
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
  margin-bottom: 18px;
}

.admin-side-nav {
  display: grid;
  gap: 9px;
}

.admin-side-nav a {
  color: #41464c;
  text-decoration: none;
  padding: 13px 15px;
  border-radius: 14px;
  font-weight: 650;
  background: #f7f7f6;
  border: 1px solid #e9e6e2;
  opacity: 1;
}

.admin-side-nav a:hover,
.admin-side-nav a.active {
  background: #e8ecef;
  color: #1f2428;
  border-color: #d7dde2;
}

.admin-main {
  padding: 30px;
}

.admin-topbar {
  display: none !important;
}

.admin-page-title,
.dashboard-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  margin: 0 0 24px;
}

.admin-page-title p,
.dashboard-title p {
  margin: 0 0 4px;
  color: #8a9097;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 700;
}

.admin-page-title h1,
.dashboard-title h1 {
  margin: 0;
  color: #24282d;
  font-size: 36px;
  font-weight: 750;
}

.admin-soft-pill {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid #e4e0dc;
  color: #777d83;
  font-weight: 700;
}

.developer-announcement,
.admin-stat-grid article,
.admin-panel {
  background: #ffffff;
  border: 1px solid #e4e0dc;
  box-shadow: 0 18px 42px rgba(42,46,50,.06);
}

.developer-announcement {
  border-left: 6px solid #bfc7ce;
}

.developer-announcement span {
  color: #68727c;
}

.developer-announcement h2,
.admin-panel-head h2,
.admin-stat-grid strong {
  color: #24282d;
}

.admin-stat-grid {
  grid-template-columns: repeat(4, 1fr);
}

.admin-stat-grid span {
  color: #7b8289;
}

.admin-dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.admin-panel {
  border-radius: 22px;
}

.quick-actions a {
  background: #f7f7f6;
  border: 1px solid #e4e0dc;
  color: #2f3337;
}

.quick-actions a:hover {
  background: #e8ecef;
}

.admin-action-button,
.table-edit-btn {
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 15px;
  border-radius: 12px;
  background: #2f3337;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  font-family: inherit;
}

.table-edit-btn {
  min-height: 34px;
  background: #e8ecef;
  color: #24282d;
  border: 1px solid #d7dde2;
}

.admin-table.refined th {
  background: #f2f3f3;
  color: #59616a;
}

.status-pill.active {
  background: #e7f2ea;
  color: #357148;
}

.status-pill.hidden {
  background: #f7e9e7;
  color: #9a433d;
}

.role-badge {
  background: #e8ecef;
  color: #24282d;
}

/* Modal */
.admin-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(31,36,40,.48);
  backdrop-filter: blur(4px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 24px;
}

.admin-modal-backdrop.open {
  display: flex;
}

.admin-modal {
  width: min(760px, 100%);
  max-height: calc(100vh - 48px);
  overflow: hidden;
  background: #ffffff;
  border-radius: 24px;
  border: 1px solid #e4e0dc;
  box-shadow: 0 30px 90px rgba(0,0,0,.22);
  position: relative;
}

.admin-modal-close {
  position: absolute;
  right: 16px;
  top: 14px;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid #e4e0dc;
  background: #f7f7f6;
  color: #24282d;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}

.admin-modal-content {
  padding: 28px;
  overflow: auto;
  max-height: calc(100vh - 48px);
}

.modal-form h2,
.iframe-modal-wrap h2 {
  margin: 0 46px 20px 0;
  color: #24282d;
}

.modal-form .btn {
  border-radius: 12px;
  background: #2f3337;
  border-color: #2f3337;
}

.iframe-modal-wrap iframe {
  width: 100%;
  height: 78vh;
  border: 0;
  border-radius: 14px;
  background: #fff;
}

@media(max-width: 980px) {
  .admin-shell {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    min-height: auto;
    position: static;
  }

  .admin-main {
    padding: 16px;
  }

  .admin-page-title,
  .dashboard-title {
    flex-direction: column;
    align-items: flex-start;
  }

  .admin-stat-grid,
  .admin-dashboard-grid {
    grid-template-columns: 1fr;
  }
}

/* v1.3.0 username login + true admin modals */
.forgot-link {
  display: block;
  margin-top: 18px;
  text-align: center;
  color: #59616a;
  font-weight: 700;
  text-decoration: none;
}

.forgot-link:hover {
  color: #24282d;
}

.modal-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.product-modal-form textarea {
  min-height: 130px;
}

.product-modal-form textarea[data-product-description] {
  min-height: 260px;
}

.modal-options-box {
  background: #f7f7f6;
  border: 1px solid #e4e0dc;
  border-radius: 16px;
  padding: 16px;
}

.modal-options-box h3 {
  margin: 0 0 12px;
  color: #24282d;
  font-size: 18px;
}

.admin-modal {
  width: min(980px, 100%);
}

.admin-modal-content {
  padding: 30px;
}

.iframe-modal-wrap,
.iframe-modal-wrap iframe {
  display: none !important;
}

@media(max-width: 760px) {
  .modal-grid-2 {
    grid-template-columns: 1fr;
  }
}

/* v1.3.1 professional modal forms and admin page fixes */
.admin-success-message {
  background: #e9f7ee;
  border: 1px solid #cdebd6;
  color: #2d6e45;
  border-radius: 16px;
  padding: 14px 18px;
  margin: 0 0 20px;
  font-weight: 700;
}

.quick-actions button {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: center;
  background: #f7f7f6;
  border: 1px solid #e4e0dc;
  border-radius: 16px;
  color: #2f3337;
  font-weight: 800;
  text-decoration: none;
  font-family: inherit;
  cursor: pointer;
}

.quick-actions button:hover {
  background: #e8ecef;
}

.modal-title-block {
  margin: 0 48px 22px 0;
}

.modal-title-block p {
  margin: 0 0 4px;
  color: #8a9097;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 800;
}

.modal-title-block h2 {
  margin: 0;
  color: #24282d;
  font-size: 30px;
  line-height: 1.1;
}

.modal-section-card {
  background: #fbfaf8;
  border: 1px solid #e4e0dc;
  border-radius: 18px;
  padding: 18px;
}

.modal-section-card h3 {
  color: #24282d;
  margin: 0 0 14px;
  font-size: 18px;
}

.friendly-field {
  display: grid;
  gap: 6px;
  margin-bottom: 14px;
}

.friendly-field span {
  color: #2f3337;
  font-size: 13px;
  font-weight: 800;
}

.friendly-field small,
.modal-help {
  color: #7b8289;
  font-size: 12px;
  line-height: 1.5;
  margin: -2px 0 4px;
}

.modal-check-row {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.modal-options-list {
  display: grid;
  gap: 0;
  max-height: 330px;
  overflow: auto;
}

.modal-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 20px;
}

.modal-actions .btn {
  border-radius: 12px;
  background: #2f3337;
  border-color: #2f3337;
}

.modal-cancel-btn {
  min-height: 45px;
  padding: 10px 18px;
  border-radius: 12px;
  background: #f2f3f3;
  color: #2f3337;
  border: 1px solid #d7dde2;
  font-weight: 800;
  cursor: pointer;
  font-family: inherit;
}

.announcement-modal-form textarea {
  min-height: 180px;
}

.enquiries-table td {
  vertical-align: top;
}

.enquiries-table td:nth-child(5) {
  max-width: 460px;
}

@media(max-width: 760px) {
  .modal-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* v1.3.2 uploads, image deletion, catalogue search and announcement delete */
.product-search-head {
  align-items: flex-end;
}

.admin-search-box {
  display: grid;
  gap: 5px;
  width: min(420px, 100%);
}

.admin-search-box span {
  color: #7b8289;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.admin-search-box input {
  min-height: 42px;
  border: 1px solid #d7dde2;
  border-radius: 14px;
  background: #f7f7f6;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
}

.admin-empty-state {
  margin-top: 18px;
  padding: 22px;
  border-radius: 16px;
  background: #f7f7f6;
  border: 1px dashed #d7dde2;
  color: #7b8289;
  text-align: center;
  font-weight: 700;
}

.image-upload-box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  background: #f2f3f3;
  border: 1px dashed #cfd6dc;
  border-radius: 16px;
  padding: 14px;
  margin: 10px 0 14px;
}

.image-upload-box strong,
.image-upload-box small {
  display: block;
}

.image-upload-box strong {
  color: #24282d;
}

.image-upload-box small {
  color: #7b8289;
  font-size: 12px;
}

.image-upload-box input[type="file"] {
  width: 100%;
  background: #fff;
  border: 1px solid #e4e0dc;
  border-radius: 12px;
  padding: 10px;
}

.image-preview-list {
  display: grid;
  gap: 10px;
  margin-bottom: 14px;
}

.image-preview-item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  background: #fff;
  border: 1px solid #e4e0dc;
  border-radius: 14px;
  padding: 8px;
}

.image-preview-item img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 10px;
}

.image-preview-item strong,
.image-preview-item small {
  display: block;
}

.image-preview-item strong {
  color: #24282d;
  font-size: 13px;
}

.image-preview-item small {
  color: #7b8289;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.image-preview-item button {
  min-height: 34px;
  border: 0;
  border-radius: 10px;
  background: #f7e9e7;
  color: #9a433d;
  font-weight: 800;
  cursor: pointer;
}

.announcement-actions {
  display: flex;
  gap: 12px;
  margin-top: 10px;
}

.announcement-actions a {
  font-weight: 800;
  text-decoration: none;
}

.announcement-actions .delete-link {
  color: #9a433d;
}

@media(max-width: 760px) {
  .product-search-head {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-search-box {
    width: 100%;
  }

  .image-preview-item {
    grid-template-columns: 50px 1fr;
  }

  .image-preview-item button {
    grid-column: 1 / -1;
  }
}


/* v1.4.0 analytics dashboard */
.analytics-card-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:22px}.analytics-card-grid article,.dashboard-sales-grid article{background:linear-gradient(135deg,#fff,#f7f7f6);border:1px solid #e4e0dc;border-radius:20px;box-shadow:0 18px 42px rgba(42,46,50,.06);padding:20px}.analytics-card-grid span,.dashboard-sales-grid span{display:block;color:#7b8289;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.analytics-card-grid strong,.dashboard-sales-grid strong{display:block;margin-top:9px;color:#24282d;font-size:25px;line-height:1.1}.analytics-grid{grid-template-columns:1.4fr .8fr}.simple-bar-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(56px,1fr);gap:12px;align-items:end;min-height:320px;overflow-x:auto;padding:10px 2px}.bar-item{display:grid;grid-template-rows:210px auto auto;gap:8px;min-width:64px;text-align:center}.bar-track{height:210px;background:#f2f3f3;border-radius:14px;display:flex;align-items:flex-end;overflow:hidden;border:1px solid #e4e0dc}.bar-track span{display:block;width:100%;background:linear-gradient(180deg,#cfd6dc,#8c969e);border-radius:14px 14px 0 0}.bar-item small{color:#7b8289;font-size:11px}.bar-item strong{color:#24282d;font-size:12px}.admin-success-message.warning{background:#fff7e6;border-color:#f4d196;color:#835c13}@media(max-width:1180px){.analytics-card-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.analytics-card-grid,.analytics-grid{grid-template-columns:1fr}}


/* v1.4.1 analytics layout, upload previews, coupon forms */
.analytics-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:stretch;margin-bottom:22px}.analytics-chart-panel{min-width:0}.analytics-chart-scroll{overflow-x:auto;padding-bottom:8px}.analytics-bars{display:flex;gap:8px;min-width:980px;align-items:end}.analytics-bar-item{min-width:58px;display:grid;gap:7px;justify-items:center;font-size:11px;color:#7b8289}.bar-track{height:160px;width:54px;background:#f2f3f3;border:1px solid #e4e0dc;border-radius:12px;display:flex;align-items:end;overflow:hidden}.bar-fill{width:100%;background:linear-gradient(180deg,#cfd6dc,#98a3ab);border-radius:12px 12px 0 0}.analytics-bar-item strong{color:#24282d;font-size:11px}.compact-table th,.compact-table td{padding:10px}.admin-table a{color:#2f3337;font-weight:800}
.product-search-head{align-items:flex-end}.admin-search-box{display:grid;gap:5px;width:min(420px,100%)}.admin-search-box span{color:#7b8289;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.admin-search-box input{min-height:42px;border:1px solid #d7dde2;border-radius:14px;background:#f7f7f6;padding:10px 14px;font-family:inherit;font-size:14px}.admin-empty-state{margin-top:18px;padding:22px;border-radius:16px;background:#f7f7f6;border:1px dashed #d7dde2;color:#7b8289;text-align:center;font-weight:700}
.image-upload-box{display:grid;gap:10px;background:#f2f3f3;border:1px dashed #cfd6dc;border-radius:16px;padding:14px;margin:10px 0 14px}.image-upload-box strong,.image-upload-box small{display:block}.image-upload-box strong{color:#24282d}.image-upload-box small{color:#7b8289;font-size:12px}.image-upload-box input[type=file]{width:100%;background:#fff;border:1px solid #e4e0dc;border-radius:12px;padding:10px}.image-preview-list{display:grid;gap:10px;margin-bottom:14px}.image-preview-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid #e4e0dc;border-radius:14px;padding:8px}.image-preview-item img{width:58px;height:58px;object-fit:cover;border-radius:10px}.image-preview-item strong,.image-preview-item small{display:block}.image-preview-item strong{color:#24282d;font-size:13px}.image-preview-item small{color:#7b8289;font-size:11px;overflow-wrap:anywhere}.image-preview-item button{min-height:34px;border:0;border-radius:10px;background:#f7e9e7;color:#9a433d;font-weight:800;cursor:pointer}
.announcement-actions{display:flex;gap:12px;margin-top:10px}.announcement-actions a{font-weight:800;text-decoration:none}.announcement-actions .delete-link,.table-delete-link{color:#9a433d!important}.table-delete-link{display:inline-flex;margin-left:8px;text-decoration:none}
.coupon-form{display:flex;gap:12px;align-items:end;margin:22px 0;padding:18px;border:1px solid #e4e0dc;border-radius:16px;background:#fbfaf8;flex-wrap:wrap}.coupon-form label{display:grid;gap:6px;min-width:260px}.coupon-form span{font-weight:800;color:#24282d;font-size:13px}.remove-coupon-link{color:#9a433d;font-weight:800;text-decoration:none;padding-bottom:10px}.coupon-message{padding:12px 14px;border-radius:12px;font-weight:800;margin-bottom:18px}.coupon-message.success{background:#e9f7ee;color:#2d6e45;border:1px solid #cdebd6}.coupon-message.error{background:#f7e9e7;color:#9a433d;border:1px solid #efcfcb}.basket-totals{margin:18px 0;display:grid;gap:8px}.basket-totals p{margin:0;display:flex;justify-content:space-between}
@media(max-width:1100px){.analytics-layout{grid-template-columns:1fr}}@media(max-width:760px){.product-search-head{align-items:stretch;flex-direction:column}.admin-search-box{width:100%}.image-preview-item{grid-template-columns:50px 1fr}.image-preview-item button{grid-column:1/-1}}

/* v1.4.4 action button fixes */
.admin-table td:last-child {
  white-space: nowrap;
}

.table-edit-btn,
.table-delete-link,
.admin-table .table-edit-btn,
.admin-table .table-delete-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 14px;
  border-radius: 12px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  vertical-align: middle;
}

.table-edit-btn {
  border: 1px solid #d7dde2;
  background: #e8ecef;
  color: #24282d !important;
  cursor: pointer;
}

.table-delete-link {
  margin-left: 8px;
  border: 1px solid #efcfcb;
  background: #f7e9e7;
  color: #9a433d !important;
}

.table-delete-link:hover,
.table-edit-btn:hover {
  filter: brightness(.97);
}

.admin-panel {
  overflow-x: auto;
}

.analytics-stats {
  grid-template-columns: repeat(6, minmax(160px, 1fr));
}

@media(max-width: 1350px) {
  .analytics-stats {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 760px) {
  .analytics-stats {
    grid-template-columns: 1fr;
  }
}

.admin-error-message {
  background: #f7e9e7;
  border: 1px solid #efcfcb;
  color: #9a433d;
  border-radius: 16px;
  padding: 14px 18px;
  margin: 0 0 20px;
  font-weight: 700;
}

/* v1.4.6 dashboard recovery */
.admin-error-message {
  background: #f7e9e7;
  border: 1px solid #efcfcb;
  color: #9a433d;
  border-radius: 16px;
  padding: 14px 18px;
  margin: 0 0 20px;
  font-weight: 700;
}

/* v1.4.8 analytics restore */
.analytics-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 20px;
  align-items: stretch;
  margin-bottom: 22px;
}

.analytics-chart-panel {
  min-width: 0;
}

.analytics-chart-scroll {
  overflow-x: auto;
  padding-bottom: 8px;
}

.analytics-bars {
  display: flex;
  gap: 8px;
  min-width: 980px;
  align-items: end;
}

.analytics-bar-item {
  min-width: 58px;
  display: grid;
  gap: 7px;
  justify-items: center;
  font-size: 11px;
  color: #7b8289;
}

.bar-track {
  height: 170px;
  width: 54px;
  background: #f2f3f3;
  border: 1px solid #e4e0dc;
  border-radius: 12px;
  display: flex;
  align-items: end;
  overflow: hidden;
}

.bar-fill {
  width: 100%;
  background: linear-gradient(180deg, #cfd6dc, #98a3ab);
  border-radius: 12px 12px 0 0;
}

.analytics-bar-item strong {
  color: #24282d;
  font-size: 11px;
}

.analytics-stats {
  grid-template-columns: repeat(6, minmax(150px, 1fr));
}

.dashboard-sales-cards {
  margin-bottom: 22px;
}

.admin-error-message {
  background: #f7e9e7;
  border: 1px solid #efcfcb;
  color: #9a433d;
  border-radius: 16px;
  padding: 14px 18px;
  margin: 0 0 20px;
  font-weight: 700;
}

@media(max-width: 1350px) {
  .analytics-stats {
    grid-template-columns: repeat(3, 1fr);
  }

  .analytics-layout {
    grid-template-columns: 1fr;
  }
}

@media(max-width: 760px) {
  .analytics-stats {
    grid-template-columns: 1fr;
  }
}

/* v1.4.9 fixes */
.admin-error-message {
  background: #f7e9e7;
  border: 1px solid #efcfcb;
  color: #9a433d;
  border-radius: 16px;
  padding: 14px 18px;
  margin: 0 0 20px;
  font-weight: 700;
}

.analytics-chart-scroll {
  min-height: 240px;
}

.analytics-bars {
  align-items: end;
}

.bar-track {
  height: 170px;
}

/* v1.5.0 product card and analytics polish */
.product-card-short-description {
  color: #687079;
  line-height: 1.7;
  margin: 12px 0 22px;
  font-size: 15px;
  border-top: 1px solid #ece7e2;
  border-bottom: 1px solid #ece7e2;
  padding: 14px 0;
}

.product-detail-price {
  margin-bottom: 4px;
}

.analytics-chart-scroll {
  min-height: 238px;
  overflow-x: auto;
}

.analytics-bars {
  align-items: end;
}

.bar-track {
  height: 170px;
}

.order-status-panel td:first-child {
  text-transform: none;
}

/* v1.5.2 restore product detail layout */
.product-detail-section {
  padding: 58px 20px 72px !important;
  background: #fff !important;
}

.product-detail-container {
  width: min(1180px, calc(100vw - 40px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, .9fr) !important;
  gap: 54px !important;
  align-items: start !important;
}

.product-gallery {
  width: 100% !important;
  min-width: 0 !important;
}

.product-main-image-wrap {
  width: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #f7f4f1 !important;
}

.product-main-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 650px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}

.product-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 16px !important;
}

.product-thumbs button {
  width: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  border: 1px solid #ded8d3 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
  cursor: pointer !important;
}

.product-thumbs img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.product-purchase-card {
  position: sticky !important;
  top: 24px !important;
  background: #fff !important;
  border: 1px solid #ded8d3 !important;
  border-radius: 18px !important;
  box-shadow: 0 24px 60px rgba(66, 51, 45, .08) !important;
  padding: 34px !important;
}

.product-purchase-card h1 {
  margin: 0 0 12px !important;
  font-size: 28px !important;
  line-height: 1.15 !important;
}

.product-detail-price {
  margin: 0 0 12px !important;
  font-size: 20px !important;
  font-weight: 800 !important;
}

.product-card-short-description {
  color: #687079 !important;
  line-height: 1.65 !important;
  margin: 12px 0 22px !important;
  font-size: 15px !important;
  border-top: 1px solid #ece7e2 !important;
  border-bottom: 1px solid #ece7e2 !important;
  padding: 14px 0 !important;
}

.product-option-field {
  display: grid !important;
  gap: 8px !important;
  margin-bottom: 18px !important;
}

.product-option-field span {
  font-weight: 800 !important;
  color: #1f2328 !important;
  font-size: 13px !important;
}

.product-option-field input,
.product-option-field select {
  width: 100% !important;
  min-height: 42px !important;
  border: 1px solid #d8d2cc !important;
  border-radius: 4px !important;
  padding: 10px 12px !important;
  font-family: inherit !important;
}

.product-order-total {
  margin: 22px 0 14px !important;
  color: #1f2328 !important;
}

.product-add-row {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
}

.product-add-row input[type="number"] {
  width: 72px !important;
  min-height: 44px !important;
  border: 1px solid #d8d2cc !important;
  border-radius: 4px !important;
  padding: 8px !important;
}

.product-add-row .btn {
  min-height: 44px !important;
  border-radius: 4px !important;
}

.klarna-note {
  margin-top: 18px !important;
  color: #8a8f96 !important;
  font-size: 13px !important;
}

.product-description-panel {
  width: min(1180px, calc(100vw - 40px)) !important;
  margin: 42px auto 0 !important;
  border-top: 1px solid #ded8d3 !important;
  padding-top: 28px !important;
}

.product-description-panel h2 {
  font-size: 18px !important;
  margin: 0 0 12px !important;
}

.product-description-panel p {
  color: #687079 !important;
  line-height: 1.7 !important;
}

/* v1.5.2 analytics graph fallback */
.analytics-chart-scroll {
  min-height: 250px !important;
  overflow-x: auto !important;
}

.analytics-bars {
  min-width: 720px !important;
  align-items: end !important;
}

.bar-track {
  height: 180px !important;
}

@media(max-width: 920px) {
  .product-detail-container {
    grid-template-columns: 1fr !important;
  }

  .product-purchase-card {
    position: static !important;
  }

  .product-main-image {
    height: auto !important;
    max-height: none !important;
  }
}

/* v1.5.4 product option field fix */
.product-option-field textarea {
  width: 100% !important;
  min-height: 96px !important;
  border: 1px solid #d8d2cc !important;
  border-radius: 4px !important;
  padding: 10px 12px !important;
  font-family: inherit !important;
  resize: vertical !important;
}

/* v1.5.6 clean product image manager */
.product-image-manager textarea[hidden],
.product-image-manager input[type="hidden"] {
  display: none !important;
}

.image-upload-box-clean {
  margin-top: 0 !important;
}

.image-preview-clean {
  margin-bottom: 22px !important;
}

.image-preview-card {
  grid-template-columns: 82px minmax(0, 1fr) auto !important;
  padding: 12px !important;
}

.image-preview-card img {
  width: 82px !important;
  height: 82px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  background: #f2f3f3 !important;
}

.image-preview-card small {
  color: #8a8f96 !important;
}

.image-empty-state {
  border: 1px dashed #d7dde2;
  background: #f7f7f6;
  color: #7b8289;
  border-radius: 14px;
  padding: 18px;
  font-weight: 700;
  text-align: center;
}

.image-preview-card button {
  min-width: 94px !important;
}

@media(max-width: 760px) {
  .image-preview-card {
    grid-template-columns: 70px 1fr !important;
  }

  .image-preview-card button {
    grid-column: 1 / -1 !important;
  }
}

/* v1.6.0 admin/card/shop/account/order updates */
.admin-sidebar{display:flex!important;flex-direction:column!important}.admin-side-nav{display:flex!important;flex-direction:column!important;gap:8px!important;flex:1!important}.admin-side-nav .logout-link{margin-top:auto!important}.admin-side-nav .maintenance-on{background:#e9f8ed!important;color:#20643a!important;border-color:#b9e6c8!important;font-weight:900!important}.admin-panel-head{background:linear-gradient(180deg,#f4f1ed 0%,#ebe4dc 100%)!important;border-radius:18px 18px 0 0!important;margin:-26px -26px 18px!important;padding:18px 24px!important;border-bottom:1px solid #ddd5cc!important}.admin-panel{overflow:hidden!important}.developed-by{text-align:center;color:#8a8f96;font-size:12px;margin:16px 0 0}.payment-card-body{padding:20px}.admin-payment-grid{display:grid;gap:22px}.maintenance-toggle-on{background:#2f9d57!important}.maintenance-preview-box{text-align:center;padding:30px}.maintenance-preview-box img{max-width:210px;margin:0 auto 16px;display:block}.maintenance-preview-box h2{font-size:30px;margin:12px 0}.maintenance-preview-box p{color:#687079;line-height:1.7}.maintenance-public-page{background:#f4efe7;min-height:100vh;margin:0;display:grid;place-items:center;font-family:Georgia,serif}.maintenance-public-wrap{padding:24px}.maintenance-card{max-width:720px;background:#fff;border:1px solid #e5dbcf;box-shadow:0 22px 70px rgba(93,72,51,.12);text-align:center;padding:54px 42px}.maintenance-card img{max-width:240px}.maintenance-divider{width:90px;height:2px;background:#c9a46a;margin:26px auto}.maintenance-card h1{font-size:42px;color:#3b2b22}.maintenance-card p{font-size:18px;line-height:1.7;color:#6f625a}.maintenance-card a{color:#a57939;font-weight:bold}.order-status-form select{min-height:38px;border:1px solid #d8d2cc;border-radius:10px;padding:7px 10px;background:#fff}.order-status-cards article:nth-child(4){background:#eefaf1!important}.cart-page-section,.checkout-section,.account-section,.account-auth-section{padding:60px 20px;background:#fbfaf8}.cart-page-container,.checkout-container,.account-container,.account-auth-wrap{width:min(1120px,100%);margin:0 auto}.cart-title-block p,.checkout-title p,.account-title p{letter-spacing:.14em;text-transform:uppercase;color:#9a8b80;font-weight:800}.cart-title-block h1,.checkout-title h1,.account-title h1{font-size:42px;margin:0 0 26px;color:#382a22}.cart-layout,.checkout-grid,.account-grid,.account-auth-wrap{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:26px;align-items:start}.cart-items-card,.cart-summary-card,.checkout-card,.account-card,.account-auth-card,.cart-empty-card,.thank-you-card{background:#fff;border:1px solid #e7dfd8;border-radius:22px;box-shadow:0 18px 50px rgba(76,55,42,.08);padding:26px}.cart-product-row{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #eee7e1}.cart-product-row:last-child{border-bottom:0}.cart-product-row img,.checkout-summary-line img{width:96px;height:96px;object-fit:cover;border-radius:16px;background:#f3f0ed}.cart-product-main h2{margin:0 0 6px;font-size:20px}.cart-product-main p{margin:0;color:#7b716a}.cart-product-main ul{margin:8px 0 0;padding-left:18px;color:#7b716a}.cart-product-actions{text-align:right;display:grid;gap:10px}.remove-cart-btn,.site-light-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:12px;border:1px solid #dccfc4;background:#fff7f2;color:#76513b;text-decoration:none;font-weight:800;padding:9px 14px}.checkout-main-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;border:0;border-radius:14px;background:#d7a77b;color:#fff;text-decoration:none;font-weight:900;padding:12px 18px}.continue-shopping-link{display:block;text-align:center;margin-top:14px;color:#7b716a}.cart-total-lines p,.cart-total-lines h3,.checkout-total-box p,.checkout-total-box h3{display:flex;justify-content:space-between;gap:16px}.clean-coupon{display:grid!important;gap:10px!important;align-items:stretch!important;background:#fbfaf8!important}.checkout-card label,.account-card label,.account-auth-card label{display:grid;gap:7px;margin-bottom:14px;color:#5f554e;font-weight:800}.checkout-card input,.account-card input,.account-auth-card input{min-height:44px;border:1px solid #ddd4cc;border-radius:12px;padding:10px 12px}.checkout-fields.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkout-fields.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.checkout-summary-line{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eee7e1}.checkout-summary-line img{width:64px;height:64px}.payment-choice{display:flex!important;grid-template-columns:none!important;gap:10px!important;align-items:center!important;border:1px solid #e7dfd8;border-radius:12px;padding:12px}.checkout-error{background:#fff1ee;border:1px solid #ffcfc4;color:#a4432e;border-radius:13px;padding:13px 15px;margin-bottom:18px}.account-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.account-order-list{display:grid;gap:12px}.account-order-list article{border:1px solid #eee7e1;border-radius:14px;padding:14px;display:flex;justify-content:space-between;gap:12px}.account-order-list span{display:block;color:#7b716a}.account-order-list em{font-style:normal;font-weight:800;color:#76513b}.thank-you-card{text-align:center;max-width:760px;margin:0 auto}.thank-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.order-ref{background:#fbfaf8;border:1px solid #eee7e1;border-radius:14px;padding:14px}.modal-section-card h3,.admin-panel-head h2{margin:0}@media(max-width:900px){.cart-layout,.checkout-grid,.account-grid,.account-auth-wrap{grid-template-columns:1fr}.cart-product-row{grid-template-columns:80px 1fr}.cart-product-actions{grid-column:1/-1;text-align:left;display:flex;justify-content:space-between}.checkout-fields.two,.checkout-fields.three{grid-template-columns:1fr}}


/* v1.6.1 fixes and refinements */
.admin-sidebar{display:flex!important;flex-direction:column!important}.admin-side-nav{display:flex!important;flex-direction:column!important;gap:8px!important;flex:1!important}.admin-side-nav .logout-link{margin-top:auto!important}.admin-side-nav .maintenance-on{background:#e9f8ed!important;color:#20643a!important;border-color:#b9e6c8!important;font-weight:900!important}
.admin-panel-head,.checkout-card-header{background:linear-gradient(180deg,#fff8dc 0%,#fff1bd 100%)!important;border-bottom:1px solid #eadf9a!important}.admin-panel-head{border-radius:18px 18px 0 0!important}.admin-panel-head .panel-header-note{margin:6px 0 0;color:#776f55;font-size:13px;line-height:1.5}.checkout-card-header{margin:-26px -26px 22px;padding:17px 26px;border-radius:22px 22px 0 0}.checkout-card-header.small{margin:20px -26px 16px}.checkout-card-header h2{margin:0!important}
.admin-confirm-backdrop{position:fixed;inset:0;background:rgba(30,28,26,.48);backdrop-filter:blur(4px);z-index:5000;display:none;align-items:center;justify-content:center;padding:22px}.admin-confirm-backdrop.open{display:flex}.admin-confirm-card{width:min(430px,100%);background:#fff;border:1px solid #e3d8cd;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.22);padding:28px;text-align:left}.admin-confirm-card h3{margin:0 0 10px;font-size:24px}.admin-confirm-card p{margin:0;color:#6d635c;line-height:1.6}.admin-confirm-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}
.admin-payment-grid{display:grid!important;grid-template-columns:repeat(2,minmax(360px,1fr));gap:24px!important;align-items:start}.payment-settings-card{min-height:100%;display:flex;flex-direction:column}.payment-card-body{padding:24px!important;display:grid;gap:10px}.payment-save-button{grid-column:1/-1;justify-self:end;min-width:240px}.bank-transfer-settings-card{grid-column:1/-1}.bank-transfer-choice{background:#fffaf0!important;border-color:#eadf9a!important}.payment-choice span{display:grid;gap:4px}.payment-choice small{font-size:12px;color:#7d715f;line-height:1.45}.payment-status-tag{display:inline-flex;margin-top:6px;border-radius:999px;background:#f3f1ed;border:1px solid #ded7d0;padding:5px 9px;font-size:12px;font-weight:800}.payment-status-tag.pending_payment{background:#fff7dc;border-color:#ecd883;color:#725d1b}.payment-status-tag.paid,.payment-status-tag.confirmed{background:#e9f8ed;border-color:#b9e6c8;color:#20643a}.inline-confirm-payment{margin-top:8px}.payment-confirm-btn{min-height:34px!important;padding:7px 10px!important;font-size:12px!important}
.cart-page-section,.checkout-section,.account-section,.account-auth-section{padding:34px 20px 46px!important}.cart-title-block h1,.checkout-title h1,.account-title h1{margin-bottom:18px!important}.cart-layout,.checkout-grid,.account-grid,.account-auth-wrap{gap:22px!important}.cart-items-card,.cart-summary-card,.checkout-card,.account-card,.account-auth-card,.cart-empty-card,.thank-you-card{padding:26px!important}.brand-header{padding-top:8px!important;padding-bottom:8px!important}.nav-bar{margin-bottom:0!important}
.checkout-main-btn,.site-light-btn,.remove-cart-btn{background:#f6eadf!important;color:#6d4a33!important;border:1px solid #dfc7b4!important;box-shadow:none!important}.checkout-main-btn:hover,.site-light-btn:hover,.remove-cart-btn:hover{background:#f1dfcf!important}.remove-cart-btn{border-radius:12px!important}.cart-product-actions{text-align:right!important}.cart-product-row{align-items:center!important}.cart-product-row img{box-shadow:0 12px 28px rgba(70,52,40,.08)}
.maintenance-admin-card .admin-panel-head{align-items:center!important}.maintenance-preview-box{padding:34px!important;background:#f7f3ec;text-align:center}.maintenance-preview-card{width:min(760px,100%);margin:0 auto;background:#fff;border:1px solid #e3d8c9;border-radius:22px;box-shadow:0 28px 80px rgba(88,67,48,.13);padding:48px 48px 44px}.maintenance-preview-card img{max-width:210px;margin:0 auto 20px;display:block}.maintenance-preview-card .maintenance-divider{width:86px;height:2px;background:#c39b5d;margin:22px auto}.maintenance-preview-card h2{font-size:34px;line-height:1.12;color:#3d2d24;margin:0 0 18px}.maintenance-preview-card p{max-width:620px;margin:0 auto 24px;color:#6d625b;line-height:1.75;font-size:16px}.maintenance-preview-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.maintenance-preview-actions a{color:#a57939;font-weight:800}.maintenance-toggle-on{background:#2f9d57!important;color:#fff!important}
.maintenance-modal-form .modal-section-card{padding:24px!important}.maintenance-modal-form input,.maintenance-modal-form textarea{font-size:15px!important;border-radius:14px!important}.maintenance-modal-form textarea{min-height:150px!important}.admin-modal-close{width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid #e1d8cf!important;background:#fff!important;color:#2b2f34!important;font-size:26px!important;line-height:1!important}
.maintenance-public-page{background:#f4efe7!important;min-height:100vh!important;margin:0!important;display:grid!important;place-items:center!important;font-family:Georgia,'Times New Roman',serif!important}.maintenance-public-wrap{width:100%;padding:32px!important;display:grid!important;place-items:center!important}.maintenance-card{width:min(760px,calc(100vw - 42px))!important;background:#fff!important;border:1px solid #e3d8c9!important;border-radius:22px!important;box-shadow:0 32px 90px rgba(88,67,48,.14)!important;text-align:center!important;padding:58px 54px 52px!important}.maintenance-card img{max-width:230px!important;margin:0 auto 24px!important;display:block!important}.maintenance-divider{width:86px!important;height:2px!important;background:#c39b5d!important;margin:22px auto 26px!important}.maintenance-card h1{font-size:42px!important;line-height:1.12!important;color:#3d2d24!important;margin:0 0 20px!important}.maintenance-card p{max-width:640px!important;margin:0 auto 24px!important;font-size:17px!important;line-height:1.75!important;color:#6d625b!important}.maintenance-card a{color:#a57939!important;font-weight:bold!important}
.order-status-cards{grid-template-columns:repeat(5,minmax(150px,1fr))!important}.order-status-cards article:first-child{background:#fff9df!important}.order-status-form select{min-height:38px;border:1px solid #d8d2cc;border-radius:10px;padding:7px 10px;background:#fff}
.developed-by{text-align:center;color:#8a8f96;font-size:12px;margin:16px 0 0}.admin-login-card .developed-by{border-top:1px solid #eee7e1;padding-top:14px}
@media(max-width:1100px){.admin-payment-grid{grid-template-columns:1fr}.order-status-cards{grid-template-columns:repeat(2,1fr)!important}.maintenance-preview-card,.maintenance-card{padding:38px 28px!important}}
@media(max-width:760px){.order-status-cards{grid-template-columns:1fr!important}.maintenance-card h1,.maintenance-preview-card h2{font-size:30px!important}.cart-page-section,.checkout-section,.account-section,.account-auth-section{padding:24px 16px 38px!important}}


/* v1.6.2 fixes */
.strip-inner{display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:18px!important;align-items:center!important}.socials{justify-self:start!important}.socials a{color:#fff!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:18px!important;height:20px!important;font-weight:800!important;letter-spacing:0!important}.strip-email{justify-self:end!important;text-align:right!important;white-space:nowrap!important}.strip-address{text-align:center!important}.mini-icon{width:18px;height:18px;fill:currentColor;vertical-align:middle;margin-right:6px}.admin-side-nav .logout-link{margin-top:0!important;order:999!important}.admin-user-card span{text-transform:none!important}.admin-panel-head,.checkout-card-header,.account-card-header{background:linear-gradient(180deg,#fff9dc 0%,#fff1bd 100%)!important;border-bottom:1px solid #eadf9a!important}.account-card-header{margin:-26px -26px 22px!important;padding:17px 26px!important;border-radius:22px 22px 0 0!important}.account-card-header h2{margin:0!important;color:#3f3328!important}.styled-customer-modal input,.styled-customer-modal textarea,.tracking-modal input,.tracking-modal textarea{background:#fff!important;border:1px solid #ddd4cc!important;border-radius:12px!important;min-height:44px!important;padding:10px 12px!important;font:inherit!important}.tracking-modal textarea{min-height:96px!important}.styled-customer-modal .modal-section-card,.tracking-modal .modal-section-card{background:#fffdf9!important}.account-orders-card{min-width:0}.rich-orders article{display:block!important;padding:0!important;overflow:hidden}.account-order-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:16px;border-bottom:1px solid #eee7e1}.account-order-items{display:grid;gap:8px;padding:14px 16px;background:#fffdf9}.account-order-items div{display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center}.account-order-items img{width:46px;height:46px;object-fit:cover;border-radius:10px;background:#f3f0ed}.tracking-card{margin:0 16px 16px;background:#f5fbf7;border:1px solid #cdebd6;border-radius:14px;padding:13px;display:grid;gap:5px}.tracking-card strong{color:#20643a}.tracking-card a{color:#76513b;font-weight:800}.payment-status-tag.paid{background:#e9f8ed!important;border-color:#b9e6c8!important;color:#20643a!important}.inline-confirm-payment,.payment-confirm-btn{display:none!important}.thank-you-section{padding-top:40px!important}.bank-transfer-thanks{margin:18px auto;max-width:520px;background:#fff7dc;border:1px solid #ecd883;border-radius:14px;padding:14px;display:grid;gap:4px;color:#725d1b}.styled-announcement-list{padding:20px;display:grid;gap:16px}.styled-announcement-list article{background:#fff;border:1px solid #eee7e1;border-radius:16px;padding:18px}.styled-announcement-list strong,.styled-announcement-list span{display:block}.styled-announcement-list span{color:#7b716a;font-size:13px;margin-top:4px}.styled-delete-form{margin-top:12px}.admin-confirm-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(36,30,27,.45);display:none;align-items:center;justify-content:center;padding:20px}.admin-confirm-backdrop.open{display:flex}.admin-confirm-card{width:min(440px,100%);background:#fff;border:1px solid #eadfd5;border-radius:22px;box-shadow:0 28px 80px rgba(36,30,27,.18);padding:24px}.admin-confirm-card h3{margin:0 0 8px;color:#3d2d24}.admin-confirm-card p{margin:0 0 18px;color:#6d625b;line-height:1.6}.admin-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.top-strip{overflow:hidden!important}@media(max-width:800px){.strip-inner{grid-template-columns:1fr!important;text-align:center!important}.socials,.strip-email{justify-self:center!important}.account-order-head{display:grid}.admin-confirm-actions{justify-content:stretch}.admin-confirm-actions button{flex:1}}



/* v1.6.3 fixes and layout polish */

/* product add to basket button, lighter style */
.product-add-row .btn,
.checkout-button-light,
.site-light-btn {
  background: #f6d9c8 !important;
  color: #5f4638 !important;
  border: 1px solid #e9c3ae !important;
  box-shadow: none !important;
  border-radius: 12px !important;
  font-weight: 800 !important;
}

.product-add-row .btn:hover,
.checkout-button-light:hover,
.site-light-btn:hover {
  background: #f1ccb8 !important;
  color: #4b352a !important;
}

/* compact basket/cart */
.compact-shop-page {
  padding-top: 34px !important;
}

.basket-section {
  background: #fbfaf8;
  padding: 36px 18px 64px;
}

.basket-container {
  width: min(1120px, calc(100vw - 36px));
  margin: 0 auto;
}

.basket-title {
  text-align: center;
  margin-bottom: 24px;
}

.basket-title h1 {
  margin: 0 0 8px;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1;
}

.basket-title p {
  margin: 0;
  color: #7f756d;
}

.basket-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 24px;
  align-items: start;
}

.basket-items-card,
.basket-summary-card,
.basket-empty-card {
  background: #fff;
  border: 1px solid #e5ddd5;
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(66,51,45,.07);
  padding: 22px;
}

.basket-item-row {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid #eee8e2;
}

.basket-item-row:first-child {
  padding-top: 0;
}

.basket-item-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.basket-item-image {
  width: 96px;
  height: 96px;
  border-radius: 14px;
  object-fit: cover;
  background: #f2eee9;
}

.basket-item-main h2 {
  margin: 0 0 6px;
  font-size: 18px;
}

.basket-item-main span,
.basket-options {
  color: #7a7169;
  font-size: 14px;
}

.basket-options {
  margin: 8px 0 0;
  padding-left: 18px;
}

.basket-item-side {
  display: grid;
  justify-items: end;
  gap: 10px;
}

.remove-cart-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 14px;
  border-radius: 999px;
  background: #fff4ef;
  color: #9d4f35;
  border: 1px solid #f0cfc3;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
}

.basket-summary-card h2 {
  margin: 0 0 16px;
}

.improved-coupon-form {
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  margin: 0 0 18px !important;
}

.improved-coupon-form label {
  min-width: 0 !important;
}

.improved-coupon-form .remove-coupon-link {
  grid-column: 1 / -1;
}

.cart-notice {
  margin: 0 auto 18px;
  width: min(720px, 100%);
  padding: 13px 16px;
  border-radius: 14px;
  text-align: center;
  font-weight: 800;
}

.cart-notice.success {
  background: #edf8f1;
  color: #2f6e46;
  border: 1px solid #cdebd6;
}

.cart-notice.error {
  background: #fff1ee;
  color: #a4432e;
  border: 1px solid #ffcfc4;
}

.basket-totals p,
.basket-totals h3 {
  display: flex;
  justify-content: space-between;
  gap: 18px;
}

.checkout-button-light {
  display: flex;
  justify-content: center;
  text-decoration: none;
  min-height: 46px;
  align-items: center;
  margin-top: 18px;
}

/* my account stacked */
.account-stacked-container {
  width: min(1120px, calc(100vw - 36px));
  margin: 0 auto;
}

.account-stacked-container .account-grid {
  display: block !important;
}

.account-details-wide,
.account-orders-wide {
  width: 100%;
  margin-bottom: 24px;
}

.pastel-card-header,
.account-card-header {
  background: linear-gradient(135deg, #fff2bc, #fff8dd) !important;
  border-bottom: 1px solid #eadfae !important;
}

.account-card-header span {
  display: block;
  color: #766f61;
  margin-top: 4px;
  font-size: 14px;
}

.account-details-form {
  padding: 22px;
}

.stacked-orders {
  display: grid;
  gap: 16px;
  padding: 22px;
}

.stacked-orders article {
  background: #fff;
  border: 1px solid #e7ded5;
  border-radius: 16px;
  padding: 18px;
}

.account-order-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.account-order-items {
  margin-top: 14px;
  display: grid;
  gap: 10px;
}

.account-order-items div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.account-order-items img {
  width: 54px;
  height: 54px;
  border-radius: 10px;
  object-fit: cover;
}

/* top strip social icon fix */
.top-strip .strip-inner {
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  align-items: center !important;
  gap: 18px !important;
  min-height: 38px !important;
}

.fixed-socials,
.socials {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  height: 100% !important;
}

.fixed-socials a,
.socials a {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 11px !important;
  text-decoration: none !important;
  overflow: hidden !important;
}

.fixed-socials a span,
.socials a span {
  display: block;
  line-height: 1;
}

.strip-email {
  white-space: nowrap;
}

/* checkout overlap fix */
.checkout-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 420px) !important;
  gap: 28px !important;
  align-items: start !important;
}

.checkout-summary {
  position: sticky;
  top: 18px;
  align-self: start;
}

.checkout-summary-line {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) auto !important;
  gap: 12px !important;
  align-items: center !important;
}

.checkout-summary-line img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 10px;
}

.checkout-card-header.small {
  margin-top: 22px !important;
  padding-top: 18px !important;
  border-top: 1px solid #eee8e2 !important;
}

.payment-choice {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 10px 0 !important;
  padding: 14px !important;
  border: 1px solid #e7ded5 !important;
  border-radius: 14px !important;
  background: #fff !important;
}

.payment-choice span {
  display: grid;
  gap: 4px;
}

.payment-choice small {
  color: #806c5f;
  line-height: 1.45;
}

.checkout-main-btn {
  width: 100%;
  margin-top: 18px;
}

/* site info/contact modals */
.site-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(40, 34, 30, .48);
  backdrop-filter: blur(4px);
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
}

.site-modal-backdrop.open {
  display: flex;
}

.site-modal-card {
  width: min(680px, 100%);
  max-height: min(86vh, 760px);
  overflow: auto;
  background: #fffdf9;
  border: 1px solid #eadfd3;
  border-radius: 24px;
  box-shadow: 0 28px 80px rgba(45, 36, 30, .2);
  padding: 34px;
  position: relative;
}

.site-modal-close {
  position: absolute;
  right: 18px;
  top: 16px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 999px;
  background: #f6eee7;
  color: #6b5144;
  font-size: 24px;
  cursor: pointer;
}

.site-modal-heading p {
  margin: 0 0 8px;
  color: #b78d52;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 900;
  font-size: 12px;
}

.site-modal-heading h2 {
  margin: 0 0 18px;
  font-size: clamp(26px, 4vw, 38px);
}

.site-modal-copy p {
  color: #6e635c;
  line-height: 1.75;
}

.site-contact-form {
  display: grid;
  gap: 14px;
}

.site-contact-form label {
  display: grid;
  gap: 7px;
  font-weight: 800;
  color: #3e332d;
}

.site-contact-form input,
.site-contact-form textarea {
  width: 100%;
  border: 1px solid #ded2c7;
  border-radius: 12px;
  padding: 12px 13px;
  font: inherit;
}

.site-contact-form textarea {
  min-height: 130px;
}

/* category/settings admin helpers */
.settings-form {
  padding: 22px;
}

.subhead {
  margin-top: 26px !important;
}

/* user modal spacing */
.styled-user-modal .modal-section-card {
  min-height: 100%;
}

@media (max-width: 960px) {
  .basket-layout,
  .checkout-grid {
    grid-template-columns: 1fr !important;
  }

  .checkout-summary {
    position: static;
  }

  .basket-item-row {
    grid-template-columns: 78px 1fr;
  }

  .basket-item-side {
    grid-column: 1 / -1;
    justify-items: stretch;
    grid-template-columns: 1fr auto;
    align-items: center;
  }

  .top-strip .strip-inner {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .account-order-head {
    display: grid;
  }
}


/* v1.6.5 rebuilt fixes - safe CSS only */
.order-status-pill,
.status-pill,
.role-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 118px !important;
  min-height: 34px !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.status-pending-payment { background:#fff3cf !important; color:#8a6417 !important; border:1px solid #f0d891 !important; }
.status-ordered { background:#e8f2ff !important; color:#416789 !important; border:1px solid #cfe2f5 !important; }
.status-pending { background:#fff0dc !important; color:#8a5d2d !important; border:1px solid #efcf9d !important; }
.status-being-made { background:#fff0e8 !important; color:#8b5a43 !important; border:1px solid #efcbb8 !important; }
.status-shipped { background:#e9f7ee !important; color:#2f6e46 !important; border:1px solid #cdebd6 !important; }
.status-complete { background:#edf7e8 !important; color:#4d6f37 !important; border:1px solid #d6ebc9 !important; }
.status-cancelled { background:#f8e8e8 !important; color:#934e4e !important; border:1px solid #e8caca !important; }
.status-refunded { background:#eeedf7 !important; color:#66618b !important; border:1px solid #d9d6ed !important; }
.status-default { background:#f1f1ef !important; color:#6d6d68 !important; border:1px solid #ddddda !important; }

.admin-table.refined td .status-pill,
.admin-table.refined td .order-status-pill {
  width: 100% !important;
  max-width: 160px !important;
}

.maker-feature {
  display: grid;
  grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
  gap: 26px;
  align-items: start;
}

.maker-feature img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 24px;
  border: 1px solid #eadfd3;
  box-shadow: 0 18px 45px rgba(66,51,45,.12);
}

.maker-feature h3,
.modal-rich-copy h3 {
  font-family: var(--font-heading, inherit);
  color: #3d2e28;
  font-size: 26px;
  margin: 0 0 12px;
}

.modal-rich-copy .lead {
  font-size: 18px;
  color: #6f5d54;
  line-height: 1.7;
  margin-bottom: 18px;
}

.modal-rich-copy section {
  background: #fffaf2;
  border: 1px solid #eadfd3;
  border-radius: 18px;
  padding: 18px;
  margin: 14px 0;
}

.modal-rich-copy p,
.maker-feature p {
  color: #675a53;
  line-height: 1.75;
}

.modal-rich-copy ul {
  margin: 10px 0 0;
  padding-left: 22px;
  color: #675a53;
  line-height: 1.75;
}

.site-info-modal-content .site-light-btn {
  margin-top: 18px;
}

.checkout-empty-card {
  text-align: center;
  width: min(620px, 100%);
  margin: 0 auto;
}

.checkout-empty-card h1 {
  margin-top: 0;
  font-size: clamp(34px, 4vw, 52px);
}

@media(max-width: 760px) {
  .maker-feature {
    grid-template-columns: 1fr;
  }
}

/* v1.6.6 product/customer/admin fixes */
.image-preview-card button,
[data-delete-uploaded-image] {
  background: #fff3ee !important;
  color: #9d4f35 !important;
  border: 1px solid #efc9bd !important;
  border-radius: 999px !important;
  min-width: 76px !important;
  padding: 8px 14px !important;
  font-weight: 850 !important;
}

.status-out-stock {
  background:#ffe9e6 !important;
  color:#9f3d32 !important;
  border:1px solid #f3c3bd !important;
}

.admin-mini-sale,
.product-sale-badge {
  display:inline-flex;
  margin-left:8px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff1c9;
  color:#7b5a16;
  border:1px solid #ead18c;
  font-size:12px;
  font-weight:850;
}

.price-was {
  text-decoration: line-through;
  color:#9a918b;
  margin-right:8px;
}

.product-sale-banner,
.product-stock-warning {
  padding: 12px 14px;
  border-radius: 14px;
  margin: 12px 0 16px;
  font-weight: 850;
}

.product-sale-banner {
  background:#fff3cf;
  color:#8a6417;
  border:1px solid #f0d891;
}

.product-stock-warning {
  background:#ffe9e6;
  color:#9f3d32;
  border:1px solid #f3c3bd;
}

.btn.disabled,
.btn:disabled {
  opacity:.65;
  cursor:not-allowed;
}

.product-table-controls {
  display:flex;
  gap:14px;
  align-items:end;
  flex-wrap:wrap;
}

.product-tools-head {
  align-items:flex-end !important;
}

.compact-select select {
  min-width: 95px;
  min-height: 42px;
  border:1px solid #d8d2cc;
  border-radius:14px;
  padding:8px 12px;
}

.product-pagination {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  margin: 18px 0 4px;
}

.product-pagination button:disabled {
  opacity:.45;
  cursor:not-allowed;
}

.admin-side-nav details {
  border:1px solid #eadfd3;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  margin-bottom:8px;
}

.admin-side-nav summary {
  cursor:pointer;
  padding:13px 14px;
  font-weight:850;
  color:#51463f;
}

.admin-side-nav details a {
  margin:6px 8px !important;
}

@media(max-width:760px){
  .product-table-controls { display:grid; width:100%; }
}


/* v1.6.7 final batch polish */
.product-tools-head,
.product-search-head {
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:18px 22px !important;
  min-height:0 !important;
}

.product-table-controls {
  display:flex !important;
  align-items:end !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}

.product-table-controls .admin-search-box {
  display:grid !important;
  gap:6px !important;
  margin:0 !important;
}

.product-table-controls .admin-search-box input {
  min-width:260px !important;
}

.product-table-controls .compact-select select {
  min-width:92px !important;
  width:92px !important;
}

.sale-pill-card,
.sale-pill-main {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ffe2df;
  color:#9f3d32;
  border:1px solid #f4bbb4;
  border-radius:999px;
  padding:6px 12px;
  font-weight:900;
  font-size:12px;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.sale-pill-main {
  margin-left:10px;
}

.product-title-row {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.product-purchase-card input,
.product-purchase-card select,
.product-purchase-card textarea,
.product-option-field input,
.product-option-field select,
.product-option-field textarea {
  width:100%;
  min-height:48px;
  border:1px solid #ddcfc3;
  border-radius:12px;
  background:#fffdfb;
  padding:12px 14px;
  font:inherit;
  color:#4a3b34;
  box-shadow:0 8px 22px rgba(82,64,54,.04);
}

.product-option-field {
  display:grid;
  gap:8px;
  margin:16px 0;
}

.product-option-field span {
  font-weight:850;
  color:#2d2927;
}

.product-option-field select {
  appearance:none;
  background-image:linear-gradient(45deg, transparent 50%, #8d7467 50%), linear-gradient(135deg, #8d7467 50%, transparent 50%);
  background-position:calc(100% - 18px) 21px, calc(100% - 12px) 21px;
  background-size:6px 6px, 6px 6px;
  background-repeat:no-repeat;
  padding-right:42px;
}

.product-purchase-card input:focus,
.product-purchase-card select:focus,
.product-purchase-card textarea:focus {
  outline:none;
  border-color:#c6a57d;
  box-shadow:0 0 0 4px rgba(198,165,125,.13);
}

.full-width-add {
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
}

.full-width-add .btn {
  width:100% !important;
  min-height:48px !important;
}

.order-total-row {
  margin:22px 0 12px;
  font-size:16px;
}

.disabled-options {
  opacity:.58;
  pointer-events:none;
}

.greyed-options-note {
  padding:14px;
  border:1px dashed #dacdc3;
  border-radius:14px;
  background:#f7f3ef;
  color:#7e7169;
  margin:16px 0;
}

.admin-side-nav.grouped-admin-nav {
  display:grid;
  gap:8px;
}

.admin-side-nav.grouped-admin-nav details {
  border:1px solid #e8ded5;
  border-radius:14px;
  background:#fffdfb;
  overflow:hidden;
}

.admin-side-nav.grouped-admin-nav summary {
  cursor:pointer;
  padding:13px 14px;
  font-weight:900;
  color:#443a35;
  list-style:none;
}

.admin-side-nav.grouped-admin-nav summary::-webkit-details-marker { display:none; }

.admin-side-nav.grouped-admin-nav details a {
  margin:6px 8px !important;
}

.admin-side-nav.grouped-admin-nav > a.logout-link {
  margin-top:8px !important;
}

.tall-textarea {
  min-height:220px !important;
}

.admin-help-copy {
  color:#7b716a;
  margin:0 0 16px;
}

.image-preview-card button,
[data-delete-uploaded-image] {
  background:#fff3ee !important;
  color:#9d4f35 !important;
  border:1px solid #efc9bd !important;
  border-radius:999px !important;
  padding:8px 14px !important;
  min-width:76px !important;
  font-weight:850 !important;
}

.status-out-stock {
  background:#ffe9e6 !important;
  color:#9f3d32 !important;
  border:1px solid #f3c3bd !important;
}

.product-stock-warning {
  background:#ffe9e6;
  color:#9f3d32;
  border:1px solid #f3c3bd;
  border-radius:14px;
  padding:13px 15px;
  font-weight:850;
  margin:16px 0;
}

.product-sale-banner {
  background:#fff3cf;
  color:#8a6417;
  border:1px solid #f0d891;
  border-radius:14px;
  padding:13px 15px;
  font-weight:850;
  margin:16px 0;
}

.price-was {
  text-decoration:line-through;
  color:#9a918b;
  margin-right:8px;
}

@media(max-width:760px){
  .product-tools-head,
  .product-search-head,
  .product-table-controls {
    display:grid !important;
    align-items:stretch !important;
  }
  .product-table-controls .admin-search-box input,
  .product-table-controls .compact-select select {
    min-width:0 !important;
    width:100% !important;
  }
}

/* v1.3.39 customer account auth cards */
.auth-page-section{
  padding:54px 20px 82px!important;
  background:linear-gradient(180deg,#fbfaf8 0%,#f6efe8 100%)!important;
}
.auth-single-wrap{
  display:flex!important;
  justify-content:center!important;
  max-width:780px!important;
  margin:0 auto!important;
  width:100%!important;
  grid-template-columns:none!important;
}
.auth-card-polished{
  width:100%!important;
  max-width:680px!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:26px!important;
  border:1px solid #e4d8ce!important;
  background:#fff!important;
  box-shadow:0 22px 58px rgba(78,54,39,.11)!important;
}
.auth-card-header{
  padding:30px 32px 22px!important;
  background:linear-gradient(180deg,#fff8f2 0%,#fbf1e8 100%)!important;
  border-bottom:1px solid #eaded3!important;
  text-align:center!important;
}
.auth-card-header .small-heading{
  margin:0 0 8px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:#a78770!important;
}
.auth-card-header h1{
  margin:0 0 10px!important;
  color:#3d2b21!important;
  font-size:34px!important;
  line-height:1.15!important;
}
.auth-card-header p{
  margin:0 auto!important;
  max-width:520px!important;
  color:#756a62!important;
  line-height:1.65!important;
}
.auth-form{
  display:grid!important;
  gap:17px!important;
  padding:26px 32px 12px!important;
}
.auth-form label{
  display:grid!important;
  gap:8px!important;
  margin:0!important;
  color:#5b5048!important;
  font-weight:850!important;
}
.auth-form input{
  min-height:48px!important;
  border-radius:15px!important;
  border:1px solid #ddd1c8!important;
  background:#fffdfb!important;
  padding:11px 13px!important;
  font-size:15px!important;
  outline:none!important;
}
.auth-form input:focus{
  border-color:#cfa987!important;
  box-shadow:0 0 0 4px rgba(207,169,135,.18)!important;
}
.auth-card-polished .checkout-main-btn{
  min-height:50px!important;
  border-radius:16px!important;
  background:#d4a077!important;
  color:#fff!important;
  border:0!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.auth-card-polished .checkout-main-btn:hover{
  background:#c89167!important;
}
.auth-card-footer{
  padding:10px 32px 28px!important;
  text-align:center!important;
}
.auth-card-footer-topless{padding-top:26px!important;}
.account-forgot-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  color:#7a5842!important;
  background:#f8eee6!important;
  border:1px solid #ead9ca!important;
  font-weight:850!important;
  text-decoration:none!important;
  font-size:14px!important;
}
.account-forgot-link:hover{
  background:#f2e1d3!important;
  text-decoration:none!important;
}
.account-login-return{
  margin-top:16px!important;
  text-decoration:none!important;
}
.auth-card-polished .checkout-error,.auth-card-polished .coupon-message{
  margin:22px 32px 0!important;
}
@media(max-width:700px){
  .auth-page-section{padding:30px 16px 54px!important;}
  .auth-card-header{padding:26px 22px 20px!important;}
  .auth-card-header h1{font-size:28px!important;}
  .auth-form{padding:22px 22px 10px!important;}
  .auth-card-footer{padding:10px 22px 24px!important;}
}

/* v1.3.67 checkout account creation */
.checkout-account-create{margin-top:22px;padding:18px;border:1px solid #eadfd5;border-radius:18px;background:linear-gradient(180deg,#fffdf9 0%,#fbf7f2 100%);box-shadow:0 12px 28px rgba(70,52,40,.05)}
.checkout-toggle-row{display:flex!important;align-items:center;gap:10px;margin:0 0 8px!important;font-weight:800;color:#2d3035}.checkout-toggle-row input{width:18px;height:18px;accent-color:#d6b08f}.checkout-account-note{margin:0 0 14px;color:#7b716a;font-size:14px;line-height:1.55}.checkout-account-fields{display:grid;gap:14px}.checkout-account-fields input{background:#fff!important}.checkout-account-create:has(.checkout-toggle-row input:not(:checked)) .checkout-account-fields{opacity:.58}.checkout-account-create:has(.checkout-toggle-row input:not(:checked)) .checkout-account-fields input{background:#f7f4f1!important}
@media(max-width:760px){.checkout-account-create{padding:15px}.checkout-toggle-row{align-items:flex-start}}

/* v1.3.68 checkout account section layout repair */
.checkout-container{
  width:min(1240px, calc(100% - 40px)) !important;
}
.checkout-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(340px, 390px) !important;
  gap:30px !important;
  align-items:start !important;
}
.checkout-grid > .checkout-card,
.checkout-grid > .checkout-summary{
  min-width:0 !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.checkout-card input,
.checkout-card select,
.checkout-card textarea{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.checkout-fields.two{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
}
.checkout-fields.three{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
}
.checkout-account-create{
  max-width:100% !important;
  overflow:hidden !important;
}
.checkout-summary{
  width:100% !important;
  justify-self:stretch !important;
}
@media(max-width:1100px){
  .checkout-container{width:min(760px, calc(100% - 32px)) !important;}
  .checkout-grid{grid-template-columns:1fr !important;gap:22px !important;}
  .checkout-summary{position:static !important;top:auto !important;}
}
@media(max-width:680px){
  .checkout-fields.two,.checkout-fields.three{grid-template-columns:1fr !important;}
  .checkout-container{width:min(100%, calc(100% - 24px)) !important;}
}

/* v1.3.114 header/footer polish */
.top-strip .socials a,
.top-strip .fixed-socials a{
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  transition:background .18s ease, transform .18s ease!important;
}
.top-strip .socials a:hover,
.top-strip .fixed-socials a:hover{
  background:rgba(255,255,255,.22)!important;
  transform:translateY(-1px)!important;
}
.top-strip .socials svg,
.top-strip .fixed-socials svg{
  width:14px!important;
  height:14px!important;
  display:block!important;
  fill:currentColor!important;
}
.header-icons{gap:14px!important;right:70px!important;top:62px!important;align-items:center!important}
.header-icons a:not(.basket-count){
  width:28px!important;
  height:28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#161616!important;
}
.header-icons svg{width:24px!important;height:24px!important;fill:currentColor!important}
.header-icons .basket-count{font-size:16px!important;font-weight:700!important;color:#161616!important;margin-left:0!important}
.footer-grid{align-items:center!important}
.footer-logo{display:flex;align-items:center;justify-content:center;min-height:170px}
.footer-logo img{width:295px;max-width:100%;height:auto;filter:none;opacity:.98}
.site-footer,.site-footer h3,.site-footer a,.site-footer p,.footer-bottom{color:#fff!important}
.site-footer a{border-color:rgba(255,255,255,.48)!important}
.site-footer a:hover{color:#fff8dc!important;border-color:rgba(255,255,255,.8)!important}
@media(max-width:800px){.header-icons{right:15px!important;top:52px!important}.footer-logo{min-height:120px}.footer-logo img{width:230px}}

.footer-bottom,.footer-bottom span,.footer-bottom a{color:#6b6b6b!important}
.footer-bottom .footer-credit-link{color:#6b6b6b!important}


/* v1.3.134 analytics profit display/footer credit fixes */
.analytics-chart-panel .analytics-bar-item{
  min-width:64px!important;
  gap:6px!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-align:center!important;
}
.analytics-chart-panel .analytics-bar-item span,
.analytics-chart-panel .analytics-bar-item strong,
.analytics-chart-panel .analytics-bar-item small{
  display:block!important;
  width:100%!important;
  min-height:15px!important;
  font-size:11px!important;
  line-height:15px!important;
  margin:0!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.analytics-chart-panel .analytics-bar-item .profit-label{
  color:#5f9b72!important;
  font-weight:800!important;
}
.analytics-chart-panel .revenue-fill{
  background:linear-gradient(180deg,#f4d56a,#e0b93f)!important;
}
.analytics-chart-panel .profit-fill{
  background:linear-gradient(180deg,#9fcfaf,#6fa882)!important;
}
.analytics-chart-panel .bar-track{
  width:18px!important;
  border-radius:9px!important;
}
.analytics-chart-panel .bar-pair{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:6px!important;
}
.admin-table th.profit-cell,
.admin-table td.profit-cell{
  text-align:right!important;
}
.footer-bottom,
.footer-bottom span,
.footer-bottom a,
.footer-bottom .footer-credit-link{
  color:#111!important;
}


/* v1.3.135 analytics/product profit display refinements */
.analytics-chart-panel .revenue-fill,
.analytics-chart-panel .bar-fill.revenue-fill{
  background:#e8c24f!important;
  background-image:linear-gradient(180deg,#f0d469 0%,#d7aa32 100%)!important;
}
.analytics-chart-panel .profit-fill,
.analytics-chart-panel .bar-fill.profit-fill{
  background:#6fa882!important;
  background-image:linear-gradient(180deg,#9fcfaf 0%,#6fa882 100%)!important;
}
.analytics-chart-panel .analytics-bar-item span,
.analytics-chart-panel .analytics-bar-item strong,
.analytics-chart-panel .analytics-bar-item small{
  font-size:10px!important;
  line-height:14px!important;
  min-height:14px!important;
  letter-spacing:0!important;
  text-align:center!important;
}
.analytics-chart-panel .analytics-bar-item strong{font-weight:900!important;color:#24282d!important}
.analytics-chart-panel .analytics-bar-item .profit-label{color:#2f8b55!important;font-weight:900!important}
.order-status-panel .compact-table tr:first-child th{display:none!important}
.order-status-panel .compact-table td{padding:13px 14px!important;font-size:13px!important}
.order-status-panel .compact-table td:last-child{text-align:right!important;font-weight:900!important;color:#5f6972!important}
.admin-table th.profit-cell,
.admin-table td.profit-cell{
  text-align:right!important;
  width:140px!important;
  min-width:140px!important;
  padding-left:28px!important;
  padding-right:28px!important;
  white-space:nowrap!important;
}
.admin-table td.product-profit-cell{padding-left:36px!important;padding-right:36px!important}
.footer-bottom,.footer-bottom span,.footer-bottom a,.footer-bottom .footer-credit-link{color:#111!important}


/* v1.3.136 analytics chart order/alignment refinements */
.analytics-chart-panel .analytics-bars{
  align-items:end!important;
}
.analytics-chart-panel .analytics-bar-item{
  min-width:72px!important;
  gap:5px!important;
}
.analytics-chart-panel .bar-track{
  height:130px!important;
  width:18px!important;
  background:#f1f2f2!important;
}
.analytics-chart-panel .bar-pair{
  min-height:130px!important;
}
.analytics-chart-panel .analytics-bar-item span,
.analytics-chart-panel .analytics-bar-item strong,
.analytics-chart-panel .analytics-bar-item small,
.analytics-chart-panel .analytics-bar-item .profit-value{
  font-size:12px!important;
  line-height:16px!important;
  min-height:16px!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.analytics-chart-panel .analytics-bar-item > strong:not(.profit-value){
  color:#24282d!important;
  font-weight:900!important;
}
.analytics-chart-panel .analytics-bar-item .profit-label{
  color:#2f8b55!important;
  font-weight:900!important;
  margin-top:1px!important;
}
.analytics-chart-panel .analytics-bar-item .profit-value{
  color:#2f8b55!important;
  font-weight:900!important;
}
.analytics-chart-panel .bar-fill.profit-fill[style*="height:0"],
.analytics-chart-panel .bar-fill.profit-fill[style*="height: 0"]{
  display:none!important;
}
.admin-table.refined th.profit-cell,
.admin-table.refined td.profit-cell{
  text-align:right!important;
  padding-right:20px!important;
  padding-left:20px!important;
  width:160px!important;
  min-width:160px!important;
  max-width:160px!important;
  box-sizing:border-box!important;
}
.admin-table.refined th.profit-cell{
  padding-right:20px!important;
}
.admin-table.refined td.profit-cell{
  font-variant-numeric:tabular-nums!important;
}


/* v1.3.137 fixed analytics/product profit alignment and chart spacing */
.analytics-chart-panel .analytics-chart-scroll{
  padding:12px 14px 18px!important;
}
.analytics-chart-panel .analytics-bars{
  align-items:end!important;
  gap:18px!important;
  min-width:1020px!important;
}
.analytics-chart-panel .analytics-bar-item{
  min-width:76px!important;
  display:grid!important;
  grid-template-rows:auto 20px 20px 20px 20px!important;
  justify-items:center!important;
  align-items:start!important;
  gap:3px!important;
  text-align:center!important;
}
.analytics-chart-panel .bar-pair{
  min-height:108px!important;
  height:108px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:7px!important;
  margin-bottom:5px!important;
}
.analytics-chart-panel .bar-track{
  height:108px!important;
  width:18px!important;
  background:#f1f2f2!important;
  border:1px solid #dde1e3!important;
  border-radius:10px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:flex-end!important;
}
.analytics-chart-panel .bar-fill.revenue-fill{
  width:100%!important;
  background:#d7aa32!important;
  background-image:linear-gradient(180deg,#f0d469 0%,#d7aa32 100%)!important;
}
.analytics-chart-panel .bar-fill.profit-fill{
  width:100%!important;
  background:#6fa882!important;
  background-image:linear-gradient(180deg,#9fcfaf 0%,#6fa882 100%)!important;
}
.analytics-chart-panel .analytics-bar-item span,
.analytics-chart-panel .analytics-bar-item strong,
.analytics-chart-panel .analytics-bar-item small,
.analytics-chart-panel .analytics-bar-item .profit-value{
  display:block!important;
  width:100%!important;
  height:20px!important;
  min-height:20px!important;
  line-height:20px!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:13px!important;
  letter-spacing:0!important;
}
.analytics-chart-panel .analytics-bar-item > strong:not(.profit-value){
  color:#24282d!important;
  font-weight:900!important;
}
.analytics-chart-panel .analytics-bar-item .profit-label,
.analytics-chart-panel .analytics-bar-item .profit-value{
  color:#2f8b55!important;
  font-weight:900!important;
}
.analytics-chart-panel .analytics-bar-item .profit-value{
  font-variant-numeric:tabular-nums!important;
}
.best-products-table{
  table-layout:fixed!important;
  width:100%!important;
}
.best-products-table th:nth-child(1),.best-products-table td:nth-child(1){width:auto!important;}
.best-products-table th:nth-child(2),.best-products-table td:nth-child(2){width:110px!important;text-align:center!important;}
.best-products-table th:nth-child(3),.best-products-table td:nth-child(3){width:190px!important;text-align:right!important;}
.best-products-table th.profit-cell,.best-products-table td.profit-cell{
  width:190px!important;
  min-width:190px!important;
  max-width:190px!important;
  padding-left:18px!important;
  padding-right:18px!important;
  text-align:right!important;
  box-sizing:border-box!important;
}
.products-table{
  table-layout:fixed!important;
  width:100%!important;
}
.products-table th.profit-cell,.products-table td.profit-cell{
  width:130px!important;
  min-width:130px!important;
  max-width:130px!important;
  padding-left:22px!important;
  padding-right:28px!important;
  text-align:right!important;
  box-sizing:border-box!important;
}
.currency-align{
  display:inline-block!important;
  min-width:82px!important;
  text-align:right!important;
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;
}
.best-products-table th.profit-cell,
.products-table th.profit-cell{
  font-variant-numeric:tabular-nums!important;
}
.best-products-table td.profit-cell,
.products-table td.profit-cell{
  font-variant-numeric:tabular-nums!important;
}

/* v1.3.138 hard profit column alignment fix */
.best-products-table,
.products-table{
  table-layout:fixed!important;
  width:100%!important;
}
.best-products-table th.profit-cell,
.best-products-table td.profit-cell,
.products-table th.profit-cell,
.products-table td.profit-cell{
  text-align:center!important;
  vertical-align:middle!important;
  padding-left:12px!important;
  padding-right:12px!important;
  box-sizing:border-box!important;
  font-variant-numeric:tabular-nums!important;
}
.best-products-table th.profit-cell,
.best-products-table td.profit-cell{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
}
.best-products-table th:nth-child(3),
.best-products-table td:nth-child(3){
  width:170px!important;
  text-align:center!important;
}
.best-products-table th:nth-child(2),
.best-products-table td:nth-child(2){
  width:95px!important;
  text-align:center!important;
}
.products-table th:nth-child(4),
.products-table td:nth-child(4){
  width:150px!important;
  text-align:center!important;
}
.products-table th.profit-cell,
.products-table td.profit-cell{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
}
.products-table th:nth-child(6),
.products-table td:nth-child(6){
  width:165px!important;
  text-align:center!important;
}
.best-products-table .currency-align,
.products-table .currency-align,
.best-products-table td.profit-cell .currency-align,
.products-table td.profit-cell .currency-align{
  display:block!important;
  min-width:0!important;
  width:100%!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;
}

/* v1.3.139 custom PayPal payment flow */
.checkout-paypal-section{padding:70px 20px;background:#fbfaf8}.checkout-paypal-card{max-width:760px;margin:0 auto;text-align:left}.paypal-payment-intro{color:#6f747b;line-height:1.7;margin:0 0 18px}.paypal-total-box{margin:18px 0 22px}.paypal-button-container{min-height:160px;margin:18px 0}.paypal-back-link{margin-top:12px}.checkout-paypal-card .order-ref{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left}.checkout-paypal-card .order-ref span{color:#6f747b;font-weight:800}.checkout-paypal-card .order-ref strong{color:#2b2f34}.payment-choice small{display:block;margin-top:4px;color:#6f747b;font-size:12px;font-weight:700}
