/*
  Shop Admin feature CSS
  Shared admin shell/components live in assets/css/admin-core.css.
  Keep this file limited to Shop-specific layouts, data states, and feature editors.
*/

.shop-admin-summary-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .9rem;
}
.shop-admin-metric {
  display: grid;
  align-content: center;
  gap: .35rem;
}
.shop-admin-metric span { line-height: 1; font-weight: 900; }
.shop-admin-metric strong { font-size: .95rem; }
.shop-admin-metric small { color: var(--admin-text-muted); }
.shop-admin-card-head { margin-bottom: .75rem; }
.shop-admin-top-actions small { color: var(--admin-text-muted); white-space: nowrap; }
.shop-admin-toolbar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
  gap: .7rem;
  align-items: end;
}

.shop-admin-detail-dl {
  display: grid;
  grid-template-columns: minmax(130px, .55fr) 1fr;
  gap: .55rem 1rem;
  margin: 0;
}
.shop-admin-detail-dl dt { color: var(--admin-text-muted); font-weight: 800; }
.shop-admin-detail-dl dd { margin: 0; font-weight: 850; }

.shop-admin-detail-item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  padding: .65rem 0;
  border-top: 1px solid var(--admin-border-soft);
}
.shop-admin-detail-item:first-child { border-top: 0; }
.shop-admin-detail-item img {
  width: 52px;
  height: 48px;
  object-fit: contain;
  border-radius: var(--admin-radius-button);
  background: var(--admin-surface-strong);
}
.shop-admin-note-row,
.shop-admin-email-row {
  margin-bottom: .6rem;
  padding: .72rem;
  border: 1px solid var(--admin-border-soft);
  border-radius: var(--admin-radius-button);
  background: rgba(255, 253, 246, .72);
}

@media (max-width: 1120px) {
  .shop-admin-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .shop-admin-summary-grid,
  .shop-admin-toolbar,
  .shop-admin-form-row { grid-template-columns: 1fr; }
  .shop-admin-panel-heading { align-items: flex-start; flex-direction: column; }
  .shop-admin-card { overflow: hidden; }
}

/* Milestone 6 Section 1: Products & Inventory */
.shop-products-toolbar {
  grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(160px, 220px));
}
.shop-admin-products-table { min-width: 1180px; }
.shop-admin-products-table td { vertical-align: middle; }
.shop-admin-inline-input {
  width: 100%;
  min-width: 7rem;
  border: 1px solid rgba(92, 72, 49, .16);
  border-radius: .55rem;
  background: rgba(255,255,255,.68);
  padding: .38rem .48rem;
  color: var(--shop-admin-ink);
  font: inherit;
  font-size: .88rem;
}
.shop-admin-products-table tr[data-save-state="dirty"] { background: rgba(217, 196, 134, .14); }
.shop-admin-products-table tr[data-save-state="saving"] { background: rgba(111, 125, 91, .11); }
.shop-admin-products-table tr[data-save-state="saved"] { background: rgba(111, 125, 91, .16); }
.shop-admin-products-table tr[data-save-state="error"] { background: rgba(154, 79, 56, .12); }
.shop-admin-row-actions {
  display: flex;
  gap: .35rem;
  flex-wrap: wrap;
}
.shop-admin-row-actions button,
.shop-admin-stock-button {
  white-space: nowrap;
}
.shop-admin-checkbox {
  display: flex !important;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: .45rem !important;
  margin: .45rem 0;
}
.shop-admin-checkbox input { width: auto !important; }
.shop-admin-form input,
.shop-admin-form select,
.shop-admin-form textarea {
  width: 100%;
}
.shop-admin-detail-dl {
  display: grid;
  grid-template-columns: minmax(110px, .5fr) minmax(0, 1fr);
  gap: .4rem .75rem;
}
.shop-admin-detail-dl dt {
  color: var(--shop-admin-muted);
  font-weight: 800;
}
.shop-admin-detail-dl dd { margin: 0; }
@media (max-width: 860px) {
  .shop-products-toolbar { grid-template-columns: 1fr; }
  .shop-admin-row-actions { flex-direction: column; }
}

