/* Specialised page styles; shared foundations are in design-system.css. */
.operation-tools {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 18px;
}
.check-field {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: var(--text);
  font-size: 14px;
}
.form-error {
  color: #f4aa96;
  white-space: pre-wrap;
}
.form-error:empty {
  display: none;
}
.record {
  display: flex;
  gap: 16px;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--line);
  padding: 22px 0;
  overflow-wrap: anywhere;
}
.record p,
.record pre {
  flex-basis: 100%;
  white-space: pre-wrap;
  margin: 0;
}
.record pre {
  font: 12px/1.7 var(--font);
  color: var(--muted);
  max-width: 100%;
  overflow-wrap: anywhere;
}
.record-facts {
  display: grid;
  gap: 12px;
}
.record-facts > div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.record-facts dd {
  margin: 0;
}
.status-label {
  margin: 5px 8px 5px 0;
}
.status-label[data-status="paid"],
.status-label[data-status="active"],
.status-label[data-status="completed"] {
  color: #b8dac5;
}
.status-label[data-status="suspended"],
.status-label[data-status="rejected"] {
  color: #f4aa96;
}
.empty-record,
.loading-state {
  padding: 32px 0;
  color: var(--muted);
}
.order-record:hover {
  background: var(--surface);
}
.order-record > div:last-child {
  display: grid;
  text-align: right;
}
.conversation-log {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 30px;
  max-height: 550px;
  overflow-y: auto;
  padding: 8px;
}
.message-bubble {
  align-self: flex-start;
  max-width: 85%;
  padding: 16px 20px;
  background: #17241e;
  border: 1px solid var(--line);
}
.message-bubble.mine {
  align-self: flex-end;
  background: #1a3028;
}
.message-bubble p {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: var(--text);
}
.message-bubble small {
  color: var(--muted);
}
.unread {
  border-left: 3px solid var(--copper);
  padding-left: 14px;
}
.invite-link {
  width: 100%;
  min-height: 130px;
  margin-top: 20px;
}
.rating-stars {
  display: inline-block;
  position: relative;
  color: var(--copper);
  font-size: 21px;
  line-height: 1;
  letter-spacing: 2px;
  white-space: nowrap;
}
.rating-filled {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  color: var(--copper);
}
dialog {
  max-height: 90dvh;
  overflow: auto;
}
@media (max-width: 700px) {
  .record-facts > div {
    flex-wrap: wrap;
  }
  .conversation-log {
    max-height: 420px;
  }
  .message-bubble {
    max-width: 94%;
  }
  .record {
    gap: 10px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
.preserve-lines {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.page-pagination {
  justify-content: center;
  padding-bottom: 2rem;
}
.record pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-width: 100%;
}
[data-record-search] {
  margin-bottom: 1.5rem;
  display: flex;
  gap: 1rem;
}
[data-record-search] input {
  min-width: 0;
  flex: 1;
}
[data-record-search] button {
  width: auto;
  min-width: 64px;
  padding-inline: 12px;
  white-space: nowrap;
}
.dish-form .ingredient-columns {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
.ingredient-columns .allergen-field {
  min-width: 0;
}
.record {
  overflow-wrap: anywhere;
}
.allergen-field {
  border: 1px solid var(--line);
  padding: 16px;
  margin: 12px 0;
}
.allergen-choices {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.allergen-field legend {
  font-size: 1rem;
  padding: 0 8px;
}
/* Compact admin identity cards; text labels accompany every status colour. */
.creator-status-legend{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.creator-status{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid;border-radius:5px;font-size:12px;line-height:1.5;white-space:nowrap}
.creator-status--visible{color:#a1e2b7;background:#163829;border-color:#365f47}
.creator-status--pending{color:#f0ce8c;background:#392e19;border-color:#695630}
.creator-status--restricted{color:#ffb7ae;background:#3e2525;border-color:#794640}
.creator-status--hidden{color:#c2cbc5;background:#252e29;border-color:#46554b}
.creator-management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr));gap:18px;align-items:start}
.creator-management-card{min-width:0;padding:22px;background:var(--surface,#111e18);border:1px solid var(--line,#283b30);border-top:3px solid #59685e;border-radius:10px}
.creator-management-card[data-creator-state="visible"]{border-top-color:#65a87d}
.creator-management-card[data-creator-state="restricted"]{border-top-color:#d87c71}
.creator-management-identity{display:flex;align-items:center;gap:12px}
.creator-management-avatar{width:56px;height:56px;flex-shrink:0;display:grid;place-items:center;border:1px solid #394b3f;border-radius:8px;background:#1d2c23;overflow:hidden;color:#a8b9ac}
.creator-management-avatar img{width:100%;height:100%;object-fit:cover}
.creator-management-identity>div{min-width:0;flex:1}
.creator-management-identity h2{font-family:inherit;font-size:20px;margin:0;overflow-wrap:anywhere}
.creator-management-identity p,.creator-management-specialty{font-size:14px;color:var(--muted,#a5b5a9);margin:5px 0;overflow-wrap:anywhere}
.creator-management-specialty{margin:18px 0;min-height:22px}
.creator-management-facts{margin:0;padding:14px 0;border-top:1px solid #293b30;border-bottom:1px solid #293b30;display:grid;gap:12px;font-size:14px}
.creator-management-facts>div{display:flex;justify-content:space-between;align-items:center;gap:10px}
.creator-management-facts dt{color:var(--muted,#a5b5a9)}
.creator-management-facts dd{margin:0;text-align:right}
.creator-management-id{font-size:11px;color:var(--muted,#a5b5a9);overflow-wrap:anywhere;margin:14px 0}
.creator-management-reason{font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}
.creator-management-actions{border-top:1px solid #293b30;padding-top:14px}
.creator-management-actions summary{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--gold,#cda267);font-size:14px;min-height:36px}
.creator-management-actions summary::after{content:'+';margin-left:auto;font-size:20px}
.creator-management-actions[open] summary::after{content:'−'}
.creator-management-actions form{margin-top:15px}
@media(max-width:600px){.creator-management-card{padding:18px}.creator-management-identity{display:grid;grid-template-columns:56px minmax(0,1fr)}.creator-management-identity>.creator-status{grid-column:2;justify-self:start;margin:0}.creator-status-legend{gap:6px}}
.workspace-switch .workspace-studio-entry{display:flex;align-items:center;gap:12px;width:100%;padding:16px 20px;border:1px solid #6b5432;border-radius:7px;background:#243426;color:#e9bf80;font-family:inherit;font-size:16px;font-weight:600;line-height:1.5;box-sizing:border-box}
.workspace-switch .workspace-studio-entry span{flex:1}
.workspace-switch .workspace-studio-entry:hover{background:#30432f}
.workspace-switch .workspace-studio-entry:focus-visible{outline:2px solid #e9bf80;outline-offset:3px}
.portrait.placeholder-portrait{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#1a2920;background-image:none;color:#a9b9ad}
.portrait.placeholder-portrait>.icon{width:54px;height:54px}
.portrait-empty-label{font:14px/1.5 sans-serif}
.avatar.placeholder-portrait>.icon{width:24px;height:24px}
.avatar .portrait-empty-label{display:none}
.card-cuisine{display:inline-block;margin:0 0 10px;font-size:12px;line-height:1.5;color:var(--gold,#cda267)}
