:root {
  color-scheme: light;
  --ink: #18231f;
  --muted: #66736d;
  --paper: #f4f2ea;
  --card: #fffdf8;
  --surface: #f5f3eb;
  --line: #d9d8cf;
  --accent: #236b57;
  --accent-soft: #dcece5;
  --danger: #a33b32;
}

.analytics-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}.analytics-head h2{margin:.2rem 0}.analytics-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.analytics-filters label{min-width:150px}.analytics-report{display:grid;gap:24px}.analytics-metrics{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.analytics-metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;gap:6px}.analytics-metric small,.analytics-metric span{color:var(--muted)}.analytics-metric strong{font-size:clamp(1.35rem,3vw,2.1rem)}.analytics-completeness{border-left:5px solid #d89b00}.analytics-page-row{display:grid;grid-template-columns:minmax(210px,2fr) repeat(4,minmax(100px,1fr));align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:10px}.analytics-page-row div{display:grid}.analytics-page-row small{color:var(--muted)}.analytics-sources{display:grid;gap:10px}.analytics-source{display:flex;justify-content:space-between;gap:18px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.analytics-sales{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px}.crm-outcome-summary{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,1fr));gap:14px;align-items:center;padding:18px;border:1px solid var(--accent);border-radius:16px;background:#f7fbf9}.crm-outcome-summary h3,.crm-outcome-summary p{margin:0}.crm-outcome-summary>div{display:grid}.crm-outcome-summary small{color:var(--muted)}.crm-outcome-form{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
@media(max-width:900px){.analytics-head{display:block}.analytics-filters{margin-top:16px}.analytics-metrics,.analytics-sales{grid-template-columns:repeat(2,1fr)}.analytics-page-row{grid-template-columns:1fr 1fr}.analytics-page-row div{grid-column:1/-1}.crm-outcome-summary{grid-template-columns:1fr 1fr}.crm-outcome-summary>div:first-child{grid-column:1/-1}}

* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.5 system-ui, sans-serif; }
.shell { width: min(920px, calc(100% - 32px)); margin: 0 auto; padding: 48px 0 96px; }
.hero { max-width: 690px; margin-bottom: 28px; }
.hero-meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.workspace-label { color: var(--muted); font-size: 13px; }
.view-actions { display: flex; gap: 10px; margin-top: 22px; }
.view-actions button { width: auto; }
.eyebrow { margin: 0 0 8px; color: var(--accent); font-size: 13px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(36px, 7vw, 64px); line-height: 1.02; letter-spacing: -.04em; }
h2 { margin: 0; font-size: 32px; }
h3 { margin: 28px 0 12px; }
.hero > p:last-child { color: var(--muted); font-size: 18px; }
.card, .result { background: var(--card); border: 1px solid var(--line); border-radius: 22px; padding: 28px; box-shadow: 0 16px 50px rgba(35, 45, 40, .07); }
.project-list { display: grid; gap: 14px; }
.project-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 20px; color: inherit; text-decoration: none; box-shadow: 0 10px 32px rgba(35, 45, 40, .05); }
.project-card:hover { border-color: var(--accent); transform: translateY(-1px); }
.project-card h2 { font-size: 24px; }
.project-meta, .project-step, .project-result, .project-blocker { margin: 6px 0 0; color: var(--muted); }
.project-result { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.project-blocker { color: var(--danger); }
.project-side { display: grid; justify-items: end; align-content: space-between; gap: 16px; min-width: 180px; }
.state-badge { border-radius: 999px; padding: 7px 11px; background: #ecefea; color: var(--ink); font-size: 13px; font-weight: 750; text-align: center; }
.state-badge.review { background: #fff0c7; color: #785c00; }
.state-badge.waiting, .state-badge.running { background: #dbe9f5; color: #265a7c; }
.state-badge.blocked { background: #f8dedb; color: var(--danger); }
.state-badge.done { background: var(--accent-soft); color: var(--accent); }
.project-progress { color: var(--muted); font-size: 13px; }
.project-action { color: var(--accent); font-weight: 750; }
.dashboard-message { color: var(--muted); }
.prompt-list { display: grid; gap: 14px; margin-top: 14px; }
.prompt-policy p:last-child, .prompt-card > p { color: var(--muted); }
.prompt-head { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.prompt-card h2 { font-size: 24px; }
.prompt-card details { margin: 18px 0; }
.prompt-card summary { color: var(--accent); font-weight: 750; cursor: pointer; }
.prompt-card pre { margin: 12px 0 0; border: 1px solid var(--line); border-radius: 12px; padding: 14px; background: #f7f6f1; color: var(--ink); font: 14px/1.55 ui-monospace, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.prompt-source { margin: 12px 0; padding: 12px 14px; border-left: 3px solid var(--accent); border-radius: 8px; background: #f7f6f1; }
.prompt-source p { margin: 8px 0 0; }
.state-badge.prompt-pending { background: #fff0c7; color: #785c00; }
.state-badge.prompt-approved { background: var(--accent-soft); color: var(--accent); }
.state-badge.prompt-rejected { background: #f8dedb; color: var(--danger); }
.decision-note { border-left: 3px solid var(--accent); padding-left: 12px; }
form { display: grid; gap: 18px; }
label { display: grid; gap: 7px; font-weight: 700; }
input, select, textarea { width: 100%; border: 1px solid #bfc5c1; border-radius: 12px; background: white; color: var(--ink); padding: 13px 14px; font: inherit; }
textarea { resize: vertical; }
.voice-control { position: relative; }
.voice-control input, .voice-control textarea { padding-right: 58px; }
.mic-button { position: absolute; right: 8px; top: 8px; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border-radius: 50%; background: var(--accent-soft); color: var(--accent); border: 1px solid #b8d7ca; }
.mic-button span { width: 13px; height: 18px; border: 2px solid currentColor; border-radius: 8px; font-size: 0; position: relative; }
.mic-button span::after { content: ''; position: absolute; width: 9px; height: 5px; border: 2px solid currentColor; border-top: 0; border-radius: 0 0 8px 8px; left: 0; bottom: -7px; }
.mic-button.recording { background: #c74338; color: white; border-color: #c74338; animation: pulse 1.2s infinite; }
.voice-status { display: block; min-height: 1.4em; color: var(--muted); font-weight: 500; }
@keyframes pulse { 50% { box-shadow: 0 0 0 7px rgba(199, 67, 56, .15); } }
input:focus, select:focus, textarea:focus { outline: 3px solid var(--accent-soft); border-color: var(--accent); }
.two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
button { border: 0; border-radius: 12px; background: var(--accent); color: white; padding: 14px 20px; font: inherit; font-weight: 750; cursor: pointer; }
button:disabled { background: #9ba49f; cursor: not-allowed; }
.error { color: var(--danger); min-height: 1px; }
.hidden { display: none !important; }
.result { margin-top: 24px; }
.result-head { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.profile { background: var(--accent-soft); color: var(--accent); border-radius: 999px; padding: 8px 12px; font-weight: 700; white-space: nowrap; }
.notice { margin-top: 20px; border-left: 4px solid var(--accent); background: #f1f6f3; padding: 14px 16px; border-radius: 6px 12px 12px 6px; }
.next-action { border: 1px solid var(--accent); border-radius: 16px; padding: 18px; }
.next-action p { color: var(--muted); }
.next-action small { display: block; color: var(--muted); margin-top: 8px; }
.job-state { margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--accent-soft); }
.job-state:empty { display: none; }
.conversion-builder { display: grid; gap: 14px; border: 1px solid var(--line); border-radius: 16px; padding: 18px; background: #fbfaf5; }
.conversion-builder p { margin: 5px 0 0; color: var(--muted); }
.prompt-links { margin: 12px 0; padding: 12px 14px; border-left: 3px solid var(--accent); border-radius: 8px; background: #f4f1e8; }
.prompt-links p { margin: 5px 0 0; color: var(--muted); }
.conversion-builder > button { justify-self: start; }
.approval-area { display: grid; gap: 14px; border: 1px solid var(--line); border-radius: 16px; padding: 18px; background: #fbfaf5; }
.approval-area > div:first-child p, .muted { margin: 5px 0 0; color: var(--muted); }
.campaign-preview-builder { border: 1px solid var(--line); border-radius: 14px; padding: 14px; background: white; }
.campaign-preview-builder summary { cursor: pointer; font-weight: 800; }
.campaign-preview-builder form { display: grid; gap: 14px; margin-top: 16px; }
.campaign-preview-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.campaign-preview-grid label { display: grid; gap: 6px; }
.campaign-confirm { display: flex; gap: 9px; align-items: flex-start; }
.campaign-confirm input { width: auto; margin-top: 4px; }
.campaign-preview-state { color: var(--muted); }
.ad-campaign-area { display:grid;gap:12px; }
.ad-campaign-card { display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid var(--line);border-radius:16px;padding:16px;background:#fbfaf5; }
.ad-campaign-card small { display:block;margin-top:4px;color:var(--muted); }
.ad-campaign-card ul,.ad-campaign-card p { grid-column:1 / -1; }
.ad-campaign-card ul { margin:0;padding-left:20px;color:var(--muted); }
.ad-campaign-editor-wrap { grid-column:1 / -1;border-top:1px solid var(--line);padding-top:12px; }
.ad-campaign-editor-wrap summary { cursor:pointer;font-weight:800; }
.ad-campaign-editor { display:grid;gap:14px;margin-top:14px; }
.ad-editor-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.ad-editor-grid label,.ad-variants label { display:grid;gap:6px; }
.ad-variants { display:grid;gap:12px;border:1px solid var(--line);border-radius:14px;padding:14px; }
.ad-variants > div { display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:12px; }
.ad-editor-state { color:var(--muted); }
.approval-card { display: grid; gap: 14px; border: 1px solid var(--line); border-radius: 14px; padding: 16px; background: white; }
.approval-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.approval-head p { margin: 4px 0 0; color: var(--muted); }
.approval-card dl { margin: 0; display: grid; gap: 8px; }
.approval-card dl > div { display: grid; grid-template-columns: minmax(120px, .45fr) 1fr; gap: 12px; }
.approval-card dt { color: var(--muted); }
.approval-card dd { margin: 0; overflow-wrap: anywhere; }
.receipt-note { margin: 0; border-left: 3px solid var(--accent); padding-left: 12px; color: var(--muted); }
.bundle-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 4px; }
.bundle-items { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.bundle-items li { display: grid; grid-template-columns: 32px 1fr; gap: 10px; align-items: center; border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; background: white; }
.bundle-items li > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--accent-soft); color: var(--accent); font-weight: 800; }
.bundle-items small { display: block; color: var(--muted); }
.bundle-blocker { margin-top: 12px; border-left: 4px solid #b38a18; border-radius: 6px 12px 12px 6px; background: #fff7dc; padding: 12px 14px; }
.bundle-blocker p { margin: 4px 0 10px; }
.bundle-ready { margin-top: 12px !important; border-left: 4px solid var(--accent); padding-left: 12px; }
.artifact { margin-top: 8px; white-space: pre-wrap; }
.result-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
button.secondary { background: white; color: var(--accent); border: 1px solid var(--accent); }
.revision-box { margin-top: 14px; display: grid; gap: 10px; }
.steps { list-style: none; padding: 0; display: grid; gap: 10px; }
.step { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; }
.step > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #e9ebe8; font-weight: 800; }
.step.ready { border-color: var(--accent); background: #f7fbf9; }
.step.ready > span { background: var(--accent); color: white; }
.step p { margin: 3px 0 0; color: var(--muted); }

@media (max-width: 640px) {
  .shell { width: min(100% - 20px, 920px); padding-top: 28px; }
  .card, .result { padding: 20px; border-radius: 18px; }
  .two-columns { grid-template-columns: 1fr; }
  .result-head { display: grid; }
  .profile { justify-self: start; }
  .hero-meta { align-items: start; }
  .view-actions { display: grid; grid-template-columns: 1fr; }
  .project-card { grid-template-columns: 1fr; }
  .project-side { justify-items: start; min-width: 0; }
  .prompt-head { display: grid; }
  .prompt-head .state-badge { justify-self: start; }
  .bundle-head { display: grid; }
  .bundle-head .state-badge { justify-self: start; }
  .approval-head { display: grid; }
  .approval-head .state-badge { justify-self: start; }
  .approval-card dl > div { grid-template-columns: 1fr; gap: 2px; }
  .campaign-preview-grid { grid-template-columns: 1fr; }
  .ad-campaign-card { grid-template-columns:1fr; }
  .ad-campaign-card ul,.ad-campaign-card p { grid-column:auto; }
  .ad-campaign-editor-wrap { grid-column:auto; }
  .ad-editor-grid,.ad-variants > div { grid-template-columns:1fr; }
  .crm-outcome-summary { grid-template-columns: 1fr; }
  .crm-outcome-summary > div:first-child { grid-column:auto; }
}
.execution-choice {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.manual-editor {
  display: grid;
  gap: 14px;
  margin-top: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface);
}

.manual-editor-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.manual-result-form {
  display: grid;
  gap: 14px;
}

.manual-field {
  display: grid;
  gap: 6px;
}

.manual-field textarea {
  width: 100%;
  box-sizing: border-box;
}

.manual-errors:empty {
  display: none;
}

@media (max-width: 560px) {
  .execution-choice,
  .execution-choice button,
  .manual-result-form > button {
    width: 100%;
  }

  .manual-editor-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

.crm-layout {
  display: grid;
  grid-template-columns: minmax(300px, .75fr) minmax(440px, 1.25fr);
  align-items: start;
  gap: 20px;
}

.crm-capture-card { position: sticky; top: 18px; }
.crm-capture-card form, .crm-actions { display: grid; gap: 14px; }
.privacy-note { padding: 10px 12px; border-radius: 10px; color: var(--muted); background: var(--surface); font-size: .9rem; }
.crm-section-head, .crm-lead-title { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.crm-section-head { margin-bottom: 12px; }
.crm-section-head h2, .crm-lead-title h2 { margin-top: 0; }
.crm-lead-list { display: grid; gap: 10px; }
.crm-lead-row {
  display: grid;
  grid-template-columns: 1fr .75fr 1.2fr;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 16px;
  color: inherit;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--card);
}
.crm-lead-row:hover { border-color: var(--accent); transform: translateY(-1px); }
.crm-lead-row span, .crm-task span { min-width: 0; }
.crm-lead-row small, .crm-task small, .crm-timeline small { display: block; margin-top: 4px; color: var(--muted); }
.crm-lead-card { display: grid; gap: 18px; }
.crm-back { justify-self: start; }
.crm-contact-points { display: flex; flex-wrap: wrap; gap: 10px 18px; }
.crm-message { padding: 14px; border-radius: 12px; background: var(--surface); }
.crm-message p { margin-bottom: 0; white-space: pre-wrap; }
.crm-actions { padding-block: 16px; border-block: 1px solid var(--line); }
.crm-stage-form, .crm-task-form { display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 12px; }
.crm-stage-form { grid-template-columns: 1fr auto; }
.crm-note-form { display: grid; gap: 10px; }
.crm-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.crm-task-list, .crm-timeline { display: grid; gap: 10px; }
.crm-task { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; }
.crm-timeline > div { padding: 0 0 14px 16px; border-left: 3px solid var(--line); }
.crm-timeline p { margin: 7px 0 0; white-space: pre-wrap; }
.capture-manager { display: grid; gap: 16px; margin-top: 20px; }
.capture-draft-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.capture-draft-form fieldset, .capture-draft-form textarea, .capture-draft-form .error, .capture-draft-form button { grid-column: 1 / -1; }
.capture-draft-form fieldset { display: flex; flex-wrap: wrap; gap: 10px 18px; border: 1px solid var(--line); border-radius: 12px; }
.capture-draft-form fieldset label { flex-direction: row; }
.capture-forms-state { display: grid; gap: 10px; }
.capture-form-row { display: grid; grid-template-columns: 1.4fr 1fr auto; align-items: center; gap: 14px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.capture-form-row small { display: block; margin-top: 4px; color: var(--muted); }
#capture-token-result { padding: 16px; border: 1px solid var(--accent); border-radius: 12px; background: var(--accent-soft); }
#capture-token-result code { display: block; overflow-wrap: anywhere; margin: 10px 0; }

@media (max-width: 860px) {
  .crm-layout, .crm-columns { grid-template-columns: 1fr; }
  .crm-capture-card { position: static; }
}

@media (max-width: 560px) {
  .crm-lead-row, .crm-stage-form, .crm-task-form { grid-template-columns: 1fr; }
  .crm-lead-row { gap: 10px; }
  .crm-section-head, .crm-lead-title { flex-direction: column; }
  .capture-draft-form, .capture-form-row { grid-template-columns: 1fr; }
}

.auth-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 20px;
  background: radial-gradient(circle at top left, color-mix(in srgb, var(--accent) 12%, transparent), transparent 38%), var(--background);
}

.auth-shell {
  width: min(100%, 470px);
}

.auth-card,
.auth-form {
  display: grid;
  gap: 18px;
}

.auth-card h1,
.auth-card p {
  margin: 0;
}

.auth-note {
  color: var(--muted);
  font-size: .9rem;
}

.security-control-card,
.mfa-start-form,
.mfa-confirm-form {
  display: grid;
  gap: 14px;
}

.mfa-secret,
.recovery-codes {
  padding: 14px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent) 8%, var(--surface));
}

.break-code {
  display: block;
  overflow-wrap: anywhere;
}

.service-identities-card,
.service-list,
.service-create-form {
  display: grid;
  gap: 16px;
}

.service-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}

.service-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.service-actions {
  display: flex;
  gap: 8px;
}

.service-token-state {
  grid-column: 1 / -1;
}

.issued-token {
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--accent) 40%, var(--line));
  border-radius: 12px;
  background: color-mix(in srgb, var(--surface) 92%, var(--accent) 8%);
}

@media (max-width: 560px) {
  .service-row {
    grid-template-columns: 1fr;
  }

  .service-actions {
    flex-direction: column;
  }
}
.admin-dashboard {
  display: grid;
  gap: 18px;
}

.admin-summary-grid,
.admin-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.admin-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-summary-grid h2 {
  margin: 4px 0;
  font-size: clamp(1.7rem, 4vw, 2.6rem);
}

.admin-health h2 {
  color: var(--success, #27734d);
}

.admin-state-list {
  display: grid;
  gap: 8px;
}

.admin-state-list > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}

.admin-audit-list {
  display: grid;
}

.admin-audit-list > div {
  display: grid;
  grid-template-columns: 150px minmax(180px, 1fr) minmax(160px, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}

.admin-audit-list time,
.admin-audit-list small {
  color: var(--muted);
}

@media (max-width: 760px) {
  .admin-summary-grid,
  .admin-grid {
    grid-template-columns: 1fr;
  }

  .admin-audit-list > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}
.manual-asset-preview {
  position: sticky;
  bottom: 12px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line));
  border-radius: 16px;
  background: color-mix(in srgb, var(--surface) 94%, var(--accent) 6%);
  box-shadow: 0 12px 30px rgba(32, 35, 42, 0.08);
}

.manual-preview-content {
  display: grid;
  gap: 10px;
}

.manual-preview-content h3,
.manual-preview-content p {
  margin: 0;
}

.button-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 10px 14px;
  border-radius: 10px;
  color: white;
  background: var(--accent);
  font-weight: 750;
  text-decoration: none;
}

.button-link.secondary {
  color: var(--accent);
  background: var(--accent-soft);
}

.preview-result-link { margin-top: 12px; }
.bundle-preview-links { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 14px; }
.bundle-preview-links strong { flex-basis: 100%; }

.preview-lines {
  padding: 12px;
  border-radius: 10px;
  background: var(--surface);
}

@media (max-width: 560px) {
  .manual-asset-preview {
    position: static;
  }
}
.runtime-config-card {
  display: grid;
  gap: 18px;
}
.integration-control-card, .integration-draft-form, .integration-list, .adapter-catalog, .delivery-list { display: grid; gap: 14px; }
.adapter-catalog { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.adapter-catalog > div { padding: 12px; border: 1px solid var(--line); border-radius: 10px; }
.adapter-catalog small, .integration-row small, .delivery-row small { display: block; margin-top: 4px; color: var(--muted); }
.integration-draft-form { padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.integration-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.integration-row, .delivery-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.integration-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.integration-account { color: var(--ink) !important; }

.admin-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.runtime-config-form {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
}

.setting-check {
  display: flex;
  align-items: center;
  gap: 10px;
}

.setting-check input {
  width: 22px;
  height: 22px;
}

.config-draft {
  display: grid;
  gap: 10px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--accent) 45%, var(--line));
  border-radius: 14px;
  background: color-mix(in srgb, var(--surface) 94%, var(--accent) 6%);
}

.config-draft p,
.config-draft ul {
  margin: 0;
}

.config-history-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.config-history-row small {
  display: block;
  color: var(--muted);
}

.access-control-card,
.member-list,
.member-create-form,
.role-catalog {
  display: grid;
  gap: 16px;
}

.member-row {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(260px, 1.7fr);
  align-items: start;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
}

.member-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.member-role-form,
.member-form-grid {
  display: grid;
  grid-template-columns: minmax(150px, .7fr) minmax(210px, 1.3fr) auto;
  align-items: end;
  gap: 12px;
}

.member-form-state {
  grid-column: 1 / -1;
}

.member-create-form {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: color-mix(in srgb, var(--surface) 96%, var(--accent) 4%);
}

.member-create-form h3,
.role-definition h3 {
  margin: 0;
}

.role-pill {
  justify-self: start;
  padding: 7px 11px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 12%, var(--surface));
}

.role-definition {
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}

.role-definition p,
.role-definition ul {
  margin-bottom: 0;
}

@media (max-width: 560px) {
  .admin-section-head,
  .config-history-row,
  .member-row {
    align-items: stretch;
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  .member-role-form,
  .member-form-grid {
    grid-template-columns: 1fr;
  }
  .integration-form-grid, .integration-row, .delivery-row { grid-template-columns: 1fr; }
  .integration-actions { justify-content: flex-start; }
}