/* Milestone 6 Section 2 — product image management */
.shop-admin-product-cell {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: .65rem;
  align-items: center;
}
.shop-admin-product-thumb {
  width: 48px;
  height: 48px;
  border: 1px solid var(--shop-admin-line);
  border-radius: .75rem;
  background: #f6eddc;
  object-fit: cover;
}
.shop-admin-section-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: .75rem;
}
.shop-admin-section-title h3 { margin: 0; }
.shop-admin-section-title span {
  color: var(--shop-admin-muted);
  font-size: .88rem;
  font-weight: 800;
}
.shop-admin-upload-box {
  display: grid;
  place-items: center;
  gap: .25rem;
  min-height: 104px;
  margin: .85rem 0;
  border: 1px dashed rgba(92, 72, 49, .34);
  border-radius: 1rem;
  background: rgba(255,255,255,.4);
  cursor: pointer;
  text-align: center;
}
.shop-admin-upload-box input { display: none; }
.shop-admin-upload-box span { color: var(--shop-admin-muted); font-size: .9rem; }
.shop-admin-upload-box.is-disabled { opacity: .62; cursor: not-allowed; }
.shop-admin-image-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(178px, 1fr));
  gap: .9rem;
}
.shop-admin-image-card {
  border: 1px solid var(--shop-admin-line);
  border-radius: 1rem;
  background: rgba(255,255,255,.46);
  padding: .65rem;
}
.shop-admin-image-preview {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1.15 / 1;
  border-radius: .8rem;
  border: 1px solid rgba(92,72,49,.12);
  background: #f5ead7;
}
.shop-admin-image-preview img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.shop-admin-image-preview span {
  position: absolute;
  top: .45rem;
  left: .45rem;
  border-radius: 999px;
  background: var(--shop-admin-sage);
  color: #fff9ef;
  font-size: .75rem;
  font-weight: 850;
  padding: .22rem .5rem;
}
.shop-admin-image-card label {
  display: grid;
  gap: .3rem;
  margin: .55rem 0;
  color: var(--shop-admin-muted);
  font-size: .82rem;
  font-weight: 800;
}
.shop-admin-image-card input {
  width: 100%;
  border: 1px solid var(--shop-admin-line);
  border-radius: .65rem;
  background: rgba(255,255,255,.74);
  color: var(--shop-admin-ink);
  padding: .55rem .65rem;
  font: inherit;
}
.shop-admin-image-actions {
  display: flex;
  justify-content: space-between;
  gap: .5rem;
  margin: .45rem 0;
}
.shop-admin-image-actions button {
  border: 1px solid var(--shop-admin-line);
  border-radius: 999px;
  background: rgba(255,255,255,.54);
  color: var(--shop-admin-ink);
  padding: .42rem .65rem;
  font: inherit;
  font-size: .82rem;
  font-weight: 850;
  cursor: pointer;
}
.shop-admin-image-actions button[disabled] { opacity: .5; cursor: default; }
.shop-admin-image-actions [data-image-remove] { color: var(--shop-admin-warn); }
.shop-admin-warning {
  border: 1px solid rgba(154,79,56,.25);
  border-radius: .85rem;
  background: rgba(154,79,56,.08);
  color: var(--shop-admin-warn);
  padding: .75rem .85rem;
  font-weight: 800;
}

/* Milestone 6 Section 3 — Digital Delivery */
.shop-admin-digital-summary .shop-admin-metric { min-height: 116px; }
.shop-admin-digital-file-card {
  border: 1px solid var(--shop-admin-line);
  border-radius: 1rem;
  background: rgba(255,255,255,.46);
  padding: .9rem;
  margin: .35rem 0 .75rem;
}
.shop-admin-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .65rem;
}
[data-digital-upload-status] { font-size: .88rem; }


