:root{--navy:#173f5f;--gold:#f2a900;--ink:#18212b;--muted:#66717d;--line:#dce3e8;--paper:#fff;--wash:#f4f7f9;--danger:#a52323;--success:#17633b}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--wash);font-family:Arial,Helvetica,sans-serif;line-height:1.45}.shell{width:min(1160px,calc(100% - 40px));margin-inline:auto}.narrow{max-width:900px}.topbar{background:var(--navy);color:#fff}.topbar-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between}.wordmark{color:#fff;text-decoration:none;font-size:1.15rem;font-weight:800}.account{display:flex;gap:18px;align-items:center}.account form{margin:0}.link-button{padding:0;color:#fff;background:none;border:0;text-decoration:underline;cursor:pointer}.page{padding-block:40px}.page-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-title h1,.login-card h1{margin:0;font-size:2rem}.eyebrow{margin:0 0 6px;color:var(--navy);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.card{padding:26px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 7px 22px rgba(23,63,95,.06)}.button,button[type=submit]{display:inline-block;padding:11px 17px;color:#fff;background:var(--navy);border:0;border-radius:7px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.button:hover,button[type=submit]:hover{filter:brightness(.94)}table{width:100%;border-collapse:collapse}th,td{padding:14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-size:.78rem;text-transform:uppercase}.status{display:inline-block;padding:4px 9px;border-radius:99px;background:#e7edf1;font-size:.8rem;font-weight:700}.status-active{color:var(--success);background:#e4f4eb}.status-inactive{color:var(--danger);background:#f8e8e8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:grid;gap:7px;font-weight:700}input,select,textarea{width:100%;padding:11px 12px;color:var(--ink);background:#fff;border:1px solid #b8c3cb;border-radius:6px;font:inherit}input[type=checkbox]{width:auto;accent-color:var(--navy)}textarea{resize:vertical}small{display:block;color:var(--muted);font-weight:400}.span-2{grid-column:span 2}.actions{display:flex;justify-content:flex-end;gap:12px}.message{width:min(1160px,calc(100% - 40px));margin:20px auto 0;padding:13px 16px;border-radius:7px}.message.error{color:#741b1b;background:#f9e4e4;border:1px solid #ebbaba}.message.notice{color:#145c36;background:#e2f4e9;border:1px solid #b8dfc7}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);display:grid;gap:18px}.table-wrap{overflow:auto}.row-links{display:flex;flex-wrap:wrap;gap:12px}.empty{text-align:center}.lookup-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:18px;margin-bottom:24px}.product-form{display:grid;gap:24px}.section-heading{margin-bottom:20px}.section-heading h2{margin:0 0 4px;color:var(--navy)}.section-heading p{margin:0;color:var(--muted)}.colour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.colour-choice{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px}.swatch{width:24px;height:24px;flex:0 0 auto;border:1px solid #aeb7be;border-radius:50%;background:var(--swatch)}.price-table{min-width:850px}.price-table input{min-width:105px}.money-input{max-width:125px}.negative{color:var(--danger);font-weight:800}.check-label{display:flex;grid-auto-flow:column;justify-content:start;align-items:center;gap:9px}.variant-list{display:grid;gap:18px}.variant-card{padding:18px;border:1px solid var(--line);border-radius:10px}.variant-title{display:flex;align-items:center;gap:10px;margin-bottom:16px}.variant-title .check-label{margin-right:auto}.variant-title small{font-family:monospace}.default-view-label{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:.85rem}.default-view-label select{width:auto;padding:7px 30px 7px 9px}.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.image-upload{padding:12px;border:1px dashed #aebac3;border-radius:8px}.image-preview{display:grid;place-items:center;aspect-ratio:1;background:var(--wash);overflow:hidden;border-radius:6px}.image-preview img{width:100%;height:100%;object-fit:contain}.image-preview em{color:var(--muted);font-weight:400}.upload-status{min-height:2.8em}.upload-error{color:var(--danger)}.logo-card{margin-top:24px}.logo-upload{max-width:420px;padding:14px;border:1px dashed #aebac3;border-radius:8px}.logo-preview{display:grid;place-items:center;min-height:150px;padding:16px;background:var(--wash);border-radius:6px}.logo-preview img{max-width:100%;max-height:180px;object-fit:contain}.logo-preview em{color:var(--muted);font-weight:400}@media(max-width:800px){.lookup-form,.image-grid{grid-template-columns:1fr}.variant-title{align-items:flex-start;flex-wrap:wrap}.default-view-label{width:100%;margin-left:0}}@media(max-width:700px){.shell{width:min(100% - 24px,1160px)}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-title{align-items:flex-start}.account span{display:none}.row-links{min-width:180px}}
/* Phase 3 product lifecycle controls */
.row-links form{display:inline;margin:0}.row-links .link-button{color:var(--navy)}.danger-link{color:#a12622!important}.status-archived{background:#e7e9ec;color:#4f5964}
.status-paid,.status-fulfilled{background:#dff2e7;color:#17633b}.status-pending_payment{background:#fff0c7;color:#775600}.status-payment_failed,.status-cancelled,.status-refunded{background:#fbe0df;color:#8c2622}.order-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.order-admin-grid .card{margin:0}.order-admin-grid td small,.table-wrap td small{display:block;color:var(--muted);font-size:.78rem}.order-totals{max-width:330px;margin:20px 0 0 auto}.order-totals p{display:flex;justify-content:space-between;gap:20px;margin:8px 0}@media(max-width:850px){.order-admin-grid{grid-template-columns:1fr}}
.title-actions{display:flex;gap:10px;align-items:center}.button-secondary{color:var(--navy);background:#fff;border:1px solid var(--navy)}.tax-table input[type=checkbox]{width:20px;height:20px}.tax-table input[type=text],.tax-table input[type=number],.tax-table input:not([type]){min-width:90px}.rate-input{display:flex;grid-template-columns:minmax(90px,130px) auto;align-items:center;gap:8px}.tax-actions{margin-top:22px}@media(max-width:700px){.title-actions{align-items:stretch;flex-direction:column}}

/* Product list actions */
.product-actions { white-space: nowrap; }
.product-action-row { display: flex; align-items: center; gap: 12px; }
.product-action-row a { display: inline-flex; align-items: center; min-height: 42px; }
.product-action-row form { display: inline-flex; align-items: center; margin: 0; }
.product-action-row button[type=submit].danger-link { padding: 10px 16px; color: #fff !important; background: #a52323; border: 0; border-radius: 7px; text-decoration: none; font-weight: 700; }
.product-action-row button[type=submit].danger-link:hover { background: #861b1b; }
.variant-title button.remove-colour[type=submit]{margin-left:8px;padding:7px 11px;color:#a52323;background:#fff;border:1px solid #a52323;border-radius:6px;font-size:.82rem;white-space:nowrap}
.variant-title button.remove-colour[type=submit]:hover{background:#fbeaea}
.variant-title .colour-history-note{font-family:Arial,Helvetica,sans-serif;max-width:135px;line-height:1.25}
.variant-title .main-badge{display:inline-block;margin-top:4px;padding:3px 7px;color:#fff;background:var(--navy);border-radius:4px;font:700 .7rem Arial,Helvetica,sans-serif;letter-spacing:.06em}
.variant-title .main-badge[hidden]{display:none}
.variant-title .set-main-button{padding:7px 10px;color:var(--navy);background:#fff;border:1px solid var(--navy);border-radius:6px;font:700 .82rem Arial,Helvetica,sans-serif;white-space:nowrap;cursor:pointer}
.variant-title .set-main-button:hover:not(:disabled){background:#eaf2f7}
.variant-title .set-main-button:disabled{color:#7e8992;border-color:#b8c3cb;cursor:not-allowed}

/* Product list ordering */
.product-order-help{margin:0 0 .3rem;color:#526473}
.product-order-status{min-height:1.4rem;margin:.25rem 0 .55rem;font-size:.9rem}
.product-order-controls{display:flex;align-items:center;gap:.25rem;white-space:nowrap}
.product-order-controls button{border:1px solid #c6d4dd;background:#fff;color:#173f5f;border-radius:5px;padding:.25rem .4rem;font:inherit;line-height:1;cursor:pointer}
.product-order-controls button:hover,.product-order-controls button:focus-visible{border-color:#173f5f;background:#edf4f8}
.product-order-controls button:disabled{opacity:.5;cursor:wait}
.product-drag-handle{cursor:grab!important;touch-action:none}
.product-drag-handle:active{cursor:grabbing!important}
[data-product-order] tr.is-dragging{opacity:.5}
.product-order-controls .product-drag-handle{font-size:1.3rem;line-height:1;padding:.25rem .45rem;touch-action:none;user-select:none}
body.product-reordering,body.product-reordering *{user-select:none!important;cursor:grabbing!important}
[data-product-order] tr.is-dragging{background:#e8f3fa;opacity:.75}

/* Shop branding colour picker and editable HEX value */
.colour-field{display:grid;align-content:start;gap:7px;font-weight:700}
.colour-input-row{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px}
.colour-input-row input[type=color]{width:58px;height:44px;padding:3px;cursor:pointer}
.colour-input-row input[type=text]{min-width:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase}
