:root { color-scheme: light; --ink:#201a14; --muted:#756b62; --paper:#faf7f1; --panel:#fff; --line:#e3d6c5; --amber:#bd6727; --amber-dark:#904710; --soft:#f4eadc; --danger:#a84242; }
.quick-action-buttons { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
#inventory-quick-actions > label { margin-top:12px; }
#inventory-offer-list [hidden] { display:none; }
.page > header.card { display:block; width:100%; }

/* Retailer guide shares the public-site color and typography language. */
main.page { width: min(100% - 40px, 900px); padding-block: clamp(28px, 5vw, 64px) 80px; }
main.page > header.card { padding: clamp(28px, 5vw, 46px); border-top: 4px solid #ca7129; background: #252420; }
main.page > header.card h1 { color: #fffdfa; font-family: Georgia, "Times New Roman", serif; font-weight: 400; line-height: 1.12; }
main.page > header.card p { color: #e2d9cd; }
main.page > header.card .eyebrow { color: #efa65f; }
main.page > header.card a { color: #ffd1aa; }
main.page > section.card { padding: clamp(24px, 4vw, 36px); border-color: #d9cfc2; background: #fffdfa; box-shadow: 0 10px 26px rgba(39, 35, 31, .06); }
main.page h2 { color: #27231f; font-family: Georgia, "Times New Roman", serif; font-size: clamp(25px, 3vw, 34px); font-weight: 400; line-height: 1.18; }
main.page p, main.page li { color: #554e46; line-height: 1.65; }
main.page a:focus-visible { outline: 3px solid #ca7129; outline-offset: 3px; }
@media (max-width: 600px) { main.page { width: calc(100% - 28px); padding-top: 20px; } }

*{box-sizing:border-box}
 body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
 header,main{width:min(100% - 40px,1100px);margin:auto}
header{min-height:74px;display:flex;align-items:center;justify-content:space-between}
.brand{color:var(--ink);font-size:21px;font-weight:800;text-decoration:none}
.brand span{color:var(--amber);font-weight:650}
.quiet-link{color:var(--muted)}
main{padding:38px 0 76px}
.card{margin-bottom:18px;padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:0 10px 30px rgba(66,41,16,.05)}
.auth-card{max-width:580px;margin:40px auto}
.eyebrow{margin:0 0 8px;color:var(--amber-dark);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
h1{margin:0;font-size:clamp(36px,5vw,54px);letter-spacing:-.05em;line-height:1.02}
h2{margin:0 0 7px;font-size:22px;letter-spacing:-.025em}
p{color:var(--muted)}
label{display:grid;gap:6px;color:var(--ink);font-size:14px;font-weight:700}
input,textarea,select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
textarea{min-height:98px;resize:vertical}
form{display:grid;gap:15px;margin-top:20px}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
.compact-grid{gap:15px;margin-top:0}
.wide{grid-column:1/-1}
.primary,.secondary{min-height:42px;padding:9px 15px;border:0;border-radius:10px;font:inherit;font-weight:800;cursor:pointer}
.primary{background:var(--amber);color:#fff}
.primary:hover{background:var(--amber-dark)}
.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}
.message{min-height:22px;margin:4px 0 0;color:var(--danger);font-size:14px}
.message.success{color:#247b49}
.small{font-size:13px}
.is-hidden{display:none!important}
.portal-heading,.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}
.portal-heading p,.section-heading p{margin:8px 0 0}
.account-summary{display:grid;justify-items:end;gap:2px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);text-align:right;min-width:230px}
.account-summary .secondary{margin-top:8px}
.account-label{color:var(--muted);font-size:12px;font-weight:700}
.account-summary strong{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.portal-grid{align-items:start}
.portal-section{padding:0}
.portal-section>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 26px;cursor:pointer;list-style:none}
.portal-section>summary::-webkit-details-marker{display:none}
.portal-section>summary h2{margin:0}
.portal-section>summary:focus-visible,.claim-card>summary:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:18px}
.portal-section>summary .summary-chevron{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--amber-dark);font-size:23px;font-weight:700;line-height:1;transition:transform .18s ease}
.portal-section[open]>summary .summary-chevron{transform:rotate(180deg)}
.portal-section-body{padding:0 26px 26px}
.portal-section-body>p:first-child{margin-top:0}
.store-picker{max-width:420px;margin:0 0 18px}
.claim-card{padding:0}
.claim-card summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 26px;cursor:pointer;list-style:none}
.claim-card summary::-webkit-details-marker{display:none}
.claim-card summary strong,.claim-card summary span{display:block}
.claim-card summary strong{font-size:22px;letter-spacing:-.025em}
.claim-card summary span span{margin-top:3px;color:var(--muted);font-size:14px;font-weight:400}
.claim-card .summary-chevron{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--amber-dark);font-size:23px;font-weight:700;line-height:1;transition:transform .18s ease,background .18s ease}
.claim-card[open] .summary-chevron{transform:rotate(180deg);background:#f0dfcb}
.claim-card>p,.claim-card>form{margin-left:26px;margin-right:26px}
.claim-card>p{margin-top:0}
.claim-card>form{padding-bottom:26px}
.search-results{grid-column:1/-1;display:grid;gap:8px}
.store-choice{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}
.store-choice strong,.store-choice span{display:block}
.store-choice span{color:var(--muted);font-size:13px}
.plain-list{margin:15px 0 0;padding:0;list-style:none}
.plain-list li{padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.drop-list{display:grid;gap:10px}
.drop-row,.source-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);text-align:left}
.drop-row{appearance:none;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.drop-row:hover{border-color:#cfaa83;box-shadow:0 8px 20px rgba(66,41,16,.08);transform:translateY(-1px)}
.drop-copy,.drop-actions,.drop-title{display:flex;align-items:center;gap:9px}
.drop-copy{min-width:0;flex:1;flex-direction:column;align-items:flex-start;gap:3px}
.drop-copy>span:last-child{color:var(--muted);font-size:13px}
.drop-title strong{font-size:17px;color:var(--ink)}
.drop-kind{padding:3px 7px;border-radius:99px;background:var(--soft);color:var(--amber-dark);font-size:12px;font-weight:800}
.drop-actions{flex-shrink:0}
.status-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:99px;font-size:12px;font-weight:800}
.status-draft{background:#eee9e1;color:#6e655b}
.status-published{background:#e7f4eb;color:#247b49}
.status-past{background:#ece8e1;color:#685f55}
.status-cancelled{background:#f9e8e8;color:#a84242}
.edit-action{padding:7px 9px;border:1px solid var(--line);border-radius:9px;color:var(--ink);font-size:13px;font-weight:800}
.drop-row:hover .edit-action{border-color:#cfaa83;color:var(--amber-dark)}
.source-row strong,.source-row span{display:block}
.source-row>span:first-child>span{margin-top:3px;color:var(--muted);font-size:13px}
.tag{display:inline-block;padding:3px 7px;border-radius:99px;background:var(--soft);color:var(--amber-dark);font-size:12px;font-weight:800}
.empty{padding:18px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.checkbox-label{display:flex;align-items:center;gap:10px}
.checkbox-label input{width:auto}
.inventory-import{margin:24px 0;padding:16px;border:1px solid var(--line);border-radius:12px}
.inventory-import summary{cursor:pointer;font-weight:700}
#inventory-preview{max-height:280px;overflow:auto}
#delivery-list,#inventory-offer-list{display:grid;gap:10px;margin-top:20px}
.store-choice{display:grid;width:100%;padding:10px;border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer}
button:disabled{opacity:.55;cursor:wait}
dialog{width:min(100% - 30px,760px);max-height:calc(100dvh - 30px);padding:26px;border:0;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.25);overflow:auto}
dialog::backdrop{background:rgba(28,19,12,.45)}
dialog form{margin:0}
dialog header,dialog footer{width:auto;min-height:0;margin:0;padding:0;display:flex;align-items:start;justify-content:space-between;gap:18px}
.dialog-actions{display:flex;align-items:center;gap:10px}.destructive{background:transparent;color:#b8463b;border:1px solid rgba(184,70,59,.45)}.destructive:hover{background:rgba(184,70,59,.08)}
.icon{border:0;background:transparent;font-size:28px;cursor:pointer}
.field-label{display:inline-flex;align-items:baseline;gap:6px}
.field-note{display:inline;color:var(--muted);font-size:12px;font-weight:600}
.field-help{display:block;color:var(--muted);font-size:12px;font-weight:400;line-height:1.35}
.apple-sign-in{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:10px;background:#000;color:#fff;font:inherit;font-size:16px;font-weight:800;cursor:pointer}
.apple-sign-in:hover{background:#252525}
.apple-mark{font-size:16px;line-height:1}
.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0 0;color:var(--muted);font-size:13px}
.auth-divider::before,.auth-divider::after{content:"";flex:1;height:1px;background:var(--line)}
@media(max-width:700px){header,main{width:min(100% - 28px,1100px)}
.portal-grid,.form-grid{grid-template-columns:1fr}
.wide{grid-column:auto}
.portal-heading,.section-heading,.drop-row,.source-row{flex-direction:column;align-items:stretch}
.portal-heading .secondary{align-self:flex-start}
.account-summary{justify-items:start;text-align:left}
.drop-actions{justify-content:space-between}
.claim-card summary{padding:20px}
.portal-section>summary{padding:20px}
.portal-section-body{padding:0 20px 20px}
.claim-card>p,.claim-card>form{margin-left:20px;margin-right:20px}
}