/* Milestone 6 Section 4 — Refund Requests Foundation */
.shop-admin-refund-summary .shop-admin-metric span { color: #6f7558; }
.shop-refund-action-form label { display: grid; gap: .4rem; margin-bottom: .85rem; font-weight: 800; }
.shop-refund-action-form input,
.shop-refund-action-form textarea {
  width: 100%;
  border: 1px solid var(--shop-admin-line);
  border-radius: .9rem;
  background: #fffaf0;
  color: var(--shop-admin-ink);
  padding: .75rem .85rem;
  font: inherit;
}
.shop-refund-action-form textarea { min-height: 110px; resize: vertical; }
.shop-admin-checkbox { display: flex !important; grid-template-columns: auto 1fr; align-items: center; gap: .55rem !important; font-weight: 750 !important; }
.shop-admin-checkbox input { width: auto; }
.shop-admin-warning {
  border: 1px solid rgba(154, 101, 64, .24);
  border-radius: .9rem;
  background: rgba(226, 190, 151, .18);
  color: #68442c;
  padding: .8rem .9rem;
}
.shop-admin-event-list { display: grid; gap: .7rem; }
.shop-admin-event-list p {
  margin: 0;
  padding: .75rem .85rem;
  border-left: 3px solid rgba(111, 125, 91, .45);
  background: rgba(255,255,255,.38);
  border-radius: .7rem;
}

/* M6 Section 5 — Webhook Log / System Event Log */
.shop-admin-webhook-summary .shop-admin-metric span { color: var(--uh-brown, #4f2d1f); }
.shop-admin-webhook-toolbar { align-items: end; }
.shop-admin-code-block {
  margin: .5rem 0 0;
  padding: .85rem;
  max-height: 260px;
  overflow: auto;
  border: 1px solid rgba(91, 68, 44, .18);
  border-radius: 14px;
  background: rgba(255, 250, 239, .78);
  color: #4f3629;
  font-size: .82rem;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}
.shop-admin-security-note {
  display: flex;
  gap: .5rem;
  align-items: center;
  margin: .9rem 0 0;
  color: #6f614b;
  font-size: .92rem;
}
.shop-admin-security-note::before { content: '🔒'; }


/* Milestone 6 Section 6 — Finance / Reports */
.shop-admin-finance-toolbar input[type="date"] {
  min-width: 10.5rem;
}
.shop-admin-report-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.shop-admin-finance-definitions {
  color: var(--shop-admin-muted, #695f50);
}
.shop-admin-finance-definitions p {
  margin: .45rem 0;
  line-height: 1.55;
}
@media (max-width: 900px) {
  .shop-admin-report-grid {
    grid-template-columns: 1fr;
  }
}

.shop-admin-finance-toolbar { grid-template-columns: minmax(170px, 220px) minmax(150px, 180px) minmax(150px, 180px) auto; align-items: end; }
.shop-admin-toolbar-actions { display:flex; gap:.55rem; align-items:end; justify-content:flex-end; flex-wrap:wrap; }
.shop-admin-price-cell, .shop-admin-price-cell input { max-width: 7.5rem; min-width: 6rem; }
.shop-admin-products-table th:nth-child(5), .shop-admin-products-table td:nth-child(5) { width: 7.5rem; }
.shop-admin-products-table th:nth-child(2), .shop-admin-products-table td:nth-child(2) { width: 10rem; }
.shop-admin-products-table .shop-admin-product-cell { min-width: 240px; }
.shop-admin-products-table .shop-admin-inline-input { min-width: 0; }
.shop-admin-dialog-root { position:fixed; inset:0; z-index:300; pointer-events:none; }
.shop-admin-dialog-backdrop { position:fixed; inset:0; display:grid; place-items:center; background:rgba(47,40,31,.32); pointer-events:auto; padding:1rem; }
.shop-admin-dialog { max-width:520px; width:min(100%,520px); border:1px solid var(--shop-admin-line); border-radius:1.1rem; background:#fff9ef; box-shadow:var(--shop-admin-shadow); padding:1.25rem; }
.shop-admin-dialog h2 { margin:0 0 .5rem; }
.shop-admin-library-upload-card { padding:0; overflow:hidden; }
.shop-admin-library-upload-card iframe { width:100%; min-height:72vh; border:0; background:#fff9ef; display:block; }

.shop-admin-inline-actions { display:flex; gap:.5rem; flex-wrap:wrap; align-items:center; }

/* Consolidated hotfix: keep admin controls inert until auth verification succeeds. */
.shop-admin-page:not(.is-admin-ready) .shop-admin-nav button,
.shop-admin-page:not(.is-admin-ready) .shop-admin-top-actions button,
.shop-admin-page:not(.is-admin-ready) [data-admin-app] {
  pointer-events: none;
}
.shop-admin-page:not(.is-admin-ready) .shop-admin-nav button {
  opacity: .52;
}

/* Milestone 6 completion corrective patch — structured product editing */
.shop-admin-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem .9rem;
  padding: .65rem .75rem;
  border: 1px solid rgba(92, 72, 49, .12);
  border-radius: .85rem;
  background: rgba(255,255,255,.34);
}
.shop-admin-variant-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  margin: .7rem 0;
  padding: .8rem;
  border: 1px solid rgba(92, 72, 49, .14);
  border-radius: .9rem;
  background: rgba(255,255,255,.42);
}
.shop-admin-variant-row > label {
  display: grid;
  gap: .32rem;
  color: #5f5548;
  font-size: .84rem;
  font-weight: 800;
}
.shop-admin-variant-row > label input,
.shop-admin-variant-row > label select {
  width: 100%;
  border: 1px solid rgba(92,72,49,.18);
  border-radius: .7rem;
  background: rgba(255,255,255,.76);
  padding: .6rem .68rem;
  color: var(--shop-admin-ink);
  font: inherit;
}
.shop-admin-variant-row .shop-admin-inline-actions {
  grid-column: 1 / -1;
  justify-content: flex-end;
}
.shop-admin-add-variant {
  margin-top: .7rem;
  border: 1px dashed rgba(92,72,49,.28);
  border-radius: .9rem;
  padding: .7rem;
  background: rgba(255,255,255,.3);
}
.shop-admin-add-variant summary {
  cursor: pointer;
  color: #735034;
  font-weight: 850;
}
.shop-admin-upload-list {
  display: grid;
  gap: .6rem;
  margin: .65rem 0;
}
.shop-admin-upload-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px, 180px) auto;
  gap: .7rem;
  align-items: center;
  border: 1px solid rgba(92,72,49,.14);
  border-radius: .85rem;
  padding: .7rem .75rem;
  background: rgba(255,255,255,.42);
}
.shop-admin-upload-row progress,
.shop-admin-upload-progress progress {
  width: 100%;
  min-height: .65rem;
  accent-color: var(--shop-admin-sage);
}
.shop-admin-upload-row.is-error {
  border-color: rgba(154,79,56,.34);
  background: rgba(154,79,56,.07);
}
.shop-admin-upload-row.is-complete {
  border-color: rgba(111,125,91,.3);
  background: rgba(111,125,91,.08);
}
.shop-admin-upload-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: .55rem;
  align-items: center;
  margin-top: .65rem;
  padding: .7rem;
  border: 1px solid rgba(92,72,49,.14);
  border-radius: .85rem;
  background: rgba(255,255,255,.4);
}
.shop-admin-upload-progress[hidden] { display: none; }
.shop-admin-product-preview {
  position: relative;
  max-height: min(88vh, 760px);
  overflow: auto;
}
.shop-admin-product-preview img {
  width: 100%;
  max-height: 360px;
  object-fit: contain;
  border: 1px solid rgba(92,72,49,.12);
  border-radius: 1rem;
  background: #f6eddc;
  margin: .75rem 0;
}
.shop-admin-compact-label {
  display: grid;
  gap: .25rem;
  margin-top: .45rem;
  color: #5f5548;
  font-size: .78rem;
  font-weight: 800;
}
.shop-admin-compact-label input {
  width: min(100%, 320px);
  border: 1px solid rgba(92,72,49,.18);
  border-radius: .65rem;
  background: rgba(255,255,255,.74);
  padding: .52rem .6rem;
  color: var(--shop-admin-ink);
  font: inherit;
}
.shop-admin-field-error {
  color: var(--shop-admin-warn);
  font-size: .82rem;
  font-weight: 800;
}
@media (max-width: 720px) {
  .shop-admin-check-grid,
  .shop-admin-variant-row,
  .shop-admin-upload-row,
  .shop-admin-upload-progress {
    grid-template-columns: 1fr;
  }
  .shop-admin-variant-row .shop-admin-inline-actions { grid-column: auto; }
}

.shop-admin-main,
.shop-admin-app,
.shop-admin-panel,
.shop-admin-card,
.shop-admin-table-wrap,
.shop-admin-panel-heading,
.shop-admin-summary-grid { min-width: 0; max-width: 100%; }
@media (max-width: 720px) {
  .shop-admin-panel-heading { align-items: start; flex-direction: column; }
  .shop-admin-card { overflow: hidden; }
}

.shop-admin-library-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 1rem;
  align-items: start;
}
.shop-admin-library-editor-card,
.shop-admin-library-list-card,
.shop-admin-library-import-card {
  overflow: visible;
}
.shop-admin-library-record-form .shop-admin-drawer-section:first-of-type {
  clear: none;
  border-top: 0;
  padding-top: 0;
  margin-top: 0;
}
.shop-admin-output {
  width: 100%;
  max-height: 18rem;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  border: 1px solid var(--shop-admin-line);
  border-radius: .85rem;
  background: rgba(255, 255, 255, .58);
  padding: .85rem;
  color: var(--shop-admin-muted);
  font-size: .86rem;
}
.shop-admin-stat-card {
  border: 1px solid var(--shop-admin-line);
  border-radius: .9rem;
  background: rgba(255,255,255,.52);
  padding: .75rem;
}
.shop-admin-stat-card strong {
  display: block;
  font-size: 1.25rem;
  color: var(--shop-admin-ink);
}
.shop-admin-stat-card span {
  display: block;
  color: var(--shop-admin-muted);
  font-size: .84rem;
  font-weight: 750;
}
.shop-admin-library-import-actions {
  display: flex;
  align-items: end;
  justify-content: flex-start;
  min-height: 100%;
}
@media (max-width: 980px) {
  .shop-admin-library-grid { grid-template-columns: 1fr; }
}

