:root {
    --ink: #2a211d;
    --muted: #7c6c61;
    --deep: #3b3029;
    --deep-2: #5b4435;
    --rose: #f1ded2;
    --rose-2: #fff0e7;
    --ivory: #fff8ef;
    --paper: #f7eadc;
    --sage: #e4e3d4;
    --gold: #b5814c;
    --copper: #c88b63;
    --line: rgba(42, 33, 29, .12);
    --line-gold: rgba(181, 129, 76, .36);
    --white: rgba(255, 248, 239, .93);
    --shadow: 0 24px 76px rgba(61, 43, 35, .12);
    --radius: 8px;
}

/* KDS admin optimization - grouped sidebar, dashboard modules */
.admin-menu-grouped {
    display: grid;
    gap: 10px;
}

.admin-menu-section {
    border: 1px solid rgba(216, 182, 90, .14);
    border-radius: 18px;
    background: rgba(255, 255, 255, .025);
    overflow: hidden;
}

.admin-menu-section summary {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 14px;
    color: #f8f4e8;
    cursor: pointer;
    font-weight: 850;
    list-style: none;
}

.admin-menu-section summary::-webkit-details-marker {
    display: none;
}

.admin-menu-section summary::after {
    content: "+";
    margin-left: auto;
    color: #d8b65a;
    font-weight: 900;
}

.admin-menu-section[open] summary::after {
    content: "-";
}

.admin-menu-section summary i {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(216, 182, 90, .24);
    border-radius: 10px;
    color: #e6c878;
    font-style: normal;
}

.admin-submenu {
    display: grid;
    gap: 6px;
    padding: 0 8px 10px;
}

.admin-menu-section .admin-menu-link {
    min-height: 38px;
    padding: 0 10px;
    border-radius: 12px;
    font-size: .88rem;
    background: transparent;
}

.admin-menu-section .admin-menu-link i {
    width: 24px;
    height: 24px;
    border-radius: 8px;
}

.admin-menu-section .admin-menu-link.is-active {
    background: rgba(216, 182, 90, .14);
    border-color: rgba(216, 182, 90, .36);
    box-shadow: inset 3px 0 0 #d8b65a;
}

.admin-menu-section:hover {
    border-color: rgba(216, 182, 90, .24);
}

.mini-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 14px;
    border: 1px solid rgba(216, 182, 90, .38);
    border-radius: 999px;
    color: #e6c878;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.mini-action:hover {
    background: rgba(216, 182, 90, .12);
}

.admin-topbar-burger {
    display: none;
}

@media (max-width: 1180px) {
    .admin-topbar-burger {
        display: inline-flex;
    }
}

@media (max-width: 760px) {
    .admin-menu-section {
        border-radius: 14px;
    }

    .admin-menu-section summary {
        min-height: 42px;
    }

    .admin-submenu {
        gap: 4px;
    }
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body {
    margin: 0;
    max-width: 100%;
    overflow-x: hidden;
    color: var(--ink);
    background: linear-gradient(180deg, rgba(241, 222, 210, .86), rgba(255, 248, 239, .92) 32rem, rgba(228, 227, 212, .34)), var(--ivory);
    font-family: Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.58;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, textarea, select { max-width: 100%; font: inherit; }

.top-note {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    color: var(--ivory);
    background: linear-gradient(90deg, #332821, #4c392d);
    font-size: .78rem;
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
}
.top-note span { padding: 10px 12px; background: rgba(255, 255, 255, .04); }
.site-header {
    position: sticky;
    top: 0;
    z-index: 30;
    display: grid;
    grid-template-columns: 54px minmax(150px, 230px) minmax(320px, 1fr) minmax(140px, 220px);
    align-items: center;
    gap: clamp(18px, 4vw, 42px);
    padding: 12px clamp(18px, 5vw, 78px);
    background: rgba(255, 248, 239, .96);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(18px);
}
.menu-toggle {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 46px;
    height: 46px;
    color: var(--ink);
    background: rgba(255, 250, 243, .72);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.menu-toggle:hover { transform: translateY(-1px); background: var(--rose-2); border-color: var(--line-gold); color: var(--deep-2); }
.menu-toggle span {
    display: block;
    width: 19px;
    height: 2px;
    background: currentColor;
    border-radius: 99px;
}
.brand { display: flex; align-items: center; gap: 14px; color: var(--deep); font-weight: 600; }
.brand-text-only { min-height: 56px; align-items: center; }
.brand img { width: 72px; height: 72px; object-fit: contain; }
.brand span { display: grid; line-height: 1.05; text-align: center; }
.brand strong { font-size: .72rem; letter-spacing: .28em; }
.brand-text-only span {
    text-align: left;
    color: var(--deep);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: .12em;
}
.brand-text-only strong {
    display: block;
    margin-bottom: 2px;
    color: var(--gold);
    font-size: .62rem;
    letter-spacing: .36em;
}
.main-nav { display: flex; align-items: center; justify-content: center; gap: 20px; flex-wrap: wrap; transform: none; }
.main-nav a, .quiet-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 10px;
    color: var(--deep);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.main-nav a:hover, .quiet-link:hover { color: var(--deep-2); background: rgba(200, 139, 99, .11); }
.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.icon-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: var(--ink);
    background: rgba(255, 250, 243, .72);
    border: 1px solid var(--line);
    border-radius: 999px;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.icon-link:hover { transform: translateY(-1px); background: var(--rose-2); border-color: var(--line-gold); color: var(--deep-2); }
.icon-link svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.cart-count {
    position: absolute;
    right: -3px;
    top: -5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    color: var(--ivory);
    background: var(--deep);
    border: 2px solid var(--ivory);
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 900;
}
.admin-shortcut {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 12px;
    color: var(--ivory);
    background: var(--deep);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
    text-transform: uppercase;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(33, 27, 25, .46);
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease;
}
.side-drawer {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 90;
    display: flex;
    flex-direction: column;
    width: min(420px, 88vw);
    padding: 28px 26px;
    color: var(--ink);
    background: rgba(255, 250, 243, .98);
    border-right: 1px solid var(--line);
    box-shadow: 28px 0 70px rgba(33, 27, 25, .18);
    transform: translateX(-102%);
    transition: transform .24s ease;
}
.menu-open .drawer-backdrop { opacity: 1; pointer-events: auto; }
.menu-open .side-drawer { transform: translateX(0); }
.drawer-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 28px; }
.drawer-logo img { width: 112px; height: 112px; object-fit: contain; }
.drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: var(--ink);
    background: white;
    border: 1px solid var(--line);
    border-radius: 999px;
    cursor: pointer;
}
.drawer-close svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.drawer-nav { display: grid; border-top: 1px solid var(--line); }
.drawer-nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 52px;
    color: var(--ink);
    border-bottom: 1px solid var(--line);
    font-size: .96rem;
    font-weight: 800;
    text-transform: uppercase;
}
.drawer-nav span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    color: var(--ivory);
    background: var(--deep);
    border-radius: 999px;
    font-size: .76rem;
}
.drawer-section {
    display: grid;
    gap: 0;
    margin-top: 28px;
    border-top: 1px solid var(--line);
}
.drawer-section .eyebrow { margin: 22px 0 10px; }
.drawer-category {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 52px;
    padding: 0;
    color: var(--ink);
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
    font-size: .96rem;
    font-weight: 800;
    text-transform: uppercase;
}
.drawer-category:hover {
    color: var(--deep);
    background: transparent;
    border-color: var(--line);
}
.site-main { width: min(1240px, calc(100% - 32px)); margin: 0 auto; padding: 0 0 64px; }
h1, h2, h3 { margin: 0; line-height: .98; }
h1, h2 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; }
h1 { max-width: 760px; font-size: clamp(3rem, 6vw, 5.8rem); }
h2 { font-size: clamp(2.3rem, 5vw, 4.4rem); }
h3 { font-size: 1.08rem; line-height: 1.2; }
.eyebrow { margin: 0 0 12px; color: var(--gold); font-size: .74rem; font-weight: 900; letter-spacing: .24em; text-transform: uppercase; }

.shop-hero {
    display: grid;
    grid-template-columns: minmax(320px, .88fr) minmax(360px, 1.12fr);
    align-items: center;
    gap: clamp(28px, 5vw, 70px);
    min-height: 520px;
    padding: clamp(34px, 5vw, 66px) 0 46px;
}
.hero-copy p:not(.eyebrow), .creator-note p, .featured-copy p, .product-body p, .detail-copy p, .empty { color: var(--muted); }
.hero-copy { display: grid; align-content: center; justify-items: start; }
.hero-copy h1 { font-size: clamp(3.05rem, 5.1vw, 5.55rem); line-height: 1.02; }
.hero-copy p:not(.eyebrow) { max-width: 560px; margin: 22px 0 0; font-size: clamp(1rem, 1.6vw, 1.18rem); }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.hero-visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 460px;
    padding: clamp(14px, 3vw, 30px);
    background: radial-gradient(circle at 50% 45%, rgba(255, 248, 239, .99), rgba(241, 222, 210, .58) 58%, rgba(228, 227, 212, .34));
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.hero-box { width: min(100%, 620px); max-height: 430px; object-fit: contain; filter: drop-shadow(0 30px 48px rgba(33, 27, 25, .15)); }
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    color: var(--ivory);
    background: var(--deep);
    border: 1px solid var(--deep);
    border-radius: 999px;
    font-size: .88rem;
    font-weight: 900;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.btn:hover { background: var(--deep-2); border-color: var(--deep-2); transform: translateY(-1px); }
