:root {
  --bg: #f6f7fb;
  --card: #ffffff;
  --ink: #1d2433;
  --muted: #647084;
  --line: #dfe5ef;
  --primary: #355cff;
  --primary-dark: #233ed4;
  --good: #147d4f;
  --warn: #a55c00;
  --bad: #b3261e;
  --soft: #edf1ff;
  --shadow: 0 16px 40px rgba(24, 35, 66, .10);
}

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--bg);
  color: var(--ink);
}
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.site-header {
  background: rgba(255,255,255,.92);
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(14px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 16px 28px;
}
.brand { display: flex; align-items: center; gap: 13px; cursor: pointer; }
.brand-mark {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: linear-gradient(135deg, #355cff, #00a1ff);
  color: white;
  display: grid;
  place-items: center;
  font-weight: 900;
  letter-spacing: -1px;
}
.brand h1 { margin: 0; font-size: 1.18rem; }
.brand p { margin: 2px 0 0; color: var(--muted); font-size: .86rem; }
nav { display: flex; gap: 9px; flex-wrap: wrap; }
nav button, .ghost-btn, .back-btn {
  border: 1px solid var(--line);
  background: white;
  color: var(--ink);
  border-radius: 999px;
  padding: 10px 14px;
}
nav button:hover, .ghost-btn:hover, .back-btn:hover { border-color: var(--primary); color: var(--primary); }
main { max-width: 1180px; margin: 0 auto; padding: 28px; }
.page { display: none; }
.page.active { display: block; }
.hero {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 22px;
  align-items: stretch;
  margin-bottom: 22px;
}
.hero > div:first-child, .hero-card, .panel, .collection-card, .detail-shell, .review-card {
  background: var(--card);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  border-radius: 24px;
}
.hero > div:first-child { padding: 34px; }
.eyebrow { color: var(--primary); font-weight: 800; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }
.hero h2 { font-size: clamp(2rem, 4vw, 3.7rem); line-height: .96; margin: 12px 0 16px; letter-spacing: -0.06em; }
.hero p { color: var(--muted); max-width: 700px; font-size: 1.08rem; }
.hero-card { padding: 28px; display: grid; align-content: center; gap: 6px; }
.hero-card strong { font-size: 2.3rem; letter-spacing: -0.05em; }
.hero-card span { color: var(--muted); margin-bottom: 12px; }
.panel { padding: 18px; }
.search-row { display: grid; grid-template-columns: 1fr 210px 190px; gap: 12px; }
input, select, textarea {
  width: 100%;
  border: 1px solid var(--line);
  background: white;
  color: var(--ink);
  border-radius: 14px;
  padding: 12px 14px;
  outline: none;
}
textarea { min-height: 120px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 4px var(--soft); }
.collection-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 20px; }
.collection-card { overflow: hidden; }
.collection-photo { width: 100%; height: 165px; object-fit: cover; background: linear-gradient(135deg, #dfe5ff, #eef7ff); }
.collection-card-body { padding: 18px; }
.collection-card h3 { margin: 0 0 8px; font-size: 1.18rem; }
.collection-card p { color: var(--muted); line-height: 1.45; }
.meta-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin: 10px 0; }
.badge { padding: 5px 9px; border-radius: 999px; font-size: .78rem; font-weight: 800; border: 1px solid transparent; }
.status-verified { color: var(--good); background: #e8f6ee; }
.status-community-review { color: var(--warn); background: #fff4df; }
.status-draft { color: #4b5870; background: #eef1f6; }
.status-disputed { color: var(--bad); background: #ffeceb; }
.status-archived { color: #555; background: #eeeeee; }
.primary-btn, .collection-card button, .item-builder button, .inline-controls button {
  border: none;
  background: var(--primary);
  color: white;
  border-radius: 14px;
  padding: 12px 16px;
  font-weight: 800;
}
.primary-btn:hover, .collection-card button:hover, .item-builder button:hover, .inline-controls button:hover { background: var(--primary-dark); }
.section-title { margin: 8px 0 18px; }
.section-title h2 { margin: 0; font-size: 2rem; letter-spacing: -0.04em; }
.section-title p { color: var(--muted); margin: 6px 0 0; }
.compact h3 { margin: 0; }
.form-panel { display: grid; gap: 18px; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
label { display: grid; gap: 7px; font-weight: 750; }
.custom-field-builder, .item-builder {
  border: 1px dashed #bbc6da;
  background: #fbfcff;
  border-radius: 20px;
  padding: 18px;
  display: grid;
  gap: 14px;
}
.custom-field-builder h3 { margin: 0; }
.custom-field-builder p { color: var(--muted); margin: 5px 0 0; }
.inline-controls { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.tag-list { display: flex; gap: 8px; flex-wrap: wrap; }
.tag { background: var(--soft); color: var(--primary); padding: 7px 10px; border-radius: 999px; font-weight: 800; }
.tag button { border: none; background: transparent; color: inherit; margin-left: 6px; }
.draft-items { display: grid; gap: 10px; }
.draft-item { background: white; border: 1px solid var(--line); border-radius: 14px; padding: 12px; }
.form-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.detail-shell { overflow: hidden; }
.detail-hero { display: grid; grid-template-columns: 360px 1fr; }
.detail-hero img { width: 100%; height: 100%; min-height: 300px; object-fit: cover; background: #edf1ff; }
.detail-info { padding: 26px; }
.detail-info h2 { font-size: 2.3rem; letter-spacing: -0.05em; margin: 8px 0; }
.item-table-wrap { padding: 20px; overflow: auto; }
table { width: 100%; border-collapse: collapse; min-width: 760px; }
th, td { border-bottom: 1px solid var(--line); padding: 12px; text-align: left; vertical-align: top; }
th { color: var(--muted); font-size: .84rem; text-transform: uppercase; letter-spacing: .05em; }
.item-thumb { width: 54px; height: 54px; border-radius: 12px; object-fit: cover; background: #edf1ff; }
.vote-box { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.vote-box button { border: 1px solid var(--line); background: white; border-radius: 12px; padding: 9px 10px; }
.review-list { display: grid; gap: 14px; }
.review-card { padding: 18px; display: grid; gap: 10px; }
.review-card h3 { margin: 0; }
.review-card p { color: var(--muted); margin: 0; }
.review-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.review-actions button { border: 1px solid var(--line); background: white; border-radius: 12px; padding: 10px 12px; }
.toast {
  position: fixed;
  right: 20px;
  bottom: 20px;
  background: #1d2433;
  color: white;
  padding: 13px 16px;
  border-radius: 14px;
  box-shadow: var(--shadow);
  opacity: 0;
  transform: translateY(12px);
  transition: .2s ease;
  pointer-events: none;
}
.toast.show { opacity: 1; transform: translateY(0); }
.empty-state { background: white; border: 1px dashed #bbc6da; border-radius: 20px; padding: 28px; color: var(--muted); text-align: center; }
@media (max-width: 900px) {
  .site-header { align-items: flex-start; flex-direction: column; }
  .hero, .detail-hero { grid-template-columns: 1fr; }
  .collection-grid { grid-template-columns: repeat(2, 1fr); }
  .search-row, .form-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  main { padding: 16px; }
  .collection-grid { grid-template-columns: 1fr; }
  nav button { padding: 8px 10px; }
  .hero > div:first-child { padding: 24px; }
}

.simple-search-row { grid-template-columns: 1fr 220px; }
.image-upload-builder {
  border: 1px dashed #bbc6da;
  background: #fbfcff;
  border-radius: 20px;
  padding: 18px;
  display: grid;
  gap: 14px;
}
.image-upload-builder h3 { margin: 0; }
.image-upload-builder p { color: var(--muted); margin: 5px 0 0; }
.image-draft-grid, .gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 14px;
}
.image-draft-card, .collection-gallery figure {
  margin: 0;
  background: white;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  padding: 12px;
  display: grid;
  gap: 10px;
}
.image-draft-card img, .collection-gallery img {
  width: 100%;
  height: 150px;
  object-fit: cover;
  border-radius: 12px;
  background: #edf1ff;
}
.image-draft-card textarea { min-height: 82px; }
.collection-gallery { padding: 20px; border-top: 1px solid var(--line); }
.collection-gallery h3 { margin-top: 0; }
.collection-gallery figcaption { color: var(--muted); line-height: 1.35; }
.card-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.favorite-btn { border: 1px solid var(--line) !important; background: white !important; color: var(--ink) !important; }
.favorite-btn.active { border-color: #f2b705 !important; background: #fff7da !important; color: #8a5b00 !important; }
.profile-panel { display: grid; gap: 18px; }
.profile-summary { display: flex; align-items: center; gap: 14px; }
.profile-summary h3 { margin: 0; }
.profile-summary p { margin: 4px 0 0; color: var(--muted); }
.profile-avatar {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: var(--soft);
  color: var(--primary);
  display: grid;
  place-items: center;
  font-weight: 900;
}

@media (max-width: 900px) {
  .simple-search-row { grid-template-columns: 1fr; }
}
.items-page-heading, .item-detail-heading { padding: 26px; display:flex; justify-content:space-between; gap:20px; align-items:flex-start; border-bottom:1px solid var(--line); }
.items-page-heading h2, .item-detail-heading h2 { margin:6px 0; font-size:2.2rem; }
.items-page-heading p, .item-detail-heading p { color:var(--muted); margin:0; }
.column-manager { margin:20px; padding:18px; border:1px dashed #bbc6da; border-radius:18px; background:#fbfcff; display:grid; gap:14px; }
.column-manager h3, .add-item-panel h3 { margin:0; }
.column-manager p, .add-item-panel p { color:var(--muted); margin:5px 0 0; }
.column-options { display:flex; flex-wrap:wrap; gap:9px; }
.check-pill { display:flex; grid-template-columns:auto 1fr; align-items:center; gap:7px; border:1px solid var(--line); background:white; border-radius:999px; padding:8px 12px; font-weight:700; }
.check-pill input { width:auto; margin:0; }
.clickable-table tbody tr { cursor:pointer; transition:.15s; }
.clickable-table tbody tr:hover { background:var(--soft); }
.item-name-cell { color:var(--primary); }
.item-detail-heading { background:white; }
.item-photo-gallery, .item-data-panel { padding:22px; border-top:1px solid var(--line); }
.item-photo-gallery h3, .item-data-panel h3 { margin-top:0; }
.item-photo-gallery figure { margin:0; border:1px solid var(--line); border-radius:16px; overflow:hidden; background:white; }
.item-photo-gallery img { width:100%; height:230px; object-fit:contain; background:#edf1ff; }
.item-photo-gallery figcaption { padding:12px; color:var(--muted); }
.item-data-panel dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.item-data-panel dl div { padding:14px; border-bottom:1px solid var(--line); }
.item-data-panel dt { color:var(--muted); font-size:.78rem; font-weight:800; text-transform:uppercase; }
.item-data-panel dd { margin:5px 0 0; font-weight:700; }
.add-item-panel { margin:20px; padding:20px; border:1px solid var(--line); border-radius:20px; background:#fbfcff; display:grid; gap:14px; }
.item-photo-builder { padding:14px; border:1px dashed #bbc6da; border-radius:16px; }
.item-photo-builder p { color:var(--muted); }
.mini-photo-grid { display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; }
.mini-photo { width:110px; border:1px solid var(--line); border-radius:12px; padding:7px; position:relative; background:white; }
.mini-photo img { width:100%; height:75px; object-fit:cover; border-radius:8px; }
.mini-photo span { display:block; font-size:.75rem; margin-top:4px; }
.mini-photo button { position:absolute; right:2px; top:2px; width:25px; height:25px; padding:0; border-radius:50%; background:white; color:var(--bad); border:1px solid var(--line); }
.item-photo-empty { margin:20px; }
@media(max-width:620px){.items-page-heading,.item-detail-heading{flex-direction:column}.item-data-panel dl{grid-template-columns:1fr}}

.advanced-toggle {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid var(--line);
  background: white;
  border-radius: 14px;
  padding: 13px 16px;
  font-weight: 850;
  color: var(--text);
}
.advanced-panel {
  border: 1px dashed #bbc6da;
  background: #fbfcff;
  border-radius: 20px;
  padding: 18px;
  display: grid;
  gap: 14px;
}
.advanced-panel[hidden] { display: none; }
.advanced-panel h3 { margin: 0; }
.advanced-panel p, .next-step-note, .cover-preview-card p { color: var(--muted); margin: 5px 0 0; }
.cover-image-preview:empty { display: none; }
.cover-preview-card {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 16px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 12px;
  background: #fbfcff;
}
.cover-preview-card img { width: 170px; height: 110px; object-fit: cover; border-radius: 12px; }
.detail-tags { margin: 14px 0; }
@media (max-width: 620px) {
  .cover-preview-card { grid-template-columns: 1fr; }
  .cover-preview-card img { width: 100%; height: 180px; }
}

/* Phone-first refinements */
html { -webkit-text-size-adjust: 100%; }
body { min-width: 0; overflow-x: hidden; }
img { max-width: 100%; }
button, input, select, textarea { min-height: 44px; }
button { touch-action: manipulation; }
.back-btn { margin-bottom: 16px; }

@media (max-width: 700px) {
  body { padding-bottom: env(safe-area-inset-bottom); }
  .site-header {
    position: relative;
    padding: calc(12px + env(safe-area-inset-top)) 14px 12px;
    gap: 12px;
  }
  .brand { width: 100%; min-width: 0; }
  .brand-mark { width: 42px; height: 42px; flex: 0 0 42px; border-radius: 12px; }
  .brand h1 { font-size: 1.05rem; }
  .brand p { font-size: .76rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: calc(100vw - 85px); }
  nav {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  nav button {
    width: 100%;
    min-width: 0;
    border-radius: 12px;
    padding: 10px 8px;
    font-size: .82rem;
    line-height: 1.15;
  }
  nav button:last-child { grid-column: 1 / -1; }
  main { width: 100%; padding: 14px; }
  .hero { gap: 14px; margin-bottom: 14px; }
  .hero > div:first-child, .hero-card, .panel, .detail-shell, .review-card { border-radius: 18px; }
  .hero > div:first-child { padding: 22px 18px; }
  .hero h2 { font-size: clamp(2rem, 11vw, 3rem); line-height: 1; margin-top: 10px; }
  .hero p { font-size: .98rem; line-height: 1.5; }
  .hero-card { padding: 18px; grid-template-columns: auto 1fr; align-items: baseline; column-gap: 12px; }
  .hero-card strong { font-size: 1.8rem; }
  .hero-card span { margin: 0; }
  .panel, .form-panel { padding: 15px; }
  .section-title h2 { font-size: 1.65rem; }
  .search-row, .simple-search-row, .form-grid, .inline-controls { grid-template-columns: 1fr; }
  input, select, textarea { font-size: 16px; border-radius: 12px; padding: 12px; }
  textarea { min-height: 110px; }
  .collection-grid { gap: 14px; margin-top: 14px; }
  .collection-photo { height: 190px; }
  .collection-card-body { padding: 16px; }
  .card-actions, .form-actions, .review-actions { display: grid; grid-template-columns: 1fr; }
  .card-actions button, .form-actions button, .review-actions button, .primary-btn, .ghost-btn { width: 100%; }
  .advanced-toggle { min-height: 48px; }
  .advanced-panel, .custom-field-builder, .image-upload-builder, .item-builder { padding: 15px; border-radius: 16px; }
  .tag { max-width: 100%; overflow-wrap: anywhere; }
  .profile-summary { align-items: flex-start; }
  .profile-avatar { flex: 0 0 52px; width: 52px; height: 52px; }

  .detail-hero img { min-height: 0; height: 230px; }
  .detail-info { padding: 18px; }
  .detail-info h2, .items-page-heading h2, .item-detail-heading h2 { font-size: 1.75rem; line-height: 1.1; overflow-wrap: anywhere; }
  .items-page-heading, .item-detail-heading { padding: 18px; }
  .items-page-heading .primary-btn { width: 100%; }
  .column-manager, .add-item-panel { margin: 14px; padding: 15px; border-radius: 16px; }
  .column-options { display: grid; grid-template-columns: 1fr; }
  .check-pill { border-radius: 12px; min-height: 44px; }
  .item-table-wrap { padding: 14px; overflow: visible; }

  /* Desktop table becomes readable item cards on phones. */
  .clickable-table { min-width: 0; border-collapse: separate; border-spacing: 0 12px; }
  .clickable-table thead { display: none; }
  .clickable-table tbody, .clickable-table tr, .clickable-table td { display: block; width: 100%; }
  .clickable-table tr {
    border: 1px solid var(--line);
    border-radius: 16px;
    background: white;
    box-shadow: 0 8px 22px rgba(24,35,66,.07);
    overflow: hidden;
    padding: 6px 14px;
  }
  .clickable-table tr:active { background: var(--soft); }
  .clickable-table td {
    border-bottom: 1px solid var(--line);
    padding: 11px 0;
    display: grid;
    grid-template-columns: minmax(90px, 36%) 1fr;
    gap: 12px;
    align-items: start;
    overflow-wrap: anywhere;
  }
  .clickable-table td:last-child { border-bottom: 0; }
  .clickable-table td::before {
    content: attr(data-label);
    color: var(--muted);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .clickable-table .item-name-cell { font-size: 1.05rem; }
  .clickable-table .photo-cell { grid-template-columns: 1fr; }
  .clickable-table .photo-cell::before { display: none; }
  .item-thumb { width: 100%; height: 170px; border-radius: 12px; }

  .item-photo-gallery, .item-data-panel { padding: 16px; }
  .item-photo-gallery img { height: 210px; }
  .item-data-panel dl { border-radius: 14px; }
  .item-data-panel dl div { min-width: 0; overflow-wrap: anywhere; }
  .mini-photo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mini-photo { width: 100%; }
  .mini-photo img { height: 95px; }
  .gallery-grid, .image-draft-grid { grid-template-columns: 1fr; }
  .collection-gallery { padding: 16px; }
  .toast { left: 14px; right: 14px; bottom: calc(14px + env(safe-area-inset-bottom)); text-align: center; }
}

@media (max-width: 390px) {
  nav { grid-template-columns: 1fr; }
  nav button:last-child { grid-column: auto; }
  .hero h2 { font-size: 2rem; }
  .mini-photo-grid { grid-template-columns: 1fr; }
}


/* Collection items embedded directly below collection details */
.embedded-items-section {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--border, #dfe3ee);
  scroll-margin-top: 1rem;
}
.embedded-items-section .items-page-heading {
  margin-bottom: 1rem;
}
@media (max-width: 700px) {
  .embedded-items-section { margin-top: 1rem; padding-top: 1rem; }
  .embedded-items-section .items-page-heading { align-items: stretch; }
  .embedded-items-section .items-page-heading .primary-btn { width: 100%; }
}

/* Member profile and request workflow */
.member-profile-card { padding: 24px; margin-bottom: 24px; }
.member-profile-main { display:grid; grid-template-columns: 180px minmax(0,1fr); gap:28px; align-items:start; }
.profile-photo-wrap { text-align:center; }
.profile-photo { width:160px; height:160px; border-radius:50%; object-fit:cover; border:5px solid white; box-shadow:0 10px 30px rgba(28,42,80,.16); background:var(--soft); }
.profile-photo-button { display:inline-flex; margin-top:12px; padding:10px 14px; border:1px solid var(--line); border-radius:10px; cursor:pointer; font-weight:800; background:white; }
.profile-copy { display:grid; gap:14px; }
.profile-copy textarea { min-height:110px; }
.profile-copy .primary-btn { justify-self:start; }
.profile-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.profile-tabs button { min-height:48px; }
.profile-tabs button.active { background:var(--primary); color:white; border-color:var(--primary); }
.request-count { display:inline-grid; place-items:center; min-width:24px; height:24px; padding:0 7px; border-radius:999px; background:rgba(255,255,255,.2); }
.profile-tabs button:not(.active) .request-count { background:var(--soft); color:var(--primary); }
.profile-tab-content { margin-top:20px; }
.compact-title { margin-bottom:16px; }
.submission-card, .request-collection-card, .request-item-row { display:flex; justify-content:space-between; gap:18px; align-items:center; }
.edit-collection-panel { margin-bottom:22px; }
.request-items-slot { flex-basis:100%; width:100%; }
.request-collection-card { flex-wrap:wrap; }
.request-item-list { display:grid; gap:10px; margin-top:16px; padding-top:16px; border-top:1px solid var(--line); }
.request-item-row { padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--soft); }
.request-item-summary { display:grid; gap:4px; cursor:pointer; min-width:0; }
.request-item-summary strong { font-size:1.05rem; overflow-wrap:anywhere; }
.request-item-summary span { color:var(--muted); }
.approve-btn { background:#16794a !important; color:white !important; border-color:#16794a !important; }
.deny-btn { background:#fff0f0 !important; color:#a12c2c !important; border-color:#efbaba !important; }
.request-item-panel { border-color:#b8c8ff; }
.request-detail-shell .add-item-panel { margin-bottom:0; }

@media (max-width:700px){
  .member-profile-card { padding:16px; }
  .member-profile-main { grid-template-columns:1fr; text-align:left; }
  .profile-photo-wrap { text-align:center; }
  .profile-photo { width:130px; height:130px; }
  .profile-copy .primary-btn { width:100%; }
  .profile-tabs { grid-template-columns:1fr; }
  .submission-card, .request-collection-card, .request-item-row { align-items:stretch; flex-direction:column; }
  .submission-card .review-actions, .request-collection-card > button, .request-item-row .review-actions { width:100%; }
  .submission-card .review-actions button, .request-item-row .review-actions button { flex:1; }
  .request-collection-card > button { width:100%; }
}


/* Public collection details no longer repeat the cover image. */
.text-only-detail { display:block; }
.text-only-detail .detail-info { max-width:none; padding:32px; }
.collection-without-cover .embedded-items-section { margin-top:0; }
.management-actions { display:flex; gap:10px; flex-wrap:wrap; }
.column-manager-heading { display:flex; justify-content:space-between; gap:18px; align-items:center; }
.add-column-button { white-space:nowrap; font-size:1rem; }
.muted-note { color:var(--muted); }
@media(max-width:700px){
  .text-only-detail .detail-info { padding:20px; }
  .management-actions, .management-actions button { width:100%; }
  .column-manager-heading { align-items:stretch; flex-direction:column; }
  .add-column-button { width:100%; }
}

/* My Submissions: make the whole collection entry clearly interactive. */
.clickable-submission {
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}
.clickable-submission:hover,
.clickable-submission:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
  border-color: var(--primary, #315efb);
  outline: none;
}
.submission-title-link {
  appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: inherit;
  padding: 0;
  text-align: left;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.submission-title-link:hover,
.submission-title-link:focus-visible {
  color: var(--primary, #315efb);
  outline: none;
}
@media (max-width: 640px) {
  .clickable-submission .review-actions,
  .clickable-submission .review-actions button {
    width: 100%;
  }
}

/* Authentication */
.hidden { display: none !important; }
.auth-status { display: inline-flex; align-items: center; padding: .45rem .7rem; font-size: .9rem; opacity: .8; }
.auth-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.auth-panel { align-content: start; }
.auth-panel h3 { margin-top: 0; }
.auth-panel label { display: grid; gap: .4rem; margin-bottom: .9rem; }
.form-message { min-height: 1.4em; margin-bottom: 0; }
.form-message.error { color: #b42318; }
.form-message.success { color: #067647; }
.login-required { max-width: 700px; margin: 2rem auto; text-align: center; }
@media (max-width: 760px) { .auth-grid { grid-template-columns: 1fr; } }

/* Password recovery */
.text-link-btn {
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--primary);
  padding: 8px 0;
  min-height: 44px;
  justify-self: start;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.text-link-btn:hover { color: var(--primary-dark); }
.auth-single-page { max-width: 620px; margin: 0 auto; }
.auth-single-panel { width: 100%; }
.development-reset-link {
  border: 1px solid #b8c8ff;
  background: #f4f7ff;
  border-radius: 14px;
  padding: 14px;
  overflow-wrap: anywhere;
}
.development-reset-link p { margin: 6px 0 12px; color: var(--muted); }
.reset-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: 12px;
  background: var(--primary);
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}
.reset-link:hover { background: var(--primary-dark); }

/* Additional small-screen usability */
@media (max-width: 700px) {
  .auth-grid { gap: 14px; }
  .auth-panel { padding: 18px; }
  .auth-panel h3 { font-size: 1.35rem; }
  .auth-status { grid-column: 1 / -1; justify-content: center; min-height: 38px; }
  .auth-single-page .back-btn { width: 100%; }
  .text-link-btn { width: 100%; justify-self: stretch; text-align: center; }
  .reset-link { width: 100%; justify-content: center; text-align: center; }
  .section-title { margin-top: 4px; }
  .collection-card, .detail-shell, .panel { min-width: 0; }
  .collection-card p, .detail-info p, .section-title p, .form-message { overflow-wrap: anywhere; }
}

@media (max-width: 480px) {
  main { padding-left: 10px; padding-right: 10px; }
  .site-header { padding-left: 10px; padding-right: 10px; }
  .hero > div:first-child { padding: 20px 16px; }
  .collection-photo { height: 175px; }
  .auth-panel { padding: 15px; }
}

/* Inventory, holders, public profile, and messaging */
.inventory-collection { margin-bottom: 18px; overflow: hidden; }
.inventory-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:18px; border-bottom:1px solid var(--line); }
.inventory-heading h3 { margin:0 0 4px; }
.inventory-heading p { margin:0; color:var(--muted); }
.inventory-item-list { display:grid; }
.inventory-item-row { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 18px; border-bottom:1px solid var(--line); }
.inventory-item-row:last-child { border-bottom:0; }
.inventory-item-row > div { display:grid; gap:3px; }
.inventory-item-row span { color:var(--muted); font-size:.9rem; }
.inventory-item-row label { display:flex; align-items:center; gap:8px; font-weight:700; }
.inventory-item-row input { width:90px; }
.message-list { display:grid; gap:12px; }
.message-card { padding:18px; }
.message-card p { white-space:pre-wrap; }
.message-meta { display:flex; justify-content:space-between; gap:12px; color:var(--muted); font-size:.9rem; }
.message-context { background:var(--soft); padding:9px 11px; border-radius:10px; }
.message-composer { margin-top:16px; padding:18px; display:grid; gap:12px; }
.message-composer h3 { margin:0; }
.message-composer textarea { min-height:130px; }
.member-link { border:0!important; background:transparent!important; padding:0!important; color:var(--primary)!important; text-decoration:underline; cursor:pointer; font:inherit; }
.public-member-card { display:grid; grid-template-columns:120px 1fr; gap:22px; align-items:start; padding:24px; }
.public-member-card .profile-photo { width:120px; height:120px; }
.public-member-card h2 { margin:5px 0; }
.holders-panel { margin-top:18px; padding:18px; }
.holder-list { display:grid; gap:10px; }
.holder-row { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
.holder-row:last-child { border-bottom:0; }
@media (max-width:620px){
  .profile-tabs { overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; }
  .profile-tabs button { flex:0 0 auto; }
  .inventory-heading,.inventory-item-row,.message-meta { flex-direction:column; align-items:stretch; }
  .inventory-item-row label { justify-content:space-between; }
  .inventory-item-row input { width:110px; }
  .public-member-card { grid-template-columns:1fr; }
  .holder-row { grid-template-columns:1fr; align-items:start; }
}
.item-community-actions { display:flex; flex-wrap:wrap; gap:7px; min-width:210px; }
.item-community-actions button { padding:8px 9px; }
@media (max-width:620px){ .item-community-actions { min-width:0; } }

/* Contact-message modal */
.message-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}
.message-modal{width:min(620px,100%);max-height:90vh;overflow:auto;padding:22px;display:grid;gap:16px;box-shadow:0 24px 70px rgba(15,23,42,.28)}
.message-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.message-modal-heading h3{margin:3px 0 0;font-size:1.4rem}
.modal-close{border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;padding:0 4px;color:var(--muted)}
.message-item-context{background:var(--soft);border-radius:12px;padding:12px 14px;overflow-wrap:anywhere}
.message-item-context a,.message-context a{font-weight:700}
.message-modal textarea{min-height:150px;width:100%;resize:vertical}
@media(max-width:600px){.message-modal-backdrop{align-items:flex-end;padding:0}.message-modal{width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:18px}.message-modal .form-actions{display:grid;grid-template-columns:1fr}.message-modal .form-actions button{width:100%;min-height:46px}}

/* Received / Sent message mailbox tabs */
.message-mailbox-tabs{display:flex;gap:8px;margin:0 0 16px;border-bottom:1px solid var(--line);padding-bottom:10px}
.message-mailbox-tabs button{display:inline-flex;align-items:center;gap:8px;min-width:110px;justify-content:center}
.message-mailbox-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.message-mailbox-tabs button span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--soft);color:var(--primary);font-size:.8rem;font-weight:800}
.message-mailbox-tabs button.active span{background:rgba(255,255,255,.2);color:#fff}
.compact-message-btn{margin-top:10px}
@media(max-width:620px){.message-mailbox-tabs{display:grid;grid-template-columns:1fr 1fr}.message-mailbox-tabs button{width:100%;min-width:0}}

/* Threaded mailbox + unread message navigation */
.new-messages-nav{display:inline-flex;align-items:center;gap:7px;font-weight:800}
.new-messages-nav span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#fff;color:var(--primary);font-size:.78rem;font-weight:900}
.message-thread-list{display:grid;gap:14px}
.message-thread{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.55);padding:10px}
.message-thread-root-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start}
.message-thread-toggle{width:38px;height:38px;padding:0;border-radius:50%;font-size:1.35rem;line-height:1;font-weight:800;display:flex;align-items:center;justify-content:center}
.message-thread-root-card{min-width:0}
.message-thread-root-card .message-card{margin:0}
.message-thread-summary{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end;padding-top:8px;color:var(--muted);font-size:.82rem;font-weight:700}
.unread-pill{display:inline-flex;align-items:center;border-radius:999px;background:var(--primary);color:#fff;padding:4px 8px;font-size:.76rem;font-weight:900}
.message-thread-replies{display:grid;gap:9px;margin:10px 0 2px 52px;padding-left:14px;border-left:2px solid var(--line)}
.message-thread-replies .message-card{margin-left:calc((var(--message-depth,1) - 1) * 18px);position:relative}
.message-thread-replies .message-card::before{content:'';position:absolute;left:-16px;top:25px;width:12px;border-top:2px solid var(--line)}
.message-unread{border-color:var(--primary);box-shadow:0 0 0 2px rgba(53,92,255,.08)}
.message-unread .message-meta::before{content:'NEW';display:inline-flex;align-items:center;border-radius:999px;background:var(--primary);color:#fff;padding:2px 7px;font-size:.68rem;font-weight:900;margin-right:6px}
.message-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.message-actions .compact-message-btn{margin-top:0}
.message-mailbox-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:720px){
  .message-thread-root-row{grid-template-columns:38px minmax(0,1fr)}
  .message-thread-summary{grid-column:2;justify-content:flex-start;padding-top:0}
  .message-thread-replies{margin-left:20px;padding-left:10px}
  .message-thread-replies .message-card{margin-left:calc((var(--message-depth,1) - 1) * 8px)}
  .message-mailbox-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .message-mailbox-tabs button{min-width:0;padding-left:7px;padding-right:7px}
}
@media(max-width:440px){
  .message-thread{padding:7px}
  .message-thread-root-row{grid-template-columns:34px minmax(0,1fr);gap:7px}
  .message-thread-toggle{width:32px;height:32px}
  .message-thread-replies{margin-left:10px;padding-left:7px}
  .message-actions{display:grid;grid-template-columns:1fr 1fr}
  .message-actions button{width:100%}
}

/* Clear sender/recipient labels on every message */
.message-participants{display:grid;gap:3px}.message-participants>div{line-height:1.35}


/* Guided collection creation */
.collection-wizard-shell{max-width:760px;margin:0 auto;padding:10px 0 40px}.wizard-progress{height:8px;border-radius:999px;background:#e6ebf4;overflow:hidden;margin:6px 0}.wizard-progress-bar{height:100%;background:#355cff;border-radius:inherit;transition:width .2s ease}.wizard-step-count{text-align:right;color:#667085;font-size:.9rem;margin-bottom:22px}.wizard-question{text-align:center;margin:0 auto 22px}.wizard-question h2{font-size:clamp(1.7rem,4vw,2.5rem);margin:7px 0}.wizard-card{padding:clamp(22px,5vw,42px)}.wizard-main-label{font-size:1.05rem;font-weight:700}.wizard-main-label input,.wizard-main-label textarea{margin-top:8px;font-size:1.05rem}.wizard-help{color:#667085;line-height:1.6;margin:10px 0 0}.wizard-help.prominent{font-size:1rem;margin:0 0 20px}.wizard-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.wizard-actions .primary-btn{margin-left:auto}.wizard-actions .text-link-btn{margin-left:0}.wizard-upload{display:block;font-weight:700}.wizard-upload input{display:block;margin-top:10px;width:100%}.wizard-field-add{display:grid;grid-template-columns:1fr auto;gap:10px}.wizard-field-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.wizard-field-tag{display:inline-flex;align-items:center;gap:7px}.wizard-field-tag button{border:0;background:transparent;font-size:1.2rem;line-height:1;cursor:pointer;color:inherit}.compact-empty{padding:18px;margin-top:16px}.wizard-final-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.wizard-final-heading h3{margin:0 0 5px}.optional-label{font-weight:400;color:#7b8496;font-size:.85rem}.wizard-add-item-btn{margin-top:16px}.wizard-added-items{border-top:1px solid #e4e9f2;margin-top:28px;padding-top:22px}.wizard-added-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f5}.wizard-added-item>div{display:flex;flex-direction:column;gap:3px}.wizard-added-item span{color:#667085;font-size:.9rem}.publish-btn{font-weight:800}
@media(max-width:640px){.collection-wizard-shell{padding-top:0}.wizard-card{padding:20px 16px}.wizard-actions{display:grid;grid-template-columns:1fr 1fr}.wizard-actions .primary-btn,.wizard-actions .text-link-btn{margin-left:0}.wizard-actions .text-link-btn{grid-column:1/-1}.wizard-field-add{grid-template-columns:1fr}.wizard-field-add button{width:100%}.wizard-final-heading{flex-direction:column}.wizard-added-item{align-items:flex-start}.wizard-added-item button{width:auto}.wizard-main-label input,.wizard-main-label textarea{font-size:16px}}

/* Dedicated collection list-column chooser */
.column-choice-page{max-width:900px;margin:0 auto}
.column-choice-shell{padding:clamp(22px,4vw,44px)}
.column-choice-shell h2{margin:.35rem 0 .6rem;font-size:clamp(1.8rem,4vw,2.6rem)}
.wizard-back-row{margin-bottom:1.25rem}
.required-column-note{margin:1.5rem 0;padding:1rem 1.1rem;border:1px solid var(--border,#d9e1ee);border-radius:16px;background:#f8faff}
.required-column-note .tag-list{margin-top:.7rem}
.column-choice-list{display:grid;gap:.8rem;margin:1.25rem 0 1.6rem}
.column-choice-card{display:flex;align-items:flex-start;gap:.9rem;padding:1rem 1.05rem;border:1px solid #d7dfec;border-radius:16px;background:white;cursor:pointer}
.column-choice-card:hover{border-color:#9fb1d0;background:#fbfcff}
.column-choice-card input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}
.column-choice-card span{display:grid;gap:.2rem}
.column-choice-card small{color:#63708a;font-weight:400}
.list-column-tags{margin-top:.7rem}
@media(max-width:600px){.column-choice-shell{padding:20px 16px}.column-choice-page{border-radius:0}.column-choice-card{padding:.9rem}.column-choice-shell .form-actions{display:grid}.column-choice-shell .form-actions button{width:100%}}


/* Collection owner management cleanup */
.edit-info-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:8px}
.edit-info-heading h3{margin:.25rem 0 0}
.edit-info-helper{color:var(--muted);margin:0 0 18px;line-height:1.55}
.add-field-from-edit{width:auto!important;white-space:nowrap}
.field-manager-page{max-width:980px;margin:0 auto}
.field-manager-shell{padding:clamp(22px,4vw,44px)}
.field-manager-back{width:auto;margin-bottom:22px}
.field-manager-card{padding:clamp(20px,3vw,30px)}
.field-manager-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.field-manager-add .primary-btn{width:auto;min-height:47px}
.standalone-field-list{display:grid;gap:10px;margin-top:22px}
.standalone-field-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.standalone-field-row span{font-weight:800;overflow-wrap:anywhere}
.standalone-field-row .ghost-btn{width:auto}

/* My Submissions primary actions must stay visibly blue.
   This overrides the older, more-specific .review-actions button rule. */
.submission-card .review-actions .primary-btn{
  background:var(--primary)!important;
  color:#fff!important;
  border-color:var(--primary)!important;
}
.submission-card .review-actions .primary-btn:hover{
  background:var(--primary-dark)!important;
  color:#fff!important;
}

@media(max-width:700px){
  .edit-info-heading{flex-direction:column}
  .add-field-from-edit,.field-manager-back{width:100%!important}
  .field-manager-add{grid-template-columns:1fr}
  .field-manager-add .primary-btn{width:100%}
  .standalone-field-row{align-items:stretch;flex-direction:column}
  .standalone-field-row .ghost-btn{width:100%}
}

/* Protected master item editing */
.item-status-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.inactive-master-item{opacity:.68}.compact-manage-btn{width:auto!important;white-space:nowrap}.item-owner-actions{display:flex;gap:10px;flex-wrap:wrap;padding:0 28px 20px}.item-owner-actions .primary-btn,.item-owner-actions .ghost-btn{width:auto}.danger-outline{border-color:#d92d20!important;color:#b42318!important;background:#fff!important}.protected-proposal{margin:20px 28px;padding:22px;border:1px solid #f0c36d;background:#fffaf0}.proposal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.proposal-heading h3{margin:.25rem 0}.proposal-diff{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.proposal-diff>div{padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;gap:4px}.proposal-diff span{overflow-wrap:anywhere}.protected-item-editor{max-width:1050px;margin:0 auto}.protected-edit-panel,.merge-tool{margin:20px 28px;padding:24px}.identity-warning{padding:16px 18px;border:1px solid #f0c36d;background:#fff8e8;border-radius:14px;margin-bottom:18px}.identity-warning p{margin:6px 0 0;line-height:1.55}.draft-warning{border-color:#a9d3b9;background:#effaf3}.merge-tool h3{margin-top:0}.merge-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.merge-controls .ghost-btn{width:auto}.revision-list{display:grid;gap:10px}.revision-entry{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 14px}.revision-entry summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px}.revision-entry summary span{color:var(--muted);font-size:.9rem}.revision-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.revision-snapshot>div{background:var(--soft);padding:12px;border-radius:12px;display:grid;gap:3px}.revision-snapshot span,.revision-snapshot small{color:var(--muted)}
@media(max-width:700px){.item-owner-actions{padding:0 18px 18px}.item-owner-actions .primary-btn,.item-owner-actions .ghost-btn{width:100%}.protected-proposal,.protected-edit-panel,.merge-tool{margin:14px;padding:16px}.proposal-heading,.revision-entry summary{flex-direction:column}.proposal-diff,.revision-snapshot,.merge-controls{grid-template-columns:1fr}.merge-controls .ghost-btn{width:100%}}


/* Item-detail community actions */
.item-vote-control{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.vote-label{
  font-weight:800;
  color:var(--text);
}
.item-vote-control .vote-box{
  margin:0;
}
.item-holders-section{
  margin-top:18px;
}
.item-holders-section > h3{
  margin-bottom:4px;
}
.holders-panel{
  margin-top:14px;
  box-shadow:none;
}
.holders-panel > h3{
  display:none;
}
.holder-list{
  display:grid;
  gap:10px;
}
.holder-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--soft);
}
.holder-row > button:last-child{
  background:var(--primary);
  color:#fff;
  border-color:var(--primary);
  font-weight:800;
}
.clean-item-list tbody tr{
  cursor:pointer;
}

@media(max-width:700px){
  .item-detail-heading{
    align-items:flex-start;
  }
  .item-vote-control{
    width:100%;
    justify-content:flex-start;
  }
  .holder-row{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .holder-row > button:last-child{
    width:100%;
  }
}


/* Compact My Collections list + focused item page */
.my-collections-compact-list{display:grid;gap:10px}
.my-collection-summary-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:18px;
  align-items:center;
  padding:16px 18px;
}
.my-collection-summary-copy{display:grid;gap:3px;min-width:0}
.my-collection-summary-copy strong{font-size:1.05rem;overflow-wrap:anywhere}
.my-collection-summary-copy span,.my-collection-summary-meta{color:var(--muted)}
.my-collection-summary-actions{display:flex;gap:8px}
.my-collection-summary-actions .primary-btn,
.my-collection-summary-actions .ghost-btn{width:auto;white-space:nowrap}
.my-collection-items-page{display:grid;gap:18px}
.my-collection-items-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
}
.my-collection-items-heading h2{margin:.35rem 0 .25rem;font-size:2rem}
.my-collection-items-heading p{margin:0;color:var(--muted)}
.my-collection-back{width:auto!important;margin-bottom:14px}
.focused-inventory-panel{padding:16px 18px}
.focused-inventory-row{padding:14px 0}

@media(max-width:760px){
  .my-collection-summary-row{grid-template-columns:1fr;gap:10px}
  .my-collection-summary-actions{width:100%}
  .my-collection-summary-actions button{flex:1}
  .my-collection-items-heading{align-items:stretch;flex-direction:column}
  .my-collection-items-heading>button{width:100%}
}

/* Per-collection request controls in My Submissions */
.submission-row-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.submission-row-actions .primary-btn,
.submission-row-actions .collection-request-btn{width:auto;white-space:nowrap}
.collection-request-btn{
  border:1px solid var(--line);
  background:#fff;
  color:var(--text);
  border-radius:12px;
  padding:10px 14px;
  font-weight:800;
}
.collection-request-btn.has-pending-requests{
  background:#dff7e8;
  color:#146c43;
  border-color:#9ed8b5;
}
.collection-request-btn.has-pending-requests:hover{
  background:#cef0db;
}
.collection-request-page{max-width:1050px;margin:0 auto;padding:20px 0}
.collection-request-page-heading{margin-bottom:18px}
.collection-request-page-heading h2{margin:.35rem 0 .25rem;font-size:clamp(1.8rem,4vw,2.4rem)}
.collection-request-page-heading p{margin:0;color:var(--muted)}
.request-back-btn{width:auto;margin-bottom:16px}
.collection-only-request-list{margin-top:18px}

@media(max-width:700px){
  .submission-row-actions{width:100%;display:grid;grid-template-columns:1fr}
  .submission-row-actions .primary-btn,
  .submission-row-actions .collection-request-btn{width:100%}
  .request-back-btn{width:100%}
}

/* Authentication visibility safeguard */
.favorite-btn {
  display: none !important;
}
body.user-logged-in .favorite-btn {
  display: inline-flex !important;
}
