/* Shared experience layer: storefront, customer account and administration. */
html{overflow-x:clip;scroll-padding-top:125px}body{overflow-x:clip}body:not(.admin-body){padding-bottom:0}
.skip-link{position:fixed;left:16px;top:-70px;z-index:200;background:#fff;color:var(--maroon);padding:11px 16px;border-radius:5px;box-shadow:var(--shadow);font-weight:800}.skip-link:focus{top:14px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(231,167,46,.75);outline-offset:3px}
:where(button,.button){transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}:where(button,.button):not(:disabled):active{transform:translateY(1px)}:where(button,.button):disabled{cursor:not-allowed;opacity:.58}
.button-primary{box-shadow:0 8px 20px rgba(119,30,38,.17)}.button-primary:hover{box-shadow:0 11px 24px rgba(83,18,25,.24);transform:translateY(-1px)}

/* Persistent, recognisable storefront navigation. */
.site-header{position:sticky!important;top:0;z-index:80;border-bottom:1px solid rgba(92,57,45,.09);transition:box-shadow .22s ease,background-color .22s ease}.site-header.is-compact{box-shadow:0 10px 30px rgba(52,25,19,.13);background:rgba(255,253,248,.985)}
.header-main{transition:height .22s ease}.site-header.is-compact .header-main{height:68px}.header-main .brand{min-width:190px}.custom-logo{width:auto;max-width:185px!important;max-height:66px!important;object-fit:contain;transition:max-height .22s ease,transform .22s ease}.site-header.is-compact .custom-logo{max-height:53px!important}.site-header.is-compact .brand-mark{transform:scale(.9)}
.brand-mark{transition:transform .22s ease}.header-search input{border-radius:24px 0 0 24px;border-color:#dfd2c5}.header-search button{border-radius:0 24px 24px 0;min-width:92px}.header-search input:focus{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.header-actions a{min-width:52px;border-radius:8px;padding:4px 7px;transition:background .18s ease,color .18s ease}.header-actions a:hover,.header-actions a.active{background:#fff5df;color:var(--maroon)}
.category-nav a{transition:color .18s ease}.category-nav a.active{color:var(--maroon);font-weight:800}.category-nav a.active:before{content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;border-radius:2px;background:var(--gold)}

/* Store discovery and conversion. */
.page-hero.small{background:linear-gradient(145deg,#fbf6ec,#fffdf9);border-bottom:1px solid #f0e6da}.page-hero.small .container{max-width:850px}.page-hero.small p:last-child{color:var(--muted)}
.product-card{border:1px solid #eee3d6;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 5px 18px rgba(69,38,27,.045);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.product-card:hover{transform:translateY(-5px);border-color:#e2c48f;box-shadow:0 18px 38px rgba(69,38,27,.12)}.product-image{overflow:hidden}.product-image>*:first-child{transition:transform .35s ease}.product-card:hover .product-image>*:first-child{transform:scale(1.025)}
.product-info h3 a:hover{color:var(--maroon)}.product-buy{align-items:center}.product-buy form{margin-left:auto}.add-button{width:auto;min-width:72px;height:38px;border-radius:20px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--maroon);border-color:var(--maroon);color:#fff;font-size:12px;font-weight:800}.add-button:hover{background:var(--maroon-dark);box-shadow:0 7px 16px rgba(83,18,25,.24)}.add-button .add-icon{font-size:19px;line-height:1}.add-button.is-loading{min-width:92px}.rating{letter-spacing:.03em}
.filters{position:sticky;top:105px;height:max-content}.filters a{border-radius:5px;padding:5px 8px;margin-left:-8px}.filters a.active{background:#fff1d3;color:var(--maroon)}.results-top{border-bottom:1px solid var(--line);padding-bottom:15px}.results-top select{border-radius:5px;background-color:#fff}.results-top span b{color:var(--ink)}
.product-gallery{min-width:0}.product-detail-image{border-radius:12px;overflow:hidden;box-shadow:0 14px 40px rgba(65,35,25,.09)}.quality-note{border-radius:0 0 10px 10px}.breadcrumb{display:flex;align-items:center;gap:8px}.breadcrumb span{color:#b9aaa1}.stock-message{margin:13px 0 0;color:var(--green);font-size:12px;font-weight:800}.stock-message.out{color:#a32935}.detail-cart .button{font-size:14px}.purchase-assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 7px}.purchase-assurance span{background:#fbf6ec;border:1px solid #efe3d2;border-radius:5px;padding:9px 6px;text-align:center;font-size:10px;font-weight:700}.product-summary details summary{display:flex;align-items:center;justify-content:space-between}.product-summary details summary:after{content:"+";font-size:18px;color:var(--maroon)}.product-summary details[open] summary:after{content:"−"}
.home-carousel{position:relative}.home-carousel-viewport{width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain;padding:8px 2px 20px;margin:-8px -2px -20px}.home-carousel-viewport::-webkit-scrollbar{display:none}.home-carousel-track{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;width:100%;margin:0!important}.home-product-track{grid-auto-columns:calc((100% - 66px)/4);gap:22px}.home-category-track{grid-auto-columns:calc((100% - 60px)/6);gap:12px}.home-carousel-track>*{scroll-snap-align:start;scroll-snap-stop:normal}.home-carousel-button{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:43px;height:43px;border:1px solid color-mix(in srgb,var(--maroon),transparent 70%);border-radius:50%;background:var(--theme-surface,#fff);color:var(--maroon);box-shadow:0 10px 28px rgba(50,25,20,.16);font:500 29px/1 var(--sans);display:grid;place-items:center}.home-carousel-button.previous{left:-21px}.home-carousel-button.next{right:-21px}.home-carousel-button:disabled{opacity:.28;cursor:default;box-shadow:none}.home-carousel.is-static .home-carousel-button{display:none}.home-carousel-viewport:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:8px}
.section-heading>.section-view-all{border:1px solid var(--maroon);min-height:40px;padding:0 17px;gap:7px;white-space:nowrap;background:var(--theme-surface,#fff);transition:background .18s ease,color .18s ease,transform .18s ease}.section-heading>.section-view-all:hover{background:var(--maroon);color:#fff;transform:translateY(-1px)}
.offer-bar{padding:0;text-align:left;letter-spacing:normal}.offer-bar-inner{min-height:36px;position:relative;display:flex;align-items:center;justify-content:center}.offer-message{font-size:10px;font-weight:800;letter-spacing:.1em;text-align:center}.header-socials{position:absolute;right:0;display:flex;align-items:center;gap:6px}.header-socials small{font-size:8px;letter-spacing:.08em;opacity:.78;margin-right:3px}.header-socials a{width:24px;height:24px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:grid;place-items:center;color:#fff;font-size:8px;font-weight:900;line-height:1;transition:.18s}.header-socials a:hover{background:var(--gold);border-color:var(--gold);color:var(--maroon-dark);transform:translateY(-1px)}
.cart-item{border:1px solid transparent;border-bottom-color:var(--line);border-radius:7px;transition:background .18s ease}.cart-item:hover{background:#fffaf1}.cart-remove{border:0;background:none;color:#9d2b35;padding:0;margin-top:2px;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.order-summary{border-radius:10px;border:1px solid #eddfcf;box-shadow:0 12px 35px rgba(72,39,27,.08)}
.checkout-help{width:calc(100% - 63px);margin:15px 0 0 63px;color:var(--muted);font-size:11px;text-align:center}.checkout-help a{color:var(--maroon);font-weight:800;text-decoration:underline;text-underline-offset:3px}.radio-card{border-radius:7px!important;transition:border-color .18s ease,background .18s ease}.radio-card:has(input:checked){background:#fff8e9;box-shadow:inset 0 0 0 1px var(--maroon)}
.empty-state{border-radius:10px;border:1px dashed #decdbb}.form-error{border-radius:5px}.flash{border-radius:8px}.custom-page-content{max-width:880px;padding:60px 0 100px;line-height:1.8}.custom-page-content img{border-radius:9px}

/* Forms and data are calmer and easier to scan on every module. */
.stack-form label,.checkout-form label,.admin-form label{color:#493b36}.stack-form :where(input,select,textarea),.checkout-form :where(input,select,textarea),.admin-form :where(input,select,textarea),.report-filters :where(input,select){border-radius:6px!important;border-color:#ded4cb!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.stack-form :where(input,select,textarea):hover,.checkout-form :where(input,select,textarea):hover,.admin-form :where(input,select,textarea):hover{border-color:#bfae9f!important}.stack-form :where(input,select,textarea):focus,.checkout-form :where(input,select,textarea):focus,.admin-form :where(input,select,textarea):focus{background:#fff;border-color:var(--maroon)!important;box-shadow:0 0 0 3px rgba(119,30,38,.08)!important}
.stack-form label,.admin-form label,.config-grid>*{min-width:0}.stack-form textarea{display:block;width:100%;max-width:100%;border:1px solid var(--line);background:#fff;padding:12px;margin-top:6px;outline:none;resize:vertical;line-height:1.5}.stack-form input[type="checkbox"],.stack-form input[type="radio"],.admin-form input[type="checkbox"],.admin-form input[type="radio"]{display:inline-block;width:auto;max-width:none;margin:0;flex:0 0 auto}.stack-form .toggle input,.admin-form .toggle input{display:none}.permission-card{min-width:0;min-height:54px;justify-content:flex-start;line-height:1.25;overflow-wrap:anywhere}.permission-card input[type="hidden"]{display:none}.permission-card input[type="checkbox"]{display:inline-block!important;width:18px!important;height:18px;margin:0!important;accent-color:var(--maroon)}.code-editor{display:block!important;width:100%!important;max-width:100%;min-height:300px!important;resize:vertical;font:500 13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace!important;white-space:pre-wrap}.admin-body .admin-heading h1{font-size:40px}.admin-body .admin-panel>h2,.admin-body .panel-heading h2{font-size:21px}
.auth-form-help{text-align:right;margin:-8px 0 2px}.auth-form-help a{color:var(--maroon);font-size:11px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.recovery-page .auth-card>p strong{overflow-wrap:anywhere}.recovery-success{display:flex;gap:14px;align-items:flex-start;background:#eef8f1;border:1px solid #cbe5d2;border-radius:8px;padding:16px;color:#255d3c}.recovery-success>span{width:30px;height:30px;flex:0 0 30px;border-radius:50%;display:grid;place-items:center;background:#28794b;color:#fff;font-weight:900}.recovery-success b,.recovery-success p{display:block}.recovery-success p{margin:3px 0 0;font-size:12px;line-height:1.55}.recovery-page .stack-form small{display:block;color:var(--muted);font-size:10px;margin-top:5px}
.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.button-passkey{width:100%;display:flex;justify-content:center;gap:9px;background:#fff;border:1px solid #cdbdb4;color:var(--maroon)}.button-passkey:hover{background:#fff8ee;border-color:var(--maroon)}.passkey-login-status{margin:0!important;font-size:10px!important;color:var(--muted)}.passkey-panel{margin-top:24px}.passkey-enrol-form{max-width:900px}.passkey-readiness{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.passkey-check{display:flex;gap:9px;align-items:flex-start;min-width:0;padding:12px;border:1px solid #e7ded6;border-radius:8px;background:#faf8f5}.passkey-check>span{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:#ece5df;color:#6e5f59;font-weight:900}.passkey-check p{min-width:0;margin:0}.passkey-check b,.passkey-check small{display:block;overflow-wrap:anywhere}.passkey-check b{font-size:10px}.passkey-check small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.4}.passkey-check.is-ready{border-color:#cfe6d8;background:#f5fbf7}.passkey-check.is-ready>span{background:#dcefe3;color:#26734b}.passkey-check.needs-action{border-color:#efd0d4;background:#fff7f8}.passkey-check.needs-action>span{background:#f6dfe2;color:#9a2638}.passkey-status{margin:0;padding:11px 13px;border-left:3px solid var(--gold);background:#fff9ea;color:#5b4635;font-size:10px;line-height:1.5}.passkey-device-list{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}.passkey-device-list h3{margin:0 0 12px}.passkey-device{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:14px;margin-top:10px;background:#fff}.passkey-device-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f7eee5;color:var(--maroon);font-size:22px}.passkey-device b,.passkey-device small{display:block}.passkey-device small{color:var(--muted);font-size:10px;margin-top:3px}.passkey-remove-form{display:flex;gap:8px;align-items:center}.passkey-remove-form input{max-width:170px;min-height:38px}.passkey-remove-form button{min-height:38px}
.admin-panel{border-radius:9px;border-color:#e8e1da;box-shadow:0 5px 18px rgba(50,30,24,.035)}.admin-panel table tbody tr{transition:background .14s ease}.admin-panel table tbody tr:hover{background:#fff9ef}.admin-panel th{background:#fbf9f6}.table-toolbar input{border-radius:6px}.status{white-space:nowrap}
.dashboard-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;margin:0 0 22px}.dashboard-actions a{min-width:0;background:#fff;border:1px solid #e7dfd8;border-radius:8px;padding:15px 12px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dashboard-actions a:hover{transform:translateY(-2px);border-color:#d8bb83;box-shadow:0 10px 22px rgba(55,30,24,.08)}.dashboard-actions span{display:block;color:var(--maroon);font-size:20px}.dashboard-actions b,.dashboard-actions small{display:block}.dashboard-actions b{margin-top:5px;font-size:11px}.dashboard-actions small{color:var(--muted);font-size:8px;margin-top:2px}

/* Configurable homepage banner slideshow. */
.hero-slideshow{height:var(--hero-height,620px);margin-top:0}.hero-slide{background-image:var(--slide-bg);background-position:var(--slide-position,center);color:var(--slide-text,#fff);transform:none;transition:opacity .8s ease,visibility .8s ease,transform 1s ease}.hero-slide:after{background:var(--slide-overlay,#2a100c);opacity:var(--slide-opacity,.55)}.hero-slide .hero-content{height:100%;padding-top:0;padding-bottom:0;display:flex;flex-direction:column;justify-content:center}.hero-slide .hero-content h1{font-size:clamp(38px,6vw,var(--slide-title-size,64px));max-width:min(780px,92%)}.hero-slide .hero-content>p:not(.eyebrow){max-width:570px}.hero-slide .button{margin-top:18px}.hero-slide[data-align="left"] .hero-content{align-items:flex-start;text-align:left}.hero-slide[data-align="center"] .hero-content{align-items:center;text-align:center}.hero-slide[data-align="right"] .hero-content{align-items:flex-end;text-align:right}.hero-slide[data-vertical="top"] .hero-content{justify-content:flex-start;padding-top:80px}.hero-slide[data-vertical="bottom"] .hero-content{justify-content:flex-end;padding-bottom:80px}.hero-slide.effect-slide{transform:translateX(5%)}.hero-slide.effect-slide.active{transform:translateX(0)}.hero-slide.effect-zoom{transform:scale(1.045)}.hero-slide.effect-zoom.active{transform:scale(1)}.slide-dots button{cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.22)}

/* Brand and homepage studio. */
.anchor-panel{scroll-margin-top:95px}.branding-jump{position:sticky;top:70px;z-index:12;padding:8px;background:#f6f4f1;border-bottom:1px solid #e5ddd6}.branding-settings-form{gap:18px}.brand-file-preview{display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:center;margin-bottom:18px}.brand-file-preview.compact{grid-template-columns:60px 1fr;margin:15px 0 0}.brand-preview{height:105px;border:1px dashed #d9c9bb;border-radius:8px;background:#faf5ec;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.brand-preview img{width:100%;height:100%;object-fit:contain;padding:10px}.brand-preview>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--maroon);color:#fff;font:700 24px var(--serif)}.brand-preview>small{font-size:9px;color:var(--muted);margin-top:7px}.favicon-preview{width:54px;height:54px;border:1px dashed #d9c9bb;border-radius:8px;background:#faf5ec;display:grid;place-items:center;overflow:hidden;color:var(--maroon);font-weight:800}.favicon-preview img{width:100%;height:100%;object-fit:contain;padding:5px}.plain-check{display:flex!important;align-items:center;gap:8px;margin-top:8px;font-size:10px!important;color:#8c3038!important}.plain-check input{display:inline-block!important;width:auto!important;margin:0!important}.slide-editor-panel{margin-top:30px}.slide-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.banner-file-preview{display:block;width:100%;height:170px;margin:10px 0 7px;border-radius:7px;object-fit:cover;background:var(--cream)}.banner-file-preview.mobile{object-position:center}.slide-editor-form label>small{font-weight:500;color:var(--muted)}.slide-no-image{display:grid;place-items:center;width:100px;height:55px;background:#f3eee9;color:var(--muted);font-size:9px}.slide-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.slide-actions form{display:inline}.slide-actions .link-button{font-size:11px;color:var(--maroon);cursor:pointer}.slide-actions .danger-link{color:#a12430}.slide-management-table td:nth-child(2){min-width:220px}
.theme-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:24px}.theme-preset-card{min-width:0;text-align:left;border:1px solid #ded5cc;border-radius:9px;background:#fff;padding:12px;color:#40332e}.theme-preset-card:hover{border-color:#bea26c;box-shadow:0 8px 18px rgba(57,31,24,.08)}.theme-preset-card.active{border-color:var(--maroon);box-shadow:inset 0 0 0 2px var(--maroon)}.theme-preset-card b,.theme-preset-card small{display:block}.theme-preset-card b{font-size:11px;margin-top:8px}.theme-preset-card small{font-size:8px;color:var(--muted);margin-top:2px}.theme-swatches{display:flex;height:24px;border-radius:5px;overflow:hidden}.theme-swatches i{flex:1}.theme-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:20px 0;border-top:1px solid #eee6df}.theme-control-grid h3{font-size:13px;margin:0 0 12px}.theme-colour-row{grid-template-columns:repeat(5,minmax(0,1fr))}.theme-colour-row label{display:block}.theme-colour-row input[type=color]{display:block;width:100%;min-width:0;margin-top:6px}.theme-detail-row{grid-template-columns:repeat(5,minmax(0,1fr));margin:4px 0 22px}.theme-live-preview{--preview-primary:#771e26;--preview-accent:#e7a72e;--preview-bg:#fffdf8;--preview-surface:#fff;--preview-text:#281b18;--preview-heading:'Playfair Display',serif;--preview-body:'DM Sans',sans-serif;--preview-radius:10px;display:grid;grid-template-columns:1fr 190px;gap:18px;background:var(--preview-bg);color:var(--preview-text);border:1px solid #e5ddd5;border-radius:10px;padding:20px;margin:5px 0 22px;font-family:var(--preview-body)}.theme-live-preview>small{grid-column:1/-1;font-size:8px;letter-spacing:.16em;color:#8b7d76}.theme-live-preview>div p{color:var(--preview-primary);font-size:8px;font-weight:800;letter-spacing:.16em;margin:0}.theme-live-preview h3{font:700 28px/1.1 var(--preview-heading);margin:7px 0}.theme-live-preview>div>span{display:block;font-size:11px;opacity:.72}.theme-live-preview button{border:0;background:var(--preview-primary);color:#fff;font-size:10px;font-weight:800;padding:10px 16px;margin-top:15px;border-radius:var(--preview-radius)}.theme-live-preview article{background:var(--preview-surface);border:1px solid color-mix(in srgb,var(--preview-primary),transparent 82%);border-radius:var(--preview-radius);padding:14px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 8px 22px rgba(45,25,20,.08)}.theme-live-preview article i{font-style:normal;font-size:30px}.theme-live-preview article b{font:700 15px var(--preview-heading);margin:8px 0}.theme-live-preview article span{color:var(--preview-primary);font-weight:800;font-size:12px}.theme-live-preview[data-cards="minimal"] article{border:0;box-shadow:none}.theme-live-preview[data-cards="elevated"] article{border-color:transparent;box-shadow:0 15px 32px rgba(45,25,20,.14)}.theme-live-preview[data-buttons="pill"] button{border-radius:999px}.theme-live-preview[data-buttons="square"] button{border-radius:0}.theme-live-preview[data-header="contrast"]>div{border-left:5px solid var(--preview-primary);padding-left:18px}.theme-live-preview[data-header="clean"]>div p{color:var(--preview-accent)}
.footer-studio-grid{display:grid;grid-template-columns:240px 1fr;gap:22px;align-items:end}.footer-colour-row{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-colour-row label{display:block}.footer-colour-row input[type=color]{display:block;width:100%;min-width:0;margin-top:6px}.footer-toggle-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin:20px 0}.footer-social-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-live-preview{--preview-footer-bg:#2b1715;--preview-footer-text:#fff;--preview-footer-muted:#baa9a4;--preview-footer-accent:#e7a72e;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:18px;margin-top:24px;padding:22px;border-radius:9px;background:var(--preview-footer-bg);color:var(--preview-footer-text)}.footer-live-preview>div{min-width:0}.footer-live-preview b,.footer-live-preview span,.footer-live-preview p{display:block}.footer-live-preview b{font:700 13px var(--serif);color:var(--preview-footer-accent);margin-bottom:8px}.footer-live-preview p,.footer-live-preview span{color:var(--preview-footer-muted);font-size:9px;line-height:1.5;margin:3px 0}.footer-live-preview[data-layout="centered"]{text-align:center;grid-template-columns:repeat(3,1fr)}.footer-live-preview[data-layout="centered"]>div:first-child{grid-column:1/-1}.footer-live-preview[data-layout="compact"]{padding:14px;gap:12px}
.announcement-toggle{align-self:end;min-height:46px;margin-bottom:0!important}.product-image-uploader{display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:center;padding:16px;background:#fbf8f3;border:1px solid #e9dfd5;border-radius:8px}.product-upload-preview{aspect-ratio:1/1;border:1px dashed #d8c7b8;border-radius:8px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:var(--muted)}.product-upload-preview img{width:100%;height:100%;object-fit:cover}.product-upload-preview>span{font-size:33px;color:var(--maroon)}.product-upload-preview>small{font-size:8px;margin-top:5px}.product-image-uploader input[type=file]{background:#fff}

/* RSA licence activation. */
.licence-status-card{border-left:5px solid #9c8b83}.licence-status-card.is-active{border-left-color:#28794b;background:linear-gradient(110deg,#fff,#f2fbf5)}.licence-status-card.needs-action{border-left-color:#b52b37;background:linear-gradient(110deg,#fff,#fff5f5)}.licence-status-badge{border-radius:999px;padding:7px 12px;background:#eee7e2;color:#5e514c;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.licence-status-card.is-active .licence-status-badge{background:#dcefe2;color:#23623d}.licence-status-card.needs-action .licence-status-badge{background:#f8dfe2;color:#962530}.licence-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.licence-details>div{padding:13px;background:rgba(255,255,255,.75);border:1px solid #e8e1da;border-radius:7px;min-width:0}.licence-details small,.licence-details b{display:block}.licence-details small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.licence-details b{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.licence-feature-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.licence-feature-pills span{border:1px solid #d9cfc6;border-radius:999px;padding:5px 9px;background:#fff;font:700 8px ui-monospace,monospace;color:#51433e}.licence-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.licence-grid>.admin-panel{min-width:0}.licence-paste-key{border:1px solid #e6ded6;border-radius:7px;padding:12px}.licence-paste-key summary{cursor:pointer;font-size:11px;font-weight:800;color:var(--maroon)}.licence-paste-key[open] summary{margin-bottom:12px}.licence-setup-form .code-editor,.licence-grid .code-editor{min-height:170px!important;font-size:10px!important}.licence-key-state{display:flex;align-items:center;gap:10px;padding:12px;border-radius:7px;background:#f6f4f1}.licence-key-state>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--maroon);color:#fff;font-weight:900}.licence-key-state b,.licence-key-state small{display:block}.licence-key-state b{font-size:10px}.licence-key-state small{color:var(--muted);font-size:8px;overflow-wrap:anywhere}.licence-security-note{margin-top:18px;padding:14px;border-left:3px solid var(--gold);background:#fff9eb}.licence-security-note b{font-size:10px}.licence-security-note p{font-size:9px;color:var(--muted);margin:4px 0 0}.licence-deactivate{margin-top:16px}
.admin-licence-alert{position:fixed;z-index:39;top:70px;left:248px;right:0;min-height:48px;padding:8px 30px;background:#fff3db;border-bottom:1px solid #efd49b;display:flex;align-items:center;gap:11px;color:#5b3a16}.admin-licence-alert>span{font-size:20px;color:#9b5f11}.admin-licence-alert p{margin:0}.admin-licence-alert b,.admin-licence-alert small{display:block}.admin-licence-alert b{font-size:10px}.admin-licence-alert small{font-size:8px}.admin-licence-alert a{margin-left:auto;font-size:9px;font-weight:900;color:var(--maroon)}.admin-licence-alert+main.admin-main{padding-top:118px}

/* Storefront theme variants; administration remains visually stable. */
.storefront-body{--maroon-dark:color-mix(in srgb,var(--maroon),#000 25%);--cream:color-mix(in srgb,var(--paper),var(--gold) 7%);--line:color-mix(in srgb,var(--ink),transparent 86%);--muted:color-mix(in srgb,var(--ink),transparent 42%)}.storefront-body .container{width:min(var(--theme-container,1180px),calc(100% - 40px))}.storefront-body .product-card{background:var(--theme-surface);border-radius:var(--theme-radius);overflow:hidden}.storefront-body .category-cards a,.storefront-body .order-summary,.storefront-body .account-card{border-radius:var(--theme-radius)}.theme-card-bordered .product-card{border:1px solid color-mix(in srgb,var(--maroon),transparent 82%);box-shadow:0 5px 18px rgba(50,30,24,.04)}.theme-card-elevated .product-card{border-color:transparent;box-shadow:0 16px 38px rgba(50,30,24,.12)}.theme-card-minimal .product-card{border:0;box-shadow:none;border-radius:0}.theme-card-minimal .product-card:hover{box-shadow:none}.theme-button-soft .button{border-radius:var(--theme-radius)}.theme-button-pill .button{border-radius:999px}.theme-button-square .button{border-radius:0}.theme-header-clean .site-header{box-shadow:none;border-bottom:1px solid var(--line);background:var(--theme-surface)}.theme-header-clean .category-nav{background:var(--paper)}.theme-header-clean .header-search button{background:var(--maroon);color:#fff}.theme-header-contrast .site-header,.theme-header-contrast .site-header.is-compact{background:var(--maroon);color:#fff;border-bottom-color:rgba(255,255,255,.15)}.theme-header-contrast .category-nav{background:var(--maroon);border-top-color:rgba(255,255,255,.15)}.theme-header-contrast .category-nav a{color:#fff}.theme-header-contrast .brand small,.theme-header-contrast .category-nav a.active,.theme-header-contrast .category-nav a:hover{color:var(--gold)}.theme-header-contrast .header-actions a:hover,.theme-header-contrast .header-actions a.active{background:rgba(255,255,255,.12);color:#fff}.theme-header-contrast .cart-link b{background:var(--gold);color:var(--ink)}.theme-header-contrast .custom-logo{background:#fff;border-radius:var(--theme-radius);padding:5px}
.site-footer{background:var(--footer-bg)!important;color:var(--footer-text)!important}.site-footer .footer-grid{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.site-footer .footer-grid p,.site-footer .footer-grid>div>a:not(.brand){color:var(--footer-muted)}.site-footer .footer-grid h4{color:var(--footer-text)}.site-footer .footer-brand .brand small,.site-footer .footer-socials a{color:var(--footer-accent)}.site-footer .newsletter input{background:color-mix(in srgb,var(--footer-bg),#fff 8%);border-color:color-mix(in srgb,var(--footer-text),transparent 72%);color:var(--footer-text)}.site-footer .newsletter button{background:var(--footer-accent);color:color-mix(in srgb,var(--footer-bg),#000 12%)}.site-footer .footer-bottom{border-color:color-mix(in srgb,var(--footer-text),transparent 84%);color:var(--footer-muted)}.footer-contact{display:flex;flex-direction:column;gap:5px;margin-top:12px;font-style:normal}.footer-contact a{width:max-content;max-width:100%;color:var(--footer-muted);font-size:10px;overflow-wrap:anywhere}.footer-contact a:hover{color:var(--footer-accent)}.footer-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.footer-socials a{border:1px solid color-mix(in srgb,var(--footer-accent),transparent 55%);border-radius:999px;padding:6px 10px;font-size:9px;font-weight:800}.footer-layout-centered .footer-grid{text-align:center}.footer-layout-centered .footer-company{grid-column:1/-1;max-width:650px;margin:auto}.footer-layout-centered .footer-brand{margin-left:auto;margin-right:auto}.footer-layout-centered .footer-contact{align-items:center}.footer-layout-centered .footer-socials{justify-content:center}.footer-layout-centered .newsletter{max-width:380px;margin:auto}.footer-layout-compact{padding-top:38px}.footer-layout-compact .footer-grid{gap:28px}.footer-layout-compact .footer-bottom{margin-top:28px}

/* Reports remain useful even for empty or long periods. */
.report-chart-scroll{overflow-x:auto;overflow-y:hidden;padding:0 3px 30px}.report-chart-scroll .metric-chart{min-width:max(520px,calc(var(--report-days,1) * 52px));margin-bottom:0}.metric-chart span{border-radius:4px 4px 0 0}.metric-chart span b{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:8px;white-space:nowrap;color:var(--muted);font-weight:700}.report-chart-panel .empty-state{margin-top:10px}

/* Drawer location awareness and persistent selection. */
.admin-sidebar{width:248px;padding-left:18px;padding-right:18px}.admin-main{margin-left:248px}.admin-top{left:248px;justify-content:flex-start}.admin-nav{scroll-behavior:smooth}.admin-sidebar nav a{display:flex!important;align-items:center;gap:10px;position:relative;margin:2px 0}.admin-sidebar nav a>span{width:18px;text-align:center;color:#bda9a5}.admin-sidebar nav a>b{font:600 12px/1.3 var(--sans)}.admin-sidebar nav a.active{background:linear-gradient(90deg,#6e2b31,#593034);color:#fff;box-shadow:inset 3px 0 0 var(--gold),0 5px 14px rgba(0,0,0,.13)}.admin-sidebar nav a.active>span{color:var(--gold)}.admin-sidebar nav a.active:after{content:"CURRENT";margin-left:auto;color:#f0c768;font-size:6px;font-weight:900;letter-spacing:.1em}.admin-custom-logo{display:block;width:100%;max-width:185px;height:62px;object-fit:contain;object-position:left center;background:#fff;border-radius:7px;padding:7px}.auth-custom-logo{display:block;max-width:220px;max-height:72px;object-fit:contain;object-position:left center}.footer-custom-logo{display:block;max-width:210px;max-height:70px;object-fit:contain;object-position:left center;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15))}
.admin-location{margin-right:auto}.admin-location small,.admin-location strong{display:block}.admin-location small{font-size:8px;letter-spacing:.14em;color:#9a8a83}.admin-location strong{font:700 17px var(--serif);color:var(--ink)}.admin-top-account{text-align:right;margin-left:0;padding-left:18px;border-left:1px solid #eee5de}.admin-top-account strong{font-size:12px}.admin-top-account small{font-size:9px}.admin-heading{padding-bottom:15px;border-bottom:1px solid #e7ded6}.admin-heading h1{letter-spacing:-.02em}

.mobile-quick-nav{display:none}.back-to-top{position:fixed;right:92px;bottom:24px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:var(--maroon);box-shadow:0 8px 25px rgba(53,24,19,.2);z-index:70;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.back-to-top.visible{opacity:1;visibility:visible;transform:none}

@media(max-width:1100px){.dashboard-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-detail-row{grid-template-columns:repeat(3,minmax(0,1fr))}.home-product-track{grid-auto-columns:calc((100% - 32px)/3);gap:16px}.home-category-track{grid-auto-columns:calc((100% - 36px)/4)}}
@media(max-width:1000px){.admin-sidebar{width:220px}.admin-main{margin-left:220px}.admin-top{left:220px}.admin-licence-alert{left:220px}.header-main .brand{min-width:165px}.custom-logo{max-width:158px!important}}

@media(max-width:900px){.admin-sidebar{width:min(290px,88vw)}.admin-main{margin-left:0}.admin-top{left:0}.admin-licence-alert{left:0;padding-left:18px;padding-right:18px}.filters{position:static}.licence-grid{grid-template-columns:1fr}.licence-details{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:760px){
  body:not(.admin-body):not(.backoffice-login-body){padding-bottom:68px}.offer-bar-inner{min-height:0;padding:6px 0;display:grid;gap:4px}.offer-message{font-size:8px;line-height:1.35;letter-spacing:.07em}.header-socials{position:static;justify-content:center}.header-socials small{font-size:7px}.header-socials a{width:21px;height:21px;font-size:7px}.site-header{top:0}.site-header.is-compact .header-main{height:60px}.custom-logo{max-width:150px!important;max-height:52px!important}.site-header.is-compact .custom-logo{max-height:46px!important}.site-header.is-compact .header-search{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px)}.header-search{transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.category-nav a.active:before{display:none}
  .mobile-quick-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:90;height:66px;background:rgba(255,253,248,.98);border-top:1px solid #e5d9cd;box-shadow:0 -8px 28px rgba(55,30,22,.11);padding-bottom:env(safe-area-inset-bottom)}.mobile-quick-nav :where(a,button){position:relative;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#76655f;min-width:0}.mobile-quick-nav span{font-size:19px;line-height:1}.mobile-quick-nav small{font-size:8px;font-weight:800}.mobile-quick-nav .active{color:var(--maroon)}.mobile-quick-nav .active:after{content:"";position:absolute;top:0;width:28px;height:3px;border-radius:0 0 4px 4px;background:var(--gold)}.mobile-quick-nav b{position:absolute;top:7px;left:calc(50% + 8px);min-width:16px;height:16px;border-radius:9px;background:var(--maroon);color:#fff;font-size:8px;display:grid;place-items:center}
  .back-to-top{right:16px;bottom:82px;width:40px;height:40px}.chat-launch{bottom:80px!important}.chat-widget{bottom:134px!important}.admin-access-link{padding-bottom:25px}
  .product-card:hover{transform:none}.storefront-body .product-grid:not(.home-carousel-track),.storefront-body .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.home-product-track,.home-category-track{grid-auto-columns:calc((100% - 12px)/3);gap:6px}.home-carousel-button{width:34px;height:34px;font-size:24px}.home-carousel-button.previous{left:3px}.home-carousel-button.next{right:3px}.storefront-body .product-info{padding:7px}.storefront-body .product-info>small{display:block;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.storefront-body .product-info h3{font-size:11px;line-height:1.22;min-height:27px;margin:4px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.storefront-body .rating{font-size:7px;white-space:nowrap}.storefront-body .rating span{display:none}.storefront-body .product-buy{gap:2px;margin-top:6px;align-items:center}.storefront-body .product-buy strong{font-size:11px;white-space:nowrap}.storefront-body .product-buy del{display:block;font-size:7px}.storefront-body .add-button{min-width:28px;width:28px;height:28px;padding:0;border-radius:50%}.storefront-body .add-button .add-icon{font-size:16px}.storefront-body .add-button .add-label{display:none}.storefront-body .add-button:disabled span{font-size:6px}.storefront-body .discount-badge,.storefront-body .b1g1-badge{top:4px;left:4px;padding:3px 4px;font-size:5px}.storefront-body .b1g1-badge{left:auto;right:4px;max-width:54px;text-align:center}.storefront-body .product-placeholder span{font-size:34px}.storefront-body .product-placeholder small{font-size:6px;margin-top:7px}.filters a{margin-left:0;border-radius:20px}.filters a.active{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
  .purchase-assurance{grid-template-columns:1fr}.purchase-assurance span{text-align:left;padding:10px 12px}.cart-remove{min-height:auto}.checkout-help{width:100%;margin-left:0}.admin-location strong{font-size:14px}.admin-location small{font-size:7px}.admin-top-account{display:none}.admin-top-logout button{white-space:nowrap}.admin-sidebar nav a.active:after{display:block}.admin-panel{border-radius:7px}.dashboard-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .passkey-readiness{grid-template-columns:1fr 1fr}.passkey-device{grid-template-columns:40px minmax(0,1fr)}.passkey-remove-form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto}.passkey-remove-form input{max-width:none}
  .hero-slideshow{height:var(--hero-mobile-height,560px)}.hero-slide{background-image:var(--slide-bg-mobile,var(--slide-bg))}.hero-slide .hero-content{padding-top:46px!important;padding-bottom:46px!important}.hero-slide[data-align="left"] .hero-content{align-items:flex-start!important;text-align:left!important}.hero-slide[data-align="center"] .hero-content{align-items:center!important;text-align:center!important}.hero-slide[data-align="right"] .hero-content{align-items:flex-end!important;text-align:right!important}.hero-slide[data-vertical="top"] .hero-content{justify-content:flex-start}.hero-slide[data-vertical="center"] .hero-content{justify-content:center}.hero-slide[data-vertical="bottom"] .hero-content{justify-content:flex-end}.hero-slide .hero-content h1{font-size:clamp(36px,11vw,min(var(--slide-title-size,64px),58px));max-width:100%}.hero-slide .hero-content>p:not(.eyebrow){max-width:100%}.branding-jump{top:60px}.brand-file-preview,.slide-media-grid{grid-template-columns:1fr}.brand-file-preview.compact{grid-template-columns:60px 1fr}.brand-preview{height:120px}.banner-file-preview{height:150px}.slide-actions{gap:8px;flex-wrap:wrap}
  .theme-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-control-grid{grid-template-columns:1fr}.theme-detail-row{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-colour-row{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-live-preview{grid-template-columns:1fr}.theme-live-preview>small{grid-column:auto}.footer-studio-grid{grid-template-columns:1fr}.footer-colour-row{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-social-fields{grid-template-columns:1fr}.footer-live-preview{grid-template-columns:1fr 1fr}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.site-footer .footer-company{grid-column:1/-1}.site-footer .footer-bottom{flex-direction:column;gap:6px;text-align:center}.product-image-uploader{grid-template-columns:110px 1fr;gap:12px}.licence-details{grid-template-columns:1fr}.code-editor{min-height:240px!important}.section-heading>.section-view-all{min-height:36px;padding:0 12px;font-size:10px}
}

@media(max-width:520px){.header-main .brand{min-width:0}.custom-logo{max-width:130px!important}.admin-location{min-width:0}.admin-location strong{max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.storefront-body .product-card{border-radius:7px}.storefront-body .product-info{padding:6px}.detail-price{flex-wrap:wrap}.detail-cart{position:sticky;bottom:72px;z-index:20;background:rgba(255,253,248,.96);padding:10px;margin-left:-6px;margin-right:-6px;border:1px solid #eadfd4;border-radius:8px;box-shadow:0 9px 30px rgba(55,27,20,.14)}.detail-cart label{max-width:80px}.admin-sidebar nav a{min-height:42px}.product-image-uploader{grid-template-columns:1fr}.product-upload-preview{max-width:180px}.footer-live-preview{grid-template-columns:1fr}.footer-live-preview[data-layout="centered"]{grid-template-columns:1fr}.site-footer{padding-top:48px}.site-footer .footer-grid{gap:22px}.passkey-readiness{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