.btn.ghost, .btn.secondary { color: var(--ink); background: rgba(255, 250, 243, .76); border-color: var(--line); }
.btn.danger { color: white; background: #a84640; border-color: #a84640; }
.btn.small { min-height: 36px; padding: 0 14px; font-size: .76rem; }

.service-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-bottom: clamp(46px, 8vw, 86px);
    overflow: hidden;
    background: var(--line-gold);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.service-strip div { display: grid; gap: 4px; min-height: 96px; align-content: center; justify-items: center; padding: 18px; background: var(--white); text-align: center; }
.service-strip strong { color: var(--deep); font-size: .92rem; letter-spacing: .06em; text-transform: uppercase; }
.service-strip span { color: var(--muted); font-size: .92rem; }
.creator-note, .featured-product {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(24px, 6vw, 74px);
    margin: 0 0 clamp(52px, 8vw, 96px);
    padding: clamp(26px, 5vw, 54px);
    background: rgba(255, 250, 243, .76);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.creator-note p, .featured-copy p { margin: 0; font-size: 1.04rem; }
.shop-shell { display: block; margin-bottom: clamp(58px, 9vw, 104px); }
.section-heading, .admin-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.product-card, .category-rail, .table-panel, .form-panel, .auth-panel, .admin-panel, .stats-grid > div, .quick-actions a, .admin-login, .review-card, .category-tile {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.product-card { display: flex; flex-direction: column; overflow: hidden; background: linear-gradient(180deg, rgba(255, 250, 243, .98), rgba(255, 248, 239, .9)); transition: transform .18s ease, box-shadow .18s ease; }
.product-card:hover { transform: translateY(-3px); box-shadow: 0 30px 80px rgba(33, 27, 25, .14); }
.product-image { display: block; aspect-ratio: 4 / 3.15; background: linear-gradient(135deg, #fbf2ee, #ddebe2); }
.product-image img { width: 100%; height: 100%; object-fit: cover; }
.product-body { display: grid; flex: 1; grid-template-rows: auto auto auto 1fr auto; gap: 13px; padding: 20px; }
.product-body h3 { min-height: 2.45em; }
.product-body > p { min-height: 4.7em; margin: 0; line-height: 1.55; }
.pill, .product-note span { display: inline-flex; align-items: center; width: fit-content; min-height: 29px; padding: 0 10px; color: var(--deep); background: var(--rose-2); border: 1px solid rgba(36, 83, 71, .12); border-radius: 999px; font-size: .75rem; font-weight: 850; }
.product-body > .pill { color: var(--gold); background: rgba(255, 248, 239, .88); border-color: var(--line-gold); letter-spacing: .02em; }
.product-actions, .total-row, .product-note { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.product-actions { align-self: end; }
.product-actions strong, .detail-price, .featured-copy strong { color: var(--deep); font-size: 1.25rem; }
.product-button-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    width: 100%;
}
.product-button-row form {
    display: flex;
}
.whatsapp-btn {
    color: var(--ivory);
    background: linear-gradient(135deg, #245347, #183a32);
    border-color: rgba(36, 83, 71, .88);
}
.whatsapp-btn:hover {
    background: linear-gradient(135deg, #2d6758, #1c463b);
    border-color: #245347;
}
.detail-action-row {
    display: flex;
    align-items: stretch;
    gap: 10px;
    flex-wrap: wrap;
}
.detail-action-row .btn {
    flex: 1 1 220px;
}
.whatsapp-disabled {
    width: 100%;
    margin: 0;
    padding: 13px 15px;
    color: var(--muted);
    background: rgba(255, 250, 243, .78);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    font-size: .9rem;
    font-weight: 750;
}
.product-composition {
    display: grid;
    align-content: start;
    gap: 7px;
    min-height: 74px;
    padding-top: 13px;
    border-top: 1px solid var(--line-gold);
}
.product-composition span {
    color: var(--gold);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .18em;
    line-height: 1;
    text-transform: uppercase;
}
.product-composition p {
    margin: 0;
    color: var(--ink);
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.45;
}
.product-composition em {
    display: inline-flex;
    margin-left: 6px;
    color: var(--deep-2);
    font-style: normal;
    font-weight: 900;
    white-space: nowrap;
}
.composition-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.composition-list li {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 10px;
    color: var(--deep);
    background: rgba(221, 235, 226, .62);
    border: 1px solid rgba(36, 83, 71, .13);
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 800;
}
.composition-list.compact { gap: 6px; }
.composition-list.compact li { min-height: 28px; padding: 5px 8px; font-size: .72rem; }
.category-rail { position: sticky; top: 128px; padding: 22px; }
.category-list { display: grid; gap: 10px; margin-top: 18px; }
.category-list a { display: flex; min-height: 46px; align-items: center; justify-content: space-between; padding: 0 15px; color: var(--ink); background: rgba(255, 250, 243, .72); border: 1px solid var(--line); border-radius: 999px; font-weight: 850; }
.category-list a.active, .category-list a:hover { color: var(--ivory); background: var(--deep); border-color: var(--deep); }
.category-showcase, .review-section { margin-bottom: clamp(58px, 9vw, 104px); }
.category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.category-tile { position: relative; isolation: isolate; display: grid; align-content: end; min-height: 230px; padding: 20px; overflow: hidden; color: var(--ink); background: linear-gradient(180deg, transparent, rgba(33, 27, 25, .14)), var(--rose-2); }
.category-tile-2, .category-tile-4 { background: linear-gradient(180deg, transparent, rgba(33, 27, 25, .12)), var(--sage); }
.category-tile img {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform .35s ease;
}
.category-tile.has-image { color: var(--ivory); background: #211b19; }
.category-tile.has-image::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(180deg, rgba(33, 27, 25, .08), rgba(33, 27, 25, .72));
}
.category-tile.has-image:hover img { transform: scale(1.07); }
.category-tile span { font-family: "Cormorant Garamond", Georgia, serif; font-size: 2rem; font-weight: 600; line-height: 1.05; }
.category-tile small { margin-top: 10px; color: var(--muted); font-size: .92rem; }
.category-tile.has-image small { color: rgba(255, 250, 243, .82); }
.featured-product { grid-template-columns: minmax(280px, 480px) minmax(0, 1fr); }
.featured-media { overflow: hidden; border-radius: var(--radius); background: var(--rose-2); }
.featured-media img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.featured-copy { display: grid; gap: 18px; }
.review-marquee {
    position: relative;
    overflow: hidden;
    padding: 4px 0 18px;
}
.review-marquee::before,
.review-marquee::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: clamp(34px, 8vw, 110px);
    pointer-events: none;
}
.review-marquee::before { left: 0; background: linear-gradient(90deg, var(--ivory), rgba(255, 248, 239, 0)); }
.review-marquee::after { right: 0; background: linear-gradient(270deg, var(--ivory), rgba(255, 248, 239, 0)); }
.review-track {
    display: flex;
    width: max-content;
    gap: 16px;
    animation: review-scroll 38s linear infinite;
}
.review-marquee:hover .review-track { animation-play-state: paused; }
.review-card {
    display: grid;
    flex: 0 0 360px;
    min-height: 194px;
    align-content: space-between;
    gap: 14px;
    padding: 24px;
}
.review-card p { margin: 0; color: var(--muted); }
.review-card strong { color: var(--deep); }
.stars { color: var(--gold); font-size: .95rem; letter-spacing: .12em; }
@keyframes review-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}
.product-detail { display: grid; grid-template-columns: minmax(280px, 560px) minmax(0, 1fr); gap: clamp(30px, 6vw, 76px); align-items: center; padding-top: 40px; }
.detail-image { overflow: hidden; background: var(--rose-2); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.detail-image img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.detail-copy { display: grid; gap: 18px; }
.composition-panel {
    display: grid;
    gap: 14px;
    padding: 18px;
    background: rgba(255, 250, 243, .72);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
}
.composition-panel h2 { font-size: clamp(1.7rem, 3vw, 2.5rem); }
.composition-panel p { margin: 0; }
.inline-form, .auth-panel form, .form-panel { display: grid; gap: 16px; }
label { display: grid; gap: 8px; color: var(--ink); font-weight: 850; }
input, textarea, select { width: 100%; min-height: 44px; padding: 10px 12px; color: var(--ink); background: white; border: 1px solid var(--line); border-radius: var(--radius); }
input[readonly] { color: var(--muted); background: rgba(255, 250, 243, .78); }
textarea { resize: vertical; }
.narrow { width: min(940px, 100%); margin: 0 auto; padding-top: 38px; }
.auth-panel, .admin-login { width: min(460px, 100%); margin: 52px auto; padding: 32px; }
.register-panel { width: min(760px, 100%); }
.table-panel, .admin-panel, .form-panel { padding: 22px; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 14px 10px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
th { color: var(--muted); font-size: .78rem; text-transform: uppercase; }
.qty, .small-input { width: 82px; }
.cart-panel { padding: clamp(20px, 3vw, 32px); overflow-x: auto; }
.cart-table { table-layout: fixed; }
.cart-table th:nth-child(1), .cart-table td:nth-child(1) { width: 38%; }
.cart-table th:nth-child(2), .cart-table td:nth-child(2),
.cart-table th:nth-child(3), .cart-table td:nth-child(3),
.cart-table th:nth-child(4), .cart-table td:nth-child(4) { text-align: center; }
.cart-table th:nth-child(4), .cart-table td:nth-child(4) { text-align: right; }
.cart-product strong { color: var(--ink); font-size: 1rem; font-weight: 700; }
.cart-price, .cart-line-total { color: var(--deep); font-weight: 750; white-space: nowrap; }
.cart-quantity .qty { margin: 0 auto; text-align: center; }
.cart-summary {
    display: grid;
    grid-template-columns: auto minmax(160px, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding-top: 22px;
}
.cart-total {
    justify-self: end;
    display: grid;
    gap: 2px;
    color: var(--muted);
    text-align: right;
}
.cart-total span { font-size: .72rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.cart-total strong { color: var(--deep); font-size: 1.15rem; }
.cart-total small { color: var(--muted); font-size: .78rem; }
.checkout-summary {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    padding: 18px;
    background: rgba(255, 250, 243, .72);
    border: 1px solid var(--line);
    border-radius: var(--radius);
}
.checkout-summary div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}
.checkout-summary span,
.checkout-summary small {
    color: var(--muted);
}
.checkout-summary strong {
    color: var(--deep);
}
.checkout-summary .is-total {
    padding-top: 10px;
    border-top: 1px solid var(--line);
}
.checkout-summary .is-total strong {
    font-size: 1.25rem;
}
.checkout-payment-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
}
.checkout-payment-note {
    width: 100%;
    margin: 0;
    padding: 14px 16px;
    background: rgba(255, 255, 255, .74);
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--muted);
    font-weight: 700;
}
.btn:disabled {
    cursor: not-allowed;
    opacity: .55;
    transform: none;
}
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.admin-field-help {
    margin: -4px 0 0;
    color: rgba(248, 244, 232, .7);
    font-size: .82rem;
    line-height: 1.55;
}
.admin-field-help strong {
    color: #e6c878;
}
.account-heading { align-items: flex-start; }
.account-intro { width: min(620px, 100%); margin: 10px 0 0; color: var(--muted); }
.account-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 18px; margin-bottom: 22px; }
.account-panel { align-content: start; overflow: visible; }
.account-panel .form-grid { align-items: start; }
.account-panel-head, .account-orders-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; margin-bottom: 4px; }
.account-panel-head span {
    display: inline-grid;
    width: 42px;
    height: 42px;
    place-items: center;
    color: var(--ivory);
    background: var(--deep);
    border-radius: 50%;
    font-weight: 900;
}
.account-panel h2, .account-orders h2 { font-size: clamp(1.85rem, 4vw, 2.65rem); }
.account-orders { padding: 24px; }
.account-orders-head { margin-bottom: 12px; }
.account-orders-head .eyebrow { margin: 0 0 6px; }
.full { grid-column: 1 / -1; }
.check { display: flex; align-items: center; gap: 10px; }
.check input { width: auto; min-height: auto; }
.flash {
    position: relative;
    margin: 20px 0 30px;
    padding: 17px 22px 17px 50px;
    color: var(--deep);
    background: rgba(255, 250, 243, .94);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: 0 18px 58px rgba(61, 43, 35, .1);
    font-weight: 850;
}
.flash::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 50%;
    width: 10px;
    height: 10px;
    background: var(--gold);
    border-radius: 50%;
    transform: translateY(-50%);
}
.flash-success, .flash-error { color: var(--deep); background: rgba(255, 250, 243, .94); }
.flash-error { border-color: rgba(200, 139, 99, .42); }
.site-footer { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 30px clamp(18px, 5vw, 72px); color: var(--muted); background: rgba(255, 250, 243, .82); border-top: 1px solid var(--line); }
.site-footer div { display: grid; gap: 3px; }
.site-footer strong { color: var(--deep); }
.legal-links { display: flex; gap: 10px 16px; flex-wrap: wrap; width: 100%; font-size: .82rem; }
.legal-page { padding-bottom: clamp(60px, 9vw, 110px); }
.legal-content {
    padding: clamp(22px, 4vw, 38px);
    color: var(--ink);
    background: rgba(255, 250, 243, .82);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    line-height: 1.8;
    white-space: pre-wrap;
}
.admin-body { display: grid; grid-template-columns: 286px minmax(0, 1fr); min-height: 100vh; background: linear-gradient(180deg, #fffaf3, #f4e4df); }
.admin-sidebar { position: sticky; top: 0; display: flex; flex-direction: column; min-height: 100vh; padding: 34px 24px; background: linear-gradient(180deg, #211b19, #183a32); }
.admin-logo img { width: 126px; margin: 0 auto 34px; }
.admin-menu { display: grid; gap: 8px; }
.admin-menu a, .logout { display: flex; align-items: center; min-height: 46px; padding: 0 16px; color: white; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .08); border-radius: 999px; font-weight: 850; }
.admin-menu a:hover, .logout:hover { background: rgba(255, 255, 255, .16); }
.logout { width: 100%; margin-top: auto; cursor: pointer; }
.admin-main { padding: clamp(26px, 5vw, 62px); }
.admin-heading h1 { font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(3rem, 7vw, 6rem); }
.quick-actions, .stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 26px; }
.quick-actions a, .stats-grid > div { padding: 20px; }
.quick-actions a { display: grid; gap: 6px; color: var(--ink); font-weight: 900; }
.quick-actions span, .stats-grid span { color: var(--muted); font-size: .92rem; font-weight: 600; }
.stats-grid strong { display: block; margin-top: 8px; color: var(--deep); font-size: 2rem; }
.row-actions { display: flex; align-items: center; gap: 8px; }
.admin-two-col { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 18px; }
.admin-login img { width: 120px; margin: 0 auto 18px; }

@media (max-width: 1080px) {
    .site-header {
        grid-template-columns: 46px minmax(0, 1fr) auto;
        justify-items: stretch;
        gap: 12px;
        padding: 10px 16px;
    }
    .menu-toggle { justify-self: start; }
    .brand { justify-self: start; justify-content: flex-start; min-width: 0; }
    .brand-text-only { min-height: 48px; }
    .brand img { width: 58px; height: 58px; }
    .brand span { font-size: .86rem; }
    .main-nav { display: none; transform: none; }
    .header-actions { justify-self: end; justify-content: flex-end; gap: 8px; }
    .shop-hero, .shop-shell, .creator-note, .featured-product, .product-detail, .admin-two-col { grid-template-columns: 1fr; }
    .hero-copy { justify-items: center; text-align: center; }
    .hero-visual { min-height: 380px; }
    .product-grid, .quick-actions, .stats-grid, .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .category-rail { position: static; order: -1; }
    .category-list { display: flex; overflow-x: auto; padding-bottom: 6px; }
    .category-list a { flex: 0 0 auto; }
    .admin-body { grid-template-columns: 1fr; }
    .admin-sidebar { position: static; min-height: auto; }
}

@media (max-width: 900px) {
    .site-main { width: min(100% - 28px, 1240px); }
    .shop-hero { min-height: auto; padding: 34px 0 42px; }
    .hero-visual { min-height: 340px; }
    .hero-box { max-height: 340px; }
    .service-strip { grid-template-columns: 1fr; }
    .creator-note, .featured-product { gap: 22px; }
    .admin-main { padding: 24px; }
    .quick-actions, .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .account-grid { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
    .top-note, .service-strip, .product-grid, .quick-actions, .stats-grid, .category-grid, .form-grid { grid-template-columns: 1fr; }
    .top-note { grid-template-columns: 1fr; }
    .top-note span { padding: 8px 10px; font-size: .68rem; }
    .top-note span:nth-child(2),
    .top-note span:nth-child(3) { display: none; }
    .site-main { width: min(100% - 20px, 1240px); padding-bottom: 42px; }
    .site-header { grid-template-columns: 42px minmax(0, 1fr) auto; gap: 8px; padding: 8px 10px; }
    .brand { gap: 8px; }
    .brand img { width: 48px; height: 48px; }
    .brand span { font-size: .74rem; line-height: 1; }
    .brand-text-only span { font-size: .82rem; letter-spacing: .09em; }
    .brand strong { font-size: .58rem; letter-spacing: .18em; }
    .menu-toggle, .icon-link { width: 38px; height: 38px; }
    .menu-toggle { gap: 4px; }
    .menu-toggle span { width: 17px; }
    .icon-link svg { width: 18px; height: 18px; }
    .cart-count { min-width: 18px; height: 18px; font-size: .64rem; right: -4px; top: -4px; }
    .section-heading, .admin-heading { align-items: flex-start; flex-direction: column; }
    .section-heading .quiet-link { align-self: flex-start; }
    h1, .admin-heading h1 { font-size: clamp(2.7rem, 12vw, 4.2rem); }
    h2 { font-size: clamp(2.25rem, 11vw, 3.25rem); }
    .shop-hero { min-height: auto; padding: 28px 0 34px; gap: 22px; }
    .hero-copy h1 { font-size: clamp(3rem, 13vw, 4.6rem); }
    .hero-copy p:not(.eyebrow) { margin-top: 16px; font-size: .98rem; }
    .hero-actions { width: 100%; margin-top: 22px; }
    .hero-actions .btn { width: 100%; }
    .main-nav { gap: 2px; }
    .main-nav a { padding: 0 9px; font-size: .74rem; }
    .hero-visual { min-height: 0; padding: 14px; }
    .hero-box { max-height: 280px; }
    .creator-note, .featured-product { padding: 22px; margin-bottom: 42px; }
    .product-grid { gap: 16px; }
    .product-card { min-width: 0; }
    .product-image { aspect-ratio: 4 / 3.35; }
    .product-body { padding: 16px; }
    .product-body h3, .product-body > p, .product-composition { min-height: 0; }
    .product-actions { align-items: stretch; }
    .product-button-row, .product-button-row form, .product-actions .btn { width: 100%; }
    .detail-action-row { width: 100%; }
    .detail-action-row .btn { flex-basis: 100%; }
    .category-tile { min-height: 170px; }
    .review-card { flex-basis: min(320px, calc(100vw - 44px)); }
    .side-drawer { width: min(360px, 92vw); padding: 22px 18px; overflow-y: auto; }
    .drawer-logo img { width: 88px; height: 88px; }
    .drawer-head { margin-bottom: 18px; }
    .drawer-nav a { min-height: 48px; font-size: .88rem; }
    .drawer-section .eyebrow { margin: 18px 0 8px; }
    .drawer-category { min-height: 48px; font-size: .88rem; }
    .auth-panel, .admin-login { margin: 28px auto; padding: 22px; }
    .table-panel, .admin-panel, .form-panel { padding: 16px; }
    .cart-panel { padding: 16px; }
    .cart-summary { grid-template-columns: 1fr; align-items: stretch; gap: 12px; }
    .cart-total { justify-self: stretch; padding: 14px 0; text-align: left; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .cart-summary .btn { width: 100%; }
    .account-orders { padding: 16px; }
    .account-panel-head, .account-orders-head { align-items: flex-start; flex-direction: column; }
    table { min-width: 640px; }
    .admin-sidebar { padding: 24px 16px; }
    .admin-main { padding: 18px 12px 34px; }
    .site-footer { padding: 24px 16px; }
}

@media (max-width: 420px) {
    .site-header { grid-template-columns: 40px 1fr auto; }
    .brand { justify-content: flex-start; }
    .brand img { width: 50px; height: 50px; }
    .brand-text-only span { display: grid; font-size: .75rem; letter-spacing: .06em; }
    .brand-text-only strong { font-size: .52rem; letter-spacing: .16em; }
    .header-actions { gap: 6px; }
    .hero-copy h1 { font-size: clamp(2.7rem, 15vw, 3.7rem); }
    .btn { min-height: 46px; padding: 0 18px; font-size: .78rem; }
}

@media (max-width: 360px) {
    .site-main { width: min(100% - 16px, 1240px); }
    .site-header { grid-template-columns: 38px 1fr auto; padding: 7px 8px; }
    .menu-toggle, .icon-link { width: 36px; height: 36px; }
    .brand img { width: 44px; height: 44px; }
    .header-actions .icon-link:first-child { display: none; }
    .hero-copy h1 { font-size: clamp(2.35rem, 14vw, 3.1rem); }
    .hero-actions { gap: 8px; }
    .side-drawer { width: 94vw; padding: 20px 16px; }
}

/* Public premium storefront */
body {
    background:
        radial-gradient(circle at 12% 2%, rgba(200, 139, 99, .16), transparent 30rem),
        linear-gradient(180deg, #fff9f2 0, #f7eadf 34rem, #fffaf4 72rem, #f5ece2 100%),
        var(--ivory);
}
.home-hero {
    position: relative;
    grid-template-columns: minmax(300px, .82fr) minmax(420px, 1.18fr);
    min-height: 640px;
    padding: clamp(34px, 5vw, 72px) 0 clamp(34px, 5vw, 64px);
}
.hero-brand-mark {
    width: clamp(72px, 9vw, 118px);
    height: clamp(72px, 9vw, 118px);
    object-fit: contain;
    margin-bottom: 10px;
    filter: drop-shadow(0 18px 28px rgba(59, 48, 41, .12));
}
.home-hero .hero-copy {
    max-width: 610px;
}
.home-hero .hero-copy h1 {
    max-width: 640px;
    color: var(--ink);
    font-size: clamp(3.25rem, 6.4vw, 7rem);
    letter-spacing: 0;
}
.home-hero .hero-copy p:not(.eyebrow) {
    max-width: 520px;
    color: var(--muted);
    font-size: clamp(1rem, 1.45vw, 1.16rem);
}
.home-hero-visual {
    min-height: 560px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255, 250, 243, .86), rgba(244, 225, 210, .62)),
        radial-gradient(circle at 30% 20%, rgba(255, 255, 255, .9), transparent 24rem);
}
.home-hero-visual::before {
    content: "";
    position: absolute;
    inset: 22px;
    border: 1px solid rgba(181, 129, 76, .22);
    border-radius: inherit;
    pointer-events: none;
}
.home-hero-visual .hero-box {
    width: min(100%, 780px);
    max-height: 500px;
    object-fit: contain;
}
.hero-product-card {
    position: absolute;
    right: clamp(18px, 4vw, 42px);
    bottom: clamp(18px, 4vw, 42px);
    display: grid;
    gap: 3px;
    width: min(260px, calc(100% - 36px));
    padding: 17px 18px;
    color: var(--ink);
    background: rgba(255, 250, 243, .88);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: 0 20px 52px rgba(59, 48, 41, .13);
    backdrop-filter: blur(16px);
}
.hero-product-card span {
    color: var(--gold);
    font-size: .62rem;
    font-weight: 950;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.hero-product-card strong {
    font-size: .98rem;
    line-height: 1.25;
}
.hero-product-card small {
    color: var(--deep);
    font-weight: 950;
}
.home-trust-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    margin-bottom: clamp(54px, 8vw, 96px);
    overflow: hidden;
    background: var(--line-gold);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.home-trust-strip article {
    display: grid;
    min-height: 138px;
    align-content: center;
    gap: 6px;
    padding: 22px;
    background: rgba(255, 250, 243, .84);
}
.home-trust-strip i {
    color: var(--gold);
    font-style: normal;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .16em;
}
.home-trust-strip strong {
    color: var(--deep);
    font-size: .92rem;
    font-weight: 950;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.home-trust-strip span {
    color: var(--muted);
    font-size: .92rem;
    line-height: 1.45;
}
.collection-section,
.featured-products-section,
.brand-story,
.review-section {
    margin-bottom: clamp(60px, 9vw, 112px);
}
.collection-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}
.collection-card {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: 255px;
    align-content: end;
    overflow: hidden;
    padding: 18px;
    color: var(--ivory);
    background: linear-gradient(145deg, var(--deep), var(--deep-2));
    border: 1px solid rgba(181, 129, 76, .28);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.collection-card::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(180deg, rgba(42, 33, 29, .05), rgba(42, 33, 29, .78));
}
.collection-card img {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform .35s ease;
}
.collection-card:hover img {
    transform: scale(1.08);
}
.collection-card.is-active {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
}
.collection-card span {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.75rem, 3vw, 2.35rem);
    font-weight: 650;
    line-height: 1;
}
.collection-card small {
    margin-top: 10px;
    color: rgba(255, 250, 243, .84);
    line-height: 1.45;
}
.premium-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.premium-product-grid .product-card {
    border-color: rgba(181, 129, 76, .24);
}
.premium-product-grid .product-image {
    aspect-ratio: 1 / .82;
}
.premium-product-grid .product-body {
    padding: 22px;
}
.premium-product-grid .product-body h3 {
    color: var(--ink);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.55rem, 2vw, 2.05rem);
    font-weight: 650;
    min-height: auto;
}
.premium-product-grid .product-body > p {
    min-height: 4.55em;
}
.brand-story {
    display: grid;
    grid-template-columns: minmax(260px, .78fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(24px, 6vw, 74px);
    padding: clamp(28px, 5vw, 58px);
    background:
        linear-gradient(135deg, rgba(255, 250, 243, .88), rgba(241, 222, 210, .64)),
        var(--white);
    border: 1px solid var(--line-gold);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}
.brand-story h2 {
    max-width: 420px;
}
.brand-story-copy {
    display: grid;
    gap: 18px;
    color: var(--muted);
    font-size: 1.02rem;
}
.brand-story-copy p {
    margin: 0;
}
.brand-story-copy .btn {
    width: fit-content;
}
.site-footer {
    display: grid;
    grid-template-columns: minmax(260px, 1.2fr) repeat(3, minmax(160px, .8fr));
    align-items: start;
    gap: 24px;
    padding: clamp(30px, 5vw, 58px) clamp(18px, 5vw, 72px);
    color: rgba(255, 248, 239, .76);
    background: linear-gradient(135deg, #2a211d, #3b3029);
    border-top: 1px solid rgba(181, 129, 76, .28);
}
.footer-brand,
.footer-column {
    display: grid;
    gap: 9px;
}
.footer-brand img {
    width: 76px;
    height: 76px;
    object-fit: contain;
}
.site-footer strong {
    color: var(--ivory);
    font-weight: 950;
}
.footer-brand > strong {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 2rem;
    line-height: 1;
}
.footer-column a,
.footer-column span,
.footer-brand span {
    color: rgba(255, 248, 239, .72);
    font-size: .93rem;
}
.footer-column a:hover {
    color: var(--gold);
}

@media (max-width: 1180px) {
    .collection-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .home-trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .site-footer {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .home-hero {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    .home-hero .hero-copy {
        justify-items: center;
        max-width: none;
        text-align: center;
    }
    .home-hero-visual {
        min-height: 390px;
    }
    .premium-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .brand-story {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .home-hero {
        padding-top: 26px;
    }
    .hero-brand-mark {
        width: 78px;
        height: 78px;
        margin: 0 auto 6px;
    }
    .home-hero .hero-copy h1 {
        font-size: clamp(3.15rem, 14vw, 4.65rem);
    }
    .home-hero-visual {
        min-height: 0;
        padding: 13px;
    }
    .home-hero-visual::before {
        inset: 12px;
    }
    .hero-product-card {
        position: static;
        width: 100%;
        margin-top: 12px;
    }
    .home-trust-strip,
    .collection-grid,
    .premium-product-grid,
    .site-footer {
        grid-template-columns: 1fr;
    }
    .home-trust-strip article {
        min-height: 116px;
        padding: 18px;
    }
    .collection-card {
        min-height: 220px;
    }
    .premium-product-grid .product-image {
        aspect-ratio: 4 / 3.2;
    }
    .brand-story {
        padding: 24px;
    }
    .brand-story-copy .btn {
        width: 100%;
    }
    .site-footer {
        gap: 22px;
    }
}

/* Admin premium application */
.admin-body {
    --admin-bg: #07110d;
    --admin-bg-2: #0d1d16;
    --admin-panel: rgba(18, 31, 25, .94);
    --admin-panel-2: rgba(24, 42, 34, .88);
    --admin-line: rgba(224, 190, 132, .16);
    --admin-line-soft: rgba(255, 248, 239, .08);
    --admin-text: #f7efe3;
    --admin-muted: #b7aa9b;
    --admin-gold: var(--gold);
    --admin-deep: #2e221b;
    display: block;
    min-height: 100vh;
    color: var(--admin-text);
    background:
        linear-gradient(135deg, rgba(7, 17, 13, .98), rgba(15, 35, 27, .98) 48%, rgba(6, 10, 8, .98)),
        #07110d;
}
.admin-shell {
    display: grid;
    grid-template-columns: 304px minmax(0, 1fr);
    min-height: 100vh;
}
.admin-shell.is-auth {
    display: grid;
    grid-template-columns: 1fr;
    place-items: center;
    min-height: 100vh;
    padding: clamp(22px, 5vw, 56px);
}
.admin-shell.is-auth .admin-main {
    width: min(520px, 100%);
    padding: 0;
}
.admin-sidebar {
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 26px;
    height: 100vh;
    min-height: 100vh;
    padding: 24px 18px;
    overflow-y: auto;
    background: linear-gradient(180deg, rgba(18, 34, 27, .98), rgba(8, 16, 12, .98));
    border-right: 1px solid var(--admin-line);
    box-shadow: 20px 0 70px rgba(0, 0, 0, .28);
}
.admin-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 10px;
    color: var(--admin-text);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
    background: rgba(255, 248, 239, .04);
}
.admin-brand img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}
.admin-brand span {
    display: grid;
    min-width: 0;
    line-height: 1.1;
}
.admin-brand small {
    color: var(--admin-gold);
    font-size: .64rem;
    font-weight: 900;
    letter-spacing: .24em;
    text-transform: uppercase;
}
.admin-brand strong {
    overflow: hidden;
    color: var(--admin-text);
    font-size: .92rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}
.admin-store-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    margin: 16px 0 18px;
    color: #24190f;
    background: linear-gradient(135deg, #dfbd7d, #b5814c);
    border: 1px solid rgba(255, 233, 181, .42);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: 0 18px 38px rgba(181, 129, 76, .18);
}
.admin-menu {
    display: grid;
    gap: 7px;
}
.admin-menu-link {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 44px;
    padding: 0 12px;
    color: rgba(247, 239, 227, .82);
    background: transparent;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: .86rem;
    font-weight: 850;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
.admin-menu-link i,
.admin-bottom-nav i {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    color: var(--admin-gold);
    background: rgba(224, 190, 132, .09);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    font-size: .68rem;
    font-style: normal;
    font-weight: 950;
}
.admin-menu-link em {
    margin-left: auto;
    color: rgba(247, 239, 227, .45);
    font-size: .63rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.admin-menu-link:hover,
.admin-menu-link.is-active {
    color: var(--admin-text);
    background: rgba(255, 248, 239, .075);
    border-color: var(--admin-line);
    transform: translateX(2px);
}
.admin-menu-link.is-active::before {
    content: "";
    position: absolute;
    left: -19px;
    width: 3px;
    height: 26px;
    background: var(--admin-gold);
    border-radius: 999px;
}
.admin-menu-link.is-disabled {
    cursor: not-allowed;
    opacity: .56;
}
.admin-profile {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    background: rgba(255, 248, 239, .055);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
}
.admin-avatar {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    color: #24190f;
    background: linear-gradient(135deg, #edd2a0, var(--admin-gold));
    border-radius: 50%;
    font-weight: 950;
}
.admin-profile strong,
.admin-profile span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.admin-profile strong {
    color: var(--admin-text);
    font-size: .9rem;
}
.admin-profile span {
    color: var(--admin-muted);
    font-size: .75rem;
}
.admin-profile form {
    grid-column: 1 / -1;
}
.logout {
    width: 100%;
    min-height: 40px;
    margin: 0;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .06);
    border: 1px solid var(--admin-line-soft);
    border-radius: 999px;
    cursor: pointer;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.logout:hover {
    background: rgba(255, 248, 239, .12);
    border-color: var(--admin-line);
}
.admin-main {
    min-width: 0;
    padding: clamp(28px, 4vw, 56px);
    background:
        linear-gradient(180deg, rgba(255, 248, 239, .04), rgba(255, 248, 239, 0) 280px),
        transparent;
}
.admin-body .eyebrow {
    color: var(--admin-gold);
}
.admin-body .flash {
    color: var(--admin-text);
    background: linear-gradient(180deg, rgba(255, 248, 239, .08), rgba(255, 248, 239, .045)), var(--admin-panel);
    border: 1px solid var(--admin-line);
    box-shadow: 0 22px 70px rgba(0, 0, 0, .22);
}
.admin-body .flash::before {
    background: var(--admin-gold);
}
.admin-heading {
    align-items: flex-end;
    margin-bottom: 24px;
}
.admin-heading h1 {
    color: var(--admin-text);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(3rem, 5.7vw, 5.8rem);
    line-height: .92;
}
.admin-heading .btn {
    flex: 0 0 auto;
}
.admin-body .btn {
    color: #23170f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border: 1px solid rgba(255, 232, 182, .44);
    box-shadow: 0 18px 42px rgba(181, 129, 76, .16);
}
.admin-body .btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.03);
}
.admin-body .btn.secondary,
.admin-body .quiet-link {
    color: var(--admin-text);
    background: rgba(255, 248, 239, .07);
    border: 1px solid var(--admin-line);
    box-shadow: none;
}
.admin-body .btn.danger {
    color: #fff3ec;
    background: rgba(154, 72, 50, .88);
    border-color: rgba(255, 192, 168, .22);
}
.admin-subtitle {
    max-width: 620px;
    margin: 12px 0 0;
    color: var(--admin-muted);
    font-size: 1rem;
}
.dashboard-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.dashboard-kpi,
.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled {
    position: relative;
    overflow: hidden;
    color: var(--admin-text);
    background:
        radial-gradient(circle at 88% 12%, rgba(224, 190, 132, .18), transparent 28%),
        linear-gradient(180deg, rgba(255, 248, 239, .075), rgba(255, 248, 239, .035)),
        var(--admin-panel);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    box-shadow: 0 26px 70px rgba(0, 0, 0, .22);
}
.dashboard-kpi {
    display: grid;
    min-height: 148px;
    align-content: space-between;
    padding: 20px;
}
.dashboard-kpi span {
    color: var(--admin-muted);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.dashboard-kpi strong {
    color: var(--admin-text);
    font-size: clamp(2rem, 3.2vw, 3.2rem);
    line-height: 1;
}
.dashboard-kpi small {
    color: rgba(247, 239, 227, .64);
    font-weight: 700;
}
.dashboard-kpi.is-gold {
    background:
        linear-gradient(135deg, rgba(224, 190, 132, .22), rgba(181, 129, 76, .09)),
        var(--admin-panel);
}
.dashboard-kpi.is-alert {
    border-color: rgba(229, 151, 95, .46);
}
.dashboard-kpi.is-alert::after {
    content: "";
    position: absolute;
    top: 18px;
    right: 18px;
    width: 10px;
    height: 10px;
    background: #e7a15f;
    border-radius: 50%;
    box-shadow: 0 0 0 6px rgba(231, 161, 95, .12);
}
.dashboard-quick-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 4px 12px;
    min-height: 112px;
    align-content: center;
    padding: 18px;
}
.dashboard-quick-actions i {
    display: grid;
    grid-row: span 2;
    place-items: center;
    width: 42px;
    height: 42px;
    color: #25190f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border-radius: 50%;
    font-style: normal;
    font-weight: 950;
}
.dashboard-quick-actions strong {
    min-width: 0;
    color: var(--admin-text);
    font-size: .95rem;
    line-height: 1.2;
}
.dashboard-quick-actions span {
    color: var(--admin-muted);
    font-size: .82rem;
}
.dashboard-quick-actions .is-disabled {
    opacity: .62;
}
.dashboard-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
    gap: 20px;
    margin-bottom: 20px;
}
.dashboard-chart-panel .section-heading,
.dashboard-best-panel .section-heading,
.dashboard-orders-panel .section-heading {
    align-items: flex-start;
}
.dashboard-chart-panel .section-heading strong {
    color: var(--admin-gold);
    font-size: 1.15rem;
    white-space: nowrap;
}
.dashboard-chart {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    align-items: end;
    gap: clamp(8px, 1.4vw, 16px);
    min-height: 260px;
    padding: 18px 8px 4px;
    border-top: 1px solid var(--admin-line-soft);
}
.dashboard-bar {
    display: grid;
    grid-template-rows: 1fr auto;
    gap: 10px;
    height: 230px;
    min-width: 0;
}
.dashboard-bar span {
    align-self: end;
    display: block;
    min-height: 8px;
    background: linear-gradient(180deg, #f0d8a6, var(--admin-gold) 58%, #7c5735);
    border: 1px solid rgba(255, 236, 194, .3);
    border-radius: 999px 999px 6px 6px;
    box-shadow: 0 12px 28px rgba(181, 129, 76, .16);
}
.dashboard-bar small {
    overflow: hidden;
    color: var(--admin-muted);
    font-size: .72rem;
    font-weight: 850;
    text-align: center;
    text-overflow: ellipsis;
}
.dashboard-empty-note {
    margin: 14px 0 0;
    color: var(--admin-muted);
    font-size: .92rem;
}
.dashboard-list {
    display: grid;
    gap: 10px;
}
.dashboard-list-row {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 70px;
    padding: 12px;
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.dashboard-list-row b {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    color: var(--admin-gold);
    background: rgba(224, 190, 132, .1);
    border: 1px solid var(--admin-line);
    border-radius: 50%;
}
.dashboard-list-row span {
    display: grid;
    min-width: 0;
}
.dashboard-list-row strong,
.dashboard-orders-panel td strong {
    overflow: hidden;
    color: var(--admin-text);
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dashboard-list-row small,
.dashboard-orders-panel td small {
    color: var(--admin-muted);
}
.dashboard-list-row em {
    color: var(--admin-gold);
    font-style: normal;
    font-weight: 900;
    white-space: nowrap;
}
.product-actions del,
.detail-price del {
    display: inline-block;
    margin-right: 8px;
    color: var(--muted);
    font-size: .86em;
    font-weight: 700;
}
.detail-gallery {
    display: grid;
    gap: 12px;
}
.detail-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.detail-thumbs img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    background: var(--rose-2);
    border: 1px solid var(--line);
    border-radius: var(--radius);
}
.product-admin-panel {
    display: grid;
    gap: 18px;
}
.product-admin-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}
.product-admin-toolbar label span {
    color: var(--admin-muted);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.product-filter-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
}
.product-filter-tabs a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    color: var(--admin-muted);
    background: rgba(255, 248, 239, .055);
    border: 1px solid var(--admin-line-soft);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 900;
}
.product-filter-tabs a.is-active,
.product-filter-tabs a:hover {
    color: #24190f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border-color: rgba(255, 232, 182, .4);
}
.product-admin-list {
    display: grid;
    gap: 14px;
}
.product-admin-card {
    display: grid;
    gap: 14px;
    padding: 12px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.product-admin-card.is-inactive {
    opacity: .72;
}
.product-admin-media {
    overflow: hidden;
    background: rgba(255, 248, 239, .05);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.product-admin-media img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.product-admin-content {
    display: grid;
    gap: 14px;
}
.product-admin-content h2 {
    margin-top: 10px;
    font-size: clamp(1.8rem, 8vw, 2.5rem);
}
.product-admin-content p {
    margin: 8px 0 0;
    color: var(--admin-muted);
}
.product-admin-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}
.product-admin-meta div {
    min-width: 0;
    padding: 10px;
    background: rgba(255, 248, 239, .04);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.product-admin-meta dt {
    color: var(--admin-muted);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.product-admin-meta dd {
    overflow: hidden;
    margin: 4px 0 0;
    color: var(--admin-text);
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.product-admin-actions {
    display: grid;
    gap: 8px;
}
.product-admin-actions form,
.product-admin-actions .btn {
    width: 100%;
}
.product-form-section {
    display: grid;
    gap: 16px;
    padding: 0 0 24px;
    border-bottom: 1px solid var(--admin-line-soft);
}
.product-form-section + .product-form-section {
    padding-top: 24px;
}
.product-form-section:last-of-type {
    border-bottom: 0;
}
.product-image-manager {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}
.product-image-box {
    display: grid;
    gap: 12px;
    padding: 14px;
    background: rgba(255, 248, 239, .04);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.product-image-box > span {
    color: var(--admin-gold);
    font-size: .74rem;
    font-weight: 950;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.product-image-box img {
    width: 100%;
    max-height: 280px;
    object-fit: cover;
    border: 1px solid var(--admin-line);
    border-radius: 8px;
}
.product-image-box small {
    color: var(--admin-muted);
}
.image-empty {
    display: grid;
    min-height: 120px;
    place-items: center;
    color: var(--admin-muted);
    background: rgba(255, 248, 239, .035);
    border: 1px dashed var(--admin-line);
    border-radius: 8px;
    text-align: center;
}
.secondary-image-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.secondary-image-grid label {
    display: grid;
    gap: 8px;
    color: var(--admin-muted);
    font-size: .82rem;
    font-weight: 800;
}
.secondary-image-grid img {
    aspect-ratio: 1 / 1;
}
.product-form-actions {
    display: grid;
    gap: 10px;
    padding-top: 20px;
}
.category-admin-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}
.category-admin-summary article {
    display: grid;
    gap: 8px;
    min-height: 112px;
    padding: 18px;
    color: var(--admin-text);
    background: linear-gradient(180deg, rgba(255, 248, 239, .075), rgba(255, 248, 239, .035)), var(--admin-panel);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .2);
}
.category-admin-summary span {
    color: var(--admin-muted);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.category-admin-summary strong {
    color: var(--admin-text);
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1;
}
.category-admin-layout {
    display: grid;
    grid-template-columns: minmax(280px, 400px) minmax(0, 1fr);
    align-items: start;
    gap: 18px;
}
.category-create-panel {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 16px;
}
.category-create-panel small,
.category-delete-form small {
    color: var(--admin-muted);
}
.category-admin-list {
    display: grid;
    gap: 16px;
}
.category-admin-card {
    display: grid;
    grid-template-columns: minmax(190px, 260px) minmax(0, 1fr);
    gap: 16px;
    overflow: hidden;
}
.category-admin-card.is-inactive {
    opacity: .72;
}
.category-admin-media {
    position: relative;
    min-height: 230px;
    overflow: hidden;
    background: rgba(255, 248, 239, .05);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.category-admin-media img {
    width: 100%;
    height: 100%;
    min-height: 230px;
    object-fit: cover;
}
.category-status {
    position: absolute;
    left: 12px;
    top: 12px;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    color: #24190f;
    background: rgba(232, 201, 140, .92);
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 950;
    text-transform: uppercase;
}
.category-admin-form {
    display: grid;
    gap: 14px;
}
.category-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}
.category-card-head span {
    color: var(--admin-gold);
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.category-card-head h2 {
    margin: 6px 0 0;
    color: var(--admin-text);
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: .95;
}
.category-switch {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .06);
    border: 1px solid var(--admin-line-soft);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
}
.category-switch input {
    width: auto;
    min-height: auto;
}
.category-admin-actions,
.category-delete-form {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}
.category-delete-form {
    margin-top: 2px;
    padding-top: 14px;
    border-top: 1px solid var(--admin-line-soft);
}
.orders-admin-shell {
    display: grid;
    grid-template-columns: minmax(300px, 390px) minmax(0, 1fr);
    align-items: start;
    gap: 18px;
}
.orders-list-panel {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 16px;
    max-height: calc(100vh - 48px);
    overflow-y: auto;
}
.orders-search {
    display: grid;
    gap: 12px;
}
.order-filter-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
}
.order-filter-tabs a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 13px;
    color: var(--admin-muted);
    background: rgba(255, 248, 239, .055);
    border: 1px solid var(--admin-line-soft);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
}
.order-filter-tabs a.is-active,
.order-filter-tabs a:hover {
    color: #24190f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border-color: rgba(255, 232, 182, .4);
}
.orders-list {
    display: grid;
    gap: 10px;
}
.order-list-card {
    display: grid;
    gap: 7px;
    padding: 14px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.order-list-card.is-active,
.order-list-card:hover {
    background: rgba(224, 190, 132, .12);
    border-color: rgba(224, 190, 132, .4);
}
.order-list-card > span {
    color: var(--admin-gold);
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .12em;
}
.order-list-card strong,
.order-list-card small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.order-list-card small {
    color: var(--admin-muted);
}
.order-list-card div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.order-list-card b {
    color: var(--admin-text);
}
.order-status {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    color: #24190f;
    background: rgba(224, 190, 132, .9);
    border: 1px solid rgba(255, 232, 182, .28);
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.order-status-pending { color: #fff2d3; background: rgba(169, 115, 45, .32); }
.order-status-paid,
.order-status-preparing { color: #e8fff1; background: rgba(42, 121, 79, .36); }
.order-status-shipped,
.order-status-completed { color: #edf8ff; background: rgba(58, 116, 148, .34); }
.order-status-cancelled { color: #fff0ec; background: rgba(154, 72, 50, .48); }
.order-detail-panel {
    display: grid;
    gap: 18px;
}
.order-detail-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--admin-line-soft);
}
.order-detail-head h2 {
    margin: 6px 0 0;
    color: var(--admin-text);
    font-size: clamp(2.6rem, 6vw, 4.8rem);
    line-height: .9;
}
.order-detail-head p {
    margin: 8px 0 0;
    color: var(--admin-muted);
}
.order-detail-head-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}
.order-detail-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.order-detail-grid article,
.order-address,
.order-totals,
.order-history-row {
    padding: 14px;
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.order-detail-grid span,
.order-address span,
.order-items-head,
.order-totals span,
.order-history-row span {
    color: var(--admin-muted);
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.order-detail-grid strong {
    display: block;
    overflow-wrap: anywhere;
    margin-top: 8px;
    color: var(--admin-text);
}
.order-detail-grid small {
    display: block;
    margin-top: 5px;
    color: var(--admin-muted);
}
.order-address p {
    margin: 8px 0 0;
    color: var(--admin-text);
    line-height: 1.6;
}
.order-items {
    overflow: hidden;
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.order-items-head,
.order-item-row {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) .6fr .7fr .7fr;
    gap: 12px;
    align-items: center;
    padding: 14px;
}
.order-items-head {
    background: rgba(255, 248, 239, .05);
    border-bottom: 1px solid var(--admin-line-soft);
}
.order-item-row + .order-item-row {
    border-top: 1px solid var(--admin-line-soft);
}
.order-item-row strong,
.order-item-row b {
    color: var(--admin-text);
}
.order-item-row span {
    color: var(--admin-muted);
}
.order-totals {
    display: grid;
    gap: 10px;
    justify-self: end;
    width: min(100%, 360px);
}
.order-totals div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}
.order-totals strong {
    color: var(--admin-text);
}
.order-totals .is-total {
    padding-top: 10px;
    border-top: 1px solid var(--admin-line-soft);
}
.order-totals .is-total strong {
    color: var(--admin-gold);
    font-size: 1.28rem;
}
.order-admin-actions {
    display: grid;
    gap: 12px;
    padding-top: 18px;
    border-top: 1px solid var(--admin-line-soft);
}
.order-admin-actions > div {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.order-history {
    display: grid;
    gap: 10px;
    padding-top: 10px;
}
.order-history .section-heading {
    margin-bottom: 2px;
}
.order-history .section-heading h2 {
    font-size: clamp(2rem, 4vw, 3rem);
}
.order-history-row {
    display: grid;
    gap: 5px;
}
.order-history-row strong {
    color: var(--admin-text);
}
.order-history-row small {
    color: var(--admin-muted);
}
.settings-admin-form {
    display: grid;
    gap: 18px;
}
.settings-section {
    display: grid;
    gap: 18px;
    overflow: visible;
}
.settings-section-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--admin-line-soft);
}
.settings-section-head > span {
    display: inline-grid;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    place-items: center;
    color: #24190f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border-radius: 999px;
    font-weight: 950;
}
.settings-section-head h2 {
    margin: 4px 0 0;
    font-size: clamp(2.2rem, 5vw, 3.4rem);
    line-height: .95;
}
.settings-brand-preview {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.settings-brand-preview img {
    width: 70px;
    height: 70px;
    object-fit: contain;
    background: rgba(255, 248, 239, .06);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.settings-brand-preview div {
    display: grid;
    gap: 4px;
    min-width: 0;
}
.settings-brand-preview strong {
    overflow: hidden;
    color: var(--admin-text);
    text-overflow: ellipsis;
    white-space: nowrap;
}
.settings-brand-preview span,
.settings-note {
    color: var(--admin-muted);
}
.settings-color-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.settings-color-row input[type="color"] {
    width: 100%;
    min-height: 52px;
    padding: 6px;
}
.settings-check-list {
    display: grid;
    gap: 10px;
    padding: 14px;
    background: rgba(255, 248, 239, .04);
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}
.settings-legal-links {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.settings-save-bar {
    position: sticky;
    z-index: 20;
    bottom: 16px;
    display: flex;
    justify-content: flex-end;
    padding: 12px;
    background: rgba(8, 17, 13, .84);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
    backdrop-filter: blur(18px);
}
.quick-actions,
.stats-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.admin-panel,
.form-panel,
.admin-login,
.quick-actions a,
.stats-grid > div {
    color: var(--admin-text);
    background: linear-gradient(180deg, rgba(255, 248, 239, .075), rgba(255, 248, 239, .035)), var(--admin-panel);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .24);
}
.quick-actions a,
.stats-grid > div {
    min-height: 118px;
    padding: 18px;
}
.quick-actions a {
    align-content: space-between;
    color: var(--admin-text);
}
.quick-actions a::after {
    content: "→";
    justify-self: end;
    color: var(--admin-gold);
    font-weight: 950;
}
.quick-actions span,
.stats-grid span {
    color: var(--admin-muted);
}
.stats-grid strong {
    color: var(--admin-text);
    font-size: clamp(1.9rem, 3vw, 2.8rem);
}
.admin-panel,
.form-panel {
    padding: clamp(18px, 3vw, 28px);
    overflow-x: auto;
}
.admin-body h2 {
    color: var(--admin-text);
}
.admin-body table {
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;
}
.admin-body th,
.admin-body td {
    color: rgba(247, 239, 227, .88);
    border-bottom: 1px solid var(--admin-line-soft);
}
.admin-body th {
    color: var(--admin-muted);
    font-size: .72rem;
    letter-spacing: .08em;
}
.admin-body tr:last-child td {
    border-bottom: 0;
}
.admin-body .pill {
    color: #24190f;
    background: rgba(224, 190, 132, .88);
    border-color: rgba(255, 236, 194, .26);
}
.admin-log-panel {
    overflow-x: auto;
}
.admin-log-table strong,
.admin-log-table small {
    display: block;
}
.admin-log-table small {
    margin-top: 4px;
    color: var(--admin-muted);
    font-size: .74rem;
}
.admin-log-action {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    color: #24190f;
    background: linear-gradient(135deg, #e8c98c, var(--admin-gold));
    border: 1px solid rgba(255, 236, 194, .34);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 950;
    white-space: nowrap;
}
.admin-log-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    max-width: 360px;
}
.admin-log-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 9px;
    color: rgba(247, 239, 227, .86);
    background: rgba(255, 248, 239, .055);
    border: 1px solid var(--admin-line-soft);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 750;
}
.admin-body label {
    color: var(--admin-text);
}
.admin-body input,
.admin-body textarea,
.admin-body select {
    color: var(--admin-text);
    background: rgba(255, 248, 239, .065);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    outline: none;
}
.admin-body input:focus,
.admin-body textarea:focus,
.admin-body select:focus {
    border-color: rgba(224, 190, 132, .56);
    box-shadow: 0 0 0 4px rgba(224, 190, 132, .08);
}
.admin-body input::placeholder,
.admin-body textarea::placeholder {
    color: rgba(247, 239, 227, .38);
}
.admin-two-col {
    grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
}
.row-actions {
    align-items: center;
    gap: 8px;
}
.row-actions form {
    margin: 0;
}
.admin-login {
    margin: 0;
    padding: clamp(24px, 5vw, 38px);
}
.admin-login img {
    width: 112px;
}
.admin-login h1 {
    color: var(--admin-text);
    font-size: clamp(3rem, 10vw, 4.8rem);
}
.admin-login p {
    color: var(--admin-muted);
}
.admin-mobile-header,
.admin-drawer,
.admin-overlay,
.admin-bottom-nav {
    display: none;
}

@media (max-width: 1180px) {
    .dashboard-kpis,
    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dashboard-main-grid {
        grid-template-columns: 1fr;
    }
    .quick-actions,
    .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .category-admin-layout {
        grid-template-columns: 1fr;
    }
    .category-create-panel {
        position: static;
    }
    .orders-admin-shell {
        grid-template-columns: 1fr;
    }
    .orders-list-panel {
        position: static;
        max-height: none;
    }
    .order-detail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 760px) {
    .product-admin-toolbar {
        grid-template-columns: minmax(280px, 1fr) auto;
        align-items: end;
    }
    .product-admin-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .product-admin-card {
        grid-template-columns: 190px minmax(0, 1fr);
    }
    .product-admin-media img {
        height: 100%;
        min-height: 230px;
    }
    .product-admin-actions,
    .product-form-actions {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
    }
    .product-admin-actions form,
    .product-admin-actions .btn,
    .product-form-actions .btn {
        width: auto;
    }
    .product-image-manager {
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    }
    .secondary-image-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1320px) {
    .product-admin-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .product-admin-card {
        grid-template-columns: 1fr;
    }
    .product-admin-media img {
        min-height: 0;
    }
}

@media (max-width: 960px) {
    .admin-body {
        padding-bottom: 82px;
    }
    .admin-shell {
        grid-template-columns: 1fr;
        min-height: 100vh;
    }
    .admin-sidebar {
        display: none;
    }
    .admin-main {
        padding: 92px 16px 28px;
    }
    .admin-mobile-header {
        position: fixed;
        z-index: 80;
        top: 0;
        left: 0;
        right: 0;
        display: grid;
        grid-template-columns: 48px minmax(0, 1fr) 48px;
        align-items: center;
        gap: 10px;
        min-height: 70px;
        padding: 10px 14px;
        background: rgba(8, 17, 13, .9);
        border-bottom: 1px solid var(--admin-line);
        backdrop-filter: blur(18px);
    }
    .admin-icon-btn,
    .admin-notification,
    .admin-close {
        display: inline-grid;
        place-items: center;
        width: 44px;
        height: 44px;
        color: var(--admin-text);
        background: rgba(255, 248, 239, .06);
        border: 1px solid var(--admin-line);
        border-radius: 999px;
        cursor: pointer;
    }
    .admin-icon-btn span {
        display: block;
        width: 18px;
        height: 2px;
        background: currentColor;
        border-radius: 99px;
    }
    .admin-icon-btn {
        gap: 4px;
    }
    .admin-mobile-brand {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-width: 0;
        color: var(--admin-text);
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
    }
    .admin-mobile-brand img {
        width: 36px;
        height: 36px;
        object-fit: contain;
    }
    .admin-mobile-brand strong {
        overflow: hidden;
        font-size: .74rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .admin-notification {
        position: relative;
    }
    .admin-notification::before {
        content: "";
        width: 16px;
        height: 18px;
        border: 2px solid currentColor;
        border-bottom-width: 3px;
        border-radius: 10px 10px 6px 6px;
    }
    .admin-notification span {
        position: absolute;
        right: 10px;
        top: 9px;
        width: 9px;
        height: 9px;
        background: var(--admin-gold);
        border: 2px solid #08110d;
        border-radius: 50%;
    }
    .admin-overlay {
        position: fixed;
        inset: 0;
        z-index: 90;
        display: block;
        background: rgba(0, 0, 0, .58);
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s ease;
    }
    .admin-drawer {
        position: fixed;
        z-index: 100;
        inset: 0 auto 0 0;
        display: flex;
        flex-direction: column;
        width: min(360px, 92vw);
        padding: 18px;
        overflow-y: auto;
        background: linear-gradient(180deg, #13241d, #08110d);
        border-right: 1px solid var(--admin-line);
        box-shadow: 30px 0 80px rgba(0, 0, 0, .35);
        transform: translateX(-105%);
        transition: transform .24s ease;
    }
    .admin-drawer-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 16px;
    }
    .admin-close {
        flex: 0 0 auto;
        font-size: 1.8rem;
        line-height: 1;
    }
    .admin-menu-open .admin-overlay {
        opacity: 1;
        pointer-events: auto;
    }
    .admin-menu-open .admin-drawer {
        transform: translateX(0);
    }
    .admin-bottom-nav {
        position: fixed;
        z-index: 75;
        left: 12px;
        right: 12px;
        bottom: 12px;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 6px;
        padding: 8px;
        background: rgba(8, 17, 13, .92);
        border: 1px solid var(--admin-line);
        border-radius: 8px;
        box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
        backdrop-filter: blur(18px);
    }
    .admin-bottom-nav a {
        display: grid;
        justify-items: center;
        gap: 4px;
        min-height: 52px;
        padding: 6px 4px;
        color: var(--admin-muted);
        border-radius: 8px;
        font-size: .68rem;
        font-weight: 850;
    }
    .admin-bottom-nav a.is-active {
        color: var(--admin-text);
        background: rgba(224, 190, 132, .12);
    }
    .admin-bottom-nav i {
        width: 24px;
        height: 24px;
        font-size: .62rem;
    }
}

@media (max-width: 720px) {
    .admin-main {
        padding: 88px 12px 24px;
    }
    .admin-heading {
        gap: 14px;
        margin-bottom: 18px;
    }
    .admin-heading h1 {
        font-size: clamp(3rem, 15vw, 4.35rem);
    }
    .quick-actions,
    .stats-grid,
    .category-admin-summary,
    .dashboard-kpis,
    .dashboard-quick-actions,
    .admin-two-col {
        grid-template-columns: 1fr;
    }
    .category-admin-card {
        grid-template-columns: 1fr;
    }
    .category-admin-media,
    .category-admin-media img {
        min-height: 190px;
    }
    .category-card-head {
        display: grid;
    }
    .category-switch {
        width: fit-content;
    }
    .order-detail-head {
        display: grid;
    }
    .order-detail-head-actions {
        justify-content: flex-start;
    }
    .order-detail-grid,
    .order-items-head,
    .order-item-row {
        grid-template-columns: 1fr;
    }
    .order-items-head {
        display: none;
    }
    .order-item-row {
        gap: 8px;
    }
    .order-item-row span::before {
        color: var(--admin-muted);
        font-size: .66rem;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }
    .order-item-row span:nth-child(2)::before { content: "Quantité : "; }
    .order-item-row span:nth-child(3)::before { content: "Prix : "; }
    .order-item-row b::before {
        content: "Total : ";
        color: var(--admin-muted);
        font-size: .66rem;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }
    .order-totals {
        justify-self: stretch;
    }
    .order-admin-actions > div {
        display: grid;
    }
    .settings-section-head {
        display: grid;
    }
    .settings-color-row {
        grid-template-columns: 1fr;
    }
    .settings-save-bar {
        left: 12px;
        right: 12px;
        bottom: 84px;
    }
    .checkout-payment-actions {
        display: grid;
    }
    .dashboard-kpi,
    .dashboard-quick-actions a,
    .dashboard-quick-actions .is-disabled {
        min-height: 104px;
    }
    .dashboard-chart {
        min-height: 220px;
        gap: 8px;
        padding-inline: 0;
    }
    .dashboard-bar {
        height: 190px;
    }
    .dashboard-list-row {
        grid-template-columns: 38px minmax(0, 1fr);
    }
    .dashboard-list-row em {
        grid-column: 2;
    }
    .quick-actions a,
    .stats-grid > div {
        min-height: 104px;
    }
    .admin-panel,
    .form-panel {
        padding: 16px;
    }
    .admin-body .form-grid {
        grid-template-columns: 1fr;
    }
    .row-actions {
        flex-wrap: wrap;
    }
    .row-actions .btn,
    .row-actions form {
        width: 100%;
    }
    .admin-body .btn {
        width: 100%;
    }
}

@media (max-width: 390px) {
    .admin-mobile-header {
        grid-template-columns: 42px minmax(0, 1fr) 42px;
        padding: 9px 10px;
    }
    .admin-icon-btn,
    .admin-notification,
    .admin-close {
        width: 40px;
        height: 40px;
    }
    .admin-mobile-brand strong {
        max-width: 150px;
        font-size: .68rem;
    }
    .admin-bottom-nav {
        left: 8px;
        right: 8px;
        bottom: 8px;
        gap: 4px;
    }
    .admin-bottom-nav span {
        font-size: .62rem;
    }
}

/* Premium UI refresh inspired by the validated admin and storefront mockups. */
body:not(.admin-body) {
    background:
        radial-gradient(circle at 12% 0%, rgba(200, 139, 99, .16), transparent 28rem),
        linear-gradient(180deg, #fffaf4 0, #f7ede5 34rem, #fffaf4 72rem);
}

.top-note {
    background: linear-gradient(90deg, #27180d, #4a2d17, #27180d);
    letter-spacing: .04em;
}

.site-header {
    grid-template-columns: 52px minmax(150px, 220px) minmax(340px, 1fr) minmax(130px, 190px);
    min-height: 86px;
    background: rgba(255, 251, 246, .94);
    box-shadow: 0 14px 42px rgba(51, 32, 19, .06);
}

.brand-text-only span {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: .08em;
}

.main-nav a {
    min-height: 42px;
    border: 1px solid transparent;
}

.main-nav a:hover {
    border-color: rgba(181, 129, 76, .24);
}

.shop-hero.home-hero {
    width: min(100vw, 1440px);
    margin-left: calc(50% - min(50vw, 720px));
    grid-template-columns: minmax(300px, .76fr) minmax(440px, 1.24fr);
    gap: clamp(24px, 4vw, 58px);
    min-height: 590px;
    padding: clamp(42px, 5vw, 78px) clamp(22px, 6vw, 92px);
    background:
        linear-gradient(90deg, rgba(255, 250, 244, .97) 0 38%, rgba(247, 232, 220, .74) 62%, rgba(255, 250, 244, .78)),
        radial-gradient(circle at 78% 48%, rgba(181, 129, 76, .18), transparent 34rem);
}

.home-hero .hero-brand-mark {
    width: 78px;
    height: 78px;
    object-fit: contain;
    margin-bottom: 16px;
}

.home-hero .hero-copy h1 {
    font-size: clamp(3.4rem, 5.2vw, 6.3rem);
    letter-spacing: 0;
}

.home-hero .hero-copy p:not(.eyebrow) {
    max-width: 470px;
    color: #4f4037;
}

.home-hero-visual {
    min-height: 470px;
    padding: 0;
    overflow: hidden;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.home-hero-visual .hero-box {
    width: 100%;
    height: min(48vw, 520px);
    max-height: none;
    object-fit: cover;
    border: 1px solid rgba(181, 129, 76, .22);
    border-radius: var(--radius);
    box-shadow: 0 34px 90px rgba(71, 43, 25, .16);
}

.hero-product-card {
    right: clamp(18px, 3vw, 38px);
    bottom: clamp(18px, 3vw, 38px);
    background: rgba(255, 251, 246, .9);
    border: 1px solid rgba(181, 129, 76, .28);
    backdrop-filter: blur(18px);
}

.home-trust-strip {
    margin-top: 0;
    background: rgba(255, 251, 246, .86);
    border-color: rgba(181, 129, 76, .24);
    box-shadow: 0 24px 60px rgba(78, 47, 29, .08);
}

.home-trust-strip article i {
    color: var(--gold);
    border-color: rgba(181, 129, 76, .28);
}

.collection-card,
.product-card,
.review-card,
.brand-story,
.form-panel,
.table-panel,
.auth-panel {
    border-color: rgba(181, 129, 76, .18);
    box-shadow: 0 24px 70px rgba(67, 41, 26, .08);
}

.collection-card {
    background: linear-gradient(180deg, rgba(255, 251, 246, .98), rgba(250, 239, 230, .86));
}

.collection-card img {
    aspect-ratio: 1 / .82;
    border-radius: var(--radius);
}

.product-card {
    background: linear-gradient(180deg, rgba(255, 251, 246, .98), rgba(255, 247, 239, .94));
}

.product-body {
    padding: 22px;
}

.product-body h3 {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.65rem;
    font-weight: 700;
}

.product-composition {
    min-height: 0;
    padding: 12px;
    background: rgba(181, 129, 76, .055);
    border: 1px solid rgba(181, 129, 76, .16);
    border-radius: var(--radius);
}

.product-actions {
    padding-top: 8px;
}

.site-footer {
    background:
        radial-gradient(circle at 10% 0%, rgba(181, 129, 76, .16), transparent 24rem),
        linear-gradient(135deg, #100c09, #19352d);
    color: rgba(255, 248, 239, .9);
}

.site-footer a,
.site-footer span {
    color: rgba(255, 248, 239, .68);
}

.admin-body {
    --admin-panel: rgba(18, 34, 28, .78);
    --admin-line: rgba(232, 201, 140, .18);
    --admin-line-soft: rgba(255, 248, 239, .09);
    --admin-text: #fff8ee;
    --admin-muted: #b8afa4;
    --admin-gold: #e7bd65;
    background:
        radial-gradient(circle at 18% -10%, rgba(48, 108, 83, .28), transparent 30rem),
        radial-gradient(circle at 84% 6%, rgba(181, 129, 76, .16), transparent 25rem),
        linear-gradient(135deg, #040807, #071510 42%, #030504);
}

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

.admin-sidebar {
    padding: 26px 16px;
    background:
        linear-gradient(180deg, rgba(6, 18, 14, .98), rgba(4, 9, 8, .98)),
        #06120e;
}

.admin-brand {
    min-height: 104px;
    padding: 16px;
    background: linear-gradient(145deg, rgba(232, 201, 140, .08), rgba(255, 255, 255, .035));
    border-color: rgba(232, 201, 140, .2);
}

.admin-brand img {
    width: 62px;
    height: 62px;
}

.admin-store-link {
    min-height: 50px;
    color: #1d1309;
    background: linear-gradient(135deg, #f0d99d, #c9944e);
}

.admin-menu-link {
    min-height: 50px;
    padding-inline: 14px;
    border-radius: var(--radius);
    font-size: .92rem;
}

.admin-menu-link i,
.admin-bottom-nav i {
    color: var(--admin-gold);
    background: rgba(232, 201, 140, .09);
}

.admin-menu-link:hover,
.admin-menu-link.is-active {
    background: linear-gradient(90deg, rgba(232, 201, 140, .15), rgba(255, 255, 255, .055));
    border-color: rgba(232, 201, 140, .22);
}

.admin-profile {
    border-color: rgba(232, 201, 140, .2);
    background: linear-gradient(145deg, rgba(255, 248, 239, .065), rgba(255, 248, 239, .025));
}

.admin-topbar {
    position: sticky;
    top: 0;
    z-index: 25;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 72px;
    margin: calc(clamp(28px, 4vw, 56px) * -1) calc(clamp(28px, 4vw, 56px) * -1) 28px;
    padding: 12px clamp(28px, 4vw, 56px);
    background: rgba(5, 13, 10, .72);
    border-bottom: 1px solid var(--admin-line-soft);
    backdrop-filter: blur(20px);
}

.admin-topbar-title,
.admin-topbar-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.admin-topbar-title strong {
    overflow: hidden;
    color: var(--admin-text);
    font-size: 1.1rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-topbar-burger,
.admin-topbar-notification {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line);
    border-radius: var(--radius);
}

.admin-topbar-burger {
    gap: 4px;
}

.admin-topbar-burger span {
    display: block;
    width: 18px;
    height: 2px;
    background: currentColor;
    border-radius: 99px;
}

.admin-topbar-notification {
    position: relative;
}

.admin-topbar-notification::before {
    content: "";
    width: 15px;
    height: 17px;
    border: 2px solid currentColor;
    border-bottom-width: 3px;
    border-radius: 10px 10px 6px 6px;
}

.admin-topbar-notification span {
    position: absolute;
    right: 5px;
    top: 4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    color: #1b1208;
    background: var(--admin-gold);
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 950;
}

.admin-topbar-shop {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    max-width: 220px;
    padding: 0 16px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .045);
    border: 1px solid var(--admin-line);
    border-radius: var(--radius);
    font-weight: 800;
}

.admin-heading h1 {
    font-size: clamp(3.2rem, 4.9vw, 5.4rem);
}

.admin-panel,
.form-panel,
.admin-login,
.dashboard-kpi,
.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled,
.product-admin-card,
.category-admin-summary article,
.order-list-card {
    background:
        linear-gradient(180deg, rgba(255, 248, 239, .075), rgba(255, 248, 239, .032)),
        radial-gradient(circle at 92% 6%, rgba(232, 201, 140, .095), transparent 16rem),
        rgba(13, 27, 22, .78);
    border-color: rgba(232, 201, 140, .16);
    box-shadow: 0 28px 80px rgba(0, 0, 0, .26);
}

.dashboard-kpis {
    gap: 18px;
}

.dashboard-kpi {
    min-height: 136px;
}

.dashboard-kpi strong {
    font-family: Manrope, system-ui, sans-serif;
    font-size: clamp(2rem, 2.7vw, 2.65rem);
    font-weight: 750;
}

.dashboard-chart {
    background:
        linear-gradient(rgba(255, 248, 239, .055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 248, 239, .045) 1px, transparent 1px);
    background-size: 100% 25%, 16.66% 100%;
    border: 1px solid var(--admin-line-soft);
    border-radius: var(--radius);
}

.dashboard-bar span {
    background: linear-gradient(180deg, #ffd981, #d59a43 62%, rgba(213, 154, 67, .28));
}

.product-admin-list {
    gap: 16px;
}

.product-admin-card {
    transition: transform .18s ease, border-color .18s ease;
}

.product-admin-card:hover {
    transform: translateY(-2px);
    border-color: rgba(232, 201, 140, .28);
}

.product-admin-media img {
    filter: saturate(.96) contrast(1.02);
}

.product-admin-content h2,
.category-card-head h2,
.settings-section-head h2,
.order-detail-head h2 {
    font-family: "Cormorant Garamond", Georgia, serif;
}

.admin-body input,
.admin-body textarea,
.admin-body select {
    min-height: 50px;
    background: rgba(255, 248, 239, .055);
    border-color: rgba(255, 248, 239, .13);
}

.admin-body textarea {
    min-height: 132px;
}

.product-image-box,
.settings-check-list,
.dashboard-list-row,
.order-detail-grid article,
.order-address,
.order-totals,
.order-history-row {
    background: rgba(255, 248, 239, .045);
    border-color: rgba(255, 248, 239, .105);
}

.orders-list,
.order-detail-panel {
    min-width: 0;
}

.order-list-card {
    border-radius: var(--radius);
}

.order-status {
    color: #1d1309;
    background: #e7bd65;
}

.order-status-paid,
.order-status-preparing {
    color: #dcffeb;
    background: rgba(44, 163, 93, .34);
}

.order-status-shipped,
.order-status-completed {
    color: #e7f4ff;
    background: rgba(80, 153, 209, .34);
}

.order-status-cancelled {
    color: #fff1ee;
    background: rgba(220, 83, 72, .38);
}

.settings-save-bar {
    border-color: rgba(232, 201, 140, .2);
}

@media (min-width: 961px) {
    .admin-mobile-header,
    .admin-drawer,
    .admin-overlay,
    .admin-bottom-nav {
        display: none !important;
    }
}

@media (max-width: 960px) {
    .admin-topbar {
        display: none;
    }

    .admin-body {
        background:
            radial-gradient(circle at 50% -10%, rgba(48, 108, 83, .25), transparent 22rem),
            linear-gradient(180deg, #06120e, #040807);
    }

    .admin-mobile-header {
        min-height: 78px;
        background: rgba(5, 13, 10, .86);
    }

    .admin-mobile-brand img {
        width: 48px;
        height: 48px;
    }

    .admin-mobile-brand strong {
        font-family: "Cormorant Garamond", Georgia, serif;
        font-size: 1.02rem;
        letter-spacing: .08em;
    }

    .admin-main {
        padding-top: 98px;
    }

    .admin-heading h1 {
        font-size: clamp(2.45rem, 11vw, 3.7rem);
    }

    .dashboard-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .dashboard-kpi {
        min-height: 126px;
        padding: 15px;
    }

    .dashboard-kpi span {
        font-size: .66rem;
        letter-spacing: .08em;
    }

    .dashboard-kpi strong {
        font-size: 2rem;
    }

    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-admin-card {
        grid-template-columns: 92px minmax(0, 1fr);
        align-items: center;
        padding: 10px;
    }

    .product-admin-media img {
        aspect-ratio: 1;
        min-height: 92px;
    }

    .product-admin-content h2 {
        margin-top: 6px;
        font-size: 1.28rem;
        line-height: 1.05;
    }

    .product-admin-content p,
    .product-admin-meta {
        display: none;
    }

    .product-admin-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product-admin-actions .btn {
        min-height: 38px;
        padding-inline: 8px;
        font-size: .66rem;
    }

    .orders-list-panel {
        background: transparent;
        border: 0;
        box-shadow: none;
        padding: 0;
    }

    .orders-list {
        gap: 10px;
    }

    .order-list-card {
        min-height: 78px;
    }

    .admin-bottom-nav {
        border-radius: var(--radius);
        background: rgba(5, 13, 10, .92);
    }

    .admin-bottom-nav a.is-active i {
        color: #1d1309;
        background: var(--admin-gold);
    }
}

@media (max-width: 720px) {
    .top-note {
        grid-template-columns: 1fr;
    }

    .top-note span:nth-child(n+2) {
        display: none;
    }

    .site-header {
        grid-template-columns: 46px minmax(0, 1fr) auto;
        min-height: 74px;
        padding: 10px 16px;
    }

    .main-nav {
        display: none;
    }

    .header-actions .icon-link:first-child,
    .admin-shortcut {
        display: none;
    }

    .brand-text-only {
        justify-content: center;
        min-height: 50px;
    }

    .brand-text-only span {
        text-align: center;
        font-size: 1.15rem;
    }

    .shop-hero.home-hero {
        width: min(100%, calc(100vw - 24px));
        margin: 0 auto;
        grid-template-columns: 1fr;
        min-height: 0;
        padding: 34px 0 26px;
        background: transparent;
    }

    .home-hero .hero-copy {
        justify-items: center;
        text-align: center;
    }

    .home-hero .hero-brand-mark {
        width: 64px;
        height: 64px;
    }

    .home-hero .hero-copy h1 {
        font-size: clamp(2.9rem, 14vw, 4.35rem);
    }

    .home-hero .hero-copy p:not(.eyebrow) {
        max-width: 330px;
        margin-top: 14px;
        font-size: .98rem;
    }

    .hero-actions {
        display: grid;
        width: 100%;
    }

    .home-hero-visual {
        min-height: 0;
    }

    .home-hero-visual .hero-box {
        height: auto;
        aspect-ratio: 1.45 / 1;
    }

    .hero-product-card {
        display: none;
    }

    .home-trust-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        margin-top: 12px;
    }

    .home-trust-strip article {
        padding: 14px 8px;
    }

    .home-trust-strip article:nth-child(4) {
        display: none;
    }

    .home-trust-strip strong {
        font-size: .64rem;
    }

    .home-trust-strip span {
        font-size: .7rem;
    }

    .collection-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .collection-card {
        padding: 0;
        text-align: center;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .collection-card img {
        aspect-ratio: 1;
        border-radius: 50%;
        border: 1px solid rgba(181, 129, 76, .2);
    }

    .collection-card span {
        font-size: .8rem;
    }

    .collection-card small {
        display: none;
    }

    .premium-product-grid,
    .product-grid {
        grid-template-columns: 1fr;
    }

    .product-card {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        align-items: stretch;
    }

    .product-card .product-image {
        aspect-ratio: auto;
        min-height: 100%;
    }

    .product-body {
        padding: 14px;
        gap: 8px;
    }

    .product-body h3 {
        min-height: 0;
        font-size: 1.25rem;
    }

    .product-body > p,
    .product-composition {
        display: none;
    }

    .product-button-row {
        display: grid;
        grid-template-columns: 1fr;
    }

    .product-button-row form,
    .product-button-row .btn {
        width: 100%;
    }
}

/* Maquette premium V2: vraie refonte visuelle sans toucher aux routes ni a la logique. */
body:not(.admin-body) {
    background:
        radial-gradient(circle at 12% -8%, rgba(179, 116, 62, .16), transparent 28rem),
        radial-gradient(circle at 82% 8%, rgba(244, 204, 159, .2), transparent 32rem),
        linear-gradient(180deg, #fffaf5 0, #f5e9df 46rem, #fffaf5 100%);
}

.top-note {
    min-height: 34px;
    background: linear-gradient(90deg, #251407, #3c2311 45%, #251407);
    font-size: .69rem;
    letter-spacing: .08em;
}

.site-header {
    grid-template-columns: 54px minmax(160px, 230px) minmax(520px, 1fr) minmax(120px, 170px);
    gap: clamp(14px, 3.4vw, 38px);
    min-height: 94px;
    padding: 14px clamp(26px, 6vw, 86px);
    background: rgba(255, 250, 246, .96);
    border-bottom: 1px solid rgba(42, 33, 29, .09);
    box-shadow: 0 12px 42px rgba(65, 42, 26, .045);
}

.menu-toggle,
.icon-link {
    background: rgba(255, 255, 255, .52);
    border-color: rgba(77, 49, 31, .14);
    box-shadow: 0 10px 28px rgba(65, 42, 26, .055);
}

.brand-text-only {
    justify-content: flex-start;
}

.brand-text-only span {
    color: #2d1b10;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.42rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-align: left;
    text-transform: uppercase;
}

.brand-text-only strong {
    color: #a86d3e;
    font-family: Manrope, system-ui, sans-serif;
    font-size: .61rem;
    letter-spacing: .46em;
}

.main-nav {
    justify-content: center;
    gap: clamp(18px, 3vw, 42px);
}

.main-nav a {
    position: relative;
    min-height: 38px;
    padding: 0 2px;
    color: #2d1b10;
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .09em;
}

.main-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 3px;
    height: 1px;
    background: #2d1b10;
    opacity: 0;
    transform: scaleX(.45);
    transition: opacity .18s ease, transform .18s ease;
}

.main-nav a:hover {
    color: #2d1b10;
    background: transparent;
}

.main-nav a:hover::after {
    opacity: 1;
    transform: scaleX(1);
}

.shop-hero.home-hero {
    width: min(100vw, 1480px);
    margin-left: calc(50% - min(50vw, 740px));
    grid-template-columns: minmax(330px, .72fr) minmax(520px, 1.28fr);
    align-items: center;
    gap: clamp(22px, 4vw, 68px);
    min-height: 610px;
    padding: clamp(48px, 6vw, 88px) clamp(28px, 6.4vw, 96px);
    background:
        linear-gradient(90deg, rgba(255, 250, 245, .98) 0 42%, rgba(245, 226, 211, .78) 72%, rgba(255, 250, 245, .72)),
        radial-gradient(circle at 80% 44%, rgba(201, 151, 96, .2), transparent 30rem);
}

.home-hero .hero-brand-mark {
    display: none;
}

.home-hero .hero-copy {
    max-width: 520px;
}

.home-hero .hero-copy .eyebrow {
    color: #a86d3e;
    letter-spacing: .34em;
}

.home-hero .hero-copy h1 {
    color: #241811;
    font-size: clamp(3.7rem, 5.4vw, 6rem);
    line-height: .91;
    letter-spacing: 0;
}

.home-hero .hero-copy p:not(.eyebrow) {
    max-width: 410px;
    margin-top: 18px;
    color: #5d4d44;
    font-size: 1.02rem;
}

.hero-actions {
    gap: 14px;
    margin-top: 30px;
}

.btn {
    min-height: 48px;
    border-radius: 999px;
    font-size: .76rem;
    letter-spacing: .04em;
}

body:not(.admin-body) .btn {
    background: #2b1a0f;
    box-shadow: 0 18px 34px rgba(48, 29, 16, .14);
}

body:not(.admin-body) .btn.ghost,
body:not(.admin-body) .quiet-link {
    color: #2b1a0f;
    background: rgba(255, 255, 255, .42);
    border-color: rgba(67, 39, 21, .18);
}

.home-hero-visual {
    min-height: 476px;
    padding: 0;
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.home-hero-visual .hero-box {
    width: 100%;
    height: clamp(390px, 40vw, 560px);
    object-fit: cover;
    object-position: center;
    border: 1px solid rgba(179, 116, 62, .16);
    border-radius: 8px;
    box-shadow: 0 30px 90px rgba(64, 38, 22, .18);
}

.hero-product-card {
    right: 28px;
    bottom: 28px;
    background: rgba(255, 250, 245, .9);
    border-color: rgba(179, 116, 62, .18);
    border-radius: 8px;
    box-shadow: 0 18px 40px rgba(42, 26, 16, .12);
}

.home-trust-strip {
    width: min(1260px, calc(100% - 44px));
    margin: -1px auto 68px;
    background: rgba(255, 252, 249, .9);
    border-color: rgba(179, 116, 62, .12);
    border-radius: 0 0 8px 8px;
    box-shadow: 0 18px 48px rgba(64, 38, 22, .055);
}

.home-trust-strip article {
    padding: 22px 24px;
}

.home-trust-strip article i {
    color: #a86d3e;
    background: transparent;
    border-color: rgba(179, 116, 62, .18);
}

.section-heading h2,
.brand-story h2 {
    color: #241811;
    font-size: clamp(2.2rem, 4vw, 3.8rem);
    line-height: .95;
}

.collection-section,
.featured-products-section,
.brand-story,
.review-section {
    width: min(1260px, calc(100% - 44px));
    margin-inline: auto;
}

.collection-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.collection-card {
    padding: 0;
    overflow: visible;
    text-align: center;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.collection-card img {
    width: 100%;
    aspect-ratio: 1.08 / 1;
    object-fit: cover;
    border: 1px solid rgba(179, 116, 62, .14);
    border-radius: 8px;
    box-shadow: 0 18px 42px rgba(64, 38, 22, .08);
}

.collection-card span {
    margin-top: 14px;
    color: #2d1b10;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.4rem;
    font-weight: 700;
}

.collection-card small {
    color: #a86d3e;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.premium-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.product-card {
    overflow: hidden;
    background: rgba(255, 251, 247, .9);
    border: 1px solid rgba(179, 116, 62, .13);
    border-radius: 8px;
    box-shadow: 0 20px 52px rgba(64, 38, 22, .075);
}

.product-image {
    aspect-ratio: 1.22 / 1;
}

.product-body {
    padding: 20px;
}

.product-body h3 {
    color: #241811;
    font-size: 1.48rem;
    line-height: 1.05;
}

.product-body > p {
    color: #6a5b52;
}

.product-composition {
    background: rgba(168, 109, 62, .045);
    border-color: rgba(168, 109, 62, .12);
    border-radius: 8px;
}

.brand-story {
    grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr);
    margin-top: 64px;
    background:
        radial-gradient(circle at 8% 20%, rgba(179, 116, 62, .12), transparent 18rem),
        rgba(255, 252, 249, .74);
    border-color: rgba(179, 116, 62, .14);
}

.review-card {
    background: rgba(255, 252, 249, .86);
    border-color: rgba(179, 116, 62, .13);
}

.site-footer {
    margin-top: 76px;
    background:
        radial-gradient(circle at 14% -8%, rgba(201, 151, 96, .16), transparent 24rem),
        linear-gradient(135deg, #21150f, #0f211b);
}

.admin-body {
    --admin-bg: #030806;
    --admin-bg-2: #071510;
    --admin-panel: rgba(14, 30, 24, .9);
    --admin-card: rgba(17, 35, 28, .82);
    --admin-line: rgba(231, 189, 101, .16);
    --admin-line-soft: rgba(255, 248, 239, .075);
    --admin-text: #fff9ee;
    --admin-muted: #bab0a3;
    --admin-gold: #e7bd65;
    --admin-green: #123327;
    background:
        radial-gradient(circle at 16% 2%, rgba(36, 92, 68, .34), transparent 34rem),
        radial-gradient(circle at 92% -5%, rgba(231, 189, 101, .13), transparent 28rem),
        linear-gradient(135deg, #030706, #071510 46%, #020403);
    font-family: Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

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

.admin-shell.is-auth {
    grid-template-columns: 1fr;
}

.admin-sidebar {
    width: 272px;
    padding: 28px 14px 16px;
    background:
        radial-gradient(circle at 50% 0%, rgba(231, 189, 101, .08), transparent 18rem),
        linear-gradient(180deg, rgba(5, 18, 14, .98), rgba(2, 7, 6, .98));
    border-right: 1px solid rgba(231, 189, 101, .14);
    box-shadow: 22px 0 70px rgba(0, 0, 0, .36);
}

.admin-sidebar > div:first-child {
    min-height: 0;
}

.admin-sidebar .admin-brand {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 8px;
    min-height: 138px;
    padding: 18px 14px;
    text-align: center;
    background: transparent;
    border: 0;
}

.admin-sidebar .admin-brand img {
    width: 94px;
    height: 94px;
}

.admin-sidebar .admin-brand small {
    color: var(--admin-gold);
    font-size: .63rem;
    letter-spacing: .34em;
}

.admin-sidebar .admin-brand strong {
    font-size: .96rem;
    letter-spacing: .12em;
}

.admin-store-link {
    min-height: 52px;
    margin: 12px 0 22px;
    color: #1e1409;
    background: linear-gradient(135deg, #f2d790, #c39145);
    border-color: rgba(255, 231, 177, .48);
    border-radius: 8px;
    box-shadow: 0 18px 44px rgba(194, 143, 67, .2);
}

.admin-menu {
    gap: 9px;
}

.admin-menu-link {
    min-height: 48px;
    padding: 0 12px;
    color: rgba(255, 249, 238, .84);
    background: rgba(255, 248, 239, .035);
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: .9rem;
    letter-spacing: -.01em;
}

.admin-menu-link i,
.admin-bottom-nav i {
    width: 32px;
    height: 32px;
    color: var(--admin-gold);
    background: rgba(231, 189, 101, .08);
    border-color: rgba(231, 189, 101, .15);
    border-radius: 8px;
}

.admin-menu-link:hover,
.admin-menu-link.is-active {
    color: var(--admin-text);
    background: linear-gradient(90deg, rgba(231, 189, 101, .16), rgba(255, 248, 239, .055));
    border-color: rgba(231, 189, 101, .17);
    transform: none;
}

.admin-menu-link.is-active::before {
    left: -14px;
    height: 30px;
    background: var(--admin-gold);
}

.admin-menu-link.is-disabled {
    background: transparent;
    opacity: .42;
}

.admin-profile {
    grid-template-columns: 46px minmax(0, 1fr);
    margin-top: 20px;
    padding: 14px;
    background: rgba(255, 248, 239, .045);
    border-color: rgba(231, 189, 101, .14);
    border-radius: 8px;
}

.admin-avatar {
    width: 46px;
    height: 46px;
    background: linear-gradient(135deg, #f1d591, #c39145);
}

.admin-main {
    padding: 26px clamp(22px, 3vw, 38px) 54px;
    background:
        linear-gradient(180deg, rgba(255, 248, 239, .035), transparent 260px),
        transparent;
}

.admin-topbar {
    min-height: 74px;
    margin: -26px calc(clamp(22px, 3vw, 38px) * -1) 24px;
    padding: 0 clamp(22px, 3vw, 38px);
    background: rgba(3, 9, 7, .76);
    border-bottom: 1px solid rgba(255, 248, 239, .08);
}

.admin-topbar-title strong {
    font-size: 1.25rem;
    letter-spacing: -.02em;
}

.admin-topbar-burger,
.admin-topbar-notification,
.admin-topbar-shop {
    background: rgba(255, 248, 239, .035);
    border-color: rgba(231, 189, 101, .14);
    border-radius: 8px;
}

.admin-topbar-shop {
    min-height: 42px;
    color: var(--admin-text);
}

.admin-heading {
    align-items: center;
    margin-bottom: 18px;
}

.admin-heading h1 {
    color: var(--admin-text);
    font-family: Manrope, system-ui, sans-serif;
    font-size: clamp(1.9rem, 3vw, 3rem);
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -.04em;
}

.dashboard-heading h1 {
    font-size: clamp(2rem, 3.2vw, 3.2rem);
}

.admin-subtitle {
    max-width: 680px;
    margin-top: 8px;
    color: var(--admin-muted);
    font-size: .95rem;
}

.admin-body .eyebrow {
    color: var(--admin-gold);
    font-size: .68rem;
    letter-spacing: .22em;
}

.admin-body .flash {
    display: flex;
    align-items: center;
    min-height: 54px;
    margin-bottom: 20px;
    color: var(--admin-text);
    background: rgba(255, 248, 239, .05);
    border: 1px solid rgba(231, 189, 101, .14);
    border-radius: 8px;
    box-shadow: none;
}

.admin-body .flash::before {
    background: var(--admin-gold);
}

.admin-panel,
.form-panel,
.admin-login,
.dashboard-kpi,
.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled,
.product-admin-card,
.category-admin-summary article,
.category-admin-card,
.order-list-card,
.settings-section {
    background:
        linear-gradient(180deg, rgba(255, 248, 239, .068), rgba(255, 248, 239, .032)),
        radial-gradient(circle at 92% 0%, rgba(231, 189, 101, .095), transparent 13rem),
        rgba(12, 26, 21, .82);
    border: 1px solid rgba(231, 189, 101, .14);
    border-radius: 8px;
    box-shadow: 0 24px 72px rgba(0, 0, 0, .28);
}

.dashboard-kpis {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.dashboard-kpi {
    min-height: 118px;
    padding: 18px 20px;
}

.dashboard-kpi::before {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 54px;
    height: 54px;
    background:
        radial-gradient(circle, rgba(231, 189, 101, .28), rgba(231, 189, 101, .05) 62%, transparent 63%);
    border-radius: 50%;
    transform: translateY(-50%);
}

.dashboard-kpi span {
    max-width: 78%;
    color: rgba(255, 249, 238, .74);
    font-size: .78rem;
    letter-spacing: 0;
    text-transform: none;
}

.dashboard-kpi strong {
    max-width: calc(100% - 62px);
    color: var(--admin-text);
    font-family: Manrope, system-ui, sans-serif;
    font-size: clamp(1.75rem, 2.5vw, 2.45rem);
    font-weight: 750;
    letter-spacing: -.04em;
}

.dashboard-kpi small {
    max-width: 80%;
    color: var(--admin-muted);
}

.dashboard-quick-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 18px;
}

.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled {
    grid-template-columns: 1fr;
    justify-items: center;
    min-height: 104px;
    padding: 16px 12px;
    text-align: center;
}

.dashboard-quick-actions i {
    grid-row: auto;
    width: 42px;
    height: 42px;
    color: var(--admin-gold);
    background: rgba(231, 189, 101, .08);
    border: 1px solid rgba(231, 189, 101, .2);
    border-radius: 8px;
}

.dashboard-quick-actions span {
    display: none;
}

.dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr) minmax(350px, .72fr);
    gap: 18px;
}

.dashboard-chart {
    min-height: 250px;
    padding: 14px 10px 4px;
    background:
        linear-gradient(rgba(255, 248, 239, .06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 248, 239, .045) 1px, transparent 1px);
    background-size: 100% 25%, 16.66% 100%;
    border: 1px solid var(--admin-line-soft);
    border-radius: 8px;
}

.dashboard-bar {
    height: 220px;
}

.dashboard-list-row {
    min-height: 62px;
    background: rgba(255, 248, 239, .04);
    border-color: rgba(255, 248, 239, .075);
}

.dashboard-orders-panel table,
.admin-panel table {
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    background: rgba(255, 248, 239, .032);
    border: 1px solid rgba(255, 248, 239, .075);
    border-radius: 8px;
}

.dashboard-orders-panel th,
.dashboard-orders-panel td,
.admin-panel th,
.admin-panel td {
    border-bottom: 1px solid rgba(255, 248, 239, .07);
}

.dashboard-orders-panel th,
.admin-panel th {
    color: rgba(255, 249, 238, .7);
    background: rgba(255, 248, 239, .035);
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.product-admin-panel,
.orders-list-panel,
.settings-section,
.category-admin-list .admin-panel {
    padding: 18px;
}

.product-admin-toolbar {
    grid-template-columns: minmax(260px, 1fr) auto;
    align-items: end;
    gap: 14px;
}

.product-admin-toolbar label span {
    color: rgba(255, 249, 238, .72);
    letter-spacing: .08em;
}

.product-filter-tabs {
    gap: 10px;
    padding-bottom: 2px;
}

.product-filter-tabs a {
    min-height: 38px;
    padding: 0 16px;
    color: var(--admin-muted);
    background: rgba(255, 248, 239, .035);
    border: 1px solid rgba(255, 248, 239, .085);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 850;
}

.product-filter-tabs a.is-active {
    color: #1d1409;
    background: linear-gradient(135deg, #f2d790, #c39145);
    border-color: transparent;
}

@media (min-width: 961px) {
    .product-admin-list {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .product-admin-card {
        display: grid;
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 16px;
        align-items: center;
        padding: 12px;
    }

    .product-admin-media img {
        aspect-ratio: 1;
        min-height: 92px;
        border-radius: 8px;
    }

    .product-admin-content {
        display: grid;
        grid-template-columns: minmax(240px, 1.1fr) minmax(320px, 1.45fr) minmax(260px, .92fr);
        gap: 18px;
        align-items: center;
    }

    .product-admin-content h2 {
        margin-top: 8px;
        color: var(--admin-text);
        font-family: Manrope, system-ui, sans-serif;
        font-size: 1.05rem;
        line-height: 1.2;
        letter-spacing: -.02em;
    }

    .product-admin-content p {
        margin: 6px 0 0;
        color: var(--admin-muted);
        font-size: .86rem;
    }

    .product-admin-meta {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
    }

    .product-admin-meta div {
        padding: 9px;
        background: rgba(255, 248, 239, .04);
        border-color: rgba(255, 248, 239, .075);
        border-radius: 8px;
    }

    .product-admin-actions {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .product-admin-actions .btn {
        width: 100%;
        min-height: 38px;
        padding: 0 12px;
        font-size: .68rem;
    }
}

.admin-body input,
.admin-body textarea,
.admin-body select {
    color: var(--admin-text);
    background: rgba(255, 248, 239, .045);
    border: 1px solid rgba(255, 248, 239, .13);
    border-radius: 8px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
}

.admin-body input:focus,
.admin-body textarea:focus,
.admin-body select:focus {
    outline: none;
    border-color: rgba(231, 189, 101, .46);
    box-shadow: 0 0 0 3px rgba(231, 189, 101, .11);
}

.admin-body .btn {
    min-height: 44px;
    color: #1f1409;
    background: linear-gradient(135deg, #f2d790, #c39145);
    border-color: rgba(255, 231, 177, .44);
    border-radius: 8px;
    box-shadow: 0 14px 34px rgba(195, 145, 69, .16);
}

.admin-body .btn.secondary,
.admin-body .quiet-link {
    color: var(--admin-text);
    background: rgba(255, 248, 239, .055);
    border-color: rgba(255, 248, 239, .12);
    box-shadow: none;
}

.admin-body .btn.danger {
    color: #fff7f1;
    background: rgba(164, 70, 54, .84);
    border-color: rgba(255, 176, 154, .22);
}

.category-admin-layout {
    gap: 18px;
}

.category-admin-summary {
    gap: 14px;
}

.category-admin-summary article {
    min-height: 112px;
}

.settings-admin-form {
    gap: 18px;
}

.settings-section {
    overflow: hidden;
}

.settings-section-head h2,
.order-detail-head h2,
.category-card-head h2 {
    color: var(--admin-text);
    font-family: Manrope, system-ui, sans-serif;
    font-size: 1.3rem;
    letter-spacing: -.03em;
}

.settings-section-head > span {
    color: #1d1409;
    background: linear-gradient(135deg, #f2d790, #c39145);
}

.settings-save-bar {
    position: sticky;
    bottom: 20px;
    z-index: 5;
    background: rgba(8, 19, 15, .9);
    border-color: rgba(231, 189, 101, .17);
    border-radius: 8px;
    backdrop-filter: blur(18px);
}

.orders-list-panel {
    background:
        linear-gradient(180deg, rgba(255, 248, 239, .055), rgba(255, 248, 239, .024)),
        rgba(12, 26, 21, .82);
}

.order-list-card {
    border-color: rgba(255, 248, 239, .08);
    background: rgba(255, 248, 239, .042);
}

.order-detail-grid article,
.order-address,
.order-totals,
.order-history-row,
.product-image-box,
.settings-check-list {
    background: rgba(255, 248, 239, .04);
    border-color: rgba(255, 248, 239, .085);
    border-radius: 8px;
}

.order-status,
.pill {
    border-radius: 999px;
}

@media (max-width: 1180px) and (min-width: 961px) {
    .admin-shell {
        grid-template-columns: 246px minmax(0, 1fr);
    }

    .admin-sidebar {
        width: 246px;
    }

    .dashboard-kpis,
    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-main-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 960px) {
    .admin-sidebar,
    .admin-topbar {
        display: none !important;
    }

    .admin-shell {
        display: block;
        min-height: 100vh;
    }

    .admin-main {
        padding: 94px 14px 96px;
    }

    .admin-mobile-header {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: 12px;
        padding: 14px 18px;
        background: rgba(3, 9, 7, .9);
        border-bottom: 1px solid rgba(255, 248, 239, .08);
        backdrop-filter: blur(20px);
    }

    .admin-mobile-brand {
        justify-content: center;
    }

    .admin-mobile-brand img {
        width: 62px;
        height: 46px;
        object-fit: contain;
    }

    .admin-mobile-brand strong {
        display: none;
    }

    .admin-drawer {
        width: min(390px, 88vw);
        background:
            radial-gradient(circle at 50% 0%, rgba(231, 189, 101, .1), transparent 16rem),
            #06120e;
    }

    .admin-drawer .admin-brand {
        background: transparent;
        border: 0;
    }

    .admin-heading {
        display: grid;
        grid-template-columns: 1fr;
        align-items: flex-start;
        gap: 12px;
        margin-bottom: 18px;
    }

    .admin-heading > div {
        min-width: 0;
    }

    .admin-heading h1,
    .dashboard-heading h1 {
        font-size: clamp(1.7rem, 8vw, 2.45rem);
    }

    .admin-heading .btn {
        justify-self: start;
        width: auto;
        max-width: 100%;
        min-height: 42px;
        padding-inline: 14px;
        font-size: .68rem;
    }

    .dashboard-heading .btn {
        width: min(100%, 230px);
    }

    .admin-subtitle {
        max-width: 320px;
        font-size: .88rem;
        line-height: 1.5;
    }

    .dashboard-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .dashboard-kpi {
        min-height: 132px;
        padding: 14px;
    }

    .dashboard-kpi::before {
        right: 12px;
        top: 18px;
        width: 42px;
        height: 42px;
        transform: none;
    }

    .dashboard-kpi span {
        max-width: 82%;
        font-size: .72rem;
    }

    .dashboard-kpi strong {
        max-width: 100%;
        font-size: 1.9rem;
    }

    .dashboard-kpi small {
        font-size: .72rem;
    }

    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .dashboard-quick-actions a,
    .dashboard-quick-actions .is-disabled {
        min-height: 92px;
        padding: 12px 10px;
    }

    .dashboard-main-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .dashboard-chart {
        min-height: 210px;
    }

    .dashboard-bar {
        height: 180px;
    }

    .dashboard-orders-panel {
        overflow-x: auto;
    }

    .product-admin-panel,
    .orders-list-panel,
    .settings-section,
    .category-admin-list .admin-panel {
        padding: 14px;
    }

    .product-admin-toolbar {
        grid-template-columns: 1fr 46px;
    }

    .product-admin-toolbar .btn {
        overflow: hidden;
        width: 46px;
        padding: 0;
        color: transparent;
    }

    .product-admin-toolbar .btn::before {
        content: "";
        display: block;
        width: 17px;
        height: 17px;
        color: var(--admin-text);
        border: 2px solid currentColor;
        border-radius: 50%;
    }

    .product-admin-toolbar .btn::after {
        content: "";
        display: block;
        width: 8px;
        height: 2px;
        margin-left: 21px;
        margin-top: -6px;
        background: var(--admin-text);
        border-radius: 99px;
        transform: rotate(45deg);
    }

    .product-filter-tabs {
        margin-inline: -2px;
    }

    .product-admin-list {
        gap: 10px;
    }

    .product-admin-card {
        display: grid;
        grid-template-columns: 86px minmax(0, 1fr);
        gap: 12px;
        align-items: center;
        padding: 10px;
        border-radius: 8px;
    }

    .product-admin-media img {
        aspect-ratio: 1;
        min-height: 86px;
        border-radius: 8px;
    }

    .product-admin-content {
        display: grid;
        gap: 8px;
        min-width: 0;
    }

    .product-admin-content h2 {
        margin: 6px 0 0;
        color: var(--admin-text);
        font-family: Manrope, system-ui, sans-serif;
        font-size: 1rem;
        line-height: 1.2;
    }

    .product-admin-content p,
    .product-admin-meta {
        display: none;
    }

    .product-admin-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
    }

    .product-admin-actions .btn {
        min-height: 36px;
        padding-inline: 6px;
        font-size: .6rem;
    }

    .admin-bottom-nav {
        left: 10px;
        right: 10px;
        bottom: 10px;
        min-height: 72px;
        padding: 8px 10px;
        background: rgba(3, 9, 7, .92);
        border: 1px solid rgba(231, 189, 101, .14);
        border-radius: 8px;
        box-shadow: 0 -12px 36px rgba(0, 0, 0, .32);
    }

    .admin-bottom-nav a {
        color: rgba(255, 249, 238, .72);
        font-size: .66rem;
    }

    .admin-bottom-nav a.is-active {
        color: var(--admin-gold);
    }

    .admin-bottom-nav a.is-active i {
        color: #1d1409;
        background: var(--admin-gold);
    }
}

@media (max-width: 860px) {
    .site-header {
        grid-template-columns: 48px minmax(0, 1fr) auto;
        min-height: 76px;
        padding: 10px 16px;
    }

    .main-nav {
        display: none;
    }

    .brand-text-only {
        justify-content: center;
    }

    .brand-text-only span {
        font-size: 1.16rem;
        text-align: center;
    }

    .header-actions .icon-link:first-child,
    .admin-shortcut {
        display: none;
    }

    .shop-hero.home-hero {
        width: min(100%, calc(100vw - 28px));
        margin: 0 auto;
        grid-template-columns: 1fr;
        gap: 24px;
        min-height: 0;
        padding: 42px 0 28px;
        background: transparent;
    }

    .home-hero .hero-copy {
        justify-items: center;
        max-width: none;
        text-align: center;
    }

    .home-hero .hero-copy .eyebrow {
        font-size: .64rem;
        letter-spacing: .24em;
    }

    .home-hero .hero-copy h1 {
        font-size: clamp(3rem, 14vw, 4.2rem);
    }

    .home-hero .hero-copy p:not(.eyebrow) {
        max-width: 340px;
        margin-inline: auto;
        font-size: .95rem;
    }

    .hero-actions {
        display: grid;
        width: min(100%, 340px);
    }

    .home-hero-visual {
        min-height: 0;
    }

    .home-hero-visual .hero-box {
        height: auto;
        aspect-ratio: 1.48 / 1;
    }

    .hero-product-card {
        display: none;
    }

    .home-trust-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: min(100%, calc(100vw - 28px));
        margin-bottom: 42px;
        border-radius: 8px;
    }

    .home-trust-strip article {
        padding: 14px 8px;
        text-align: center;
    }

    .home-trust-strip article:nth-child(4) {
        display: none;
    }

    .home-trust-strip article i {
        margin-inline: auto;
    }

    .home-trust-strip strong {
        font-size: .62rem;
    }

    .home-trust-strip span {
        font-size: .68rem;
    }

    .collection-section,
    .featured-products-section,
    .brand-story,
    .review-section {
        width: min(100%, calc(100vw - 28px));
    }

    .section-heading {
        align-items: center;
        text-align: center;
    }

    .collection-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .collection-card img {
        aspect-ratio: 1;
        border-radius: 50%;
    }

    .collection-card span {
        font-size: .92rem;
    }

    .collection-card small {
        display: none;
    }

    .premium-product-grid,
    .product-grid {
        grid-template-columns: 1fr;
    }

    .product-card {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        align-items: stretch;
    }

    .product-image {
        aspect-ratio: auto;
        min-height: 100%;
    }

    .product-body {
        padding: 14px;
        gap: 8px;
    }

    .product-body h3 {
        font-size: 1.08rem;
    }

    .product-body > p,
    .product-composition {
        display: none;
    }

    .product-actions {
        gap: 8px;
    }

    .product-button-row {
        display: grid;
        grid-template-columns: 1fr;
    }

    .product-button-row .btn,
    .product-button-row form {
        width: 100%;
    }

    .brand-story {
        grid-template-columns: 1fr;
        padding: 24px;
        text-align: center;
    }
}

/* Maison El Finaq V3: storefront matched much closer to the supplied cream/chocolate mockup. */
body:not(.admin-body) {
    --ink: #26170e;
    --muted: #6f625a;
    --deep: #2b1709;
    --deep-2: #3f2412;
    --gold: #b27642;
    --copper: #c99765;
    --ivory: #fffaf4;
    --paper: #f5eadf;
    --line: rgba(43, 23, 9, .11);
    --line-gold: rgba(178, 118, 66, .2);
    color: var(--ink);
    background:
        radial-gradient(circle at 8% 0%, rgba(202, 151, 99, .13), transparent 26rem),
        radial-gradient(circle at 92% 8%, rgba(237, 205, 173, .22), transparent 32rem),
        linear-gradient(180deg, #fffaf5 0, #f7eee8 36rem, #fffaf5 74rem);
}

body:not(.admin-body) .top-note {
    display: block;
    min-height: 32px;
    color: #fff8ee;
    background: linear-gradient(90deg, #211006, #3b210f 50%, #211006);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-align: center;
}

body:not(.admin-body) .top-note span {
    display: none;
    padding: 8px 14px;
    background: transparent;
}

body:not(.admin-body) .top-note span:first-child {
    display: block;
}

body:not(.admin-body) .site-header {
    grid-template-columns: minmax(170px, 240px) minmax(460px, 1fr) minmax(118px, 160px);
    gap: clamp(20px, 4vw, 56px);
    min-height: 92px;
    padding: 12px clamp(34px, 7vw, 92px);
    background: rgba(255, 250, 245, .97);
    border-bottom: 1px solid rgba(43, 23, 9, .09);
    box-shadow: none;
}

body:not(.admin-body) .site-header .menu-toggle {
    display: none;
}

body:not(.admin-body) .brand-text-only {
    justify-content: flex-start;
    min-height: 60px;
}

body:not(.admin-body) .brand-text-only span {
    color: #2c180d;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.34rem;
    font-weight: 650;
    letter-spacing: .12em;
    line-height: .96;
    text-align: left;
    text-transform: uppercase;
}

body:not(.admin-body) .brand-text-only strong {
    display: block;
    margin-bottom: 8px;
    color: #9b653b;
    font-family: Manrope, system-ui, sans-serif;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .5em;
    line-height: 1.15;
}

body:not(.admin-body) .main-nav {
    justify-content: center;
    gap: clamp(24px, 3.4vw, 48px);
}

body:not(.admin-body) .main-nav a {
    min-height: 36px;
    padding: 0;
    color: #2b1709;
    background: transparent;
    border: 0;
    border-radius: 0;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .09em;
}

body:not(.admin-body) .main-nav a::after {
    bottom: 4px;
    background: #2b1709;
}

body:not(.admin-body) .header-actions {
    gap: 12px;
}

body:not(.admin-body) .icon-link {
    width: 42px;
    height: 42px;
    color: #2b1709;
    background: transparent;
    border: 0;
    box-shadow: none;
}

body:not(.admin-body) .icon-link svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.75;
}

body:not(.admin-body) .cart-count {
    right: -2px;
    top: 2px;
    min-width: 18px;
    height: 18px;
    color: #fff8ee;
    background: #2b1709;
    border-color: #fffaf4;
    font-size: .62rem;
}

body:not(.admin-body) .site-main {
    width: 100%;
    max-width: none;
    padding-bottom: 0;
}

body:not(.admin-body) .shop-hero.home-hero {
    width: min(100%, 1440px);
    margin: 0 auto;
    grid-template-columns: minmax(330px, .68fr) minmax(520px, 1.32fr);
    gap: clamp(28px, 5vw, 78px);
    min-height: 590px;
    padding: clamp(52px, 6vw, 86px) clamp(34px, 7vw, 98px);
    background:
        linear-gradient(90deg, rgba(255, 250, 245, .98) 0 39%, rgba(247, 226, 211, .72) 67%, rgba(255, 250, 245, .45)),
        radial-gradient(circle at 77% 43%, rgba(201, 151, 96, .22), transparent 30rem);
}

body:not(.admin-body) .home-hero .hero-brand-mark,
body:not(.admin-body) .hero-product-card {
    display: none;
}

body:not(.admin-body) .home-hero .hero-copy {
    max-width: 480px;
    justify-items: start;
}

body:not(.admin-body) .home-hero .hero-copy .eyebrow {
    margin-bottom: 18px;
    color: #a76a3e;
    font-size: .68rem;
    letter-spacing: .34em;
}

body:not(.admin-body) .home-hero .hero-copy h1 {
    max-width: 460px;
    color: #27160d;
    font-size: clamp(3.55rem, 5.1vw, 5.75rem);
    font-weight: 600;
    line-height: .92;
    letter-spacing: 0;
}

body:not(.admin-body) .home-hero .hero-copy p:not(.eyebrow) {
    max-width: 372px;
    margin-top: 22px;
    color: #4f4038;
    font-size: 1.02rem;
    line-height: 1.65;
}

body:not(.admin-body) .hero-actions {
    gap: 16px;
    margin-top: 30px;
}

body:not(.admin-body) .btn {
    min-height: 48px;
    padding: 0 28px;
    color: #fff8ee;
    background: #2b1709;
    border: 1px solid #2b1709;
    border-radius: 999px;
    box-shadow: none;
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .05em;
}

body:not(.admin-body) .btn:hover {
    background: #3a2111;
    border-color: #3a2111;
}

body:not(.admin-body) .btn.ghost,
body:not(.admin-body) .quiet-link {
    color: #2b1709;
    background: rgba(255, 250, 245, .58);
    border: 1px solid rgba(43, 23, 9, .18);
}

body:not(.admin-body) .home-hero-visual {
    min-height: 474px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

body:not(.admin-body) .home-hero-visual .hero-box {
    width: 100%;
    height: clamp(430px, 40vw, 560px);
    max-height: none;
    object-fit: cover;
    object-position: center;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    filter: none;
}

body:not(.admin-body) .home-trust-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: min(100%, 1440px);
    margin: 0 auto clamp(46px, 6vw, 74px);
    overflow: hidden;
    background: rgba(255, 253, 250, .88);
    border: 0;
    border-top: 1px solid rgba(43, 23, 9, .08);
    border-bottom: 1px solid rgba(43, 23, 9, .08);
    border-radius: 0;
    box-shadow: none;
}

body:not(.admin-body) .home-trust-strip article {
    position: relative;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 104px;
    padding: 22px clamp(18px, 3vw, 40px);
    text-align: left;
}

body:not(.admin-body) .home-trust-strip article + article::before {
    content: "";
    position: absolute;
    left: 0;
    top: 24px;
    bottom: 24px;
    width: 1px;
    background: rgba(43, 23, 9, .1);
}

body:not(.admin-body) .home-trust-strip i {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    color: #a76a3e;
    border: 1px solid rgba(167, 106, 62, .34);
    border-radius: 50%;
    font-size: .72rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .04em;
}

body:not(.admin-body) .home-trust-strip strong {
    color: #2b1709;
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
}

body:not(.admin-body) .home-trust-strip span {
    grid-column: 2;
    margin-top: -12px;
    color: #6f625a;
    font-size: .78rem;
    line-height: 1.45;
}

body:not(.admin-body) .collection-section,
body:not(.admin-body) .featured-products-section,
body:not(.admin-body) .special-request,
body:not(.admin-body) .brand-story,
body:not(.admin-body) .review-section {
    width: min(1100px, calc(100% - 64px));
    margin-left: auto;
    margin-right: auto;
}

body:not(.admin-body) .collection-section {
    margin-bottom: clamp(44px, 7vw, 76px);
}

body:not(.admin-body) .section-heading {
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    text-align: center;
}

body:not(.admin-body) .section-heading h2 {
    color: #27160d;
    font-size: clamp(2.2rem, 3.2vw, 3.35rem);
    line-height: .96;
}

body:not(.admin-body) .section-heading .eyebrow {
    margin-bottom: 10px;
    color: #a76a3e;
    font-size: .62rem;
    letter-spacing: .32em;
}

body:not(.admin-body) .section-heading .quiet-link {
    position: absolute;
    right: max(32px, calc((100vw - 1100px) / 2));
    min-height: 34px;
    padding: 0 14px;
    font-size: .64rem;
}

body:not(.admin-body) .collection-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(18px, 2.2vw, 28px);
}

body:not(.admin-body) .collection-card {
    display: grid;
    justify-items: center;
    align-content: start;
    min-height: 0;
    padding: 0;
    color: #27160d;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    text-align: center;
}

body:not(.admin-body) .collection-card::after {
    display: none;
}

body:not(.admin-body) .collection-card img {
    position: static;
    width: 100%;
    height: auto;
    aspect-ratio: 1.08 / 1;
    object-fit: cover;
    border: 1px solid rgba(43, 23, 9, .08);
    border-radius: 8px;
    box-shadow: 0 16px 34px rgba(65, 42, 26, .075);
    transform: none;
}

body:not(.admin-body) .collection-card:hover img {
    transform: translateY(-2px);
}

body:not(.admin-body) .collection-card span {
    margin-top: 14px;
    color: #27160d;
    font-size: 1.28rem;
}

body:not(.admin-body) .collection-card small {
    margin-top: 8px;
    color: #a76a3e;
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .13em;
    line-height: 1;
    text-transform: uppercase;
}

body:not(.admin-body) .collection-card small::after {
    content: " ->";
}

body:not(.admin-body) .special-request {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    min-height: 94px;
    margin-bottom: clamp(54px, 8vw, 92px);
    padding: 20px clamp(22px, 4vw, 48px);
    background:
        linear-gradient(90deg, rgba(255, 250, 245, .95), rgba(245, 234, 223, .76)),
        #fffaf5;
    border: 1px solid rgba(43, 23, 9, .12);
    border-radius: 999px;
    box-shadow: 0 18px 44px rgba(65, 42, 26, .065);
}

body:not(.admin-body) .special-request-icon {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    color: #2b1709;
}

body:not(.admin-body) .special-request-icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.45;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body:not(.admin-body) .special-request .eyebrow {
    margin: 0 0 4px;
    color: #a76a3e;
    font-size: .58rem;
    letter-spacing: .22em;
}

body:not(.admin-body) .special-request h2 {
    color: #2b1709;
    font-family: Manrope, system-ui, sans-serif;
    font-size: .82rem;
    font-weight: 950;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
}

body:not(.admin-body) .special-request p:not(.eyebrow) {
    margin: 4px 0 0;
    color: #6f625a;
    font-size: .82rem;
}

body:not(.admin-body) .special-request .btn {
    min-width: 172px;
}

body:not(.admin-body) .featured-products-section {
    width: min(1180px, calc(100% - 64px));
    margin-bottom: clamp(54px, 8vw, 96px);
}

body:not(.admin-body) .premium-products-heading {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 24px;
    margin-bottom: 34px;
    text-align: left;
}

body:not(.admin-body) .premium-products-heading > div {
    display: grid;
    justify-items: start;
    min-width: 0;
}

body:not(.admin-body) .premium-products-heading h2 {
    max-width: 680px;
    font-size: clamp(2.7rem, 4.5vw, 4.8rem);
    line-height: .92;
}

body:not(.admin-body) .section-subtitle {
    max-width: 560px;
    margin: 14px 0 0;
    color: #7b6659;
    font-size: 1.02rem;
    line-height: 1.65;
}

body:not(.admin-body) .premium-product-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

body:not(.admin-body) .premium-product-badges span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 14px;
    color: #3b2213;
    background: rgba(255, 250, 245, .88);
    border: 1px solid rgba(178, 118, 66, .18);
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(65, 42, 26, .045);
    font-size: .76rem;
    font-weight: 850;
}

body:not(.admin-body) .premium-products-heading .quiet-link {
    position: static;
    justify-self: end;
    align-self: center;
}

body:not(.admin-body) .premium-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(24px, 3vw, 34px);
}

body:not(.admin-body) .product-card,
body:not(.admin-body) .premium-product-card {
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(255, 250, 245, .98), rgba(255, 248, 241, .94)),
        #fff8f1;
    border: 1px solid rgba(178, 118, 66, .18);
    border-radius: 28px;
    box-shadow: 0 24px 64px rgba(65, 42, 26, .095);
}

body:not(.admin-body) .premium-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 34px 82px rgba(65, 42, 26, .14);
}

body:not(.admin-body) .product-image,
body:not(.admin-body) .premium-product-grid .product-image {
    position: relative;
    margin: 14px 14px 0;
    aspect-ratio: 1.08 / 1;
    background: #f5eadf;
    border-radius: 22px;
    overflow: hidden;
}

body:not(.admin-body) .product-image img,
body:not(.admin-body) .premium-product-grid .product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.01);
    transition: transform .45s ease, filter .45s ease;
}

body:not(.admin-body) .premium-product-card:hover .product-image img {
    filter: saturate(1.04) contrast(1.02);
    transform: scale(1.055);
}

body:not(.admin-body) .product-category-badge {
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    max-width: calc(100% - 32px);
    min-height: 36px;
    padding: 0 14px;
    overflow: hidden;
    color: #2a1208;
    background: rgba(255, 250, 245, .88);
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 999px;
    box-shadow: 0 12px 28px rgba(65, 42, 26, .12);
    backdrop-filter: blur(12px);
    font-size: .76rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body:not(.admin-body) .product-body {
    display: grid;
    grid-template-rows: auto auto auto 1fr auto;
    justify-items: center;
    min-height: 430px;
    padding: 24px 22px 26px;
    text-align: center;
}

body:not(.admin-body) .product-body h3 {
    max-width: 92%;
    color: #2a1208;
    font-size: clamp(1.62rem, 2.2vw, 2.08rem);
    line-height: 1.1;
}

body:not(.admin-body) .product-body h3 a {
    color: inherit;
}

body:not(.admin-body) .product-separator {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: min(190px, 70%);
    margin: 14px 0 12px;
    color: #b27642;
    font-size: .86rem;
}

body:not(.admin-body) .product-separator::before,
body:not(.admin-body) .product-separator::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(178, 118, 66, .35), transparent);
}

body:not(.admin-body) .product-body > p {
    max-width: 310px;
    min-height: 4.8em;
    color: #7b6659;
    font-size: .96rem;
    line-height: 1.6;
}

body:not(.admin-body) .product-composition {
    width: 100%;
    min-height: 106px;
    margin-top: 18px;
    padding: 18px;
    background:
        radial-gradient(circle at 100% 0%, rgba(201, 151, 101, .15), transparent 12rem),
        rgba(245, 234, 223, .55);
    border: 1px solid rgba(178, 118, 66, .16);
    border-radius: 22px;
}

body:not(.admin-body) .product-composition span {
    display: block;
    color: #2a1208;
    font-size: .76rem;
    letter-spacing: .1em;
    line-height: 1.35;
}

body:not(.admin-body) .product-composition p {
    margin-top: 10px;
    color: #5e493b;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.55;
}

body:not(.admin-body) .product-actions {
    display: grid;
    gap: 16px;
    width: 100%;
    margin-top: 22px;
}

body:not(.admin-body) .product-actions strong {
    display: grid;
    justify-items: center;
    gap: 4px;
    color: #2a1208;
    font-family: Manrope, system-ui, sans-serif;
    font-size: clamp(1.45rem, 2vw, 1.85rem);
    font-weight: 950;
    letter-spacing: -.03em;
}

body:not(.admin-body) .product-actions del {
    color: rgba(42, 18, 8, .42);
    font-size: .92rem;
    font-weight: 800;
}

body:not(.admin-body) .product-button-row {
    display: grid;
    gap: 9px;
    width: 100%;
}

body:not(.admin-body) .product-button-row form {
    width: 100%;
}

body:not(.admin-body) .product-button-row .btn {
    width: 100%;
    min-height: 52px;
    padding-inline: 18px;
    border-radius: 999px;
    font-size: .78rem;
    letter-spacing: .04em;
}

body:not(.admin-body) .product-button-row .whatsapp-btn {
    min-height: 40px;
    color: #236345;
    background: rgba(35, 99, 69, .08);
    border-color: rgba(35, 99, 69, .22);
    box-shadow: none;
    font-size: .72rem;
}

body:not(.admin-body) .product-button-row .whatsapp-btn:hover {
    color: #fffaf5;
    background: #236345;
    border-color: #236345;
}

body:not(.admin-body) .brand-story {
    grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
    margin-bottom: clamp(54px, 8vw, 96px);
    background: rgba(255, 250, 245, .86);
    border-color: rgba(43, 23, 9, .1);
}

body:not(.admin-body) .review-section {
    margin-bottom: 0;
}

body:not(.admin-body) .review-card {
    background: #fffaf5;
    border-color: rgba(43, 23, 9, .08);
    box-shadow: 0 16px 36px rgba(65, 42, 26, .055);
}

body:not(.admin-body) .site-footer {
    display: grid;
    grid-template-columns: minmax(260px, 1.1fr) repeat(3, minmax(170px, .85fr));
    gap: 28px;
    margin-top: clamp(50px, 7vw, 86px);
    padding: 34px clamp(28px, 7vw, 92px);
    color: #6f625a;
    background:
        linear-gradient(180deg, rgba(245, 234, 223, .95), rgba(255, 250, 245, .98)),
        #fffaf5;
    border-top: 1px solid rgba(43, 23, 9, .1);
}

body:not(.admin-body) .site-footer strong {
    color: #2b1709;
}

body:not(.admin-body) .footer-brand > strong {
    color: #2b1709;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.85rem;
    line-height: 1;
}

body:not(.admin-body) .footer-brand img {
    width: 62px;
    height: 62px;
}

body:not(.admin-body) .footer-column a,
body:not(.admin-body) .footer-column span,
body:not(.admin-body) .footer-brand span {
    color: #6f625a;
}

body:not(.admin-body) .side-drawer {
    background: #fffaf5;
}

@media (max-width: 1180px) and (min-width: 861px) {
    body:not(.admin-body) .site-header {
        grid-template-columns: minmax(150px, 200px) minmax(390px, 1fr) minmax(100px, 140px);
        padding-inline: 34px;
    }

    body:not(.admin-body) .main-nav {
        gap: 22px;
    }

    body:not(.admin-body) .shop-hero.home-hero {
        grid-template-columns: minmax(300px, .8fr) minmax(440px, 1.2fr);
        padding-inline: 40px;
    }

    body:not(.admin-body) .home-trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body:not(.admin-body) .home-trust-strip article:nth-child(3)::before {
        display: none;
    }
}

@media (max-width: 860px) {
    body:not(.admin-body) .top-note {
        min-height: 30px;
        font-size: .62rem;
    }

    body:not(.admin-body) .top-note span:first-child {
        padding: 8px 10px;
    }

    body:not(.admin-body) .site-header {
        grid-template-columns: 42px minmax(0, 1fr) auto;
        gap: 8px;
        min-height: 76px;
        padding: 10px 15px;
    }

    body:not(.admin-body) .site-header .menu-toggle {
        display: inline-flex;
        width: 38px;
        height: 38px;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    body:not(.admin-body) .brand-text-only {
        justify-content: center;
        min-height: 50px;
    }

    body:not(.admin-body) .brand-text-only span {
        font-size: 1.18rem;
        line-height: .96;
        text-align: center;
    }

    body:not(.admin-body) .brand-text-only strong {
        margin-bottom: 6px;
        font-size: .52rem;
        letter-spacing: .4em;
        line-height: 1.12;
    }

    body:not(.admin-body) .header-actions {
        gap: 4px;
    }

    body:not(.admin-body) .icon-link {
        width: 36px;
        height: 36px;
    }

    body:not(.admin-body) .header-actions .icon-link:first-child {
        display: inline-flex;
    }

    body:not(.admin-body) .main-nav,
    body:not(.admin-body) .admin-shortcut {
        display: none;
    }

    body:not(.admin-body) .shop-hero.home-hero {
        width: 100%;
        grid-template-columns: 1fr;
        gap: 26px;
        min-height: 0;
        padding: 38px 18px 28px;
        background:
            radial-gradient(circle at 50% 0%, rgba(202, 151, 99, .13), transparent 18rem),
            linear-gradient(180deg, #fffaf5, #f7eee8);
    }

    body:not(.admin-body) .home-hero .hero-copy {
        justify-items: center;
        max-width: none;
        text-align: center;
    }

    body:not(.admin-body) .home-hero .hero-copy .eyebrow {
        margin-bottom: 14px;
        font-size: .6rem;
        letter-spacing: .22em;
    }

    body:not(.admin-body) .home-hero .hero-copy h1 {
        max-width: 315px;
        font-size: clamp(2.72rem, 14vw, 4rem);
        line-height: .92;
    }

    body:not(.admin-body) .home-hero .hero-copy p:not(.eyebrow) {
        max-width: 310px;
        margin-top: 16px;
        font-size: .92rem;
        line-height: 1.6;
    }

    body:not(.admin-body) .hero-actions {
        display: grid;
        width: min(100%, 320px);
        gap: 10px;
        margin-top: 24px;
    }

    body:not(.admin-body) .hero-actions .btn {
        width: 100%;
    }

    body:not(.admin-body) .home-hero-visual {
        min-height: 0;
    }

    body:not(.admin-body) .home-hero-visual .hero-box {
        width: 100%;
        height: auto;
        aspect-ratio: 1.45 / 1;
        border-radius: 8px;
        object-fit: cover;
    }

    body:not(.admin-body) .home-trust-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 100%;
        margin-bottom: 46px;
        background: rgba(255, 250, 245, .95);
        border-top: 1px solid rgba(43, 23, 9, .08);
        border-bottom: 1px solid rgba(43, 23, 9, .08);
    }

    body:not(.admin-body) .home-trust-strip article {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 8px;
        min-height: 128px;
        padding: 16px 7px;
        text-align: center;
    }

    body:not(.admin-body) .home-trust-strip article:nth-child(4) {
        display: none;
    }

    body:not(.admin-body) .home-trust-strip article + article::before {
        top: 18px;
        bottom: 18px;
    }

    body:not(.admin-body) .home-trust-strip i {
        width: 36px;
        height: 36px;
        font-size: .64rem;
    }

    body:not(.admin-body) .home-trust-strip strong {
        font-size: .58rem;
        line-height: 1.22;
    }

    body:not(.admin-body) .home-trust-strip span {
        grid-column: auto;
        margin-top: 0;
        font-size: .64rem;
        line-height: 1.35;
    }

    body:not(.admin-body) .collection-section,
    body:not(.admin-body) .featured-products-section,
    body:not(.admin-body) .special-request,
    body:not(.admin-body) .brand-story,
    body:not(.admin-body) .review-section {
        width: min(100%, calc(100vw - 28px));
    }

    body:not(.admin-body) .section-heading {
        margin-bottom: 22px;
    }

    body:not(.admin-body) .section-heading h2 {
        font-size: clamp(2rem, 10vw, 2.65rem);
    }

    body:not(.admin-body) .section-heading .quiet-link {
        position: static;
        margin-top: 10px;
    }

    body:not(.admin-body) .collection-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    body:not(.admin-body) .collection-card img {
        aspect-ratio: 1;
        border-radius: 50%;
    }

    body:not(.admin-body) .collection-card span {
        margin-top: 10px;
        font-size: .86rem;
    }

    body:not(.admin-body) .collection-card small {
        display: none;
    }

    body:not(.admin-body) .special-request {
        grid-template-columns: 1fr;
        justify-items: center;
        min-height: 0;
        padding: 24px 18px;
        border-radius: 8px;
        text-align: center;
    }

    body:not(.admin-body) .special-request .btn {
        width: min(100%, 260px);
        min-width: 0;
    }

    body:not(.admin-body) .premium-product-grid,
    body:not(.admin-body) .product-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .product-card {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        align-items: stretch;
    }

    body:not(.admin-body) .product-image,
    body:not(.admin-body) .premium-product-grid .product-image {
        min-height: 100%;
        aspect-ratio: auto;
    }

    body:not(.admin-body) .product-body {
        padding: 14px;
        gap: 8px;
    }

    body:not(.admin-body) .product-body h3 {
        font-size: 1.1rem;
    }

    body:not(.admin-body) .product-body > p,
    body:not(.admin-body) .product-composition {
        display: none;
    }

    body:not(.admin-body) .product-button-row {
        display: grid;
    }

    body:not(.admin-body) .product-button-row .btn,
    body:not(.admin-body) .product-button-row form {
        width: 100%;
    }

    body:not(.admin-body) .brand-story {
        grid-template-columns: 1fr;
        padding: 24px;
        text-align: center;
    }

    body:not(.admin-body) .brand-story-copy .btn {
        width: 100%;
    }

    body:not(.admin-body) .site-footer {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 28px 18px;
        text-align: center;
    }

    body:not(.admin-body) .footer-brand,
    body:not(.admin-body) .footer-column {
        justify-items: center;
    }
}

@media (max-width: 1080px) and (min-width: 681px) {
    body:not(.admin-body) .featured-products-section {
        width: min(100%, calc(100vw - 44px));
    }

    body:not(.admin-body) .premium-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    body:not(.admin-body) .featured-products-section {
        width: min(100%, calc(100vw - 28px));
    }

    body:not(.admin-body) .premium-products-heading {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 18px;
        margin-bottom: 28px;
        text-align: center;
    }

    body:not(.admin-body) .premium-products-heading > div {
        justify-items: center;
    }

    body:not(.admin-body) .premium-products-heading h2 {
        max-width: 340px;
        font-size: clamp(2.35rem, 11vw, 3.25rem);
    }

    body:not(.admin-body) .section-subtitle {
        max-width: 320px;
        font-size: .92rem;
    }

    body:not(.admin-body) .premium-product-badges {
        justify-content: center;
        gap: 8px;
        margin-top: 18px;
    }

    body:not(.admin-body) .premium-product-badges span {
        min-height: 32px;
        padding-inline: 11px;
        font-size: .68rem;
    }

    body:not(.admin-body) .premium-products-heading .quiet-link {
        justify-self: center;
    }

    body:not(.admin-body) .premium-product-grid,
    body:not(.admin-body) .product-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    body:not(.admin-body) .product-card,
    body:not(.admin-body) .premium-product-card {
        display: grid;
        grid-template-columns: 1fr;
        border-radius: 26px;
    }

    body:not(.admin-body) .product-image,
    body:not(.admin-body) .premium-product-grid .product-image {
        min-height: 0;
        margin: 12px 12px 0;
        aspect-ratio: 1.12 / 1;
        border-radius: 20px;
    }

    body:not(.admin-body) .product-category-badge {
        left: 12px;
        top: 12px;
        min-height: 32px;
        padding-inline: 11px;
        font-size: .68rem;
    }

    body:not(.admin-body) .product-body {
        grid-template-rows: auto auto auto auto auto;
        min-height: 0;
        padding: 22px 18px 22px;
    }

    body:not(.admin-body) .product-body h3 {
        max-width: 100%;
        font-size: clamp(1.55rem, 8vw, 2rem);
    }

    body:not(.admin-body) .product-body > p,
    body:not(.admin-body) .product-composition {
        display: block;
    }

    body:not(.admin-body) .product-body > p {
        min-height: 0;
        font-size: .92rem;
    }

    body:not(.admin-body) .product-composition {
        min-height: 0;
        padding: 16px 14px;
        border-radius: 20px;
    }

    body:not(.admin-body) .product-composition p {
        font-size: .8rem;
    }

    body:not(.admin-body) .product-actions {
        margin-top: 18px;
    }

    body:not(.admin-body) .product-button-row {
        display: grid;
    }

    body:not(.admin-body) .product-button-row .btn,
    body:not(.admin-body) .product-button-row form {
        width: 100%;
    }
}

/* Admin final polish: compact panel titles and no sidebar overlap on shorter screens. */
.admin-body .admin-sidebar {
    justify-content: flex-start;
    gap: 18px;
}

.admin-body .admin-sidebar > div:first-child {
    display: grid;
    gap: 0;
    min-height: 0;
    flex: 0 0 auto;
}

.admin-body .admin-profile {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    margin-top: 18px;
}

.admin-body .section-heading h2,
.admin-body .dashboard-chart-panel .section-heading h2,
.admin-body .dashboard-best-panel .section-heading h2,
.admin-body .dashboard-orders-panel .section-heading h2 {
    color: var(--admin-text);
    font-family: Manrope, system-ui, sans-serif;
    font-size: clamp(1.05rem, 1.35vw, 1.35rem);
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: -.03em;
}

.admin-body .dashboard-chart-panel .section-heading,
.admin-body .dashboard-best-panel .section-heading,
.admin-body .dashboard-orders-panel .section-heading {
    align-items: center;
    margin-bottom: 16px;
    text-align: left;
}

.admin-body .dashboard-chart-panel .section-heading strong {
    color: var(--admin-gold);
    font-family: Manrope, system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 850;
}

.admin-body .dashboard-best-panel,
.admin-body .dashboard-chart-panel,
.admin-body .dashboard-orders-panel {
    overflow: hidden;
}

@media (max-width: 960px) {
    .admin-body .admin-heading {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-body .admin-heading .btn {
        justify-self: start;
    }

    .admin-body .section-heading,
    .admin-body .dashboard-chart-panel .section-heading,
    .admin-body .dashboard-best-panel .section-heading,
    .admin-body .dashboard-orders-panel .section-heading {
        align-items: flex-start;
        text-align: left;
    }
}

/* Product cards alignment fix: keep the premium cards balanced and remove the reassurance badges line. */
body:not(.admin-body) .premium-product-badges {
    display: none;
}

body:not(.admin-body) .featured-products-section .premium-products-heading {
    align-items: center;
    margin-bottom: clamp(32px, 4vw, 48px);
}

body:not(.admin-body) .featured-products-section .premium-products-heading > div {
    justify-items: center;
    width: 100%;
    text-align: center;
}

body:not(.admin-body) .featured-products-section .premium-products-heading h2 {
    max-width: 760px;
}

body:not(.admin-body) .featured-products-section .premium-products-heading .section-subtitle {
    max-width: 660px;
}

body:not(.admin-body) .premium-product-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

body:not(.admin-body) .premium-product-card .product-image {
    position: relative;
    display: block;
    flex: 0 0 auto;
    overflow: hidden;
}

body:not(.admin-body) .premium-product-card .product-category-badge {
    position: absolute;
    left: 18px;
    top: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: auto;
    max-width: calc(100% - 36px);
    min-height: 38px;
    padding: 0 15px;
    overflow: hidden;
    color: #2a1208;
    background: rgba(255, 250, 245, .9);
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 999px;
    box-shadow: 0 12px 28px rgba(65, 42, 26, .12);
    backdrop-filter: blur(12px);
    font-family: Manrope, system-ui, sans-serif;
    font-size: .76rem;
    font-weight: 900;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body:not(.admin-body) .premium-product-card .product-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    padding: 26px 24px 28px;
    text-align: center;
}

body:not(.admin-body) .premium-product-card .product-body h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 2.35em;
    margin: 0;
    text-align: center;
}

body:not(.admin-body) .premium-product-card .product-separator {
    margin: 10px 0 18px;
}

body:not(.admin-body) .premium-product-card .product-body > p {
    min-height: 5.1em;
    margin: 0;
}

body:not(.admin-body) .premium-product-card .product-composition {
    display: grid;
    align-content: center;
    min-height: 118px;
    margin-top: 22px;
}

body:not(.admin-body) .premium-product-card .product-actions {
    margin-top: auto;
    padding-top: 28px;
}

body:not(.admin-body) .premium-product-card .product-button-row .btn {
    min-height: 56px;
    white-space: normal;
}

body:not(.admin-body) .premium-product-card .product-button-row .whatsapp-btn {
    min-height: 42px;
    color: #236345;
    background: rgba(35, 99, 69, .08);
    border-color: rgba(35, 99, 69, .22);
    box-shadow: none;
    font-size: .72rem;
}

body:not(.admin-body) .premium-product-card .product-button-row .whatsapp-btn:hover {
    color: #fffaf5;
    background: #236345;
    border-color: #236345;
}

body:not(.admin-body) .personalization-panel {
    display: grid;
    gap: 20px;
    width: 100%;
    margin: 18px 0;
    padding: clamp(20px, 4vw, 30px);
    background:
        radial-gradient(circle at 100% 0%, rgba(201, 151, 101, .13), transparent 14rem),
        rgba(255, 250, 245, .88);
    border: 1px solid rgba(178, 118, 66, .18);
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(65, 42, 26, .07);
}

body:not(.admin-body) .personalization-panel h2 {
    margin: 4px 0 6px;
    color: #2a1208;
    font-size: clamp(1.9rem, 4vw, 3rem);
}

body:not(.admin-body) .personalization-panel p:not(.eyebrow) {
    max-width: 620px;
    margin: 0;
    color: #7b6659;
    line-height: 1.65;
}

body:not(.admin-body) .personalization-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

body:not(.admin-body) .personalization-grid .full {
    grid-column: 1 / -1;
}

body:not(.admin-body) .personalization-grid input,
body:not(.admin-body) .personalization-grid textarea {
    background: rgba(255, 255, 255, .86);
    border-color: rgba(178, 118, 66, .18);
    border-radius: 18px;
}

body:not(.admin-body) .cart-personalization,
body:not(.admin-body) .checkout-item-line small,
.admin-body .order-item-personalization {
    display: block;
    margin-top: 7px;
    color: #7b6659;
    font-size: .82rem;
    font-weight: 650;
    line-height: 1.55;
    white-space: normal;
}

body:not(.admin-body) .checkout-item-line {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 18px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(43, 23, 9, .08);
}

body:not(.admin-body) .checkout-item-line small {
    grid-column: 1 / -1;
    margin-top: 0;
}

.admin-body .order-item-product {
    min-width: 0;
}

.admin-body .order-item-personalization {
    color: rgba(246, 239, 224, .62);
}

@media (max-width: 860px) {
    body:not(.admin-body) .featured-products-section .premium-products-heading {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .featured-products-section .premium-products-heading .quiet-link {
        justify-self: center;
    }

    body:not(.admin-body) .premium-product-card .product-category-badge {
        left: 14px;
        top: 14px;
        max-width: calc(100% - 28px);
        min-height: 34px;
        padding-inline: 12px;
        font-size: .68rem;
    }

    body:not(.admin-body) .premium-product-card .product-body {
        padding: 22px 18px 24px;
    }

    body:not(.admin-body) .premium-product-card .product-body h3,
    body:not(.admin-body) .premium-product-card .product-body > p,
    body:not(.admin-body) .premium-product-card .product-composition {
        min-height: 0;
    }

    body:not(.admin-body) .personalization-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .personalization-panel {
        border-radius: 24px;
    }
}

/* Account premium page and reusable shop toasts. */
/* Premium product detail page */
body.product-template {
    background:
        radial-gradient(circle at 72% 22%, rgba(217, 154, 50, .09), transparent 30rem),
        linear-gradient(180deg, #fff9f2 0%, #fbf7f1 54%, #fff9f2 100%);
    color: #2b160c;
}

body.product-template .site-main {
    width: 100%;
    max-width: none;
    padding: 0;
}

body.product-template .site-header {
    min-height: 86px;
    align-items: center;
}

body.product-template .main-nav a {
    transition: color .18s ease, background .18s ease;
}

body.product-template .main-nav a:hover {
    color: #8b551e;
    background: rgba(217, 154, 50, .08);
}

.product-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    width: min(100% - 42px, 1320px);
    margin: 22px auto 18px;
    color: #7a6a5f;
    font-size: .78rem;
    font-weight: 650;
}

.product-breadcrumb a {
    color: #7a6a5f;
}

.product-breadcrumb strong {
    color: #2b160c;
    font-weight: 750;
}

.product-detail-premium {
    display: grid;
    grid-template-columns: minmax(420px, .86fr) minmax(0, 1fr);
    align-items: start;
    gap: clamp(34px, 5vw, 68px);
    width: min(100% - 42px, 1320px);
    margin: 0 auto;
    padding: 0 0 26px;
}

.premium-gallery {
    display: grid;
    gap: 18px;
}

.premium-detail-image {
    position: relative;
    overflow: hidden;
    background: #f3e6d8;
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(43, 22, 12, .09);
}

.premium-detail-image img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / .92;
    object-fit: cover;
}

.product-image-badge {
    position: absolute;
    top: 18px;
    left: 18px;
    display: grid;
    gap: 3px;
    min-width: 94px;
    padding: 11px 13px;
    color: #2b160c;
    background: rgba(255, 249, 242, .9);
    border: 1px solid rgba(217, 154, 50, .24);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(43, 22, 12, .1);
    text-transform: uppercase;
}

.product-image-badge span {
    color: #c98522;
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .09em;
}

.product-image-badge strong {
    font-size: .68rem;
    font-weight: 900;
}

.premium-thumbs {
    display: grid;
    grid-template-columns: 36px repeat(5, minmax(58px, 74px)) 36px;
    justify-content: center;
    align-items: center;
    gap: 14px;
}

.premium-thumbs img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    background: #f3e6d8;
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 8px;
}

.premium-thumbs img.is-active {
    border-color: #c98522;
    box-shadow: 0 0 0 2px rgba(217, 154, 50, .16);
}

.premium-thumbs button {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    color: #2b160c;
    background: transparent;
    border: 0;
    font-size: 2rem;
    cursor: pointer;
}

.premium-detail-copy {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.premium-detail-copy .eyebrow {
    margin: 0;
    color: #c98522;
    font-size: .7rem;
    letter-spacing: .42em;
}

.premium-detail-copy h1 {
    margin: 0;
    color: #2b160c;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(3rem, 4.6vw, 4.9rem);
    font-weight: 620;
    letter-spacing: -.025em;
    line-height: .96;
}

.premium-detail-copy > p:not(.eyebrow):not(.premium-gift-note) {
    max-width: 560px;
    margin: 0;
    color: #7a6a5f;
    font-size: .96rem;
    line-height: 1.68;
}

.premium-detail-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    background: rgba(255, 255, 255, .54);
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 10px;
}

.premium-detail-list article {
    display: grid;
    justify-items: center;
    gap: 7px;
    min-height: 72px;
    padding: 13px 8px;
    text-align: center;
}

.premium-detail-list article + article {
    border-left: 1px solid rgba(43, 22, 12, .08);
}

.premium-detail-list i {
    color: #c98522;
    font-size: 1.15rem;
    font-style: normal;
}

.premium-detail-list strong {
    color: #2b160c;
    font-size: .72rem;
    font-weight: 850;
    line-height: 1.22;
}

.premium-gift-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    max-width: 620px;
    margin: 0;
    color: #5f5148;
    line-height: 1.62;
}

.premium-gift-note i {
    color: #d99a32;
    font-style: normal;
}

.premium-price-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px 22px;
}

.premium-price-row .detail-price {
    color: #2b160c;
    font-size: clamp(1.55rem, 2.3vw, 2.2rem);
    font-weight: 900;
}

.premium-badge {
    padding: 7px 13px;
    color: #8b551e;
    background: rgba(217, 154, 50, .13);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 850;
}

.premium-stock {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    color: #2b160c;
    font-size: .82rem;
    font-weight: 850;
}

.premium-stock i {
    width: 7px;
    height: 7px;
    background: #39a96b;
    border-radius: 50%;
}

.premium-personalization-card {
    display: grid;
    gap: 0;
    overflow: hidden;
    background: rgba(255, 252, 247, .86);
    border: 1px solid rgba(43, 22, 12, .11);
    border-radius: 14px;
    box-shadow: 0 18px 50px rgba(43, 22, 12, .08);
}

body.product-template .premium-personalization-card .personalization-panel {
    margin: 0;
    padding: 22px 22px 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.personalization-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
}

.personalization-head h2 {
    margin: 0;
    color: #2b160c;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.8rem, 3vw, 2.55rem);
    line-height: 1;
}

.product-steps {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    color: #7a6a5f;
    font-size: .7rem;
    font-weight: 800;
}

.product-steps span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.product-steps span::before {
    content: "";
}

.product-steps span {
    color: #7a6a5f;
}

.product-steps span:first-letter {
    color: #2b160c;
}

.product-steps .is-active {
    color: #c98522;
}

.product-steps em {
    font-style: normal;
}

body.product-template .personalization-grid {
    gap: 14px 18px;
}

body.product-template .product-options-panel {
    margin: 0 22px 18px;
    padding: 18px;
    background: rgba(255, 250, 243, .72);
    border: 1px solid rgba(201, 148, 74, .2);
    border-radius: 18px;
}

body.product-template .product-options-panel .eyebrow {
    margin: 0 0 12px;
    color: #9b612f;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .22em;
    text-transform: uppercase;
}

body.product-template .product-options-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

body.product-template .product-options-grid label {
    display: grid;
    gap: 8px;
    color: #2b160c;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .02em;
}

body.product-template .product-options-grid select {
    width: 100%;
    min-height: 48px;
    padding: 0 14px;
    color: #2b160c;
    background: #fffaf3;
    border: 1px solid rgba(43, 22, 12, .14);
    border-radius: 12px;
    font: inherit;
}

body.product-template .product-options-grid select:focus {
    border-color: #c9944a;
    box-shadow: 0 0 0 3px rgba(201, 148, 74, .14);
    outline: none;
}

.box-builder-hero {
    width: min(1180px, calc(100% - 40px));
    margin: 54px auto 26px;
    padding: 34px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    background: radial-gradient(circle at 88% 0%, rgba(201, 133, 34, .14), transparent 34%), linear-gradient(135deg, rgba(255, 250, 244, .96), rgba(248, 239, 228, .9));
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 28px;
    box-shadow: 0 22px 60px rgba(43, 22, 12, .07);
}

.box-builder-hero h1 {
    margin: 8px 0 12px;
    color: #2b160c;
    font-size: clamp(2.8rem, 7vw, 5.6rem);
    line-height: .9;
    letter-spacing: 0;
}

.box-builder-hero p:not(.eyebrow) {
    max-width: 680px;
    margin: 0;
    color: #7a6658;
    font-size: 1.02rem;
    line-height: 1.8;
}

.box-builder-layout {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto 76px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 24px;
    align-items: start;
}

.box-builder-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.box-builder-card {
    position: relative;
    display: block;
    min-height: 100%;
    padding: 12px;
    background: rgba(255, 250, 244, .94);
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(43, 22, 12, .06);
    cursor: pointer;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.box-builder-card:hover,
.box-builder-card.is-selected,
.box-builder-card:has(input:checked) {
    transform: translateY(-4px);
    border-color: rgba(201, 133, 34, .34);
    box-shadow: 0 24px 60px rgba(43, 22, 12, .1);
}

.box-builder-card-select input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.box-builder-card-media {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 190px;
    aspect-ratio: 4 / 3;
    border-radius: 18px;
    background: #f4eadf;
}

.box-builder-card-media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .28s ease;
}

.box-builder-card:hover img {
    transform: scale(1.025);
}

.box-builder-check {
    position: absolute;
    right: 12px;
    top: 12px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 250, 244, .92);
    border: 1px solid rgba(43, 22, 12, .12);
    color: #2b160c;
    font-weight: 900;
    font-size: .72rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.box-builder-card.is-selected .box-builder-check,
.box-builder-card-select input:checked + .box-builder-card-media .box-builder-check {
    background: #2b160c;
    border-color: #2b160c;
    color: #fffaf3;
}

.box-builder-card-body {
    display: grid;
    gap: 9px;
    padding: 18px 8px 8px;
    text-align: center;
}

.box-builder-card-body small {
    color: #a86224;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-size: .72rem;
}

.box-builder-card-body strong {
    color: #2b160c;
    font-family: var(--font-serif);
    font-size: 1.55rem;
    line-height: 1.05;
}

.box-builder-card-body span {
    color: #7a6658;
    line-height: 1.55;
    font-size: .94rem;
}

.box-builder-card-body b {
    margin-top: 6px;
    color: #2b160c;
    font-size: 1.15rem;
}

.box-builder-card-body em {
    justify-self: center;
    padding: 6px 10px;
    border-radius: 999px;
    font-style: normal;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .04em;
}

.box-builder-card-body .is-available {
    color: #1c5d38;
    background: rgba(69, 154, 96, .12);
}

.box-builder-card-body .is-unavailable {
    color: #8f3b2e;
    background: rgba(190, 84, 64, .12);
}

.box-builder-controls {
    display: grid;
    gap: 12px;
    margin-top: 12px;
    padding: 14px;
    background: rgba(255, 255, 255, .48);
    border: 1px solid rgba(43, 22, 12, .08);
    border-radius: 18px;
}

.box-builder-controls[hidden] {
    display: none;
}

.box-builder-controls label {
    display: grid;
    gap: 7px;
    color: #2b160c;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .03em;
}

.box-builder-controls input,
.box-builder-controls select {
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    color: #2b160c;
    background: #fffaf3;
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 12px;
    font: inherit;
}

.box-builder-controls input:focus,
.box-builder-controls select:focus {
    border-color: #c9944a;
    box-shadow: 0 0 0 3px rgba(201, 148, 74, .14);
    outline: none;
}

.box-builder-empty-image,
.box-builder-empty {
    display: grid;
    place-items: center;
    text-align: center;
}

.box-builder-empty-image {
    width: 100%;
    height: 100%;
    color: #7a6658;
    font-weight: 800;
}

.box-builder-empty {
    grid-column: 1 / -1;
    padding: 46px 26px;
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 24px;
    background: rgba(255, 250, 244, .92);
}

.box-builder-empty h2 {
    margin: 0 0 10px;
    color: #2b160c;
}

.box-builder-empty p:not(.eyebrow) {
    max-width: 560px;
    margin: 0 auto 20px;
    color: #7a6658;
    line-height: 1.7;
}

.box-builder-summary {
    position: sticky;
    top: 96px;
    padding: 24px;
    background: linear-gradient(145deg, #17271f, #0d1c15);
    border: 1px solid rgba(201, 133, 34, .24);
    border-radius: 24px;
    box-shadow: 0 24px 65px rgba(43, 22, 12, .18);
    color: #fffaf3;
}

.box-builder-summary h2 {
    margin: 8px 0 18px;
    color: #fffaf3;
    font-size: 2rem;
}

.box-builder-summary .eyebrow {
    color: #d6a85c;
}

.box-builder-summary-row {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 0;
    border-top: 1px solid rgba(255, 250, 243, .12);
}

.box-builder-summary-list {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}

.box-builder-summary-list div {
    display: grid;
    gap: 4px;
    padding: 11px 12px;
    background: rgba(255, 250, 243, .06);
    border: 1px solid rgba(255, 250, 243, .1);
    border-radius: 13px;
}

.box-builder-summary-list strong {
    color: #fffaf3;
}

.box-builder-summary-list span {
    color: rgba(255, 250, 243, .68);
    font-size: .86rem;
}

.box-builder-summary-row span,
.box-builder-summary p {
    color: rgba(255, 250, 243, .72);
}

.box-builder-summary-row strong {
    color: #fffaf3;
}

.box-builder-summary p {
    margin: 14px 0 20px;
    line-height: 1.65;
}

.box-builder-summary .btn {
    width: 100%;
}

body.box-builder-template {
    background:
        radial-gradient(circle at 18% 4%, rgba(216, 182, 90, .12), transparent 22rem),
        radial-gradient(circle at 88% 16%, rgba(35, 94, 71, .2), transparent 26rem),
        linear-gradient(180deg, #06110d, #091812 58%, #fbf6ee 58%);
}

body.box-builder-template .box-builder-hero {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 182, 90, .18), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .025)),
        #0d2118;
    border-color: rgba(216, 182, 90, .22);
    box-shadow: 0 28px 80px rgba(0, 0, 0, .3);
}

body.box-builder-template .box-builder-hero h1 {
    color: #fffaf3;
}

body.box-builder-template .box-builder-hero p:not(.eyebrow) {
    color: rgba(255, 250, 243, .74);
}

body.box-builder-template .box-builder-products {
    align-items: stretch;
}

body.box-builder-template .box-builder-card {
    background: linear-gradient(180deg, rgba(255, 250, 243, .98), rgba(250, 241, 231, .96));
    box-shadow: 0 24px 70px rgba(0, 0, 0, .16);
}

body.product-template .personalization-grid label {
    color: #2b160c;
    font-size: .76rem;
    font-weight: 850;
}

body.product-template .personalization-grid input,
body.product-template .personalization-grid textarea {
    width: 100%;
    min-height: 42px;
    margin-top: 7px;
    padding: 11px 12px;
    color: #2b160c;
    background: rgba(255, 255, 255, .82);
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 6px;
    font: inherit;
}

body.product-template .personalization-grid textarea {
    resize: vertical;
}

body.product-template .personalization-grid input:focus,
body.product-template .personalization-grid textarea:focus {
    border-color: #d99a32;
    box-shadow: 0 0 0 3px rgba(217, 154, 50, .15);
    outline: none;
}

body.product-template .detail-action-row {
    display: grid;
    gap: 10px;
    padding: 16px 22px 0;
}

.premium-cart-button {
    width: 100%;
    min-height: 50px;
    color: #fff9f2;
    background: linear-gradient(135deg, #e8b75a, #d99a32 48%, #c98522);
    border: 1px solid rgba(255, 235, 188, .42);
    border-radius: 8px;
    box-shadow: 0 18px 34px rgba(201, 133, 34, .22);
    font-size: .82rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.premium-cart-button:hover {
    filter: brightness(.98);
    transform: translateY(-1px);
}

.premium-whatsapp-link {
    justify-self: center;
    color: #236345;
    font-size: .78rem;
    font-weight: 850;
}

.premium-assurance {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 16px;
    border-top: 1px solid rgba(43, 22, 12, .08);
}

.premium-assurance span {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 3px 9px;
    align-items: center;
    padding: 14px 12px;
    color: #c98522;
    font-size: .94rem;
}

.premium-assurance span + span {
    border-left: 1px solid rgba(43, 22, 12, .08);
}

.premium-assurance strong {
    color: #2b160c;
    font-size: .68rem;
    line-height: 1.25;
}

.premium-assurance small {
    grid-column: 2;
    color: #7a6a5f;
    font-size: .64rem;
    line-height: 1.25;
}

.product-why {
    width: min(100% - 42px, 1320px);
    margin: 18px auto 0;
    padding: 20px 28px 26px;
    background: rgba(255, 252, 247, .72);
    border: 1px solid rgba(43, 22, 12, .1);
    border-radius: 14px;
    box-shadow: 0 18px 46px rgba(43, 22, 12, .055);
    text-align: center;
}

.product-why h2 {
    margin: 0 0 18px;
    color: #2b160c;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(2rem, 3vw, 3rem);
    line-height: 1;
}

.product-why > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product-why article {
    display: grid;
    justify-items: center;
    gap: 8px;
    padding: 10px 30px;
}

.product-why article + article {
    border-left: 1px solid rgba(43, 22, 12, .1);
}

.product-why i {
    color: #d99a32;
    font-size: 1.9rem;
    font-style: normal;
}

.product-why strong {
    color: #2b160c;
    font-size: .9rem;
}

.product-why p {
    max-width: 260px;
    margin: 0;
    color: #7a6a5f;
    font-size: .78rem;
    line-height: 1.55;
}

body.product-template .site-footer {
    grid-template-columns: minmax(230px, 1.2fr) repeat(4, minmax(140px, .8fr));
    margin-top: 28px;
    background: linear-gradient(180deg, #fbf7f1, #f3e6d8);
}

.footer-payments {
    margin-top: 12px;
    color: #2b160c !important;
    font-weight: 900;
}

@media (max-width: 1080px) {
    .product-detail-premium {
        grid-template-columns: minmax(330px, .9fr) minmax(0, 1fr);
        gap: 28px;
    }

    .premium-detail-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .premium-detail-list article + article {
        border-left: 0;
    }

    .premium-assurance {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .premium-assurance span + span {
        border-left: 0;
    }

    .personalization-head {
        grid-template-columns: 1fr;
    }

    body.product-template .site-footer {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .product-breadcrumb {
        width: min(100% - 28px, 1320px);
        margin-top: 18px;
        font-size: .7rem;
    }

    .product-detail-premium {
        grid-template-columns: 1fr;
        width: min(100% - 28px, 1320px);
        gap: 24px;
    }

    .premium-detail-image img {
        aspect-ratio: 1 / .88;
    }

    .premium-thumbs {
        grid-template-columns: 28px repeat(4, minmax(48px, 1fr)) 28px;
        gap: 8px;
    }

    .premium-thumbs img:nth-of-type(n+5) {
        display: none;
    }

    .premium-thumbs button {
        width: 28px;
    }

    .premium-detail-copy h1 {
        font-size: clamp(2.7rem, 14vw, 4rem);
    }

    .premium-detail-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .premium-stock {
        width: 100%;
        margin-left: 0;
    }

    body.product-template .premium-personalization-card .personalization-panel {
        padding: 20px 16px 0;
    }

    body.product-template .personalization-grid {
        grid-template-columns: 1fr;
    }

    body.product-template .product-options-panel {
        margin-inline: 16px;
        padding: 16px;
    }

    body.product-template .product-options-grid {
        grid-template-columns: 1fr;
    }

    body.product-template .detail-action-row {
        padding-inline: 16px;
    }

    .premium-assurance {
        grid-template-columns: 1fr;
    }

    .premium-assurance span {
        padding-inline: 16px;
    }

    .product-why {
        width: min(100% - 28px, 1320px);
        padding: 22px 16px;
    }

    .product-why > div {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .product-why article {
        padding: 14px 8px;
    }

    .product-why article + article {
        border-left: 0;
        border-top: 1px solid rgba(43, 22, 12, .1);
    }

    body.product-template .site-footer {
        grid-template-columns: 1fr;
    }
}

body:not(.admin-body) {
    background:
        radial-gradient(circle at 50% 18%, rgba(196, 154, 90, .12), transparent 34rem),
        linear-gradient(180deg, #fbf6ef 0%, #f7efe6 100%);
}

body:not(.admin-body),
body:not(.admin-body) input,
body:not(.admin-body) button,
body:not(.admin-body) label,
body:not(.admin-body) p,
body:not(.admin-body) a,
body:not(.admin-body) nav {
    font-family: Montserrat, Manrope, system-ui, sans-serif;
}

body:not(.admin-body) h1,
body:not(.admin-body) h2,
body:not(.admin-body) h3,
body:not(.admin-body) .account-title,
body:not(.admin-body) .card-title,
body:not(.admin-body) .section-title {
    font-family: "Cormorant Garamond", Georgia, serif;
}

body:not(.admin-body) .top-note {
    min-height: 38px;
    background: linear-gradient(90deg, #2b1308, #32180c);
    color: #fffaf3;
    border-bottom: 1px solid rgba(196, 154, 90, .2);
    text-transform: uppercase;
}

body:not(.admin-body) .top-note span {
    justify-content: center;
    font-family: Montserrat, system-ui, sans-serif;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .09em;
}

body:not(.admin-body) .site-header {
    min-height: 86px;
    background: rgba(255, 250, 243, .96);
    border-bottom: 1px solid rgba(43, 23, 9, .1);
    box-shadow: none;
}

body:not(.admin-body) .brand-text-only span {
    color: #2b1308;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.78rem;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: .82;
}

body:not(.admin-body) .brand-text-only strong {
    color: #8a5428;
    font-family: Montserrat, system-ui, sans-serif;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .52em;
}

body:not(.admin-body) .main-nav {
    gap: clamp(28px, 4vw, 58px);
}

body:not(.admin-body) .main-nav a {
    min-height: 34px;
    color: #24170f;
    font-family: Montserrat, system-ui, sans-serif;
    font-size: .73rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.admin-body) .admin-shortcut {
    min-height: 38px;
    padding: 0 22px;
    color: #fffaf3;
    background: linear-gradient(135deg, #2b1308, #3a1c0d);
    border-color: rgba(196, 154, 90, .26);
    border-radius: 999px;
    box-shadow: 0 12px 24px rgba(43, 19, 8, .16);
    font-size: .75rem;
}

body:not(.admin-body) .icon-link {
    width: 42px;
    height: 42px;
    color: #24170f;
    background: transparent;
    border: 0;
    box-shadow: none;
}

body:not(.admin-body) .cart-count {
    right: 0;
    top: 0;
    color: #fffaf3;
    background: #2b1308;
}

body:not(.admin-body) .toast-stack {
    position: fixed;
    top: 128px;
    right: clamp(18px, 3.4vw, 58px);
    z-index: 80;
    display: grid;
    gap: 12px;
    width: min(360px, calc(100vw - 32px));
    pointer-events: none;
}

body:not(.admin-body) .toast {
    position: relative;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 12px;
    min-height: 62px;
    overflow: hidden;
    padding: 14px 16px;
    color: #24170f;
    background: rgba(255, 250, 243, .96);
    border: 1px solid rgba(43, 23, 9, .08);
    border-radius: 13px;
    box-shadow: 0 18px 46px rgba(43, 23, 9, .13);
    animation: toastIn .35s ease both;
    pointer-events: auto;
}

body:not(.admin-body) .toast.is-hidden {
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .22s ease, transform .22s ease;
    pointer-events: none;
}

body:not(.admin-body) .toast strong {
    overflow: hidden;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
}

body:not(.admin-body) .toast-icon {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border: 1.5px solid currentColor;
    border-radius: 50%;
    color: #2f9c62;
}

body:not(.admin-body) .toast-icon::before {
    content: "✓";
    font-size: .76rem;
    font-weight: 900;
}

body:not(.admin-body) .toast-close {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    padding: 0;
    color: #24170f;
    background: transparent;
    border: 0;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

body:not(.admin-body) .toast-progress {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background: currentColor;
    animation: toastProgress 6.5s linear both;
    transform-origin: left center;
}

body:not(.admin-body) .toast-success .toast-progress,
body:not(.admin-body) .toast-success .toast-icon {
    color: #2f9c62;
}

body:not(.admin-body) .toast-error .toast-progress,
body:not(.admin-body) .toast-error .toast-icon {
    color: #b94a3a;
}

body:not(.admin-body) .toast-error .toast-icon::before {
    content: "!";
}

body:not(.admin-body) .toast-warning .toast-progress,
body:not(.admin-body) .toast-warning .toast-icon {
    color: #c49a5a;
}

body:not(.admin-body) .toast-warning .toast-icon::before {
    content: "!";
}

body:not(.admin-body) .toast-info .toast-progress,
body:not(.admin-body) .toast-info .toast-icon {
    color: #647b98;
}

body:not(.admin-body) .toast-info .toast-icon::before {
    content: "i";
}

@keyframes toastIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes toastProgress {
    from { transform: scaleX(1); }
    to { transform: scaleX(0); }
}

body:not(.admin-body) .account-page {
    width: min(100%, 1240px);
    margin: 0 auto;
    padding: clamp(42px, 5.5vw, 70px) 20px clamp(44px, 6vw, 78px);
    color: #24170f;
}

body:not(.admin-body) .account-hero {
    display: grid;
    justify-items: center;
    margin-bottom: 34px;
    text-align: center;
}

body:not(.admin-body) .account-hero .eyebrow {
    margin: 0 0 4px;
    color: #8a5428;
    font-family: Montserrat, system-ui, sans-serif;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .54em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-title {
    margin: 0;
    color: #24170f;
    font-size: clamp(4rem, 7vw, 6.4rem);
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: .86;
}

body:not(.admin-body) .account-title-line {
    width: min(520px, 82vw);
    height: 1px;
    margin: 18px 0 12px;
    background: linear-gradient(90deg, transparent, rgba(138, 84, 40, .68), transparent);
}

body:not(.admin-body) .account-hero p:not(.eyebrow) {
    margin: 0;
    color: #7a6a5c;
    font-size: .96rem;
    line-height: 1.6;
}

body:not(.admin-body) .account-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .92fr);
    gap: 26px;
    align-items: stretch;
}

body:not(.admin-body) .account-luxe-card {
    position: relative;
    display: grid;
    align-content: start;
    gap: 26px;
    min-width: 0;
    padding: clamp(28px, 3vw, 38px);
    color: #f7ead8;
    background:
        radial-gradient(circle at 12% 0%, rgba(196, 154, 90, .16), transparent 16rem),
        linear-gradient(145deg, #1c3026, #16281f 58%, #20352a);
    border: 1px solid rgba(196, 154, 90, .42);
    border-radius: 16px;
    box-shadow: 0 22px 62px rgba(43, 23, 9, .2), inset 0 1px 0 rgba(255, 255, 255, .06);
}

body:not(.admin-body) .account-card-head {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding-bottom: 14px;
}

body:not(.admin-body) .account-card-head::after {
    content: "";
    grid-column: 2;
    width: min(290px, 100%);
    height: 1px;
    background: linear-gradient(90deg, rgba(196, 154, 90, .54), transparent);
}

body:not(.admin-body) .account-card-icon,
body:not(.admin-body) .account-action-icon {
    display: grid;
    place-items: center;
    border-radius: 50%;
}

body:not(.admin-body) .account-card-icon {
    width: 54px;
    height: 54px;
    color: #c49a5a;
    background: rgba(196, 154, 90, .13);
    border: 1px solid rgba(196, 154, 90, .58);
    box-shadow: inset 0 0 0 8px rgba(255, 255, 255, .025);
}

body:not(.admin-body) .account-card-icon svg,
body:not(.admin-body) .account-action-icon svg,
body:not(.admin-body) .password-field svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body:not(.admin-body) .account-card-head h2 {
    margin: 0;
    color: #f7ead8;
    font-size: clamp(1.9rem, 2.6vw, 2.45rem);
    font-weight: 600;
    line-height: 1;
}

body:not(.admin-body) .account-card-head p {
    margin: 8px 0 0;
    color: rgba(247, 234, 216, .72);
    font-size: .82rem;
    line-height: 1.45;
}

body:not(.admin-body) .account-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 20px;
}

body:not(.admin-body) .account-luxe-card label {
    display: grid;
    gap: 7px;
    color: #f7ead8;
    font-size: .76rem;
    font-weight: 700;
}

body:not(.admin-body) .account-luxe-card input {
    width: 100%;
    height: 43px;
    padding: 0 13px;
    color: #24170f;
    background: #fffaf3;
    border: 1px solid rgba(43, 23, 9, .16);
    border-radius: 7px;
    box-shadow: inset 0 1px 0 rgba(43, 23, 9, .04);
    font-size: .82rem;
    font-weight: 700;
}

body:not(.admin-body) .account-luxe-card input::placeholder {
    color: rgba(122, 106, 92, .66);
}

body:not(.admin-body) .account-luxe-card input:focus {
    border-color: #b98245;
    box-shadow: 0 0 0 3px rgba(185, 130, 69, .18);
    outline: none;
}

body:not(.admin-body) .account-password-stack {
    display: grid;
    gap: 19px;
    margin-top: 6px;
}

body:not(.admin-body) .password-field {
    position: relative;
    display: block;
}

body:not(.admin-body) .password-field input {
    padding-right: 44px;
}

body:not(.admin-body) .password-field button {
    position: absolute;
    top: 50%;
    right: 8px;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: #7a6a5c;
    background: transparent;
    border: 0;
    transform: translateY(-50%);
    cursor: pointer;
}

body:not(.admin-body) .account-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 46px;
    margin-top: auto;
    color: #fffaf3;
    background: linear-gradient(135deg, #8a5428, #6b3818);
    border: 1px solid rgba(196, 154, 90, .74);
    border-radius: 7px;
    box-shadow: 0 14px 28px rgba(43, 23, 9, .18);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}

body:not(.admin-body) .account-submit:hover {
    box-shadow: 0 18px 34px rgba(43, 23, 9, .25);
    transform: translateY(-1px);
}

body:not(.admin-body) .account-forgot-link {
    justify-self: center;
    color: #c49a5a;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-secondary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 20px;
}

body:not(.admin-body) .account-action-card {
    position: relative;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 24px;
    gap: 18px;
    align-items: center;
    min-height: 128px;
    padding: 24px;
    color: #24170f;
    background: rgba(255, 250, 243, .78);
    border: 1px solid rgba(138, 84, 40, .24);
    border-radius: 15px;
    box-shadow: 0 16px 42px rgba(43, 23, 9, .07);
}

body:not(.admin-body) .account-action-icon {
    width: 54px;
    height: 54px;
    color: #f7ead8;
    background: radial-gradient(circle at 35% 25%, #5d3a1f, #2b1308);
    box-shadow: inset 0 0 0 1px rgba(196, 154, 90, .24);
}

body:not(.admin-body) .account-action-card strong {
    display: block;
    color: #24170f;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.34rem;
    font-weight: 600;
    line-height: 1.05;
}

body:not(.admin-body) .account-action-card small {
    display: block;
    max-width: 260px;
    margin-top: 8px;
    color: #7a6a5c;
    font-size: .78rem;
    line-height: 1.5;
}

body:not(.admin-body) .account-action-card em {
    display: inline-block;
    margin-top: 13px;
    color: #8a5428;
    font-size: .75rem;
    font-style: normal;
    font-weight: 700;
}

body:not(.admin-body) .account-action-card > i {
    color: #8a5428;
    font-size: 2.1rem;
    font-style: normal;
    line-height: 1;
}

body:not(.admin-body) .account-logout-inline {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

body:not(.admin-body) .account-logout-button {
    min-height: 44px;
    padding: 0 34px;
    color: #24170f;
    background: rgba(255, 250, 243, .76);
    border: 1px solid rgba(43, 23, 9, .12);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    body:not(.admin-body) .account-main-grid,
    body:not(.admin-body) .account-secondary-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    body:not(.admin-body) .toast-stack {
        top: 112px;
        right: 16px;
        left: 16px;
        width: auto;
    }

    body:not(.admin-body) .account-page {
        padding: 34px 16px 52px;
    }

    body:not(.admin-body) .account-title {
        font-size: clamp(3.2rem, 16vw, 4.3rem);
    }

    body:not(.admin-body) .account-hero p:not(.eyebrow) {
        max-width: 320px;
    }

    body:not(.admin-body) .account-luxe-card {
        padding: 24px 18px;
        border-radius: 15px;
    }

    body:not(.admin-body) .account-card-head {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 14px;
    }

    body:not(.admin-body) .account-card-icon,
    body:not(.admin-body) .account-action-icon {
        width: 46px;
        height: 46px;
    }

    body:not(.admin-body) .account-form-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .account-action-card {
        grid-template-columns: 50px minmax(0, 1fr) 18px;
        min-height: 118px;
        padding: 20px 18px;
    }
}

/* Desktop corrective layout for the account page.
   The mobile layout is already validated; these rules only tighten large screens. */
@media (min-width: 981px) {
    body.account-template {
        overflow-x: hidden;
        background:
            radial-gradient(circle at 50% 22%, rgba(196, 154, 90, .14), transparent 34rem),
            linear-gradient(180deg, #fffaf3 0%, #fbf6ef 46%, #f7efe6 100%);
    }

    body.account-template .top-note {
        display: grid;
        grid-template-columns: 1fr;
        min-height: 34px;
        background: linear-gradient(90deg, #2b1308, #32180c);
        text-align: center;
    }

    body.account-template .top-note span {
        min-height: 34px;
        padding: 0 12px;
        background: transparent;
        line-height: 34px;
    }

    body.account-template .top-note span:nth-child(n+2) {
        display: none;
    }

    body.account-template .site-header {
        display: grid;
        grid-template-columns: 260px minmax(0, 1fr) 260px;
        align-items: center;
        min-height: 86px;
        padding: 0 clamp(54px, 5vw, 96px);
        background: rgba(255, 250, 243, .97);
        border-bottom: 1px solid rgba(43, 23, 9, .1);
    }

    body.account-template .site-header .menu-toggle {
        display: none;
    }

    body.account-template .brand-text-only {
        justify-self: start;
        min-width: 0;
    }

    body.account-template .brand-text-only span {
        font-size: 1.72rem;
        line-height: .86;
    }

    body.account-template .brand-text-only strong {
        font-size: .58rem;
        letter-spacing: .46em;
    }

    body.account-template .main-nav {
        justify-self: center;
        gap: clamp(34px, 4vw, 64px);
        width: auto;
        min-width: 0;
    }

    body.account-template .main-nav a {
        padding: 0;
        background: transparent;
        white-space: nowrap;
    }

    body.account-template .main-nav a:hover {
        background: transparent;
    }

    body.account-template .header-actions {
        justify-self: end;
        min-width: 0;
    }

    body.account-template .site-main {
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
        background:
            radial-gradient(circle at 50% 18%, rgba(196, 154, 90, .12), transparent 34rem),
            linear-gradient(180deg, #fffaf3 0%, #fbf6ef 55%, #f7efe6 100%);
    }

    body.account-template .toast-stack {
        top: 142px;
        right: clamp(34px, 4vw, 72px);
        width: 330px;
    }

    body.account-template .account-page {
        width: min(calc(100% - 96px), 1130px);
        margin: 0 auto;
        padding: 44px 0 46px;
    }

    body.account-template .account-hero {
        margin-bottom: 26px;
    }

    body.account-template .account-hero .eyebrow {
        margin-bottom: 2px;
        font-size: .72rem;
        letter-spacing: .48em;
    }

    body.account-template .account-title {
        font-size: clamp(5rem, 6.4vw, 6.2rem);
        letter-spacing: -.035em;
        line-height: .84;
    }

    body.account-template .account-title-line {
        width: 440px;
        margin: 15px 0 10px;
    }

    body.account-template .account-hero p:not(.eyebrow) {
        font-size: .88rem;
    }

    body.account-template .account-main-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
        align-items: stretch;
    }

    body.account-template .account-luxe-card {
        min-height: 398px;
        padding: 26px;
        border-radius: 13px;
        gap: 18px;
        box-shadow: 0 20px 52px rgba(43, 23, 9, .18), inset 0 1px 0 rgba(255, 255, 255, .06);
    }

    body.account-template .account-card-head {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 17px;
        padding-bottom: 8px;
    }

    body.account-template .account-card-head::after {
        width: 270px;
    }

    body.account-template .account-card-icon {
        width: 50px;
        height: 50px;
    }

    body.account-template .account-card-head h2 {
        font-size: 2.02rem;
    }

    body.account-template .account-card-head p {
        margin-top: 6px;
        font-size: .74rem;
    }

    body.account-template .account-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 11px 18px;
    }

    body.account-template .account-luxe-card label {
        gap: 5px;
        font-size: .68rem;
    }

    body.account-template .account-luxe-card input {
        height: 33px;
        padding: 0 11px;
        border-radius: 5px;
        font-size: .74rem;
    }

    body.account-template .account-password-stack {
        gap: 17px;
        margin-top: 4px;
    }

    body.account-template .password-field button {
        width: 30px;
        height: 30px;
    }

    body.account-template .account-submit {
        min-height: 40px;
        border-radius: 6px;
        font-size: .7rem;
        letter-spacing: .14em;
    }

    body.account-template .account-forgot-link {
        margin-top: -2px;
        font-size: .68rem;
    }

    body.account-template .account-secondary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
        margin-top: 16px;
    }

    body.account-template .account-action-card {
        grid-template-columns: 54px minmax(0, 1fr) 20px;
        gap: 16px;
        min-height: 98px;
        padding: 17px 18px;
        border-radius: 13px;
    }

    body.account-template .account-action-icon {
        width: 48px;
        height: 48px;
    }

    body.account-template .account-action-card strong {
        font-size: 1.18rem;
    }

    body.account-template .account-action-card small {
        max-width: 220px;
        margin-top: 5px;
        font-size: .68rem;
        line-height: 1.42;
    }

    body.account-template .account-action-card em {
        margin-top: 8px;
        font-size: .68rem;
    }

    body.account-template .account-action-card > i {
        font-size: 1.72rem;
    }

    body.account-template .account-logout-inline {
        margin-top: 22px;
    }
}

@media (min-width: 981px) and (max-width: 1180px) {
    body.account-template .site-header {
        grid-template-columns: 210px minmax(0, 1fr) 210px;
        padding-inline: 34px;
    }

    body.account-template .main-nav {
        gap: 24px;
    }

    body.account-template .account-page {
        width: min(calc(100% - 48px), 1080px);
    }
}

/* Customer orders */
body:not(.admin-body) .account-orders-page {
    width: min(100%, 1180px);
}

body:not(.admin-body) .account-orders-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 24px;
}

body:not(.admin-body) .account-order-stat-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    min-height: 132px;
    padding: 26px;
    color: #f7ead8;
    background:
        radial-gradient(circle at 12% 0%, rgba(196, 154, 90, .16), transparent 14rem),
        linear-gradient(145deg, #1c3026, #16281f 62%, #20352a);
    border: 1px solid rgba(196, 154, 90, .38);
    border-radius: 16px;
    box-shadow: 0 20px 54px rgba(43, 23, 9, .16);
}

body:not(.admin-body) .account-order-stat-card small {
    display: block;
    color: rgba(247, 234, 216, .72);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-order-stat-card strong {
    display: block;
    margin-top: 5px;
    color: #fffaf3;
    font-size: 2.4rem;
    line-height: 1;
}

body:not(.admin-body) .account-orders-panel,
body:not(.admin-body) .account-orders-empty,
body:not(.admin-body) .account-orders-help {
    background: rgba(255, 250, 243, .82);
    border: 1px solid rgba(138, 84, 40, .2);
    border-radius: 18px;
    box-shadow: 0 18px 48px rgba(43, 23, 9, .08);
}

body:not(.admin-body) .account-orders-panel {
    padding: clamp(20px, 3vw, 30px);
}

body:not(.admin-body) .account-orders-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

body:not(.admin-body) .account-orders-panel-head h2,
body:not(.admin-body) .account-orders-empty h2,
body:not(.admin-body) .account-orders-help h2 {
    margin: 0;
    color: #24170f;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(2rem, 3vw, 2.8rem);
    font-weight: 600;
    line-height: 1;
}

body:not(.admin-body) .account-orders-panel-head .eyebrow,
body:not(.admin-body) .account-orders-help .eyebrow {
    margin: 0 0 5px;
    color: #8a5428;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .32em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-orders-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    color: #2b1308;
    background: rgba(255, 250, 243, .8);
    border: 1px solid rgba(43, 23, 9, .14);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-orders-table {
    display: grid;
    gap: 10px;
}

body:not(.admin-body) .account-orders-row {
    display: grid;
    grid-template-columns: 1.25fr .82fr .9fr .85fr 1fr auto;
    gap: 14px;
    align-items: center;
    min-height: 66px;
    padding: 14px 16px;
    color: #24170f;
    background: rgba(255, 253, 248, .78);
    border: 1px solid rgba(43, 23, 9, .08);
    border-radius: 14px;
}

body:not(.admin-body) .account-orders-row-head {
    min-height: 0;
    padding-block: 9px;
    color: #7a6a5c;
    background: transparent;
    border: 0;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body:not(.admin-body) .account-orders-row strong {
    font-weight: 900;
}

body:not(.admin-body) .account-order-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: .72rem;
    font-style: normal;
    font-weight: 850;
    white-space: nowrap;
}

body:not(.admin-body) .account-order-status-pending {
    color: #6b5a49;
    background: #efe7da;
    border: 1px solid rgba(107, 90, 73, .18);
}

body:not(.admin-body) .account-order-status-preparing,
body:not(.admin-body) .account-order-status-paid {
    color: #80521e;
    background: #f7ead2;
    border: 1px solid rgba(201, 148, 74, .28);
}

body:not(.admin-body) .account-order-status-shipped {
    color: #315f7a;
    background: #e8f3f8;
    border: 1px solid rgba(49, 95, 122, .18);
}

body:not(.admin-body) .account-order-status-completed {
    color: #2c6a48;
    background: #e7f5ec;
    border: 1px solid rgba(44, 106, 72, .16);
}

body:not(.admin-body) .account-order-status-cancelled {
    color: #9b4a3c;
    background: #f8e9e5;
    border: 1px solid rgba(155, 74, 60, .16);
}

body:not(.admin-body) .account-order-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 16px;
    color: #fffaf3;
    background: linear-gradient(135deg, #8a5428, #5a2c12);
    border: 1px solid rgba(196, 154, 90, .55);
    border-radius: 999px;
    box-shadow: 0 12px 22px rgba(43, 23, 9, .13);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

body:not(.admin-body) .account-orders-empty {
    display: grid;
    justify-items: center;
    gap: 14px;
    padding: clamp(34px, 5vw, 56px) 22px;
    text-align: center;
}

body:not(.admin-body) .account-orders-empty p {
    margin: 0 0 8px;
    color: #7a6a5c;
}

body:not(.admin-body) .account-orders-help {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    margin-top: 22px;
    padding: 26px;
}

body:not(.admin-body) .account-orders-help p:not(.eyebrow) {
    margin: 8px 0 0;
    color: #7a6a5c;
    line-height: 1.6;
}

body:not(.admin-body) .account-orders-help-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

body:not(.admin-body) .account-orders-help-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 15px;
    color: #2b1308;
    border: 1px solid rgba(138, 84, 40, .22);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 850;
}

body:not(.admin-body) .account-order-detail-grid {
    display: grid;
    grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr);
    gap: 24px;
    align-items: start;
}

body:not(.admin-body) .account-order-summary-list {
    display: grid;
    gap: 12px;
    margin: 0;
}

body:not(.admin-body) .account-order-summary-list div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(247, 234, 216, .16);
}

body:not(.admin-body) .account-order-summary-list dt {
    color: rgba(247, 234, 216, .68);
    font-size: .72rem;
    font-weight: 850;
    text-transform: uppercase;
}

body:not(.admin-body) .account-order-summary-list dd {
    margin: 0;
    color: #fffaf3;
    font-weight: 850;
    text-align: right;
}

body:not(.admin-body) .account-order-items {
    display: grid;
    gap: 10px;
}

body:not(.admin-body) .account-order-items article {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 70px 90px 90px;
    gap: 14px;
    align-items: start;
    padding: 14px;
    background: rgba(255, 253, 248, .78);
    border: 1px solid rgba(43, 23, 9, .08);
    border-radius: 14px;
}

body:not(.admin-body) .account-order-items small {
    display: block;
    margin-top: 8px;
    color: #7a6a5c;
    line-height: 1.5;
}

body:not(.admin-body) .account-order-totals {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(43, 23, 9, .1);
}

body:not(.admin-body) .account-order-totals div {
    display: flex;
    justify-content: space-between;
    gap: 18px;
}

body:not(.admin-body) .account-order-totals div:last-child {
    color: #24170f;
    font-size: 1.22rem;
    font-weight: 900;
}

body:not(.admin-body) .account-order-address-card {
    align-items: start;
}

@media (max-width: 980px) {
    body:not(.admin-body) .account-orders-stats,
    body:not(.admin-body) .account-order-detail-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .account-orders-help {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .account-orders-help-links {
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    body:not(.admin-body) .account-orders-row-head {
        display: none;
    }

    body:not(.admin-body) .account-orders-row {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 18px;
    }

    body:not(.admin-body) .account-orders-row span[role="cell"] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
    }

    body:not(.admin-body) .account-orders-row span[role="cell"]::before {
        color: #7a6a5c;
        font-size: .68rem;
        font-weight: 850;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    body:not(.admin-body) .account-orders-row span[role="cell"]:nth-of-type(1)::before { content: "Date"; }
    body:not(.admin-body) .account-orders-row span[role="cell"]:nth-of-type(2)::before { content: "Paiement"; }
    body:not(.admin-body) .account-orders-row span[role="cell"]:nth-of-type(3)::before { content: "Montant"; }
    body:not(.admin-body) .account-orders-row span[role="cell"]:nth-of-type(4)::before { content: "Statut"; }

    body:not(.admin-body) .account-orders-row span[role="cell"]:last-child {
        justify-content: stretch;
    }

    body:not(.admin-body) .account-orders-row span[role="cell"]:last-child::before {
        content: none;
    }

    body:not(.admin-body) .account-order-detail-btn {
        width: 100%;
    }

    body:not(.admin-body) .account-order-items article {
        grid-template-columns: 1fr;
    }
}

/* Admin V2 premium dark emerald interface */
.admin-body {
    --admin-bg: #06110d;
    --admin-bg-2: #07140f;
    --admin-panel: rgba(255, 255, 255, .045);
    --admin-panel-solid: #10251c;
    --admin-card: rgba(16, 37, 28, .86);
    --admin-card-soft: rgba(216, 182, 90, .055);
    --admin-line: rgba(216, 182, 90, .22);
    --admin-line-soft: rgba(248, 244, 232, .08);
    --admin-text: #f8f4e8;
    --admin-muted: #b8b2a3;
    --admin-gold: #d8b65a;
    --admin-gold-2: #e6c878;
    --admin-gold-grad: linear-gradient(135deg, #f4d27a, #c99635);
    color: var(--admin-text);
    background:
        radial-gradient(circle at 10% 0%, rgba(216, 182, 90, .09), transparent 24rem),
        radial-gradient(circle at 90% 10%, rgba(216, 182, 90, .06), transparent 26rem),
        linear-gradient(135deg, #06110d, #07140f 58%, #030806);
    font-family: Inter, Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

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

.admin-sidebar {
    width: 260px;
    padding: 24px 18px;
    background:
        radial-gradient(circle at 35% 0%, rgba(216, 182, 90, .12), transparent 16rem),
        linear-gradient(180deg, rgba(13, 33, 24, .98), rgba(6, 17, 13, .99));
    border-right: 1px solid var(--admin-line);
    box-shadow: 24px 0 90px rgba(0, 0, 0, .36);
}

.admin-brand {
    justify-content: center;
    gap: 12px;
    min-height: 92px;
    padding: 14px;
    background: rgba(255, 255, 255, .035);
    border: 1px solid var(--admin-line);
    border-radius: 14px;
}

.admin-brand img {
    width: 62px;
    height: 62px;
    filter: drop-shadow(0 10px 20px rgba(216, 182, 90, .12));
}

.admin-brand span::before {
    content: "EL FINAQ";
    display: block;
    color: var(--admin-gold-2);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.1rem;
    letter-spacing: .16em;
}

.admin-brand small {
    color: var(--admin-gold);
    font-size: .58rem;
    letter-spacing: .24em;
}

.admin-brand strong {
    color: var(--admin-text);
    font-size: .8rem;
    letter-spacing: .08em;
}

.admin-store-link,
.admin-topbar-new {
    min-height: 44px;
    color: #21170e;
    background: var(--admin-gold-grad);
    border: 1px solid rgba(255, 237, 185, .46);
    border-radius: 10px;
    box-shadow: 0 16px 36px rgba(201, 150, 53, .18);
}

.admin-store-link {
    gap: 9px;
    margin: 18px 0;
    font-size: .74rem;
}

.admin-menu {
    gap: 8px;
}

.admin-menu-link {
    min-height: 42px;
    padding: 0 12px;
    color: rgba(248, 244, 232, .82);
    background: rgba(255, 255, 255, .025);
    border: 1px solid rgba(216, 182, 90, .08);
    border-radius: 9px;
    font-size: .82rem;
    font-weight: 800;
}

.admin-menu-link i,
.admin-bottom-nav i {
    width: 27px;
    height: 27px;
    color: var(--admin-gold);
    background: rgba(216, 182, 90, .08);
    border: 1px solid rgba(216, 182, 90, .22);
    border-radius: 8px;
    font-size: .8rem;
}

.admin-menu-link:hover {
    color: var(--admin-text);
    background: rgba(216, 182, 90, .12);
    border-color: rgba(216, 182, 90, .24);
    transform: translateX(3px);
}

.admin-menu-link.is-active {
    color: var(--admin-text);
    background:
        radial-gradient(circle at 90% 0%, rgba(216, 182, 90, .18), transparent 9rem),
        rgba(255, 255, 255, .065);
    border-color: rgba(216, 182, 90, .42);
    box-shadow: 0 10px 30px rgba(216, 182, 90, .08), inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.admin-menu-link.is-active::before {
    left: -18px;
    background: var(--admin-gold-2);
    box-shadow: 0 0 20px rgba(216, 182, 90, .58);
}

.admin-sidebar-logout,
.admin-drawer-logout {
    margin-top: 14px;
}

.logout {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    color: var(--admin-gold-2);
    background: rgba(216, 182, 90, .045);
    border: 1px solid rgba(216, 182, 90, .34);
    border-radius: 9px;
    box-shadow: none;
}

.logout:hover,
.logout:focus-visible {
    color: #20160c;
    background: var(--admin-gold-grad);
    border-color: rgba(255, 237, 185, .52);
    outline: none;
}

.admin-profile {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 14px;
    background: rgba(255, 255, 255, .035);
    border-color: rgba(216, 182, 90, .18);
    border-radius: 14px;
}

.admin-profile form {
    display: none;
}

.admin-main {
    min-height: 100vh;
    padding: 0 clamp(18px, 3vw, 42px) 42px;
}

.admin-topbar {
    position: sticky;
    top: 0;
    z-index: 25;
    min-height: 76px;
    margin: 0 calc(clamp(18px, 3vw, 42px) * -1) 28px;
    padding: 0 clamp(18px, 3vw, 42px);
    background: rgba(6, 17, 13, .88);
    border-bottom: 1px solid rgba(216, 182, 90, .16);
    backdrop-filter: blur(18px);
}

.admin-topbar-title strong {
    color: var(--admin-text);
    font-size: 1.26rem;
}

.admin-topbar-burger,
.admin-topbar-notification,
.admin-icon-btn,
.admin-close,
.admin-notification {
    color: var(--admin-text);
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(216, 182, 90, .2);
    border-radius: 9px;
}

.admin-topbar-notification {
    width: 42px;
    height: 42px;
}

.admin-topbar-notification span {
    background: var(--admin-gold-grad);
    color: #20160c;
}

.admin-topbar-shop {
    min-height: 42px;
    padding: 0 16px;
    color: var(--admin-text);
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(216, 182, 90, .2);
    border-radius: 9px;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.admin-topbar-new {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.admin-heading {
    gap: 20px;
    margin-bottom: 22px;
}

.admin-heading h1 {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(2.7rem, 4.8vw, 5.2rem);
    font-weight: 650;
    letter-spacing: -.025em;
    line-height: .92;
}

.admin-body .eyebrow {
    color: var(--admin-gold);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .24em;
}

.admin-subtitle {
    color: var(--admin-muted);
}

.dashboard-kpis,
.admin-metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.dashboard-kpi,
.admin-metric-grid article,
.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled,
.admin-panel,
.product-admin-card,
.category-admin-card,
.admin-empty-card {
    color: var(--admin-text);
    background:
        radial-gradient(circle at 90% 8%, rgba(216, 182, 90, .14), transparent 12rem),
        linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .028)),
        var(--admin-card);
    border: 1px solid var(--admin-line);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .26);
}

.dashboard-kpi:hover,
.admin-metric-grid article:hover,
.dashboard-quick-actions a:hover,
.admin-empty-card:hover {
    transform: translateY(-2px);
    border-color: rgba(216, 182, 90, .34);
}

.dashboard-kpi,
.admin-metric-grid article {
    min-height: 122px;
    padding: 18px;
}

.dashboard-kpi span,
.admin-metric-grid span {
    color: var(--admin-muted);
    font-size: .68rem;
    letter-spacing: .06em;
}

.dashboard-kpi strong,
.admin-metric-grid strong {
    color: var(--admin-text);
    font-size: clamp(1.65rem, 2.5vw, 2.55rem);
}

.dashboard-kpi small,
.admin-metric-grid small {
    color: rgba(248, 244, 232, .62);
}

.dashboard-quick-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.dashboard-quick-actions a,
.dashboard-quick-actions .is-disabled {
    min-height: 104px;
    border-radius: 14px;
}

.dashboard-quick-actions i {
    color: #21170e;
    background: var(--admin-gold-grad);
}

.dashboard-main-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
    gap: 18px;
}

.section-heading h2,
.admin-empty-card h2 {
    color: var(--admin-text);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.7rem, 2.6vw, 2.5rem);
    line-height: 1;
}

.dashboard-chart {
    min-height: 230px;
    border-color: rgba(216, 182, 90, .12);
}

.dashboard-bar span {
    background: linear-gradient(180deg, #f4d27a, #d8b65a 52%, #9d6c28);
}

.admin-table-panel {
    overflow: hidden;
}

.admin-body table {
    width: 100%;
    border-collapse: collapse;
}

.admin-body th,
.admin-body td {
    padding: 14px 12px;
    border-bottom: 1px solid rgba(216, 182, 90, .1);
}

.admin-body th {
    color: var(--admin-muted);
    font-size: .68rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.admin-body td {
    color: rgba(248, 244, 232, .86);
}

.admin-body td small {
    color: var(--admin-muted);
}

.admin-table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.admin-module-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.admin-empty-card {
    min-height: 190px;
    padding: 22px;
}

.admin-empty-card p:not(.eyebrow) {
    color: var(--admin-muted);
    line-height: 1.65;
}

.admin-mini-list {
    display: grid;
    gap: 10px;
    margin: 4px 0 12px;
}

.admin-mini-list div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(216, 182, 90, .14);
    border-radius: 12px;
}

.admin-mini-list strong {
    color: var(--admin-text);
    letter-spacing: .06em;
}

.admin-mini-list span {
    color: var(--admin-muted);
    font-size: .84rem;
    text-align: right;
}

.admin-body .btn {
    color: #21170e;
    background: var(--admin-gold-grad);
    border-color: rgba(255, 237, 185, .44);
    border-radius: 10px;
}

.admin-body .btn.secondary,
.admin-body .quiet-link {
    color: var(--admin-text);
    background: rgba(255, 255, 255, .04);
    border-color: rgba(216, 182, 90, .22);
    border-radius: 10px;
}

.pill {
    color: #f6dc8b;
    background: rgba(216, 182, 90, .12);
    border: 1px solid rgba(216, 182, 90, .18);
}

.shipping-label-print {
    display: none;
}

@page {
    size: 100mm 150mm;
    margin: 4mm;
}

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

    .admin-sidebar {
        display: none;
    }

    .admin-mobile-header {
        display: grid;
        background: rgba(6, 17, 13, .94);
        border-bottom: 1px solid rgba(216, 182, 90, .18);
        backdrop-filter: blur(16px);
    }

    .admin-topbar {
        min-height: 66px;
        margin-top: 0;
    }

    .dashboard-kpis,
    .admin-metric-grid,
    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .admin-drawer {
        background:
            radial-gradient(circle at 20% 0%, rgba(216, 182, 90, .13), transparent 16rem),
            linear-gradient(180deg, #0d2118, #06110d);
        border-right: 1px solid rgba(216, 182, 90, .22);
    }
}

@media (max-width: 640px) {
    .admin-body {
        background: linear-gradient(180deg, #06110d, #07140f);
    }

    .admin-mobile-header {
        min-height: 64px;
        grid-template-columns: 42px minmax(0, 1fr) 42px;
        padding: 8px 14px;
    }

    .admin-mobile-brand strong {
        font-size: .78rem;
    }

    .admin-main {
        padding: 0 14px 96px;
    }

    .admin-topbar {
        margin: 0 -14px 20px;
        padding: 0 14px;
    }

    .admin-topbar-title strong {
        max-width: 140px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .admin-topbar-shop {
        display: none;
    }

    .admin-topbar-new {
        min-height: 38px;
        padding: 0 10px;
        font-size: .62rem;
    }

    .admin-heading {
        align-items: start;
    }

    .admin-heading h1 {
        font-size: clamp(2.45rem, 13vw, 3.6rem);
    }

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

    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-quick-actions a,
    .dashboard-quick-actions .is-disabled {
        grid-template-columns: 1fr;
        min-height: 104px;
        text-align: center;
    }

    .dashboard-quick-actions i {
        justify-self: center;
    }

    .admin-body table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    .admin-module-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-chart {
        min-height: 180px;
    }

    .dashboard-bar {
        height: 170px;
    }
}

@media print {
    * {
        box-shadow: none !important;
        text-shadow: none !important;
    }

    .admin-sidebar,
    .admin-mobile-header,
    .admin-bottom-nav,
    .admin-heading,
    .orders-list-panel,
    .admin-topbar,
    .no-print {
        display: none !important;
    }

    body.admin-body,
    .admin-shell,
    .admin-main {
        display: block;
        min-height: auto;
        padding: 0;
        background: #fff;
        color: #111;
    }
    .orders-admin-shell {
        display: block;
    }

    .order-detail-panel {
        display: block;
        width: auto;
        min-height: auto;
        padding: 0;
        margin: 0;
        color: #111;
        background: #fff;
        border: 0;
        box-shadow: none;
    }

    .order-detail-panel > :not(.shipping-label-print) {
        display: none !important;
    }

    .shipping-label-print {
        display: block !important;
        width: 92mm;
        min-height: 142mm;
        max-height: 142mm;
        overflow: hidden;
        box-sizing: border-box;
        padding: 4mm;
        border: 1px solid #000;
        background: #fff;
        color: #000;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 8.4pt;
        line-height: 1.25;
        page-break-inside: avoid;
    }

    .shipping-label-print * {
        color: #000 !important;
        background: transparent !important;
        border-color: #222 !important;
        font-family: Arial, Helvetica, sans-serif !important;
    }

    .shipping-label-head {
        display: table;
        width: 100%;
        padding: 0 0 2.5mm;
        margin: 0 0 2.5mm;
        border-bottom: 1.5px solid #000;
    }

    .shipping-label-head strong,
    .shipping-label-head span {
        display: block;
        text-align: center;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .shipping-label-head strong {
        font-size: 13pt;
        font-weight: 800;
    }

    .shipping-label-head span {
        margin-top: .8mm;
        font-size: 8pt;
        font-weight: 700;
    }

    .shipping-label-order {
        display: table;
        width: 100%;
        table-layout: fixed;
        border: 1px solid #222;
        margin-bottom: 2mm;
    }

    .shipping-label-order div {
        display: table-cell;
        width: 25%;
        padding: 1.5mm;
        border-right: 1px solid #555;
        vertical-align: top;
    }

    .shipping-label-order div:last-child {
        border-right: 0;
    }

    .shipping-label-order span,
    .shipping-label-box span,
    .shipping-label-products-head span,
    .shipping-label-prep span,
    .shipping-label-tracking span {
        display: block;
        margin-bottom: .7mm;
        color: #555 !important;
        font-size: 6.5pt;
        font-weight: 800;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .shipping-label-order strong {
        display: block;
        font-size: 7.3pt;
        font-weight: 800;
        overflow-wrap: anywhere;
    }

    .shipping-label-box,
    .shipping-label-products,
    .shipping-label-prep,
    .shipping-label-tracking {
        padding: 2mm;
        border: 1px solid #222;
        margin-bottom: 2mm;
    }

    .shipping-label-recipient {
        display: grid;
        grid-template-columns: 1fr 34mm;
        column-gap: 3mm;
    }

    .shipping-label-recipient span,
    .shipping-label-recipient strong {
        grid-column: 1;
    }

    .shipping-label-recipient strong {
        font-size: 14pt;
        line-height: 1.05;
        text-transform: uppercase;
        overflow-wrap: anywhere;
    }

    .shipping-label-recipient em,
    .shipping-label-recipient b {
        grid-column: 2;
        font-style: normal;
    }

    .shipping-label-recipient em {
        color: #555 !important;
        font-size: 6.5pt;
        font-weight: 800;
        letter-spacing: .06em;
    }

    .shipping-label-recipient b {
        font-size: 10pt;
        overflow-wrap: anywhere;
    }

    .shipping-label-address {
        border-width: 2px;
        min-height: 24mm;
    }

    .shipping-label-address p {
        margin: 0 0 1mm;
        font-size: 14pt;
        font-weight: 800;
        line-height: 1.12;
        text-transform: uppercase;
        overflow-wrap: anywhere;
    }

    .shipping-label-instructions p {
        margin: 0;
        font-size: 8pt;
        font-weight: 700;
    }

    .shipping-label-products {
        padding-bottom: 1mm;
    }

    .shipping-label-products-head {
        display: grid;
        grid-template-columns: 1fr 12mm;
        border-bottom: 1px solid #555;
        margin-bottom: 1mm;
    }

    .shipping-label-products article {
        display: grid;
        grid-template-columns: 1fr 12mm;
        gap: 1mm;
        padding: .7mm 0;
        border-bottom: 1px solid #e5e5e5;
    }

    .shipping-label-products article:last-child {
        border-bottom: 0;
    }

    .shipping-label-products article strong {
        font-size: 8.5pt;
        overflow-wrap: anywhere;
    }

    .shipping-label-products article b {
        text-align: center;
        font-size: 10pt;
    }

    .shipping-label-products article small {
        grid-column: 1 / -1;
        display: block;
        color: #222 !important;
        font-size: 7pt;
        font-weight: 700;
        overflow-wrap: anywhere;
    }

    .shipping-label-prep table {
        width: 100%;
        border-collapse: collapse;
        font-size: 7.2pt;
        font-weight: 700;
    }

    .shipping-label-prep td {
        width: 50%;
        padding: .8mm 1mm .8mm 0;
        vertical-align: top;
    }

    .shipping-label-tracking strong,
    .shipping-label-tracking small {
        display: block;
        overflow-wrap: anywhere;
    }

    .shipping-label-tracking strong {
        font-size: 10pt;
        font-weight: 800;
    }

    .shipping-label-tracking small {
        margin-top: .8mm;
        font-size: 6.4pt;
    }

    .shipping-label-footer {
        padding-top: 1.5mm;
        border-top: 1px solid #222;
        font-size: 7pt;
        font-weight: 800;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: .04em;
    }
}

/* Livraison V1 */
.checkout-page .form-panel {
    display: grid;
    gap: 24px;
}

.checkout-shipping-section,
.cart-shipping-preview,
.shipping-page {
    width: min(100%, 1180px);
    margin-inline: auto;
}

.checkout-shipping-section {
    padding-top: 10px;
}

.shipping-prep-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    padding: 10px 16px;
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 999px;
    color: #2b160c;
    background: #fff9f2;
    font-weight: 800;
    font-size: .78rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.shipping-options-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.shipping-options-grid.is-preview {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.shipping-option-card {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 22px;
    background: linear-gradient(145deg, #fffaf5, #f8eee3);
    color: #2b160c;
    box-shadow: 0 18px 45px rgba(43, 22, 12, .06);
    cursor: pointer;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.shipping-option-card:hover,
.shipping-option-card.is-selected {
    transform: translateY(-2px);
    border-color: rgba(201, 133, 34, .55);
    box-shadow: 0 20px 50px rgba(43, 22, 12, .1);
}

.shipping-option-card.is-selected {
    background: linear-gradient(145deg, #fff8ef, #f4e3cf);
}

.shipping-option-card input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.shipping-option-icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(201, 133, 34, .45);
    border-radius: 50%;
    background: rgba(217, 154, 50, .1);
    color: #9b612f;
    font-size: 1.2rem;
    font-weight: 900;
}

.shipping-option-main {
    display: grid;
    gap: 4px;
}

.shipping-option-main strong {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.28rem;
    line-height: 1;
}

.shipping-option-main small,
.shipping-option-main em {
    color: #7a6a5f;
    font-style: normal;
    font-size: .9rem;
    line-height: 1.35;
}

.shipping-option-card b {
    color: #2b160c;
    white-space: nowrap;
}

.shipping-option-card i {
    display: none;
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #2b160c;
    color: #fff9f2;
    font-style: normal;
    font-size: .65rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.shipping-option-card.is-selected i {
    display: inline-flex;
}

.shipping-page {
    padding: clamp(48px, 7vw, 90px) 20px;
}

.shipping-hero {
    max-width: 760px;
    margin: 0 auto 34px;
    text-align: center;
}

.shipping-hero h1 {
    margin: 0;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(3rem, 8vw, 6.2rem);
    color: #24170f;
}

.shipping-hero p {
    color: #7a6a5f;
    line-height: 1.8;
}

.shipping-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.shipping-info-grid article,
.order-shipping-card {
    padding: 24px;
    border: 1px solid rgba(43, 22, 12, .12);
    border-radius: 24px;
    background: rgba(255, 250, 243, .84);
    box-shadow: 0 18px 55px rgba(43, 22, 12, .06);
}

.shipping-info-grid article span {
    display: inline-grid;
    width: 38px;
    height: 38px;
    margin-bottom: 14px;
    place-items: center;
    border-radius: 50%;
    background: #2b160c;
    color: #f8e6c5;
    font-weight: 900;
}

.shipping-info-grid h2 {
    margin: 0 0 8px;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 1.8rem;
    color: #24170f;
}

.shipping-info-grid p {
    margin: 0;
    color: #7a6a5f;
    line-height: 1.65;
}

.shipping-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(216, 182, 90, .12);
    color: #e6c878;
    font-style: normal;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.shipping-status-livree {
    background: rgba(70, 170, 112, .14);
    color: #82d6a5;
}

.shipping-status-expediee {
    background: rgba(90, 150, 220, .14);
    color: #8dc0ff;
}

.shipping-status-retour {
    background: rgba(230, 160, 70, .15);
    color: #f1bb72;
}

.shipping-status-annulee {
    background: rgba(220, 80, 80, .15);
    color: #ff9b9b;
}

.order-shipping-card {
    margin-top: 18px;
    background: rgba(255, 255, 255, .045);
    border-color: rgba(216, 182, 90, .18);
}

.order-shipping-head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.order-shipping-head h3 {
    margin: 4px 0 0;
    color: #f8f4e8;
    font-size: 1.35rem;
}

@media (max-width: 900px) {
    .shipping-options-grid,
    .shipping-info-grid {
        grid-template-columns: 1fr;
    }

    .shipping-option-card {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .shipping-option-card b {
        grid-column: 2;
    }
}

/* Product cards: compact premium alignment */
body:not(.admin-body) .premium-product-card .product-body {
    display: grid;
    grid-template-rows: auto auto auto auto auto;
    align-content: start;
    flex: 1 1 auto;
    min-height: 0;
    padding: 22px 24px 26px;
    gap: 14px;
    text-align: center;
}

body:not(.admin-body) .premium-product-card .product-body h3 {
    min-height: 0;
    margin: 0;
    font-size: clamp(1.85rem, 2.2vw, 2.55rem);
    line-height: .98;
}

body:not(.admin-body) .premium-product-card .product-body > p {
    min-height: 0;
    margin: 0 auto;
    max-width: 34ch;
    line-height: 1.55;
}

body:not(.admin-body) .premium-product-card .product-composition {
    min-height: 0;
    margin: 10px auto 0;
    width: 100%;
}

body:not(.admin-body) .premium-product-card .product-actions {
    margin-top: 8px;
    padding-top: 0;
    align-self: end;
}

body:not(.admin-body) .premium-product-card .product-button-row {
    align-items: center;
}

body:not(.admin-body) .premium-product-card .buy-product-btn {
    width: min(100%, 220px);
    min-height: 54px;
    justify-content: center;
    border: 1px solid rgba(232, 183, 90, .35);
    border-radius: 999px;
    background: linear-gradient(135deg, #351607 0%, #2a1208 58%, #4a210f 100%);
    color: #fffaf3;
    box-shadow: 0 16px 34px rgba(43, 22, 12, .18);
    font-size: .82rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.admin-body) .premium-product-card .buy-product-btn:hover {
    transform: translateY(-2px);
    border-color: rgba(232, 183, 90, .62);
    background: linear-gradient(135deg, #4a210f 0%, #2a1208 100%);
    box-shadow: 0 20px 42px rgba(43, 22, 12, .24);
}

@media (max-width: 900px) {
    body:not(.admin-body) .premium-product-card .product-body {
        padding: 20px 18px 24px;
        gap: 12px;
    }

    body:not(.admin-body) .premium-product-card .product-body h3 {
        font-size: clamp(1.75rem, 8vw, 2.25rem);
    }

    body:not(.admin-body) .premium-product-card .buy-product-btn {
        width: 100%;
    }
}

/* Categories: soft premium active state */
body:not(.admin-body) .collection-section {
    --category-active-bg: rgba(255, 250, 244, .94);
    --category-active-border: rgba(201, 133, 34, .13);
    --category-gold: #c98522;
    --category-ink: #2b160c;
}

body:not(.admin-body) .collection-card {
    position: relative;
    overflow: visible;
    padding: 12px 12px 16px;
    background: rgba(255, 250, 244, 0);
    border: 1px solid transparent;
    border-radius: 18px;
    box-shadow: none;
    outline: 0;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}

body:not(.admin-body) .collection-card img {
    display: block;
    width: 100%;
    border-radius: 12px;
    transition: transform .32s ease, box-shadow .32s ease, filter .32s ease;
}

body:not(.admin-body) .collection-card:hover {
    transform: translateY(-4px);
    background: rgba(255, 250, 244, .55);
    box-shadow: 0 14px 35px rgba(43, 22, 12, .07);
}

body:not(.admin-body) .collection-card:hover img {
    transform: scale(1.025);
    box-shadow: 0 18px 38px rgba(43, 22, 12, .08);
}

body:not(.admin-body) .collection-card span {
    position: relative;
    display: inline-block;
    color: var(--category-ink);
    transition: color .2s ease;
}

body:not(.admin-body) .collection-card small {
    color: #a86224;
    font-weight: 850;
    letter-spacing: .09em;
    transition: color .2s ease, letter-spacing .2s ease;
}

body:not(.admin-body) .collection-card:hover small {
    color: var(--category-ink);
    letter-spacing: .11em;
}

body:not(.admin-body) .collection-card.is-active {
    outline: 0 !important;
    outline-offset: 0 !important;
    padding: 14px 14px 18px;
    background: var(--category-active-bg);
    border: 1px solid var(--category-active-border);
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(43, 22, 12, .08);
    transform: translateY(-4px);
}

body:not(.admin-body) .collection-card.is-active img {
    border-radius: 13px;
    box-shadow: 0 18px 38px rgba(43, 22, 12, .075);
}

body:not(.admin-body) .collection-card.is-active span {
    color: var(--category-ink);
}

body:not(.admin-body) .collection-card.is-active span::after {
    content: "";
    display: block;
    width: 54px;
    height: 2px;
    margin: 10px auto 0;
    background: linear-gradient(90deg, transparent, var(--category-gold), transparent);
    border-radius: 999px;
}

body:not(.admin-body) .collection-card.is-active small {
    color: #9b612f;
}

@media (max-width: 900px) {
    body:not(.admin-body) .collection-card,
    body:not(.admin-body) .collection-card.is-active {
        padding: 10px;
        border-radius: 16px;
    }

    body:not(.admin-body) .collection-card:hover,
    body:not(.admin-body) .collection-card.is-active {
        transform: none;
        box-shadow: 0 12px 28px rgba(43, 22, 12, .07);
    }

    body:not(.admin-body) .collection-card.is-active span::after {
        width: 40px;
        margin-top: 7px;
    }
}

/* Product cards: final premium action alignment */
body:not(.admin-body) .premium-product-grid {
    align-items: stretch;
}

body:not(.admin-body) .premium-product-card {
    display: flex;
    flex-direction: column;
}

body:not(.admin-body) .premium-product-card .product-body {
    grid-template-rows: auto auto auto auto minmax(92px, auto);
    gap: 12px;
    padding: 22px 22px 24px;
}

body:not(.admin-body) .premium-product-card .product-separator {
    margin: 4px auto 6px;
}

body:not(.admin-body) .premium-product-card .product-body > p {
    max-width: 31ch;
    min-height: 0;
    font-size: .95rem;
    line-height: 1.55;
}

body:not(.admin-body) .premium-product-card .product-composition {
    min-height: 0;
    margin: 8px auto 0;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 250, 244, .74);
    box-shadow: inset 0 0 0 1px rgba(178, 118, 66, .08);
}

body:not(.admin-body) .premium-product-card .product-composition span {
    color: #8a5428;
    font-size: .7rem;
    letter-spacing: .12em;
}

body:not(.admin-body) .premium-product-card .product-composition p {
    margin-top: 8px;
    color: #604a3c;
    font-size: .84rem;
    line-height: 1.45;
}

body:not(.admin-body) .premium-product-card .product-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    width: 100%;
    margin-top: 8px;
    padding-top: 0;
}

body:not(.admin-body) .premium-product-card .product-actions strong {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 8px;
    min-height: 34px;
    line-height: 1;
    text-align: center;
}

body:not(.admin-body) .premium-product-card .product-button-row {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    max-width: 342px;
    margin-inline: auto;
}

body:not(.admin-body) .premium-product-card .product-button-row.single-action {
    max-width: 214px;
}

body:not(.admin-body) .premium-product-card .product-button-row .btn {
    display: inline-flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 0;
    min-height: 52px;
    padding: 0 16px;
    border-radius: 999px;
    white-space: nowrap;
}

body:not(.admin-body) .premium-product-card .product-button-row.has-whatsapp .buy-product-btn {
    flex: 1.08 1 0;
}

body:not(.admin-body) .premium-product-card .product-button-row.has-whatsapp .whatsapp-btn {
    flex: .92 1 0;
}

body:not(.admin-body) .premium-product-card .buy-product-btn {
    color: #fffaf3;
    background: linear-gradient(135deg, #351607 0%, #2a1208 62%, #4a210f 100%);
    border-color: rgba(232, 183, 90, .35);
    box-shadow: 0 14px 30px rgba(43, 22, 12, .18);
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .08em;
}

body:not(.admin-body) .premium-product-card .product-button-row .whatsapp-btn {
    min-height: 52px;
    color: #6c4527;
    background: rgba(255, 250, 244, .62);
    border: 1px solid rgba(178, 118, 66, .24);
    box-shadow: none;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .04em;
}

body:not(.admin-body) .premium-product-card .product-button-row .whatsapp-btn:hover {
    color: #2b160c;
    background: rgba(243, 230, 216, .92);
    border-color: rgba(178, 118, 66, .46);
    transform: translateY(-2px);
}

body:not(.admin-body) .premium-product-card .buy-product-btn:hover {
    transform: translateY(-2px);
    border-color: rgba(232, 183, 90, .62);
    background: linear-gradient(135deg, #4a210f 0%, #2a1208 100%);
    box-shadow: 0 18px 38px rgba(43, 22, 12, .24);
}

body:not(.admin-body) .collection-card.is-active,
body:not(.admin-body) .product-filter-tabs a.is-active {
    background: rgba(255, 250, 244, .94);
    border-color: rgba(201, 133, 34, .16);
    box-shadow: 0 14px 35px rgba(43, 22, 12, .07);
    color: #2b160c;
}

@media (min-width: 901px) {
    body:not(.admin-body) .premium-product-card .product-button-row.has-whatsapp {
        flex-wrap: nowrap;
    }
}

@media (max-width: 560px) {
    body:not(.admin-body) .premium-product-card .product-body {
        padding: 20px 18px 22px;
    }

    body:not(.admin-body) .premium-product-card .product-button-row.has-whatsapp {
        flex-direction: column;
        max-width: 100%;
    }

    body:not(.admin-body) .premium-product-card .product-button-row .btn {
        width: 100%;
    }
}

/* Checkout premium V1 */
body.checkout-template .top-note {
    grid-template-columns: 1fr;
    text-align: center;
}

body.checkout-template .top-note span:not(:first-child) {
    display: none;
}

body.checkout-template {
    background: linear-gradient(180deg, #fffaf4 0%, #fbf6ee 46%, #f8efe4 100%);
}

body:not(.admin-body) .checkout-page.narrow {
    width: min(1180px, 100%);
    padding: clamp(38px, 5vw, 68px) 0 clamp(54px, 7vw, 90px);
}

body:not(.admin-body) .checkout-hero {
    max-width: 780px;
    margin: 0 auto clamp(24px, 3vw, 36px);
    text-align: center;
}

body:not(.admin-body) .checkout-hero .eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    color: #b67533;
    letter-spacing: .18em;
}

body:not(.admin-body) .checkout-hero .eyebrow::before,
body:not(.admin-body) .checkout-hero .eyebrow::after {
    content: "";
    width: 52px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(185, 117, 51, .55), transparent);
}

body:not(.admin-body) .checkout-hero h1 {
    margin: 8px 0 8px;
    color: #2b1409;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(3rem, 6vw, 5.4rem);
    font-weight: 700;
    line-height: .9;
}

body:not(.admin-body) .checkout-hero p:last-child {
    max-width: 690px;
    margin: 0 auto;
    color: #7a6658;
    font-size: 1rem;
    line-height: 1.65;
}

body:not(.admin-body) .checkout-premium-form.form-panel {
    display: block;
    padding: 0;
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
}

body:not(.admin-body) .checkout-premium-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(330px, .95fr);
    gap: clamp(20px, 3vw, 32px);
    align-items: start;
}

body:not(.admin-body) .checkout-main-column,
body:not(.admin-body) .checkout-side-column {
    display: grid;
    gap: 14px;
    min-width: 0;
}

body:not(.admin-body) .checkout-side-column {
    position: sticky;
    top: 112px;
}

body:not(.admin-body) .checkout-card,
body:not(.admin-body) .checkout-summary-card,
body:not(.admin-body) .checkout-trust-card {
    background:
        radial-gradient(circle at 100% 0%, rgba(201, 148, 74, .08), transparent 16rem),
        rgba(255, 250, 243, .96);
    border: 1px solid rgba(190, 145, 85, .22);
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(54, 29, 14, .07);
}

body:not(.admin-body) .checkout-card {
    padding: clamp(18px, 2vw, 24px);
}

body:not(.admin-body) .checkout-card-head,
body:not(.admin-body) .checkout-summary-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
}

body:not(.admin-body) .checkout-card-head h2,
body:not(.admin-body) .checkout-summary-head h2 {
    margin: 0;
    color: #2b1409;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.75rem, 2.3vw, 2.3rem);
    line-height: 1;
}

body:not(.admin-body) .checkout-card-head p {
    margin: 5px 0 0;
    color: #7a6658;
    font-size: .93rem;
    line-height: 1.45;
}

body:not(.admin-body) .checkout-section-icon {
    display: grid;
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    place-items: center;
    color: #c98522;
    border: 1px solid rgba(201, 133, 34, .35);
    border-radius: 50%;
    background: rgba(255, 250, 243, .82);
    box-shadow: 0 10px 24px rgba(54, 29, 14, .06);
    font-size: 1.05rem;
    line-height: 1;
}

body:not(.admin-body) .checkout-form-grid {
    gap: 14px 18px;
}

body:not(.admin-body) .checkout-form-grid label {
    color: #2b1409;
    font-weight: 850;
    letter-spacing: 0;
    text-transform: none;
}

body:not(.admin-body) .checkout-form-grid label sup {
    color: #b67533;
    font-size: .86em;
}

body:not(.admin-body) .checkout-form-grid label span {
    color: #9b8171;
    font-size: .86em;
    font-weight: 650;
}

body:not(.admin-body) .checkout-form-grid input,
body:not(.admin-body) .checkout-form-grid select {
    min-height: 48px;
    color: #2b1409;
    background: #fffdf8;
    border: 1px solid rgba(190, 145, 85, .28);
    border-radius: 13px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}

body:not(.admin-body) .checkout-form-grid input::placeholder {
    color: rgba(122, 102, 88, .62);
}

body:not(.admin-body) .checkout-form-grid input:focus,
body:not(.admin-body) .checkout-form-grid select:focus {
    border-color: #c9944a;
    box-shadow: 0 0 0 3px rgba(201, 148, 74, .14);
    outline: none;
}

body:not(.admin-body) .checkout-shipping-section {
    width: 100%;
    padding-top: clamp(18px, 2vw, 24px);
}

body:not(.admin-body) .checkout-shipping-section .checkout-card-head {
    margin-bottom: 10px;
}

body:not(.admin-body) .shipping-prep-note {
    margin: 0 0 16px;
    color: #6e4321;
    background: rgba(255, 253, 248, .78);
    border-color: rgba(190, 145, 85, .26);
    box-shadow: 0 10px 24px rgba(54, 29, 14, .045);
}

body:not(.admin-body) .shipping-options-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

body:not(.admin-body) .shipping-option-card {
    grid-template-columns: 20px 42px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 112px;
    padding: 16px;
    background: rgba(255, 253, 248, .92);
    border-color: rgba(190, 145, 85, .22);
    border-radius: 18px;
    box-shadow: 0 12px 28px rgba(54, 29, 14, .055);
    transform: none;
}

body:not(.admin-body) .shipping-option-card:hover,
body:not(.admin-body) .shipping-option-card.is-selected {
    border-color: rgba(201, 148, 74, .72);
    background: #fff7ed;
    box-shadow: 0 18px 42px rgba(54, 29, 14, .08);
    transform: translateY(-1px);
}

body:not(.admin-body) .shipping-radio {
    width: 16px;
    height: 16px;
    border: 1px solid rgba(43, 20, 9, .42);
    border-radius: 50%;
    background: #fffdf8;
    box-shadow: inset 0 0 0 4px #fffdf8;
}

body:not(.admin-body) .shipping-option-card.is-selected .shipping-radio {
    background: #c9944a;
    border-color: #c9944a;
}

body:not(.admin-body) .shipping-option-icon {
    width: 38px;
    height: 38px;
    color: #b67533;
    background: rgba(201, 148, 74, .09);
    border-color: rgba(201, 148, 74, .26);
    font-size: 1rem;
}

body:not(.admin-body) .shipping-option-main strong {
    color: #2b1409;
    font-family: Manrope, system-ui, sans-serif;
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.25;
}

body:not(.admin-body) .shipping-option-main small,
body:not(.admin-body) .shipping-option-main em {
    color: #7a6658;
    font-size: .82rem;
}

body:not(.admin-body) .shipping-option-card b {
    align-self: end;
    color: #2b1409;
    font-size: 1rem;
    font-weight: 950;
}

body:not(.admin-body) .shipping-option-card i {
    top: 10px;
    right: 10px;
    color: #8a5428;
    background: rgba(201, 148, 74, .13);
    border: 1px solid rgba(201, 148, 74, .2);
    font-size: .62rem;
}

body:not(.admin-body) .checkout-payment-card {
    padding-bottom: 16px;
}

body:not(.admin-body) .checkout-payment-head {
    align-items: center;
    margin-bottom: 16px;
}

body:not(.admin-body) .payment-logos {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
    margin-left: auto;
}

body:not(.admin-body) .payment-logos span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    color: #2b1409;
    background: #fff;
    border: 1px solid rgba(190, 145, 85, .22);
    border-radius: 8px;
    font-size: .72rem;
    font-weight: 900;
}

body:not(.admin-body) .checkout-payment-actions {
    display: grid;
    gap: 10px;
    margin-top: 0;
}

body:not(.admin-body) .checkout-final-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    min-height: 56px;
    color: #fffaf3;
    background: linear-gradient(135deg, #2b1409, #3d1d0e);
    border: 1px solid rgba(255, 250, 243, .14);
    border-radius: 999px;
    box-shadow: 0 18px 38px rgba(43, 20, 9, .18);
    font-weight: 900;
    letter-spacing: .02em;
}

body:not(.admin-body) .checkout-final-button.secondary {
    color: #2b1409;
    background: rgba(255, 253, 248, .82);
    border-color: rgba(190, 145, 85, .28);
    box-shadow: none;
}

body:not(.admin-body) .checkout-final-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 22px 44px rgba(43, 20, 9, .24);
}

body:not(.admin-body) .checkout-payment-note {
    border-radius: 16px;
    color: #7a6658;
    background: rgba(255, 253, 248, .82);
    border-color: rgba(190, 145, 85, .22);
    font-weight: 750;
    line-height: 1.5;
}

body:not(.admin-body) .checkout-summary-card {
    display: grid;
    gap: 16px;
    margin: 0;
    padding: clamp(18px, 2vw, 24px);
}

body:not(.admin-body) .checkout-summary-card div,
body:not(.admin-body) .checkout-summary-card article {
    min-width: 0;
}

body:not(.admin-body) .checkout-summary-head {
    align-items: center;
    margin: 0;
}

body:not(.admin-body) .checkout-summary-products {
    display: grid;
    gap: 14px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(190, 145, 85, .18);
}

body:not(.admin-body) .checkout-summary-product {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
}

body:not(.admin-body) .checkout-summary-product img {
    width: 88px;
    height: 88px;
    object-fit: cover;
    border-radius: 13px;
    border: 1px solid rgba(190, 145, 85, .18);
}

body:not(.admin-body) .checkout-summary-product div {
    display: grid;
    gap: 4px;
}

body:not(.admin-body) .checkout-summary-product div strong {
    color: #2b1409;
    font-size: .94rem;
    line-height: 1.35;
}

body:not(.admin-body) .checkout-summary-product span,
body:not(.admin-body) .checkout-summary-product small {
    color: #7a6658;
    font-size: .86rem;
    line-height: 1.35;
}

body:not(.admin-body) .checkout-summary-product b {
    color: #2b1409;
    font-size: .95rem;
    white-space: nowrap;
}

body:not(.admin-body) .checkout-summary-lines {
    display: grid;
    gap: 11px;
}

body:not(.admin-body) .checkout-summary-lines div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}

body:not(.admin-body) .checkout-summary-lines span,
body:not(.admin-body) .checkout-tax-note,
body:not(.admin-body) .checkout-delivery-meta span {
    color: #7a6658;
}

body:not(.admin-body) .checkout-summary-lines strong {
    color: #2b1409;
    white-space: nowrap;
}

body:not(.admin-body) .checkout-summary-lines .is-total {
    margin-top: 4px;
    padding: 18px 0 6px;
    border-top: 1px solid rgba(190, 145, 85, .2);
}

body:not(.admin-body) .checkout-summary-lines .is-total span {
    color: #2b1409;
    font-weight: 850;
}

body:not(.admin-body) .checkout-summary-lines .is-total strong {
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    line-height: 1;
}

body:not(.admin-body) .checkout-tax-note {
    margin: -8px 0 0;
    font-size: .84rem;
}

body:not(.admin-body) .checkout-delivery-meta {
    display: grid;
    gap: 11px;
    padding-top: 14px;
    border-top: 1px solid rgba(190, 145, 85, .16);
}

body:not(.admin-body) .checkout-trust-card {
    display: grid;
    gap: 18px;
    padding: clamp(18px, 2vw, 24px);
}

body:not(.admin-body) .checkout-trust-card article,
body:not(.admin-body) .checkout-thank-card {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

body:not(.admin-body) .checkout-trust-card article > span,
body:not(.admin-body) .checkout-thank-card > span {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    color: #c98522;
    font-size: 1.15rem;
}

body:not(.admin-body) .checkout-trust-card strong,
body:not(.admin-body) .checkout-thank-card strong {
    display: block;
    color: #2b1409;
    font-size: .95rem;
}

body:not(.admin-body) .checkout-trust-card small,
body:not(.admin-body) .checkout-thank-card small {
    display: block;
    margin-top: 3px;
    color: #7a6658;
    line-height: 1.35;
}

body:not(.admin-body) .checkout-thank-card {
    padding: 16px;
    background: #fff3e4;
    border: 1px solid rgba(190, 145, 85, .22);
    border-radius: 16px;
}

@media (max-width: 1040px) {
    body:not(.admin-body) .checkout-premium-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .checkout-side-column {
        position: static;
    }
}

@media (max-width: 760px) {
    body:not(.admin-body) .checkout-page.narrow {
        padding-top: 30px;
    }

    body:not(.admin-body) .checkout-hero .eyebrow::before,
    body:not(.admin-body) .checkout-hero .eyebrow::after {
        width: 28px;
    }

    body:not(.admin-body) .checkout-form-grid,
    body:not(.admin-body) .shipping-options-grid {
        grid-template-columns: 1fr;
    }

    body:not(.admin-body) .checkout-card-head,
    body:not(.admin-body) .checkout-payment-head {
        align-items: flex-start;
    }

    body:not(.admin-body) .checkout-payment-head {
        display: grid;
        grid-template-columns: 34px minmax(0, 1fr);
    }

    body:not(.admin-body) .payment-logos {
        grid-column: 1 / -1;
        justify-content: flex-start;
        margin-left: 0;
    }

    body:not(.admin-body) .shipping-option-card {
        grid-template-columns: 20px 38px minmax(0, 1fr);
    }

    body:not(.admin-body) .shipping-option-card b {
        grid-column: 3;
        justify-self: start;
    }

    body:not(.admin-body) .checkout-summary-product {
        grid-template-columns: 72px minmax(0, 1fr);
    }

    body:not(.admin-body) .checkout-summary-product img {
        width: 72px;
        height: 72px;
    }

    body:not(.admin-body) .checkout-summary-product b {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 430px) {
    body:not(.admin-body) .checkout-card,
    body:not(.admin-body) .checkout-summary-card,
    body:not(.admin-body) .checkout-trust-card {
        border-radius: 20px;
    }

    body:not(.admin-body) .checkout-card-head {
        gap: 10px;
    }

    body:not(.admin-body) .checkout-section-icon {
        width: 30px;
        height: 30px;
    }
}

/* Home premium stability pass */
body.home-template {
    overflow-x: hidden;
}

body.home-template .shop-hero.home-hero {
    grid-template-columns: minmax(300px, .82fr) minmax(460px, 1.18fr);
    align-items: center;
    min-height: clamp(520px, 43vw, 650px);
    padding-block: clamp(48px, 5vw, 76px);
}

body.home-template .home-hero .hero-copy {
    max-width: 510px;
}

body.home-template .home-hero .hero-copy h1 {
    max-width: 520px;
}

body.home-template .home-hero-visual .hero-box {
    height: clamp(420px, 38vw, 560px);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(65, 42, 26, .1);
}

body.home-template .home-trust-strip {
    margin-bottom: clamp(48px, 6vw, 78px);
}

body.home-template .section-heading {
    position: relative;
}

body.home-template .collection-section .section-heading {
    display: grid;
    justify-items: center;
    padding-inline: min(18vw, 210px);
}

body.home-template .collection-section .section-heading .quiet-link {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 2;
    transform: translateY(-50%);
}

body.home-template .collection-grid {
    align-items: start;
}

body.home-template .collection-card {
    min-width: 0;
}

body.home-template .collection-card img {
    aspect-ratio: 1.12 / 1;
}

body.home-template .collection-card span {
    line-height: 1.12;
}

body.home-template .special-request {
    max-width: 1180px;
}

body.home-template .featured-products-section {
    width: min(1220px, calc(100% - 64px));
}

body.home-template .premium-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
}

body.home-template .premium-product-card {
    height: auto;
}

body.home-template .premium-product-card .product-image {
    aspect-ratio: 1.12 / 1;
}

body.home-template .premium-product-card .product-body {
    display: grid;
    flex: 0 0 auto;
    grid-template-rows: auto auto auto auto auto;
    align-content: start;
    min-height: 0;
    padding: 20px 22px 22px;
    gap: 10px;
}

body.home-template .premium-product-card .product-body h3 {
    min-height: 0;
    margin: 0 auto;
    max-width: 12ch;
    font-size: clamp(1.72rem, 2.15vw, 2.24rem);
    line-height: 1.02;
}

body.home-template .premium-product-card .product-body > p {
    display: -webkit-box;
    min-height: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

body.home-template .premium-product-card .product-composition {
    align-self: start;
    margin-top: 4px;
}

body.home-template .premium-product-card .product-composition p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

body.home-template .premium-product-card .product-actions {
    align-self: start;
    gap: 9px;
    margin-top: 2px;
}

body.home-template .premium-product-card .product-button-row.single-action {
    max-width: 182px;
}

body.home-template .premium-product-card .buy-product-btn {
    min-height: 50px;
    padding-inline: 22px;
    background: linear-gradient(135deg, #2b1409 0%, #3a1a0b 55%, #5a2c13 100%);
}

body.home-template .premium-product-card .product-button-row .whatsapp-btn {
    min-height: 50px;
}

@media (max-width: 1180px) {
    body.home-template .shop-hero.home-hero {
        grid-template-columns: minmax(280px, .9fr) minmax(390px, 1.1fr);
    }
}

@media (max-width: 980px) {
    body.home-template .premium-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.home-template .collection-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    body.home-template .shop-hero.home-hero {
        grid-template-columns: 1fr;
        min-height: 0;
        padding: 38px 18px 30px;
    }

    body.home-template .home-hero-visual .hero-box {
        height: auto;
        border-radius: 14px;
    }

    body.home-template .home-trust-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.home-template .section-heading .quiet-link {
        position: static;
        margin-top: 12px;
        transform: none;
    }

    body.home-template .collection-section .section-heading {
        padding-inline: 0;
    }

    body.home-template .featured-products-section {
        width: min(100%, calc(100vw - 28px));
    }

    body.home-template .premium-product-grid {
        grid-template-columns: 1fr;
    }

    body.home-template .premium-product-card .product-body h3 {
        max-width: 13ch;
        font-size: clamp(1.72rem, 8vw, 2.18rem);
    }

    body.home-template .special-request {
        grid-template-columns: 1fr;
        border-radius: 24px;
    }
}

@media (max-width: 560px) {
    body.home-template .collection-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    body.home-template .collection-card,
    body.home-template .collection-card.is-active {
        padding: 8px;
    }

    body.home-template .collection-card img {
        border-radius: 50%;
    }

    body.home-template .premium-product-card .product-image {
        aspect-ratio: 1.08 / 1;
    }

    body.home-template .premium-product-card .product-button-row {
        max-width: 100%;
    }

    body.home-template .premium-product-card .product-button-row.has-whatsapp {
        flex-direction: column;
    }
}

/* Admin step 2: reliable routes and cleaner premium modules */
@media (min-width: 1121px) {
    .admin-topbar-burger {
        display: none !important;
    }

    .admin-topbar-title {
        gap: 0;
    }
}

.admin-heading-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.admin-heading-actions .btn,
.admin-heading-actions .quiet-link {
    white-space: nowrap;
}

.admin-module-grid {
    align-items: stretch;
}

.admin-empty-card {
    display: grid;
    align-content: start;
    gap: 12px;
}

.admin-empty-card .quiet-link {
    justify-self: start;
    min-height: 38px;
    padding-inline: 14px;
}

.admin-empty-table-cell {
    padding: 26px !important;
    text-align: center;
    white-space: normal !important;
}

.admin-empty-table-cell strong,
.admin-empty-table-cell span,
.admin-empty-table-cell a {
    display: block;
    margin-inline: auto;
}

.admin-empty-table-cell strong {
    color: var(--admin-text);
    font-size: 1rem;
}

.admin-empty-table-cell span {
    max-width: 460px;
    margin-top: 7px;
    color: var(--admin-muted);
    line-height: 1.5;
}

.admin-empty-table-cell .quiet-link {
    width: fit-content;
    margin-top: 14px;
}

.admin-placeholder-shell {
    display: grid;
    gap: 18px;
}

.admin-placeholder-card {
    display: grid;
    gap: 20px;
    padding: clamp(20px, 3vw, 28px);
}

.admin-placeholder-badge {
    width: fit-content;
    min-height: 32px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    color: #20160c;
    background: var(--admin-gold-grad, linear-gradient(135deg, #f4d27a, #c99635));
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.admin-placeholder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.admin-placeholder-grid div {
    min-height: 104px;
    padding: 16px;
    background: rgba(255, 248, 239, .045);
    border: 1px solid rgba(231, 189, 101, .12);
    border-radius: 12px;
}

.admin-placeholder-grid small {
    display: block;
    color: var(--admin-gold);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.admin-placeholder-grid strong {
    display: block;
    margin-top: 10px;
    color: var(--admin-text);
    font-size: 1.05rem;
    line-height: 1.3;
}

.admin-placeholder-form {
    padding: clamp(20px, 3vw, 28px);
}

.admin-placeholder-form .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-placeholder-form .full {
    grid-column: 1 / -1;
}

.admin-placeholder-form input:disabled,
.admin-placeholder-form textarea:disabled {
    opacity: .78;
    cursor: not-allowed;
}

.admin-placeholder-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
}

.admin-placeholder-actions .btn:disabled {
    opacity: .62;
    cursor: not-allowed;
}

.admin-placeholder-note {
    min-height: 0;
}

@media (max-width: 1120px) {
    .admin-sidebar,
    .admin-topbar {
        display: none !important;
    }

    .admin-shell {
        display: block;
        min-height: 100vh;
    }

    .admin-main {
        padding-top: 94px;
    }

    .admin-mobile-header {
        display: grid;
    }

    .admin-bottom-nav {
        display: grid;
    }
}

@media (max-width: 760px) {
    .admin-heading-actions {
        justify-content: flex-start;
        width: 100%;
    }

    .admin-heading-actions .btn,
    .admin-heading-actions .quiet-link {
        flex: 1 1 180px;
        justify-content: center;
        text-align: center;
    }

    .admin-placeholder-grid,
    .admin-placeholder-form .form-grid {
        grid-template-columns: 1fr;
    }
}

/* Step 3: public boutique alignment and product card tightening */
body.home-template .collection-section .section-heading {
    display: grid !important;
    grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr);
    align-items: end;
    justify-items: center;
    gap: 18px;
    padding-inline: 0 !important;
}

body.home-template .collection-section .section-heading > div {
    grid-column: 2;
    text-align: center;
}

body.home-template .collection-section .section-heading .quiet-link {
    position: static !important;
    grid-column: 3;
    justify-self: start;
    align-self: center;
    margin: 0 0 12px !important;
    transform: none !important;
    white-space: nowrap;
}

body.home-template .premium-product-grid {
    align-items: start !important;
    gap: clamp(20px, 2.6vw, 30px);
}

body.home-template .premium-product-card {
    height: auto !important;
    min-height: 0 !important;
    align-self: start;
}

body.home-template .premium-product-card .product-body {
    display: flex !important;
    flex-direction: column;
    min-height: 0 !important;
    padding: 20px 22px 24px !important;
    gap: 10px;
}

body.home-template .premium-product-card .product-body h3 {
    max-width: 11.5ch;
    margin-bottom: 0;
    font-size: clamp(1.62rem, 2vw, 2.08rem);
}

body.home-template .premium-product-card .product-separator {
    margin: 2px auto 4px !important;
}

body.home-template .premium-product-card .product-body > p {
    min-height: 0 !important;
    margin: 0 auto;
    line-height: 1.48;
}

body.home-template .premium-product-card .product-composition {
    min-height: 0 !important;
    margin-top: 6px !important;
    padding: 13px 15px !important;
}

body.home-template .premium-product-card .product-actions {
    margin-top: 10px !important;
    gap: 10px !important;
}

body.home-template .premium-product-card .product-actions strong {
    min-height: 0;
    font-size: clamp(1.38rem, 1.8vw, 1.72rem);
}

body.home-template .premium-product-card .product-button-row {
    max-width: 330px;
}

body.home-template .premium-product-card .product-button-row.single-action {
    max-width: 190px !important;
}

body.home-template .premium-product-card .buy-product-btn {
    min-height: 50px;
    padding-inline: 26px;
    box-shadow: 0 16px 34px rgba(43, 22, 12, .2);
}

body.home-template .premium-product-card .buy-product-btn::after {
    content: "";
    width: 18px;
    height: 1px;
    margin-left: 2px;
    background: rgba(255, 250, 243, .72);
}

body.home-template .premium-product-card .product-button-row.has-whatsapp .buy-product-btn::after {
    display: none;
}

body.home-template .premium-product-card .product-button-row .whatsapp-btn {
    min-height: 50px;
}

/* Step 4: checkout delivery cards stability */
body.checkout-template .checkout-page.narrow {
    padding-inline: clamp(16px, 3vw, 28px);
}

body.checkout-template .checkout-premium-form {
    width: 100%;
}

body.checkout-template .shipping-options-grid {
    align-items: stretch;
}

body.checkout-template .shipping-option-card {
    grid-template-columns: 20px 38px minmax(0, 1fr);
    grid-template-areas:
        "radio icon content"
        "radio icon price";
    align-content: start;
    min-width: 0;
    min-height: 136px;
    overflow: hidden;
}

body.checkout-template .shipping-option-card .shipping-radio {
    grid-area: radio;
    align-self: start;
    margin-top: 2px;
}

body.checkout-template .shipping-option-card .shipping-option-icon {
    grid-area: icon;
    align-self: start;
}

body.checkout-template .shipping-option-card .shipping-option-main {
    grid-area: content;
    min-width: 0;
    padding-right: 74px;
}

body.checkout-template .shipping-option-card .shipping-option-main strong,
body.checkout-template .shipping-option-card .shipping-option-main small,
body.checkout-template .shipping-option-card .shipping-option-main em {
    overflow-wrap: anywhere;
}

body.checkout-template .shipping-option-card b {
    grid-area: price;
    justify-self: start;
    margin-top: 4px;
}

body.checkout-template .shipping-option-card i {
    max-width: 86px;
    text-align: center;
}

body.checkout-template .checkout-payment-note {
    border-radius: 18px;
    text-align: left;
}

body.checkout-template .checkout-summary-product small {
    max-height: 4.6em;
    overflow: hidden;
}

@media (max-width: 1180px) {
    body.checkout-template .shipping-option-card .shipping-option-main {
        padding-right: 0;
    }

    body.checkout-template .shipping-option-card i {
        position: static;
        grid-column: 3;
        width: fit-content;
        margin-top: 6px;
    }
}

@media (min-width: 901px) {
    body.home-template .premium-product-card .product-button-row.has-whatsapp {
        flex-wrap: nowrap !important;
    }
}

@media (max-width: 860px) {
    body.home-template .collection-section .section-heading {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    body.home-template .collection-section .section-heading > div,
    body.home-template .collection-section .section-heading .quiet-link {
        grid-column: 1;
    }

    body.home-template .collection-section .section-heading .quiet-link {
        justify-self: center;
        margin: 8px 0 0 !important;
    }
}

@media (max-width: 560px) {
    body.home-template .premium-product-card .product-button-row.has-whatsapp {
        flex-direction: column !important;
    }
}

/* Order confirmation premium */
body.checkout-success-template {
    background:
        radial-gradient(circle at 50% 10%, rgba(225, 197, 141, .2), transparent 28rem),
        linear-gradient(180deg, #fffaf4 0%, #f8f1e8 58%, #f4eadf 100%);
}

.checkout-success-page {
    --success-cream: #f8f1e8;
    --success-ivory: #fffaf3;
    --success-brown: #2a1208;
    --success-brown-soft: #4a2a1a;
    --success-gold: #c99045;
    --success-gold-light: #e1c58d;
    --success-border: rgba(74, 42, 26, .15);
    width: min(1160px, calc(100% - 36px));
    margin: 0 auto;
    padding: clamp(34px, 5vw, 70px) 0 clamp(38px, 5vw, 72px);
    color: var(--success-brown);
}

.success-card {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 18px;
    padding: clamp(30px, 5vw, 56px) clamp(18px, 4vw, 34px) clamp(26px, 4vw, 40px);
    text-align: center;
    background:
        radial-gradient(circle at 50% 0%, rgba(225, 197, 141, .18), transparent 18rem),
        rgba(255, 250, 243, .95);
    border: 1px solid var(--success-border);
    border-radius: 26px;
    box-shadow: 0 28px 80px rgba(54, 29, 14, .1);
}

.success-check {
    display: grid;
    width: 62px;
    height: 62px;
    place-items: center;
    color: var(--success-gold);
    background: rgba(255, 253, 248, .9);
    border: 1px solid rgba(201, 144, 69, .3);
    border-radius: 50%;
    box-shadow: 0 14px 34px rgba(201, 144, 69, .2);
}

.success-check svg,
.success-info-grid svg,
.success-step-icon svg,
.success-trust-strip svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.success-card .eyebrow {
    margin: 0;
    color: var(--success-gold);
    letter-spacing: .18em;
}

.success-card h1 {
    max-width: 760px;
    margin: -2px auto 0;
    color: var(--success-brown);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 700;
    line-height: .94;
}

.success-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(180px, 60%);
    height: 18px;
}

.success-divider::before,
.success-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(201, 144, 69, .65));
}

.success-divider::after {
    background: linear-gradient(90deg, rgba(201, 144, 69, .65), transparent);
}

.success-divider span {
    width: 7px;
    height: 7px;
    margin-inline: 12px;
    border: 1px solid var(--success-gold);
    transform: rotate(45deg);
}

.success-intro {
    max-width: 680px;
    margin: 0 auto 12px;
    color: var(--success-brown-soft);
    font-size: 1rem;
    line-height: 1.7;
}

.success-intro strong {
    color: var(--success-gold);
    font-weight: 900;
}

.success-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    margin-top: 12px;
}

.success-info-grid article {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px 12px;
    align-items: center;
    min-height: 92px;
    padding: 16px;
    text-align: left;
    background: rgba(255, 253, 248, .76);
    border: 1px solid rgba(74, 42, 26, .12);
    border-radius: 14px;
}

.success-info-grid svg {
    grid-row: span 2;
    color: var(--success-gold);
}

.success-info-grid span {
    color: var(--success-brown-soft);
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.success-info-grid strong {
    overflow-wrap: anywhere;
    color: var(--success-brown);
    font-size: .9rem;
    line-height: 1.3;
}

.success-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    gap: 14px;
    width: min(660px, 100%);
    margin-top: 8px;
}

.success-actions .btn {
    min-height: 56px;
    border-radius: 10px;
    letter-spacing: .06em;
}

.success-primary {
    color: #fffaf3;
    background: linear-gradient(135deg, #2a1208, #4a210f);
    border-color: rgba(255, 250, 243, .16);
}

.success-secondary {
    color: #8a5428;
    background: rgba(255, 250, 243, .42);
    border-color: rgba(201, 144, 69, .58);
}

.success-primary:hover,
.success-secondary:hover {
    transform: translateY(-2px);
}

.success-steps {
    margin-top: clamp(34px, 5vw, 54px);
}

.success-section-title {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 22px;
    margin-bottom: 28px;
}

.success-section-title span {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(201, 144, 69, .58), transparent);
}

.success-section-title h2 {
    margin: 0;
    color: var(--success-brown);
    font-size: .95rem;
    font-family: Manrope, system-ui, sans-serif;
    font-weight: 950;
    letter-spacing: .16em;
    text-transform: uppercase;
    text-align: center;
}

.success-steps-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.success-steps-grid::before {
    content: "";
    position: absolute;
    top: 34px;
    left: 10%;
    right: 10%;
    border-top: 1px dashed rgba(201, 144, 69, .36);
}

.success-steps-grid article {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 10px;
    text-align: center;
}

.success-steps-grid b {
    position: absolute;
    top: 0;
    left: calc(50% - 58px);
    z-index: 1;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    color: #fffaf3;
    background: linear-gradient(135deg, var(--success-gold-light), var(--success-gold));
    border-radius: 50%;
    font-size: .78rem;
}

.success-step-icon {
    position: relative;
    z-index: 1;
    display: grid;
    width: 66px;
    height: 66px;
    place-items: center;
    color: var(--success-gold);
    background: rgba(255, 250, 243, .92);
    border: 1px solid rgba(201, 144, 69, .2);
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(54, 29, 14, .08);
}

.success-steps-grid h3 {
    margin: 4px 0 0;
    color: var(--success-brown);
    font-size: .78rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.success-steps-grid p {
    max-width: 185px;
    margin: 0;
    color: var(--success-brown-soft);
    font-size: .86rem;
    line-height: 1.45;
}

.success-trust-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin-top: clamp(34px, 5vw, 54px);
    overflow: hidden;
    background: rgba(255, 250, 243, .92);
    border: 1px solid rgba(74, 42, 26, .12);
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(54, 29, 14, .08);
}

.success-trust-strip article {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 18px;
}

.success-trust-strip article + article {
    border-left: 1px solid rgba(74, 42, 26, .1);
}

.success-trust-strip span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    color: var(--success-gold);
    border: 1px solid rgba(201, 144, 69, .22);
    border-radius: 50%;
}

.success-trust-strip strong {
    display: block;
    color: var(--success-brown);
    font-size: .74rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.success-trust-strip p {
    margin: 4px 0 0;
    color: var(--success-brown-soft);
    font-size: .82rem;
    line-height: 1.35;
}

@media (max-width: 980px) {
    .success-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .success-steps-grid,
    .success-trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .success-steps-grid::before {
        display: none;
    }

    .success-trust-strip article:nth-child(odd) {
        border-left: 0;
    }

    .success-trust-strip article:nth-child(n + 3) {
        border-top: 1px solid rgba(74, 42, 26, .1);
    }
}

@media (max-width: 620px) {
    .checkout-success-page {
        width: min(100%, calc(100vw - 28px));
        padding-top: 26px;
    }

    .success-card {
        border-radius: 22px;
    }

    .success-card h1 {
        font-size: clamp(2.35rem, 13vw, 3.3rem);
    }

    .success-info-grid,
    .success-actions,
    .success-steps-grid,
    .success-trust-strip {
        grid-template-columns: 1fr;
    }

    .success-actions .btn {
        width: 100%;
    }

    .success-section-title {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .success-section-title span {
        width: 100%;
    }

    .success-steps-grid b {
        left: calc(50% - 48px);
    }

    .success-trust-strip article + article,
    .success-trust-strip article:nth-child(n + 3) {
        border-left: 0;
        border-top: 1px solid rgba(74, 42, 26, .1);
    }
}

/* CMS front header: global sticky premium header without the old top notice. */
body:not(.admin-body) .top-note {
    display: none !important;
}

body:not(.admin-body) .site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 250, 243, .88);
    border-bottom: 1px solid rgba(43, 23, 9, .07);
    box-shadow: none;
    backdrop-filter: saturate(140%) blur(14px);
    -webkit-backdrop-filter: saturate(140%) blur(14px);
    transition:
        background-color .22s ease,
        box-shadow .22s ease,
        border-color .22s ease,
        min-height .22s ease,
        padding .22s ease;
}

body:not(.admin-body) .site-header.header-scrolled {
    min-height: 72px;
    background: rgba(255, 250, 243, .98);
    border-bottom-color: rgba(43, 23, 9, .13);
    box-shadow: 0 14px 34px rgba(43, 23, 9, .08);
}

body:not(.admin-body) .site-header.header-scrolled .brand-text-only {
    min-height: 48px;
}

body:not(.admin-body) .site-header.header-scrolled .brand-text-only span {
    font-size: 1.48rem;
}

body:not(.admin-body) .site-header.header-scrolled .icon-link,
body:not(.admin-body) .site-header.header-scrolled .menu-toggle {
    width: 42px;
    height: 42px;
}

@media (min-width: 1081px) {
    body:not(.admin-body) .site-header.header-scrolled {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

@media (max-width: 1080px) {
    body:not(.admin-body) .site-header {
        min-height: 68px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    body:not(.admin-body) .site-header.header-scrolled {
        min-height: 62px;
        padding-top: 6px;
        padding-bottom: 6px;
    }
}

@media (max-width: 1040px) {
    .box-builder-layout {
        grid-template-columns: 1fr;
    }

    .box-builder-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .box-builder-summary {
        position: static;
    }
}

@media (max-width: 760px) {
    .box-builder-hero,
    .box-builder-layout {
        width: min(100% - 28px, 620px);
    }

    .box-builder-hero {
        margin-top: 28px;
        padding: 24px;
        display: grid;
        align-items: start;
    }

    .box-builder-hero h1 {
        font-size: clamp(2.6rem, 15vw, 4.1rem);
    }

    .box-builder-hero .btn {
        width: 100%;
    }

    .box-builder-products {
        grid-template-columns: 1fr;
    }

    .box-builder-card:hover,
    .box-builder-card.is-selected,
    .box-builder-card:has(input:checked) {
        transform: none;
    }

    .box-builder-card-media {
        min-height: 220px;
    }

    .box-builder-summary {
        padding: 20px;
    }
}

/* Final KDS admin overrides: keep grouped menu and desktop burger behavior after legacy blocks. */
.admin-body .admin-menu-grouped {
    display: grid;
    gap: 10px;
}

.admin-body .admin-menu-section {
    border: 1px solid rgba(216, 182, 90, .14);
    border-radius: 18px;
    background: rgba(255, 255, 255, .025);
    overflow: hidden;
}

.admin-body .admin-menu-section summary {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 14px;
    color: #f8f4e8;
    cursor: pointer;
    font-weight: 850;
    list-style: none;
}

.admin-body .admin-menu-section summary::-webkit-details-marker {
    display: none;
}

.admin-body .admin-menu-section summary::after {
    content: "+";
    margin-left: auto;
    color: #d8b65a;
    font-weight: 900;
}

.admin-body .admin-menu-section[open] summary::after {
    content: "-";
}

.admin-body .admin-menu-section summary i {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(216, 182, 90, .24);
    border-radius: 10px;
    color: #e6c878;
    font-style: normal;
}

.admin-body .admin-submenu {
    display: grid;
    gap: 6px;
    padding: 0 8px 10px;
}

.admin-body .admin-menu-section .admin-menu-link {
    min-height: 38px;
    padding: 0 10px;
    border-radius: 12px;
    font-size: .88rem;
    background: transparent;
}

.admin-body .admin-menu-section .admin-menu-link.is-active {
    background: rgba(216, 182, 90, .14);
    border-color: rgba(216, 182, 90, .36);
    box-shadow: inset 3px 0 0 #d8b65a;
}

.admin-body .mini-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 14px;
    border: 1px solid rgba(216, 182, 90, .38);
    border-radius: 999px;
    color: #e6c878;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
}

.admin-body .admin-topbar-burger {
    display: none;
}

@media (max-width: 1180px) {
    .admin-body .admin-topbar-burger {
        display: inline-flex;
    }
}

/* Admin stabilization pass: simpler, lighter workspace, less decorative weight. */
.admin-body {
    background: #f4efe7;
    color: #24170f;
}

.admin-body .admin-shell,
.admin-body .admin-main {
    background:
        radial-gradient(circle at 70% 0%, rgba(216, 182, 90, .10), transparent 34%),
        linear-gradient(180deg, #fbf7f0 0%, #f3ece2 100%);
    color: #24170f;
}

.admin-body .admin-sidebar,
.admin-body .admin-drawer {
    background: linear-gradient(180deg, #081611 0%, #11251c 100%);
    border-right: 1px solid rgba(216, 182, 90, .22);
}

.admin-body .admin-brand {
    min-height: auto;
}

.admin-body .admin-store-link,
.admin-body .admin-topbar-new,
.admin-body .btn {
    background: linear-gradient(135deg, #ead093, #c99b47);
    color: #20130a;
    box-shadow: none;
}

.admin-body .admin-topbar {
    min-height: 68px;
    background: rgba(255, 250, 243, .86);
    border: 1px solid rgba(74, 42, 26, .10);
    box-shadow: 0 10px 28px rgba(54, 29, 14, .06);
    backdrop-filter: blur(14px);
}

.admin-body .admin-topbar-title strong,
.admin-body .admin-heading h1,
.admin-body .section-heading h2 {
    color: #24170f;
}

.admin-body .admin-heading h1 {
    font-size: clamp(2.2rem, 5vw, 4.2rem);
    line-height: .95;
}

.admin-body .admin-subtitle,
.admin-body .dashboard-empty-note,
.admin-body .section-heading p,
.admin-body .admin-panel small,
.admin-body .dashboard-kpi small {
    color: #7a6a5c;
}

.admin-body .admin-panel,
.admin-body .dashboard-kpi,
.admin-body .admin-metric-grid article,
.admin-body .form-panel,
.admin-body .table-panel,
.admin-body .product-admin-panel {
    background: rgba(255, 250, 243, .96);
    border: 1px solid rgba(74, 42, 26, .12);
    box-shadow: 0 16px 38px rgba(54, 29, 14, .07);
    color: #24170f;
}

.admin-body .dashboard-kpis,
.admin-body .admin-metric-grid {
    gap: 14px;
}

.admin-body .dashboard-kpi,
.admin-body .admin-metric-grid article {
    min-height: 122px;
    padding: 18px;
}

.admin-body .dashboard-kpi span,
.admin-body .admin-metric-grid span {
    color: #8a5428;
}

.admin-body .dashboard-kpi strong,
.admin-body .admin-metric-grid strong,
.admin-body .dashboard-list-row strong,
.admin-body .admin-panel td,
.admin-body .admin-panel th {
    color: #24170f;
}

.admin-body .dashboard-list-row,
.admin-body .admin-panel table tr {
    border-color: rgba(74, 42, 26, .10);
}

.admin-body .pill,
.admin-body .badge {
    background: rgba(201, 148, 74, .14);
    color: #6f421f;
}

.admin-body .admin-menu-section {
    background: rgba(255, 255, 255, .035);
}

.admin-body .admin-menu-section summary {
    color: #f7ead8;
}

.admin-body .admin-menu-section summary i,
.admin-body .admin-menu-section .admin-menu-link i {
    min-width: 28px;
    font-size: .66rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    font-family: Manrope, system-ui, sans-serif;
}

.admin-body .admin-menu-section .admin-menu-link {
    color: rgba(248, 244, 232, .86);
}

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

@media (max-width: 1180px) {
    .admin-body .admin-topbar-burger {
        display: inline-flex !important;
    }
}

@media (max-width: 760px) {
    .admin-body .admin-topbar {
        min-height: 58px;
    }

    .admin-body .dashboard-kpi,
    .admin-body .admin-metric-grid article {
        min-height: 104px;
        padding: 15px;
    }

    .admin-body .admin-heading h1 {
        font-size: clamp(2rem, 14vw, 3.2rem);
    }
}