/* M6 full Living Library Manager integration */
.shop-admin-library-manager-card {
  min-height: 78vh;
  overflow: hidden;
}
.shop-admin-library-manager-frame {
  display: block;
  width: 100%;
  min-height: 82vh;
  border: 1px solid var(--shop-admin-line);
  border-radius: 1.15rem;
  background: #fbf6ec;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
}
@media (max-width: 720px) {
  .shop-admin-library-manager-frame { min-height: 88vh; }
}
.shop-admin-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
  margin-top: 1rem;
}

/* Settings feature layouts. Shared settings sections, fields, tables, status
   cards, actions, and save states live in admin-core.css. */
.shop-admin-construction-settings,
.shop-admin-project-updates-settings { min-width: 0; }
.shop-admin-popup-preview-row img {
  width: 120px;
  height: 120px;
  object-fit: contain;
  border-radius: var(--admin-radius-card);
}
.shop-admin-carrier-settings-table { min-width: 760px; }
.shop-admin-carrier-settings-table th:first-child,
.shop-admin-carrier-settings-table td:first-child { width: 8rem; }
.shop-admin-carrier-settings-table th:nth-child(2),
.shop-admin-carrier-settings-table td:nth-child(2) { width: 11rem; }
.shop-admin-issue-settings-table { min-width: 560px; }
.shop-admin-issue-settings-table th:first-child,
.shop-admin-issue-settings-table td:first-child { width: 5rem; }
.shop-admin-issue-settings-table td:nth-child(2) input { min-width: 22rem; }

