/* Ranch-native catalog composition. Scoped to the reusable store surfaces. */
.rrr-public-dialog-open { overflow: hidden; }
.rrr-storefront .rrr-storefront__cart-bubble { position:fixed; z-index:80; right:24px; bottom:24px; display:flex; align-items:center; gap:12px; min-height:56px; padding:14px 22px; border:2px solid #e4c684; border-radius:999px; background:#173f35; color:#fff; box-shadow:0 6px 24px #102d2740; font:800 1rem/1.4 var(--sans,Arial,sans-serif); }
.rrr-storefront__cart-bubble [data-store-count] { display:grid; place-items:center; min-width:28px; height:28px; padding:0 5px; border-radius:50%; background:#fff; color:#173f35; }
dialog.rrr-public-panel-dialog { position:fixed; inset:0 0 0 auto; width:min(580px,100%); max-width:100%; height:100%; height:100dvh; max-height:100dvh; margin:0; padding:84px 24px 24px; overflow:auto; overscroll-behavior:contain; box-sizing:border-box; border:0; border-left:1px solid #cad9ce; border-radius:16px 0 0 16px; background:#fff; color:#173f35; box-shadow:-12px 0 48px #102d2730; }
dialog.rrr-public-panel-dialog::backdrop { background:#102d2799; }
dialog.rrr-public-panel-dialog.has-companion { width:min(1240px,calc(100% - 48px)); }
.rrr-public-panel-dialog.has-companion .rrr-public-panel-dialog__body { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
.rrr-commerce__cart-companion { padding:24px; border-radius:12px; background:#f0f5f0; min-width:0; }
.rrr-commerce__cart-feature-photo { width:100%; height:clamp(200px,23vw,320px); margin:0 0 20px; border-radius:10px; overflow:hidden; background:#fff; }
.rrr-commerce__cart-feature-photo img { display:block; width:100%; height:100%; object-fit:contain; }
.rrr-commerce__cart-companion h3 { font:700 clamp(1.5rem,2vw,2rem)/1.2 var(--serif,Georgia,serif); }
.rrr-commerce__cart-companion > .rrr-commerce__muted { font-size:1rem; margin-bottom:24px; }
.rrr-commerce__cart-extras { display:grid; gap:16px; }
.rrr-commerce__cart-extras .rrr-commerce__product.is-compact { display:grid; grid-template-columns:minmax(0,1fr); }
.rrr-commerce__cart-extras .rrr-commerce__product.is-compact:has(.rrr-commerce__image-action) { grid-template-columns:100px minmax(0,1fr); }
.rrr-commerce__cart-extras .rrr-commerce__picture { height:100%; min-height:140px; aspect-ratio:auto; }
.rrr-commerce__cart-extras .rrr-commerce__product-copy h3 { font:700 1.125rem/1.35 var(--sans,Arial,sans-serif); }
.rrr-commerce__cart-extras .rrr-commerce__product-actions { padding-top:6px; }
@media (max-width:900px) {
  dialog.rrr-public-panel-dialog.has-companion { width:min(580px,100%); }
  .rrr-public-panel-dialog.has-companion .rrr-public-panel-dialog__body { display:block; }
  .rrr-public-panel-dialog .rrr-commerce__cart-companion { display:none; }
}
dialog.rrr-public-panel-dialog:not([open]) { display:none; }
.rrr-public-panel-dialog .rrr-public-panel-dialog__close { display:block; position:fixed; top:20px; right:24px; z-index:3; margin:0; min-height:44px; padding:10px 16px; border:1px solid #c9d6cc; border-radius:8px; background:#fff; color:#173f35; font:700 1rem/1.4 var(--sans,Arial,sans-serif); }
.rrr-storefront .rrr-public-panel-dialog [data-store-panel="cart"], .rrr-storefront .rrr-public-panel-dialog [data-store-panel="review"] { padding:0; border:0; border-radius:0; }
.rrr-public-panel-dialog .rrr-commerce__cart-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
.rrr-public-panel-dialog .rrr-commerce__summary { padding:20px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary-art { display:none; }
@media (max-width:600px) {
  dialog.rrr-public-panel-dialog { border:0; border-radius:0; padding:84px 20px 20px; }
  .rrr-storefront .rrr-storefront__cart-bubble { right:16px; bottom:max(16px,env(safe-area-inset-bottom)); }
}
.rrr-commerce {
  --store-ink: #173b2f;
  --store-green: #255d46;
  --store-paper: #fffdf7;
  --store-soft: #f2eee2;
  --store-line: #cbd4c8;
  --store-gold: #c3a65a;
  --store-muted: #506458;
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  color: var(--store-ink);
  font: 400 1rem/1.55 system-ui, sans-serif;
  overflow-wrap: anywhere;
}
.rrr-commerce *, .rrr-commerce *::before, .rrr-commerce *::after { box-sizing: border-box; }
.rrr-commerce [hidden] { display: none !important; }
.rrr-commerce .rrr-commerce__fulfillment { border: 1px solid var(--store-line); border-radius: .8rem; padding: 1rem; margin: 1rem 0; min-width: 0; }
.rrr-commerce .rrr-commerce__fulfillment legend { font-weight: 700; padding: 0 .35rem; }
.rrr-commerce .rrr-commerce__fulfillment-option { display: flex; align-items: flex-start; gap: .75rem; padding: .85rem; border: 1px solid var(--store-line); border-radius: .6rem; margin: .5rem 0; min-height: 48px; background: var(--store-paper); cursor: pointer; }
.rrr-commerce .rrr-commerce__fulfillment-option:has(input:checked) { background: #eaf1e7; border-color: var(--store-green); }
.rrr-commerce .rrr-commerce__fulfillment-option input[type="radio"] { width: 1.3rem; height: 1.3rem; min-width: 1.3rem; min-height: 1.3rem; margin: .2rem 0; padding: 0; flex: 0 0 auto; appearance: auto; accent-color: var(--store-green); }
.rrr-commerce .rrr-commerce__fulfillment-option > span { display: grid; gap: .3rem; min-width: 0; }
.rrr-commerce .rrr-commerce__fulfillment-instructions { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .9rem; }
.rrr-commerce :is(h2,h3,h4,p,dl) { color: inherit; margin: 0 0 .8rem; }
.rrr-commerce :is(h2,h3,h4) { line-height: 1.2; }
.rrr-commerce h2 { font: 500 clamp(2rem, 4vw, 3.5rem)/1.08 Georgia, serif; }
.rrr-commerce h3 { font-size: 1.4rem; }
.rrr-commerce h4 { font-size: 1.05rem; }
.rrr-commerce button, .rrr-commerce .rrr-commerce__action {
  appearance: none;
  min-width: 44px;
  min-height: 44px;
  max-width: 100%;
  padding: .65rem 1.05rem;
  border: 1px solid var(--store-green);
  border-radius: .65rem;
  color: var(--store-paper);
  background: var(--store-green);
  font: 650 .95rem/1.4 system-ui, sans-serif;
  text-decoration: none;
  white-space: normal;
  cursor: pointer;
  box-shadow: none;
}
.rrr-commerce button:hover:not(:disabled) { background: var(--store-ink); color: var(--store-paper); }
.rrr-commerce button:disabled { opacity: .6; cursor: not-allowed; }
.rrr-commerce :is(button,a,input,select,textarea):focus-visible { outline: 3px solid #977525; outline-offset: 3px; }
.rrr-commerce :is(input,select,textarea) {
  width: 100%; min-width: 0; max-width: 100%; min-height: 44px; padding: .65rem .8rem;
  border: 1px solid var(--store-line); border-radius: .65rem; background: var(--store-paper);
  color: var(--store-ink); font: inherit; box-shadow: none;
}
.rrr-commerce textarea { resize: vertical; }
.rrr-commerce select { background-repeat: no-repeat; background-position: right .7rem center; background-size: 16px 16px; padding-right: 2rem; }
.rrr-commerce label { display: grid; gap: .35rem; min-width: 0; font-weight: 600; }
.rrr-commerce label small { font-weight: 400; color: var(--store-muted); }
.rrr-commerce__hero {
  display: flex; justify-content: space-between; align-items: center; gap: 2rem;
  padding: clamp(1.5rem, 4vw, 3.5rem); border-radius: 1.4rem;
  background: var(--store-ink); color: var(--store-paper); border-top: 5px solid var(--store-gold);
}
.rrr-commerce__hero > div { max-width: 45rem; }
.rrr-commerce__hero > button { flex-shrink: 0; border-color: #91aa98; }
.rrr-commerce__hero .rrr-commerce__eyebrow { color: #e1c980; }
.rrr-commerce__eyebrow { font-size: .75rem; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.rrr-commerce__tabs, .rrr-commerce__pagination, .rrr-commerce__actions, .rrr-commerce-workspace__actions, .rrr-commerce-workspace__steps { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem; margin: 1.25rem 0; }
.rrr-commerce__tabs button { border-color: transparent; background: transparent; color: var(--store-ink); }
.rrr-commerce__tabs button[aria-current="step"] { border-color: var(--store-line); background: var(--store-soft); }
.rrr-commerce [role="status"] { color: var(--store-muted); min-height: 1.55em; font-size: .9rem; }
.rrr-commerce__filters, .rrr-commerce-workspace__filters { display: flex; align-items: end; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0; }
.rrr-commerce__filters label:first-child, .rrr-commerce-workspace__filters label:first-child { flex: 1 1 18rem; }
.rrr-commerce__filters label, .rrr-commerce-workspace__filters label { flex: 0 1 13rem; }
.rrr-commerce__grid, .rrr-commerce-workspace__grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: clamp(1rem, 2vw, 1.75rem); }
.rrr-commerce__product, .rrr-commerce-workspace__card { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--store-line); border-radius: 1rem; overflow: hidden; background: var(--store-paper); }
.rrr-commerce__product-copy { display: flex; flex-direction: column; align-items: start; padding: 1.1rem; flex: 1; }
.rrr-commerce__product-actions { margin-top: auto; padding-top: .7rem; width: 100%; }
.rrr-commerce__product-actions > button { width: 100%; }
.rrr-commerce__product-copy h3 { font-size: 1.15rem; }
.rrr-commerce .rrr-commerce__image-action { display: block; width: 100%; padding: 0; background: var(--store-soft); border: 0; border-radius: 0; }
.rrr-commerce .rrr-commerce__title-action { padding: 0; min-height: 44px; min-width: 0; background: transparent; color: var(--store-ink); border: 0; text-align: left; font: inherit; }
.rrr-commerce .rrr-commerce__title-action:hover:not(:disabled) { background: transparent; color: var(--store-green); text-decoration: underline; }
.rrr-commerce__picture { display: grid; place-items: center; width: 100%; aspect-ratio: 1; overflow: hidden; background: var(--store-soft); }
.rrr-commerce__picture img { display: block; width: 100%; height: 100%; object-fit: contain; }
.rrr-commerce__placeholder { color: #526f59; font: 400 5rem/1 Georgia, serif; }
.rrr-commerce [data-image-state="placeholder"] { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.5rem; background:#e9eee7; }
.rrr-commerce__photo-label { color:#385343; font:650 .875rem/1.25 system-ui,sans-serif; text-align:center; padding:0 .4rem; }
.rrr-commerce__price { font-weight: 650; font-variant-numeric: tabular-nums; }
.rrr-commerce__description { white-space: pre-wrap; }
.rrr-commerce__muted { color: var(--store-muted); font-size: .9rem; }
.rrr-commerce__pagination { justify-content: center; margin-top: 2rem; }
.rrr-commerce__pagination span { text-align: center; font-size: .9rem; }
.rrr-commerce__detail { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(1.5rem,4vw,3rem); align-items: start; padding: 1.5rem 0; }
.rrr-commerce__detail--text { grid-template-columns: minmax(0,1fr); }
.rrr-commerce__detail .rrr-commerce__picture { border-radius: 1rem; }
.rrr-commerce__detail-summary { min-width: 0; align-self: center; }
.rrr-commerce__detail-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.25rem 0; }
.rrr-commerce__detail-actions > button { min-height: 48px; }
.rrr-commerce__cart-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(16rem,.48fr); gap: 2rem; align-items: start; margin: 1.5rem 0; }
.rrr-commerce__summary { padding: 1.5rem; border-radius: 1rem; background: var(--store-soft); border: 1px solid var(--store-line); }
.rrr-commerce__summary > button { width: 100%; margin: .7rem 0; }
.rrr-commerce__cart-actions { gap: .85rem; padding-top: 1rem; border-top: 1px solid var(--store-line); }
.rrr-commerce__cart-actions > button { min-height: 48px; }
.rrr-commerce .rrr-commerce__cart-actions > button:last-child { background: var(--store-paper); color: var(--store-ink); border-color: var(--store-line); }
.rrr-commerce .rrr-commerce__cart-actions > button:last-child:hover:not(:disabled) { background: var(--store-soft); }
.rrr-commerce__summary p { font-size: 1rem; color: var(--store-muted); }
.rrr-commerce__summary dl > div, .rrr-commerce__review-lines > div { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--store-line); }
.rrr-commerce dd { margin: 0; text-align: right; font-weight: 650; font-variant-numeric: tabular-nums; }
.rrr-commerce__line { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 1rem; padding: 1.25rem 0; border-top: 1px solid var(--store-line); }
.rrr-commerce__line > :is(h4,p,button) { grid-column: 1 / -1; }
.rrr-commerce__line > strong { align-self: center; text-align: right; }
.rrr-commerce__line-controls { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.rrr-commerce__line-controls input { width: 4.2rem; text-align: center; }
.rrr-commerce__line-controls button { padding: .6rem; background: transparent; color: var(--store-ink); border-color: var(--store-line); }
.rrr-commerce__line > button { justify-self: start; }
.rrr-commerce__line .rrr-commerce__cart-photo { grid-column:1 / -1; grid-row:1; width:88px; height:88px; margin:0 0 12px; border-radius:8px; overflow:hidden; background:var(--store-soft); }
.rrr-commerce__cart-photo img { display:block; width:100%; height:100%; object-fit:contain; }
.rrr-commerce__line-note { color: #765019; margin-top: .65rem; }
.rrr-commerce__empty { grid-column: 1 / -1; padding: 2.5rem 1.5rem; text-align: center; border: 1px dashed var(--store-line); border-radius: 1rem; background: var(--store-paper); }
.rrr-commerce-workspace__card { display: grid; grid-template-columns: minmax(5.5rem,.38fr) minmax(0,1fr); padding: 0; gap: 0; border-radius: .8rem; }
.rrr-commerce-workspace__toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .65rem 1rem; margin-bottom: 1rem; padding-bottom: .75rem; border-bottom: 1px solid var(--store-line); }
.rrr-commerce-workspace .rrr-commerce-workspace__toolbar > .rrr-workspace-workbench__header { display: block; flex: 1 1 10rem; margin: 0; }
.rrr-commerce-workspace__choices { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .5rem; margin: 0; padding: 0; }
.rrr-commerce-workspace__choices:has(details[open]) { flex-basis: 100%; }
.rrr-commerce-workspace__choice { min-width: 0; max-width: 100%; }
.rrr-commerce-workspace__choice:has(details[open]) { flex: 1 1 100%; }
.rrr-commerce-workspace__choice > .rrr-commerce-workspace__actions { gap: .5rem; margin: 0; }
.rrr-commerce-workspace__choice .rrr-commerce-workspace__actions > :is(a,button) { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: .65rem .85rem; border-radius: .55rem; text-align: center; font: 650 .85rem/1.3 system-ui,sans-serif; letter-spacing: normal; text-transform: none; }
.rrr-commerce-workspace__help { min-width: 0; max-width: 100%; }
.rrr-commerce-workspace .rrr-commerce-workspace__help > summary { display: flex; align-items: center; justify-content: space-between; gap: .65rem; min-height: 44px; padding: .65rem .85rem; border: 1px solid var(--store-line); border-radius: .55rem; color: var(--store-ink); background: var(--store-paper); font: 650 .85rem/1.3 system-ui,sans-serif; text-decoration: none; cursor: pointer; overflow-wrap: anywhere; }
.rrr-commerce-workspace__help > summary::marker { content: ""; }
.rrr-commerce-workspace__help > summary::-webkit-details-marker { display: none; }
.rrr-commerce-workspace__help > summary::after { content: ""; flex: 0 0 .4rem; width: .4rem; height: .4rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
.rrr-commerce-workspace__help[open] > summary::after { transform: rotate(225deg); }
.rrr-commerce-workspace__help > summary:hover { background: var(--store-soft); }
.rrr-commerce-workspace__help > summary:focus-visible { outline: 2px solid var(--store-green); outline-offset: 3px; }
.rrr-commerce-workspace__help[open] > div { margin-top: .5rem; padding: .85rem 1rem; border: 1px solid var(--store-line); border-radius: .55rem; background: var(--store-soft); }
.rrr-commerce-workspace__help p { margin: 0 0 .5rem; color: var(--store-muted); font: 400 .875rem/1.5 system-ui,sans-serif; }
.rrr-commerce-workspace__help p:last-child { margin-bottom: 0; }
.rrr-commerce-workspace__help h3 { margin: 0 0 .4rem; font: 700 .95rem/1.4 system-ui,sans-serif; }
.rrr-commerce-workspace__related { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--store-line); }
.rrr-commerce-workspace__help small { display: block; color: var(--store-muted); font: 400 .8rem/1.5 system-ui,sans-serif; }
.rrr-commerce-workspace .rrr-workspace-workbench__header > div { order: 0; flex-basis: auto; }
.rrr-commerce-workspace [data-store-action="reload"] { background: var(--store-paper); color: var(--store-ink); border-color: var(--store-line); }
.rrr-commerce-workspace [data-store-message] { margin-bottom: .4rem; font-size: .8rem; }
/* Keep routine success in the live region without reserving a blank status row.
   All loading, validation, save and error feedback remains visible by default. */
.rrr-commerce-workspace [data-store-message-quiet="true"] { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; margin: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.rrr-commerce-workspace .rrr-workspace-workbench__header { margin-bottom: .35rem; }
.rrr-commerce-workspace .rrr-workspace-workbench__header h2 { font: 700 1.35rem/1.2 system-ui,sans-serif; }
.rrr-commerce-workspace .rrr-workspace-workbench__header > div > p { margin-top: .4rem; font-size: .85rem; }
.rrr-commerce-workspace__filters { display: grid; grid-template-columns: minmax(12rem,1fr) minmax(9rem,.4fr) minmax(8rem,.35fr) auto; gap: .7rem; margin: 1rem 0; }
.rrr-commerce-workspace__filters label { font-size: .8rem; }
.rrr-commerce-workspace__card-copy { display: flex; flex-direction: column; gap: .45rem; padding: 1rem; flex: 1; min-width: 0; }
.rrr-commerce-workspace__card-copy > h3 { margin: 0; font: 700 1.05rem/1.3 system-ui,sans-serif; }
.rrr-commerce-workspace__card-copy > p { margin: 0; font-size: .8rem; color: var(--store-muted); }
.rrr-commerce-workspace__card-copy > p + p { font-size: .95rem; font-weight: 700; color: var(--store-ink); }
.rrr-commerce-workspace__card-copy > button { margin-top: auto; }
.rrr-commerce-workspace__photo { height: 100%; min-height: 10rem; aspect-ratio: auto; border-right: 1px solid var(--store-line); }
.rrr-commerce-workspace__photo-placeholder { padding: .5rem; color: var(--store-muted); font-size: .75rem; text-align: center; }
.rrr-commerce-workspace__card img, .rrr-commerce-workspace__profile img { max-width: 100%; width: 12rem; height: 12rem; object-fit: contain; border-radius: .85rem; background: var(--store-soft); }
.rrr-commerce-workspace__photo img { width: 100%; height: 100%; min-width: 0; min-height: 0; border-radius: 0; object-fit: contain; }
.rrr-commerce-workspace__profile { padding: clamp(1rem,3vw,2rem); background: var(--store-paper); border: 1px solid var(--store-line); border-radius: 1rem; }
.rrr-commerce-workspace__profile dl, .rrr-commerce-workspace__review { display: grid; gap: .75rem; }
.rrr-commerce-workspace__profile dl > div, .rrr-commerce-workspace__review > div { padding: .7rem 0; border-bottom: 1px solid var(--store-line); }
.rrr-commerce-workspace__profile dd, .rrr-commerce-workspace__review dd { text-align: left; }
.rrr-commerce-workspace__form { width: 100%; max-width: none; min-width: 0; }
.rrr-commerce-workspace__form fieldset { min-width: 0; margin: 0; padding: 1.5rem; border: 1px solid var(--store-line); border-radius: 1rem; background: var(--store-paper); }
.rrr-commerce-workspace__form fieldset > label { margin-bottom: 1rem; }
.rrr-commerce-workspace label[data-store-public-row] { display: flex; align-items: flex-start; gap: .65rem; min-height: 44px; }
.rrr-commerce-workspace input[type="checkbox"][data-store-public-confirm] { appearance: auto; flex: 0 0 auto; width: auto; min-width: 0; height: auto; min-height: auto; margin: .3rem 0 0; padding: 0; accent-color: var(--store-green); }
.rrr-commerce-workspace__form legend { padding: 0 .5rem; font-weight: 700; }
.rrr-commerce-workspace .rrr-workspace__editor-heading > div > p { max-width: 64rem; font: 400 .95rem/1.55 system-ui,sans-serif; text-transform: none; letter-spacing: normal; color: var(--store-muted); margin: .7rem 0 0; }
.rrr-commerce-workspace [data-store-setup] { max-width: 44rem; padding: 1.5rem; border: 1px solid var(--store-line); border-radius: 1rem; background: var(--store-paper); }
.rrr-commerce-workspace [data-store-setup] > button { margin-top: 1rem; }
.rrr-commerce-workspace:has([data-store-form]:not([hidden])) > .rrr-commerce-workspace__toolbar,
.rrr-commerce-workspace:has([data-store-form]:not([hidden])) > .rrr-commerce-workspace__actions { display: none; }
.rrr-commerce-workspace__form img { display: block; width: 10rem; height: 10rem; object-fit: contain; margin: .75rem 0; }
.rrr-commerce-workspace .rrr-commerce-workspace__photo--preview { width: min(100%,12rem); height: 9rem; min-height: 0; margin: .7rem 0 1rem; border: 1px solid var(--store-line); border-radius: .65rem; }
.rrr-commerce-workspace .rrr-commerce-workspace__photo--preview img { width: 100%; height: 100%; margin: 0; border-radius: 0; object-fit: contain; }
.rrr-commerce-workspace__listing-settings { margin: 1rem 0; color: var(--store-muted); font-size: .9rem; }
.rrr-commerce-workspace__listing-settings > summary { min-height: 44px; padding: .65rem 0; cursor: pointer; font-weight: 650; color: var(--store-ink); }
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__toolbar > .rrr-workspace__editor-heading { display: none; }
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) > .rrr-commerce-workspace__toolbar { display: block; padding: 0; margin: .5rem 0 1rem; border: 0; }
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__choices { display: block; padding: 0; margin: 0; border: 0; background: transparent; }
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__choice { padding: 0; border: 0; }
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__choice > :is(h3,p,small),
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__choice:has(details),
.rrr-commerce-workspace:has([data-store-profile]:not([hidden])) .rrr-commerce-workspace__choice :is([data-store-action="reload"],[data-store-action="new"]) { display: none; }
.rrr-commerce-workspace__steps [aria-current="step"] { outline: 2px solid var(--store-gold); outline-offset: 2px; }
/* The admin editor uses its canvas, not a fixed-width document column.
   Keep the original form/field order and Media Library preview owner. */
@media (min-width: 1001px) {
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(14rem,1fr); column-gap: clamp(1.25rem,2.5vw,2.5rem); row-gap: .85rem; align-items: start; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > label { margin-bottom: 0; grid-column: 1; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > label:has([data-store-field="title"]) { grid-row: 1; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > label:has([data-store-field="description"]) { grid-row: 2; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > label:has([data-store-field="kind"]) { grid-row: 3; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > p:first-of-type { grid-column: 1; grid-row: 4; margin: 0; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > [data-store-image] { grid-column: 2; grid-row: 1; margin: 0; align-self: end; font-weight: 650; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > [data-store-photo-preview] { grid-column: 2; grid-row: 2 / 4; min-width: 0; height: 100%; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] .rrr-commerce-workspace__photo--preview { width: 100%; height: 100%; min-height: 12rem; max-height: 20rem; margin: 0; border-right: 1px solid var(--store-line); }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > .rrr-commerce-workspace__actions { grid-column: 2; grid-row: 4; margin: 0; align-self: start; }
  .rrr-commerce-workspace .rrr-commerce-workspace__form > fieldset[data-store-section="1"] > p:last-of-type { grid-column: 2; grid-row: 5; margin: 0; font-size: .875rem; color: var(--store-muted); }
}
@media (max-width: 1050px) {
  .rrr-commerce__grid, .rrr-commerce-workspace__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rrr-commerce__cart-layout { grid-template-columns: minmax(0,1fr); }
  .rrr-commerce-workspace__filters { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .rrr-commerce-workspace__filters > label:first-child, .rrr-commerce-workspace__filters > button { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .rrr-commerce__hero { align-items: start; flex-direction: column; gap: 1rem; padding: 1.5rem; border-radius: 1rem; }
  .rrr-commerce__grid, .rrr-commerce-workspace__grid, .rrr-commerce__detail { grid-template-columns: minmax(0,1fr); }
  .rrr-commerce__filters label, .rrr-commerce-workspace__filters label { flex: 1 1 100%; }
  .rrr-commerce__filters > button, .rrr-commerce-workspace__filters > button { flex: 1; }
  .rrr-commerce__line { grid-template-columns: minmax(0,1fr); row-gap: .5rem; }
  .rrr-commerce__line > strong { text-align: left; }
  .rrr-commerce__summary { padding: 1.15rem; }
  .rrr-commerce__cart-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: .75rem; }
  .rrr-commerce__cart-actions > button { padding: .7rem .5rem; }
  .rrr-commerce-workspace__form fieldset { padding: 1rem; }
  .rrr-commerce-workspace__toolbar { display: block; }
  .rrr-commerce-workspace .rrr-commerce-workspace__toolbar > .rrr-workspace-workbench__header { margin-bottom: .65rem; }
  .rrr-commerce-workspace__choices { display: grid; grid-template-columns: minmax(0,2.35fr) minmax(0,1fr); gap: .5rem; }
  .rrr-commerce-workspace__choices:has(details[open]) { grid-template-columns: minmax(0,1fr); }
  .rrr-commerce-workspace__choice { width: 100%; }
  .rrr-commerce-workspace__choice > .rrr-commerce-workspace__actions { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); }
  .rrr-commerce-workspace__choice .rrr-commerce-workspace__actions > :is(a,button) { min-width: 0; padding-inline: .4rem; }
  .rrr-commerce-workspace__choice [data-store-action="list"] { grid-column: 1 / -1; }
  .rrr-commerce-workspace__steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .45rem; align-items: stretch; }
  .rrr-commerce-workspace__steps button { padding: .65rem .35rem; font-size: .8rem; }
  .rrr-commerce__review-lines > div { align-items: start; gap: .75rem; }
  .rrr-commerce__review-lines dt { min-width: 0; flex: 1; }
  .rrr-commerce__review-lines dd { flex: 0 0 auto; }
}
@media (prefers-reduced-motion: reduce) { .rrr-commerce * { scroll-behavior: auto !important; transition: none !important; } }

/* Public Ranch composition. The workspace retains its own compact catalog layout. */
.rrr-storefront {
  --store-admin-bar: 0px;
  --store-ink: var(--forest-950, #06271a);
  --store-green: var(--forest-900, #0b3422);
  --store-paper: var(--cream-100, #fffdf8);
  --store-soft: var(--cream-200, #f8f2e7);
  --store-gold: var(--gold-light, #f5cf6a);
  --store-line: #d7dacd;
  --store-muted: var(--ink-soft, #536057);
  max-width: none;
  margin: 0;
  background: var(--store-paper);
  font-family: var(--sans, "Ranch Sans", Arial, sans-serif);
}
.admin-bar .rrr-storefront { --store-admin-bar: 32px; }
@media (max-width: 782px) { .admin-bar .rrr-storefront { --store-admin-bar: 46px; } }
.rrr-storefront :is(button,.rrr-commerce__action) { border-radius: .2rem; font-family: inherit; }
.rrr-storefront .rrr-storefront__hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  align-items: start;
  min-height: calc(100vh - var(--site-chrome, 0px) - var(--store-admin-bar));
  min-height: calc(100svh - var(--site-chrome, 0px) - var(--store-admin-bar));
  padding: clamp(1.5rem, 4vh, 3rem) clamp(2rem, 6vw, 6rem);
  border: 0;
  border-radius: 0;
  color: var(--store-paper);
  background: var(--store-ink);
}
.rrr-storefront .rrr-storefront__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(6,39,26,.98) 0%, rgba(6,39,26,.94) 33%, rgba(6,39,26,.55) 60%, rgba(6,39,26,.1) 100%);
  pointer-events: none;
}
.rrr-storefront .rrr-storefront__hero-photo { position: absolute; inset: 0; z-index: -2; max-width: none; }
.rrr-storefront .rrr-storefront__hero-photo img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 60% 58%; }
.rrr-storefront .rrr-storefront__hero-copy { width: 100%; max-width: 52rem; padding-block: 1rem; }
.rrr-storefront .rrr-storefront__hero .rrr-commerce__eyebrow { max-width: 38rem; margin-bottom: 1.2rem; color: var(--store-gold); font-size: .875rem; letter-spacing: .1em; line-height: 1.6; }
.rrr-storefront .rrr-storefront__title { margin: 0 0 1.2rem; color: var(--store-paper); font: 800 clamp(4rem, 6.8vw, 7rem)/1.02 var(--serif, Georgia, serif); letter-spacing: -.035em; overflow-wrap: normal; }
.rrr-storefront .rrr-storefront__title span { display: block; color: var(--store-gold); }
.rrr-storefront .rrr-storefront__hero-lede { margin-bottom: .85rem; color: var(--store-paper); font: 700 clamp(1.5rem, 2.3vw, 2.25rem)/1.3 var(--serif, Georgia, serif); }
.rrr-storefront .rrr-storefront__hero-description { max-width: 42ch; margin: 0; color: #fff; font-size: clamp(1.125rem, 1.5vw, 1.375rem); font-weight:500; line-height: 1.55; }
.rrr-storefront .rrr-storefront__hero-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: .85rem; margin: 1.8rem 0 1rem; }
.rrr-storefront .rrr-storefront__hero-actions :is(a,button) { display: inline-flex; align-items: center; justify-content: center; gap: 1rem; min-height: 52px; padding: .85rem 1.25rem; border: 1px solid var(--store-gold); color: var(--store-ink); background: var(--store-gold); font-size: .9rem; font-weight: 750; }
.rrr-storefront .rrr-storefront__hero-actions button { color: var(--store-paper); border-color: rgba(255,253,248,.65); background: rgba(6,39,26,.45); }
.rrr-storefront .rrr-storefront__hero-actions a:hover { color: var(--store-ink); background: #ffe29a; }
.rrr-storefront .rrr-storefront__hero-actions button:hover:not(:disabled) { color: var(--store-ink); background: var(--store-paper); }
.rrr-storefront .rrr-storefront__cart-count { display: inline-grid; place-items: center; min-width: 1.5rem; min-height: 1.5rem; padding: 0 .25rem; border: 1px solid currentColor; border-radius: 50%; font-size: .72rem; }
.rrr-storefront .rrr-storefront__hero-note { margin: 0; color: #e0e5db; font-size: 1rem; line-height: 1.5; }
.rrr-storefront .rrr-storefront__hero-location { position: absolute; right: clamp(2rem, 5vw, 5rem); bottom: 2.1rem; margin: 0; max-width: 15rem; border-left: 2px solid var(--store-gold); padding-left: 1rem; color: var(--store-paper); text-shadow: 0 1px 8px #06271a; font: 400 1rem/1.5 var(--serif, Georgia, serif); }
.rrr-storefront .rrr-storefront__hero-location span { display: block; margin-bottom: .15rem; font: 700 .68rem/1.5 var(--sans, Arial, sans-serif); text-transform: uppercase; letter-spacing: .12em; }
.rrr-storefront .rrr-storefront__collection { width: min(100%, 1600px); margin: 0 auto; padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 3vw, 2.5rem); scroll-margin-top: calc(var(--site-chrome, 0px) + 1rem); }
.rrr-storefront .rrr-storefront__collection-heading { max-width: 43rem; margin-bottom: 2rem; }
.rrr-storefront .rrr-storefront__collection-heading .rrr-commerce__eyebrow { color: var(--store-green); }
.rrr-storefront .rrr-storefront__collection-heading h3 { margin: 0 0 .8rem; font: 400 clamp(2rem, 3.3vw, 3.1rem)/1.2 var(--serif, Georgia, serif); }
.rrr-storefront .rrr-storefront__collection-heading > p:last-child { color: var(--store-muted); }
.rrr-storefront .rrr-commerce__tabs { gap: .25rem; padding-bottom: .75rem; border-bottom: 1px solid var(--store-line); }
.rrr-storefront .rrr-commerce__tabs button { border-radius: .2rem; padding-inline: 1.2rem; }
.rrr-storefront .rrr-commerce__tabs button[aria-current="step"] { border-color: var(--store-green); color: var(--store-paper); background: var(--store-green); }
.rrr-storefront .rrr-commerce__product { border-radius: .3rem; }
.rrr-storefront .rrr-commerce__product-copy { padding: 1.2rem; }
.rrr-storefront .rrr-commerce__product-copy h3 { font: 700 1.5rem/1.3 var(--serif, Georgia, serif); }
.rrr-storefront .rrr-commerce__product-copy .rrr-commerce__eyebrow { color: var(--store-muted); font-size: .875rem; letter-spacing: .06em; }
.rrr-storefront .rrr-commerce__picture { aspect-ratio: 4 / 3; }
.rrr-product-page .rrr-storefront__collection { padding-block: clamp(1.5rem,4vw,3rem); }
.rrr-product-page__toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem; padding-bottom:1rem; border-bottom:1px solid var(--store-line); }
.rrr-product-page__toolbar > a { display:inline-flex; align-items:center; min-height:44px; color:var(--store-green); font-weight:650; }
.rrr-product-page__toolbar > span { color:var(--store-muted); font-size:.85rem; }
.rrr-product-page .rrr-commerce__tabs { margin-bottom:.5rem; }
/* One product presentation for native pages, storefront details and staff profiles.
   Only this inner display surface adopts public Ranch tokens; editing forms keep
   the workspace controls. Full descriptions stay beside the photo, as in SSR. */
.rrr-commerce-product-presentation {
  --store-ink: var(--forest-950, #06271a);
  --store-green: var(--forest-900, #0b3422);
  --store-paper: var(--cream-100, #fffdf8);
  --store-soft: var(--cream-200, #f8f2e7);
  --store-line: #d7dacd;
  --store-muted: var(--ink-soft, #536057);
  color: var(--store-ink);
  font-family: var(--sans, "Ranch Sans", Arial, sans-serif);
}
.rrr-commerce .rrr-commerce-product-presentation .rrr-commerce__product-title { margin:0 0 1rem; color:var(--store-ink); font:400 clamp(2rem,4vw,3.5rem)/1.15 var(--serif,Georgia,serif); letter-spacing:normal; text-transform:none; overflow-wrap:anywhere; }
.rrr-commerce .rrr-commerce-product-presentation > .rrr-commerce__picture { width:100%; margin:0; min-height:0; min-width:0; aspect-ratio:auto; height:clamp(15rem,35vw,32rem); border:0; border-radius:.4rem; }
.rrr-commerce .rrr-commerce-product-presentation > .rrr-commerce__picture img { width:100%; height:100%; min-height:0; min-width:0; object-fit:contain; border-radius:0; }
.rrr-commerce .rrr-commerce-product-presentation .rrr-commerce__price { font:700 1.15rem/1.5 var(--sans,"Ranch Sans",Arial,sans-serif); }
.rrr-commerce .rrr-commerce-product-presentation .rrr-commerce__description { font-size:1rem; line-height:1.75; white-space:pre-wrap; overflow-wrap:anywhere; }
.rrr-commerce-workspace__profile { background:var(--cream-100,#fffdf8); border-radius:.4rem; }
.rrr-commerce-workspace__profile .rrr-commerce-product-presentation { padding:0; }
.rrr-commerce-product-presentation .rrr-commerce__page-panel { margin-top:.75rem; padding-top:.5rem; }
.rrr-commerce-product-presentation .rrr-commerce-workspace__listing-settings { margin-top:.5rem; }
.rrr-commerce-product-presentation .rrr-commerce-workspace__listing-settings > summary { min-height:44px; padding:.65rem 0; cursor:pointer; color:var(--store-muted); }
@media (max-width: 600px) {
  .rrr-commerce .rrr-commerce-product-presentation { gap:1.25rem; }
  .rrr-commerce .rrr-commerce-product-presentation > .rrr-commerce__picture { height:clamp(13rem,65vw,17rem); }
  .rrr-commerce .rrr-commerce-product-presentation .rrr-commerce__product-title { font-size:clamp(1.85rem,8vw,2.5rem); }
  .rrr-commerce-product-presentation .rrr-commerce__detail-actions > :is(button,a) { width:100%; justify-content:center; }
}
.rrr-commerce__page-panel { margin-top:1.25rem; border-top:1px solid var(--store-line); padding-top:1rem; }
.rrr-commerce__page-panel > summary { cursor:pointer; color:var(--store-ink); font-weight:700; padding:.5rem 0; min-height:44px; }
.rrr-commerce__page-panel form { display:grid; gap:.75rem; margin-top:.75rem; max-width:50rem; }
.rrr-commerce__page-panel p { margin:0; }
.rrr-commerce__page-panel .rrr-commerce__actions { margin:.25rem 0; }
.rrr-commerce__page-panel .rrr-commerce__actions > a { display:inline-flex; align-items:center; min-height:44px; }
.rrr-storefront .rrr-commerce__summary { border-radius: .3rem; border-top: 3px solid var(--store-gold); }
.rrr-storefront .rrr-commerce__summary-art { display:block; width:100%; height:150px; object-fit:cover; object-position:center 55%; margin:0 0 1.25rem; border-radius:.5rem; }
.rrr-storefront .rrr-commerce__tabs { counter-reset: shop-step; }
.rrr-storefront .rrr-commerce__tabs button { display:inline-flex; align-items:center; justify-content:center; gap:.65rem; min-height:52px; font-size:1rem; counter-increment:shop-step; }
.rrr-storefront .rrr-commerce__tabs button::before { content:counter(shop-step,decimal-leading-zero); font-size:.875rem; opacity:.8; }
.rrr-storefront [data-store-panel="cart"], .rrr-storefront [data-store-panel="review"] { padding:clamp(1.25rem,3vw,2rem); border:1px solid var(--store-line); border-radius:1rem; background:#fff; }
.rrr-storefront [data-store-panel="cart"] > h3, .rrr-storefront [data-store-panel="review"] > h3 { font:700 clamp(1.75rem,3vw,2.5rem)/1.2 var(--serif,Georgia,serif); margin-bottom:1.5rem; }
.rrr-storefront [data-store-quote] { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:1.5rem; }
.rrr-storefront [data-store-quote]:has(.rrr-commerce__fulfillment-option) { grid-template-columns:1.1fr 1fr; }
.rrr-storefront [data-store-quote] > p { grid-column:1 / -1; }
.rrr-storefront [data-store-quote] .rrr-commerce__fulfillment { margin:0; }
.rrr-storefront [data-store-quote] .rrr-commerce__review-lines { margin:0; padding:0 1.5rem 1rem; border:1px solid var(--store-line); border-radius:.8rem; background:#f1f6f1; }
.rrr-storefront .rrr-commerce__summary > button { min-height:56px; font-size:1.0625rem; }
@media (max-width:700px) {
  .rrr-storefront [data-store-quote], .rrr-storefront [data-store-quote]:has(.rrr-commerce__fulfillment-option) { grid-template-columns:minmax(0,1fr); }
  .rrr-storefront .rrr-commerce__tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .rrr-storefront .rrr-commerce__tabs button { flex-direction:column; gap:.2rem; padding:.6rem .3rem; }
}
.rrr-storefront [data-store-cart-heading], .rrr-storefront [data-store-review-heading] { font: 700 clamp(1.8rem, 3vw, 2.7rem)/1.2 var(--serif, Georgia, serif); }
/* Cart and Review share one shell: only the current step changes, not its frame. */
.rrr-commerce__checkout-panels { position:relative; min-width:0; }
.rrr-commerce__checkout-steps { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.rrr-commerce .rrr-commerce__checkout-steps button { flex:1; min-height:48px; padding:10px 12px; background:#f1f6f1; color:#173f35; border-color:#cbd8ce; font-weight:800; font-size:1rem; }
.rrr-commerce .rrr-commerce__checkout-steps button[aria-current="step"] { background:#173f35; color:#fff; }
.rrr-public-panel-dialog:has([data-store-panel="review"]:not([hidden])) .rrr-commerce__cart-suggestions { display:none; }
.rrr-commerce__review-companion { display:none; }
.rrr-public-panel-dialog:has([data-store-panel="review"]:not([hidden])) .rrr-commerce__review-companion { display:block; }
.rrr-commerce__cart-spotlight { display:grid; grid-template-columns:minmax(110px,.6fr) minmax(0,1fr); align-items:center; gap:clamp(18px,2.5vw,36px); margin-bottom:28px; }
.rrr-commerce__cart-spotlight-copy { min-width:0; }
.rrr-commerce__cart-spotlight-copy h3 { font:700 clamp(1.6rem,2.2vw,2.7rem)/1.14 var(--serif,Georgia,serif); margin-bottom:12px; }
.rrr-commerce__cart-spotlight-copy .rrr-commerce__eyebrow { font-size:.875rem; letter-spacing:.1em; margin-bottom:12px; }
.rrr-commerce__cart-spotlight-copy .rrr-commerce__muted { font-size:1rem; margin:0; }
.rrr-commerce__cart-suggestions > h3 { margin-bottom:6px; }
.rrr-commerce__cart-suggestions > p { max-width:48ch; margin-bottom:18px; font-size:1rem; }
.rrr-commerce__review-companion { margin-top:28px; padding-top:24px; border-top:1px solid #ffffff50; }
.rrr-storefront .rrr-public-panel-dialog [data-store-quote] { grid-template-columns:minmax(0,1fr); gap:10px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__review-lines > div { padding:6px 0; font-size:.95rem; }
.rrr-storefront .rrr-public-panel-dialog [data-store-panel="review"] > p:last-child { margin-bottom:0; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__review-lines { padding:0 16px 8px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__fulfillment { padding:12px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__fulfillment p { margin:0; font-size:.95rem; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line { padding:12px 0; row-gap:6px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > :is(h4,p) { margin:0; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line-note:empty { display:none; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) { grid-template-columns:72px minmax(0,1fr) auto; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > :is(h4,p,button) { grid-column:2 / -1; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) .rrr-commerce__line-controls { grid-column:2 / -1; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > strong { grid-column:2 / -1; text-align:left; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line .rrr-commerce__cart-photo { grid-column:1; grid-row:1 / span 3; width:72px; height:88px; margin:0; background:#e9eee7; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-photo .rrr-commerce__placeholder { font-size:2.4rem; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-photo .rrr-commerce__photo-label { display:none; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > h4 { font:750 1.125rem/1.3 var(--sans,Arial,sans-serif); }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > strong { font-size:1.125rem; font-variant-numeric:tabular-nums; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > .rrr-commerce__muted { font-size:1rem; }
.rrr-public-panel-dialog .rrr-commerce__cart-status { margin:12px 0 0; font-size:.875rem; color:#506458; }
.rrr-public-panel-dialog .rrr-commerce__cart-status:empty { display:none; }
.rrr-public-panel-dialog .rrr-commerce__cart-status[data-status-quiet="true"] { position:absolute; width:1px; height:1px; min-height:0; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-layout { margin:8px 0; gap:16px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary { padding:20px; border-top:3px solid #255d46; border-radius:12px; background:#f0f5f1; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary :is(h4,p,dl) { margin-bottom:6px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary p { font-size:1rem; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary h4 { font:800 1.125rem/1.3 var(--sans,Arial,sans-serif); }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary dd { flex-shrink:0; white-space:nowrap; font-size:1.65rem; font-weight:800; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary > button { margin:10px 0; min-height:56px; font-size:1.125rem; font-weight:800; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary dl > div { padding:8px 0; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-actions { margin:8px 0 0; padding-top:8px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-actions > button { min-height:44px; }
.rrr-storefront .rrr-public-panel-dialog .rrr-commerce__cart-actions > button { background:transparent; border-color:transparent; color:#173f35; text-decoration:underline; text-underline-offset:4px; }
.rrr-storefront .rrr-public-panel-dialog [data-store-panel] > h3 { margin-bottom:16px; }
@media (max-width:600px) {
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > h4 { grid-column:2 / -1; grid-row:1; align-self:end; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > .rrr-commerce__muted { grid-column:2; grid-row:2; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > strong { grid-column:3; grid-row:2; align-self:start; text-align:right; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line .rrr-commerce__cart-photo { grid-row:1 / span 2; height:76px; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) .rrr-commerce__line-controls { grid-column:1 / -1; grid-row:3; margin-top:4px; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line-controls > button:last-child { margin-left:auto; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__summary { padding:16px; }
}
/* Share the desktop toolbar row with Close instead of reserving an empty row.
 * Narrow phones retain separate rows and full-size touch controls. */
@media (min-width:601px) {
  dialog.rrr-public-panel-dialog { padding-top:20px; }
  .rrr-public-panel-dialog .rrr-commerce__checkout-steps { padding-right:132px; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line { grid-template-columns:minmax(0,1fr) auto; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > h4 { grid-column:1; grid-row:1; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > .rrr-commerce__muted { grid-column:2; grid-row:1; text-align:right; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line-controls { grid-column:1; grid-row:2; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line > strong { grid-column:2; grid-row:2; text-align:right; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > h4 { grid-column:2; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > .rrr-commerce__muted { grid-column:3; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) .rrr-commerce__line-controls { grid-column:2; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line:has(.rrr-commerce__cart-photo) > strong { grid-column:3; grid-row:2; text-align:right; }
  .rrr-storefront .rrr-public-panel-dialog .rrr-commerce__line .rrr-commerce__cart-photo { grid-row:1 / span 2; }
}
@media (min-width:901px) {
  dialog.rrr-public-panel-dialog.has-companion { width:100%; max-width:100%; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:hidden; }
  dialog.rrr-public-panel-dialog.has-companion::backdrop { background:rgba(3,16,12,.94); }
  .rrr-public-panel-dialog.has-companion .rrr-public-panel-dialog__body { grid-template-columns:minmax(0,1fr) clamp(540px,40vw,760px); grid-template-rows:minmax(0,1fr); height:100%; min-height:0; gap:clamp(24px,3vw,64px); }
  .rrr-public-panel-dialog.has-companion .rrr-public-panel-dialog__close { position:fixed; top:20px; right:24px; margin:0; z-index:3; }
  /* Each island scrolls only when its own content needs it. Optional discovery
   * must never stretch the white cart or create a second full-dialog scrollbar. */
  .rrr-public-panel-dialog.has-companion .rrr-commerce__checkout-panels { height:100%; min-height:0; padding:20px 28px 12px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; background:#fff; color:#173f35; border-radius:16px 0 0 16px; box-shadow:-8px 0 36px #0003; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion { align-self:center; justify-self:center; width:100%; max-width:1100px; max-height:calc(100% - 48px); margin:24px 0; padding:4px 8px 4px clamp(24px,3vw,64px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#ffffff70 transparent; background:transparent; color:#fff; border:0; border-radius:0; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion :is(h3,p,.rrr-commerce__eyebrow,.rrr-commerce__price) { color:#fff; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-feature-photo { background:transparent; height:clamp(160px,24vh,280px); margin:0; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__product { background:transparent; border-color:#ffffff70; border-radius:12px; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__product-copy { padding:14px 16px; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__product-copy h3 { font:750 1.0625rem/1.3 var(--sans,Arial,sans-serif); margin-bottom:6px; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-extras .rrr-commerce__product.is-compact { grid-template-columns:104px minmax(0,1fr); align-items:center; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-extras .rrr-commerce__image-action { align-self:stretch; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-extras .rrr-commerce__picture { min-height:144px; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__eyebrow { font-size:.875rem; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__product-copy > .rrr-commerce__eyebrow { margin-bottom:4px; letter-spacing:.06em; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__product-copy .rrr-commerce__title-action { min-height:0; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__product-copy > .rrr-commerce__price { font-size:1rem; margin:0; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion [data-image-state="placeholder"] { background:#ffffff0d; border:1px solid #ffffff30; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion :is(.rrr-commerce__placeholder,.rrr-commerce__photo-label) { color:#e2eadd; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion :is(button,a) { color:#fff; background:transparent; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__product-actions button { border:1px solid #fff; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion :is(button,a):hover { background:#fff; color:#173f35; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__image-action:hover { background:#ffffff14; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion :is(button,a):focus-visible { outline:3px solid #e6cf87; outline-offset:4px; }
}
@media (min-width:1450px) {
  .rrr-commerce__cart-extras { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:901px) and (max-width:1100px) {
  .rrr-commerce__cart-spotlight { grid-template-columns:minmax(0,1fr); gap:16px; }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-extras .rrr-commerce__product.is-compact { grid-template-columns:72px minmax(0,1fr); }
  .rrr-public-panel-dialog.has-companion .rrr-commerce__cart-companion .rrr-commerce__product-copy { padding:12px; }
}
@media (max-width:900px) {
  dialog.rrr-public-panel-dialog.has-companion { width:100%; }
}
@media (min-width: 901px) and (max-height: 850px) {
  .rrr-storefront .rrr-storefront__hero { padding-block: 1.5rem; }
  .rrr-storefront .rrr-storefront__hero-copy { padding-block: 0; }
  .rrr-storefront .rrr-storefront__hero .rrr-commerce__eyebrow { margin-bottom: 1rem; }
  .rrr-storefront .rrr-storefront__title { margin-bottom: 1rem; font-size: clamp(3.5rem, 5.8vw, 5rem); }
  .rrr-storefront .rrr-storefront__hero-lede { margin-bottom: .5rem; font-size: 1.5rem; }
  .rrr-storefront .rrr-storefront__hero-description { max-width: 42ch; font-size: 1.125rem; line-height: 1.55; }
  .rrr-storefront .rrr-storefront__hero-actions { margin-top: 1.2rem; margin-bottom: .8rem; }
}
@media (max-width: 900px) {
  .rrr-storefront .rrr-storefront__hero { padding: clamp(2rem, 6vw, 4rem); }
  .rrr-storefront .rrr-storefront__hero::after { background: linear-gradient(90deg, rgba(6,39,26,.96), rgba(6,39,26,.79) 62%, rgba(6,39,26,.35)); }
  .rrr-storefront .rrr-storefront__hero-copy { max-width: 37rem; }
  .rrr-storefront .rrr-storefront__hero-location { display: none; }
}
@media (max-width: 600px) {
  .rrr-storefront .rrr-storefront__hero { padding: 2.3rem 1.35rem; }
  .rrr-storefront .rrr-storefront__hero::after { background: linear-gradient(90deg, rgba(6,39,26,.94), rgba(6,39,26,.71)), linear-gradient(0deg, rgba(6,39,26,.35), transparent); }
  .rrr-storefront .rrr-storefront__hero-photo img { object-position: 55% 55%; }
  .rrr-storefront .rrr-storefront__hero-copy { padding: .5rem 0; }
  .rrr-storefront .rrr-storefront__hero .rrr-commerce__eyebrow { margin-bottom: 1.1rem; font-size: .875rem; letter-spacing: .06em; }
  .rrr-storefront .rrr-storefront__title { font-size: clamp(2.65rem, 11.2vw, 4.3rem); }
  .rrr-storefront .rrr-storefront__hero-description { font-size: 1.125rem; line-height: 1.55; }
  .rrr-storefront .rrr-storefront__hero-actions { gap: .65rem; margin-top: 1.4rem; }
  .rrr-storefront .rrr-storefront__hero-actions :is(a,button) { width: 100%; min-height: 48px; }
  .rrr-storefront .rrr-storefront__collection-heading { margin-bottom: 1.5rem; }
  .rrr-storefront .rrr-commerce__detail { gap: 1.25rem; }
  .rrr-storefront .rrr-commerce__detail .rrr-commerce__picture { max-height: 17rem; }
  .rrr-storefront .rrr-commerce__detail-actions > button { width: 100%; }
}
/* Copy-on-use Ranch starter library: same Store shell, bounded category cards. */
.rrr-commerce-workflow { display:grid; gap:12px; min-width:0; color:#173328; }
.rrr-commerce-workflow :is(h3,p) { margin:0; overflow-wrap:anywhere; }
.rrr-commerce-workflow__confirm { display:flex; align-items:flex-start; gap:10px; padding:12px; border:1px solid #cadbd2; border-radius:8px; background:#fffdf8; line-height:1.5; }
.rrr-commerce-workflow__confirm input { flex:0 0 auto; margin-top:4px; }
.rrr-commerce-workflow__actions { display:flex; flex-wrap:wrap; gap:8px; }
.rrr-commerce-workflow__actions :is(a,button) { min-height:44px; min-width:0; padding:10px 14px; border:1px solid #bdc9b7; border-radius:var(--rrr-button-radius,0px); background:#fff; color:#173f35; text-decoration:none; font:inherit; }
.rrr-commerce-workflow [data-service-offer-setup] { min-width:0; margin:0; }
.rrr-commerce-workflow [data-service-offer-setup] :is(label,input,select) { max-width:100%; min-width:0; overflow-wrap:anywhere; }
.rrr-commerce-workflow [data-service-offer-setup] label { display:grid; gap:6px; margin-block:12px; }
.rrr-commerce-workflow [data-service-offer-setup] :is(input:not([type="checkbox"]),select,button) { min-height:44px; }
.rrr-commerce-workflow [data-service-offer-setup] :is(input:not([type="checkbox"]),select) { width:100%; }
.rrr-commerce-workflow__actions :is(a,button):focus-visible { outline:3px solid #b7924e; outline-offset:2px; }
.rrr-commerce-workspace :is([data-store-action="archive"],[data-store-action="restore"],[data-store-action="setup-offer"],[data-store-action="setup-guide"]) { border-radius:var(--rrr-button-radius,0px); }
.rrr-commerce-starters { padding: clamp(1rem, 2vw, 1.5rem); color: var(--rrr-ink, #17382d); }
.rrr-commerce-starters > header { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.rrr-commerce-starters h3, .rrr-commerce-starters h4 { margin: 0 0 .5rem; color: inherit; }
.rrr-commerce-starters header p { margin: 0; max-width: 60ch; }
.rrr-commerce-starters header label { display: grid; gap: .35rem; min-width: 12rem; }
.rrr-commerce-starters__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.rrr-commerce-starters__card { display: flex; flex-direction: column; align-items: start; gap: .65rem; padding: 1.25rem; min-width: 0; overflow-wrap: anywhere; border: 1px solid #d9ddcd; border-radius: 1rem; background: #fffdf7; }
.rrr-commerce-starters__card p { margin: 0; }
.rrr-commerce-starters__card details { width: 100%; margin-bottom: .5rem; }
.rrr-commerce-starters__card details p { margin-top: .65rem; }
.rrr-commerce-starters__card summary { cursor: pointer; min-height: 44px; padding-block: .65rem; }
.rrr-commerce-starters__card > button, .rrr-commerce-starters__card > a { margin-top: auto; min-height: 44px; }
.rrr-commerce-starters__evidence { font-size: .8rem; font-weight: 700; color: #44613c; }
.rrr-commerce-starters[hidden], .rrr-commerce-starters__card[hidden] { display: none !important; }
/* Store keeps its original controller and panes inside the shared frame.
   Long guidance, preparation and recovery can scroll the Store root as needed. */
@media (min-height:651px) {
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) { display:flex; flex-direction:column; min-height:0; width:100%; max-width:none; gap:0; padding:12px; }
  .rrr-workspace:has(.rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) .rrr-workspace__topbar { min-height:64px; padding:10px 16px; }
  .rrr-workspace:has(.rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) .rrr-workspace__topbar h1 { font-size:1.4rem; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar { position:relative; flex:0 0 auto; gap:6px; margin-bottom:6px; padding:4px; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar .rrr-workspace-task-toolbar__context { flex:1 1 auto; min-width:0; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar .rrr-workspace-task-toolbar__context > .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar .rrr-workspace-task-toolbar__views { display:flex; flex:1 1 auto; width:100%; min-width:0; gap:4px; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar .rrr-workspace-task-toolbar__views a { flex:1 1 0; min-width:0; min-height:44px; justify-content:center; padding:6px 8px; font-size:.84rem; line-height:1.2; text-align:center; white-space:normal; }
  .rrr-workspace__content:has(> .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded]) > .rrr-workspace-task-toolbar .rrr-workspace-task-toolbar__actions :is(a,button) { min-height:44px; padding:8px 12px; border-radius:8px; font-size:.875rem; line-height:1.25; text-transform:none; letter-spacing:0; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] { display:flex; flex:1 1 auto; flex-direction:column; min-height:0; min-width:0; overflow:auto; overscroll-behavior:contain; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > * { flex:0 0 auto; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > .rrr-commerce-workspace__toolbar { gap:6px; margin-bottom:6px; padding-bottom:6px; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > :is([data-store-list],[data-store-profile],[data-store-form])[data-rrr-workspace-scroll-region]:not([hidden]) { flex:1 1 auto; min-height:120px; min-width:0; overflow:auto; overscroll-behavior:contain; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] [data-store-filters] { margin:6px 0; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > .rrr-commerce-workspace__form { scroll-padding-block:88px; }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > .rrr-commerce-workspace__form > .rrr-commerce-workspace__steps { position:sticky; top:0; z-index:2; margin:0 0 .75rem; padding:.4rem 0 .75rem; background:var(--store-paper); }
  .rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded] > .rrr-commerce-workspace__form > footer.rrr-commerce-workspace__actions { position:sticky; bottom:0; z-index:2; margin:.75rem 0 0; padding:.65rem 0; border-top:1px solid var(--store-line); background:var(--store-paper); }
}
/* The standard rail still owns a grid column between the mobile frame's
   1000px boundary and the rail's 900px compact-row boundary. */
@media (min-width:901px) and (max-width:1000px) and (min-height:651px) {
  .rrr-workspace:has(.rrr-commerce-workspace[data-commerce-workspace][data-rrr-workspace-bounded-mobile]) { display:grid; }
}
.rrr-commerce-workspace[data-commerce-workspace]:focus-visible,
.rrr-commerce-workspace[data-commerce-workspace] [data-rrr-workspace-scroll-region]:focus-visible { outline:3px solid #977525; outline-offset:-3px; }
@media (max-width: 680px) { .rrr-commerce-starters > header { align-items: stretch; flex-direction: column; } .rrr-commerce-starters__grid { grid-template-columns: minmax(0, 1fr); } }
