*{box-sizing:border-box}body{margin:0;background:#fff6f2;color:#493d38;font:400 15px/1.55 Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased}header{padding:24px 5%;background:#fff;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.logo{font-size:30px;letter-spacing:5px}small{color:#706b69}main{max-width:1280px;margin:auto;padding:32px}h1{font:400 38px/1.2 Lora,Georgia,serif;letter-spacing:-.7px;margin:12px 0}nav{display:flex;gap:12px;margin:24px 0}button,select,input{font:inherit;border:1px solid #8A8B8D;border-radius:6px;padding:10px;background:white;color:inherit}button{cursor:pointer}button.active,.primary{background:#A86B58;color:#fff}button:disabled{opacity:.4;cursor:not-allowed}.notice{padding:14px 18px;background:#F1C2B3;border-radius:6px;line-height:1.5}.grid{display:grid;grid-template-columns:1fr 300px;gap:24px}.panel{background:white;border:1px solid #e1d3ce;border-radius:10px;padding:24px}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:16px 8px;border-bottom:1px solid #eee}th{font-size:12px;color:#706b69;text-transform:uppercase}td input{width:80px}.tag{background:#F1C2B3;padding:5px 8px;border-radius:4px;font-size:12px}progress{width:100%;height:18px;accent-color:#A86B58}.metric{font-variant-numeric:tabular-nums;font-weight:600;font-size:30px;margin:18px 0 5px}aside{align-self:start;position:sticky;top:24px}label{display:block;margin:15px 0 6px}#search{width:100%;margin:18px 0} .row{display:flex;justify-content:space-between;margin:14px 0}.muted{color:#706b69;font-size:13px;line-height:1.6}.hidden{display:none}#message{margin:12px 0;color:#8c4938}dialog{border:0;border-radius:12px;max-width:600px;padding:30px}dialog::backdrop{background:#0006} @media(max-width:850px){main{padding:20px}.grid{grid-template-columns:1fr}aside{position:static}.tablewrap{overflow:auto}header{gap:20px}.logo{font-size:22px}h1{font-size:30px}}
[hidden]{display:none!important}.login{max-width:480px;margin:50px auto}.login input{width:100%}.login button{margin-top:24px;width:100%}.panel{margin-bottom:24px}details{font-size:12px;max-width:360px}summary{cursor:pointer}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.formgrid input,.formgrid select{display:block;width:100%}td input[type=checkbox]{width:auto}#adminSearch{width:100%}#staffMessage,#loginError{color:#8c4938}
.product-details{font-size:12px;line-height:1.7;color:#706b69;margin-top:8px}#productDialog{max-width:850px;width:95%}#addProduct{margin-bottom:16px}.formgrid input[type=checkbox]{width:auto}#adminSearch{margin:16px 0}
button{position:relative;transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease,transform .08s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(hover:hover){button:not(:disabled):hover{background:#fbe4dc;border-color:#A86B58;box-shadow:0 3px 9px #493d3818}button.primary:not(:disabled):hover,button.active:not(:disabled):hover{background:#8b5141;border-color:#8b5141}}
button:not(:disabled):active{background:#F1C2B3;transform:translateY(1px) scale(.98);box-shadow:inset 0 2px 4px #493d3820}
button.primary:not(:disabled):active,button.active:not(:disabled):active{background:#754435}
button:focus-visible{outline:3px solid #A86B58;outline-offset:3px}
button[aria-busy=true]{opacity:.85;cursor:progress;padding-right:34px}
button[aria-busy=true]::after{content:"";position:absolute;right:11px;top:calc(50% - 6px);width:10px;height:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:button-spin .65s linear infinite}
@keyframes button-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){button{transition:none}button:not(:disabled):active{transform:none}button[aria-busy=true]::after{animation:none;border-style:dotted}}

.product-row{display:flex;gap:16px;align-items:flex-start;min-width:270px}.product-photo{width:96px;min-width:96px;height:96px;background:white;border:1px solid #e1d3ce;border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;color:#706b69;overflow:hidden}.product-photo a{display:block;width:100%;height:100%}.product-photo img{width:100%;height:100%;object-fit:contain;padding:5px}.product-copy{min-width:0}.type-label{display:block;margin-top:3px;font-size:11px}.product-details{margin-top:6px;line-height:1.6}.more-details{margin-top:6px}.more-details summary{color:#8b5141;font-weight:600;list-style-position:inside;padding:4px 0}.more-details[open] summary{margin-bottom:4px}.more-details summary:hover{color:#754435}.listing-controls{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:16px 0;font-size:12px}.listing-controls label{display:flex;gap:8px;align-items:center;margin:0}.listing-controls select,.listing-controls button{padding:7px 10px}.listing-controls>div{display:flex;gap:10px;align-items:center}@media(max-width:600px){.product-photo{width:68px;min-width:68px;height:68px}.product-row{gap:10px}.listing-controls{gap:10px}.product-details{font-size:11px}td,th{padding:12px 6px}}

header{background:#F1C2B3;border-bottom-color:#A86B58}.logo{color:#754435}input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #A86B58;outline-offset:2px}th{border-bottom-color:#8A8B8D}.order-summary{cursor:pointer;transition:background-color .14s}.order-summary:hover{background:#fbe4dc}.order-toggle{border:0;background:transparent;color:#754435;padding:5px 0;font-weight:700;text-align:left}.order-chevron{display:inline-block;transition:transform .14s;margin-right:6px}.order-toggle[aria-expanded=true] .order-chevron{transform:rotate(90deg)}.order-detail-row>td{padding:0}.order-detail{padding:20px 24px;background:#fff6f2;border-left:3px solid #A86B58}.order-items{margin-top:12px;font-size:13px}.order-items td,.order-items th{padding:12px}.order-items tfoot{font-weight:700;background:#fbe4dc}.order-items td:not(:first-child){white-space:nowrap}.order-summary .tag{background:#F1C2B3;color:#493d38}

.category-products{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;list-style:none;margin:20px 0;padding:0}
.category-product-card{display:flex;flex-direction:column;gap:8px;min-width:0;padding:10px;border:1px solid #e1d3ce;border-radius:12px;background:#fff}
.category-product-card .product-photo{width:100%;min-width:0;height:auto;aspect-ratio:1;border:0;border-radius:8px;background:#fffaf8}
.category-product-name{font-size:12px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.category-product-card small{margin-top:auto;font-size:10px;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.category-products-empty{grid-column:1/-1;padding:16px 0;font-size:13px;color:#706b69}
@media(max-width:1000px){.category-products{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.category-products{grid-template-columns:repeat(2,minmax(0,1fr))}}

#review{width:min(900px,95vw);max-width:900px;max-height:90vh;overflow:auto}#reviewBody .tablewrap{max-height:48vh;overflow:auto}#reviewBody th{position:sticky;top:0;background:#fff}#reviewWarning{margin:16px 0}#reviewWarning p{margin:0 0 8px}.underfill-agree{display:flex;align-items:flex-start;gap:10px}.underfill-agree input{margin-top:5px}#reviewError{color:#8c4938}.order-statuses{min-width:210px;max-width:250px}.order-statuses label{font-size:11px;margin:6px 0}.order-statuses select,.order-statuses input{display:block;width:100%;font-size:12px;padding:6px;margin-top:2px}.order-statuses select:disabled{opacity:1;color:#493d38;background:#fff6f2;cursor:default}.order-statuses button{font-size:12px;padding:6px 10px;margin-top:6px}.status-message{display:block;font-size:11px;margin-top:5px}.shipment-date{display:block;font-size:12px}.order-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.button{display:inline-block;border:1px solid #8A8B8D;border-radius:6px;background:#fff;padding:8px 12px;color:#754435;text-decoration:none;font-size:12px}.button:hover{background:#F1C2B3}.button:active{transform:translateY(1px)}.button:focus-visible{outline:2px solid #A86B58;outline-offset:2px}

.status-cell{vertical-align:top;min-width:150px;font-size:13px}.status-cell select,.status-cell input{display:block;width:100%;min-width:135px;font-size:12px;padding:7px}.status-cell button{display:block;margin-top:8px;font-size:12px;padding:6px 10px}.status-cell [data-date-pending]{display:block;margin-top:4px}.status-cell .status-message{max-width:170px}.order-summary td{vertical-align:top}

#accountDialog{max-width:800px;width:95%}#accountError{color:#8c4938}

#passwordDialog{width:min(460px,calc(100vw - 32px));padding:28px}#passwordDialog h2{margin:0 0 24px}.password-form{display:grid;gap:18px}.password-form label{display:grid;gap:7px;margin:0;font-size:14px}.password-form input{width:100%;min-width:0}.password-form #passwordMessage{margin:0}.password-form #passwordMessage:empty{display:none}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.password-form .dialog-actions{margin-top:4px}.shipment-actions{display:flex;flex-direction:column;gap:10px}.shipment-actions button{width:100%}#emptyOrderDialog{width:min(460px,calc(100vw - 32px))}#emptyOrderDialog h2{margin-top:0}#emptyOrderDialog p{margin:16px 0 24px}

.catalogue-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.catalogue-heading button{flex-shrink:0;padding:7px 12px;font-size:13px}

.factory-selector{margin-bottom:20px}.factory-selector select{max-width:520px}.check-label{display:flex;align-items:center;gap:10px}.check-label input{width:auto}.formgrid fieldset{border:1px solid #8A8B8D;border-radius:8px;padding:16px}.formgrid fieldset label{margin:10px 0}

.account-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.account-form>label{min-width:0;margin:0}.account-form input,.account-form select{box-sizing:border-box;min-height:42px;margin-top:5px}.account-form .account-actions,.account-form .account-notes,.account-form .account-error{grid-column:1/-1}.account-form .account-actions{display:flex;gap:8px;align-items:center;margin-top:4px}.account-form .account-notes{font-size:12px;line-height:1.6;margin-top:4px}.account-notes p{margin:0 0 6px}.account-error:empty{display:none}@media(max-width:760px){.account-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.account-form{grid-template-columns:1fr}}

#createAccount{grid-template-columns:repeat(4,minmax(0,1fr))}#createAccount .account-actions{grid-column:auto;align-self:end;margin:0;min-height:42px}#createAccount .account-actions button{min-height:42px}@media(max-width:1000px){#createAccount{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){#createAccount{grid-template-columns:1fr}}

.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-logo{display:block;width:112px;height:auto;max-height:48px;object-fit:contain;flex-shrink:0}.brand small{white-space:nowrap}@media(max-width:600px){header{flex-wrap:wrap;gap:12px}.brand-logo{width:96px}.brand{gap:8px}}

.account-form,#createAccount{grid-template-columns:1fr;gap:20px}.account-form .account-section{min-width:0;margin:0;padding:18px;border:1px solid #e1d3ce;border-radius:8px;grid-column:1/-1}.account-section legend{padding:0 8px;font-weight:600;font-size:15px}.account-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.market-settings .account-section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-form .account-section label{margin:0;min-width:0}#createAccount .account-actions{grid-column:1/-1;align-self:start}@media(max-width:600px){.market-settings .account-section-grid{grid-template-columns:1fr}}@media(max-width:480px){.account-section-grid{grid-template-columns:1fr}}

#shippingForm{margin:24px 0}#shippingForm fieldset{min-width:0;padding:18px;border:1px solid #e1d3ce;border-radius:8px}#shippingForm label{margin:0;min-width:0}#shippingForm input{display:block;width:100%;min-width:0;margin-top:6px}.ex-fac-agree{margin:20px 0;padding:16px;background:#fff6f2;border:1px solid #e1d3ce;border-radius:8px}.underfill-agree input{flex:0 0 auto}.order-shipping{margin-bottom:24px}.order-shipping dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.order-shipping dt{font-size:12px;color:#706b69}.order-shipping dd{margin:0;overflow-wrap:anywhere}@media(max-width:480px){.order-shipping dl{grid-template-columns:1fr}}

.category-access-row,
#categoryControls {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 12px;
  min-width: 0;
}
.category-access-row > div,
#categoryControls > div {
  min-width: 0;
}
.category-access-row label { margin-top: 0; }
.category-access-row select { max-width: 100%; }
#distributorSelect { width: min(100%, 26rem); }
.category-access-row > div:first-child { flex: 0 1 26rem; }
nav { flex-wrap: wrap; }

#productForm .product-factories,
#productForm #productError,
#productForm .product-enabled,
#productForm .product-save-actions { grid-column: 1 / -1; }
#productForm .factory-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 20px;
}
#productForm .factory-options label,
#productForm .product-enabled { margin: 0; }
#productForm .check-label input { flex: 0 0 auto; }
#productForm #productError:empty { display: none; }

.market-settings .catalogue-row-start { grid-column-start: 1; }

.order-summary.order-voided td { background: #ebebeb; color: #555; }
.order-summary.order-complete td { background: #e2f3e8; }
#amendDialog { width: min(780px, 94vw); max-width: 780px; max-height: 90vh; }
#amendItems input { width: 100px; }
#amendProduct { min-width: 0; max-width: 100%; }
#amendClose { margin-top: 12px; }
#amendError { color: #8c4938; }

.order-summary.order-change-pending td { background: #fff2d7; }
.pending-change-badge { display: inline-block; padding: 4px 8px; border-radius: 4px; background: #ffe3a3; color: #653b00; font-weight: 700; }

.activity-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-bottom:16px}
.activity-filters label{margin:0;flex:1;min-width:180px}
.activity-filters input,.activity-filters select{display:block;width:100%;margin-top:6px}
#adminActivity details{min-width:180px;max-width:600px}
#adminActivity summary{cursor:pointer;color:#8b5141}
.audit-changes{margin-top:12px;font-size:12px}
.audit-changes th{text-transform:none;overflow-wrap:anywhere}
.audit-changes pre,.audit-extra{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 Manrope,system-ui,sans-serif;margin:8px 0;max-height:360px;overflow:auto}
.audit-extra{padding:12px;background:#fff6f2;border-radius:8px}
#createAdmin .account-section-grid{width:100%}

.activity-description{margin:0 0 8px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.activity-description:last-child{margin-bottom:0}nav{flex-wrap:wrap}