/* Phase 2 admin redesign — Project Updates table + drawer */
.shop-admin-project-updates-tools {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.shop-admin-project-updates-tools .shop-admin-empty {
  margin: .25rem 0 0;
}
.shop-admin-project-updates-table-wrap {
  margin-top: .5rem;
}
.shop-admin-project-updates-table {
  min-width: 1180px;
}
.shop-admin-project-updates-table th:first-child,
.shop-admin-project-updates-table td:first-child {
  width: 4.8rem;
}
.shop-admin-project-updates-table th:nth-child(2),
.shop-admin-project-updates-table td:nth-child(2) {
  width: 9.5rem;
}
.shop-admin-project-updates-table th:nth-child(3),
.shop-admin-project-updates-table td:nth-child(3) {
  width: 15rem;
}
.shop-admin-project-updates-table th:nth-child(4),
.shop-admin-project-updates-table td:nth-child(4) {
  width: 16rem;
}
.shop-admin-project-updates-table th:nth-child(6),
.shop-admin-project-updates-table td:nth-child(6) {
  width: 10rem;
}
.shop-admin-project-updates-table th:last-child,
.shop-admin-project-updates-table td:last-child {
  width: 17rem;
}
.shop-admin-project-updates-table .shop-admin-inline-input,
.shop-admin-project-updates-table .shop-admin-inline-select {
  min-height: 36px;
  padding: .42rem .5rem;
  border-radius: 6px;
  font-size: .9rem;
}
.shop-admin-project-updates-table td:nth-child(3) {
  display: grid;
  gap: .42rem;
}
.shop-admin-table-check {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--admin-text-soft, #675b4a);
  font-size: .86rem;
  font-weight: 800;
}
.shop-admin-table-check input {
  width: auto;
  min-height: 0;
}
.shop-admin-project-preview {
  display: grid;
  gap: .22rem;
  min-width: 18rem;
}
.shop-admin-project-preview strong {
  color: var(--admin-heading, #2c271f);
  font-size: .95rem;
}
.shop-admin-project-preview small {
  color: var(--admin-text-muted, #877865);
  line-height: 1.35;
}
.shop-admin-project-chip {
  display: inline-flex;
  align-items: center;
  margin-top: .35rem;
  min-height: 24px;
  padding: .2rem .48rem;
  border: 1px solid var(--admin-border-soft, #e6dabd);
  border-radius: 999px;
  background: var(--admin-surface-soft, #f5ecd6);
  color: var(--admin-text-soft, #675b4a);
  font-size: .74rem;
  font-weight: 900;
}
.shop-admin-project-chip.success {
  background: var(--admin-sage-pale, #eef3e7);
  border-color: var(--admin-sage-line, #c3ceb5);
  color: var(--admin-success, #506e42);
}
.shop-admin-project-chip.warning {
  background: var(--admin-gold-soft, #efe1bd);
  border-color: #d9c58d;
  color: var(--admin-warning, #8a6333);
}
.shop-admin-project-chip.danger {
  background: var(--admin-danger-soft, #f0d8d0);
  border-color: #d7a69d;
  color: var(--admin-danger, #8e3f32);
}
.shop-admin-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .42rem;
}
.shop-admin-small-button.danger {
  color: var(--admin-danger, #8e3f32);
  border-color: #d6a59a;
  background: var(--admin-danger-soft, #f0d8d0);
}
/* Project Updates uses the shared admin-core drawer shell. */
.shop-admin-project-update-drawer-form {
  display: grid;
  gap: 1rem;
}
.shop-admin-project-update-drawer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.shop-admin-project-update-drawer-form label {
  display: grid;
  gap: .38rem;
  color: var(--admin-text-soft, #675b4a);
  font-size: .82rem;
  font-weight: 850;
}
.shop-admin-project-update-drawer-actions { margin-top: .25rem; }
.shop-admin-project-update-color-preview {
  display: grid;
  grid-template-columns: 2.4rem 1fr auto;
  align-items: center;
  gap: .7rem;
  padding: .75rem;
  border: 1px solid var(--admin-border-soft, #e6dabd);
  border-radius: var(--admin-radius-card, 12px);
  background: var(--admin-surface-strong, #fffdf6);
}
.shop-admin-project-update-color-preview span {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: var(--admin-radius-button, 8px);
  background: var(--project-update-preview-color, var(--admin-sage, #667b58));
  border: 1px solid rgba(52,45,36,.18);
}
.shop-admin-project-update-color-preview small {
  color: var(--admin-text-muted, #877865);
  font-weight: 800;
}
.shop-admin-project-update-preview-region {
  margin: 0 0 1rem;
}
.shop-admin-project-update-preview-region[hidden] {
  display: none;
}
.shop-admin-project-card-preview {
  position: relative;
  overflow: hidden;
  padding: 1.1rem 1.15rem 1rem;
  border: 1px solid var(--admin-border, #d8c8a8);
  border-radius: var(--admin-radius-card, 12px);
  background: var(--admin-surface-strong, #fffdf6);
  box-shadow: var(--admin-shadow-soft, 0 6px 14px rgba(61,49,31,.04));
}
.shop-admin-project-card-preview::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: var(--project-update-preview-color, #8b7652);
}
.shop-admin-project-card-preview-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .42rem .65rem;
  color: var(--admin-text-muted, #877865);
  font-size: .76rem;
  font-weight: 800;
}
.shop-admin-project-card-preview-meta span,
.shop-admin-project-card-preview-meta b,
.shop-admin-project-card-preview-links span {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: .2rem .55rem;
  border: 1px solid var(--admin-border-soft, #e6dabd);
  border-radius: var(--admin-radius-pill, 999px);
  background: var(--admin-surface-soft, #f5ecd6);
  color: var(--admin-text-soft, #675b4a);
  font-size: .74rem;
  font-weight: 850;
}
.shop-admin-project-card-preview h3 {
  margin: .8rem 0 .42rem;
  color: var(--admin-heading, #2c271f);
  font-family: var(--admin-font-heading, Georgia, serif);
  font-size: 1.35rem;
  line-height: 1.18;
}
.shop-admin-project-card-preview-summary,
.shop-admin-project-card-preview-body {
  margin: .45rem 0 0;
  color: var(--admin-text-soft, #675b4a);
  line-height: 1.5;
}
.shop-admin-project-card-preview-body {
  font-size: .9rem;
}
.shop-admin-project-card-preview-links {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .8rem;
}
.shop-admin-project-card-preview > small {
  display: block;
  margin-top: .85rem;
  color: var(--admin-text-muted, #877865);
  font-size: .73rem;
}
@media (max-width: 920px) {
  .shop-admin-project-updates-tools {
    display: grid;
  }
  .shop-admin-project-update-drawer .shop-admin-drawer-panel,
  .shop-admin-project-update-drawer-panel {
    width: 100vw;
  }
  .shop-admin-project-update-drawer-grid,
  .shop-admin-settings-two-col {
    grid-template-columns: 1fr;
  }
}

/* Master Phase 4: Shop-only filter grid breakpoints. Shared toolbar surfaces
   and control styling remain in admin-core.css. */
@media (max-width: 1040px) {
  .shop-admin-finance-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .shop-admin-finance-toolbar .shop-admin-toolbar-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}
@media (max-width: 620px) {
  .shop-admin-finance-toolbar {
    grid-template-columns: 1fr;
  }
  .shop-admin-finance-toolbar .shop-admin-toolbar-actions {
    grid-column: auto;
  }
}
