.app-shell-kiosk{min-height:100dvh}.pos-screen{display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--colour-band)}.pos-centered{align-items:center;justify-content:center;gap:16px;padding:24px}.pos-muted{margin:0;color:var(--colour-text);opacity:.75}.pos-error-banner{margin:0 0 12px;border:1px solid #e5b8b8;border-radius:8px;padding:10px 14px;background:#fdf0f0;color:#9c3535;font-size:.92rem}.pos-offline-banner{border-bottom:1px solid #e8d9b8;padding:8px 20px;background:#fdf6e3;color:#7a5d1e;font-size:.9rem}.pos-offline-note{margin:10px 0 0;color:#7a5d1e;font-size:.9rem;text-align:center}.pos-link-btn{border:0;padding:0;background:none;color:inherit;font-weight:700;text-decoration:underline}.pos-auth-card{width:min(420px,100%);border:1px solid var(--colour-border);border-radius:14px;padding:32px;background:#fff;box-shadow:var(--shadow-card);text-align:center}.pos-auth-brand{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px}.pos-auth-brand h1{margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.8rem;font-weight:600;line-height:1.1}.pos-auth-form{display:grid;gap:14px;margin-top:18px;text-align:left}.pos-auth-form label,.pos-form-fields label,.pos-z-field{display:grid;gap:6px}.pos-auth-form label span,.pos-form-fields label span,.pos-z-field>span{color:var(--colour-charcoal);font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.pos-auth-form input,.pos-form-fields input,.pos-z-field input,.pos-z-field textarea,.pos-z-payout-rows input,.pos-search{min-height:48px;border:1px solid var(--colour-border);border-radius:8px;padding:8px 14px;background:#fff;color:var(--colour-text);font-size:1rem}.pos-z-field textarea{min-height:0;resize:vertical}.pos-auth-form input:focus,.pos-form-fields input:focus,.pos-z-field input:focus,.pos-z-field textarea:focus,.pos-z-payout-rows input:focus,.pos-search:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:0}.pos-auth-submit{min-height:52px;font-size:.9rem}.pos-device-signout{margin-top:18px;border:0;padding:4px;background:none;color:var(--colour-text);font-size:.82rem;opacity:.7;text-decoration:underline}.pos-pinpad{margin-top:18px}.pos-pinpad-error{margin:0 0 14px;border:1px solid #e5b8b8;border-radius:8px;padding:8px 12px;background:#fdf0f0;color:#9c3535;font-size:.9rem;animation:pos-shake .32s ease}@keyframes pos-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}.pos-pinpad-dots{display:flex;justify-content:center;gap:14px;margin-bottom:22px}.pos-pinpad-dot{width:16px;height:16px;border:2px solid var(--colour-money-back);border-radius:999px;background:transparent;transition:background .12s ease,border-color .12s ease}.pos-pinpad-dot.is-filled{border-color:var(--colour-accent-dark);background:var(--colour-accent)}.pos-pinpad-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pos-key{min-height:64px;border:1px solid var(--colour-border);border-radius:12px;background:#fff;color:var(--colour-heading);font-size:1.5rem;font-weight:600;transition:background .12s ease,transform .12s ease}.pos-key:hover:not(:disabled){background:var(--colour-band)}.pos-key:active:not(:disabled){transform:scale(.97);background:var(--colour-accent)}.pos-key-muted{background:var(--colour-band);font-size:1.1rem}.pos-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;border-bottom:1px solid var(--colour-border);padding:8px 20px;background:#fff}.pos-topbar-brand{position:relative;display:flex;align-items:center;gap:12px;min-width:0}.pos-brand-btn{display:flex;align-items:center;gap:12px;border:0;border-radius:10px;padding:4px 10px 4px 4px;background:transparent;cursor:pointer}.pos-brand-btn:hover{background:var(--colour-surface, #f4f1ea)}.pos-brand-caret{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--colour-heading);opacity:.6}.pos-popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.pos-brand-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:41;min-width:200px;border:1px solid var(--colour-border);border-radius:12px;padding:6px;background:#fff;box-shadow:0 12px 30px #17281f2e}.pos-popover-item{display:block;width:100%;border:0;border-radius:8px;padding:12px 14px;background:transparent;color:var(--colour-heading);font-size:1rem;text-align:left;cursor:pointer}.pos-popover-item:hover:not(:disabled){background:var(--colour-surface, #f4f1ea)}.pos-popover-item:disabled{opacity:.6;cursor:default}a.pos-popover-item{text-decoration:none}.pos-popover-item-hint{margin-left:6px;color:var(--colour-charcoal);font-size:.72rem;font-weight:600;letter-spacing:.6px;text-transform:uppercase;opacity:.7}.pos-reports-menu{position:relative}.pos-reports-popover{left:auto;right:0}.pos-topbar-title{color:var(--colour-heading);font-family:var(--font-serif);font-size:1.35rem;font-weight:600;white-space:nowrap}.pos-topbar-device{overflow:hidden;color:var(--colour-text);font-size:.85rem;opacity:.75;text-overflow:ellipsis;white-space:nowrap}.pos-topbar-search{flex:1;min-width:0;max-width:520px}.pos-topbar-search .pos-search{width:100%}.pos-topbar-status{display:flex;align-items:center;gap:8px}.pos-online-dot{width:10px;height:10px;border-radius:999px;background:#c9605c}.pos-topbar-connection{color:var(--colour-text);font-size:.85rem}.pos-queue-badge{border-radius:999px;padding:3px 10px;background:#fdf6e3;color:#7a5d1e;font-size:.78rem;font-weight:600}.pos-topbar-actions{display:flex;align-items:center;gap:12px}.pos-topbar-user{color:var(--colour-heading);font-weight:600;white-space:nowrap}.pos-refresh-btn{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border:1px solid var(--colour-border);border-radius:8px;padding:0;background:#fff;color:var(--colour-heading);transition:border-color .12s ease,background .12s ease}.pos-refresh-btn:hover:not(:disabled){border-color:var(--colour-accent-dark);background:var(--colour-band)}.pos-refresh-btn:disabled{opacity:.45}.pos-refresh-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.pos-topbar-btn{min-height:46px}.pos-exit-btn{border-color:#ddb9b7;background:snow;color:#8d3431}.pos-exit-btn:hover:not(:disabled){background:#f9e9e8}.pos-auth-exit{position:fixed;top:18px;right:18px;z-index:2;min-height:44px}.pos-main{display:grid;flex:1;grid-template-columns:minmax(0,1fr) 320px;gap:16px;min-height:0;padding:16px 20px 0}.pos-catalog{display:flex;flex-direction:column;gap:0;min-height:0}.pos-category-picker{display:flex;flex:1;flex-direction:column;gap:12px;min-height:0}.pos-category-picker-header,.pos-category-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;border:1px solid var(--colour-border);border-radius:12px;padding:9px 14px;background:#fff;box-shadow:0 2px 10px #17281f0d}.pos-category-picker-header>div:first-child{min-width:0}.pos-category-picker-header h2{margin:0;overflow:hidden;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.2rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.pos-category-picker-header p{margin:2px 0 0;color:var(--colour-text);font-size:.78rem;opacity:.75}.pos-category-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;color:var(--colour-text);font-size:.78rem}.pos-category-breadcrumb>span{display:inline-flex;align-items:center;gap:4px}.pos-category-breadcrumb button{border:0;padding:2px 3px;background:transparent;color:var(--colour-heading);font:inherit;text-decoration:underline;text-underline-offset:2px}.pos-category-breadcrumb button[aria-current=page]{font-weight:700;text-decoration:none}.pos-category-header-actions{display:flex;align-items:center;flex:0 0 auto;gap:10px}.pos-category-view-products,.pos-category-empty button,.pos-category-level-back{min-height:42px;border:1px solid var(--colour-accent-dark);border-radius:8px;padding:0 14px;background:var(--colour-accent);color:var(--colour-heading);font-size:.84rem;font-weight:700}.pos-category-view-products:hover,.pos-category-empty button:hover,.pos-category-level-back:hover{background:var(--colour-accent-dark)}.pos-category-level-back{background:#fff}.pos-category-pager{display:flex;align-items:center;gap:8px}.pos-category-pager button{width:46px;min-height:42px;border:1px solid var(--colour-accent-dark);border-radius:8px;background:color-mix(in srgb,var(--colour-accent) 22%,#ffffff);color:var(--colour-heading);font-size:1.15rem;font-weight:600}.pos-category-pager button:hover:not(:disabled){background:var(--colour-accent)}.pos-category-pager button:disabled{opacity:.35}.pos-category-pager span{min-width:48px;color:var(--colour-heading);font-size:.82rem;font-weight:600;text-align:center}.pos-category-grid{display:grid;flex:none;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:112px;align-content:start;gap:12px;min-height:0;margin-bottom:12px}.pos-category-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;border:1px solid var(--colour-border);border-radius:12px;padding:14px;background:#fff;text-align:center;overflow:hidden;transition:border-color .12s ease,box-shadow .12s ease,transform 80ms ease}.pos-category-tile:hover{border-color:var(--colour-accent-dark);box-shadow:var(--shadow-card);transform:translateY(-1px)}.pos-category-tile:active{transform:scale(.98)}.pos-category-tile.is-active{border-color:var(--colour-accent-dark);box-shadow:var(--shadow-card)}.pos-category-tile span{max-width:100%;overflow-wrap:anywhere;color:var(--colour-heading);font-size:1.02rem;font-weight:600;line-height:1.3}.pos-category-tile>span:first-child{display:-webkit-box;flex:0 1 auto;min-height:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis}.pos-category-tile small{max-width:100%;overflow:hidden;color:var(--colour-text);font-size:.75rem;font-weight:600;opacity:.75;text-overflow:ellipsis;white-space:nowrap}.pos-category-tile .pos-category-tile-arrow{position:absolute;right:15px;bottom:50%;font-size:2rem;font-weight:400;line-height:1;opacity:.55;transform:translateY(50%)}.pos-category-empty{display:grid;place-items:center;align-content:center;flex:1;gap:12px;min-height:220px;border:1px dashed var(--colour-border);border-radius:12px;color:var(--colour-text)}.pos-category-empty p{margin:0}.pos-category-back{min-height:44px;border:1px solid var(--colour-accent-dark);border-radius:8px;padding:0 16px;background:color-mix(in srgb,var(--colour-accent) 22%,#ffffff);color:var(--colour-heading);font-size:.9rem;font-weight:700}.pos-category-back:hover{background:var(--colour-accent)}.pos-category-summary{display:grid;flex:0 1 auto;gap:2px;min-width:150px;padding:0 4px 3px 0;text-align:right}.pos-category-summary strong{overflow:hidden;color:var(--colour-heading);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.pos-category-summary span{color:var(--colour-text);font-size:.78rem;opacity:.75}@media(max-width:600px){.pos-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:112px;overflow-y:auto}.pos-category-picker-header,.pos-category-nav{align-items:stretch;flex-direction:column;gap:8px}.pos-category-header-actions{justify-content:space-between}.pos-category-summary{display:flex;justify-content:space-between;min-width:0;padding:0 2px;text-align:left}}.pos-grid-wrap{flex:1;min-height:0;margin-top:12px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.pos-grid-note{padding:28px 0;text-align:center}.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-auto-rows:minmax(180px,auto);align-content:start;gap:12px}.pos-product-pagination{margin:0;border:1px solid var(--colour-border);border-radius:10px;padding:9px 12px;background:#fff}.pos-category-nav:has(+.pos-product-pagination){border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:none}.pos-category-nav+.pos-product-pagination{border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 2px 10px #17281f0d}.pos-product-pagination .product-pagination-size,.pos-product-pagination .product-pagination-summary,.pos-product-pagination .product-pagination-nav{font-size:.82rem}.pos-product-pagination .product-pagination-size select,.pos-product-pagination .product-pagination-nav .btn{min-height:40px}.pos-product-pagination .product-pagination-nav .btn{min-width:80px;padding:8px 12px}.pos-tile,.pos-line-main,.pos-line-tool,.pos-action-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pos-tile{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:180px;border:1px solid var(--colour-border);border-radius:12px;padding:18px;background:#fff;text-align:left;overflow:hidden;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}.pos-tile:hover{border-color:var(--colour-accent-dark);box-shadow:var(--shadow-card);transform:translateY(-1px)}.pos-tile:active{transform:scale(.98)}.pos-tile-category{align-self:flex-start;flex:0 0 auto;max-width:100%;overflow:hidden;border-radius:999px;padding:2px 10px;background:var(--colour-band);color:var(--colour-charcoal);font-size:.68rem;font-weight:600;letter-spacing:1.2px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.pos-tile-name{display:-webkit-box;flex:1 1 auto;min-width:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;color:var(--colour-heading);font-size:1.2rem;font-weight:600;line-height:1.3;text-overflow:ellipsis}.pos-tile-footer{display:flex;align-items:baseline;justify-content:flex-end;flex:0 0 auto;gap:8px}.pos-tile-stock{min-width:0;margin-right:auto;overflow:hidden;color:var(--colour-text);font-size:.9rem;opacity:.75;text-overflow:ellipsis;white-space:nowrap}.pos-tile-stock.is-out{color:#9c3535;font-weight:600;opacity:1}.pos-tile-price{flex:0 0 auto;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.5rem;font-weight:600;white-space:nowrap}.pos-grid-categories{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-auto-rows:minmax(116px,auto)}.pos-grid-categories+.pos-grid{margin-top:12px}.pos-tile-category-link{min-height:116px;padding:12px 14px;background:color-mix(in srgb,var(--colour-accent) 35%,#ffffff)}.pos-tile-category-link .pos-tile-name{font-size:1.05rem}.pos-cart{display:flex;flex-direction:column;min-height:0;border:1px solid var(--colour-border);border-radius:14px;background:#fff;box-shadow:var(--shadow-card);overflow:hidden}.pos-cart-header{border-bottom:1px solid var(--colour-border);padding:14px 18px;background:var(--colour-charcoal);color:#fff;font-size:.82rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.pos-tabbed-orders-bar{border-bottom:1px solid var(--colour-border);padding:10px 14px;background:var(--colour-band)}.pos-tabbed-orders-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:42px;border:1px solid var(--colour-accent-dark);border-radius:999px;padding:6px 8px 6px 16px;background:#fff;color:var(--colour-heading);font-size:.88rem;font-weight:700;letter-spacing:.2px}.pos-tabbed-orders-toggle:hover{background:color-mix(in srgb,var(--colour-accent) 22%,#ffffff)}.pos-tabbed-orders-toggle.is-close{justify-content:center;padding-left:12px}.pos-tabbed-orders-count,.pos-tabbed-orders-close-icon{display:inline-grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border:1px solid var(--colour-accent-dark);border-radius:999px;background:var(--colour-band);font-size:.8rem;font-variant-numeric:tabular-nums;line-height:1}.pos-tabbed-orders-close-icon{width:24px;height:24px;background:#fff;font-size:1.15rem}.pos-cart-lines{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px}.pos-cart-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:160px;margin:0;border:1px dashed var(--colour-money-back);border-radius:10px;padding:20px;color:var(--colour-text);font-family:var(--font-serif);font-size:1.15rem;font-style:italic;opacity:.8;text-align:center}.pos-tabbed-orders-list{display:grid;align-content:start;gap:10px}.pos-tabbed-order{display:grid;gap:8px;width:100%;border:1px solid var(--colour-border);border-radius:10px;padding:12px;background:#fff;color:var(--colour-heading);text-align:left;transition:border-color .12s ease,background .12s ease,transform .12s ease}.pos-tabbed-order:hover{border-color:var(--colour-accent-dark);background:var(--colour-band)}.pos-tabbed-order:active{transform:scale(.985)}.pos-tabbed-order-heading,.pos-tabbed-order-footer{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.pos-tabbed-order-heading strong{font-family:var(--font-serif);font-size:1.05rem}.pos-tabbed-order-heading time,.pos-tabbed-order-footer span,.pos-tabbed-order-items{color:var(--colour-text);font-size:.76rem}.pos-tabbed-order-heading time{white-space:nowrap}.pos-tabbed-order-items{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-tabbed-order-footer{border-top:1px solid var(--colour-border);padding-top:8px}.pos-tabbed-order-footer strong{color:var(--colour-heading);font-size:.95rem}.pos-line{border:1px solid var(--colour-border);border-radius:10px;padding:10px 12px;background:#fff}.pos-line+.pos-line{margin-top:10px}.pos-line.is-selected{border-color:var(--colour-accent-dark);background:var(--colour-band)}.pos-line-main{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;width:100%;border:0;padding:0;background:none;text-align:left}.pos-line-qty{min-width:24px;color:var(--colour-heading);font-weight:600;text-align:center}.pos-line-name{min-width:0;color:var(--colour-heading);font-weight:600;overflow-wrap:anywhere}.pos-line-name small{display:block;font-size:.8rem;font-weight:500;opacity:.7}.pos-line-total{color:var(--colour-heading);font-weight:600;white-space:nowrap}.pos-line-toolbar{display:flex;gap:6px;margin-top:10px}.pos-line-tool{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--colour-border);border-radius:8px;background:#fff;color:var(--colour-heading);font-size:.8rem;font-weight:700}.pos-line-tool:hover{background:var(--colour-accent)}.pos-line-tool svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pos-line-tool-danger{border-color:#e5b8b8;background:#fdf0f0;color:#9c3535}.pos-line-tool-danger:hover{background:#f6dcdc}.pos-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pos-modal-subtitle{color:var(--colour-heading);font-weight:600}.pos-product-modal{width:min(560px,100%)}.pos-product-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.pos-product-cancel{grid-column:1 / -1}.pos-btn-danger{border:1px solid #9c3535;background:#b23c3c;color:#fff}.pos-btn-danger:hover{background:#9c3535}.pos-save-check{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--colour-heading);font-size:.9rem}.pos-save-check input{width:20px;height:20px;accent-color:var(--colour-accent-dark)}.pos-cart-summary{border-top:1px solid var(--colour-border);padding:12px 18px}.pos-summary-row{display:flex;justify-content:space-between;color:var(--colour-heading);font-size:.95rem}.pos-summary-muted{color:var(--colour-text);opacity:.8}.pos-summary-total{display:flex;align-items:baseline;justify-content:space-between;margin-top:6px;border-top:1px solid var(--colour-border);padding-top:8px}.pos-summary-total span:first-child{color:var(--colour-charcoal);font-size:.8rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.pos-summary-amount{display:inline-flex;align-items:baseline;gap:12px}.pos-summary-count{color:var(--colour-text);font-size:.85rem;font-weight:600;opacity:.8;white-space:nowrap}.pos-summary-value{color:var(--colour-heading);font-family:var(--font-serif);font-size:1.9rem;font-weight:600;line-height:1}.pos-cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--colour-border);padding:12px 14px 14px}.pos-action-btn{min-height:56px;border:1px solid var(--colour-border);border-radius:10px;background:#fff;color:var(--colour-heading);font-size:.95rem;font-weight:600;transition:background .12s ease}.pos-action-btn:hover{background:var(--colour-band)}.pos-action-btn:disabled{cursor:not-allowed;opacity:.5}.pos-action-open-till{border-color:#dcc48e;background:#fdf6e3;color:#7a5d1e}.pos-action-open-till:hover:not(:disabled){background:#f7ecc9}.pos-action-tab{border-color:#b9cfe3;background:#eef4fb;color:#2c5279}.pos-action-tab:hover:not(:disabled){background:#ddeaf7}.pos-action-add{border-color:#b9d6c3;background:#eef6f0;color:#2f6c4c}.pos-action-add:hover:not(:disabled){background:#ddeee3}.pos-action-discount{border-color:#cfc2e6;background:#f3effa;color:#5b4a86}.pos-action-discount:hover:not(:disabled){background:#e8e0f4}.pos-action-danger{border-color:#e5b8b8;background:#fdf0f0;color:#9c3535}.pos-action-danger:hover{background:#f8e2e2}.pos-action-pay{border-color:var(--colour-accent-dark);background:var(--colour-accent);font-size:1.05rem}.pos-action-pay:hover{background:var(--colour-accent-dark)}.pos-toast{position:fixed;bottom:24px;left:50%;z-index:60;border-radius:10px;padding:12px 22px;color:#fff;font-weight:600;transform:translate(-50%);box-shadow:var(--shadow-card)}.pos-toast-info{background:var(--colour-charcoal)}.pos-toast-error{background:#9c3535}.pos-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:#2b2b2b99}.pos-modal-backdrop-top{z-index:70}.pos-modal{width:min(680px,100%);max-height:calc(100dvh - 40px);border:1px solid var(--colour-border);border-radius:14px;padding:22px;background:#fff;box-shadow:var(--shadow-card);overflow-y:auto}.pos-modal-small{width:min(440px,100%)}.pos-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pos-modal-title{margin:0 0 8px;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.6rem;font-weight:600}.pos-modal-close{width:44px;height:44px;border:0;border-radius:999px;background:var(--colour-band);color:var(--colour-heading);font-size:1rem}.pos-modal-text{margin:0 0 14px;color:var(--colour-text);font-size:.95rem}.pos-modal-hint{margin:12px 0 0;color:var(--colour-text);font-size:.82rem;opacity:.8}.pos-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px}.pos-modal-actions .btn{min-height:50px}.pos-form-fields{display:grid;gap:14px}.pos-inline-field{display:flex;gap:8px}.pos-inline-field input{flex:1;min-width:0}.pos-quick-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.pos-quick-btn{min-height:48px;border:1px solid var(--colour-border);border-radius:8px;padding:0 16px;background:#fff;color:var(--colour-heading);font-size:.95rem;font-weight:600}.pos-quick-btn:hover{background:var(--colour-band)}.pos-quick-btn.is-active{border-color:var(--colour-accent-dark);background:var(--colour-accent)}.pos-pay-modal{width:min(760px,100%);padding:14px 18px 16px}.pos-pay-modal .pos-modal-header{margin-bottom:8px}.pos-pay-modal .pos-modal-title{margin:0;font-size:1.3rem}.pos-pay-modal .pos-pay-main{gap:10px}.pos-pay-modal .pos-pay-entry{padding:10px 16px;font-size:2rem}.pos-pay-modal .pos-pay-keypad .pos-key{min-height:48px}.pos-pay-modal .pos-tender-btn{min-height:52px}.pos-pay-modal .pos-modal-actions{margin-top:10px}.pos-pay-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px}@media(max-width:720px){.pos-pay-grid{grid-template-columns:1fr}}.pos-pay-main{display:grid;gap:12px}.pos-pay-figures{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.pos-pay-figure{border:1px solid var(--colour-border);border-radius:10px;padding:10px;text-align:center}.pos-pay-figure-outstanding{border-color:var(--colour-accent-dark);background:color-mix(in srgb,var(--colour-accent) 30%,#ffffff)}.pos-pay-figure-change{border-color:#7fa87f;background:color-mix(in srgb,#9ed49e 30%,#ffffff)}.pos-pay-figure-label{display:block;color:var(--colour-charcoal);font-size:.72rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.pos-pay-figure-value{color:var(--colour-heading);font-family:var(--font-serif);font-size:1.5rem;font-weight:600}.pos-pay-entry{border:1px solid var(--colour-border);border-radius:10px;padding:14px 18px;background:var(--colour-charcoal);color:#fff;font-family:var(--font-serif);font-size:2.4rem;font-weight:600;line-height:1;text-align:right}.pos-pay-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pos-pay-keypad .pos-key{min-height:58px}.pos-vat-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--colour-border)}.pos-vat-label{margin:0 0 8px;color:var(--colour-heading);font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.pos-vat-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pos-vat-btn{min-height:48px;border:1px solid var(--colour-border);border-radius:12px;background:#fff;color:var(--colour-heading);font-size:1rem;font-weight:600;transition:background .12s ease,border-color .12s ease,transform .12s ease}.pos-vat-btn:hover:not(:disabled){background:var(--colour-band)}.pos-vat-btn:active:not(:disabled){transform:scale(.97)}.pos-vat-btn.is-selected{border-color:var(--colour-accent-dark);background:var(--colour-accent);box-shadow:inset 0 0 0 1px var(--colour-accent-dark)}.pos-pay-quick{display:flex;flex-wrap:wrap;gap:8px}.pos-pay-quick .pos-quick-btn{flex:1;min-width:72px}.pos-pay-tenders{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.pos-tender-btn{min-height:60px;border-radius:10px;font-size:1.1rem;font-weight:700}.pos-tender-cash{border:1px solid #a9cbb7;background:#e7f3ec;color:#2f6c4c}.pos-tender-cash:hover{background:#d6ecdf}.pos-tender-card{border:1px solid var(--colour-accent-dark);background:color-mix(in srgb,var(--colour-accent) 45%,#ffffff);color:#275b6b}.pos-tender-card:hover{background:var(--colour-accent)}.pos-tender-split{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #d3ab7f;background:#f7ecdd;color:#7a5a33;line-height:1.15}.pos-tender-split:hover:not(:disabled){background:var(--colour-warm)}.pos-tender-split:disabled{opacity:.5}.pos-tender-hint{font-size:.7rem;font-weight:600;opacity:.8}.pos-pay-side{display:flex;flex-direction:column;border:1px solid var(--colour-border);border-radius:10px;padding:12px}.pos-pay-side-label{margin-bottom:8px;color:var(--colour-charcoal);font-size:.72rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.pos-pay-list{flex:1;min-height:120px}.pos-pay-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:120px;margin:0;color:var(--colour-text);font-size:.9rem;opacity:.7}.pos-pay-line{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--colour-border);border-radius:8px;padding:8px 10px;font-size:.92rem;font-weight:600;color:var(--colour-heading)}.pos-pay-line+.pos-pay-line{margin-top:8px}.pos-pay-line-amount{display:inline-flex;align-items:center;gap:8px}.pos-pay-remove{width:34px;height:34px;border:0;border-radius:999px;background:#fdf0f0;color:#9c3535;font-size:.85rem}.pos-pay-change{display:flex;justify-content:space-between;margin-top:10px;border-top:1px solid var(--colour-border);padding-top:10px;color:var(--colour-heading);font-weight:700}.pos-complete-modal{width:min(460px,100%);text-align:center}.pos-complete-modal .pos-offline-banner{border:1px solid #e8d9b8;border-radius:8px;margin-bottom:10px}.pos-change-due{margin:14px 0 6px;border:1px solid var(--colour-accent-dark);border-radius:12px;padding:22px;background:color-mix(in srgb,var(--colour-accent) 30%,#ffffff)}.pos-change-label{display:block;color:var(--colour-charcoal);font-size:.8rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.pos-change-amount{color:var(--colour-heading);font-family:var(--font-serif);font-size:3.2rem;font-weight:600;line-height:1.15}.pos-complete-modal .pos-modal-actions{justify-content:center}.pos-z-screen{overflow:hidden}.pos-z-body{flex:1;min-height:0;overflow-y:auto;padding:20px}.pos-z-stack{display:grid;gap:18px;max-width:980px;margin:0 auto}.pos-z-card{border:1px solid var(--colour-border);border-radius:14px;padding:22px;background:#fff;box-shadow:var(--shadow-card)}.pos-z-heading{margin:0 0 14px;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.5rem;font-weight:600}.pos-z-heading-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.pos-z-heading-row .pos-z-heading{margin-bottom:4px}.pos-z-heading-actions{display:flex;gap:8px}.pos-z-subheading{margin:0 0 8px;color:var(--colour-charcoal);font-size:.8rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.pos-z-totals{display:grid;gap:16px}.pos-z-summary{border:1px solid var(--colour-border);border-radius:10px;overflow:hidden;background:var(--colour-band)}.pos-z-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 14px}.pos-z-summary-row+.pos-z-summary-row{border-top:1px solid var(--colour-border)}.pos-z-summary-label{color:var(--colour-charcoal);font-size:.9rem}.pos-z-summary-value{color:var(--colour-heading);font-variant-numeric:tabular-nums;font-weight:600;text-align:right;white-space:nowrap}.pos-z-summary-row.is-strong{background:#fff}.pos-z-summary-row.is-strong .pos-z-summary-label{color:var(--colour-heading);font-weight:600}.pos-z-summary-row.is-strong .pos-z-summary-value{font-family:var(--font-serif);font-size:1.35rem}.pos-z-summary-row.is-indent .pos-z-summary-label{padding-left:16px}.pos-z-table{width:100%;border:1px solid var(--colour-border);border-radius:10px;border-collapse:separate;border-spacing:0;overflow:hidden;font-size:.92rem}.pos-z-table th,.pos-z-table td{padding:10px 14px;text-align:left}.pos-z-table thead{background:var(--colour-band)}.pos-z-table tbody tr,.pos-z-table tbody td{border-top:1px solid var(--colour-border)}.pos-z-num{text-align:right!important}.pos-z-form{display:grid;gap:18px}.pos-z-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:640px){.pos-z-field-grid{grid-template-columns:1fr}}.pos-z-hint{color:var(--colour-text);font-size:.8rem;opacity:.8;text-transform:none;letter-spacing:normal}.pos-z-hint.is-error{color:#9c3535;opacity:1}.pos-z-payouts-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pos-z-payouts-header>span{color:var(--colour-charcoal);font-size:.8rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.pos-z-payout-rows{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pos-z-payout-rows li{display:flex;gap:8px}.pos-z-payout-rows li input:first-child{flex:1;min-width:0}.pos-z-payout-amount{width:130px}.pos-z-reconcile{border:1px solid var(--colour-border);border-radius:10px;padding:16px;background:var(--colour-band)}.pos-z-cashup{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px 20px;margin:0}.pos-z-term{color:var(--colour-charcoal);font-size:.7rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase}.pos-z-value{margin:2px 0 0;color:var(--colour-heading);font-weight:600}.pos-z-variance-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-top:12px;border-top:1px solid var(--colour-border);padding-top:12px}.pos-z-variance{font-family:var(--font-serif);font-size:1.35rem;font-weight:600}.pos-variance-balanced{color:#2f6c4c}.pos-variance-over{color:#a8791d}.pos-variance-short{color:#9c3535}.pos-z-submit{display:flex;justify-content:flex-end}.pos-z-submit .btn{min-height:54px}.pos-z-payout-list{display:grid;gap:0;margin:0;padding:0;border:1px solid var(--colour-border);border-radius:10px;list-style:none;overflow:hidden}.pos-z-payout-list li{display:flex;justify-content:space-between;padding:8px 14px;font-size:.92rem}.pos-z-payout-list li+li{border-top:1px solid var(--colour-border)}.pos-z-notes{margin:0;color:var(--colour-text);font-size:.92rem;white-space:pre-wrap}.pos-display{display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding:40px;background:#35393b;background-image:radial-gradient(circle at 50% 20%,#43484a,#35393b 60%);color:#f5f6f7}.pos-display-centered{align-items:center;justify-content:center;gap:8px;text-align:center}.pos-display-brand{display:flex;flex-direction:column;align-items:center;gap:18px}.pos-display-brand-sm{flex-direction:row;gap:12px}.pos-display-logo{filter:invert(1);object-fit:contain}.pos-display-logo-lg{width:min(80vw,640px);max-height:32vh}.pos-display-logo-sm{height:56px;width:auto}.pos-display-tagline{margin:26px 0 0;color:#f5f6f7a6;font-family:var(--font-serif);font-size:1.5rem;font-style:italic}.pos-display-welcome{margin:30px 0 0;font-family:var(--font-serif);font-size:clamp(2rem,5vw,3.4rem);font-weight:600}.pos-display-subtitle{margin:10px 0 0;color:var(--colour-accent);font-size:1rem;letter-spacing:5px;text-transform:uppercase}.pos-display-order{gap:0}.pos-display-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:22px}.pos-display-lines-wrap{display:flex;flex:1;flex-direction:column;min-height:0;padding-top:26px}.pos-display-order-label{margin-bottom:14px;color:var(--colour-accent);font-size:.85rem;font-weight:600;letter-spacing:5px;text-transform:uppercase}.pos-display-lines{flex:1;min-height:0;margin:0;padding:0 8px 0 0;list-style:none;overflow-y:auto}.pos-display-lines li{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(255,255,255,.08);padding:18px 0}.pos-display-line-name{font-family:var(--font-serif);font-size:clamp(1.4rem,3vw,2.2rem);font-weight:600}.pos-display-line-qty{color:var(--colour-accent)}.pos-display-line-amount{font-family:var(--font-serif);font-size:clamp(1.4rem,3vw,2.2rem);font-variant-numeric:tabular-nums;white-space:nowrap}.pos-display-footer{display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid var(--colour-accent);margin-top:20px;padding-top:26px}.pos-display-total-label{color:var(--colour-accent);font-size:1.1rem;font-weight:600;letter-spacing:6px;text-transform:uppercase}.pos-display-total{font-family:var(--font-serif);font-size:clamp(3rem,8vw,5.5rem);font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.pos-sales-backdrop{padding:0}.pos-sales-modal{display:flex;flex-direction:column;width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:18px 26px 22px}.pos-sales-header-actions{display:flex;gap:10px}.pos-sales-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;border-bottom:1px solid var(--colour-border);padding-bottom:10px}.pos-sales-tab{border:1px solid transparent;border-radius:8px;padding:8px 14px;background:transparent;color:var(--colour-text);font:inherit;font-weight:600;cursor:pointer}.pos-sales-tab:hover{background:var(--colour-band)}.pos-sales-tab.is-active{border-color:var(--colour-accent-dark);background:color-mix(in srgb,var(--colour-accent) 30%,#ffffff);color:var(--colour-heading)}.pos-sales-filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--colour-border);border-radius:12px;margin-top:12px;padding:10px 12px;background:var(--colour-band)}.pos-sales-filterbar input,.pos-sales-filterbar select{min-height:42px;border:1px solid var(--colour-border);border-radius:8px;padding:6px 10px;background:#fff;color:var(--colour-text);font:inherit}.pos-sales-filterbar input:focus,.pos-sales-filterbar select:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:0}.pos-sales-search{flex:1;min-width:180px}.pos-sales-datenav{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--colour-border);border-radius:8px;padding:2px;background:#fff}.pos-sales-datenav span{min-width:92px;padding:0 6px;color:var(--colour-heading);font-weight:600;text-align:center;white-space:nowrap}.pos-sales-datenav button{min-width:36px;min-height:36px;border:0;border-radius:6px;background:transparent;color:var(--colour-heading);font-size:1.2rem;cursor:pointer}.pos-sales-datenav button:hover{background:var(--colour-band)}.pos-sales-paytoggle{display:inline-flex;gap:2px;border:1px solid var(--colour-border);border-radius:8px;padding:2px;background:#fff}.pos-sales-paytoggle button{min-height:36px;border:0;border-radius:6px;padding:0 12px;background:transparent;color:var(--colour-text);font:inherit;font-weight:600;white-space:nowrap;cursor:pointer}.pos-sales-paytoggle button.is-active{background:var(--colour-charcoal);color:#fff}.pos-sales-empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;margin-top:14px;color:var(--colour-heading);text-align:center}.pos-sales-empty p{margin:0;color:var(--colour-text);font-size:.9rem}.pos-sales-empty-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;margin-bottom:8px;background:var(--colour-band)}.pos-sales-empty-icon svg{width:30px;height:30px;fill:none;stroke:var(--colour-charcoal);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.pos-sale-source{border-radius:6px;padding:1px 8px;background:var(--colour-band);color:var(--colour-charcoal);font-size:.72rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.pos-sale-source.is-website{background:#e6eef7;color:#2c5279}.pos-sale-refunded.is-pending{background:#fdf6e3;color:#7a5d1e}.pos-sales-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pos-sales-header .pos-modal-title{margin-bottom:0}.pos-sales-header .btn{min-height:44px}.pos-sales-results{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-top:12px;color:var(--colour-text);font-size:.9rem}.pos-sales-results strong{color:var(--colour-heading);font-size:1.05rem}.pos-sales-list{display:grid;flex:1;align-content:start;gap:0;border:1px solid var(--colour-border);border-radius:12px;margin-top:8px;background:#fff;box-shadow:var(--shadow-card);overflow-y:auto}.pos-sale-row{display:flex;align-items:center;gap:14px;padding:14px 18px;transition:background-color .12s ease}.pos-sale-row:hover{background:color-mix(in srgb,var(--colour-band) 55%,#ffffff)}.pos-sale-row+.pos-sale-row{border-top:1px solid var(--colour-border)}.pos-sale-row-main{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.pos-sale-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;color:var(--colour-heading)}.pos-sale-heading time{color:var(--colour-text);font-size:.85rem}.pos-sale-refunded{border-radius:6px;padding:1px 8px;background:#f6e3e2;color:#9c3535;font-size:.75rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.pos-modal-title .pos-sale-refunded{margin-left:10px;vertical-align:middle}.pos-sale-row.is-refunded .pos-sale-row-main,.pos-sale-row.is-refunded .pos-sale-total{opacity:.55}.pos-sale-row.is-refunded .pos-sale-refunded{opacity:1}.pos-sale-detail{color:var(--colour-text);font-size:.85rem}.pos-sale-total{color:var(--colour-heading);font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.pos-sale-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.pos-sale-action-btn{min-height:44px;white-space:nowrap}.pos-sale-action-btn.is-print{border-color:#b9cfe3;background:#eef4fb;color:#2c5279}.pos-sale-action-btn.is-print:hover:not(:disabled){background:#ddeaf7}.pos-sale-action-btn.is-refund{border-color:#dcc48e;background:#fdf6e3;color:#7a5d1e}.pos-sale-action-btn.is-refund:hover:not(:disabled){background:#f7ecc9}.pos-receipt-modal{display:flex;flex-direction:column;width:min(420px,100%)}.pos-receipt-frame-wrap{display:flex;flex:1;justify-content:center;min-height:0;border:1px solid var(--colour-border);border-radius:10px;padding:14px;background:var(--colour-band);overflow-y:auto}.pos-receipt-frame{width:312px;height:min(58vh,620px);flex:none;border:0;border-radius:4px;background:#fff;box-shadow:var(--shadow-card)}@media(max-width:640px){.pos-sale-row{flex-wrap:wrap}.pos-receipt-frame{width:100%}}@media(max-width:960px){.pos-main{grid-template-columns:1fr;overflow-y:auto}.pos-screen{overflow-y:auto}.pos-cart{min-height:420px}}.pos-size-modal{width:min(760px,100%)}.pos-size-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.pos-size-option{display:grid;min-height:120px;align-content:space-between;gap:6px;border:1px solid var(--colour-border);border-radius:12px;padding:16px;background:#fff;color:var(--colour-heading);text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.pos-size-option:hover{border-color:var(--colour-accent-dark);box-shadow:var(--shadow-card)}.pos-size-option:active{transform:scale(.98)}.pos-size-option-name{overflow-wrap:anywhere;font-size:1.2rem;font-weight:600;line-height:1.25}.pos-size-option-price{font-family:var(--font-serif);font-size:1.5rem;font-weight:600}.pos-size-option-stock{color:var(--colour-text);font-size:.9rem;opacity:.75}.pos-size-option.is-out .pos-size-option-stock{color:#9c3535;font-weight:600;opacity:1}.pos-tile-sizes{font-weight:600;opacity:.9}.pos-tile-price small{font-family:var(--font-sans);font-size:.8rem;font-weight:500}:root{--colour-page: #ffffff;--colour-band: #f5f6f7;--colour-accent: #a8d4e2;--colour-accent-dark: #8ac3d5;--colour-charcoal: #4b4b4b;--colour-money-back: #cfcfcf;--colour-text: #4a4a4a;--colour-heading: #3a3a3a;--colour-warm: #e5c8a8;--colour-border: #e5e8ea;--colour-brand: #2d6a4f;--colour-brand-dark: #1f4d38;--colour-brand-soft: #eaf3ee;--shadow-card: 0 18px 40px rgba(43, 43, 43, .1);--font-serif: "Cormorant Garamond", Georgia, serif;--font-sans: "Poppins", Arial, sans-serif;--admin-content-padding: clamp(16px, 3vw, 48px)}*{box-sizing:border-box}body{margin:0;background:var(--colour-page);color:var(--colour-text);font-family:var(--font-sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.container{width:min(1100px,calc(100% - 32px));margin-inline:auto}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.link-button{border:0;padding:0;background:none;color:inherit;font:inherit;text-decoration:underline}.section{padding:76px 0}.section-band{background:var(--colour-band)}.section-heading{margin:0 0 28px;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(2rem,5vw,3.2rem);font-weight:500;line-height:1}.section-heading:after{content:"";display:block;width:58px;height:3px;margin-top:16px;background:var(--colour-accent)}.eyebrow{margin:0 0 8px;color:var(--colour-charcoal);font-size:.78rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.btn{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border:0;border-radius:4px;padding:0 20px;background:transparent;color:var(--colour-heading);font-size:.78rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;transition:background .16s ease,transform .16s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-accent{background:var(--colour-accent)}.btn-accent:hover:not(:disabled){background:var(--colour-accent-dark)}.btn-secondary{border:1px solid var(--colour-border);background:#fff}.btn-danger{border:1px solid #b42318;background:#b42318;color:#fff}.btn-danger:hover:not(:disabled){background:#8f1c13}.btn-brand{background:var(--colour-brand);color:#fff}.btn-brand:hover:not(:disabled){background:var(--colour-brand-dark)}.btn-outline-brand{border:1px solid var(--colour-brand);background:transparent;color:var(--colour-brand)}.btn-outline-brand:hover{background:var(--colour-brand-soft)}.site-header{position:relative;z-index:20;background:#fff}.announcement-bar{background:var(--colour-brand-dark);color:#fff}.announcement-bar p{margin-block:0;padding:9px 0;font-size:.82rem;font-weight:500;letter-spacing:.4px;line-height:1.4;text-align:center}.header-main{border-bottom:1px solid var(--colour-border)}.header-inner{display:flex;min-height:124px;align-items:center;gap:32px}.brand{display:inline-flex;flex:none;align-items:center;gap:12px;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.55rem;font-weight:600}.brand-logo{display:block;width:auto;height:84px}.header-search{position:relative;display:flex;flex:1 1 auto;min-width:180px;max-width:560px;margin-inline:auto}.header-search input{width:100%;min-height:48px;border:1px solid var(--colour-border);border-radius:999px;padding:0 56px 0 22px;background:var(--colour-band);color:var(--colour-text)}.header-search input:focus{outline:2px solid var(--colour-brand);outline-offset:1px;background:#fff}.header-search-submit{position:absolute;top:5px;right:5px;display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border:0;border-radius:50%;padding:0;background:var(--colour-brand);color:#fff}.header-search-submit:hover{background:var(--colour-brand-dark)}.header-search-submit svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2}.header-actions{display:flex;flex:none;align-items:center;gap:22px}.header-action{display:inline-flex;align-items:center;gap:8px;border:0;padding:0;background:transparent;color:var(--colour-heading);font-size:.86rem;font-weight:500;white-space:nowrap}.header-action:hover,.header-action.active{color:var(--colour-brand)}.header-action svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.header-cart-icon,.header-basket-block{position:relative;display:inline-flex}.header-basket-expiry{position:absolute;z-index:1;bottom:100%;left:calc(50% + 16.5px);transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:2px 6px;border:1px solid #d7e5da;border-radius:999px;background:#eef5ef;color:#315b3c;font-size:.66rem;font-weight:600;line-height:1.2;white-space:nowrap}.header-basket-expiry [role=timer]{font-variant-numeric:tabular-nums}.header-basket-expiry:hover{border-color:var(--colour-brand)}.header-basket-expiry:focus-visible{outline:2px solid var(--colour-brand);outline-offset:3px}.header-basket-expiry.is-urgent{background:#fff5e6;border-color:#edd2a9;color:#794a0c}.header-basket-expiry.is-expired{background:#f8eeee;border-color:#e8cccc;color:#8b3434}.mobile-menu-icons .header-basket-expiry{bottom:calc(100% + 2px)}.mobile-menu-top.has-basket-expiry{padding-top:26px}.cart-badge{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;border-radius:999px;background:var(--colour-accent);color:var(--colour-heading);font-size:.75rem}.header-cart-icon .cart-badge,.header-icon-link .cart-badge{position:absolute;top:-7px;right:-10px;min-width:18px;height:18px;padding:0 4px;background:var(--colour-brand);color:#fff;font-size:.66rem;font-weight:600}.header-icon-link .cart-badge{top:1px;right:0}.nav-toggle,.header-icon-link{display:inline-flex;align-items:center;justify-content:center;border:0;padding:0;background:transparent;color:var(--colour-heading)}.nav-toggle{display:none;width:44px;height:44px;margin-left:-10px}.nav-toggle svg,.header-icon-link svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.header-icon-link{position:relative;width:42px;height:42px}.category-nav{position:relative;border-bottom:1px solid var(--colour-border);background:#fff}.category-nav>.container{width:min(1320px,calc(100% - 32px))}.category-nav-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;column-gap:24px;margin:0;padding:0;list-style:none}.category-nav-item{position:static}.category-nav-link{position:relative;display:inline-flex;align-items:center;gap:6px;padding:15px 0;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.04rem;font-weight:600;line-height:1.2}.category-nav-link:after{content:"";position:absolute;right:0;bottom:9px;left:0;height:2px;background:var(--colour-brand);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.category-nav-link:hover:after,.category-nav-link.active:after,.category-nav-item.has-dropdown:not(.is-dismissed):hover>.category-nav-link:after,.category-nav-item.has-dropdown:not(.is-dismissed):focus-within>.category-nav-link:after{transform:scaleX(1)}.category-nav-link:hover,.category-nav-link.active{color:var(--colour-brand)}.category-nav-caret{width:11px;height:11px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}.mega-menu{position:absolute;top:100%;right:0;left:0;z-index:30;visibility:hidden;border-top:1px solid var(--colour-border);background:#fff;box-shadow:0 24px 40px #2b2b2b1f;opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}.category-nav-item:not(.is-dismissed):hover>.mega-menu,.category-nav-item:not(.is-dismissed):focus-within>.mega-menu{visibility:visible;opacity:1;transform:none;transition-delay:0s}.mega-menu-inner{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:40px;padding:28px 0 34px}.mega-menu-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-content:start;gap:22px 32px}.mega-menu-heading{display:block;margin-bottom:8px;color:var(--colour-heading);font-size:.95rem;font-weight:600}.mega-menu-links{display:grid;gap:6px;margin:0;padding:0;list-style:none}.mega-menu-links a{color:var(--colour-text);font-size:.9rem}.mega-menu-heading:hover,.mega-menu-links a:hover,.mega-menu-feature:hover{color:var(--colour-brand)}.mega-menu-feature{display:grid;align-content:start;gap:10px;color:var(--colour-heading);font-size:.9rem;font-weight:600}.mega-menu-feature-media{display:block;overflow:hidden;border-radius:10px;background:var(--colour-brand-soft);aspect-ratio:1}.mega-menu-feature-media img{width:100%;height:100%;object-fit:cover}.mega-menu-feature-media img.is-placeholder{padding:18%;object-fit:contain;opacity:.45}.mobile-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#2b2b2b73;animation:catalogue-backdrop-in .2s ease both}.mobile-menu{position:fixed;inset:0 auto 0 0;z-index:61;display:flex;width:min(400px,92vw);height:100vh;height:100dvh;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;background:#fff;box-shadow:18px 0 48px #2b2b2b47;animation:catalogue-drawer-in .26s cubic-bezier(.22,.61,.36,1) both}.mobile-menu-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--colour-border)}.mobile-menu-top .brand-logo{height:46px}.mobile-menu-close{width:40px;height:40px;border:0;border-radius:50%;padding:0;background:transparent;color:var(--colour-heading);font-size:1.9rem;line-height:1}.mobile-menu-close:hover{background:color-mix(in srgb,var(--colour-accent) 20%,#ffffff)}.mobile-menu-icons{display:flex;align-items:center;gap:2px}.mobile-menu-nav{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.mobile-menu-list{margin:0;padding:0;list-style:none}.mobile-menu-list a,.mobile-menu-button{display:flex;width:100%;align-items:center;gap:10px;border:0;border-bottom:1px solid var(--colour-border);padding:15px 20px;background:transparent;color:var(--colour-text);font-family:var(--font-serif);font-size:1.12rem;font-weight:500;line-height:1.2;text-align:left}.mobile-menu-list a.active{background:color-mix(in srgb,var(--colour-accent) 25%,#ffffff);box-shadow:inset 3px 0 0 var(--colour-accent-dark);color:var(--colour-heading);font-weight:700}.mobile-menu-tree .category-tree-select{padding:15px 20px;font-size:1.12rem}.mobile-menu-tree .category-tree-children .category-tree-select{font-size:1.02rem}.mobile-menu-section{margin:24px 20px 6px;color:var(--colour-muted, #77736d);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mobile-menu-note{margin:14px 20px;color:var(--colour-muted, #77736d);font-size:.85rem}@media(max-width:1100px){.brand-logo{height:70px}.header-inner{gap:24px}.header-actions{gap:16px}.header-basket-expiry{left:50%}.header-action-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(max-width:900px){.header-inner.has-basket-expiry{padding-top:24px}.header-basket-expiry{bottom:calc(100% + 2px)}.announcement-bar p{padding:6px 0;font-size:.74rem}.header-inner{display:grid;grid-template-areas:"toggle brand actions" "search search search";grid-template-columns:44px minmax(0,1fr) auto;min-height:0;gap:8px 12px;padding:10px 0 12px}.nav-toggle{display:inline-flex;grid-area:toggle}.header-main .brand{grid-area:brand;justify-self:center}.brand-logo{height:52px}.header-actions{grid-area:actions;gap:4px}.header-action{width:40px;height:40px;justify-content:center}.header-action-text{display:none}.header-search{grid-area:search;max-width:none;min-width:0;margin:0}.header-search input{min-height:44px}.category-nav{display:none}}@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-backdrop{animation:none}.mega-menu,.category-nav-link:after{transition:none}}.site-footer{border-top:1px solid var(--colour-border);background:#fff}.footer-brand-row{display:flex;align-items:center;gap:18px;padding:44px 0}.footer-brand-row h2{margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:2rem;font-weight:500}.footer-gallery,.gallery-strip{display:grid;grid-template-columns:repeat(5,1fr)}.footer-gallery .placeholder-image,.gallery-strip .placeholder-image{width:100%;height:190px;object-fit:cover}.placeholder-image{border-radius:6px;object-fit:cover}.page-shell{padding:54px 0 76px}.page-title{margin:0 0 28px;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(2.2rem,6vw,4rem);font-weight:500;line-height:1}.form-panel,.empty-state{max-width:520px;padding:28px;border:1px solid var(--colour-border);border-radius:6px;background:#fff;box-shadow:var(--shadow-card)}.form-grid{display:grid;gap:16px}.basket-code-form{display:flex;align-items:end;gap:16px;max-width:650px;margin:24px 0}.basket-code-form .field{flex:1}.basket-staff-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.basket-product-list{display:grid;gap:12px;max-height:650px;overflow:auto}.basket-product-choice,.basket-selection{display:grid;gap:10px;padding:16px;border:1px solid var(--colour-border);border-radius:6px}.basket-product-choice button{text-align:left;padding:12px;border:1px solid var(--colour-border);border-radius:4px;background:#fff;cursor:pointer}.basket-product-choice button:disabled{opacity:.5;cursor:default}.basket-share{padding:24px;margin-bottom:24px;border:1px solid var(--colour-border);border-radius:6px;background:#eef5ef}.basket-share code{display:block;font-size:clamp(1rem,3vw,1.7rem);overflow-wrap:anywhere;letter-spacing:.08em}.basket-history{margin-top:24px}.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;margin-top:24px}.offer-card{display:grid;gap:16px;align-content:start}.offer-price{font-size:1.7rem;color:var(--colour-heading)}.offer-label{color:#365f40;font-size:.9rem}.offer-feedback{padding:16px;background:#eef5ef;border-radius:6px}.offer-checkbox{display:flex;align-items:center;gap:10px}.offer-checkbox input{width:20px;height:20px}.offer-actions{display:flex;flex-wrap:wrap;gap:8px}.offer-actions button{padding:10px 14px;border:1px solid var(--colour-border);background:#fff;border-radius:4px;cursor:pointer}.selected-bundle{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 0}.original-price{color:#6b6b6b;font-size:.9rem}.basket-history-row{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--colour-border)}.basket-history-actions{display:flex;flex-wrap:wrap;gap:12px}.basket-history-row code{overflow-wrap:anywhere}@media(max-width:760px){.basket-staff-layout{grid-template-columns:1fr}.basket-code-form,.basket-history-row{flex-direction:column;align-items:stretch}}.field{display:grid;min-width:0;gap:7px;color:var(--colour-heading);font-size:.9rem;font-weight:500}.vat-rate-input{display:flex;gap:8px;width:100%}.vat-rate-input select,.vat-rate-input input{flex:1;min-width:0}.field input,.field select,.field textarea{width:100%;border:1px solid var(--colour-border);border-radius:4px;padding:11px 12px;background:#fff;color:var(--colour-text)}.field textarea{min-height:110px;resize:vertical}.error-message{color:#9a3412;font-weight:500;overflow-wrap:anywhere}.success-message{color:#166534;font-weight:500;overflow-wrap:anywhere}.field-hint{margin:-6px 0 0;color:var(--colour-muted, #8a8a8a);font-size:.85rem}.field-qualifier{color:var(--colour-muted, #8a8a8a);font-size:.82em;font-weight:500}.image-preview{width:100%;max-height:200px;object-fit:cover;border-radius:6px;border:1px solid var(--colour-border, #e5e7eb)}.stock-low{color:#b45309;font-weight:600}.stock-badge{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;background:#fde68a;color:#92400e;font-size:.66rem;font-weight:700;letter-spacing:.5px;vertical-align:middle}.product-form.is-editing{box-shadow:0 0 0 2px var(--colour-accent, #a8d4e2)}.product-form-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:16px;padding-right:42px}.product-form-header h2{max-width:100%;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-form-header>div{min-width:0;overflow:hidden}.product-form-thumb{width:56px;height:56px;object-fit:cover;border-radius:6px;border:1px solid var(--colour-border, #e5e7eb)}.field-row{display:grid;grid-template-columns:1fr 1fr;min-width:0;align-items:start;gap:16px}.field-label{display:block;margin-bottom:6px;font-weight:500}.image-field{display:grid;gap:12px;padding:16px;border:1px solid var(--colour-border, #e5e7eb);border-radius:8px;background:var(--colour-surface, #f6f7f8)}.image-preview-wrap{display:grid;gap:10px;justify-items:start}.image-extra-list{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none}.image-extra-item{display:grid;gap:6px;justify-items:center}.image-extra-item img{width:84px;height:84px;border:1px solid var(--colour-border);border-radius:8px;object-fit:cover}.image-extra-actions{display:grid;gap:4px}.image-empty{display:flex;align-items:center;justify-content:center;width:100%;height:120px;border:1px dashed var(--colour-border, #cfcfcf);border-radius:6px;color:var(--colour-muted, #8a8a8a);font-size:.85rem}.btn-small{padding:4px 12px;font-size:.7rem}.products-heading{display:flex;align-items:baseline;gap:12px}.products-count{color:var(--colour-muted, #8a8a8a);font-size:.85rem}.row-thumb{display:block;width:40px;height:40px;object-fit:cover;border-radius:5px}.row-thumb-empty{background:var(--colour-surface, #f0f1f2);border:1px solid var(--colour-border, #e5e7eb)}.is-editing-row{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 22%,transparent)}@media(max-width:560px){.field-row{grid-template-columns:1fr}}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-items:start;gap:24px}.product-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;color:var(--colour-text)}.product-pagination-size{display:flex;align-items:center;gap:9px;color:var(--colour-heading);font-size:.9rem;font-weight:600}.product-pagination-size select{min-height:40px;border:1px solid var(--colour-border);border-radius:6px;padding:7px 30px 7px 10px;background:#fff;color:var(--colour-text);font:inherit}.product-pagination-size select:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:1px}.product-pagination-summary{color:var(--colour-muted, #6e6b65);font-size:.9rem}.product-pagination-nav{display:flex;align-items:center;gap:10px}.product-pagination-nav>span{min-width:92px;text-align:center}.product-pagination-nav .btn{min-width:92px}.product-pagination-nav .btn:disabled{cursor:not-allowed;opacity:.45}@media(max-width:620px){.product-pagination,.product-pagination-nav{width:100%}.product-pagination-summary{margin-left:auto}.product-pagination-nav .btn{flex:1}}.product-card{position:relative;display:flex;height:505px;flex-direction:column;overflow:hidden;border:1px solid var(--colour-border);border-radius:6px;background:#fff;box-shadow:0 12px 30px #2b2b2b14}.product-bundle-badge{position:absolute;z-index:2;top:4px;right:8px;display:inline-flex;align-items:center;min-height:44px;max-width:calc(100% - 16px)}.product-bundle-badge>span{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #d2e2d5;border-radius:999px;background:#f1f7f0;color:var(--colour-brand-dark);box-shadow:0 2px 8px #0000000d;font-size:.7rem;font-weight:600;line-height:1.4}.product-bundle-badge:hover>span{border-color:var(--colour-brand);background:#fff}.product-bundle-badge:focus-visible{outline:2px solid var(--colour-brand-dark);outline-offset:2px;border-radius:999px}.product-bundle-badge svg{flex:none}.offer-card.is-highlighted{border-color:var(--colour-brand);box-shadow:0 0 0 3px var(--colour-brand-soft)}.offer-card{scroll-margin-block:24px}.offer-card:focus-visible{outline:2px solid var(--colour-brand);outline-offset:3px}.bundle-product-filter{padding:12px 16px;border:1px solid var(--colour-border);border-radius:6px;background:var(--colour-brand-soft);font-size:.85rem}.bundle-product-filter a{color:var(--colour-brand-dark);text-decoration:underline;text-underline-offset:3px}.bundle-deals-page{padding-top:36px}.bundle-deals-heading{max-width:720px;margin-bottom:30px}.bundle-deals-heading .page-title{margin-bottom:14px}.bundle-deals-heading>p:last-child{margin:0;color:#626b64;font-size:.9rem}.bundle-deals-list{display:grid;gap:30px}.bundle-deal-card.offer-card{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:0;align-content:stretch;overflow:hidden;border:1px solid var(--colour-border);border-radius:8px;background:#fff}.bundle-deal-card.offer-card.is-highlighted{border-color:var(--colour-brand)}.bundle-deal-contents{min-width:0;padding:26px}.bundle-deal-heading{margin-bottom:24px}.bundle-deal-heading .eyebrow{margin:0 0 8px;color:#58705d;font-size:.65rem}.bundle-deal-heading h2{margin:0 0 8px;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(1.9rem,3vw,2.4rem);font-weight:500;line-height:1.1;overflow-wrap:anywhere}.bundle-deal-heading>p:last-child{margin:0;color:#687068;font-size:.8rem}.bundle-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}.bundle-product-grid.is-single{grid-template-columns:minmax(0,1fr);max-width:420px}.bundle-product{min-width:0}.bundle-product-link{display:block;border-radius:6px}.bundle-product-photo{position:relative;overflow:hidden;border-radius:6px;background:#f5f6f3;aspect-ratio:4 / 3}.bundle-product-image{display:block;width:100%;height:100%;object-fit:cover}.bundle-product-quantity{position:absolute;left:10px;bottom:10px;border:1px solid #ffffffb3;border-radius:999px;padding:4px 10px;background:#fffffff0;color:var(--colour-heading);font-size:.68rem;font-weight:500}.bundle-product h3{margin:14px 0 6px;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.5rem;font-weight:500;line-height:1.15;overflow-wrap:anywhere}.bundle-product-link:hover h3{color:var(--colour-brand-dark);text-decoration:underline;text-underline-offset:3px}.bundle-product-link:focus-visible,.bundle-product-details:focus-visible,.bundle-cart-link:focus-visible,.bundle-text-button:focus-visible{outline:2px solid var(--colour-brand);outline-offset:4px}.bundle-product-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0;color:#626963;font-size:.78rem;line-height:1.6}.bundle-product-size{margin:4px 0 0;color:var(--colour-brand-dark);font-size:.75rem}.bundle-product-price{margin:10px 0 0;color:var(--colour-heading);font-size:.8rem;font-variant-numeric:tabular-nums}.bundle-product-price>span{display:block;color:#737973;font-size:.68rem}.bundle-product-details{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 0;color:var(--colour-brand-dark);font-size:.75rem;text-decoration:underline;text-underline-offset:3px}.bundle-deal-summary{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-width:0;padding:30px 24px;border-left:1px solid var(--colour-border);background:#f7f8f5}.bundle-deal-price>span{display:block;color:#5c675e;font-size:.8rem}.bundle-deal-price strong{display:block;margin-top:6px;color:var(--colour-heading);font-size:2.3rem;font-weight:500;line-height:1.15;font-variant-numeric:tabular-nums}.bundle-deal-comparison p{margin:0 0 10px;color:#6b736c;font-size:.75rem}.bundle-deal-comparison del{font-variant-numeric:tabular-nums}.bundle-deal-saving{display:inline-flex;padding:4px 10px;border:1px solid #d5e5d9;border-radius:999px;background:var(--colour-brand-soft);color:var(--colour-brand-dark);font-size:.75rem;font-weight:500}.bundle-deal-note,.bundle-deal-expiry{margin:0;color:#687068;font-size:.78rem}.bundle-deal-expiry{padding-top:16px;border-top:1px solid #dfe5dc;font-size:.72rem}.bundle-deal-summary .btn{width:100%;min-height:46px;margin-top:auto;padding-inline:12px;font-size:.72rem;letter-spacing:1px}.bundle-cart-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;margin-top:-10px;color:var(--colour-brand-dark);font-size:.75rem;text-align:center;text-decoration:underline;text-underline-offset:3px}.bundle-details-note{margin:18px 0 0;color:#687068;font-size:.78rem}.bundle-details-error{margin-top:16px;padding:14px;border:1px solid #ead9b7;border-radius:4px;background:#fffaf0;color:#795c29;font-size:.8rem}.bundle-details-error p{margin:0}.bundle-text-button{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;border:0;background:none;color:inherit;font-size:.75rem;text-decoration:underline;text-underline-offset:3px}.bundle-stock-notice{margin:0;color:#795c29;font-size:.78rem}.bundle-added-note{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 24px;padding:16px 20px;border:1px solid #d5e5d9;border-radius:6px;background:var(--colour-brand-soft);color:var(--colour-brand-dark);font-size:.85rem}.bundle-added-note a{text-decoration:underline;text-underline-offset:3px}.bundle-deals-more{display:grid;justify-items:center;gap:12px;margin-top:30px}.bundle-deals-more p,.bundle-deals-assurance{margin:0;color:#687068;font-size:.78rem}.bundle-deals-assurance{max-width:680px;margin-top:26px}.bundle-deals-empty{margin-top:24px;padding:36px;border:1px solid var(--colour-border);border-radius:6px;background:#fafaf9}.bundle-deals-empty h2{margin:0 0 10px;font-family:var(--font-serif);font-size:1.8rem;font-weight:500}.bundle-deals-empty p{color:#687068;font-size:.85rem}@media(max-width:760px){.bundle-deals-page{padding-top:28px}.bundle-deal-card.offer-card{grid-template-columns:minmax(0,1fr)}.bundle-deal-contents{padding:20px}.bundle-deal-summary{padding:22px 20px;border-left:0;border-top:1px solid var(--colour-border);gap:16px}.bundle-deal-summary .btn{margin-top:0}.bundle-product-grid{gap:20px}.bundle-product h3{font-size:1.35rem}}@media(max-width:480px){.bundle-product-grid{grid-template-columns:minmax(0,1fr);gap:24px}.bundle-product-photo{aspect-ratio:3 / 2}.bundle-deals-heading{margin-bottom:24px}.bundle-deal-heading{margin-bottom:20px}.bundle-deals-empty{padding:24px}}.product-card-image-wrap{position:relative;width:100%;min-height:0;flex:1 1 auto;aspect-ratio:4 / 3;overflow:hidden;background:var(--colour-band)}.product-card-image{width:100%;height:100%;object-fit:cover;border-radius:0}.product-card-image-open{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border:0;padding:12px;background:#2220;color:#fff;cursor:zoom-in;opacity:0;transition:background .18s ease,opacity .18s ease}.product-card-image-open:hover,.product-card-image-open:focus-visible{background:#2222222e;opacity:1}.product-card-image-open:focus-visible{outline:3px solid var(--colour-accent);outline-offset:-3px}.product-card-image-prompt{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:9px 14px;background:#2b2b2b94;box-shadow:0 8px 24px #00000038;-webkit-backdrop-filter:blur(8px) saturate(120%);backdrop-filter:blur(8px) saturate(120%);font-size:.78rem;font-weight:600;letter-spacing:.04em;pointer-events:none;transform:translateY(4px);transition:transform .18s ease}.product-card-image-open:hover .product-card-image-prompt,.product-card-image-open:focus-visible .product-card-image-prompt{transform:translateY(0)}.product-card-magnifier{position:relative;width:16px;height:16px;flex:0 0 16px;border:2px solid currentColor;border-radius:50%}.product-card-magnifier:after{position:absolute;right:-5px;bottom:-3px;width:7px;height:2px;border-radius:2px;background:currentColor;content:"";transform:rotate(45deg);transform-origin:left center}.product-card-body{display:flex;height:324px;flex:0 0 324px;flex-direction:column;gap:10px;padding:18px}.product-card h3{max-width:100%;margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.75rem;line-height:1.08;overflow-wrap:anywhere}.product-card p{margin:0}.product-card-description-wrap{position:relative;min-height:0;flex:1}.product-card-description{height:100%;overflow:hidden;font-size:.8rem;line-height:1.6;overflow-wrap:anywhere}.product-card-view-more{position:absolute;right:0;bottom:var(--view-more-offset, 0px);padding-left:22px;line-height:1.6;background:linear-gradient(to right,transparent,#ffffff 18px);color:var(--colour-heading);font-size:.8rem;font-weight:600;text-decoration:underline;text-underline-offset:2px}.product-card-view-more:before{content:"… "}.product-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}.product-image-lightbox{position:fixed;z-index:200;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:clamp(58px,7vw,88px) clamp(16px,4vw,48px) 24px;background:#161616e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.product-image-lightbox-figure{display:grid;max-width:100%;max-height:100%;gap:10px;justify-items:center;margin:0}.product-image-lightbox-image{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 132px);border-radius:6px;object-fit:contain;box-shadow:0 24px 70px #0000006b}.product-image-lightbox-figure figcaption{color:#fff;font-size:.9rem;text-align:center}.product-image-lightbox-close{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:50%;padding:0;background:#2b2b2bb3;color:#fff;font-size:2rem;line-height:1}.product-image-lightbox-close:hover,.product-image-lightbox-close:focus-visible{background:#fff3;outline:2px solid #ffffff;outline-offset:2px}@media(hover:none),(pointer:coarse){.product-card-image-open{align-items:flex-end;justify-content:flex-end;background:linear-gradient(to top,rgba(34,34,34,.2),transparent 38%);opacity:1}.product-card-image-prompt{padding:8px 12px;transform:none}}.product-page{padding-bottom:72px}.product-page-back{display:inline-block;margin-bottom:28px;color:var(--colour-heading);font-weight:600}.product-page-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,.9fr);gap:clamp(32px,6vw,72px);align-items:start}.product-page-image{width:100%;aspect-ratio:1 / 1;object-fit:contain;background:#fff;border:1px solid var(--colour-border);border-radius:6px}.product-page-gallery{display:grid;gap:12px;min-width:0}.product-page-thumbs{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.product-page-thumb{flex:0 0 auto;width:72px;height:72px;padding:0;border:2px solid var(--colour-border);border-radius:8px;background:#fff;cursor:pointer;overflow:hidden;transition:border-color .12s ease,transform 80ms ease}.product-page-thumb img{width:100%;height:100%;object-fit:cover;display:block}.product-page-thumb:hover{border-color:var(--colour-accent-dark)}.product-page-thumb.is-selected{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:1px}@media(max-width:560px){.product-page-thumb{width:64px;height:64px}}.product-page-details{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.product-page-details .page-title,.product-page-description{margin:0}.product-page-description{white-space:pre-wrap;overflow-wrap:anywhere}.product-page-price{color:var(--colour-heading);font-family:var(--font-serif);font-size:2rem}.product-size-field{width:min(100%,340px)}.product-size-field select{font-size:1rem}.cart-line-size{margin:2px 0;color:var(--colour-heading);font-weight:600}.table-wrap{overflow-x:auto;border:1px solid var(--colour-border);border-radius:6px}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:12px 14px;border-bottom:1px solid var(--colour-border);text-align:left;vertical-align:top}th{color:var(--colour-heading);font-size:.78rem;letter-spacing:1px;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:8px}.row-actions-cell{width:1%;white-space:nowrap}.row-actions{flex-direction:column;flex-wrap:nowrap;align-items:flex-start}.btn-row{width:96px;min-height:36px;flex:none;padding:0 10px;font-size:.72rem;letter-spacing:1px}.btn-row-wide{width:116px}@media(max-width:820px){.footer-gallery,.gallery-strip{grid-template-columns:repeat(2,1fr)}.product-card-footer{align-items:flex-start;flex-direction:column}.product-page-grid{grid-template-columns:1fr}}@media(max-width:560px){.container{width:min(100% - 24px,1100px)}.section{padding:54px 0}.footer-gallery,.gallery-strip{grid-template-columns:1fr}}.page-intro{max-width:680px;margin:-8px 0 28px}.catalogue-search{display:grid;max-width:560px;gap:7px;margin-bottom:18px;color:var(--colour-heading);font-size:.9rem;font-weight:500}.catalogue-search input{width:100%;border:1px solid var(--colour-border);border-radius:4px;padding:11px 12px;background:#fff;color:var(--colour-text)}.catalogue-shop-search{max-width:760px;margin-bottom:32px}.catalogue-search-bar{position:relative;display:flex;min-width:0;align-items:stretch;border:1px solid var(--colour-border);border-radius:8px;background:#fff;box-shadow:0 8px 24px #2b2b2b0f;transition:border-color .16s ease,box-shadow .16s ease}.catalogue-search-bar:focus-within{border-color:var(--colour-accent-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--colour-accent) 28%,transparent)}.catalogue-search-icon{width:21px;flex:0 0 21px;margin-left:14px;fill:none;stroke:var(--colour-muted, #77736d);stroke-linecap:round;stroke-width:1.8}.catalogue-search-bar>input{min-width:0;flex:1;border:0;padding:12px;outline:0}.catalogue-category-picker{position:relative;display:flex;min-width:0;max-width:48%;flex:0 1 250px}.catalogue-category-toggle{display:flex;min-width:0;width:100%;align-items:center;gap:9px;border:0;border-left:1px solid var(--colour-border);border-radius:0 7px 7px 0;padding:8px 13px;background:var(--colour-surface, #f6f7f8);color:var(--colour-heading);font-size:.8rem;font-weight:650;text-align:left}.catalogue-category-toggle:hover,.catalogue-category-toggle[aria-expanded=true],.catalogue-category-toggle.has-filter{background:color-mix(in srgb,var(--colour-accent) 28%,#ffffff)}.catalogue-category-toggle>svg{width:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}.catalogue-category-toggle-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalogue-category-chevron{width:8px;height:8px;flex:0 0 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .16s ease}.catalogue-category-toggle[aria-expanded=true] .catalogue-category-chevron{transform:translateY(2px) rotate(225deg)}.catalogue-category-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:15;width:min(390px,calc(100vw - 32px));overflow:hidden;border:1px solid var(--colour-border);border-radius:10px;background:#fff;box-shadow:0 20px 50px #2b2b2b33}.catalogue-category-backdrop{display:none}.catalogue-category-close{display:none;width:34px;height:34px;flex:0 0 34px;align-items:center;justify-content:center;margin-right:4px;border:0;border-radius:50%;padding:0;background:transparent;color:var(--colour-heading);font-size:1.6rem;line-height:1}.catalogue-category-close:hover{background:color-mix(in srgb,var(--colour-accent) 20%,#ffffff)}.catalogue-category-popover-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:12px 18px;border-bottom:1px solid var(--colour-border);background:var(--colour-surface, #f6f7f8)}.catalogue-category-popover-header strong{display:block;color:var(--colour-muted, #77736d);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catalogue-category-clear{flex:0 0 auto;border:0;padding:2px 0;background:transparent;color:var(--colour-heading);font-size:.74rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}.catalogue-category-filter-search{display:block;padding:13px 16px;border-bottom:1px solid var(--colour-border);background:#fff}.catalogue-category-filter-search>span{display:block;margin-bottom:6px;color:var(--colour-muted, #77736d);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.catalogue-category-filter-search>div{display:flex;align-items:center;border:1px solid var(--colour-border);border-radius:7px;background:var(--colour-surface, #f6f7f8);transition:border-color .16s ease,box-shadow .16s ease}.catalogue-category-filter-search>div:focus-within{border-color:var(--colour-accent-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--colour-accent) 28%,transparent)}.catalogue-category-filter-search svg{width:18px;flex:0 0 18px;margin-left:11px;fill:none;stroke:var(--colour-muted, #77736d);stroke-linecap:round;stroke-width:1.8}.catalogue-category-filter-search input{min-width:0;width:100%;border:0;padding:10px;background:transparent;outline:0}.catalogue-category-options{max-height:min(420px,60vh);overflow-y:auto;overscroll-behavior:contain}.catalogue-category-empty{margin:0;padding:22px 18px;color:var(--colour-muted, #77736d);font-size:.9rem;text-align:center}.catalogue-category-all{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid var(--colour-border);padding:14px 18px;background:transparent;color:var(--colour-text);font-family:var(--font-serif);font-size:1.05rem;font-weight:500;line-height:1.2;text-align:left;transition:background-color .12s ease}.catalogue-category-all:hover{background:color-mix(in srgb,var(--colour-accent) 12%,#ffffff)}.catalogue-category-all.is-active{background:color-mix(in srgb,var(--colour-accent) 38%,#ffffff);box-shadow:inset 3px 0 0 var(--colour-accent-dark);color:var(--colour-heading);font-weight:700}.catalogue-category-options .category-tree>.category-tree-node:last-child>.category-tree-row{border-bottom:0}.category-tree,.category-tree-children{margin:0;padding:0;list-style:none}.category-tree-row{display:flex;align-items:stretch;border-bottom:1px solid var(--colour-border);transition:background-color .12s ease}.category-tree-row:hover,.category-tree-row.is-in-path{background:color-mix(in srgb,var(--colour-accent) 12%,#ffffff)}.category-tree-row.is-active{background:color-mix(in srgb,var(--colour-accent) 38%,#ffffff);box-shadow:inset 3px 0 0 var(--colour-accent-dark)}.category-tree-row.is-active .category-tree-select{color:var(--colour-heading);font-weight:700}.category-tree-select{display:flex;min-width:0;flex:1 1 auto;align-items:center;justify-content:space-between;gap:12px;border:0;padding:14px 18px;background:transparent;color:var(--colour-text);font-family:var(--font-serif);font-size:1.05rem;font-weight:500;line-height:1.2;text-align:left}.category-tree-children .category-tree-select{font-size:.98rem}.category-tree-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-tree-count{min-width:26px;border-radius:999px;padding:2px 7px;background:var(--colour-surface, #f0f1f2);color:var(--colour-muted, #6e6b65);font-family:var(--font-sans);font-size:.7rem;font-weight:700;text-align:center}.category-tree-toggle{display:flex;flex:0 0 50px;align-items:center;justify-content:center;border:0;border-left:1px solid var(--colour-border);background:transparent;color:var(--colour-muted, #77736d)}.category-tree-toggle:hover{color:var(--colour-heading)}.category-tree-chevron{width:9px;height:9px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translate(-2px) rotate(45deg);transition:transform .16s ease}.category-tree-toggle[aria-expanded=true] .category-tree-chevron{transform:translateY(-2px) rotate(135deg)}.admin-search{margin:18px 0 0}.admin-product-filters{display:grid;grid-template-columns:minmax(280px,560px) minmax(220px,320px);gap:12px;align-items:end;margin-top:18px}.admin-product-filters .admin-search{max-width:none;margin:0}.catalogue-category-picker.admin-category-filter-picker{width:100%;max-width:none;flex:1 1 auto;border-top:0}.admin-category-filter-picker .catalogue-category-toggle{min-height:44px;border:1px solid var(--colour-border);border-radius:8px;background:#fff;box-shadow:0 8px 24px #2b2b2b0a}.admin-category-filter-picker .catalogue-category-toggle:hover,.admin-category-filter-picker .catalogue-category-toggle[aria-expanded=true],.admin-category-filter-picker .catalogue-category-toggle.has-filter{background:color-mix(in srgb,var(--colour-accent) 28%,#ffffff)}@media(max-width:700px){.admin-product-filters{grid-template-columns:minmax(0,1fr)}}.text-button{border:1px solid var(--colour-border);border-radius:999px;background:#fff;color:var(--colour-heading);padding:8px 14px;font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}@media(max-width:560px){.catalogue-search-bar{flex-wrap:wrap}.catalogue-search-icon{height:46px}.catalogue-search-bar>input{width:calc(100% - 49px);flex:1 1 calc(100% - 49px)}.catalogue-category-picker{max-width:none;flex:1 1 100%;border-top:1px solid var(--colour-border)}.catalogue-category-toggle{min-height:44px;border-left:0;border-radius:0 0 7px 7px}.catalogue-category-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:block;background:#2b2b2b73;animation:catalogue-backdrop-in .2s ease both}.catalogue-category-popover{position:fixed;inset:0 auto 0 0;z-index:41;display:flex;width:min(340px,86vw);height:100vh;height:100dvh;flex-direction:column;border:0;border-radius:0;box-shadow:18px 0 48px #2b2b2b47;animation:catalogue-drawer-in .26s cubic-bezier(.22,.61,.36,1) both}.catalogue-category-popover-header{padding-top:14px;padding-bottom:14px}.catalogue-category-close{display:inline-flex}.catalogue-category-options{max-height:none;flex:1 1 auto;padding-bottom:env(safe-area-inset-bottom,0)}.catalogue-category-options .category-tree-select,.catalogue-category-options .catalogue-category-all{padding-top:16px;padding-bottom:16px}}@keyframes catalogue-drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes catalogue-backdrop-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.catalogue-category-popover,.catalogue-category-backdrop{animation:none}}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:28px;align-items:start}.cart-lines,.order-list{display:grid;gap:14px}.cart-line,.order-card,.account-panel,.summary-panel{border:1px solid var(--colour-border);border-radius:6px;background:#fff;padding:18px}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center}.cart-line h2,.summary-panel h2,.account-panel h2,.admin-layout h2{margin:0 0 8px;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.7rem;font-weight:500}.cart-line p,.summary-panel p,.account-panel p,.order-card p{margin:0}.qty-control{display:grid;grid-template-columns:34px 56px 34px;align-items:center}.qty-control button,.qty-control input{height:36px;border:1px solid var(--colour-border);background:#fff;text-align:center}.qty-control input{width:56px;border-inline:0}.summary-panel{position:sticky;top:24px;display:grid;gap:16px;box-shadow:var(--shadow-card)}.summary-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.checkout-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.delivery-service{color:var(--colour-muted);font-size:.85rem}.summary-total{border-top:1px solid var(--colour-border);padding-top:16px;font-size:1.1rem}.account-panel+.account-panel{margin-top:24px}.order-card ul{margin:12px 0 0;padding-left:18px}.admin-layout{display:block}.admin-toolbar{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.summary-panel{position:static}.cart-line{grid-template-columns:1fr}}@media(max-width:560px){.checkout-field-row{grid-template-columns:1fr}}.saved-basket-page{padding-top:36px}.saved-basket-heading .page-title{margin-bottom:12px}.saved-basket-heading>p:last-child{margin:0;color:#6b6b6b;font-size:.9rem}.saved-basket-reservation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 24px;padding:16px 22px;border:1px solid #d7e5da;border-radius:6px;background:var(--colour-brand-soft)}.saved-basket-reservation p{margin:0 0 2px;color:#4f6858;font-size:.75rem}.saved-basket-reservation h2{margin:0;color:var(--colour-heading);font-size:1rem;font-weight:600;overflow-wrap:anywhere}.saved-basket-reservation.is-inactive{background:var(--colour-band);border-color:var(--colour-border)}.saved-basket-countdown{display:flex;flex:none;align-items:center;gap:12px;color:var(--colour-brand-dark)}.saved-basket-countdown span{display:block;font-size:.7rem}.saved-basket-countdown strong{display:block;font-size:1.1rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.06em;line-height:1.4}.saved-basket-countdown.is-urgent{color:#794a0c}.saved-basket-state{font-size:.8rem;font-weight:500}.saved-basket-notice{margin:-8px 0 24px;font-size:.9rem}.saved-basket-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:28px;align-items:start}.saved-basket-main{min-width:0}.saved-basket-items{border:1px solid var(--colour-border);border-radius:6px;overflow:hidden}.saved-basket-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--colour-border)}.saved-basket-section-heading h2,.saved-basket-summary h2,.saved-basket-entry h2{margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:1.7rem;font-weight:500;line-height:1.2}.saved-basket-section-heading>span{flex:none;color:#6b6b6b;font-size:.8rem}.saved-basket-item{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(65px,auto);align-items:center;gap:20px;margin:0 22px;padding:22px 0}.saved-basket-item+.saved-basket-item{border-top:1px solid var(--colour-border)}.saved-basket-item-details{min-width:0}.saved-basket-item h3{margin:0 0 5px;font-family:var(--font-serif);font-size:1.5rem;font-weight:500;line-height:1.2;overflow-wrap:anywhere}.saved-basket-item p{margin:0;color:#6b6b6b;font-size:.8rem}.saved-basket-item.is-removed h3{color:#767676;text-decoration:line-through}.saved-basket-link{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;border:0;background:transparent;color:#59625c;font-size:.78rem;text-align:left;text-decoration:underline;text-underline-offset:3px}.saved-basket-link:hover:not(:disabled){color:var(--colour-brand)}.saved-basket-link:focus-visible,.saved-basket-order-link:focus-visible{outline:2px solid var(--colour-brand);outline-offset:4px;border-radius:2px}.saved-basket-quantity{gap:5px;font-size:.75rem}.saved-basket-quantity input{width:64px;min-height:44px;padding:8px;text-align:center}.saved-basket-line-total{text-align:right;font-size:.95rem;font-variant-numeric:tabular-nums}.saved-basket-item-quantity{font-size:.8rem}.saved-basket-help{margin:0;padding:16px 22px;background:#fafaf9;border-top:1px solid var(--colour-border);color:#656963;font-size:.78rem}.saved-basket-save{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-top:1px solid var(--colour-border)}.saved-basket-save p{margin:0;font-size:.8rem}.saved-basket-save>div{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.saved-basket-save .saved-basket-save-button{min-height:44px;border:1px solid var(--colour-brand);background:#fff;color:var(--colour-brand);font-size:.7rem;letter-spacing:1px}.saved-basket-save .saved-basket-save-button:hover:not(:disabled){background:var(--colour-brand-soft)}.saved-basket-feedback{margin:0;padding:14px 22px;color:var(--colour-brand-dark);font-size:.8rem;border-top:1px solid var(--colour-border)}.saved-basket-empty{padding:24px 22px}.saved-basket-empty h3{margin:0 0 8px;font-size:1rem}.saved-basket-empty p{margin:0;color:#6b6b6b;font-size:.85rem}.saved-basket-summary{display:grid;gap:18px;padding:24px;border:1px solid var(--colour-border);border-radius:6px;background:#fafaf9}.saved-basket-summary p{margin:0;color:#656963;font-size:.8rem}.saved-basket-subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid var(--colour-border)}.saved-basket-subtotal>span{font-size:.85rem}.saved-basket-subtotal>strong{color:var(--colour-heading);font-size:1.6rem;font-weight:500;font-variant-numeric:tabular-nums}.saved-basket-summary .btn{width:100%;min-height:46px}.saved-basket-summary .saved-basket-checkout-note{margin-top:-8px;text-align:center;font-size:.72rem}.saved-basket-summary .saved-basket-unsaved{color:#794a0c}.saved-basket-order-link{color:var(--colour-brand-dark);font-size:.85rem;text-decoration:underline;text-underline-offset:3px}.saved-basket-tools{display:flex;flex-wrap:wrap;gap:6px 24px;margin-top:14px}.saved-basket-entry{max-width:650px;margin-top:26px;padding:24px;border:1px solid var(--colour-border);border-radius:6px}.saved-basket-entry>p{margin:12px 0 0;color:#656963;font-size:.85rem}.saved-basket-entry .basket-code-form{margin:20px 0 0;gap:12px}.saved-basket-entry .basket-code-form .btn{min-height:46px}.saved-basket-entry .field{min-width:0}.saved-basket-entry input{width:100%}.saved-basket-loading{padding:24px 0}.saved-basket-checkout{scroll-margin-top:24px}.saved-basket-checkout>.saved-basket-link{margin:-10px 0 10px}.saved-basket-checkout .account-panel{padding:24px}.saved-basket-checkout .account-panel h2{line-height:1.2}@media(max-width:760px){.saved-basket-page{padding-top:28px;padding-bottom:44px}.saved-basket-layout{grid-template-columns:minmax(0,1fr);gap:20px}.saved-basket-reservation{margin-top:22px;padding:16px;gap:16px}.saved-basket-reservation>div:first-child{min-width:0}.saved-basket-section-heading{padding:16px}.saved-basket-item{margin-inline:16px;gap:12px;grid-template-columns:minmax(0,1fr) 60px}.saved-basket-item-details{grid-column:1;grid-row:1 / span 2}.saved-basket-quantity,.saved-basket-item-quantity{grid-column:2;grid-row:1}.saved-basket-quantity input{width:60px}.saved-basket-line-total{grid-column:2;grid-row:2;text-align:center}.saved-basket-item h3{font-size:1.35rem}.saved-basket-help,.saved-basket-save,.saved-basket-feedback{padding:14px 16px}.saved-basket-summary,.saved-basket-entry,.saved-basket-checkout .account-panel{padding:20px}.saved-basket-save{align-items:stretch}.saved-basket-save>div{width:100%;justify-content:space-between}.saved-basket-entry .basket-code-form{align-items:stretch}.saved-basket-tools{justify-content:space-between;gap:0 14px}}.admin-workspace:has(.manage-page){align-items:start}.admin-workspace:has(.manage-page) .admin-sidebar{height:auto;min-height:0}.manage-page{min-width:0}.manage-page h2,.manage-page h3,.manage-page p{margin-top:0}.manage-page h2{color:var(--colour-heading);font-family:var(--font-serif);font-size:1.8rem;font-weight:500;line-height:1.2}.manage-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.manage-toolbar h2{margin-bottom:6px}.manage-toolbar p{margin-bottom:0;color:#687068;font-size:.82rem}.manage-actions,.manage-record-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.manage-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid #dce1dc;border-radius:4px;background:#fff;color:var(--colour-heading);font-size:.78rem;font-weight:500;line-height:1.4}.manage-button:hover:not(:disabled){border-color:var(--colour-brand);background:var(--colour-brand-soft)}.manage-button.is-danger{color:#a3342b;border-color:#e5c9c5}.manage-button.is-danger:hover:not(:disabled){background:#fcf0ee;border-color:#a3342b}.manage-link{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;border:0;background:none;color:#59645d;font-size:.78rem;text-align:left;text-decoration:underline;text-underline-offset:3px}.manage-link:hover:not(:disabled){color:var(--colour-brand-dark)}.manage-page :is(button,summary,a):focus-visible{outline:2px solid var(--colour-brand);outline-offset:3px}.manage-page .btn{min-height:44px;font-size:.72rem;letter-spacing:1.2px}.manage-page .field{font-size:.82rem}.manage-page :is(input,select){min-width:0;width:100%;min-height:44px}.manage-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px;padding:5px;border-radius:6px;background:#f5f6f3;width:fit-content;max-width:100%}.manage-tabs button{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 14px;border:1px solid transparent;border-radius:4px;background:none;color:#626b64;font-size:.8rem}.manage-tabs button[aria-pressed=true]{border-color:var(--colour-border);background:#fff;color:var(--colour-brand-dark);box-shadow:0 1px 4px #00000006}.manage-tabs button span,.manage-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:22px;border-radius:999px;background:#e9eee9;color:#526256;font-family:var(--font-sans);font-size:.7rem;font-weight:500}.manage-filters{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:20px}.manage-filters>.field:first-child{flex:1 1 240px}.manage-filters>.field:not(:first-child){flex:0 1 190px}.manage-records{overflow:hidden;border:1px solid var(--colour-border);border-radius:6px;background:#fff}.manage-record{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:22px}.manage-record+.manage-record{border-top:1px solid var(--colour-border)}.manage-record-main{min-width:0}.manage-record-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px}.manage-record h3{margin:0;color:var(--colour-heading);font-size:.95rem;font-weight:600;overflow-wrap:anywhere}.manage-record p{margin:0;color:#646c65;font-size:.78rem;overflow-wrap:anywhere}.manage-record .manage-note{margin-top:5px;font-size:.73rem}.manage-record-value{font-size:1.05rem;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.manage-status,.manage-type{display:inline-flex;align-items:center;padding:3px 9px;border:1px solid #e1e5e1;border-radius:999px;background:#f5f6f3;color:#5e655e;font-size:.68rem;font-weight:500;white-space:nowrap}.manage-status:is(.is-active,.is-live){border-color:#d4e6d8;background:var(--colour-brand-soft);color:var(--colour-brand-dark)}.manage-status:is(.is-scheduled,.is-payment-pending){border-color:#eadcc1;background:#fff7e9;color:#805a20}.manage-status.is-completed{background:#edf3f6;color:#486273}.manage-switch{display:inline-flex;align-items:center;gap:8px;min-width:75px;min-height:44px;padding:4px 0;border:0;background:none;color:#606a62}.manage-switch>span{position:relative;width:32px;height:19px;border-radius:999px;background:#b8c0b8}.manage-switch>span:after{content:"";position:absolute;top:3px;left:3px;width:13px;height:13px;background:#fff;border-radius:50%}.manage-switch[aria-checked=true]>span{background:var(--colour-brand)}.manage-switch[aria-checked=true]>span:after{left:16px}.manage-switch small{font-size:.74rem}.manage-empty{padding:42px 24px;text-align:center}.manage-empty h3,.manage-empty-inline h3{margin:0 0 8px;font-size:.95rem;font-weight:500}.manage-empty p,.manage-empty-inline p{margin:0;color:#6b736b;font-size:.82rem}.manage-note,.manage-list-note{margin-bottom:0;color:#687068;font-size:.78rem;line-height:1.6}.manage-list-note{margin-top:14px;font-size:.72rem}.manage-feedback,.manage-error{margin:0 0 20px;padding:14px 18px;border:1px solid #d7e5da;border-radius:6px;background:var(--colour-brand-soft);color:var(--colour-brand-dark);font-size:.85rem;overflow-wrap:anywhere}.manage-error{border-color:#e9cdca;background:#fcf2f0;color:#903e34}.manage-error p{margin-bottom:0}.manage-editor-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:-10px 0 16px}.manage-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,290px);gap:24px;align-items:start}.manage-editor-main{display:grid;min-width:0;gap:20px}.manage-panel{min-width:0;padding:22px;border:1px solid var(--colour-border);border-radius:6px;background:#fff}.manage-panel>.field+.manage-form-row{margin-top:18px}.manage-section-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.manage-section-heading h2,.manage-section-heading h3{margin:0}.manage-section-heading h3{font-size:.9rem;font-weight:500}.manage-section-heading h2{display:flex;align-items:center;gap:10px;font-size:1.6rem}.manage-summary{position:sticky;top:24px;display:grid;gap:18px;min-width:0;padding:24px;border:1px solid var(--colour-border);border-radius:6px;background:#fafaf9}.manage-summary h2{margin:0;font-size:1.7rem}.manage-summary p{margin:0;font-size:.8rem}.manage-summary .btn{width:100%}.manage-summary .manage-note{font-size:.74rem}.manage-summary-total,.manage-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.8rem}.manage-summary-total{border-top:1px solid var(--colour-border);padding-top:18px}.manage-summary-total strong{color:var(--colour-heading);font-size:1.65rem;font-weight:500;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.manage-preview-name{color:#5b645d;overflow-wrap:anywhere}.manage-summary .manage-saving{color:var(--colour-brand-dark);font-size:.74rem}.manage-summary .manage-warning{color:#805a20;font-size:.74rem}.manage-form-row{display:flex;flex-wrap:wrap;gap:16px}.manage-form-row>.field{flex:1 1 175px}.manage-offer-basics{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,230px);gap:18px;align-items:end}.manage-offer-basics.is-discount{grid-template-columns:minmax(0,1.3fr) minmax(150px,1fr) minmax(120px,170px)}.manage-pricing-help{border-top:1px solid var(--colour-border);padding-top:10px}.manage-pricing-help summary{padding:4px 0;color:#687068;font-size:.74rem;cursor:pointer}.manage-pricing-help .manage-note{margin-top:10px}.manage-empty-inline{padding:22px 0}.manage-selected-items{min-width:0}.manage-selected-item{display:grid;grid-template-columns:minmax(0,1fr) 64px 95px auto;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--colour-border)}.manage-selected-item:first-child{border-top:0;padding-top:0}.manage-selected-item:last-child{padding-bottom:0}.manage-selected-item.is-offer{grid-template-columns:minmax(0,1fr) 64px auto}.manage-selected-item.is-basket{grid-template-columns:minmax(0,1fr) 128px 100px auto}.manage-selected-item.is-readonly{grid-template-columns:minmax(0,1fr) auto auto auto}.manage-item-stock{display:block;margin-top:5px;color:#657367;font-size:.72rem}.manage-item-name .manage-stock-error,.manage-stock-error{color:#9c4930;font-size:.78rem}.manage-readonly-customer{margin:0;font-weight:500}.manage-readonly-value{color:#667067;font-size:.82rem}.manage-draft-status{color:#58705e;font-size:.72rem}.manage-recovery,.manage-change-notice{margin-bottom:20px;padding:18px 20px;border:1px solid #e4d7bb;border-radius:6px;background:#fffaf0}.manage-recovery{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.manage-recovery h2{margin-bottom:8px;font-size:1.5rem}.manage-recovery p,.manage-change-notice p{margin:5px 0 12px;color:#756341;font-size:.8rem}.manage-change-notice strong{color:#66522d;font-size:.85rem}.manage-item-name{min-width:0}.manage-item-name h3{margin:0;color:var(--colour-heading);font-size:.9rem;font-weight:500;overflow-wrap:anywhere}.manage-item-name p{margin:5px 0 0;font-size:.74rem;color:#697169}.manage-item-name .manage-link{min-height:36px;font-size:.72rem}.manage-selected-item .field{font-size:.7rem}.manage-selected-item input{padding:8px}.manage-item-total{font-size:.9rem;font-weight:500;font-variant-numeric:tabular-nums;text-align:right}.manage-channel-fields{display:flex;flex-wrap:wrap;gap:14px 24px;min-width:0;margin:0;padding:0;border:0}.manage-channel-fields legend{margin-bottom:8px;font-size:.82rem}.manage-checkbox{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.8rem}.manage-page .manage-checkbox input{flex:none;width:18px;height:18px;min-height:0;accent-color:var(--colour-brand)}.manage-scheduling{border-top:1px solid var(--colour-border);margin-top:16px;padding-top:14px}.manage-scheduling>.manage-note{margin-top:4px}.manage-scheduling .manage-form-row{margin:12px 0}.manage-more-actions{padding-block:10px}.manage-more-actions summary,.manage-product summary{display:list-item;padding:12px 0;color:#626c64;font-size:.8rem;cursor:pointer}.manage-more-actions details>.manage-note{margin:0 0 12px}.manage-more-actions details>.manage-button{margin-bottom:8px}.manage-confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:18px;margin:0 0 20px;border:1px solid #e8d8b9;border-radius:6px;background:#fffaf0;font-size:.82rem}.manage-confirm p{margin:4px 0 0;font-size:.78rem}.manage-code{min-width:0;border-top:1px solid var(--colour-border);padding-top:14px}.manage-code>span{display:block;color:#687068;font-size:.74rem}.manage-code code{display:block;margin-top:5px;font-size:.85rem;overflow-wrap:anywhere;letter-spacing:.04em}.manage-share{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin:0 0 24px;padding:22px;border:1px solid #d7e5da;border-radius:6px;background:var(--colour-brand-soft)}.manage-share h2{margin-bottom:8px;font-size:1.6rem}.manage-share p{margin-bottom:0;font-size:.78rem}.manage-share .eyebrow{margin-bottom:6px;font-size:.65rem}.manage-share-code{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.manage-share-code code{font-size:1rem;letter-spacing:.06em;overflow-wrap:anywhere}.manage-share-help{flex:1 1 80%;min-width:0;overflow-wrap:anywhere}.manage-product-dialog{width:min(680px,calc(100vw - 32px));height:min(720px,calc(100dvh - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;overflow:hidden;border:1px solid #dce3dc;border-radius:10px;background:#fff;color:var(--colour-text);box-shadow:0 24px 80px #18281f33}.manage-product-dialog[open]{display:flex;flex-direction:column}.manage-product-dialog::backdrop{background:#23342b66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.manage-picker-heading{display:flex;flex:none;align-items:start;justify-content:space-between;gap:16px;padding:24px 24px 18px}.manage-picker-heading h2{margin:0;font-family:var(--font-serif);font-size:1.9rem;font-weight:500;line-height:1.1}.manage-picker-heading p{margin:8px 0 0;color:#687068;font-size:.78rem}.manage-picker-close{display:inline-flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--colour-border);border-radius:6px;background:#fff;color:#657067;font-size:1.6rem;line-height:1}.manage-picker-close:hover:not(:disabled){background:var(--colour-brand-soft)}.manage-picker-search{flex:none;padding:0 24px 18px;border-bottom:1px solid var(--colour-border)}.manage-picker-body{flex:1;min-height:0;padding:8px 24px;overflow-y:auto;overscroll-behavior:contain}.manage-picker-body>:is(.manage-note,[role=alert]){padding-block:20px}.manage-picker-results{margin:0}.manage-product{padding:8px 0;border-bottom:1px solid #e0e5df}.manage-product:first-child{padding-top:0}.manage-product:last-child{border-bottom:0}.manage-product h4{margin:10px 12px 6px;font-size:.84rem;font-weight:500;overflow-wrap:anywhere}.manage-product-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:10px 12px;margin-top:0;border:1px solid transparent;border-radius:4px;background:#fff;color:var(--colour-heading);font-size:.82rem;text-align:left}.manage-product-option:focus-within,.manage-product-option.is-selected{background:var(--colour-brand-soft)}.manage-product-option-info{flex:1;min-width:0;overflow-wrap:anywhere}.manage-product-option small{display:block;color:#687068;font-size:.7rem}.manage-product-add{flex:none;min-height:44px;padding:8px 10px;border:0;border-radius:4px;background:transparent;color:var(--colour-brand-dark);font-size:.75rem}.manage-product-add:hover:not(:disabled){background:#dceade}.manage-picker-quantity{display:inline-flex;flex:none;align-items:center;overflow:hidden;border:1px solid #c9d9cd;border-radius:5px;background:#fff}.manage-picker-quantity button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:44px;padding:0;border:0;background:#fff;color:var(--colour-brand-dark);font-size:1.1rem}.manage-picker-quantity button:hover:not(:disabled){background:var(--colour-brand-soft)}.manage-page .manage-picker-quantity input{width:46px;min-width:0;min-height:44px;height:44px;padding:6px 2px;border:0;border-inline:1px solid #dce6de;border-radius:0;background:#fff;color:var(--colour-heading);text-align:center;font-size:.85rem;font-variant-numeric:tabular-nums;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.manage-picker-quantity input::-webkit-inner-spin-button,.manage-picker-quantity input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.manage-picker-quantity button:focus-visible,.manage-picker-quantity input:focus-visible{position:relative;outline:2px solid var(--colour-brand);outline-offset:-3px}.manage-product summary{padding:10px 0 4px;font-size:.74rem}.manage-picker-footer{flex:none;padding:16px 24px;border-top:1px solid var(--colour-border);background:#fafbf9}.manage-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.manage-pagination>span{color:#687068;font-size:.7rem}.manage-pagination>div{display:flex;gap:8px}.manage-pagination .manage-button{padding-inline:10px;font-size:.7rem}.manage-picker-done{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.manage-picker-done p{margin:0;color:#58705e;font-size:.76rem}.manage-product-dialog .manage-picker-done .btn{min-height:44px;font-size:.7rem;white-space:nowrap}@media(max-width:1250px){.manage-editor-layout{grid-template-columns:minmax(0,1fr)}.manage-summary{position:static}.manage-record{grid-template-columns:minmax(0,1fr) auto;gap:14px}.manage-record-actions{grid-column:1 / -1;justify-content:flex-end}}@media(max-width:600px){.manage-offer-basics,.manage-offer-basics.is-discount{grid-template-columns:minmax(0,1fr)}.manage-toolbar{align-items:stretch}.manage-toolbar>.manage-actions{width:100%}.manage-toolbar>.manage-actions>:is(button,.btn){flex:1}.manage-toolbar .btn{padding-inline:14px}.manage-tabs{width:100%;gap:4px}.manage-tabs button{flex:1 1 auto;justify-content:center;padding-inline:8px;font-size:.72rem;gap:6px}.manage-filters>.field:first-child{flex-basis:100%}.manage-filters>.field:not(:first-child){flex:1}.manage-record,.manage-panel,.manage-summary,.manage-share{padding:18px}.manage-selected-item{grid-template-columns:64px minmax(80px,1fr) auto;gap:12px}.manage-selected-item .manage-item-name{grid-column:1 / -1}.manage-selected-item.is-offer{grid-template-columns:minmax(0,1fr) auto}.manage-selected-item.is-offer .manage-item-name{grid-column:1}.manage-selected-item.is-offer .manage-item-total{grid-column:1 / -1}.manage-selected-item.is-basket{grid-template-columns:128px minmax(80px,1fr)}.manage-selected-item.is-basket .manage-item-total{grid-column:1 / -1}.manage-selected-item.is-readonly{grid-template-columns:repeat(2,minmax(0,1fr))}.manage-product-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.manage-picker-heading{padding:20px 16px 16px}.manage-picker-search{padding:0 16px 16px}.manage-picker-body{padding:8px 12px}.manage-picker-footer{padding:12px 16px}.manage-picker-done{gap:10px}.manage-picker-done p{font-size:.7rem}.manage-product-option{padding-inline:8px;gap:8px}.manage-product-option.is-selected{flex-wrap:wrap}.manage-product-option.is-selected .manage-product-option-info{flex-basis:130px}.manage-more-actions{padding-block:8px}.manage-record-actions{gap:18px}.manage-confirm{align-items:stretch}.manage-confirm .manage-actions{width:100%}.manage-confirm .manage-actions>button{flex:1}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;background:#1e1e2380;overflow-y:auto}.modal{position:relative;width:min(580px,100%);min-width:0;overflow:hidden;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d}.product-modal{width:min(1040px,100%);max-height:calc(100dvh - 80px);overflow:hidden}.product-modal .product-form{grid-template-areas:"header header" "copy images" "categories tags" "inventory inventory" "sizes sizes" "availability availability";grid-template-columns:repeat(2,minmax(0,1fr));max-height:calc(100dvh - 80px);gap:20px;align-items:start;overflow-y:auto;scrollbar-gutter:stable}.product-modal .product-form-header{grid-area:header}.product-copy-section{grid-area:copy}.product-images-section{grid-area:images}.product-categories-section{grid-area:categories}.product-tags-section{grid-area:tags}.product-inventory-section{grid-area:inventory}.product-sizes-section{grid-area:sizes}.product-base-size-field{max-width:420px}.product-sizes-empty{margin:0;border:1px dashed var(--colour-border);border-radius:8px;padding:14px 16px;background:#fff;color:var(--colour-muted, #6e6b65);font-size:.9rem}.product-size-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.product-size-card{border:1px solid var(--colour-border);border-radius:10px;background:#fff;transition:box-shadow .16s ease,border-color .16s ease}.product-size-card.is-expanded{border-color:var(--colour-accent-dark);box-shadow:0 8px 22px #2b2b2b14}.product-size-card-header{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 4px}.product-size-toggle{display:flex;min-width:0;min-height:48px;flex:1;align-items:center;gap:10px;border:0;border-radius:8px;padding:6px 10px;background:transparent;color:var(--colour-heading);text-align:left}.product-size-toggle:hover{background:color-mix(in srgb,var(--colour-accent) 14%,#ffffff)}.product-size-chevron{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;transition:transform .16s ease}.product-size-card.is-expanded .product-size-chevron{transform:rotate(90deg)}.product-size-title{flex:none;max-width:45%;overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.product-size-summary{min-width:0;overflow:hidden;color:var(--colour-muted, #6e6b65);font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}.product-size-actions{display:flex;flex:none;gap:2px}.product-size-action{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:0;border-radius:8px;padding:0;background:transparent;color:var(--colour-heading)}.product-size-action:hover:not(:disabled){background:var(--colour-band)}.product-size-action.is-danger{color:#b42318}.product-size-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.product-size-body{display:grid;gap:16px;border-top:1px solid var(--colour-border);padding:16px}.product-size-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;align-items:start}.product-size-name-field{grid-column:span 2}.product-modal .product-form .product-size-body textarea{min-height:80px}.product-card-price-from{display:block;color:var(--colour-muted, #6e6b65);font-size:.7rem;font-weight:600;letter-spacing:1px;line-height:1.2;text-transform:uppercase}.product-card-footer .btn{white-space:nowrap}.product-size-margin{margin:-4px 0 0;color:var(--colour-heading);font-size:.85rem;font-weight:600}.product-size-margin.is-loss{color:#b42318}.product-size-images{gap:10px}.product-size-image-inputs{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.product-size-upload{position:relative;cursor:pointer}.product-size-upload:focus-within{outline:2px solid var(--colour-accent-dark);outline-offset:2px}.product-size-image-url{min-width:0;flex:1 1 200px;border:1px solid var(--colour-border);border-radius:4px;padding:7px 10px}.product-size-instore{justify-self:start}.product-size-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.product-size-bulk{display:flex;gap:8px}.size-count-badge{display:inline-block;margin-left:8px;border-radius:999px;padding:2px 8px;background:color-mix(in srgb,var(--colour-brand, #2d6a4f) 14%,#ffffff);color:var(--colour-brand-dark, #1f4d38);font-size:.72rem;font-weight:700;white-space:nowrap}@media(max-width:760px){.product-size-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-size-summary{display:none}.product-size-title{max-width:none}}@media(max-width:520px){.product-size-grid{grid-template-columns:minmax(0,1fr)}.product-size-name-field{grid-column:auto}}.product-modal .product-form>.field-toggle-block{grid-area:availability}.product-modal .product-form>.error-message{grid-column:1 / -1}.product-modal .product-form>.actions{grid-column:1 / -1}.product-form-section{display:grid;min-width:0;gap:16px;align-self:stretch;border:1px solid var(--colour-border);border-radius:10px;padding:18px;background:color-mix(in srgb,var(--colour-band) 48%,#ffffff)}.product-form-section-heading{border-left:3px solid var(--colour-accent-dark);padding-left:11px}.product-form-section-heading h3{margin:0;color:var(--colour-heading);font-size:1rem;line-height:1.3}.product-form-section-heading p{margin:3px 0 0;color:var(--colour-muted, #6e6b65);font-size:.8rem;line-height:1.45}.product-inventory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}.product-inventory-grid>.field-row{display:contents}.product-parcel-fields{grid-column:1 / -1;min-width:0;margin:0;border:1px solid var(--colour-border);border-radius:8px;padding:4px 14px 14px;background:color-mix(in srgb,var(--colour-band) 40%,#ffffff)}.product-parcel-fields>legend{padding:0 6px;color:var(--colour-heading);font-size:.85rem;font-weight:600}.product-parcel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}.product-parcel-fields>.field-hint{display:block;margin-top:10px}.product-inventory-grid>.product-reference-row,.product-inventory-grid>.product-price-row{display:grid;grid-column:1 / -1;min-width:0;gap:16px;align-items:start}.product-inventory-grid>.product-reference-row{grid-template-columns:repeat(2,minmax(0,1fr))}.product-inventory-grid>.product-price-row{grid-template-columns:repeat(3,minmax(0,1fr))}.product-margin-panel{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;gap:12px}.product-margin-tile{display:grid;min-width:0;gap:6px;align-content:start;border:1px solid color-mix(in srgb,var(--colour-accent-dark) 55%,#ffffff);border-radius:8px;padding:12px 14px;background:color-mix(in srgb,var(--colour-accent) 25%,#ffffff)}.product-margin-label{color:color-mix(in srgb,var(--colour-heading) 80%,transparent);font-size:.68rem;font-weight:700;letter-spacing:.6px;line-height:1.3;text-transform:uppercase}.product-margin-value{color:var(--colour-heading);font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.product-margin-value small{font-size:.85em;font-weight:600}.product-margin-panel.is-loss .product-margin-tile{border-color:#b42318;background:color-mix(in srgb,#b42318 6%,#ffffff)}.product-margin-panel.is-loss .product-margin-value{color:#b42318}@media(max-width:900px){.product-margin-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.product-inventory-grid>.product-reference-row,.product-inventory-grid>.product-price-row{grid-template-columns:minmax(0,1fr)}.product-margin-panel{grid-template-columns:minmax(0,1fr)}}.product-images-section .image-field{gap:10px;border:0;padding:0;background:transparent}.product-modal .category-picker,.product-modal .tag-picker{max-height:210px}.product-modal .product-form textarea{min-height:230px;font-size:1rem;font-weight:400;line-height:1.6}.product-modal .product-form>.field-toggle-block{border:1px solid color-mix(in srgb,var(--colour-accent-dark) 55%,var(--colour-border));border-radius:10px;padding:14px 16px;background:color-mix(in srgb,var(--colour-accent) 14%,#ffffff)}.bulk-category-modal{width:min(640px,100%)}.bulk-edit-modal{width:min(720px,100%)}.bulk-summary{display:grid;gap:12px}.bulk-summary-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:0;border:1px solid var(--colour-border);border-radius:10px;padding:12px 14px;background:color-mix(in srgb,var(--colour-accent) 10%,#ffffff)}.bulk-summary-values>div{display:grid;gap:2px}.bulk-summary-values dt{color:var(--colour-charcoal);font-size:.72rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.bulk-summary-values dd{margin:0;color:var(--colour-heading);font-size:1.05rem;font-weight:600}.bulk-summary-heading{margin:0;color:var(--colour-charcoal);font-size:.8rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.bulk-summary-products{max-height:200px;margin:0;border:1px solid var(--colour-border);border-radius:10px;padding:8px 14px 8px 30px;overflow-y:auto;color:var(--colour-text);font-size:.92rem;line-height:1.6}.confirmation-overlay{z-index:110}.confirmation-modal{width:min(520px,100%)}.confirmation-copy{margin:0;color:var(--colour-text)}.modal .form-panel{position:static;top:auto;width:100%;max-width:none;min-width:0;margin:0;box-shadow:none}.modal .form-grid>*,.image-field,.category-picker-box,.tag-picker-box{min-width:0}.modal-close{position:absolute;top:12px;right:12px;z-index:1;width:34px;height:34px;border:none;border-radius:999px;background:var(--colour-surface, #f0f1f2);color:var(--colour-heading, #333);font-size:1.4rem;line-height:1;cursor:pointer}.modal-close:hover{background:#e5e7eb}.modal-small{width:min(420px,100%)}.admin-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-bulk-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;border:1px solid color-mix(in srgb,var(--colour-accent-dark) 55%,var(--colour-border));border-radius:8px;padding:12px 14px;background:color-mix(in srgb,var(--colour-accent) 18%,#ffffff);color:var(--colour-heading)}.admin-bulk-actions .actions{flex-wrap:wrap}.admin-product-select-cell,.admin-order-select-cell{width:46px;padding-right:6px;padding-left:14px;text-align:center}.admin-product-select-cell input,.admin-order-select-cell input{width:18px;height:18px;margin:0;accent-color:var(--colour-accent-dark);cursor:pointer}#admin-management-panel tr.is-selected-row td,.orders-table tr.is-selected-row td{background:color-mix(in srgb,var(--colour-accent) 14%,#ffffff)}.admin-order-select-cell input:disabled{cursor:default}.admin-bulk-actions-note{display:block;margin-top:2px;font-size:.85rem;font-weight:400}@media(max-width:760px){.modal-overlay{padding-top:16px;padding-bottom:16px}.product-modal{width:min(640px,100%);max-height:calc(100dvh - 32px)}.product-modal .product-form{grid-template-areas:"header" "copy" "images" "categories" "tags" "inventory" "sizes" "availability";grid-template-columns:minmax(0,1fr);max-height:calc(100dvh - 32px)}.product-inventory-grid,.product-parcel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bulk-actions{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.product-inventory-grid{grid-template-columns:minmax(0,1fr)}.product-form-section{padding:14px}}.admin-status{display:flex;min-height:46px;align-items:center;padding:8px 0}.admin-status p,.taxonomy-note{margin:0}.admin-product-pagination{margin:0 0 16px}.admin-table-empty{padding:28px 14px;color:var(--colour-muted, #8a8a8a);text-align:center}#admin-management-panel{max-height:clamp(320px,52dvh,560px);overflow:auto;overscroll-behavior:contain}#admin-management-panel.is-category-tree{max-height:clamp(340px,56dvh,600px)}#admin-management-panel thead{position:sticky;top:0;z-index:1;background:#fff}#admin-management-panel td,.orders-table td,.admin-order-items span,.admin-page-description,.field-hint,.taxonomy-note{overflow-wrap:anywhere}.taxonomy-note{padding-top:12px;color:var(--colour-muted, #6e6b65);font-size:.85rem}.app-shell-admin .announcement-bar,.app-shell-admin .category-nav{display:none}.app-shell-admin .header-inner,.app-shell-admin .footer-brand-row{width:100%;margin-inline:0;padding-inline:var(--admin-content-padding)}.container.admin-page{width:100%;margin-inline:0;padding-top:0;padding-inline:var(--admin-content-padding)}.admin-page-header{margin-bottom:28px;border-bottom:1px solid var(--colour-border);padding-bottom:20px}.admin-page-header .page-title{margin-bottom:8px}.admin-page-description{max-width:650px;margin:0;color:var(--colour-muted, #6e6b65)}.admin-workspace{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:clamp(22px,3vw,38px);align-items:stretch}.admin-workspace-content{min-width:0}.admin-sidebar{height:100%;min-height:100%;border:1px solid var(--colour-border);border-radius:9px;padding:16px 12px 12px;background:var(--colour-surface, #f6f5f1)}.admin-sidebar-label{margin:0 10px 10px;color:var(--colour-muted, #6e6b65);font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.admin-sidebar-toggle{display:none}.admin-sidebar-toggle-icon{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .16s ease}.admin-sidebar-toggle[aria-expanded=true] .admin-sidebar-toggle-icon{transform:rotate(225deg)}.admin-sidebar-nav,.admin-sidebar-catalogue{display:grid;gap:4px}.admin-sidebar-nav a,.admin-sidebar-nav button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:42px;border:0;border-radius:6px;padding:10px 11px;background:transparent;color:var(--colour-heading);font:inherit;font-size:.84rem;font-weight:650;text-align:left;text-decoration:none;cursor:pointer}.admin-sidebar-nav>a{margin-top:8px;border-top:1px solid var(--colour-border);border-radius:0 0 6px 6px;padding-top:13px}.admin-sidebar-nav a:hover,.admin-sidebar-nav button:hover{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 26%,#ffffff)}.admin-sidebar-nav a.is-active,.admin-sidebar-nav button.is-active{background:#fff;box-shadow:inset 3px 0 0 var(--colour-accent),0 2px 8px #2b2b2b12;font-weight:750}.admin-sidebar-count{min-width:23px;border-radius:999px;padding:2px 6px;background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 32%,#ffffff);color:var(--colour-heading);font-size:.7rem;font-weight:700;text-align:center}.admin-sidebar-item-label{display:inline-flex;align-items:center;gap:10px;min-width:0}.admin-sidebar-item-icon{flex:0 0 18px;width:18px;height:18px;color:var(--colour-brand)}.admin-sidebar-item-label>span{min-width:0}.admin-orders-toolbar{margin-bottom:20px}.order-default-note{margin:0;color:var(--colour-muted, #6e6b65);font-size:.85rem}.admin-order-controls{display:grid;grid-template-columns:minmax(280px,560px) 180px;gap:12px;align-items:end;margin-bottom:24px}.admin-order-search{max-width:none;margin:0}.order-filter{position:relative}.order-filter-label{display:block;margin-bottom:7px;color:var(--colour-heading);font-size:.9rem;font-weight:500}.order-filter-toggle{display:flex;align-items:center;width:100%;min-height:42px;border:1px solid var(--colour-border);border-radius:4px;padding:8px 10px 8px 12px;background:#fff;color:var(--colour-heading);font:inherit;cursor:pointer}.order-filter-toggle:hover,.order-filter-toggle[aria-expanded=true]{border-color:var(--colour-heading)}.order-filter-count{min-width:22px;margin-left:auto;border-radius:999px;padding:2px 6px;background:var(--colour-accent);font-size:.72rem;font-weight:700;text-align:center}.order-filter-chevron{margin-left:8px;font-size:1rem}.order-filter-popover{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:280px;border:1px solid var(--colour-border);border-radius:9px;padding:16px;background:#fff;box-shadow:0 16px 40px #2b2b2b2e}.order-filter-popover-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.order-filter-popover-header button{border:0;padding:0;background:transparent;color:var(--colour-heading);font:inherit;font-size:.78rem;font-weight:700;text-decoration:underline;cursor:pointer}.order-filter-options{display:grid;gap:3px}.order-filter-options label{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border-radius:5px;padding:9px 8px;cursor:pointer}.order-filter-options label:hover{background:var(--colour-surface, #f0f1f2)}.order-filter-options input{width:16px;height:16px;accent-color:var(--colour-heading)}.order-status-total{color:var(--colour-muted, #6e6b65);font-size:.78rem}.order-filter-popover>p{margin:12px 0 0;border-top:1px solid var(--colour-border);padding-top:11px;color:var(--colour-muted, #6e6b65);font-size:.75rem}.orders-date-panel{margin-bottom:14px;border:1px solid var(--colour-border);border-radius:10px;padding:18px 14px 14px;background:#fff;box-shadow:0 6px 18px #2b2b2b0f}.date-range-picker{position:relative}.date-range-field{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:2px solid #1d6f6a;border-radius:6px;padding:8px 12px;background:#fff;color:var(--colour-heading);font:inherit;text-align:left;cursor:pointer}.date-range-legend{position:absolute;top:-9px;left:10px;padding:0 4px;background:#fff;color:#1d6f6a;font-size:.72rem;line-height:1.2}.date-range-icon{flex:none;width:20px;height:20px;color:#1d6f6a}.date-range-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-range-popover{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:min(290px,calc(100vw - 48px));border-radius:8px;padding:14px 12px;background:#fff;box-shadow:0 16px 40px #2b2b2b33}.date-range-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.date-range-header strong{color:var(--colour-heading);font-size:.95rem}.date-range-nav{border:0;border-radius:4px;padding:2px 10px;background:transparent;color:var(--colour-heading);font:inherit;font-size:1.3rem;line-height:1;cursor:pointer}.date-range-nav:hover{background:var(--colour-band)}.date-range-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.date-range-weekday{padding:6px 0;color:#8a8a8a;font-size:.72rem;text-align:center}.date-range-day{aspect-ratio:1;border:0;border-radius:7px;padding:0;background:transparent;color:var(--colour-heading);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.date-range-day:hover{background:#fbe3c8}.date-range-day.is-selected{background:#e08f35;color:#fff}.orders-date-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}.orders-export-button,.orders-search-button{width:100%;min-height:40px;border:0;border-radius:8px;color:#fff;font-weight:700;letter-spacing:.02em}.orders-export-button{background:#127a74}.orders-export-button:hover:not(:disabled){background:#0e625d}.orders-search-button{background:#1a803d}.orders-search-button:hover:not(:disabled){background:#146632}@media(max-width:640px){.orders-date-actions{gap:12px}}.admin-orders-message{margin:0 0 18px}.orders-table{min-width:980px}.orders-table td{padding-top:16px;padding-bottom:16px}.orders-table tbody tr:hover{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 10%,#ffffff)}.orders-table td strong,.order-reference,.order-client-email{display:block}.order-reference,.order-client-email{max-width:190px;margin-top:4px;color:var(--colour-muted, #6e6b65);font-size:.78rem;overflow-wrap:anywhere}.order-client-email:hover{color:var(--colour-heading)}.admin-order-items{display:grid;gap:8px;min-width:210px;margin:0;padding:0;list-style:none}.admin-order-items li>span{display:block}.admin-order-items li>span:last-child{margin-top:2px;color:var(--colour-muted, #6e6b65);font-size:.75rem}.order-amount{color:var(--colour-heading);font-weight:700;white-space:nowrap}.payment-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.payment-status:before{width:6px;height:6px;margin-right:6px;border-radius:50%;background:currentColor;content:""}.payment-status-complete{background:#e4f4e9;color:#1e6a3a}.payment-status-pending{background:#fff3d6;color:#8a5b00}.payment-status-failed{background:#fde7e7;color:#9f2f2f}@media(max-width:900px){.admin-workspace{grid-template-columns:170px minmax(0,1fr);gap:20px}}@media(max-width:760px){.admin-workspace{display:block}.admin-sidebar{position:static;margin-bottom:24px;padding:10px;height:auto;min-height:0}.admin-sidebar-label{display:none}.admin-sidebar-toggle{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:6px;padding:10px 12px;background:transparent;color:var(--colour-heading);font-weight:700;text-align:left}.admin-sidebar-toggle:hover{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 26%,#ffffff)}.admin-sidebar-nav{display:none;grid-template-columns:minmax(0,1fr);margin-top:8px}.admin-sidebar-nav.is-open{display:grid}.admin-sidebar-catalogue{grid-template-columns:minmax(0,1fr)}.admin-sidebar-nav>a{margin-top:8px;border-top:1px solid var(--colour-border);border-radius:0 0 6px 6px;padding-top:13px}.admin-sidebar-nav a,.admin-sidebar-nav button{justify-content:space-between;text-align:left}.admin-sidebar-nav a.is-active,.admin-sidebar-nav button.is-active{box-shadow:inset 3px 0 0 var(--colour-accent),0 2px 8px #2b2b2b12}.admin-orders-toolbar{align-items:flex-start;flex-direction:column}.admin-order-controls{grid-template-columns:minmax(0,1fr)}.order-filter-popover{right:auto;left:0;width:min(100%,320px)}}.category-select{position:relative}.category-select-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:1px solid var(--colour-border);border-radius:4px;padding:11px 12px;background:#fff;color:var(--colour-text);font:inherit;text-align:left;cursor:pointer}.category-select-toggle.is-placeholder{color:var(--colour-muted, #8a8a8a)}.category-select-caret{color:var(--colour-muted, #8a8a8a);font-size:.8rem}.category-select-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;max-height:240px;overflow-y:auto;background:#fff;border:1px solid var(--colour-border);border-radius:6px;box-shadow:0 12px 30px #00000026}.category-option{display:block;width:100%;border:none;padding:10px 12px;background:transparent;color:var(--colour-text);font:inherit;text-align:left;cursor:pointer}.category-option:hover{background:var(--colour-surface, #f0f1f2)}.category-option.is-selected{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 30%,transparent);font-weight:600}.category-select-empty{margin:0;padding:10px 12px;color:var(--colour-muted, #8a8a8a);font-size:.85rem}.category-select-footer{position:sticky;bottom:0;padding:8px;background:#fff;border-top:1px solid var(--colour-border)}.category-add-toggle{display:block;width:100%;border:none;border-radius:4px;padding:8px 6px;background:transparent;color:var(--colour-heading);font:inherit;font-weight:600;text-align:left;cursor:pointer}.category-add-toggle:hover{background:var(--colour-surface, #f0f1f2)}.category-add-form{display:flex;gap:8px}.category-add-form input{flex:1;min-width:0;border:1px solid var(--colour-border);border-radius:4px;padding:7px 10px;font:inherit}.category-add-error{margin:6px 2px 0;font-size:.8rem}.selected-items-box{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:8px;border:1px solid color-mix(in srgb,var(--colour-accent-dark) 45%,var(--colour-border));border-radius:8px;padding:10px 12px;background:color-mix(in srgb,var(--colour-accent) 12%,#ffffff)}.selected-items-label{color:var(--colour-charcoal);font-size:.72rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.selected-items-empty{color:var(--colour-muted, #8a8a8a);font-size:.85rem}.selected-items-list{display:flex;flex-wrap:wrap;min-width:0;gap:6px;margin:0;padding:0;list-style:none}.selected-item{display:inline-flex;min-width:0;max-width:100%;align-items:center;gap:4px;border:1px solid var(--colour-accent, #a8d4e2);border-radius:999px;padding:3px 4px 3px 12px;background:#fff;color:var(--colour-heading);font-size:.9rem;font-weight:600}.selected-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-item-remove{display:inline-flex;flex:none;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:999px;padding:0;background:transparent;color:var(--colour-heading);font-size:1.1rem;font-weight:700;line-height:1;cursor:pointer}.selected-item-remove:hover,.selected-item-remove:focus-visible{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 45%,#ffffff)}.category-picker-box{display:grid;gap:10px;padding:12px;border:1px solid var(--colour-border);border-radius:8px;background:var(--colour-surface, #f6f7f8)}.category-picker-search-field{display:grid;gap:6px;color:var(--colour-muted, #77736d);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.category-picker-search{width:100%;border:1px solid var(--colour-border);border-radius:6px;padding:9px 11px;background:#fff;font:inherit;font-size:.88rem;font-weight:400;letter-spacing:normal;text-transform:none}.category-picker-search:focus{border-color:var(--colour-accent-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--colour-accent) 28%,transparent);outline:0}.category-picker{display:grid;gap:10px;max-height:280px;overflow-y:auto}.category-picker-group{display:grid;min-width:0;max-width:100%;gap:4px}.category-picker .category-option{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--colour-border);border-radius:5px;background:#fff}.category-picker .category-option span:first-child{min-width:0;overflow-wrap:anywhere}.category-picker .subcategory-option{width:100%;margin-left:0;border-left:3px solid var(--colour-accent)}.category-tree-cell{border-left:3px solid color-mix(in srgb,var(--colour-accent) 55%,transparent);font-weight:600}.category-expand-toggle,.category-expand-spacer{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:6px;vertical-align:middle}.category-expand-toggle{border:1px solid var(--colour-border);border-radius:6px;background:#fff;color:var(--colour-heading);font-size:.8rem;line-height:1;cursor:pointer;transition:background .12s ease,border-color .12s ease}.category-expand-toggle:hover{border-color:var(--colour-accent-dark);background:var(--colour-band)}.category-inline-actions{display:flex;flex-wrap:wrap;gap:8px}.category-inline-actions .category-add-toggle{width:auto;padding:8px 10px}.category-add-toggle:disabled{cursor:not-allowed;opacity:.5}.category-inline-add{flex-wrap:wrap}.category-inline-add input,.category-inline-add select{min-width:180px}.tag-picker-box{display:grid;gap:10px;padding:12px;border:1px solid var(--colour-border);border-radius:8px;background:var(--colour-surface, #f6f7f8)}.tag-picker-search{width:100%;border:1px solid var(--colour-border);border-radius:4px;padding:8px 10px;background:#fff;font:inherit;font-size:.85rem}.tag-picker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-height:160px;overflow-y:auto}.tag-picker-empty{color:var(--colour-muted, #8a8a8a);font-size:.85rem}.tag-pill{display:inline-flex;max-width:100%;align-items:center;gap:6px;border:1px solid var(--colour-border);border-radius:999px;padding:5px 12px;background:#fff;color:var(--colour-text);font:inherit;font-size:.85rem;cursor:pointer}.tag-pill-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-pill:hover{border-color:var(--colour-accent, #a8d4e2)}.tag-pill.is-selected{background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 35%,#ffffff);border-color:var(--colour-accent, #a8d4e2);color:var(--colour-heading);font-weight:600}.tag-pill-icon{font-weight:700;line-height:1}.tag-pill-new{border-style:dashed;background:transparent;color:var(--colour-heading);font-weight:600}.tag-add-form{display:inline-flex;max-width:100%;min-width:0;align-items:center;gap:8px}.tag-add-form input{width:160px;min-width:0;border:1px solid var(--colour-border);border-radius:999px;padding:5px 12px;background:#fff;font:inherit;font-size:.85rem}.tag-add-error{margin:0;font-size:.8rem}.hero-section{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 15%,rgba(45,106,79,.14),transparent 55%),linear-gradient(180deg,var(--colour-brand-soft) 0%,#ffffff 100%);padding:clamp(56px,8vw,96px) 0;text-align:center}.hero-section:before{content:"";position:absolute;right:max(-80px,calc(50% - 700px));bottom:-50px;width:clamp(220px,32vw,380px);aspect-ratio:1;background:url(/images/logo-tree-green.png) center / contain no-repeat;opacity:.09;pointer-events:none}.hero-inner{position:relative;display:grid;justify-items:center;gap:18px;max-width:760px}.hero-eyebrow{margin:0;color:var(--colour-brand)}.hero-section h1{margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(2.4rem,6vw,4.2rem);font-weight:500;line-height:1.05}.hero-lede{max-width:560px;margin:0;font-size:1.05rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px}.offers-showcase{background:#f5f8f3;padding-block:56px}.offers-showcase-heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.offers-showcase-heading h2{margin:0 0 10px;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:500;line-height:1.05}.offers-showcase-heading p:last-child{max-width:620px;margin:0;color:#657067;font-size:.88rem}.offers-showcase-heading>a{display:inline-flex;align-items:center;min-height:44px;gap:8px;color:var(--colour-brand-dark);font-size:.85rem;text-decoration:underline;text-underline-offset:4px}.storefront-offer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,225px),1fr));gap:24px}.storefront-offer-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e0e6df;border-radius:7px;background:#fff}.storefront-offer-photo{display:flex;position:relative;overflow:hidden;aspect-ratio:4 / 3;background:#f3f5f0}.storefront-offer-photo img{width:100%;height:100%;min-width:0;object-fit:cover;border-radius:0}.storefront-offer-photo.is-bundle{gap:3px}.storefront-offer-photo.is-bundle img{width:calc(50% - 1.5px)}.storefront-offer-badge{position:absolute;top:12px;left:12px;padding:5px 10px;border-radius:999px;background:#fffffff2;color:var(--colour-brand-dark);box-shadow:0 1px 6px #0000000b;font-size:.72rem;font-weight:600}.storefront-offer-body{display:flex;flex:1;flex-direction:column;padding:20px}.storefront-offer-type{margin:0 0 9px;color:#68756b;font-size:.7rem}.storefront-offer-body h3{margin:0 0 12px;font-family:var(--font-serif);font-size:1.6rem;font-weight:500;line-height:1.1;overflow-wrap:anywhere}.storefront-offer-body h3 a:hover{color:var(--colour-brand);text-decoration:underline;text-underline-offset:3px}.storefront-offer-includes{margin:0 0 16px;color:#6b736c;font-size:.75rem}.storefront-offer-prices{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:auto;padding-top:4px;font-variant-numeric:tabular-nums}.storefront-offer-prices strong{color:var(--colour-brand-dark);font-size:1.2rem;font-weight:600}.storefront-offer-prices>span{color:#737873;font-size:.8rem}.storefront-offer-saving{margin:7px 0 0;color:#3d6b4d;font-size:.78rem}.storefront-offer-link{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-top:14px;border-top:1px solid #e5eae2;color:var(--colour-brand-dark);font-size:.8rem}.storefront-offer-card a:focus-visible{outline:2px solid var(--colour-brand);outline-offset:-3px}.storefront-offer-skeleton{min-height:320px;border:1px solid #e5eae2;border-radius:7px;background:linear-gradient(#edf1e9 60%,#fff 60%)}.storefront-offers-page .page-title{margin-bottom:14px}.storefront-offer-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;margin-top:28px;font-size:.8rem}@media(max-width:600px){.offers-showcase{padding-block:36px}.storefront-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.storefront-offer-body{padding:14px}.storefront-offer-body h3{font-size:1.35rem}.storefront-offer-badge{top:8px;left:8px;font-size:.66rem;padding:4px 8px}.storefront-offer-type{font-size:.64rem}}@media(max-width:360px){.storefront-offer-grid{grid-template-columns:minmax(0,1fr)}}.category-showcase-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:32px}.category-showcase-title{margin:0;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(2rem,4.5vw,2.9rem);font-weight:500;line-height:1}.category-showcase-all{color:var(--colour-brand);font-size:.9rem;font-weight:600}.category-showcase-all:hover{text-decoration:underline}.category-showcase-error{margin:0 0 20px}.shop-subcategories{margin-bottom:48px}.shop-section-title{margin:0 0 24px;color:var(--colour-heading);font-family:var(--font-serif);font-size:clamp(1.7rem,3.5vw,2.3rem);font-weight:500;line-height:1.1}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px;margin:0;padding:0;list-style:none}.category-tile{display:grid;gap:12px;color:var(--colour-heading)}.category-tile:focus-visible{border-radius:14px;outline:2px solid var(--colour-brand);outline-offset:6px}.category-tile-name{margin:0;font-family:var(--font-serif);font-size:1.45rem;font-weight:600;line-height:1.15;text-align:center;overflow-wrap:anywhere;transition:color .2s ease}.category-tile:hover .category-tile-name{color:var(--colour-brand)}.category-tile-media{display:block;overflow:hidden;border-radius:14px;background:var(--colour-brand-soft);box-shadow:0 10px 26px #2b2b2b14;aspect-ratio:1}.category-tile-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .9s cubic-bezier(.2,.6,.2,1)}.category-tile-media.is-placeholder img{padding:20%;object-fit:contain;opacity:.35}.category-tile:hover .category-tile-media img,.category-tile:focus-visible .category-tile-media img{transform:scale(1.07)}.category-tile-cta{justify-self:center;color:var(--colour-brand);font-size:.76rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase}.category-tile.is-loading .category-tile-name{width:60%;justify-self:center;border-radius:6px;background:var(--colour-band)}.category-tile.is-loading .category-tile-media{background:var(--colour-band);box-shadow:none;animation:category-tile-pulse 1.4s ease-in-out infinite}@keyframes category-tile-pulse{50%{opacity:.55}}.info-bars{display:grid}.info-bar{display:flex;min-height:88px;align-items:center;justify-content:center;gap:12px;padding:18px;text-align:center}.info-bar strong{font-family:var(--font-serif);font-size:1.7rem;font-weight:500}.info-bar-light{background:var(--colour-money-back);color:var(--colour-heading)}@media(max-width:900px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 18px}}@media(max-width:600px){.hero-section{padding:44px 0 52px}.hero-inner{gap:14px}.hero-lede{font-size:.95rem;line-height:1.7}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.category-tile-name{font-size:1.15rem}.category-tile-cta{display:none}}@media(max-width:560px){.info-bar{flex-direction:column;gap:4px}}@media(prefers-reduced-motion:reduce){.category-tile-media img{transition:none}.category-tile.is-loading .category-tile-media{animation:none}}.category-thumb-cell{width:1%}.category-thumb{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--colour-border);border-radius:8px;background:var(--colour-band);color:var(--colour-muted, #8a8a8a);object-fit:cover}.category-image-field{justify-items:start}.category-image-preview{width:160px;height:160px;border:1px solid var(--colour-border);border-radius:10px;object-fit:cover}.category-image-upload{position:relative;cursor:pointer}.category-image-upload:focus-within{outline:2px solid var(--colour-accent-dark);outline-offset:2px}.category-image-upload.is-disabled{cursor:not-allowed;opacity:.6}.admin-till-sections{display:grid;gap:40px}.admin-till-form{display:grid;gap:14px;max-width:560px;margin:14px 0 20px;border:1px solid var(--colour-border);border-radius:10px;padding:18px;background:var(--colour-band)}.admin-till-form label{display:grid;gap:6px}.admin-till-form label span{color:var(--colour-charcoal);font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.admin-till-form input{min-height:44px;border:1px solid var(--colour-border);border-radius:8px;padding:8px 12px;background:#fff;color:var(--colour-text)}.admin-till-form input:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:0}.admin-till-form-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-till-row-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-till-success{margin:0 0 12px;color:#2f6c4c;font-size:.9rem;font-weight:600}.admin-till-pin-form{margin-bottom:0}.admin-till-form select{min-height:44px;border:1px solid var(--colour-border);border-radius:8px;padding:8px 12px;background:#fff;color:var(--colour-text);font:inherit}.admin-till-form select:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:0}.admin-hours-range{display:flex;flex-wrap:wrap;gap:14px;margin:4px 0 18px}.admin-hours-range label{display:grid;gap:6px}.admin-hours-range label span{color:var(--colour-charcoal);font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.admin-hours-range input{min-height:44px;border:1px solid var(--colour-border);border-radius:8px;padding:8px 12px;background:#fff;color:var(--colour-text);font:inherit}.admin-hours-range input:focus{border-color:var(--colour-accent-dark);outline:2px solid var(--colour-accent);outline-offset:0}.admin-hours-user{margin-bottom:26px}.admin-hours-user-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.admin-hours-user-header h3{display:flex;align-items:baseline;gap:8px;margin:0;color:var(--colour-heading);font-size:1.1rem}.admin-hours-role{border-radius:999px;padding:2px 10px;background:var(--colour-band);color:var(--colour-charcoal);font-size:.7rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.admin-hours-total{color:var(--colour-heading);font-weight:600}.admin-hours-sessions{color:var(--colour-muted, #6e6b65);font-size:.82rem}.admin-hours-week{align-items:end}.admin-hours-week .btn{min-height:44px;white-space:nowrap}.admin-hours-week-hint{flex-basis:100%;margin:0;color:var(--colour-muted, #6e6b65);font-size:.82rem}.admin-week-table th,.admin-week-table td{text-align:center;vertical-align:middle}.admin-week-table .admin-week-staff{text-align:left;white-space:nowrap}.admin-week-table .admin-week-staff .admin-hours-role{margin-left:8px}.admin-week-day-head small{display:block;color:var(--colour-muted, #6e6b65);font-weight:400}.admin-week-hours-head,.admin-week-hours{text-align:right!important;white-space:nowrap}.admin-week-hours{color:var(--colour-heading);font-weight:700}.admin-week-cell-empty{color:var(--colour-muted, #6e6b65)}.admin-week-cell-add{min-width:44px;border-style:dashed;color:var(--colour-muted, #6e6b65)}.admin-week-cell-add:hover{color:var(--colour-heading)}.admin-week-cell{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px}.admin-week-cell-btn{border:1px solid var(--colour-border);border-radius:8px;background:#fff;color:var(--colour-text);font:inherit;cursor:pointer}.admin-week-cell-btn:hover{border-color:var(--colour-accent-dark);background:var(--colour-band)}.admin-week-cell-status{font-size:.7rem;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.admin-week-cell-status.is-open{color:#2f6c4c}.admin-week-cell-status.is-stale{color:#b42318}.admin-week-cell-status.is-adjusted{color:var(--colour-charcoal)}.admin-return-to-till{margin-top:8px;border-top:1px solid var(--colour-border);border-radius:0 0 6px 6px;padding-top:13px;color:var(--colour-heading);font-weight:650}.field-toggle-block{gap:6px}.toggle-field{display:flex;align-items:center;gap:10px;cursor:pointer}.toggle-field-label{font-weight:600}.toggle-switch{position:relative;display:inline-block;width:46px;height:26px;flex-shrink:0}.toggle-switch input{position:absolute;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#cfcabe;transition:background .15s ease;pointer-events:none}.toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #2b2b2b59;transition:transform .15s ease}.toggle-switch input:checked+.toggle-slider{background:var(--colour-accent-dark, #5d97ab)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--colour-accent);outline-offset:2px}.in-store-badge{display:inline-block;margin-left:8px;border-radius:999px;padding:2px 8px;background:color-mix(in srgb,var(--colour-accent, #a8d4e2) 35%,#ffffff);color:var(--colour-heading);font-size:.72rem;font-weight:700;white-space:nowrap}
