:root {
  --navy: #0f2f5f;
  --navy-2: #173f78;
  --navy-3: #071d3c;
  --blue: #1f86ff;
  --blue-2: #33b5ff;
  --gold: #f4b43f;
  --gold-2: #ffd36a;
  --bg: #f3f6fb;
  --panel: #ffffff;
  --surface: #ffffff;
  --ink: #0b1730;
  --muted: #64748b;
  --line: #d9e2ef;
  --soft-line: #edf2f8;
  --good: #059669;
  --warn: #d97706;
  --bad: #b42318;
  --shadow: 0 18px 45px rgba(15, 47, 95, .10);
  --soft-shadow: 0 10px 28px rgba(15, 47, 95, .08);
}

[hidden] { display: none !important; }

/* v7.15: security, users, audit, and pagination */
.settings-security-card hr {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 24px 0;
}
.record-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}
.record-list .compact-card {
  align-items: center;
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 14px;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 12px 14px;
}
.record-list .compact-card > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.record-list .compact-card small,
.record-list .compact-card span {
  display: block;
}
.record-list .toolbar-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.record-list select {
  min-width: 180px;
}
#mfaRecoveryCodes {
  margin-top: 14px;
  white-space: pre-wrap;
}
@media (max-width: 760px) {
  .record-list .compact-card {
    align-items: stretch;
    flex-direction: column;
  }
  .record-list .toolbar-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: stretch;
  }
  .record-list select {
    grid-column: 1 / -1;
    min-width: 0;
  }
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 0% 0%, rgba(31,134,255,.12), transparent 30%),
    radial-gradient(circle at 100% 2%, rgba(244,180,63,.16), transparent 28%),
    var(--bg);
  min-height: 100vh;
}
a { color: inherit; }
button, input, select, textarea { font: inherit; }
.container { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.hero { padding: 28px 0 20px; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 26px; }
.brand { display: flex; align-items: center; gap: 12px; }
.logo { width: 52px; height: 52px; border-radius: 15px; background: linear-gradient(135deg, var(--blue), var(--blue-2)); display: grid; place-items: center; color: #fff; font-weight: 900; box-shadow: var(--soft-shadow); letter-spacing: -1px; }
.wit-logo { background: linear-gradient(135deg, var(--blue), var(--blue-2)); color: #fff; }
.brand small { color: var(--muted); display: block; margin-top: 2px; }
.status-pill { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--line); background: rgba(255,255,255,.78); padding: 10px 14px; border-radius: 999px; font-size: 14px; box-shadow: var(--soft-shadow); }
.dot { width: 10px; height: 10px; border-radius: 50%; background: var(--good); box-shadow: 0 0 0 4px rgba(5,150,105,.13); }
.dot.offline { background: var(--warn); box-shadow: 0 0 0 4px rgba(217,119,6,.14); }
.hero-card { border: 1px solid var(--line); background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,248,255,.94)); backdrop-filter: blur(10px); border-radius: 30px; padding: 34px; box-shadow: var(--shadow); display: grid; grid-template-columns: 1.4fr .8fr; gap: 24px; align-items: center; }
h1 { margin: 0 0 10px; font-size: clamp(32px, 5vw, 56px); line-height: .98; letter-spacing: -2px; }
.lead { color: var(--muted); font-size: 18px; line-height: 1.55; margin: 0; }
.hero-metrics { display: grid; gap: 12px; }
.metric { background: white; border: 1px solid var(--line); border-radius: 22px; padding: 18px; box-shadow: var(--soft-shadow); }
.metric strong { display: block; font-size: 26px; color: var(--navy); }
.main-grid { display: grid; grid-template-columns: 1.35fr .75fr; gap: 22px; padding: 12px 0 42px; }
.card, .surface-card { background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: 26px; box-shadow: var(--shadow); overflow: hidden; }
.card-header { padding: 20px 22px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.card-header h2, .card-header h3 { margin: 0; }
.card-body { padding: 22px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.field { display: grid; gap: 7px; }
.field.full { grid-column: 1 / -1; }
label { font-size: 13px; color: var(--muted); font-weight: 750; }
input, select, textarea { border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 12px 13px; outline: none; min-width: 0; color: var(--ink); }
input:focus, select:focus, textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(31,134,255,.12); }
textarea { min-height: 96px; resize: vertical; }
.quick-crops { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.chip { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 10px 13px; cursor: pointer; box-shadow: 0 5px 14px rgba(15,47,95,.04); }
.chip:hover { border-color: var(--blue); color: var(--navy); }
.table-wrap { overflow-x: auto;
  scrollbar-width: thin; border: 1px solid var(--line); border-radius: 20px; background: #fff; }
table { width: 100%; border-collapse: collapse; min-width: 1040px; }
th, td { padding: 12px 10px; border-bottom: 1px solid var(--soft-line); text-align: left; vertical-align: top; }
th { font-size: 11px; color: #61708a; background: #f8fafd; white-space: nowrap; text-transform: uppercase; letter-spacing: .05em; }
td input, td select { width: 100%; padding: 10px; border-radius: 12px; }
.row-actions { display: flex; gap: 8px; align-items: center; }
.btn { border: 0; border-radius: 14px; padding: 12px 16px; cursor: pointer; font-weight: 850; display: inline-flex; align-items: center; justify-content: center; gap: 9px; text-decoration: none; transition: transform .12s ease, box-shadow .12s ease, background .12s ease; }
.btn:hover { transform: translateY(-1px); }
.btn.primary { background: linear-gradient(135deg, #1f67ff, #0f51d3); color: #fff; box-shadow: 0 12px 26px rgba(31,103,255,.22); }
.btn.gold { background: linear-gradient(135deg, var(--gold), var(--gold-2)); color: #2c1f18; box-shadow: 0 10px 22px rgba(244,180,63,.22); }
.btn.light { background: #fff; color: var(--navy); border: 1px solid var(--line); }
.btn.danger { background: #fff0ed; color: var(--bad); border: 1px solid #fac2ba; }
.btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.preview-list { display: grid; gap: 12px; }
.preview-item { border: 1px solid var(--line); background: #fff; border-radius: 18px; padding: 14px; box-shadow: var(--soft-shadow); }
.preview-title { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 8px; }
.badge { padding: 6px 10px; border-radius: 999px; font-size: 11px; font-weight: 900; background: #eef5ff; color: var(--navy); white-space: nowrap; text-transform: uppercase; letter-spacing: .03em; }
.badge.good { background: #e7f8ee; color: var(--good); }
.badge.warn { background: #fff4db; color: #915500; border: 1px solid #f9d77a; }
.badge.valueadd { background:#f3e8ff; color:#6d28d9; border:1px solid #d8b4fe; }
.badge.review { background: #edf2ff; color: #3151bd; }
.muted { color: var(--muted); }
.sync-box { display: grid; gap: 10px; }
.sync-row { display: flex; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--soft-line); padding-bottom: 8px; }
.notice { border: 1px solid var(--line); background: #fff; border-radius: 18px; padding: 14px; color: var(--muted); }
.notice-blue { background: #f4f8ff; border-color: #d9e8ff; color: #324766; }
 .toast { position: fixed; bottom: 18px; right: 18px; background: var(--navy-3); color: white; padding: 16px 48px 16px 16px; border-radius: 16px; box-shadow: var(--shadow); display: none; z-index: 90; width: min(520px, calc(100vw - 32px)); max-height: 45vh; overflow: auto; line-height: 1.45; }
.toast.show { display: block; }
.toast-close { position: absolute; top: 8px; right: 10px; border: 0; background: rgba(255,255,255,.12); color: #fff; width: 28px; height: 28px; border-radius: 999px; cursor: pointer; font-size: 18px; font-weight: 900; }
.toast-log { margin-top: 10px; border: 1px solid rgba(255,255,255,.35); background: rgba(255,255,255,.1); color: #fff; padding: 8px 10px; border-radius: 10px; font-weight: 800; cursor: pointer; }
.message-log-overlay { position: fixed; inset: 0; background: rgba(10,23,45,.55); display: none; align-items: center; justify-content: center; padding: 24px; z-index: 100; }
.message-log-overlay.show { display: flex; }
.message-log-panel { background: #fff; color: var(--ink); width: min(820px, 100%); max-height: 82vh; overflow: auto; border-radius: 24px; box-shadow: var(--shadow); padding: 22px; }
.message-log-head { display: flex; justify-content: space-between; gap: 16px; align-items: center; border-bottom: 1px solid var(--line); padding-bottom: 12px; margin-bottom: 12px; }
.message-log-head h2 { margin: 0; }
.message-log-list { display: grid; gap: 10px; margin-top: 16px; }
.message-log-row { border: 1px solid var(--line); border-radius: 14px; padding: 12px; display: grid; gap: 6px; background: #f8fbff; }
.message-log-row.error { border-color: #f1b8b8; background: #fff5f5; }
.message-log-row strong { color: var(--muted); font-size: 12px; }

.footer { padding: 24px 0 38px; color: var(--muted); text-align: center; }
.login-box { max-width: 440px; margin: 36px auto; }
.price-combo{display:grid;grid-template-columns:1fr 82px;gap:6px;min-width:150px}.price-combo input,.price-combo select{padding:9px}
.linklike{border:0;background:transparent;padding:0;color:var(--navy);font-weight:850;text-decoration:underline;cursor:pointer;font:inherit}

/* WindBlow admin console */
#adminPanel[style*="display:none"], #adminPanel[style*="display: none"] { display: none !important; }
.admin-body { background: #f2f5fa; min-height: 100vh; }
.login-screen { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at 20% 0%, rgba(31,134,255,.18), transparent 30%), linear-gradient(135deg, #eef4fb, #ffffff); }
.login-panel { width: min(460px, 100%); background: #fff; border: 1px solid var(--line); border-radius: 26px; box-shadow: var(--shadow); padding: 28px; }
.brand-login { margin-bottom: 28px; }
.login-panel h1 { font-size: 34px; letter-spacing: -1px; }
.login-message { margin-top:12px; border:1px solid #ffc5bd; background:#fff0ee; color:#942b1f; border-radius:14px; padding:11px 13px; font-weight:850; line-height:1.4; }
.login-message.warning { border-color:#ffd27a; background:#fff7df; color:#8a5a00; }
.login-message.success { border-color:#b8edcb; background:#ecfff3; color:#08783b; }
.login-remember-row { display:flex; align-items:center; gap:9px; margin-top:13px; color:#173b5d; font-weight:850; cursor:pointer; }
.login-remember-row input { width:18px; height:18px; margin:0; accent-color:#1454d9; }
.login-remember-note { margin-top:6px; color:#667b91; font-size:.76rem; line-height:1.4; }
.link-btn { width:100%; margin-top:10px; background:transparent; color:#1454d9; box-shadow:none; }
.link-btn:hover { background:#eef5ff; }
.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 252px minmax(0, 1fr); }
.admin-sidebar { background: linear-gradient(180deg, #173f78 0%, #0b2d61 45%, #071f45 100%); color: #fff; padding: 18px 14px; position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; }
.sidebar-header { display: block; }
.sidebar-brand { padding: 0 6px 18px; border-bottom: 1px solid rgba(255,255,255,.14); margin-bottom: 22px; }
.sidebar-brand small { color: #b9cee9; }
.sidebar-brand strong { color: #fff; }
.side-nav { display: grid; gap: 17px; padding-bottom: 18px; }
.side-nav-group { display: grid; gap: 4px; }
.side-nav-heading { padding: 0 12px 5px; color: #86add9; font-size: .66rem; font-weight: 950; letter-spacing: .16em; text-transform: uppercase; }
.side-nav .tab { width: 100%; border: 0; background: transparent; color: #cfe0f6; padding: 13px 12px; border-radius: 10px; font-weight: 850; text-align: left; cursor: pointer; display: flex; align-items: center; gap: 12px; }
.side-nav .tab > .nav-icon {
  position:relative;
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:inline-block;
  color:#9dccff;
}
.side-nav .tab > .nav-icon::before,
.side-nav .tab > .nav-icon::after {
  content:"";
  position:absolute;
  box-sizing:border-box;
}
.side-nav .tab > .nav-icon::before {
  inset:3px;
  border:2px solid currentColor;
  border-radius:5px;
}
.side-nav .tab[data-tab="dashboardTab"] > .nav-icon::before {
  inset:2px;
  border-radius:4px;
  box-shadow:7px 0 0 -3px currentColor, 0 7px 0 -3px currentColor, 7px 7px 0 -3px currentColor;
}
.side-nav .tab[data-tab="requestsTab"] > .nav-icon::before,
.side-nav .tab[data-tab="tasksTab"] > .nav-icon::before {
  left:4px;
  right:3px;
  top:4px;
  bottom:4px;
  border-left:3px solid currentColor;
  border-top:2px solid currentColor;
  border-bottom:2px solid currentColor;
  border-right:0;
  border-radius:2px;
}
.side-nav .tab[data-tab="requestsTab"] > .nav-icon::after,
.side-nav .tab[data-tab="tasksTab"] > .nav-icon::after {
  left:9px;
  top:5px;
  width:6px;
  height:2px;
  background:currentColor;
  box-shadow:0 5px 0 currentColor, 0 10px 0 currentColor;
}
.side-nav .tab[data-tab="menuScannerTab"] > .nav-icon::before {
  inset:2px 4px;
  border-radius:3px;
}
.side-nav .tab[data-tab="menuScannerTab"] > .nav-icon::after {
  left:7px;
  top:1px;
  width:4px;
  height:16px;
  background:currentColor;
  opacity:.45;
}
.side-nav .tab[data-tab="clientsTab"] > .nav-icon::before,
.side-nav .tab[data-tab="farmersTab"] > .nav-icon::before,
.side-nav .tab[data-tab="contactsTab"] > .nav-icon::before {
  left:5px;
  top:3px;
  width:8px;
  height:8px;
  border-radius:999px;
}
.side-nav .tab[data-tab="clientsTab"] > .nav-icon::after,
.side-nav .tab[data-tab="farmersTab"] > .nav-icon::after,
.side-nav .tab[data-tab="contactsTab"] > .nav-icon::after {
  left:3px;
  bottom:2px;
  width:12px;
  height:7px;
  border:2px solid currentColor;
  border-top-left-radius:999px;
  border-top-right-radius:999px;
  border-bottom:0;
}
.side-nav .tab[data-tab="messagesTab"] > .nav-icon::before {
  inset:3px 2px 5px;
  border-radius:5px;
}
.side-nav .tab[data-tab="messagesTab"] > .nav-icon::after {
  left:6px;
  bottom:2px;
  width:6px;
  height:6px;
  border-left:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:skew(-20deg);
}
.side-nav .tab[data-tab="treeRegistryTab"] > .nav-icon::before {
  left:5px;
  top:2px;
  width:9px;
  height:11px;
  border-radius:999px 999px 999px 2px;
  transform:rotate(-35deg);
}
.side-nav .tab[data-tab="treeRegistryTab"] > .nav-icon::after {
  left:8px;
  bottom:1px;
  width:2px;
  height:8px;
  background:currentColor;
}
.side-nav .tab[data-tab="nuMapTab"] > .nav-icon::before {
  left:6px;
  top:2px;
  width:8px;
  height:8px;
  border-radius:999px 999px 999px 0;
  transform:rotate(45deg);
}
.side-nav .tab[data-tab="nuMapTab"] > .nav-icon::after {
  left:8px;
  top:4px;
  width:4px;
  height:4px;
  border-radius:999px;
  background:currentColor;
}
.side-nav .tab[data-tab="fieldDoctorTab"] > .nav-icon::before {
  left:7px;
  top:3px;
  width:4px;
  height:12px;
  border:0;
  border-radius:2px;
  background:currentColor;
}
.side-nav .tab[data-tab="fieldDoctorTab"] > .nav-icon::after {
  left:3px;
  top:7px;
  width:12px;
  height:4px;
  border:0;
  border-radius:2px;
  background:currentColor;
}
.side-nav .tab[data-tab="docuHubTab"] > .nav-icon::before,
.side-nav .tab[data-tab="libraryTab"] > .nav-icon::before,
.side-nav .tab[data-tab="reportsTab"] > .nav-icon::before,
.side-nav .tab[data-tab="archiveTab"] > .nav-icon::before {
  inset:2px 4px;
  border-radius:3px;
}
.side-nav .tab[data-tab="docuHubTab"] > .nav-icon::after,
.side-nav .tab[data-tab="libraryTab"] > .nav-icon::after,
.side-nav .tab[data-tab="reportsTab"] > .nav-icon::after,
.side-nav .tab[data-tab="archiveTab"] > .nav-icon::after {
  left:7px;
  top:6px;
  width:7px;
  height:2px;
  background:currentColor;
  box-shadow:0 4px 0 currentColor;
}
.side-nav .tab[data-tab="aiReportBuilderTab"] > .nav-icon::before,
.side-nav .tab[data-tab="settingsTab"] > .nav-icon::before,
.side-nav .tab[data-tab="diagnosticsTab"] > .nav-icon::before {
  inset:4px;
  border-radius:999px;
}
.side-nav .tab[data-tab="aiReportBuilderTab"] > .nav-icon::after,
.side-nav .tab[data-tab="settingsTab"] > .nav-icon::after,
.side-nav .tab[data-tab="diagnosticsTab"] > .nav-icon::after {
  left:8px;
  top:1px;
  width:2px;
  height:16px;
  background:currentColor;
  transform:rotate(45deg);
  opacity:.75;
}
.side-nav .tab.active, .side-nav .tab:hover { background: rgba(255,255,255,.12); color: #fff; }
.side-nav .tab.active { box-shadow: inset 3px 0 #67d49d; }
.sidebar-menu-content { display: flex; flex: 1; min-height: 0; flex-direction: column; }
.mobile-menu-toggle { display: none; }
.side-footer { margin-top: auto; border-top: 1px solid rgba(255,255,255,.14); padding-top: 16px; display: grid; gap: 8px; }
.side-link { color: #d9e8fb; text-decoration: none; border: 0; background: transparent; text-align: left; padding: 10px 12px; border-radius: 10px; cursor: pointer; font-weight: 800; }
.side-link:hover { background: rgba(255,255,255,.10); color: #fff; }
.logout-link { color: #ffd8d8; }
.admin-main { min-width: 0; }
.admin-topbar { min-height: 78px; background: rgba(255,255,255,.88); border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 28px; position: sticky; top: 0; z-index: 10; backdrop-filter: blur(12px); }
.page-search { width: min(470px, 100%); border: 1px solid var(--line); background: #f7f9fd; border-radius: 12px; display: flex; align-items: center; gap: 10px; padding: 0 12px; }
.page-search input { border: 0; background: transparent; box-shadow: none; width: 100%; }
.page-search input:focus { box-shadow: none; }
.command-search kbd { flex:0 0 auto; border:1px solid #d9e2ee; border-bottom-width:2px; border-radius:7px; background:#fff; color:#63758b; padding:4px 7px; font:750 .68rem/1 system-ui,sans-serif; white-space:nowrap; }
.top-actions { display: flex; gap: 10px; align-items: center; }
.top-actions .mobile-action-label,
.top-actions .action-icon { display:none; }
.top-actions .btn.primary .action-icon { display:inline; }
.admin-page-section { padding: 34px 28px 54px; }
.section-intro { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 22px; }
.section-intro h1 { font-size: clamp(32px, 4vw, 42px); letter-spacing: -1.5px; margin: 6px 0 4px; }
.section-intro p { margin: 0; color: var(--muted); font-size: 16px; max-width: 640px; }
.eyebrow { color: #0f51d3; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 950; }
.toolbar-actions { margin: 0; justify-content: flex-end; }
.toolbar-actions select, .toolbar-actions input { min-width: 220px; }
.command-center-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); gap:18px; margin-bottom:18px; padding:clamp(24px,4vw,38px); border-radius:26px; color:#fff; background:radial-gradient(circle at 82% 12%,rgba(50,194,137,.32),transparent 32%),linear-gradient(135deg,#0d376d,#116ea2 58%,#137f72); box-shadow:0 20px 48px rgba(9,52,98,.18); overflow:hidden; }
.command-center-copy h1 { margin:6px 0 8px; color:#fff; font-size:clamp(2.25rem,5vw,3.4rem); letter-spacing:-.055em; line-height:1; }
.command-center-copy p { max-width:720px; margin:0; color:#e6f3ff; font-size:1.04rem; line-height:1.65; }
.command-center-hero .eyebrow { color:#9ddcff; }
.command-center-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.command-center-actions .btn.light { border-color:rgba(255,255,255,.42); background:rgba(255,255,255,.12); color:#fff; }
.dashboard-ai-hero { display:grid; align-content:start; gap:13px; padding:20px; border:1px solid rgba(255,255,255,.27); border-radius:20px; background:rgba(255,255,255,.12); backdrop-filter:blur(10px); }
.dashboard-ai-hero h2 { margin:3px 0 6px; color:#fff; font-size:1.4rem; }
.dashboard-ai-hero p { margin:0; color:#e2f1fb; font-size:.9rem; line-height:1.5; }
.ai-orbit { display:grid; place-items:center; width:40px; height:40px; border-radius:13px; color:#063f75; background:#fff; box-shadow:0 8px 22px rgba(0,0,0,.14); }
.dashboard-ai-prompts { display:flex; flex-wrap:wrap; gap:7px; }
.dashboard-ai-prompts button { border:1px solid rgba(255,255,255,.32); border-radius:999px; background:rgba(5,42,78,.22); color:#fff; padding:7px 10px; font:inherit; font-size:.76rem; font-weight:800; cursor:pointer; }
.dashboard-ai-prompts button:hover,.dashboard-ai-prompts button:focus-visible { background:#fff; color:#0c4f7f; outline:none; }
.workflow-card { margin-bottom:18px; padding:20px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--soft-shadow); }
.workflow-head { display:flex; justify-content:space-between; align-items:end; gap:16px; margin-bottom:15px; }
.workflow-head h2 { margin:4px 0 0; font-size:1.22rem; }
.workflow-note { max-width:390px; color:var(--muted); font-size:.78rem; text-align:right; }
.workflow-strip { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; }
.workflow-strip > * { position:relative; display:grid; align-content:start; gap:3px; min-width:0; min-height:110px; padding:13px 12px; border:1px solid #d9e5f1; border-radius:14px; background:#f8fbff; color:var(--ink); text-align:left; }
.workflow-strip > button { font:inherit; cursor:pointer; }
.workflow-strip > button:hover,.workflow-strip > button:focus-visible { border-color:#4c97dd; background:#edf6ff; outline:none; transform:translateY(-1px); }
.workflow-strip > *:not(:last-child)::after { content:'›'; position:absolute; top:40px; right:-8px; z-index:2; color:#5c7c9d; font-size:1.25rem; font-weight:950; }
.workflow-strip span { display:grid; place-items:center; width:25px; height:25px; margin-bottom:4px; border-radius:8px; background:#dbeeff; color:#075a99; font-size:.74rem; font-weight:950; }
.workflow-strip strong { color:#113d6b; font-size:.86rem; }
.workflow-strip small { color:var(--muted); line-height:1.3; }
.product-demand-summary { margin:16px 0; }
.product-demand-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:12px 0; }
.product-demand-metric { padding:12px 14px; border:1px solid #d8e6f5; border-radius:14px; background:linear-gradient(180deg,#fff,#f7fbff); }
.product-demand-metric span,.product-demand-row span { display:block; color:var(--muted); font-size:.74rem; font-weight:850; text-transform:uppercase; letter-spacing:.04em; }
.product-demand-metric strong { display:block; margin-top:4px; color:var(--navy); font-size:1.35rem; }
.product-demand-rows { display:grid; gap:9px; }
.product-demand-controls { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; margin-bottom:4px; }
.product-demand-controls select { width:auto; min-width:92px; padding:8px 10px; }
.product-demand-row { display:grid; grid-template-columns:minmax(220px,1.8fr) repeat(5,minmax(105px,1fr)) minmax(120px,.8fr); align-items:center; gap:10px; padding:12px 14px; border:1px solid #d8e6f5; border-radius:15px; background:#fff; }
.product-demand-row > div:first-child strong { color:var(--navy); font-size:1.02rem; }
.product-demand-row small { display:block; margin-top:3px; color:var(--muted); line-height:1.35; }
.product-demand-dialog-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:12px 0; }
.product-demand-dialog-summary span { padding:10px 12px; border:1px solid #d8e6f5; border-radius:13px; background:#f8fbff; color:var(--muted); font-size:.76rem; font-weight:850; text-transform:uppercase; letter-spacing:.04em; }
.product-demand-dialog-summary strong { display:block; margin-top:4px; color:var(--navy); font-size:1rem; text-transform:none; letter-spacing:0; }
.product-demand-assignment-list { display:grid; gap:9px; margin:12px 0; }
.product-demand-assignment-row { display:grid; grid-template-columns:minmax(220px,1.5fr) minmax(130px,.8fr) auto; gap:10px; align-items:end; padding:10px; border:1px solid #d8e6f5; border-radius:14px; background:#fff; }
.product-demand-assignment-row label { display:grid; gap:5px; color:var(--muted); font-size:.78rem; font-weight:850; }
.product-demand-assignment-row input,.product-demand-assignment-row select { width:100%; }
.report-entity-link { appearance:none; border:0; padding:0; margin:0; background:transparent; color:#0f4f9c; font:inherit; font-weight:900; text-align:left; cursor:pointer; text-decoration:none; }
.report-entity-link:hover,.report-entity-link:focus-visible { color:#155fd7; text-decoration:underline; outline:none; }
.warn-text { color:#a65f00; }
.good-text { color:#087a3d; }
.workflow-future { border-style:dashed; background:#fafbfc; opacity:.76; }
.workflow-future em { margin-top:5px; color:#7b8794; font-size:.64rem; font-style:normal; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.dashboard-kpi-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.dashboard-kpi { display:grid; gap:5px; min-width:0; padding:17px; border:1px solid var(--line); border-radius:16px; background:linear-gradient(145deg,#fff,#f5f9ff); color:var(--ink); cursor:pointer; text-align:left; box-shadow:var(--soft-shadow); }
.dashboard-kpi:hover,.dashboard-kpi:focus-visible { border-color:#75aae0; transform:translateY(-2px); outline:none; }
.dashboard-kpi span { color:#55708e; font-size:.75rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.dashboard-kpi strong { color:#0a3971; font-size:2rem; line-height:1; }
.dashboard-kpi small { color:var(--muted); line-height:1.35; }
.dashboard-action-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); gap:16px; margin-bottom:18px; align-items:start; }
.dashboard-recommended-card,.dashboard-quick-card { padding:20px; margin:0; }
.dashboard-recommended-card h2,.dashboard-quick-card h2 { margin:3px 0 0; }
.recommended-action-list { display:grid; gap:9px; margin-top:16px; }
.recommended-action { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; width:100%; padding:12px; border:1px solid var(--line); border-radius:13px; background:#fbfdff; color:var(--ink); text-align:left; font:inherit; cursor:pointer; }
.recommended-action:hover,.recommended-action:focus-visible { border-color:#73a9d7; background:#f2f8ff; outline:none; }
.recommended-action-indicator { width:9px; height:34px; border-radius:999px; background:#2b83c6; }
.recommended-action.warning .recommended-action-indicator { background:#e7a924; }
.recommended-action.urgent .recommended-action-indicator { background:#d94b56; }
.recommended-action.success .recommended-action-indicator { background:#24945d; }
.recommended-action strong,.recommended-action small { display:block; }
.recommended-action small { margin-top:3px; color:var(--muted); line-height:1.35; }
.recommended-action-label { color:#0d5f9c; font-size:.74rem; font-weight:900; white-space:nowrap; }
.recommended-empty { padding:18px; border:1px dashed #b8d9c5; border-radius:13px; background:#f4fbf7; color:#276348; }
.dashboard-quick-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:16px; }
.dashboard-quick-action { display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:9px; align-items:center; min-width:0; padding:12px; border:1px solid var(--line); border-radius:13px; background:#fff; color:var(--ink); text-decoration:none; text-align:left; font:inherit; cursor:pointer; }
.dashboard-quick-action:hover,.dashboard-quick-action:focus-visible { border-color:#6aa4d6; background:#f4f9ff; outline:none; }
.dashboard-quick-action > span { grid-row:1/3; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#e9f4ff; color:#075a99; font-weight:950; }
.dashboard-quick-action strong { overflow-wrap:anywhere; font-size:.82rem; }
.dashboard-quick-action small { color:var(--muted); font-size:.7rem; line-height:1.3; }
.dashboard-highlight-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:10px; margin-bottom:18px; }
.dashboard-highlight { display:grid; gap:3px; padding:13px 14px; border:1px solid #d7e7d9; border-radius:14px; background:#f4fbf6; }
.dashboard-highlight span { color:#4e6d5a; font-size:.72rem; font-weight:900; text-transform:uppercase; }
.dashboard-highlight strong { color:#135c35; font-size:1.35rem; }
.dashboard-highlight small { color:#648071; }
.dashboard-ai-usage-card { margin-bottom:18px; padding:18px; }
.dashboard-ai-usage { display:grid; gap:16px; margin-top:15px; }
.ai-usage-metric-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:9px; }
.ai-usage-metric { display:grid; gap:4px; min-width:0; padding:12px; border:1px solid #dce7f4; border-radius:13px; background:#f8fbff; }
.ai-usage-metric span { color:#53708e; font-size:.7rem; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.ai-usage-metric strong { color:#092d58; font-size:1.08rem; overflow-wrap:anywhere; }
.ai-usage-metric small { color:var(--muted); line-height:1.35; }
.ai-usage-detail-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr); gap:16px; }
.ai-usage-detail-grid h3 { margin:0 0 9px; font-size:.88rem; }
.ai-usage-provider-list { display:grid; gap:7px; }
.ai-usage-provider-row { display:flex; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px solid var(--soft-line); }
.ai-usage-provider-row > div { display:grid; gap:2px; }
.ai-usage-provider-row > div:last-child { text-align:right; }
.ai-usage-provider-row small,.ai-usage-last span { color:var(--muted); }
.ai-usage-last { display:grid; align-content:start; gap:5px; padding:13px; border-radius:13px; background:#f4fbf6; border:1px solid #d7e7d9; }
.ai-usage-note { margin:0; color:var(--muted); font-size:.78rem; line-height:1.45; }
.dashboard-content-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr); gap:16px; align-items:start; }
.dashboard-breakdowns,.dashboard-activity-card { padding:20px; }
.dashboard-breakdowns .section-mini-head h2,.dashboard-activity-card .section-mini-head h2 { margin:3px 0 0; }
.dashboard-breakdown-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.dashboard-breakdown-card { padding:14px; border:1px solid var(--line); border-radius:14px; background:#fbfdff; }
.dashboard-breakdown-card h3 { margin:0 0 12px; color:#163e70; font-size:.92rem; }
.dashboard-breakdown-rows { display:grid; gap:10px; }
.dashboard-breakdown-row>div:first-child { display:flex; justify-content:space-between; gap:10px; color:#546a84; font-size:.78rem; }
.dashboard-breakdown-row strong { color:#173d6c; }
.dashboard-bar { height:7px; margin-top:4px; overflow:hidden; border-radius:999px; background:#e7eef7; }
.dashboard-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#1576bd,#26a36b); }
.dashboard-activity-list { display:grid; gap:8px; margin-top:16px; }
.dashboard-activity-row { display:grid; grid-template-columns:auto minmax(0,1fr); gap:10px; align-items:center; padding:10px 0; border-bottom:1px solid var(--soft-line); }
.dashboard-activity-type { padding:5px 7px; border-radius:8px; background:#edf5ff; color:#15558b; font-size:.68rem; font-weight:900; text-transform:uppercase; }
.dashboard-activity-row strong,.dashboard-activity-row small { display:block; overflow-wrap:anywhere; }
.dashboard-activity-row small { margin-top:3px; color:var(--muted); }
@media(max-width:1350px) { .dashboard-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .ai-usage-metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .workflow-strip { grid-template-columns:repeat(3,minmax(0,1fr)); } .workflow-strip > *::after { display:none; } .product-demand-row { grid-template-columns:1fr 1fr 1fr; } .product-demand-row > div:first-child { grid-column:1 / -1; } }
@media(max-width:1200px) { .dashboard-content-grid,.dashboard-action-grid { grid-template-columns:1fr; } .command-center-hero { grid-template-columns:1fr; } }
@media(max-width:650px) { .dashboard-breakdown-grid,.ai-usage-detail-grid,.product-demand-dialog-summary,.audit-toolbar { grid-template-columns:1fr; } .dashboard-kpi-grid,.dashboard-highlight-grid,.ai-usage-metric-grid,.product-demand-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .workflow-strip { grid-template-columns:1fr 1fr; } .workflow-head { align-items:flex-start; flex-direction:column; } .workflow-note { text-align:left; } .dashboard-quick-actions { grid-template-columns:1fr; } .product-demand-row,.product-demand-assignment-row { grid-template-columns:1fr 1fr; } .product-demand-assignment-row label:first-child { grid-column:1 / -1; } }
@media(max-width:420px) { .dashboard-kpi-grid,.dashboard-highlight-grid { grid-template-columns:1fr; } }
@media(max-width:720px) {
  .command-center-hero { padding:22px 18px; border-radius:20px; }
  .command-center-copy h1 { font-size:2.35rem; }
  .command-center-actions { display:grid; grid-template-columns:1fr; }
  .command-center-actions .btn { width:100%; }
  .dashboard-ai-hero { padding:17px; }
  .command-search kbd { display:none; }
  .workflow-card,.dashboard-recommended-card,.dashboard-quick-card { padding:16px; }
}
@media(max-width:460px) {
  .workflow-strip { grid-template-columns:1fr; }
  .recommended-action { grid-template-columns:auto minmax(0,1fr); }
  .recommended-action-label { grid-column:2; white-space:normal; }
}
.task-metric-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.task-metric { display:grid; gap:4px; padding:15px; border:1px solid var(--line); border-radius:15px; background:#fff; box-shadow:var(--soft-shadow); }
.task-metric span { color:#60748a; font-size:.68rem; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.task-metric strong { color:#0a3971; font-size:1.75rem; line-height:1.1; }
.task-metric.alert strong { color:#ba303a; }
.task-metric.warn strong { color:#9b6500; }
.task-editor-panel { margin-bottom:16px; padding:0; overflow:hidden; }
.task-editor-panel > summary { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:17px 20px; cursor:pointer; list-style:none; }
.task-editor-panel > summary::-webkit-details-marker { display:none; }
.task-editor-panel > summary::before { content:'＋'; color:#0c63a3; font-weight:950; }
.task-editor-panel[open] > summary::before { content:'−'; }
.task-editor-panel > summary strong { margin-right:auto; }
.task-editor-body { padding:0 20px 20px; border-top:1px solid var(--soft-line); }
.farmer-editor-panel { margin-bottom:16px; padding:0; overflow:hidden; }
.farmer-editor-panel > summary { display:flex; align-items:center; gap:14px; padding:17px 20px; cursor:pointer; list-style:none; }
.farmer-editor-panel > summary::-webkit-details-marker { display:none; }
.farmer-editor-panel > summary > strong { margin-right:auto; }
.farmer-editor-body { padding:0 20px 20px; border-top:1px solid var(--soft-line); }
.farmer-editor-body > .form-grid { padding-top:18px; }
.collapsible-form-panel > summary::after { content:'Open'; flex:0 0 auto; border:1px solid #cddbec; border-radius:999px; padding:5px 9px; background:#f5f9ff; color:#155489; font-size:.7rem; font-weight:900; text-transform:uppercase; }
.collapsible-form-panel[open] > summary::after { content:'Minimize'; }
.docuhub-create-panel {
  margin-top:16px;
  overflow:hidden;
}
.docuhub-create-panel > summary {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px 12px;
  padding:16px 18px;
  list-style:none;
  cursor:pointer;
}
.docuhub-create-panel > summary::-webkit-details-marker { display:none; }
.docuhub-create-panel > summary::before {
  content:'▶';
  color:#0b5d9b;
  font-size:.75rem;
}
.docuhub-create-panel[open] > summary::before { transform:rotate(90deg); }
.docuhub-create-panel > summary strong { white-space:nowrap; }
.docuhub-create-panel > summary .muted { min-width:0; line-height:1.35; }
.docuhub-create-panel > .form-grid {
  padding:0 18px 12px;
}
.docuhub-create-panel > .actions {
  padding:0 18px 18px;
}
.admin-main h1,.admin-main h2,.admin-main h3,.admin-main h4,.admin-dialog h2,.admin-dialog h3,.admin-main details > summary > strong { text-transform:capitalize; }
.admin-back-btn:disabled { opacity:.48; cursor:not-allowed; }
.task-form-grid { margin-top:18px; }
.task-form-grid .field small { display:block; margin-top:6px; color:var(--muted); line-height:1.4; }
.task-workspace { padding:20px; margin:0; }
.task-toolbar { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:18px; }
.task-filter-grid { display:grid; grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(145px,.7fr)); gap:8px; flex:1; }
.task-view-toggle { display:flex; align-items:center; padding:4px; border:1px solid var(--line); border-radius:12px; background:#f4f7fb; }
.task-view-toggle button { border:0; border-radius:9px; background:transparent; color:#5d7189; padding:9px 12px; font:inherit; font-size:.78rem; font-weight:900; cursor:pointer; }
.task-view-toggle button.active { background:#fff; color:#0b4f88; box-shadow:0 2px 8px rgba(14,49,88,.12); }
.task-view { min-width:0; }
.task-list { display:grid; gap:10px; }
.task-card { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:13px; align-items:start; padding:15px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.task-priority-bar { width:7px; min-height:72px; border-radius:999px; background:#75a0c8; }
.task-card.priority-urgent .task-priority-bar { background:#d8404b; }
.task-card.priority-high .task-priority-bar { background:#e3a224; }
.task-card.priority-low .task-priority-bar { background:#78a99a; }
.task-card h3 { margin:0 0 5px; color:#0b315f; font-size:1rem; }
.task-card p { margin:6px 0 0; color:#52677f; line-height:1.45; white-space:pre-wrap; }
.task-card-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.task-chip { display:inline-flex; align-items:center; min-height:24px; padding:4px 8px; border-radius:999px; background:#edf4fb; color:#315c84; font-size:.68rem; font-weight:850; }
.task-chip.overdue { background:#ffebed; color:#a61d2b; }
.task-chip.today { background:#fff1ce; color:#8b5a00; }
.task-chip.complete { background:#e5f7eb; color:#17673d; }
.task-card-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; max-width:230px; }
.task-card-actions button { min-height:34px; padding:7px 9px; border:1px solid var(--line); border-radius:9px; background:#fff; color:#164d7b; font:inherit; font-size:.72rem; font-weight:900; cursor:pointer; }
.task-card-actions button:hover,.task-card-actions button:focus-visible { border-color:#6aa4d6; background:#f1f7fd; outline:none; }
.task-card-actions .task-complete { border-color:#9fd6b4; color:#17673d; background:#f1fbf4; }
.task-card-actions .task-archive { border-color:#f0c6ca; color:#9c2631; }
.task-empty { padding:34px 18px; border:1px dashed #bfd0e1; border-radius:15px; color:var(--muted); text-align:center; background:#fafcff; }
.task-board { display:grid; grid-template-columns:repeat(4,minmax(220px,1fr)); gap:12px; align-items:start; }
.task-board-column { min-width:0; padding:12px; border:1px solid var(--line); border-radius:15px; background:#f5f8fc; }
.task-board-head { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:10px; color:#163f6d; }
.task-board-head span { display:grid; place-items:center; min-width:25px; height:25px; padding:0 6px; border-radius:999px; background:#fff; color:#52708f; font-size:.72rem; font-weight:900; }
.task-board-column .task-list { gap:8px; }
.task-board-column .task-card { grid-template-columns:auto minmax(0,1fr); padding:12px; }
.task-board-column .task-priority-bar { min-height:56px; }
.task-board-column .task-card-actions { grid-column:2; justify-content:flex-start; max-width:none; }
.task-calendar-head { display:flex; justify-content:center; align-items:center; gap:10px; margin-bottom:14px; }
.task-calendar-head h2 { min-width:190px; margin:0; color:#103c6a; font-size:1.18rem; text-align:center; }
.task-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); border:1px solid var(--line); border-radius:15px; overflow:hidden; background:#fff; }
.task-calendar-weekday { padding:9px; border-right:1px solid var(--line); background:#edf4fb; color:#395d80; font-size:.7rem; font-weight:950; text-align:center; text-transform:uppercase; }
.task-calendar-day,.task-calendar-blank { min-height:118px; padding:8px; border-top:1px solid var(--line); border-right:1px solid var(--line); background:#fff; }
.task-calendar-day.today { background:#fffaf0; }
.task-calendar-day-number { display:block; margin-bottom:6px; color:#61758d; font-size:.72rem; font-weight:900; }
.task-calendar-item { display:block; width:100%; margin:4px 0; overflow:hidden; border:0; border-radius:7px; background:#eaf4ff; color:#164f7f; padding:5px 6px; font:inherit; font-size:.66rem; font-weight:800; text-align:left; text-overflow:ellipsis; white-space:nowrap; cursor:pointer; }
.task-calendar-item.urgent { background:#ffeaec; color:#9e1e2b; }
.task-calendar-item.completed { background:#e7f7ec; color:#226a42; text-decoration:line-through; }
@media(max-width:1300px) { .task-metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .task-filter-grid { grid-template-columns:1fr 1fr; } .task-toolbar { align-items:stretch; flex-direction:column; } .task-view-toggle { align-self:flex-start; } }
@media(max-width:1000px) { .task-board { grid-template-columns:1fr 1fr; } }
@media(max-width:680px) {
  .task-metric-grid { grid-template-columns:1fr 1fr; }
  .task-filter-grid,.task-board { grid-template-columns:1fr; }
  .task-view-toggle { width:100%; }
  .task-view-toggle button { flex:1; }
  .task-card { grid-template-columns:auto minmax(0,1fr); }
  .task-card-actions { grid-column:2; justify-content:flex-start; max-width:none; }
  .task-editor-panel > summary { align-items:flex-start; flex-wrap:wrap; }
  .task-editor-panel > summary .muted { width:100%; padding-left:25px; }
  .task-calendar-grid { display:grid; grid-template-columns:1fr; border:0; gap:8px; background:transparent; overflow:visible; }
  .task-calendar-weekday,.task-calendar-blank { display:none; }
  .task-calendar-day { min-height:0; border:1px solid var(--line); border-radius:12px; }
  .task-calendar-day:not(.has-tasks):not(.today) { display:none; }
  .task-calendar-head { flex-wrap:wrap; }
  .task-calendar-head h2 { order:-1; width:100%; }
}
.tree-registry-privacy{margin-bottom:16px;padding:13px 15px;border:1px solid #f1d383;border-radius:14px;background:#fff8e4;color:#725200;line-height:1.5}
.tree-registry-workspace{padding:20px;margin:0}
.tree-registry-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}
.tree-registry-filters{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,.7fr)) minmax(150px,.7fr);gap:8px;flex:1}
.tree-registry-list{display:grid;gap:10px}
.tree-registry-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff;cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--ink)}
.tree-registry-card:hover,.tree-registry-card:focus-visible{border-color:#6ea9df;background:#f8fbff;outline:none}
.tree-registry-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e8f7ee;color:#167245;font-size:1.25rem}
.tree-registry-card h3{margin:0 0 4px;color:#0b3768}.tree-registry-card p{margin:4px 0;color:var(--muted)}
.tree-registry-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tree-registry-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;background:#edf4fb;color:#315c84;font-size:.68rem;font-weight:900}
.tree-registry-badge.verified{background:#e4f8eb;color:#14653b}.tree-registry-badge.pending{background:#fff1cb;color:#805300}.tree-registry-badge.rejected{background:#ffeaec;color:#9c2631}.tree-registry-badge.producing{background:#e7f7f2;color:#0b6d51}
.tree-registry-estimate{text-align:right}.tree-registry-estimate strong,.tree-registry-estimate small{display:block}.tree-registry-estimate strong{color:#0d4d83}.tree-registry-estimate small{margin-top:4px;color:var(--muted)}
.tree-map-key{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px;color:var(--muted);font-size:.75rem;font-weight:800}.tree-map-key span{display:flex;align-items:center;gap:5px}.tree-map-key i{width:10px;height:10px;border-radius:50%;background:#e4a92f}.tree-map-key i.verified{background:#19905b}.tree-map-key i.rejected{background:#cb3946}
.tree-map-verification-note{color:#5d7289;font-size:.72rem}
.admin-tree-registry-map{height:min(68vh,680px);min-height:460px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#eaf2f7}
.map-expanded{position:fixed!important;inset:14px!important;z-index:3000!important;background:#fff!important;padding:14px!important;border-radius:18px!important;box-shadow:0 30px 90px rgba(5,22,48,.35)!important;overflow:auto!important}
.map-expanded .field-intelligence-map-layout{height:calc(100vh - 120px)}
.map-expanded .field-intelligence-private-map,.map-expanded .admin-tree-registry-map{height:calc(100vh - 150px)!important;min-height:520px!important}
.tree-map-popup{min-width:210px}.tree-map-popup h3{margin:0 0 5px;color:#0b3768}.tree-map-popup p{margin:4px 0;color:#52677f}.tree-map-popup button{margin-top:8px;border:0;border-radius:9px;background:#1764e8;color:#fff;padding:8px 10px;font-weight:900;cursor:pointer}
.tree-registry-dialog{width:min(1180px,calc(100% - 24px))}
.tree-registry-dialog-body{max-height:calc(90vh - 82px);overflow-y:auto;padding:18px}
.tree-detail-status{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.tree-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:16px;align-items:start}
.tree-detail-form{min-width:0}.tree-detail-side{display:grid;gap:12px}
.tree-detail-side .context-card{margin:0;padding:15px;border:1px solid var(--line);border-radius:14px;background:#f9fbfe}.tree-detail-side .context-card h3{margin:0 0 10px;color:#0d3c6b}
.tree-private-contact{display:grid;gap:6px}.tree-private-contact a{color:#0d5e9b;font-weight:850;overflow-wrap:anywhere}
.tree-event-list{display:grid;gap:7px;margin-top:10px}.tree-event{padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff}.tree-event strong,.tree-event small{display:block}.tree-event small{margin-top:3px;color:var(--muted)}
.btn.good{background:#e6f8ed;color:#17673e;border:1px solid #9fd4b3}
.production-requirements-card{border-top:4px solid #1764e8}
.production-requirements-table td small{display:block;margin-top:3px;color:#60758d;max-width:220px}
.production-requirements-table .requirement-gap{color:#a61e2c;background:#fff3f3}
.production-requirements-table .requirement-covered{color:#087443;background:#edfbf4}
@media(max-width:1300px){.tree-registry-filters{grid-template-columns:1fr 1fr 1fr}.tree-detail-layout{grid-template-columns:1fr}}
@media(max-width:760px){.tree-registry-workspace{padding:14px}.tree-registry-toolbar{align-items:stretch;flex-direction:column}.tree-registry-filters{grid-template-columns:1fr}.tree-registry-card{grid-template-columns:auto minmax(0,1fr)}.tree-registry-estimate{grid-column:2;text-align:left}.admin-tree-registry-map{min-height:480px;height:68vh}.tree-registry-dialog-body{padding:12px}.tree-registry-dialog{width:calc(100% - 10px);max-height:96vh}.tree-registry-dialog .form-grid{grid-template-columns:1fr}.tree-registry-dialog .field.full{grid-column:1}.tree-detail-form>.actions{display:grid;grid-template-columns:1fr 1fr}.tree-detail-form>.actions .btn{width:100%}}
.surface-card { border-radius: 18px; background: #fff; }
.admin-table-wrap { border: 0; border-radius: 18px; }
.admin-table { min-width: 1040px; }
.admin-table td { background: #fff; }
.admin-table tr:hover td { background: #fbfdff; }
.client-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 16px; }
.client-grid-modern .client-card { border: 1px solid var(--line); border-radius: 18px; background: #fff; padding: 18px; box-shadow: var(--soft-shadow); position: relative; overflow: hidden; }
.client-grid-modern .client-card:before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, var(--blue), var(--gold)); }
.client-card strong { display:block; font-size:1.08rem; color: var(--ink); }
.client-card p { color: #334155; }
.client-card .btn { width: 100%; }
.client-card-actions.portal-actions { justify-content:flex-start; margin-top:12px; }
.client-card-actions .farmer-action-btn { min-width:52px; }
@media(max-width:520px) { .client-card-actions.portal-actions { gap:7px; } }
.crop-admin-line { border: 1px solid var(--line); border-radius: 14px; padding: 12px; margin: 0 0 10px; background:#fff; box-shadow: 0 5px 16px rgba(15,47,95,.04); }
.crop-status-form { display:flex; gap:8px; align-items:center; margin-top:10px; flex-wrap:wrap; }
.crop-status-form select { min-width:150px; }
.crop-status-form input { min-width:220px; flex:1; }
.status-log { margin-top:8px; background:#f5f8fc; border-radius:10px; padding:8px; }
.logline { font-size:.82rem; color:#59697f; margin:3px 0; }
.library-list { display:grid; gap:12px; margin-top:16px; }
.library-item { border:1px solid var(--line); border-radius:16px; background:#fff; padding:0; box-shadow: var(--soft-shadow); overflow:visible; }
.library-summary { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:9px; align-items:center; min-width:0; padding:14px; cursor:pointer; list-style:none; }
.library-summary::-webkit-details-marker { display:none; }
.library-summary::before { content:'▶'; color:#0b5d9b; font-size:.74rem; transition:transform .18s; }
.library-item[open]>.library-summary::before { transform:rotate(90deg); }
.library-summary-main { min-width:0; line-height:1.4; }
.library-summary-main .muted { overflow-wrap:anywhere; }
.library-quick-actions { display:flex; gap:6px; align-items:center; justify-content:flex-end; }
.library-quick-actions.task-card-actions { max-width:none; margin-top:0; }
.library-quick-actions.task-card-actions button { min-width:0; white-space:nowrap; }
.library-icon-btn { position:relative; display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; padding:0; border:1px solid #cddbec; border-radius:10px; background:#fff; color:#164d82; cursor:pointer; font:900 1rem/1 system-ui; box-shadow:0 3px 10px rgba(15,47,95,.06); }
.library-icon-btn:hover,.library-icon-btn:focus-visible { border-color:#71a9dc; background:#edf6ff; outline:none; transform:translateY(-1px); }
.library-icon-btn.save { color:#08783b; border-color:#b9dfc8; background:#f1fbf5; }
.library-icon-btn.ai { color:#6b4700; border-color:#f0cf7c; background:#fff8e7; }
.library-icon-btn.queue { color:#315b8c; }
.library-icon-btn.delete { color:#a42424; border-color:#efc8c8; background:#fff7f7; }
.library-icon-btn:disabled { opacity:.65; cursor:wait; transform:none; }
.library-icon-btn::after { content:attr(data-tooltip); position:absolute; left:50%; bottom:calc(100% + 8px); z-index:30; padding:6px 8px; border-radius:7px; background:#08234a; color:#fff; font:700 .72rem/1.2 system-ui; white-space:nowrap; opacity:0; pointer-events:none; transform:translate(-50%,4px); transition:opacity .15s,transform .15s; }
.library-icon-btn:hover::after,.library-icon-btn:focus-visible::after { opacity:1; transform:translate(-50%,0); }
.library-icon-btn:last-child::after { right:0; left:auto; transform:translateY(4px); }
.library-icon-btn:last-child:hover::after,.library-icon-btn:last-child:focus-visible::after { transform:translateY(0); }
.library-form { padding:14px; border-top:1px solid var(--soft-line); }
.library-form>.form-grid,.library-form .price-baseline-panel .form-grid,.library-form .value-add-panel .form-grid { align-items:start; }
.library-form .field { align-self:start; }
.library-form .library-planning-grid { grid-template-columns:minmax(0,1fr); }
.library-planning-grid .compact-field { width:min(100%,320px); }
.library-form textarea { min-height:70px; }
.library-form textarea.compact-memo { min-height: 62px; resize: vertical; line-height: 1.45; }
.library-status-row { display:grid; grid-template-columns:minmax(160px,260px); gap:5px; margin-top:14px; }
.library-status-row label { color:#506987; font-size:.76rem; font-weight:900; }
.queue-help { margin: 10px 0 0; font-size: .86rem; }
.new-library-product-panel { margin:14px 0 18px; padding:0; overflow:hidden; }
.new-library-product-panel>summary { display:flex; justify-content:space-between; gap:14px; padding:17px 19px; cursor:pointer; list-style:none; }
.new-library-product-panel>summary::-webkit-details-marker { display:none; }
.new-library-product-body { padding:18px 19px; border-top:1px solid var(--soft-line); }
.new-library-product-body .actions { margin-bottom:0; }
@media(max-width:700px) {
  .library-summary { grid-template-columns:auto minmax(0,1fr); }
  .library-quick-actions { grid-column:2; justify-content:flex-start; }
  .library-icon-btn { flex-basis:32px; width:32px; height:32px; }
  .new-library-product-panel>summary { align-items:flex-start; flex-direction:column; }
}
.custom-brand-logo {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  color: transparent !important;
}
.branding-settings-grid { display: grid; grid-template-columns: minmax(210px, .7fr) minmax(0, 1.3fr); gap: 20px; align-items: start; }
.branding-preview { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(135deg, #0f2f5f, #173f78); color: #fff; }
.branding-preview strong { display: block; }
.branding-preview small { display: block; max-width: 240px; margin-top: 3px; color: #c9dcf4; overflow-wrap: anywhere; }
.nav-alert-badge { min-width: 20px; height: 20px; margin-left: auto; padding: 0 6px; border-radius: 999px; display: inline-grid; place-items: center; background: #ffbe3d; color: #4f3200; font-size: .72rem; font-weight: 900; }
.nav-alert-badge[hidden] { display: none; }
.global-search-hidden { display: none !important; }
.settings-card + .settings-card { margin-top: 18px; }
.settings-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); grid-template-areas:"branding ai" "map ai" "security users" "audit audit" "database database"; gap:18px; align-items:start; }
.settings-layout .settings-card { min-width:0; margin:0; }
.settings-branding-card { grid-area:branding; }
.settings-map-card { grid-area:map; }
.settings-ai-card { grid-area:ai; }
.settings-account-security-card { grid-area:security; }
.settings-user-access-card { grid-area:users; }
.settings-audit-card { grid-area:audit; }
.audit-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) minmax(140px,auto) auto; gap:10px; align-items:center; margin:12px 0; }
.audit-table td small { overflow-wrap:anywhere; }
.pagination-row { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin-top:12px; }
.field-doctor-card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:14px; }
.field-doctor-case-card { display:grid; gap:10px; padding:14px; border:1px solid #dbe7f5; border-radius:18px; background:#fff; box-shadow:0 8px 22px rgba(11,45,87,.06); cursor:pointer; }
.field-doctor-case-card:hover,.field-doctor-case-card:focus-visible { border-color:#9fc4e8; box-shadow:0 14px 30px rgba(11,45,87,.1); }
.field-doctor-case-card-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.field-doctor-case-card p { margin:0; color:#405a76; line-height:1.4; }
.field-doctor-case-card small { display:block; color:var(--muted); margin-top:3px; }
.settings-database-card { grid-area:database; }
.database-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:16px 0 20px; }
.database-summary-item { min-width:0; padding:14px; border:1px solid var(--line); border-radius:14px; background:#f8fbff; }
.database-summary-item span,.database-summary-item small { display:block; color:var(--muted); }
.database-summary-item strong { display:block; margin:4px 0; color:var(--navy); font-size:1.15rem; overflow-wrap:anywhere; }
.backup-run-status { min-width:88px; font-weight:900; text-transform:capitalize; }
.backup-run-status.success { color:var(--good); }
.backup-run-status.failed { color:var(--bad); }
.backup-run-status.running { color:var(--warn); }
[data-requires-permission][hidden],.tab[hidden],.side-nav-group[hidden] { display:none!important; }
#settingsTab .branding-settings-grid { grid-template-columns:1fr; }
#settingsTab .branding-preview { width:100%; }
.diagnostics-card { display:flex; align-items:baseline; gap:5px; min-width:0; padding:15px 16px; border:1px solid var(--line); border-radius:15px; background:#fff; box-shadow:var(--soft-shadow); }
.diagnostics-card span { flex:0 0 auto; color:var(--muted); font-size:.82rem; font-weight:850; }
.diagnostics-card strong { min-width:0; color:var(--navy); overflow-wrap:anywhere; }
.diagnostics-details-card { padding:18px; }
.diagnostics-details-card h2 { margin:0 0 14px; }
.client-dialog-body { padding:18px; }
.client-dialog-body .actions { margin-bottom:0; }
.ai-assistant-dialog { width:min(820px,calc(100% - 28px)); }
.ai-assistant-body { display:grid; gap:14px; max-height:calc(90vh - 80px); padding:18px; overflow-y:auto; }
.ai-assistant-examples { display:flex; flex-wrap:wrap; gap:8px; }
.ai-assistant-examples button { border:1px solid #cddbec; border-radius:999px; background:#f5f9ff; color:#164d82; padding:8px 11px; cursor:pointer; font-weight:800; }
.ai-assistant-examples button:hover,.ai-assistant-examples button:focus-visible { border-color:#71a9dc; background:#eaf4ff; outline:none; }
.ai-assistant-messages { display:grid; gap:10px; min-height:180px; max-height:340px; padding:12px; overflow-y:auto; border:1px solid var(--line); border-radius:16px; background:#f7faff; }
.ai-assistant-empty { align-self:center; color:var(--muted); text-align:center; }
.ai-assistant-message { max-width:92%; padding:12px 14px; border-radius:16px; box-shadow:0 4px 12px rgba(15,47,95,.05); }
.ai-assistant-message > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:7px; }
.ai-assistant-message > header > strong { font-size:.78rem; }
.ai-copy-response { border:0; border-radius:8px; padding:4px 7px; background:#edf4fc; color:#145289; cursor:pointer; font:inherit; font-size:.72rem; font-weight:800; }
.ai-copy-response:hover,.ai-copy-response:focus-visible { background:#dbeeff; outline:2px solid #8bc2ee; }
.ai-assistant-message-content { overflow-wrap:anywhere; line-height:1.55; }
.ai-assistant-message-content p { margin:0 0 9px; }
.ai-assistant-message-content p:last-child { margin-bottom:0; }
.ai-assistant-message-content h3,.ai-assistant-message-content h4,.ai-assistant-message-content h5 { margin:14px 0 7px; color:#092d58; line-height:1.25; }
.ai-assistant-message-content h3:first-child,.ai-assistant-message-content h4:first-child,.ai-assistant-message-content h5:first-child { margin-top:0; }
.ai-assistant-message-content ul,.ai-assistant-message-content ol { margin:7px 0 10px; padding-left:22px; }
.ai-assistant-message-content li { margin:4px 0; }
.ai-assistant-message-content code { border-radius:5px; padding:2px 5px; background:#edf2f8; color:#163f68; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.9em; }
.ai-assistant-message-content blockquote { margin:9px 0; padding:8px 11px; border-left:3px solid #68a5d6; background:#f3f8fd; color:#3e5874; }
.ai-record-link { display:inline-flex; align-items:baseline; gap:3px; color:#075fa8; font-weight:800; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px; }
.ai-record-link:hover,.ai-record-link:focus-visible { color:#003c75; text-decoration-thickness:2px; outline:none; }
.ai-record-link span { font-size:.72em; text-decoration:none; }
.ai-markdown-table-wrap { max-width:100%; margin:10px 0; overflow-x:auto; }
.ai-markdown-table { width:100%; border-collapse:collapse; font-size:.86rem; }
.ai-markdown-table th,.ai-markdown-table td { padding:8px 9px; border:1px solid #d8e4f0; text-align:left; vertical-align:top; }
.ai-markdown-table th { background:#edf5fc; color:#123e69; }
.ai-assistant-message > footer { margin-top:9px; padding-top:7px; border-top:1px solid #e5edf5; color:var(--muted); font-size:.7rem; }
.ai-assistant-message.user { justify-self:end; background:#155fd7; color:#fff; border-bottom-right-radius:5px; }
.ai-assistant-message.assistant { justify-self:start; background:#fff; color:var(--ink); border:1px solid #d9e5f3; border-bottom-left-radius:5px; }
.ai-assistant-actions { margin:0; align-items:end; }
.ai-export-control { display:flex; align-items:end; gap:7px; padding:5px; border:1px solid #d8e4f2; border-radius:12px; background:#f7faff; }
.ai-export-control label { align-self:center; margin-left:5px; color:#526b87; font-size:.76rem; font-weight:900; }
.ai-export-control select { min-width:150px; border:1px solid #cddbec; border-radius:9px; padding:8px 9px; background:#fff; color:var(--ink); font:inherit; }
.admin-deep-link-highlight { animation:nugrowDeepLinkPulse 1s ease-in-out 3; outline:4px solid rgba(25,115,210,.32)!important; outline-offset:3px; }
@keyframes nugrowDeepLinkPulse { 0%,100%{box-shadow:0 0 0 0 rgba(25,115,210,.15)} 50%{box-shadow:0 0 0 10px rgba(25,115,210,.16)} }
@media(max-width:650px) { .ai-export-control { width:100%; flex-wrap:wrap; } .ai-export-control select { flex:1; min-width:130px; } }
@media(max-width:1100px) {
  .settings-layout { grid-template-columns:1fr; grid-template-areas:"branding" "map" "ai" "security" "users" "audit" "database"; }
  .database-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px) { .database-summary-grid { grid-template-columns:1fr; } }
.crop-admin-details { margin-top:10px; border-top:1px solid var(--soft-line); padding-top:8px; }
.crop-admin-details summary { cursor:pointer; color:var(--navy); }
.price-admin-grid { display:grid; grid-template-columns:1fr 100px 1fr; gap:10px; margin-top:10px; }
.price-admin-grid .full { grid-column:1/-1; }
.document-box { margin-top:12px; border:1px solid var(--line); border-radius:14px; background:#fff; padding:12px; }
.document-box h4 { margin:0 0 8px; }
.upload-grid { display:grid; grid-template-columns:1.1fr 1.3fr auto; gap:8px; margin-top:10px; }
.docline { font-size:.9rem; padding:6px 0; border-bottom:1px solid var(--soft-line); }
.docline a { font-weight:850; color:var(--navy); }


/* PDGPlan v47 admin layout hardening */
.admin-shell { width: 100%; align-items: stretch; background: #f2f5fa; }
.admin-shell[style*="display: block"] { display: grid !important; }
.admin-main { background: #f2f5fa; min-height: 100vh; overflow-x: hidden; }
.admin-sidebar { width: 252px; max-width: 252px; overflow-y: auto; }
.admin-topbar { left: 252px; }
.admin-page-section { background: #f2f5fa; min-height: calc(100vh - 78px); }
@media (min-width: 721px) {
  .admin-shell { display: grid !important; grid-template-columns: 252px minmax(0, 1fr) !important; }
  .admin-sidebar { grid-column: 1; grid-row: 1; }
  .admin-main { grid-column: 2; grid-row: 1; }
}
@media (max-width: 720px) {
  .admin-sidebar { width: 100%; max-width: none; }
  .admin-topbar { left: auto; }
}

/* Public request page refinements */
body:not(.admin-body) .hero-card { border-top: 5px solid var(--blue); }
body:not(.admin-body) .card { border-radius: 22px; }
body:not(.admin-body) .card-header { background: linear-gradient(180deg, #fff, #fbfdff); }
body:not(.admin-body) table th { background: #f4f8ff; }

@media (max-width: 720px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar {
    position: sticky;
    top: 0;
    z-index: 30;
    height: auto;
    min-height: 0;
    padding: 10px 14px;
    overflow: visible;
    box-shadow: 0 10px 28px rgba(4,24,55,.18);
  }
  .sidebar-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  .sidebar-brand { padding: 0; margin: 0; border: 0; min-width: 0; }
  .sidebar-brand .logo { width: 42px; height: 42px; border-radius: 12px; }
  .sidebar-brand strong { font-size: .96rem; white-space: nowrap; }
  .sidebar-brand small { font-size: .72rem; white-space: nowrap; }
  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 11px;
    background: rgba(255,255,255,.1);
    color: #fff;
    font: inherit;
    font-weight: 850;
    cursor: pointer;
  }
  .mobile-menu-toggle:hover,
  .mobile-menu-toggle:focus-visible { background: rgba(255,255,255,.18); outline: 2px solid rgba(157,204,255,.7); outline-offset: 2px; }
  .mobile-menu-icon {
    position:relative;
    width:18px;
    height:14px;
    display:inline-block;
  }
  .mobile-menu-icon::before {
    content:"";
    position:absolute;
    left:0;
    top:1px;
    width:18px;
    height:2px;
    border-radius:999px;
    background:currentColor;
    box-shadow:0 5px 0 currentColor, 0 10px 0 currentColor;
  }
  .sidebar-menu-content { display: none; padding-top: 12px; }
  .admin-sidebar.mobile-menu-open .sidebar-menu-content { display: flex; max-height: calc(100vh - 72px); overflow-y: auto; }
  .side-nav { grid-template-columns: 1fr; }
  .side-nav .tab { padding: 11px 12px; }
  .side-footer { grid-template-columns: repeat(2, 1fr); margin-top: 12px; }
  .side-footer .version-pill { grid-column: 1 / -1; }
  .admin-topbar { position: relative; flex-direction: column; align-items: stretch; padding: 14px 16px; }
  .section-intro { flex-direction: column; align-items: stretch; }
  .toolbar-actions { justify-content: flex-start; }
}
@media (max-width: 900px) {
  .hero-card, .main-grid { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .topbar { align-items: flex-start; flex-direction: column; }
  .card-header { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 720px) {
  .branding-settings-grid { grid-template-columns: 1fr; }
  .library-form .actions { display: grid; grid-template-columns: 1fr 1fr; }
  .library-form .actions > * { width: 100%; margin: 0; }
  .library-form .libResearchStatus { grid-column: 1 / -1; }
  .queue-help { font-size: .82rem; }
}
@media(max-width:760px) {
  .crop-status-form{display:block}.crop-status-form>*{width:100%;margin-top:6px}
  .price-admin-grid,.upload-grid{grid-template-columns:1fr}.price-combo{grid-template-columns:1fr 80px}
  .side-nav { grid-template-columns: 1fr; }
  .top-actions, .toolbar-actions { flex-direction: column; align-items: stretch; }
  .toolbar-actions select, .toolbar-actions input { min-width: 0; width: 100%; }
  .admin-page-section { padding: 24px 16px 44px; }
}

/* Mobile request cards: replace the wide desktop table with readable sections. */
@media (max-width: 720px) {
  #requestsTab .surface-card,
  #requestsTab .admin-table-wrap { background: transparent; overflow: visible; border-radius: 0; }
  .requests-table {
    display: block;
    width: 100%;
    min-width: 0 !important;
    border: 0;
    border-collapse: separate;
  }
  .requests-table thead { display: none; }
  .requests-table tbody { display: grid; gap: 16px; width: 100%; }
  .requests-table tbody tr {
    display: block;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--soft-shadow);
  }
  .requests-table tbody td {
    display: block;
    width: 100% !important;
    max-width: 100%;
    padding: 14px 16px !important;
    box-sizing: border-box;
    border: 0 !important;
    border-bottom: 1px solid var(--soft-line) !important;
    background: #fff;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .requests-table tbody td:last-child { border-bottom: 0 !important; }
  .requests-table tbody td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 8px;
    color: #60738d;
    font-size: .7rem;
    font-weight: 950;
    letter-spacing: .09em;
    line-height: 1.2;
    text-transform: uppercase;
  }
  .requests-table .request-empty-row td::before { display: none; }
  .requests-table .crop-admin-line {
    width: 100%;
    max-width: 100%;
    margin-bottom: 12px;
    overflow: hidden;
    overflow-wrap: anywhere;
  }
  .requests-table .crop-admin-line:last-child { margin-bottom: 0; }
  .requests-table .crop-admin-line > div,
  .requests-table .crop-admin-details,
  .requests-table .farmer-allocation-details,
  .requests-table .document-box { min-width: 0; max-width: 100%; }
  .requests-table .allocation-summary { grid-template-columns: 1fr; }
  .requests-table .request-actions { display: grid; gap: 10px; }
  .requests-table .request-actions .btn,
  .requests-table .request-actions select { width: 100%; margin: 0; }
  .requests-table input,
  .requests-table select,
  .requests-table textarea { max-width: 100%; min-width: 0; }
}

/* PDGPlan v47 client UX */
.client-body { background:#eef3f9; }
.client-appbar { min-height:76px; padding:16px 24px; display:flex; align-items:center; justify-content:space-between; gap:18px; background:rgba(255,255,255,.9); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:20; backdrop-filter: blur(12px); }
.client-appbar-actions { display:flex; align-items:center; gap:12px; }
.client-shell { width:min(1240px, calc(100% - 32px)); margin:28px auto 0; }
.client-hero-panel { background:linear-gradient(135deg,#0f2f5f,#173f78); color:#fff; border-radius:28px; padding:34px; box-shadow:var(--shadow); display:grid; grid-template-columns:1.4fr .65fr; gap:22px; align-items:center; }
.client-hero-panel .lead, .client-hero-panel .muted { color:#c9dcf4; }
.client-hero-panel .eyebrow { color:#74bdff; }
.compact-metrics .metric { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.18); color:#fff; box-shadow:none; }
.compact-metrics .metric strong { color:#fff; }
.wizard-grid { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:20px; align-items:start; margin-top:20px; }
.modern-form-card { display:grid; gap:16px; }
.step-card { border:1px solid var(--line); background:#fff; border-radius:22px; box-shadow:var(--soft-shadow); padding:20px; }
details.step-card summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:12px; }
details.step-card summary::-webkit-details-marker { display:none; }
details.step-card summary span, .step-number { display:inline-grid; place-items:center; width:34px; height:34px; border-radius:12px; background:#eaf3ff; color:#0f51d3; font-weight:950; margin-right:10px; }
details.step-card summary strong, .step-heading strong { display:block; font-size:1.08rem; }
details.step-card summary small, .step-heading small { display:block; color:var(--muted); margin-top:2px; }
details.step-card[open] summary { margin-bottom:18px; }
.step-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; }
.step-heading > div { display:flex; align-items:center; gap:0; }
.compact-form { gap:14px; }
.voice-panel { display:grid; grid-template-columns:160px minmax(0,1fr); gap:10px; margin-bottom:14px; background:#f7faff; border:1px solid var(--line); border-radius:18px; padding:12px; }
.voice-panel textarea { min-height:54px; resize:vertical; background:#fff; }
.mic-btn { min-height:54px; }
.library-search-row { display:grid; grid-template-columns:minmax(0,1fr) 150px; gap:10px; margin-bottom:12px; }
.modern-chips { max-height:138px; overflow:auto; padding:2px 2px 8px; }
.modern-chips .chip { display:inline-flex; align-items:center; gap:8px; }
.modern-chips .chip small { color:#64748b; font-weight:700; border-left:1px solid var(--line); padding-left:8px; }
.item-cards { display:grid; gap:12px; margin-top:14px; }
.empty-items { border:1px dashed #b9c8dc; border-radius:18px; background:#f8fbff; padding:20px; display:grid; gap:4px; color:var(--muted); }
.empty-items strong { color:var(--ink); }
.demand-card { border:1px solid #d7e2f0; background:#fff; border-radius:20px; padding:16px; box-shadow:0 10px 24px rgba(15,47,95,.06); }
.demand-card-head { display:flex; justify-content:space-between; align-items:start; gap:12px; margin-bottom:14px; }
.demand-card h3 { margin:8px 0 0; font-size:1.3rem; letter-spacing:-.02em; }
.demand-fields { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.demand-fields .field { margin:0; }
.demand-fields input, .demand-fields select { padding:11px 12px; }
.demand-notes { grid-column:span 3; }
.side-stack { display:grid; gap:16px; position:sticky; top:98px; }
.preview-card, .sync-card { border-radius:22px; overflow:hidden; }
.sticky-actions { position:sticky; bottom:12px; background:#fff; border:1px solid var(--line); border-radius:18px; padding:12px; box-shadow:0 14px 28px rgba(15,47,95,.10); }
.modal-card { border:0; border-radius:24px; padding:0; width:min(560px, calc(100% - 28px)); box-shadow:var(--shadow); }
.modal-card::backdrop { background:rgba(7,29,60,.44); backdrop-filter: blur(3px); }
.modal-card form { padding:24px; }
.modal-card h2 { margin:0 0 6px; }
.settings-card { padding:20px; }
.settings-card code { background:#eef3fa; padding:2px 6px; border-radius:6px; }

@media (max-width:1050px){ .wizard-grid{grid-template-columns:1fr}.side-stack{position:relative;top:auto}.client-hero-panel{grid-template-columns:1fr}.demand-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.demand-notes{grid-column:1/-1} }
@media (max-width:680px){ .client-appbar{align-items:flex-start; flex-direction:column}.client-appbar-actions{width:100%; justify-content:space-between}.client-shell{width:min(100% - 20px, 1240px); margin-top:14px}.client-hero-panel{padding:22px; border-radius:20px}.voice-panel,.library-search-row,.demand-fields{grid-template-columns:1fr}.step-heading{align-items:flex-start; flex-direction:column}.sticky-actions .btn{width:100%} }
.previous-request-panel { margin:18px 0; border:1px solid #bfd0e7; background:#ffffff; border-radius:22px; padding:16px 18px; box-shadow:0 12px 26px rgba(15,47,95,.08); display:flex; align-items:center; justify-content:space-between; gap:14px; }
.previous-request-panel strong { display:block; color:var(--ink); font-size:1.05rem; }
.previous-request-panel span { display:block; color:var(--muted); margin-top:3px; }
.previous-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.submitted-list { margin:12px 0; padding-left:20px; color:var(--ink); }
.submitted-list li { margin:6px 0; }
.confirmation-modal > div { padding:24px; }
.confirmation-modal h2 { margin:0 0 8px; }
.request-view-shell { max-width:1100px; }
.compact-hero { min-height:auto; }
.request-view-card { border-radius:24px; overflow:hidden; }
.request-meta-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.request-meta-grid > div { border:1px solid var(--line); border-radius:16px; padding:12px; background:#f8fbff; }
.request-meta-grid span, .request-meta-grid strong { display:block; }
.request-line { background:#fff; }
.btn.mini { padding:8px 10px; border-radius:10px; font-size:.82rem; margin-bottom:8px; display:inline-flex; }
@media (max-width:760px){ .previous-request-panel{align-items:flex-start; flex-direction:column}.previous-actions{justify-content:flex-start}.request-meta-grid{grid-template-columns:1fr} }
@media print { .client-appbar, .footer, .actions { display:none !important; } body { background:#fff; } .client-shell { width:100%; margin:0; } .client-hero-panel { color:#111; background:#fff; border:1px solid #ddd; } }

/* PDGPlan v47 grow schedule report */
.report-summary-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; margin-bottom: 18px; }
.report-kpi { background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px; box-shadow: var(--soft-shadow); }
.report-kpi span { display:block; color:var(--muted); font-size:.86rem; font-weight:800; }
.report-kpi strong { display:block; color:var(--navy); font-size:1.8rem; margin-top:4px; }
.ngg-type-kpi { display:grid; align-content:start; gap:10px; }
.ngg-type-chip-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:8px; }
.ngg-type-chip { display:flex !important; align-items:center; justify-content:space-between; gap:8px; border:1px solid #d8e6f4; border-radius:12px; background:#f8fbff; padding:8px 9px; color:#0b315f !important; font-size:.78rem !important; }
.ngg-type-chip b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ngg-type-chip strong { margin:0; font-size:1rem; color:#0b5ed7; }
.json-preview { max-height:560px; overflow:auto; white-space:pre-wrap; word-break:break-word; background:#07162a; color:#dbeafe; border:1px solid #15345c; border-radius:16px; padding:16px; font-size:.82rem; line-height:1.45; }
.pill { display:inline-flex; align-items:center; gap:6px; border:1px solid var(--line); border-radius:999px; padding:6px 10px; color:var(--navy); background:#f8fbff; font-weight:800; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; }
.ngg-client-batch-row { cursor:pointer; transition:transform .16s ease, box-shadow .16s ease; }
.ngg-client-batch-row td { border-top:8px solid #f6f9fd; vertical-align:middle; }
.ngg-client-batch-row td:first-child { border-radius:16px 0 0 16px; }
.ngg-client-batch-row td:last-child { border-radius:0 16px 16px 0; }
.ngg-client-batch-row:hover td,
.ngg-client-batch-row:focus td { background:#eef7ff; box-shadow:inset 0 0 0 1px #bfdbfe; }
.ngg-client-batch-row:hover { transform:translateY(-1px); }
.ngg-client-batch-row small { display:block; color:var(--muted); margin-top:4px; line-height:1.25; overflow-wrap:anywhere; }
.ngg-client-type-list { display:inline-block; max-width:220px; line-height:1.25; color:#0b2d61; font-weight:800; }
.report-card { padding:18px; margin-bottom:18px; }
.report-header-line { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; margin-bottom:12px; }
.report-header-line h2, .report-card h2 { margin:0 0 4px; color:var(--navy); }
.report-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:14px; }
.report-table { min-width:1500px; }
.report-table th, .compact-report-table th { background:#d9e8f6; color:#051b38; text-align:center; }
.report-table td { text-align:center; vertical-align:middle; }
.report-table td:first-child, .report-table th:first-child { text-align:left; position:sticky; left:0; background:#fff; z-index:2; }
.report-table th:first-child { background:#d9e8f6; z-index:3; }
.month-head small { display:block; color:#475569; font-size:.7rem; margin-top:2px; }
.schedule-month.active { background:#49a935 !important; color:#071606; font-weight:950; }
.report-two-grid { display:grid; grid-template-columns: 1fr 1fr; gap:18px; }
.compact-report-table { min-width:520px; }
@media (max-width: 960px) { .report-two-grid { grid-template-columns:1fr; } }

/* PDGPlan v47 modern grow schedule timeline */
.report-legend { display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:flex-end; font-weight:800; color:#48617f; font-size:.86rem; }
.report-legend span { display:inline-flex; align-items:center; gap:7px; background:#f7fbff; border:1px solid var(--line); border-radius:999px; padding:8px 10px; }
.legend-pill { width:34px; height:12px; border-radius:999px; display:inline-block; box-shadow: inset 0 0 0 1px rgba(255,255,255,.35); }
.legend-pill.crop { background:linear-gradient(90deg,#a7f3d0,#22c55e,#0f766e); }
.legend-pill.livestock { background:linear-gradient(90deg,#bfdbfe,#38bdf8,#2563eb); }
.legend-pill.valueadd { background:linear-gradient(90deg,#fde68a,#f59e0b,#7c3aed); }
.legend-pill.other { background:linear-gradient(90deg,#e2e8f0,#94a3b8,#64748b); }
.legend-dot { width:12px; height:12px; border-radius:50%; display:inline-block; background:#ffc247; box-shadow:0 0 0 4px rgba(255,194,71,.18); }
.report-table { border-collapse:separate; border-spacing:0; background:#fff; }
.report-table th { border-color:#c9d8ea; padding:12px 10px; }
.report-table td { border-color:#e5eef8; padding:10px 8px; }
.report-cycle-cell { max-width:190px; }
.report-compact-text { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; line-height:1.28; max-height:3.85em; text-align:left; cursor:help; }
.report-table tbody tr:hover td { background:#f8fbff; }
.report-table tbody tr:hover td:first-child { background:#f8fbff; }
.report-table td:first-child { min-width:190px; box-shadow:8px 0 14px rgba(11,45,97,.05); }
.mini-type { display:inline-flex; margin-top:5px; border-radius:999px; padding:3px 8px; background:#eef6ff; color:#1d4ed8; font-size:.72rem; font-weight:900; }
.schedule-month { min-width:74px; height:42px; background:linear-gradient(180deg,#fbfdff,#f3f8ff); position:relative; overflow:hidden; }
.schedule-month span { position:relative; z-index:2; display:inline-flex; align-items:center; justify-content:center; min-width:38px; height:22px; padding:0 7px; border-radius:999px; font-size:.68rem; font-weight:950; color:#07311e; opacity:0; }
.schedule-month.active { background:#f4fff8 !important; }
.schedule-month.active::before { content:""; position:absolute; left:-1px; right:-1px; top:50%; height:22px; transform:translateY(-50%); background:linear-gradient(90deg,#9ff3c5 0%, #22c55e 52%, #0f766e 100%); box-shadow:0 8px 18px rgba(16,185,129,.22); }
.schedule-month.livestock.active { background:#f4f9ff !important; }
.schedule-month.livestock.active::before { background:linear-gradient(90deg,#bfdbfe 0%, #38bdf8 52%, #2563eb 100%); box-shadow:0 8px 18px rgba(37,99,235,.18); }
.schedule-month.valueadd.active { background:#fffaf0 !important; }
.schedule-month.valueadd.active::before { background:linear-gradient(90deg,#fde68a 0%, #f59e0b 52%, #7c3aed 100%); box-shadow:0 8px 18px rgba(245,158,11,.18); }
.schedule-month.other.active { background:#f8fafc !important; }
.schedule-month.other.active::before { background:linear-gradient(90deg,#e2e8f0,#94a3b8,#64748b); box-shadow:0 8px 18px rgba(100,116,139,.16); }
.schedule-month.active.start::before { border-top-left-radius:999px; border-bottom-left-radius:999px; left:9px; }
.schedule-month.active.end::before { border-top-right-radius:999px; border-bottom-right-radius:999px; right:9px; }
.schedule-month.active.solo::before { border-radius:999px; left:12px; right:12px; }
.schedule-month.active.start span, .schedule-month.active.solo span { opacity:1; background:rgba(255,255,255,.72); color:#08301f; backdrop-filter:blur(4px); }
.schedule-month.livestock.active.start span, .schedule-month.livestock.active.solo span { color:#0b2d61; }
.schedule-month.valueadd.active.start span, .schedule-month.valueadd.active.solo span { color:#3b0764; }
.report-table .crop-row td:first-child { border-left:4px solid #22c55e; }
.report-table .livestock-row td:first-child { border-left:4px solid #38bdf8; }
.report-table .valueadd-row td:first-child { border-left:4px solid #a855f7; }
.report-table .other-row td:first-child { border-left:4px solid #94a3b8; }
.valueAddFields[hidden] { display:none !important; }
@media (max-width:960px){ .report-header-line{flex-direction:column}.report-legend{justify-content:flex-start}.schedule-month{min-width:64px} }

/* v38 guided client flow inspired by WindBlow visitor check-in */
.visitor-flow-shell { width:min(1180px, calc(100% - 28px)); margin:24px auto 0; }
.visitor-hero-panel { position:relative; overflow:hidden; background:linear-gradient(135deg,#0b2d5b 0%,#144f92 70%,#1f86ff 130%); color:#fff; border-radius:30px; padding:32px; box-shadow:var(--shadow); display:grid; grid-template-columns:minmax(0,1.35fr) 260px; gap:24px; align-items:center; }
.visitor-hero-panel:before { content:""; position:absolute; inset:auto -12% -48% 35%; height:260px; background:radial-gradient(circle,rgba(244,180,63,.30),transparent 62%); pointer-events:none; }
.visitor-hero-panel .hero-copy, .visitor-hero-panel .hero-metrics { position:relative; z-index:1; }
.visitor-hero-panel h1 { color:#fff; font-size:clamp(34px,4.8vw,58px); margin-bottom:14px; }
.visitor-hero-panel .lead { color:#d8e8fb; max-width:760px; }
.hero-badges { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.hero-badges .feature-pill { display:inline-flex; align-items:center; justify-content:center; min-height:36px; margin:0; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.28); color:#eef6ff; padding:8px 12px; border-radius:999px; font-family:inherit; font-size:13px; font-weight:850; line-height:1.2; text-decoration:none; cursor:pointer; box-shadow:none; }
.hero-badges .feature-pill:hover,.hero-badges .feature-pill:focus-visible { background:rgba(255,255,255,.22); border-color:rgba(255,255,255,.58); outline:none; transform:translateY(-1px); }
.feature-info-modal > div { padding:24px; }
.feature-info-modal h2 { margin:7px 0 8px; color:var(--navy); }
.feature-info-modal p { margin:0; color:var(--muted); font-size:1rem; line-height:1.65; }
.visitor-hero-panel .metric { background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.22); backdrop-filter:blur(8px); color:#fff; }
.visitor-hero-panel .metric strong { color:#fff; }
.visitor-hero-panel .metric .muted { color:#d9ebff; }
.flow-card { margin-top:20px; background:rgba(255,255,255,.96); border:1px solid var(--line); border-radius:28px; box-shadow:var(--shadow); overflow:hidden; }
.flow-topline { padding:24px 26px; display:flex; align-items:center; justify-content:space-between; gap:18px; border-bottom:1px solid var(--line); background:linear-gradient(180deg,#ffffff,#f8fbff); }
.flow-topline h2 { margin:2px 0 4px; font-size:clamp(24px,3vw,34px); letter-spacing:-.04em; color:var(--ink); }
.flow-topline p { margin:0; color:var(--muted); }
.stepper { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:0 26px; background:#fff; border-bottom:1px solid var(--line); }
.stepper-dot { appearance:none; border:0; background:transparent; padding:18px 8px; display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted); font-weight:900; border-bottom:4px solid transparent; cursor:pointer; }
.stepper-dot span { display:grid; place-items:center; width:30px; height:30px; border-radius:12px; background:#eef5ff; color:#1f67ff; }
.stepper-dot.active { color:var(--navy); border-bottom-color:var(--blue); }
.stepper-dot.active span { background:linear-gradient(135deg,var(--blue),var(--blue-2)); color:#fff; }
.stepper-dot.complete { color:var(--good); }
.stepper-dot.complete span { background:#e7f8ee; color:var(--good); }
.flow-form { padding:26px; }
.flow-step { display:none; animation:flowFade .18s ease; }
.flow-step.active { display:block; }
@keyframes flowFade { from{opacity:.3; transform:translateY(4px)} to{opacity:1; transform:none} }
.section-intro { display:flex; gap:14px; align-items:flex-start; margin-bottom:20px; }
.section-intro h3 { margin:0 0 4px; font-size:1.45rem; color:var(--ink); letter-spacing:-.03em; }
.section-intro p { margin:0; color:var(--muted); max-width:760px; }
.split-intro { justify-content:space-between; gap:18px; }
.intro-left { display:flex; gap:14px; align-items:flex-start; }
.choice-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.choice-tile { text-align:left; border:1px solid var(--line); border-radius:20px; background:linear-gradient(180deg,#fff,#f8fbff); padding:16px; cursor:pointer; box-shadow:0 8px 18px rgba(15,47,95,.05); transition:.15s ease; }
.choice-tile strong { display:block; color:var(--navy); font-size:1.04rem; margin-bottom:4px; }
.choice-tile span { color:var(--muted); font-size:13px; line-height:1.35; }
.choice-tile:hover, .choice-tile.selected { transform:translateY(-1px); border-color:#8fc5ff; box-shadow:0 12px 24px rgba(31,134,255,.12); }
.choice-tile.selected { background:linear-gradient(135deg,#eef7ff,#fff8e2); }
.visitor-voice { grid-template-columns:150px minmax(0,1fr); }
.flow-actions { margin-top:26px; padding-top:20px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:flex-end; gap:12px; position:sticky; bottom:0; background:rgba(255,255,255,.94); backdrop-filter:blur(10px); z-index:10; }
.review-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr); gap:18px; }
.consent-card { display:flex; gap:12px; align-items:flex-start; border:1px solid #cfe0f4; border-radius:18px; padding:16px; color:#334155; background:#f7fbff; font-size:15px; }
.consent-card input { min-width:20px; width:20px; height:20px; margin-top:1px; }
.submit-summary { margin-top:16px; border:1px solid var(--line); border-radius:20px; background:#fff; padding:16px; }
.submit-summary h4 { margin:0 0 10px; font-size:1.05rem; color:var(--navy); }
.submit-summary ul { margin:0; padding:0; list-style:none; display:grid; gap:8px; }
.submit-summary li { display:flex; justify-content:space-between; gap:14px; border-bottom:1px solid var(--soft-line); padding-bottom:8px; }
.submit-summary li:last-child { border-bottom:0; padding-bottom:0; }
.submit-summary li span { color:var(--muted); text-align:right; }
.submit-summary p { color:var(--muted); margin:12px 0 0; }
.demand-card { border-radius:22px; }
.demand-card-head { background:linear-gradient(135deg,#f7fbff,#fff); margin:-4px -4px 14px; border-radius:18px; padding:10px; }
.empty-items { border:1px dashed #bdd2eb; background:#f7fbff; border-radius:20px; padding:24px; display:grid; gap:4px; color:var(--muted); }
.empty-items strong { color:var(--navy); }
@media (max-width:960px){ .visitor-hero-panel{grid-template-columns:1fr}.review-grid,.choice-tiles{grid-template-columns:1fr}.flow-topline{align-items:flex-start; flex-direction:column}.stepper{grid-template-columns:repeat(2,1fr)} }
@media (max-width:680px){ .visitor-flow-shell{width:min(100% - 18px,1180px); margin-top:14px}.visitor-hero-panel{padding:22px; border-radius:22px}.flow-form,.flow-topline{padding:18px}.stepper{padding:0 12px}.stepper-dot{justify-content:flex-start}.visitor-voice{grid-template-columns:1fr}.flow-actions{justify-content:stretch; flex-wrap:wrap}.flow-actions .btn{flex:1 1 140px}.submit-summary li{flex-direction:column}.submit-summary li span{text-align:left} }

.flow-actions .btn[hidden], button[hidden], .btn[hidden] { display:none !important; }

/* v38 NuGrow foundation additions */
.version-pill{font-size:12px;color:#d9e8ff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 10px;margin-bottom:10px;text-align:center;background:rgba(255,255,255,.06)}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.info-card{border:1px solid rgba(15,47,95,.12);border-radius:18px;padding:16px;background:linear-gradient(135deg,#fff,#f6f9ff)}
.info-card strong{display:block;color:#0f2f5f;margin-bottom:6px}.info-card span{color:#566070;font-size:14px;line-height:1.45}
.diagnostics-json{white-space:pre-wrap;max-height:430px;overflow:auto;background:#081a34;color:#dce9ff;border-radius:16px;padding:18px;font-size:13px;line-height:1.5}
.price-baseline-panel{border:1px solid rgba(205,157,59,.28);background:linear-gradient(135deg,#fffdf7,#f8fbff);border-radius:18px;padding:14px;margin:12px 0}.price-baseline-panel h4{margin:0 0 10px;color:#0f2f5f}
@media(max-width:760px){.info-grid{grid-template-columns:1fr}}

/* PDGPlan v47 farmer allocation cards */
.farmer-allocation-details {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid rgba(47, 117, 189, .18);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(240,247,255,.9), rgba(255,255,255,.95));
  max-width: 100%;
  overflow: hidden;
}
.farmer-allocation-details summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.allocation-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
  position: sticky;
  top: 0;
  z-index: 1;
}
.allocation-summary span {
  background: #fff;
  border: 1px solid rgba(15, 47, 95, .12);
  border-radius: 12px;
  padding: 10px;
}
.allocation-summary strong { display: block; margin-top: 2px; }
.allocation-list { display: grid; gap: 10px; }
.allocation-card {
  border: 1px solid rgba(15, 47, 95, .12);
  border-radius: 16px;
  background: #fff;
  padding: 12px;
  margin-top: 10px;
  max-width: 100%;
  overflow: hidden;
}
.allocation-add { background: #f8fbff; }
.allocation-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(15, 47, 95, .08);
  margin-bottom: 10px;
}
.allocation-row > .allocation-card-head { cursor: pointer; list-style: none; margin-bottom: 0; border-bottom: 0; }
.allocation-row > .allocation-card-head::-webkit-details-marker { display: none; }
.allocation-row[open] > .allocation-card-head { margin-bottom: 10px; border-bottom: 1px solid rgba(15, 47, 95, .08); }
.compact-allocation-empty { margin: 8px 0 10px; padding: 10px 12px; }
.openAllocationDialog { width: 100%; margin-top: 10px; }
.allocation-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 10px;
}
.allocation-card-grid label {
  display: grid;
  gap: 5px;
  color: #526783;
  font-size: 12px;
  font-weight: 700;
}
.allocation-card-grid label.wide { grid-column: span 2; }
.allocation-card input, .allocation-card select {
  width: 100%;
  min-height: 40px;
  border: 1px solid #d6e2f3;
  border-radius: 10px;
  padding: 8px 10px;
  background: #fff;
  font-size: 14px;
}
.allocation-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding-top: 12px;
}
.block { display: block; }
.badge.good { background: #dcfce7; color: #047857; }
.btn.danger { background: #fff1f2; color: #be123c; border-color: #fecdd3; }
@media (max-width: 1100px) {
  .allocation-summary { grid-template-columns: 1fr; position: static; }
  .allocation-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .allocation-card-grid label.wide { grid-column: span 2; }
}
@media (max-width: 700px) {
  .allocation-row .allocation-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .allocation-row .allocation-card-grid label.wide { grid-column: 1 / -1; }
  .allocation-card-head { flex-direction: column; }
  .allocation-actions { justify-content: stretch; }
  .allocation-actions .btn { width: 100%; }
  .requests-table .allocation-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    position: static;
  }
  .requests-table .allocation-summary span { padding: 8px 6px; font-size: .72rem; text-align: center; }
  .requests-table .allocation-summary strong { font-size: .82rem; line-height: 1.25; overflow-wrap: anywhere; }
  .requests-table .price-admin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .requests-table .price-admin-grid .field.full,
  .requests-table .price-admin-grid > .btn { grid-column: 1 / -1; }
  .requests-table .crop-status-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
  }
  .requests-table .crop-status-form > * { width: 100%; margin: 0; min-width: 0; }
  .requests-table .crop-status-form .cropStatusNote { grid-column: 1 / -1; }
  .requests-table .crop-status-form .saveCropStatus { grid-column: 2; grid-row: 1; width: auto; }
}

.admin-dialog {
  width: min(760px, calc(100% - 28px));
  max-height: 90vh;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 22px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 30px 90px rgba(4,24,55,.3);
}
.admin-dialog::backdrop { background: rgba(5,22,48,.62); backdrop-filter: blur(3px); }
.admin-dialog-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--line);
  background: #f8fbff;
}
.admin-dialog-head h2 { margin: 4px 0 0; }
.dialog-close {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  color: var(--navy);
  font-size: 1.5rem;
  cursor: pointer;
}
#farmerAssignmentDialogBody { max-height: calc(90vh - 80px); padding: 16px; overflow-y: auto; }
.allocation-dialog-form { margin: 0; border: 0; box-shadow: none; }
.allocation-dialog-crop { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; padding: 10px 12px; border-radius: 12px; background: #eef6ff; }
.allocation-dialog-crop span,
.allocation-dialog-crop small { color: var(--muted); }
.allocation-dialog-form .allocation-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.allocation-dialog-form .allocation-card-grid label.wide { grid-column: 1 / -1; }
body:has(.admin-dialog[open]) { overflow: hidden; }
@media (max-width: 520px) {
  .admin-dialog { width: calc(100% - 16px); max-height: 94vh; border-radius: 18px; }
  #farmerAssignmentDialogBody { max-height: calc(94vh - 76px); padding: 12px; }
  .admin-dialog-head { padding: 14px; }
  .allocation-dialog-form .allocation-card-grid { gap: 8px; }
  .allocation-dialog-form .allocation-actions { display: grid; grid-template-columns: 1fr 1fr; }
}

.message-admin-list { display:grid; gap:12px; }
.message-recipient-row { display:grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap:12px; align-items:center; padding:10px; border:1px solid var(--line, #d8e3f3); border-radius:14px; margin-top:8px; background:#fff; }
.message-recipient-row small { display:block; color:var(--muted, #5f708a); margin-top:2px; }
.btn.tiny { padding:8px 10px; font-size:12px; }
@media (max-width: 820px) { .message-recipient-row { grid-template-columns: 1fr; } }

.created-links-panel { margin-top: 14px; display: grid; gap: 10px; }
.created-link-list { display: grid; gap: 10px; }
.created-link-row { display: grid; grid-template-columns: minmax(180px, .8fr) minmax(260px, 1.5fr) auto; gap: 10px; align-items: center; padding: 12px; border: 1px solid var(--line, #d8e3f3); border-radius: 16px; background: #fff; }
.created-link-row small { display:block; color: var(--muted, #5f708a); margin-top: 3px; }
.link-output { width: 100%; font-size: 13px; padding: 10px 12px; border: 1px solid var(--line, #d8e3f3); border-radius: 12px; background: #f8fbff; color: #1b3354; }
.link-actions { display:flex; gap:8px; flex-wrap:wrap; }
@media (max-width: 900px) { .created-link-row { grid-template-columns: 1fr; } }

.request-view-toggle { display:inline-flex; gap:6px; padding:4px; border:1px solid var(--line); border-radius:16px; background:#f7fbff; }
.request-view-toggle .btn { padding:9px 12px; border-radius:12px; }
.request-view-toggle .btn.active { background:#123d70; color:#fff; border-color:#123d70; }
.toolbar-actions .task-view-toggle { align-self:center; }
.request-crop-lines summary { display:grid; grid-template-columns:auto minmax(0,1fr); gap:9px; align-items:center; cursor:pointer; color:#183b66; }
.request-crop-lines summary strong { padding:5px 8px; border-radius:999px; background:#eaf4ff; color:#174f86; font-size:.74rem; }
.request-crop-lines summary span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#62758d; }
.request-crop-lines[open] summary { margin-bottom:10px; }
.request-board { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:14px; align-items:start; }
.request-board-column { min-width:0; padding:12px; border:1px solid var(--line); border-radius:18px; background:#f6f9fd; }
.request-board-head { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:10px; color:#173d6c; }
.request-board-head span { display:grid; place-items:center; min-width:28px; height:28px; padding:0 7px; border-radius:999px; background:#fff; color:#516c88; font-size:.78rem; font-weight:950; }
.request-board-cards { display:grid; gap:10px; }
.request-board-card { display:grid; gap:9px; padding:13px; border:1px solid #dbe7f5; border-radius:16px; background:#fff; box-shadow:0 8px 22px rgba(11,45,87,.06); }
.request-board-card-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.request-board-card small { color:var(--muted); }
.request-board-card p { margin:0; color:#405a76; line-height:1.4; }
.request-board-card details summary { cursor:pointer; color:#174f86; font-weight:900; }
.request-board-lines { display:grid; gap:10px; margin-top:10px; }
.request-board-card .request-actions { display:flex; flex-wrap:wrap; gap:8px; }
.client-grid.client-list-view { grid-template-columns:1fr; }
.client-grid.client-list-view .client-card { display:grid; grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) minmax(120px,.6fr) auto; gap:12px; align-items:center; }
.client-grid.client-list-view .client-card > p,
.client-grid.client-list-view .client-card > .muted { margin:0; }


.portal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.farmer-action-btn { position:relative; display:grid; place-items:center; flex:0 0 auto; min-width:44px; height:38px; padding:0 8px; border:1px solid #cddbec; border-radius:11px; background:#fff; color:#164d82; cursor:pointer; font:900 .72rem/1 system-ui; box-shadow:0 3px 10px rgba(15,47,95,.06); }
.farmer-action-btn.resetFarmerPortalPinBtn { font-size:.68rem; letter-spacing:.04em; color:#8a5b00; border-color:#f3d28a; background:#fffaf0; }
.farmer-action-btn:hover,.farmer-action-btn:focus-visible { border-color:#71a9dc; background:#edf6ff; outline:none; transform:translateY(-1px); }
.farmer-action-btn.disable { color:#a42424; border-color:#efc8c8; background:#fff7f7; }
.farmer-action-btn.enable { color:#08783b; border-color:#b9dfc8; background:#f1fbf5; }
.farmer-action-btn::after { content:attr(data-tooltip); position:absolute; left:50%; bottom:calc(100% + 8px); z-index:35; padding:6px 8px; border-radius:7px; background:#08234a; color:#fff; font:700 .72rem/1.2 system-ui; white-space:nowrap; opacity:0; pointer-events:none; transform:translate(-50%,4px); transition:opacity .15s,transform .15s; }
.farmer-action-btn:hover::after,.farmer-action-btn:focus-visible::after { opacity:1; transform:translate(-50%,0); }
.portal-actions .farmer-action-btn:last-child::after { right:0; left:auto; transform:translateY(4px); }
.portal-actions .farmer-action-btn:last-child:hover::after,.portal-actions .farmer-action-btn:last-child:focus-visible::after { transform:translateY(0); }

/* v60: Requests become true mobile cards before the table starts overflowing. */
@media (max-width: 1200px) {
  #requestsTab {
    padding-right: 12px;
    padding-left: 12px;
  }
  #requestsTab .section-intro {
    align-items: stretch;
    flex-direction: column;
  }
  #requestsTab .toolbar-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  #requestsTab .toolbar-actions #searchBox {
    grid-column: 1 / -1;
  }
  #requestsTab .toolbar-actions > * {
    width: 100%;
    min-width: 0;
    margin: 0;
  }
  #requestsTab .surface-card,
  #requestsTab .admin-table-wrap {
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  #requestsTab .requests-table {
    display: block;
    width: 100%;
    min-width: 0 !important;
    border: 0;
  }
  #requestsTab .requests-table thead {
    display: none;
  }
  #requestsTab .requests-table tbody {
    display: grid;
    width: 100%;
    gap: 16px;
  }
  #requestsTab .requests-table tbody tr {
    display: block;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--soft-shadow);
  }
  #requestsTab .requests-table tbody td {
    display: block;
    width: 100% !important;
    max-width: 100%;
    padding: 13px 15px !important;
    overflow-wrap: anywhere;
    border: 0 !important;
    border-bottom: 1px solid var(--soft-line) !important;
    background: #fff;
    white-space: normal;
  }
  #requestsTab .requests-table tbody td:last-child {
    border-bottom: 0 !important;
  }
  #requestsTab .requests-table tbody td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 7px;
    color: #60738d;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  #requestsTab .crop-admin-line {
    display: grid;
    width: 100%;
    min-width: 0;
    gap: 12px;
    margin: 0 0 12px;
    padding: 12px;
    overflow: visible;
    border: 1px solid #dbe7f5;
    border-radius: 15px;
    background: #f8fbff;
  }
  #requestsTab .crop-admin-line:last-child {
    margin-bottom: 0;
  }
  #requestsTab .crop-admin-line > *,
  #requestsTab .crop-admin-details,
  #requestsTab .farmer-allocation-details,
  #requestsTab .document-box,
  #requestsTab .price-admin-grid {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  #requestsTab .crop-admin-details summary,
  #requestsTab .farmer-allocation-details summary {
    overflow-wrap: anywhere;
    white-space: normal;
  }
  #requestsTab .price-admin-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #requestsTab .price-admin-grid .field.full,
  #requestsTab .price-admin-grid > .btn {
    grid-column: 1 / -1;
  }
  #requestsTab .allocation-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    position: static;
  }
  #requestsTab .request-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  #requestsTab .request-actions select {
    grid-column: 1 / -1;
  }
  #requestsTab .request-actions > *,
  #requestsTab input,
  #requestsTab select,
  #requestsTab textarea,
  #requestsTab .btn {
    min-width: 0;
    max-width: 100%;
  }
}
@media (max-width: 520px) {
  #requestsTab .toolbar-actions,
  #requestsTab .request-actions,
  #requestsTab .price-admin-grid,
  #requestsTab .allocation-summary,
  #requestsTab .crop-status-form {
    grid-template-columns: 1fr;
  }
  #requestsTab .toolbar-actions > *,
  #requestsTab .request-actions > *,
  #requestsTab .crop-status-form > *,
  #requestsTab .crop-status-form .saveCropStatus,
  #requestsTab .crop-status-form .cropStatusNote {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }
}

/* NuGrow Genesis v48 supply item composer */
.supply-items-panel-v48{border:1px solid #dbe7f5;background:#f8fbff;border-radius:18px;padding:14px;margin:12px 0;display:grid;gap:10px}
.supply-items-head-v48{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.composer-textarea.mini{min-height:58px}
.selected-supply-items-v48{display:grid;gap:8px}
.supply-item-row-v48{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #dbe7f5;background:#fff;border-radius:14px;padding:10px 12px}
.supply-item-row-v48 strong{display:block}.supply-item-row-v48 small{color:#60738d}.supply-item-card-v48{border:1px solid #dbe7f5;background:#fff;border-radius:16px;padding:12px;margin:10px 0}.supply-item-card-v48 .response-grid{margin-top:8px}

/* NuGrow Genesis v49: Messenger layout and response visibility fixes */
.messenger-v40{
  grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(260px,300px) !important;
  height:auto !important;
  min-height:0 !important;
  align-items:start !important;
}
.messenger-col{min-width:0 !important;}
.messenger-thread-v40{display:grid !important;grid-template-rows:auto auto auto !important;overflow:visible !important;}
.thread-body-v40{min-height:220px !important;max-height:360px !important;overflow:auto !important;}
.thread-composer-v40{overflow:visible !important;max-height:none !important;}
.composer-panel-v40,.supply-items-panel-v48{min-width:0 !important;}
.composer-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.composer-grid input,.composer-grid select,.composer-textarea{min-width:0 !important;width:100% !important;box-sizing:border-box !important;}
.composer-textarea.mini{min-height:54px !important;}
.supply-items-panel-v48{padding:12px !important;margin:10px 0 !important;}
.supply-item-card-v48{justify-self:stretch !important;width:auto !important;max-width:100% !important;}
.supply-item-card-head-v49{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px;}
.supply-response-card-v49{width:auto !important;max-width:100% !important;justify-self:stretch !important;}
@media (max-width:1300px){
  .messenger-v40{grid-template-columns:280px minmax(0,1fr) !important;}
  .context-panel-v40{grid-column:1 / -1 !important;}
}
@media (max-width:850px){
  .messenger-v40{grid-template-columns:1fr !important;}
  .composer-grid{grid-template-columns:1fr !important;}
  .thread-body-v40{max-height:none !important;}
}

/* v63 Menu Demand Scanner */
.menu-scanner-warning{margin-bottom:16px;padding:13px 16px;border:1px solid #ffd47c;border-radius:15px;background:#fff8e6;color:#745000;font-weight:700}
.menu-scan-create{margin-bottom:18px;padding:0;overflow:visible}
.menu-scan-create>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px 20px;cursor:pointer;list-style:none}
.menu-scan-create>summary::-webkit-details-marker{display:none}
.menu-scan-create-body{padding:0 20px 20px;border-top:1px solid var(--soft-line)}
.menu-scan-create-body .form-grid{padding-top:18px}
.menu-scanner-workspace{display:grid;grid-template-columns:minmax(240px,290px) minmax(0,1fr);gap:16px;align-items:start}
.menu-scan-sidebar{padding:16px}
.menu-scan-sidebar{position:sticky;top:16px}
.menu-scan-sidebar .section-mini-head{align-items:flex-start}
.menu-scan-sidebar .section-mini-head h2{margin:2px 0 0}
.menu-scan-list{display:grid;gap:9px;margin-top:12px;max-height:70vh;overflow:auto}
.menu-scan-list-card{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#f9fcff;cursor:pointer;text-align:left}
.menu-scan-list-card.active,.menu-scan-list-card:hover{border-color:#8bbcff;background:#eaf4ff}
.menu-scan-list-card strong{color:#08234a}.menu-scan-list-card small{color:#60738d}
.menu-scan-content{min-width:0}
.menu-scan-empty-state{display:grid;place-items:center;min-height:300px;padding:38px;text-align:center}
.menu-scan-empty-state[hidden],.menu-scan-selected-workspace[hidden]{display:none}
.menu-scan-empty-state h2{margin:8px 0 0}.menu-scan-empty-state p{max-width:520px;margin:0 0 8px;color:var(--muted);line-height:1.55}
.menu-scan-empty-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#eaf4ff;color:#0b5d9b;font-size:30px;font-weight:900}
.menu-scan-selected-workspace{display:grid;gap:16px}
.menu-scan-review{min-width:0;padding:0}
.menu-scan-review-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:18px;border-bottom:1px solid var(--line)}
.menu-scan-review-head h2{margin:0}.menu-scan-review-head p{margin:5px 0 0}
.menu-scan-items{display:grid;gap:12px;padding:16px}
.menu-item-editor{border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden}
.menu-item-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;background:#f7fbff;cursor:pointer;list-style:none}
.menu-item-editor-head::-webkit-details-marker{display:none}.menu-item-editor-head::before{content:'▶';flex:0 0 auto;color:#0b5d9b;font-size:.8rem;transition:transform .18s}.menu-item-editor[open]>.menu-item-editor-head::before{transform:rotate(90deg)}.menu-item-editor[open]>.menu-item-editor-head{border-bottom:1px solid var(--line)}
.menu-item-editor-body{display:grid;gap:12px;padding:14px}
.menu-item-core{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px}
.menu-item-core label,.menu-ingredient-grid label,.menu-planning-fields label{display:grid;gap:5px;color:#506987;font-size:.76rem;font-weight:900}
.menu-ingredient-list{display:grid;gap:8px}
.menu-ingredient-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-items:end;padding:12px;border:1px solid #dbe7f5;border-radius:13px;background:#f9fcff}
.menu-ingredient-name{grid-column:span 2}.menu-ingredient-product{grid-column:span 2}.menu-ingredient-supply{grid-column:span 2}.menu-ingredient-notes{grid-column:span 2}.menu-ingredient-library-state{grid-column:1/-1;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.menu-ingredient-row input,.menu-ingredient-row select{min-width:0;padding:9px}
.menu-item-actions{display:flex;gap:8px;flex-wrap:wrap}
.attention-field{border-color:#d99a00!important;background:#fffaf0!important;box-shadow:0 0 0 2px rgba(217,154,0,.08)}
.menu-demand-workflow{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);padding:0;overflow:hidden}
.menu-demand-overview,.menu-plan-next{min-width:0;padding:20px}
.menu-plan-next{border-left:1px solid var(--line);background:#fbfdff}
.menu-plan-next>h2{margin:3px 0 4px}.menu-plan-next>p{margin:0 0 16px}
.menu-workflow-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}
.menu-workflow-heading h2{margin:3px 0 0}
.menu-demand-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.menu-demand-metric{padding:12px;border:1px solid var(--line);border-radius:14px;background:#f8fbff}
.menu-demand-metric span{display:block;color:#60738d;font-size:.7rem;font-weight:900;text-transform:uppercase}.menu-demand-metric strong{display:block;margin-top:5px;font-size:1.3rem}
.menu-demand-table{margin-top:12px;display:grid;gap:7px}.menu-demand-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--soft-line)}
.menu-planning-fields{display:grid;gap:9px;margin-bottom:12px}
.menu-action-status{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap;margin:0}
.menu-action-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#fff4d8;color:#8a5a00;font-size:.72rem;font-weight:900}
.menu-action-chip.done{background:#dff8ea;color:#08783b}
.menu-action-group{display:grid;gap:8px;padding:14px 0;border-top:1px solid var(--soft-line)}
.menu-action-group.primary-action{border-top:0;padding-top:4px}
.menu-action-group h3{margin:0;font-size:.95rem;color:var(--navy-2)}
.menu-action-group p{margin:0;font-size:.78rem;line-height:1.45}
.menu-action-group>.btn{width:100%}
.menu-conversion-actions{display:grid;grid-template-columns:1fr;gap:8px}.menu-conversion-actions .btn{width:100%}
.menu-review-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#fff4d8;color:#8a5a00;font-size:.72rem;font-weight:900}.menu-review-badge.approved{background:#dff8ea;color:#08783b}
@media(max-width:1200px){.menu-demand-workflow{grid-template-columns:1fr}.menu-plan-next{border-top:1px solid var(--line);border-left:0}.menu-demand-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.menu-scanner-workspace{grid-template-columns:1fr}.menu-scan-sidebar{position:static}.menu-scan-list{max-height:340px}.menu-item-core{grid-template-columns:1fr 1fr}.menu-ingredient-row{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-ingredient-name,.menu-ingredient-product,.menu-ingredient-supply,.menu-ingredient-notes{grid-column:1/-1}}
@media(max-width:560px){.menu-item-core,.menu-ingredient-row,.menu-demand-metrics{grid-template-columns:1fr}.menu-scan-create>summary{align-items:flex-start;flex-direction:column}.menu-ingredient-name,.menu-ingredient-product,.menu-ingredient-supply,.menu-ingredient-notes{grid-column:1}}

/* v7.14: compact, modern Admin mobile shell and shared page toolbars */
.mobile-action-label { display:none; }
@media (max-width:760px) {
  .admin-topbar {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:9px;
    min-height:0;
    padding:10px 12px 12px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 24px rgba(11,45,84,.07);
  }
  .page-search {
    width:100%;
    min-height:44px;
    border-radius:14px;
    padding:0 13px;
    background:#f4f7fb;
    box-shadow:inset 0 0 0 1px rgba(16,72,128,.02);
  }
  .page-search input { min-height:42px; padding:8px 0; font-size:.94rem; }
  .top-actions {
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(0,1fr));
    gap:6px;
    align-items:stretch;
    padding:4px;
    border:1px solid #e0e8f2;
    border-radius:16px;
    background:#eef3f9;
  }
  .top-actions .btn {
    width:100%;
    min-width:0;
    min-height:42px;
    padding:8px 5px;
    border-radius:12px;
    font-size:.76rem;
    line-height:1.05;
    white-space:nowrap;
    box-shadow:none;
  }
  .top-actions .btn.light { border:1px solid #d6e1ee; background:#fff; }
  .top-actions .action-icon { display:none; font-size:1rem; }
  .top-actions .desktop-action-label { display:inline; }
  .top-actions .mobile-action-label { display:none; }
  .top-actions .btn.primary .action-icon { display:inline; }
  .top-actions .admin-back-btn .action-icon { font-size:1.25rem; }

  .admin-page-section { padding:20px 14px 42px; }
  .section-intro {
    gap:13px;
    margin-bottom:16px;
  }
  .section-intro h1 {
    margin:4px 0 5px;
    font-size:clamp(2rem,10vw,2.45rem);
    line-height:1;
    letter-spacing:-.045em;
  }
  .section-intro p { max-width:none; font-size:.92rem; line-height:1.5; }
  .section-intro .toolbar-actions {
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
    gap:8px;
    width:100%;
    margin:0;
    align-items:stretch;
  }
  .section-intro .toolbar-actions > * {
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:42px;
    margin:0;
  }
  .section-intro .toolbar-actions .btn {
    padding:8px 7px;
    border-radius:12px;
    font-size:.76rem;
    line-height:1.15;
    white-space:normal;
    text-align:center;
  }
  .section-intro .toolbar-actions input,
  .section-intro .toolbar-actions select {
    padding:9px 10px;
    border-radius:12px;
    font-size:.82rem;
  }
  #requestsTab .toolbar-actions {
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  #requestsTab .toolbar-actions #searchBox { grid-column:1 / -1; }
  #requestsTab .toolbar-actions #clientFilter { grid-column:1; }
  #requestsTab .toolbar-actions #exportBtn { grid-column:2; min-width:92px; }
  .task-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px; }
  .tree-registry-filters { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px; }
  .tree-registry-filters #treeRegistrySearch { grid-column:1 / -1; }
  .tree-registry-filters input,
  .tree-registry-filters select { min-width:0; width:100%; }

  .command-center-actions {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px;
  }
  .command-center-actions .btn {
    min-width:0;
    min-height:42px;
    padding:9px 8px;
    border-radius:12px;
    font-size:.78rem;
    line-height:1.15;
    white-space:normal;
  }
  .dashboard-quick-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dashboard-quick-action { padding:10px; }
  .surface-card { border-radius:18px; }
}
@media (max-width:360px) {
  .section-intro .toolbar-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #farmersTab .toolbar-actions,
  #libraryTab .toolbar-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dashboard-quick-actions { grid-template-columns:1fr; }
  .task-filter-grid { grid-template-columns:1fr !important; }
}

.report-header-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
}
.compact-report-head { margin-bottom:10px; }
.archive-table td small {
  display:block;
  margin-top:4px;
  color:#61758d;
  font-weight:700;
}
.archive-duplicate-notice,
.menu-duplicate-notice {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.archive-duplicate-notice p {
  margin:4px 0 0;
}
.menu-duplicate-notice {
  margin:10px 0;
  padding:10px;
  border-radius:12px;
}

.docuhub-module-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin:0 0 16px;
}
.docuhub-module-card {
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  min-height:112px;
  padding:18px;
  border:1px solid #d7e3f1;
  border-radius:20px;
  background:#fff;
  color:#0b2343;
  text-align:left;
  box-shadow:0 16px 34px rgba(25,62,110,.08);
}
.docuhub-module-card strong,
.docuhub-module-card small { display:block; }
.docuhub-module-card small { color:#5f728a; line-height:1.35; margin-top:3px; }
.docuhub-module-card em {
  min-width:34px;
  padding:7px 10px;
  border-radius:999px;
  background:#eef5ff;
  color:#155fd7;
  font-style:normal;
  font-weight:900;
  text-align:center;
}
.docuhub-module-card.active { border-top:5px solid #1769ff; }
.docuhub-module-card.muted-card { opacity:.68; }
.docuhub-icon {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:#155fd7;
  color:white;
  font-weight:900;
  font-size:.82rem;
}
.docuhub-workspace { padding:18px; }
.docuhub-toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:space-between;
  align-items:center;
  margin-bottom:14px;
}
.docuhub-toolbar input {
  min-width:260px;
  flex:1;
  max-width:440px;
}
.docuhub-layout {
  display:grid;
  grid-template-columns:minmax(230px,310px) minmax(0,1fr);
  gap:16px;
}
.docuhub-file-list {
  display:grid;
  gap:10px;
  max-height:760px;
  overflow:auto;
  padding-right:4px;
}
.docuhub-file-card {
  display:grid;
  gap:4px;
  width:100%;
  padding:14px;
  border:1px solid #d7e3f1;
  border-radius:16px;
  background:linear-gradient(145deg,#ffffff 0%,#f7fbff 54%,#edf5ff 100%);
  color:#0b2343;
  text-align:left;
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 10px 22px rgba(14,55,104,.08);
  transform:translateY(0) scale(1);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.docuhub-file-card.active {
  border-color:#1769ff;
  background:linear-gradient(145deg,#ffffff 0%,#eaf3ff 60%,#ddecff 100%);
  box-shadow:inset 4px 0 0 #1769ff, 0 16px 30px rgba(23,105,255,.16);
}
.docuhub-file-card:hover,
.docuhub-file-card:focus-visible {
  border-color:#8dbcf0;
  background:linear-gradient(145deg,#ffffff 0%,#eff7ff 58%,#e2f0ff 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 18px 34px rgba(14,55,104,.16);
  transform:translateY(-4px) scale(1.01);
  outline:none;
}
.docuhub-file-card small { color:#5f728a; }
.docuhub-detail {
  min-height:360px;
  border:1px solid #d7e3f1;
  border-radius:20px;
  background:#fff;
  padding:18px;
}
.docuhub-detail-head {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:14px;
}
.docuhub-detail-head h2 { margin:4px 0; }
.docuhub-summary-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  margin-bottom:16px;
}
.docuhub-summary-grid div {
  padding:12px;
  border:1px solid #e0e9f4;
  border-radius:14px;
  background:linear-gradient(145deg,#ffffff 0%,#f7fbff 54%,#edf5ff 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 10px 22px rgba(14,55,104,.07);
  transform:translateY(0);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.docuhub-summary-grid div:hover {
  border-color:#a9cdf3;
  background:linear-gradient(145deg,#ffffff 0%,#f0f7ff 58%,#e4f0ff 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 16px 30px rgba(14,55,104,.14);
  transform:translateY(-3px);
}
.docuhub-summary-grid span { display:block; color:#657891; font-weight:800; font-size:.78rem; }
.docuhub-summary-grid strong { color:#0b2343; font-size:1.02rem; }
.docuhub-workflow-tracker {
  margin:0 0 16px;
  padding:14px;
  border:1px solid #d7e3f1;
  border-radius:18px;
  background:linear-gradient(180deg,#f8fbff,#fff);
}
.docuhub-workflow-tracker ol {
  position:relative;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:10px;
  margin:12px 0 0;
  padding:0;
  list-style:none;
}
.docuhub-workflow-tracker li {
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:center;
}
.docuhub-workflow-tracker li > span {
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:999px;
  border:2px solid #d7e3f1;
  background:#fff;
  color:#61758d;
  font-weight:900;
  font-size:.82rem;
}
.docuhub-workflow-tracker li.complete > span {
  border-color:#22a06b;
  background:#e9fbf2;
  color:#057346;
}
.docuhub-workflow-tracker li.active > span {
  border-color:#f2b233;
  background:#fff7df;
  color:#8a5b00;
}
.docuhub-workflow-tracker button {
  min-height:54px;
  padding:10px 12px;
  border:1px solid #d7e3f1;
  border-radius:14px;
  background:linear-gradient(145deg,#ffffff,#f8fbff);
  color:#0b2343;
  text-align:left;
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 9px 18px rgba(15,47,95,.07);
  transform:translateY(0);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.docuhub-workflow-tracker button:hover,
.docuhub-workflow-tracker button:focus-visible {
  border-color:#9ec7ef;
  background:linear-gradient(145deg,#ffffff,#eff7ff);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 16px 30px rgba(15,47,95,.14);
  transform:translateY(-3px);
  outline:none;
}
.docuhub-workflow-tracker li.complete button { border-color:#b9efd3; background:linear-gradient(145deg,#ffffff,#f0fff6); }
.docuhub-workflow-tracker li.complete button:hover,
.docuhub-workflow-tracker li.complete button:focus-visible { border-color:#7ed9aa; box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 16px 30px rgba(17,126,80,.15); }
.docuhub-workflow-tracker li.active button { border-color:#ffe0a4; background:linear-gradient(145deg,#ffffff,#fff7e8); }
.docuhub-workflow-tracker li.active button:hover,
.docuhub-workflow-tracker li.active button:focus-visible { border-color:#ffc760; box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 16px 30px rgba(155,102,0,.15); }
.docuhub-workflow-tracker strong,
.docuhub-workflow-tracker small { display:block; }
.docuhub-workflow-tracker small {
  margin-top:3px;
  color:#657891;
  font-weight:800;
  font-size:.78rem;
}
.docuhub-detail-grid {
  display:grid;
  grid-template-columns:minmax(210px,260px) minmax(0,1fr) minmax(220px,280px);
  gap:14px;
}
.docuhub-section-toc,
.docuhub-side-panel {
  display:grid;
  gap:9px;
  align-content:start;
}
.docuhub-section-toc button {
  padding:12px;
  border:1px solid #d7e3f1;
  border-radius:14px;
  background:linear-gradient(145deg,#ffffff,#f7fbff);
  color:#0b2343;
  text-align:left;
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 8px 18px rgba(15,47,95,.06);
  transform:translateY(0);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.docuhub-section-toc button.active {
  border-color:#1769ff;
  background:linear-gradient(145deg,#ffffff,#eaf3ff);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 13px 26px rgba(23,105,255,.14);
}
.docuhub-section-toc button:hover,
.docuhub-section-toc button:focus-visible {
  border-color:#8dbcf0;
  background:linear-gradient(145deg,#ffffff,#eef7ff);
  box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 16px 30px rgba(15,47,95,.13);
  transform:translateY(-3px);
  outline:none;
}
.docuhub-section-toc small { display:block; color:#657891; margin-top:4px; }
.docuhub-source-links {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:7px;
}
.docuhub-source-link,
.docuhub-source-muted {
  display:inline-flex;
  align-items:center;
  max-width:100%;
  min-height:28px;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid #cfe0f2;
  background:#f6faff;
  color:#0b4d93;
  font:inherit;
  font-size:.78rem;
  font-weight:900;
  line-height:1.2;
  text-align:left;
  overflow-wrap:anywhere;
}
.docuhub-source-link {
  cursor:pointer;
}
.docuhub-source-link:hover,
.docuhub-source-link:focus-visible {
  border-color:#1769ff;
  background:#eaf3ff;
  color:#073a77;
  outline:none;
}
.docuhub-source-muted {
  color:#657891;
  background:#f7f9fc;
}
.docuhub-section-editor textarea {
  font-family:ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
}
.docuhub-section-helper {
  margin:0 0 12px;
  padding:11px 13px;
  border:1px solid #d7e3f1;
  border-radius:14px;
  background:#f8fbff;
  color:#4f6680;
  line-height:1.4;
}
.docuhub-friendly-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:12px;
  row-gap:14px;
  align-items:start;
  margin-bottom:12px;
}
.docuhub-friendly-form .field {
  margin:0;
  align-self:start;
}
.docuhub-friendly-form .field > span,
.docuhub-combo-field label > span {
  min-height:18px;
  line-height:1.25;
}
.docuhub-combo-field {
  display:grid;
  gap:8px;
  align-self:start;
}
.docuhub-combo-field label {
  display:grid;
  gap:7px;
}
.docuhub-other-field {
  display:none !important;
}
.docuhub-other-field.show {
  display:grid !important;
}
.docuhub-friendly-form .field.full {
  grid-column:1 / -1;
}
.docuhub-friendly-form textarea,
.docuhub-friendly-form input,
.docuhub-friendly-form select {
  width:100%;
  min-height:44px;
}
.docuhub-friendly-form textarea {
  font-family:inherit;
  min-height:86px;
}
.docuhub-advanced-data {
  margin:8px 0 14px;
  border:1px dashed #c8d8ea;
  border-radius:14px;
  padding:10px 12px;
  background:#fbfdff;
}
.docuhub-advanced-data summary {
  cursor:pointer;
  color:#0b4d93;
  font-weight:900;
}
.docuhub-advanced-data textarea {
  margin-top:10px;
  font-family:ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
}
.docuhub-side-panel {
  border-left:1px solid #e0e9f4;
  padding-left:14px;
}
.docuhub-side-panel h3 { margin:4px 0 0; }
.mini-row {
  display:grid;
  gap:3px;
  padding:9px;
  border:1px solid #e0e9f4;
  border-radius:12px;
  background:#f8fbff;
}
.mini-row span { color:#657891; font-size:.86rem; }
.compact-btn { padding:6px 9px !important; min-height:auto !important; width:max-content; }
.empty-state.compact { padding:18px; min-height:auto; }

.ai-report-builder-shell {
  display:grid;
  gap:18px;
}
.ai-report-description {
  padding:20px;
  border:1px solid #cfe0f2;
  border-radius:20px;
  background:linear-gradient(145deg,#ffffff,#eef7ff);
  box-shadow:0 14px 32px rgba(15,47,95,.08);
}
.ai-report-description h2 { margin:5px 0 8px; }
.ai-report-description p { max-width:980px; margin:0; color:#516982; line-height:1.55; }
.ai-report-studio-tabs {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.ai-report-studio-tabs button {
  border:1px solid #cfe0f2;
  background:#fff;
  color:#31516f;
  border-radius:999px;
  padding:9px 13px;
  font-weight:900;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.ai-report-studio-tabs button.active {
  background:#0b5ed7;
  color:#fff;
  border-color:#0b5ed7;
  box-shadow:0 10px 22px rgba(11,94,215,.18);
}
.ai-report-studio-tabs button:disabled { opacity:.55; }
.ai-report-studio-tabs button:hover:not(:disabled) {
  transform:translateY(-1px);
  border-color:#87b7ea;
  box-shadow:0 10px 20px rgba(15,47,95,.10);
}
.ai-report-flow {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ai-report-flow div {
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 10px;
  align-items:start;
  padding:14px;
  border:1px solid #d7e3f1;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f8fbff);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-flow div:hover {
  transform:translateY(-2px);
  border-color:#9bc6ef;
  box-shadow:0 14px 28px rgba(15,47,95,.10);
}
.ai-report-flow span {
  grid-row:1 / 3;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#0b5ed7;
  color:#fff;
  font-weight:950;
}
.ai-report-flow strong { color:#0b2343; }
.ai-report-flow small { color:#5c718a; line-height:1.35; }
.ai-report-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.ai-report-grid .field.full { grid-column:1 / -1; }
.ai-report-generate-panel {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px;
  border:2px solid #0b5ed7;
  border-radius:20px;
  background:linear-gradient(145deg,#eef6ff,#ffffff);
  box-shadow:0 16px 34px rgba(11,94,215,.12);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-generate-panel:hover {
  transform:translateY(-2px);
  border-color:#074fbd;
  box-shadow:0 22px 42px rgba(11,94,215,.18);
}
.ai-report-generate-panel h3 { margin:3px 0 6px; color:#0b2343; }
.ai-report-generate-panel p { margin:0; color:#516982; line-height:1.45; max-width:850px; }
.ai-report-generate-panel .btn { white-space:nowrap; }
.ai-report-template-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
}
.ai-report-template-card {
  display:grid;
  gap:8px;
  padding:15px;
  border:1px solid #ecd9aa;
  border-radius:16px;
  background:linear-gradient(145deg,#fffdf7,#fff6dc);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-template-card:hover {
  transform:translateY(-2px);
  border-color:#d9ae4d;
  box-shadow:0 16px 30px rgba(138,90,0,.14);
}
.ai-report-template-card span {
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#8a5a00;
  color:#fff;
  font-weight:950;
}
.ai-report-template-card strong { color:#3d2a04; }
.ai-report-template-card p { margin:0; color:#6f5a2e; line-height:1.4; }
.ai-report-dataset-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
}
.ai-report-dataset-card {
  display:grid;
  gap:7px;
  padding:15px;
  border:1px solid #d7e3f1;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f8fbff);
  box-shadow:0 10px 22px rgba(15,47,95,.07);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-dataset-card:hover {
  transform:translateY(-2px);
  border-color:#9bc6ef;
  box-shadow:0 16px 32px rgba(15,47,95,.12);
}
.ai-report-dataset-card span {
  color:#075bcc;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ai-report-dataset-card strong { color:#0b2343; }
.ai-report-dataset-card p { margin:0; color:#5c718a; line-height:1.4; }
.ai-report-dataset-card em {
  width:max-content;
  padding:5px 8px;
  border-radius:999px;
  background:#eaf3ff;
  color:#0b4d93;
  font-style:normal;
  font-weight:900;
  font-size:.78rem;
}
.ai-report-draft-preview {
  display:grid;
  gap:18px;
  padding:20px;
  border:1px solid #c9d8ea;
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 38px rgba(15,47,95,.08);
}
.ai-report-preview-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  border-bottom:1px solid #e3edf8;
  padding-bottom:14px;
}
.ai-report-preview-head h2 { margin:4px 0 6px; color:#0b2343; }
.ai-report-preview-head p { margin:0; color:#5c718a; }
.ai-report-draft-preview section {
  display:grid;
  gap:10px;
}
.ai-report-draft-preview h3 { margin:0; color:#0b2d61; }
.ai-report-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
}
.ai-report-kpi-grid div {
  padding:12px;
  border:1px solid #d7e3f1;
  border-radius:14px;
  background:#f8fbff;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-kpi-grid div:hover {
  transform:translateY(-2px);
  border-color:#9bc6ef;
  box-shadow:0 12px 24px rgba(15,47,95,.10);
}
.ai-report-kpi-grid span {
  display:block;
  color:#657891;
  font-size:.78rem;
  font-weight:800;
}
.ai-report-kpi-grid strong {
  display:block;
  margin-top:4px;
  color:#0b2343;
  font-size:1.1rem;
}
.ai-report-opportunity-list {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
}
.ai-report-opportunity-list article {
  display:grid;
  gap:7px;
  border:1px solid #d7e3f1;
  border-radius:16px;
  padding:14px;
  background:#f8fbff;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ai-report-opportunity-list article:hover {
  transform:translateY(-2px);
  border-color:#9bc6ef;
  box-shadow:0 14px 28px rgba(15,47,95,.10);
}
.ai-report-opportunity-list span {
  color:#0b5ed7;
  font-weight:950;
}
.ai-report-opportunity-list p { margin:0; color:#516982; line-height:1.45; }
.ai-report-opportunity-list em { color:#8a5a00; font-style:normal; font-weight:800; }
.numap-workspace {
  display:grid;
  gap:14px;
}
.numap-toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:space-between;
}
.numap-toolbar label {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:8px 10px;
  border:1px solid #d7e3f1;
  border-radius:999px;
  background:#f8fbff;
  color:#14375e;
  font-weight:900;
  font-size:.82rem;
}
.numap-toolbar input[type="text"],
.numap-toolbar #nuMapSearch {
  flex:1;
  min-width:260px;
}
.numap-toolbar select {
  border:0;
  background:transparent;
  color:#0b2343;
  font-weight:900;
  outline:none;
}
.numap-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.numap-canvas {
  min-height:420px;
  height:min(56vh,620px);
  border:1px solid #cfe0f2;
  border-radius:18px;
  overflow:hidden;
  background:#dbeafe;
  box-shadow:0 14px 36px rgba(15,47,95,.12);
}
.numap-workspace.map-expanded {
  position:fixed;
  inset:14px;
  z-index:3000;
  padding:16px;
  background:#fff;
  border-radius:20px;
  box-shadow:0 30px 90px rgba(5,22,48,.35);
  overflow:auto;
}
.numap-workspace.map-expanded .numap-layout {
  grid-template-columns:minmax(0,1fr);
}
.numap-workspace.map-expanded .numap-canvas {
  height:calc(100vh - 250px);
  min-height:520px;
}
.numap-side {
  display:grid;
  gap:12px;
  align-content:start;
}
.numap-side-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.numap-view-toggle {
  justify-self:end;
  white-space:nowrap;
}
.numap-summary,
.numap-point-list {
  display:grid;
  gap:8px;
}
.numap-summary {
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.numap-point-list.is-board {
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}
.numap-point-list.is-list {
  grid-template-columns:1fr;
}
.numap-summary-row,
.numap-point-list button {
  display:grid;
  gap:3px;
  padding:11px;
  border:1px solid #d7e3f1;
  border-radius:14px;
  background:#f8fbff;
  color:#0b2343;
  text-align:left;
}
.numap-point-list button {
  min-height:92px;
  align-content:start;
}
.numap-point-list.is-list button {
  min-height:74px;
}
.numap-summary-row {
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
}
.numap-summary-row i,
.numap-legend i {
  display:inline-block;
  width:11px;
  height:11px;
  background:var(--numap-color,#64748b);
  border-radius:999px;
}
.numap-summary-row i.numap-shape-diamond,
.numap-legend i.numap-shape-diamond { border-radius:3px; transform:rotate(45deg); }
.numap-summary-row i.numap-shape-triangle,
.numap-legend i.numap-shape-triangle {
  width:0;
  height:0;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-bottom:13px solid var(--numap-color,#64748b);
  border-radius:0;
  background:transparent !important;
}
.numap-summary-row i.numap-shape-leaf,
.numap-legend i.numap-shape-leaf { border-radius:999px 0 999px 0; transform:rotate(-35deg); }
.numap-summary-row small {
  grid-column:2 / -1;
  color:#657891;
}
.numap-point-list button {
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.numap-point-list button:hover,
.numap-point-list button:focus-visible {
  border-color:#8dbcf0;
  box-shadow:0 12px 24px rgba(15,47,95,.12);
  transform:translateY(-2px);
  outline:none;
}
.numap-point-list span,
.numap-point-list small { color:#657891; }
.numap-legend {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.numap-legend span {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  border:1px solid #d7e3f1;
  border-radius:999px;
  background:#fff;
  color:#45627f;
  font-size:.78rem;
  font-weight:900;
}
.numap-popup h3 { margin:0 0 5px; color:#0b2343; }
.numap-popup p { margin:4px 0; }
.numap-popup details { margin-top:7px; }
.numap-marker-shell {
  background:transparent;
  border:0;
}
.numap-marker {
  display:grid;
  place-items:center;
  position:relative;
  width:28px;
  height:28px;
  border:3px solid #fff;
  background:var(--numap-color,#64748b);
  color:#fff;
  font-size:.68rem;
  font-weight:950;
  line-height:1;
  box-shadow:0 8px 18px rgba(15,47,95,.26);
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
.numap-marker b {
  display:block;
  position:relative;
  z-index:1;
  font:inherit;
  line-height:1;
}
.numap-marker:hover {
  filter:saturate(1.12);
  transform:translateY(-2px) scale(1.08);
  box-shadow:0 12px 24px rgba(15,47,95,.34);
}
.numap-marker-circle { border-radius:999px; }
.numap-marker-diamond {
  border-radius:5px;
  transform:rotate(45deg);
}
.numap-marker-diamond:hover { transform:rotate(45deg) translateY(-2px) scale(1.08); }
.numap-marker-diamond b {
  transform:rotate(-45deg);
}
.numap-marker-leaf {
  border-radius:999px 0 999px 0;
  transform:rotate(-35deg);
}
.numap-marker-leaf:hover { transform:rotate(-35deg) translateY(-2px) scale(1.08); }
.numap-marker-leaf b { transform:rotate(35deg); }
.numap-marker-triangle {
  border:3px solid #fff;
  border-radius:6px;
  clip-path:polygon(50% 0%, 100% 100%, 0% 100%);
  padding-top:6px;
}

@media (max-width:1100px) {
  .docuhub-layout,
  .docuhub-detail-grid { grid-template-columns:1fr; }
  .docuhub-side-panel { border-left:0; padding-left:0; }
  .docuhub-friendly-form { grid-template-columns:1fr; }
  .ai-report-flow,
  .ai-report-grid,
  .numap-layout { grid-template-columns:1fr; }
  .ai-report-generate-panel { align-items:stretch; flex-direction:column; }
  .ai-report-generate-panel .btn { width:100%; }
  .numap-workspace.map-expanded .numap-layout { grid-template-columns:1fr; }
  .numap-workspace.map-expanded .numap-canvas { height:65vh; min-height:420px; }
}

.ngg-client-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:12px 0}
.ngg-client-review-card{border:1px solid var(--line);border-radius:16px;background:#f8fbff;padding:12px;display:grid;gap:5px}
.ngg-client-review-card strong{color:#08234a}.ngg-client-review-card small{color:#60738d}.ngg-client-review-card p{margin:0;color:#31506f;font-size:.86rem}.ngg-client-json-details{margin-top:12px}.ngg-client-json-details summary{cursor:pointer;font-weight:900;color:#0b5ed7;margin-bottom:8px}


.ngg-client-review-card{position:relative;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.ngg-client-review-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(8,35,74,.08);border-color:#9cc8ff}
.ngg-client-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ngg-client-review-card.imported{background:#f2fff7;border-color:#b7efc8}
.ngg-client-review-card.staged_review{background:#fffaf0;border-color:#f4d58d}
.ngg-client-review-card.error{background:#fff5f5;border-color:#fecaca}
.ngg-client-review-card details{margin-top:6px;border-top:1px solid var(--line);padding-top:8px}
.ngg-client-review-card summary{cursor:pointer;font-weight:900;color:#0b5ed7}
.ngg-client-detail-list{display:grid;gap:6px;margin:8px 0 0}
.ngg-client-detail-list div{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:8px;padding:7px 8px;border:1px solid #e6eef8;border-radius:10px;background:#fff}
.ngg-client-detail-list dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#58708f;font-weight:900}
.ngg-client-detail-list dd{margin:0;color:#08234a;overflow-wrap:anywhere}


.ngg-client-duplicate-warning{display:grid;gap:4px;border:1px solid #f4c542;background:#fff8df;color:#664600;border-radius:12px;padding:8px 10px;font-size:.86rem}
.ngg-client-duplicate-warning strong{color:#7a4b00}
.ngg-client-duplicate-warning span{display:block;overflow-wrap:anywhere}
.ngg-client-review-card.held_review{background:#f8fbff;border-color:#bfdbfe}
.ngg-client-review-card.rejected{background:#fff5f5;border-color:#fecaca;opacity:.9}
.ngg-client-batch-row .btn.danger{margin-left:6px}
.ngg-client-layout{align-items:start}
.ngg-client-batch-filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr) minmax(140px,.7fr);gap:10px;margin:0 0 12px}
.ngg-client-batch-filters input,.ngg-client-batch-filters select{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit}
.ngg-client-batch-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:stretch}
.ngg-client-batch-card{display:grid;gap:10px;align-content:start;cursor:pointer;min-height:260px;padding:16px 18px;border:1px solid #d7e4f2;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(15,47,95,.06);line-height:1.35}
.ngg-client-batch-card .muted{display:block;line-height:1.35}
.ngg-client-batch-card .btn{width:auto}
.ngg-batch-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:2px}
.ngg-batch-card-head strong,.ngg-batch-card-line strong{font-size:1rem;color:#08234a;line-height:1.25}
.ngg-batch-card-line{display:grid;gap:4px;margin-top:2px}
.ngg-batch-card-line small,.ngg-batch-id{color:var(--muted);overflow-wrap:anywhere}
.ngg-batch-id{display:block;font-size:.72rem;line-height:1.35}
.ngg-batch-card-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0}
.ngg-batch-card-meta>span:last-child{font-size:1rem;color:#08234a;text-align:right;line-height:1.25}
.ngg-meta-label{display:inline;color:#60758d;padding:0;font-size:.74rem;font-weight:800;letter-spacing:0;text-transform:none;line-height:1.3;background:transparent;border:0;border-radius:0;min-height:0}
.ngg-meta-label.area{color:#60758d;background:transparent}
.ngg-batch-status{color:#506987;font-size:.72rem;font-weight:900;text-transform:uppercase;white-space:nowrap}
.ngg-batch-card-head .ngg-meta-label{flex:0 0 auto}
.ngg-client-type-list{display:block;max-width:none;margin:4px 0 0;line-height:1.35}
.ngg-client-batch-actions{margin-top:auto;justify-content:flex-start;gap:8px}
.ngg-client-batch-actions .btn,.ngg-client-review-card .actions .btn,.ngg-client-duplicate-warning .btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border-radius:10px;padding:7px 10px;font-size:.72rem;font-weight:950;text-decoration:none;box-shadow:none}
.ngg-client-batch-actions .btn.light,.ngg-client-review-card .actions .btn.light,.ngg-client-duplicate-warning .btn.light{background:#fff;color:#0b315f;border:1px solid #c9dced}
.ngg-client-batch-actions .btn.danger,.ngg-client-review-card .actions .btn.danger{background:#fff3f3;color:#b4232f;border:1px solid #ffc6cc}
.ngg-batch-received{box-shadow:inset 4px 0 0 #60a5fa}
.ngg-batch-reviewed,.ngg-batch-staged_review,.ngg-batch-held_review{box-shadow:inset 4px 0 0 #f4b84e}
.ngg-batch-imported{box-shadow:inset 4px 0 0 #38c86b}
.ngg-batch-error,.ngg-batch-rejected{box-shadow:inset 4px 0 0 #ef4444}
.ngg-client-batch-row.ngg-batch-received td{background:#f4f9ff}
.ngg-client-batch-row.ngg-batch-reviewed td,.ngg-client-batch-row.ngg-batch-staged_review td,.ngg-client-batch-row.ngg-batch-held_review td{background:#fffaf0}
.ngg-client-batch-row.ngg-batch-imported td{background:#f2fff7}
.ngg-client-batch-row.ngg-batch-error td,.ngg-client-batch-row.ngg-batch-rejected td{background:#fff5f5}
.ngg-batch-status{white-space:nowrap}
.ngg-client-duplicate-warning details{border-top:1px solid rgba(122,75,0,.18);padding-top:6px}
.ngg-client-duplicate-warning details:first-of-type{border-top:0;padding-top:0}
.ngg-client-duplicate-warning summary{cursor:pointer;font-weight:900;color:#7a4b00}
.ngg-client-duplicate-detail{display:grid;gap:5px;margin:8px 0}
.ngg-client-duplicate-detail div{display:grid;grid-template-columns:minmax(100px,150px) 1fr;gap:8px;background:#fff;border:1px solid rgba(244,197,66,.45);border-radius:9px;padding:6px 8px}
.ngg-client-duplicate-detail dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:950;color:#865b00}
.ngg-client-duplicate-detail dd{margin:0;color:#4a3500;overflow-wrap:anywhere}
@media(max-width:720px){.ngg-client-batch-filters{grid-template-columns:1fr}.ngg-client-batch-board{grid-template-columns:1fr}}
.buyer-admin-intake-panel { margin:12px 0; border:1px solid #b9d7f1; border-radius:16px; background:#f7fbff; overflow:hidden; }
.buyer-admin-intake-panel > summary { display:flex; justify-content:space-between; gap:12px; padding:13px 15px; cursor:pointer; color:#0b315b; background:#eaf5ff; }
.buyer-admin-intake-panel > summary span { color:#61768b; font-size:.78rem; }
.buyer-admin-intake-actions { display:flex; justify-content:flex-end; padding:12px 14px 0; }
.buyer-admin-intake-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:14px; }
.buyer-admin-intake-group { min-width:0; padding:13px; border:1px solid #d8e5f1; border-radius:13px; background:#fff; }
.buyer-admin-intake-group h4 { margin:0 0 9px; color:#0b315b; }
.buyer-admin-intake-group dl { display:grid; gap:7px; margin:0; }
.buyer-admin-intake-group dl div { display:grid; grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr); gap:9px; padding-bottom:6px; border-bottom:1px solid #edf2f7; }
.buyer-admin-intake-group dt { color:#60758b; font-size:.72rem; font-weight:850; text-transform:uppercase; }
.buyer-admin-intake-group dd { min-width:0; margin:0; color:#173c63; overflow-wrap:anywhere; }
.buyer-intake-edit-dialog { width:min(920px,calc(100vw - 24px)); max-height:90vh; padding:0; border:0; border-radius:20px; }
.buyer-intake-edit-shell { padding:20px; }
.buyer-intake-edit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.buyer-intake-edit-grid .full { grid-column:1/-1; }
.buyer-intake-edit-item { grid-column:1/-1; padding:14px; border:1px solid #d8e5f1; border-radius:14px; background:#f8fbff; }
.buyer-intake-edit-item h4 { margin:0 0 10px; }
.request-modern-list { display:grid; gap:10px; padding:18px; background:#f7fafd; }
.request-modern-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:13px; align-items:start; padding:15px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.request-status-rail { width:7px; min-height:82px; border-radius:999px; background:#3b8fe8; }
.request-modern-row.status-accepted .request-status-rail,.request-modern-row.status-completed .request-status-rail { background:#58a47b; }
.request-modern-row.status-declined .request-status-rail { background:#d84b56; }
.request-modern-row.status-in-production .request-status-rail { background:#e1a225; }
.request-modern-main { min-width:0; }
.request-modern-title { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; color:#0b315f; }
.request-modern-title strong { font-size:1rem; }
.request-modern-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }
.request-modern-meta span { display:inline-flex; padding:4px 8px; border-radius:999px; background:#edf4fb; color:#315c84; font-size:.68rem; font-weight:850; }
.request-modern-main p { margin:9px 0 4px; color:#405a76; line-height:1.4; }
.request-modern-contact { color:#61758d; font-size:.82rem; }
.request-modern-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; max-width:390px; }
.request-modern-board { display:grid; grid-template-columns:repeat(3,minmax(250px,1fr)); gap:14px; padding:18px; background:#f7fafd; }
.request-modern-board-card { position:relative; display:grid; gap:10px; min-width:0; padding:17px; overflow:hidden; border:1px solid #d7e4f1; border-radius:17px; background:#fff; box-shadow:0 8px 22px rgba(11,45,87,.06); }
.request-board-accent { position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,#1f86ff,#f4b43f); }
.request-board-contact,.request-board-products { color:#4e657d; line-height:1.4; }
.request-board-products { min-height:42px; padding:10px; border-radius:11px; background:#f4f8fc; }
.request-board-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding-top:8px; border-top:1px solid #e7eef5; }
.request-board-stats span { color:#61758d; font-size:.72rem; }
.request-board-stats b { display:block; color:#0b315f; font-size:.88rem; }
.request-modern-board-card .request-modern-actions { justify-content:flex-start; max-width:none; }
.request-details-dialog { width:min(1050px,calc(100vw - 24px)); max-height:92vh; padding:0; border:0; border-radius:20px; }
.request-details-shell { padding:21px; }
.request-detail-actions { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; }
.request-detail-products { margin-top:16px; padding:15px; border:1px solid #d8e5f1; border-radius:16px; background:#f7fafd; }
.request-detail-product { margin-top:11px; padding:14px; border:1px solid #d8e5f1; border-radius:14px; background:#fff; }
.request-detail-product-head { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:10px; }
.request-detail-product-head > div { display:flex; align-items:center; gap:8px; }
.request-detail-product dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 14px; margin:0; }
.request-detail-product dl div { display:grid; grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr); gap:8px; padding-bottom:6px; border-bottom:1px solid #edf2f7; }
.request-detail-product dt { color:#61758d; font-size:.7rem; font-weight:900; text-transform:uppercase; }
.request-detail-product dd { margin:0; color:#173c63; overflow-wrap:anywhere; }
@media (max-width:760px) { .buyer-admin-intake-grid,.buyer-intake-edit-grid { grid-template-columns:1fr; } .buyer-admin-intake-group dl div { grid-template-columns:1fr; gap:2px; } }
@media(max-width:1200px){.request-modern-board{grid-template-columns:repeat(2,minmax(240px,1fr))}}
@media(max-width:760px){.request-modern-row{grid-template-columns:auto minmax(0,1fr)}.request-modern-actions{grid-column:2;justify-content:flex-start}.request-modern-board{grid-template-columns:1fr}.request-detail-product dl{grid-template-columns:1fr}}

/* 8.1.23 whole-site agricultural operations design foundation */
:root {
  --forest: #12372a;
  --forest-deep: #0a281e;
  --forest-soft: #285a43;
  --leaf: #38a169;
  --leaf-soft: #e8f4e9;
  --ink: #10233f;
  --navy: #10233f;
  --navy-2: #1f3a5b;
  --navy-3: #081a30;
  --blue: #4f86c6;
  --blue-2: #77a7d9;
  --gold: #d9a441;
  --gold-2: #efc76f;
  --terracotta: #c9684a;
  --bg: #f7f3e9;
  --panel: #fffdf8;
  --surface: #fffdf8;
  --muted: #667469;
  --line: #deddd3;
  --soft-line: #eceae1;
  --good: #2f855a;
  --warn: #b7791f;
  --bad: #b54e3b;
  --shadow: 0 16px 38px rgba(38, 51, 42, .09);
  --soft-shadow: 0 7px 20px rgba(38, 51, 42, .07);
  --page-pad: clamp(18px, 2.2vw, 36px);
}

.admin-body {
  background:
    linear-gradient(rgba(247,243,233,.94), rgba(247,243,233,.94)),
    radial-gradient(circle at 88% 0%, rgba(139,170,123,.22), transparent 31%),
    var(--bg);
  color: var(--ink);
}
.admin-shell { grid-template-columns: 240px minmax(0, 1fr); }
.admin-sidebar {
  width: 240px;
  max-width: 240px;
  padding: 16px 12px;
  background:
    radial-gradient(circle at 10% 0%, rgba(101,190,125,.14), transparent 28%),
    linear-gradient(180deg, var(--forest) 0%, var(--forest-deep) 100%);
  box-shadow: 8px 0 28px rgba(10,40,30,.12);
}
.sidebar-brand { margin-bottom: 15px; padding: 0 7px 15px; border-color: rgba(255,255,255,.12); }
.sidebar-brand .logo {
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: linear-gradient(145deg, #6ac878, #2f855a);
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
}
.sidebar-brand strong { font-size: .98rem; letter-spacing: -.02em; }
.sidebar-brand small { color: #b8d1bd; font-size: .72rem; }
.side-nav { gap: 13px; }
.side-nav-group { gap: 3px; }
.side-nav-heading { padding: 0 10px 4px; color: #8fb29a; font-size: .59rem; letter-spacing: .15em; }
.side-nav .tab {
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #dbe9de;
  font-size: .79rem;
  font-weight: 710;
}
.side-nav .tab:hover { color: #fff; background: rgba(255,255,255,.07); }
.side-nav .tab.active {
  color: #fff;
  background: rgba(255,255,255,.13);
  border-color: rgba(129,205,146,.22);
  box-shadow: inset 3px 0 0 #72d083;
}
.side-nav .tab.active .nav-icon { color: #83dc92; }
.nav-alert-badge { background: var(--gold); color: #2f291a; }
.side-footer { border-color: rgba(255,255,255,.12); }
.version-pill { color: #bfdbc5; background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.12); }

.admin-topbar {
  left: 240px;
  min-height: 68px;
  padding: 11px var(--page-pad);
  background: rgba(255,253,248,.91);
  border-color: #e2e0d7;
  box-shadow: 0 5px 20px rgba(38,51,42,.04);
}
.command-search {
  width: min(520px, 48vw);
  min-height: 42px;
  background: #fff;
  border-color: #d9dacf;
  border-radius: 10px;
  box-shadow: none;
}
.command-search > span { color: var(--forest-soft); font-size: .68rem; letter-spacing: .08em; }
.command-search input { background: transparent; }
.command-search kbd { background: #f2f1e9; border-color: #d9dacf; color: #617067; }
.top-actions { gap: 8px; }

.admin-main { min-width: 0; background: transparent; }
.admin-page-section { padding: 28px var(--page-pad) 44px; }
.admin-page-section > .section-intro:first-child,
.admin-page-section > .section-header:first-child,
.admin-page-section > .toolbar:first-child { margin-top: 0; }
.section-intro { align-items: flex-end; margin-bottom: 18px; }
.section-intro h1,
.command-center-copy h1,
.admin-page-section > h1 {
  color: var(--ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 3.2vw, 3rem);
  font-weight: 650;
  letter-spacing: -.04em;
  line-height: 1;
}
.section-intro p, .command-center-copy p { color: #68766c; max-width: 760px; }
.eyebrow { color: #2f6f4b; letter-spacing: .13em; }

.card, .surface-card, .workflow-card, .dashboard-ai-hero, .command-center-hero,
.report-card, .settings-card, .archive-card {
  background: rgba(255,253,248,.98);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--soft-shadow);
}
.surface-card { overflow: hidden; }
.card-header { padding: 17px 19px; background: #fbfaf5; border-color: var(--soft-line); }
.card-body { padding: 19px; }
.notice { border-radius: 11px; background: #fffefb; }
.notice-blue { background: #eef4f2; border-color: #cfdfd7; color: #29493a; }

.btn {
  min-height: 39px;
  padding: 9px 14px;
  border-radius: 9px;
  font-size: .8rem;
  font-weight: 780;
  box-shadow: none;
}
.btn.primary { background: linear-gradient(135deg, #347a50, #245f3d); color: #fff; box-shadow: 0 7px 18px rgba(36,95,61,.18); }
.btn.primary:hover { background: linear-gradient(135deg, #2c7047, #1d5234); }
.btn.gold { background: #f7ecd2; border: 1px solid #dfbd6e; color: #6e4b0f; }
.btn.light { background: #fffefb; border-color: #d9dacf; color: var(--ink); }
.btn.danger { background: #fff7f3; border-color: #eab8a9; color: #a54432; }
.btn.mini { min-height: 32px; padding: 6px 10px; border-radius: 8px; }

input, select, textarea {
  min-height: 42px;
  padding: 10px 12px;
  border-color: #d7d9cf;
  border-radius: 9px;
  background: #fffefb;
}
input:focus, select:focus, textarea:focus { border-color: #5c9770; box-shadow: 0 0 0 3px rgba(56,161,105,.12); }
label, .field > span { color: #53645a; }
.toolbar-actions, .task-filter-bar, .request-toolbar {
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,253,248,.94);
}

.dashboard-kpi-grid, .task-metric-grid, .report-kpi-grid { gap: 11px; }
.dashboard-kpi, .task-metric, .report-kpi, .request-demand-stat {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fffefb;
  box-shadow: none;
}
.dashboard-kpi strong, .task-metric strong, .report-kpi strong { color: var(--ink); }
.badge, .pill {
  border: 1px solid #d8ded6;
  border-radius: 999px;
  background: #eef3ed;
  color: #365441;
  letter-spacing: .02em;
}
.badge.good { background: #e7f3e8; color: #297044; border-color: #bed8c3; }
.badge.warn { background: #fff3d9; color: #8a5a0a; border-color: #efd18f; }
.badge.danger, .badge.bad { background: #fff0ea; color: #a04433; border-color: #ebc0b3; }

.table-wrap { border-radius: 12px; border-color: var(--line); }
table { background: #fffefb; }
th { padding: 11px 12px; background: #f4f3ec; color: #5d6a61; letter-spacing: .07em; }
td { padding: 12px; border-color: var(--soft-line); }
tbody tr:hover { background: #fbfaf4; }

.request-modern-list, .request-modern-board { background: #f3f2ea; padding: 14px; }
.request-modern-row, .request-modern-board-card {
  border-color: #d9d9cf;
  border-radius: 12px;
  background: #fffefb;
  box-shadow: none;
}
.request-modern-row:hover, .request-modern-board-card:hover { border-color: #8eaf98; box-shadow: 0 8px 22px rgba(38,83,55,.08); }
.request-status-rail { background: #6b94c1; }
.request-modern-row.status-accepted .request-status-rail,
.request-modern-row.status-completed .request-status-rail { background: var(--leaf); }
.request-board-accent { height: 3px; background: linear-gradient(90deg, #5c9770, #d9a441); }
.request-modern-title, .request-board-stats b { color: var(--ink); }
.request-modern-meta span { background: #eff2eb; color: #52645a; }
.request-board-products { background: #f4f3ec; }

dialog { color: var(--ink); background: #fffdf8; }
dialog::backdrop { background: rgba(14,32,25,.52); backdrop-filter: blur(3px); }
.request-details-dialog, .buyer-intake-edit-dialog { border-radius: 14px; box-shadow: 0 26px 70px rgba(13,39,29,.25); }
.request-details-shell, .buyer-intake-edit-shell { background: #fffdf8; }
.buyer-intake-edit-item, .request-detail-products { background: #f4f3ec; border-color: #dadacf; }
.request-detail-product { background: #fffefb; border-color: #ddddd4; }

.farmer-list, .farmer-grid { gap: 14px; }
.farmer-card, .farmer-profile-card {
  border-color: #d9d9cf;
  border-radius: 13px;
  background: #fffefb;
  box-shadow: none;
}
.farmer-card::before { background: linear-gradient(90deg, #4b8b61, #d9a441); }
.farmer-card.selected { border-color:#2f8fe9; box-shadow:0 0 0 3px rgba(47,143,233,.12); }
.farmer-card-select { display:inline-flex; align-items:center; gap:6px; margin:0 0 10px; color:#486276; font-size:.72rem; font-weight:850; cursor:pointer; }
.farmer-card-select input { width:17px; height:17px; margin:0; accent-color:#1d7fe6; }
.farmer-export-bar { display:flex; align-items:center; gap:12px; margin:0 0 14px; padding:12px 14px; border:1px solid var(--line); border-radius:11px; background:#f5f9fc; }
.farmer-export-bar .actions { margin-left:auto; }
.farmer-select-visible { display:inline-flex; align-items:center; gap:7px; font-weight:850; white-space:nowrap; }
.farmer-select-visible input { width:18px; height:18px; accent-color:#1d7fe6; }

.task-list-card, .task-board-card {
  border-color: #d9d9cf;
  border-radius: 12px;
  background: #fffefb;
  box-shadow: none;
}
.task-list-card:hover, .task-board-card:hover { border-color: #91ad99; }

.toast { background: var(--forest-deep); border-radius: 11px; }
.pagination { color: #5e6d63; }

@media (max-width: 1100px) {
  .admin-shell { grid-template-columns: 210px minmax(0,1fr); }
  .admin-sidebar { width: 210px; max-width: 210px; }
  .admin-topbar { left: 210px; }
  .side-nav .tab { font-size: .74rem; }
}
@media (max-width: 860px) {
  .admin-shell { display: block; }
  .admin-sidebar { width: 100%; max-width: none; height: auto; position: relative; }
  .admin-topbar { left: auto; position: relative; }
  .admin-page-section { padding: 20px 14px 34px; }
  .command-search { width: 100%; }
  .section-intro { align-items: flex-start; }
}
@media (max-width: 600px) {
  .admin-topbar { padding: 10px 12px; }
  .top-actions { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); }
  .top-actions .btn { width: 100%; padding-inline: 9px; }
  .admin-page-section { padding-inline: 10px; }
  .section-intro h1, .command-center-copy h1, .admin-page-section > h1 { font-size: 2rem; }
  .toolbar-actions { border-radius: 10px; }
  .farmer-export-bar { align-items:stretch; flex-direction:column; }
  .farmer-export-bar .actions { display:grid; grid-template-columns:1fr; width:100%; margin-left:0; }
  .farmer-export-bar .actions .btn { width:100%; }
}

/* 8.1.23 themes, collection controls, and typography audit */
.theme-picker {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 39px;
  padding: 4px 5px 4px 10px;
  border: 1px solid #d9dacf;
  border-radius: 9px;
  background: #fffefb;
}
.theme-picker span { color: #617067; font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.theme-picker select { min-height: 29px; width: 112px; padding: 4px 25px 4px 7px; border: 0; background-color: transparent; font-size: .76rem; }
.brand-logo-fallback { color: #fff !important; background: linear-gradient(145deg, #6ac878, #2f855a) !important; }
.custom-brand-logo { background-color: #fff; background-position: center; background-repeat: no-repeat; background-size: contain; }

.admin-page-section h1, .admin-page-section h2, .admin-page-section h3, .admin-page-section h4,
.admin-page-section p, .admin-page-section ul, .admin-page-section ol, .admin-page-section dl { overflow-wrap: anywhere; }
.admin-page-section h2 { line-height: 1.15; letter-spacing: -.025em; }
.admin-page-section h3, .admin-page-section h4 { line-height: 1.25; }
.admin-page-section p { line-height: 1.48; }
.section-mini-head, .report-header-line, .field-doctor-list-heading { gap: 14px; padding-inline: 0; }
.section-mini-head > div, .report-header-line > div, .section-intro > div { min-width: 0; }
.field { align-content: start; min-width: 0; }
.field > label, .field > span, label.field > span { display: block; margin: 0; line-height: 1.25; }
textarea { line-height: 1.48; text-indent: 0; }
.ai-report-grid { align-items: start; column-gap: 14px; row-gap: 13px; }
.ai-report-grid .field { margin: 0; }
.ai-report-grid .field.full { margin-top: 1px; }
.ai-report-grid textarea { min-height: 112px; padding: 13px 14px; font-weight: 560; }
.ai-report-flow > div { align-items: flex-start; min-width: 0; }
.ai-report-flow strong, .ai-report-flow small { min-width: 0; }
.ai-report-description { padding: 21px; }
.ai-report-description p { max-width: 980px; }
.surface-card > h2, .surface-card > p { margin-left: 18px; margin-right: 18px; }
.surface-card > h2:first-child { margin-top: 18px; }
.surface-card > p + .upload-grid { margin-inline: 18px; }

.collection-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 12px 0 10px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255,253,248,.92);
}
.collection-tools > strong { color: var(--ink); font-size: .84rem; }
.collection-tools-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.collection-tools-actions > label { display: inline-flex; align-items: center; gap: 6px; }
.collection-tools-actions select { width: 66px; min-height: 32px; padding: 4px 22px 4px 7px; }
.collection-page-status { min-width: 72px; color: var(--muted); font-size: .74rem; text-align: center; }
.universal-collection.collection-board-mode { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.universal-collection.collection-list-mode { display: grid; grid-template-columns: 1fr; gap: 8px; }
.universal-collection.collection-list-mode > * { width: 100%; max-width: none; }
#farmerCards.collection-list-mode { grid-template-columns: 1fr; }
#farmerCards.collection-list-mode .client-card { display: grid; grid-template-columns: minmax(220px,.8fr) minmax(260px,1.2fr) auto; gap: 14px; align-items: center; }
#menuScanList.collection-board-mode, #libraryList.collection-board-mode,
#fieldPartnerDirectoryList.collection-board-mode, #fieldDoctorCaseList.collection-board-mode { grid-template-columns: repeat(2, minmax(280px,1fr)); }
#conversationList.collection-list-mode { display: block; }

html[data-admin-theme="ocean"] {
  --forest: #113d75;
  --forest-deep: #071f45;
  --forest-soft: #245f9e;
  --leaf: #1f86ff;
  --leaf-soft: #eaf3ff;
  --ink: #0b2345;
  --navy: #0b315f;
  --navy-2: #174f8a;
  --blue: #1769e0;
  --blue-2: #4fa4ff;
  --gold: #f2b84b;
  --bg: #f2f6fc;
  --panel: #fff;
  --surface: #fff;
  --muted: #61738b;
  --line: #d7e2ef;
  --soft-line: #eaf0f7;
  --good: #23915d;
  --warn: #c68016;
  --bad: #bd4a45;
}
html[data-admin-theme="ocean"] .admin-body { background: radial-gradient(circle at 95% 0%, rgba(31,134,255,.12), transparent 30%), #f2f6fc; }
html[data-admin-theme="ocean"] .admin-sidebar { background: linear-gradient(180deg,#153f75,#082c59 60%,#071f45); }
html[data-admin-theme="ocean"] .side-nav .tab.active { box-shadow: inset 3px 0 0 #48b8ff; border-color: rgba(72,184,255,.25); }
html[data-admin-theme="ocean"] .side-nav .tab.active .nav-icon { color: #65c7ff; }
html[data-admin-theme="ocean"] .btn.primary { background: linear-gradient(135deg,#1769e0,#0e4fb7); box-shadow: 0 8px 20px rgba(23,105,224,.2); }
html[data-admin-theme="ocean"] .eyebrow { color: #1761ad; }
html[data-admin-theme="ocean"] .admin-topbar,
html[data-admin-theme="ocean"] .card, html[data-admin-theme="ocean"] .surface-card,
html[data-admin-theme="ocean"] .collection-tools { background: rgba(255,255,255,.96); }

html[data-admin-theme="midnight"] {
  color-scheme: dark;
  --forest: #101d31;
  --forest-deep: #07111f;
  --forest-soft: #23476f;
  --leaf: #45c879;
  --leaf-soft: #173827;
  --ink: #edf5ff;
  --navy: #edf5ff;
  --navy-2: #bfd4ee;
  --blue: #55a7ff;
  --blue-2: #75bcff;
  --gold: #e8b84f;
  --bg: #0b1422;
  --panel: #111e30;
  --surface: #111e30;
  --muted: #a8b8ca;
  --line: #2a3b50;
  --soft-line: #203146;
  --good: #54cc83;
  --warn: #efb84d;
  --bad: #ef7c70;
}
html[data-admin-theme="midnight"] .admin-body { background: radial-gradient(circle at 100% 0%,rgba(45,113,155,.17),transparent 30%),#0b1422; }
html[data-admin-theme="midnight"] .admin-sidebar { background: linear-gradient(180deg,#101d31,#07111f); }
html[data-admin-theme="midnight"] .admin-topbar,
html[data-admin-theme="midnight"] .card, html[data-admin-theme="midnight"] .surface-card,
html[data-admin-theme="midnight"] .workflow-card, html[data-admin-theme="midnight"] .dashboard-ai-hero,
html[data-admin-theme="midnight"] .command-center-hero, html[data-admin-theme="midnight"] .collection-tools,
html[data-admin-theme="midnight"] dialog { background: rgba(17,30,48,.98); color: var(--ink); }
html[data-admin-theme="midnight"] input, html[data-admin-theme="midnight"] select,
html[data-admin-theme="midnight"] textarea, html[data-admin-theme="midnight"] .btn.light,
html[data-admin-theme="midnight"] .theme-picker { background-color: #0e1a2b; color: var(--ink); border-color: #31435a; }
html[data-admin-theme="midnight"] th { background: #17263a; color: #b9c9db; }
html[data-admin-theme="midnight"] table, html[data-admin-theme="midnight"] .request-modern-row,
html[data-admin-theme="midnight"] .request-modern-board-card, html[data-admin-theme="midnight"] .task-list-card,
html[data-admin-theme="midnight"] .task-board-card, html[data-admin-theme="midnight"] .farmer-card { background: #111e30; color: var(--ink); }
html[data-admin-theme="midnight"] .request-modern-list, html[data-admin-theme="midnight"] .request-modern-board,
html[data-admin-theme="midnight"] .request-board-products, html[data-admin-theme="midnight"] .buyer-intake-edit-item,
html[data-admin-theme="midnight"] .request-detail-products { background: #0d1828; }
html[data-admin-theme="midnight"] .muted, html[data-admin-theme="midnight"] p { color: var(--muted); }
html[data-admin-theme="midnight"] .btn.primary { background: linear-gradient(135deg,#2876d7,#1755a8); }
html[data-admin-theme="midnight"] .eyebrow { color: #66d493; }

@media (max-width: 1050px) {
  .theme-picker span { display: none; }
  .theme-picker select { width: 102px; }
  .universal-collection.collection-board-mode { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .theme-picker { grid-column: 1 / -1; width: 100%; }
  .theme-picker select { width: 100%; }
  .collection-tools { align-items: stretch; flex-direction: column; }
  .collection-tools-actions { justify-content: flex-start; }
  #farmerCards.collection-list-mode .client-card { display: block; }
}

/* Theme-safe hero contrast and reliable modern close controls */
html:not([data-admin-theme="midnight"]) .command-center-hero {
  color: #fff;
  background:
    radial-gradient(circle at 84% 8%, rgba(114,208,131,.25), transparent 34%),
    linear-gradient(135deg, #173f31 0%, #27684a 58%, #365f4a 100%);
  border-color: rgba(34,92,63,.35);
}
html:not([data-admin-theme="midnight"]) .command-center-copy h1,
html:not([data-admin-theme="midnight"]) .command-center-hero h2 { color: #fff; }
html:not([data-admin-theme="midnight"]) .command-center-copy p,
html:not([data-admin-theme="midnight"]) .dashboard-ai-hero p { color: #e7f2e9; }
html:not([data-admin-theme="midnight"]) .command-center-hero .eyebrow { color: #9ce0aa; }
html:not([data-admin-theme="midnight"]) .dashboard-ai-hero {
  background: rgba(5,39,27,.3);
  border-color: rgba(255,255,255,.24);
}
html:not([data-admin-theme="midnight"]) .dashboard-ai-prompts button {
  color: #fff;
  background: rgba(5,39,27,.42);
  border-color: rgba(255,255,255,.32);
}
html[data-admin-theme="ocean"] .command-center-hero {
  background:
    radial-gradient(circle at 84% 8%, rgba(72,184,255,.27), transparent 34%),
    linear-gradient(135deg, #0b315f 0%, #155eaa 58%, #176f91 100%);
  border-color: rgba(21,94,170,.34);
}
html[data-admin-theme="ocean"] .command-center-hero .eyebrow { color: #a8ddff; }
html[data-admin-theme="ocean"] .dashboard-ai-hero { background: rgba(5,35,72,.32); }
html[data-admin-theme="ocean"] .dashboard-ai-prompts button { background: rgba(5,35,72,.45); }

.dialog-close, .modern-close {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
  color: var(--ink);
  font: 400 1.65rem/1 Arial, sans-serif;
  cursor: pointer;
  box-shadow: 0 5px 14px rgba(24,49,35,.07);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.dialog-close:hover, .modern-close:hover,
.dialog-close:focus-visible, .modern-close:focus-visible {
  background: #f2f4ed;
  border-color: #8fac98;
  transform: translateY(-1px);
  outline: 3px solid rgba(56,161,105,.13);
}
html[data-admin-theme="ocean"] .dialog-close:hover,
html[data-admin-theme="ocean"] .modern-close:hover { background: #edf5ff; border-color: #78a8d7; }
html[data-admin-theme="midnight"] .dialog-close,
html[data-admin-theme="midnight"] .modern-close { background: #101d2e; border-color: #39506a; color: #eef6ff; }
html[data-admin-theme="midnight"] .dialog-close:hover,
html[data-admin-theme="midnight"] .modern-close:hover { background: #1b2d44; border-color: #62a2e4; }

/* Buyer Request ten-stage operator workflow */
.request-row-workflow{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:9px;color:var(--muted);font-size:.76rem}.request-row-workflow b{color:var(--ink)}
.health-on_track{color:#168454!important}.health-at_risk{color:#b66b09!important}.health-critical,.health-overdue{color:#c44545!important}
.badge.workflow-completed{background:#e4f7eb;color:#157949}.badge.workflow-in_progress{background:#e8f2ff;color:#146ab8}.badge.workflow-blocked{background:#fff0dc;color:#a85f05}.badge.workflow-not_started{background:#eef2f1;color:#6c7c77}
.request-workflow-summary{padding:18px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fff,#f7fbf8);box-shadow:var(--soft-shadow)}.request-workflow-summary.compact{margin:14px 0;box-shadow:none}.request-workflow-summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.request-workflow-summary-head h3{margin:2px 0 0}.workflow-health{padding:5px 10px;border:1px solid currentColor;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:capitalize}.request-workflow-progress{height:7px;margin:12px 0 18px;border-radius:99px;background:#e2ebe6;overflow:hidden}.request-workflow-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#32b878,#18a5a0)}
.request-workflow-track{display:grid;grid-template-columns:repeat(10,minmax(82px,1fr));gap:0;margin:0;padding:0;overflow-x:auto;list-style:none}.request-workflow-track li{position:relative;display:grid;justify-items:center;gap:5px;min-width:82px;padding:0 4px;text-align:center;cursor:pointer}.request-workflow-track li:before{content:"";position:absolute;top:15px;left:0;right:0;height:3px;background:#dbe5e1}.request-workflow-track li:first-child:before{left:50%}.request-workflow-track li:last-child:before{right:50%}.request-workflow-track li.completed:before{background:#31af70}.request-workflow-track li>span{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:3px solid #d2dfda;border-radius:50%;background:#edf2ef;color:#72837d;font-weight:900}.request-workflow-track li.completed>span{border-color:#bce8cf;background:#2eae6d;color:#fff}.request-workflow-track li.current>span{border-color:#a8d6ff;background:#1778cf;color:#fff;box-shadow:0 0 0 5px #e4f2ff}.request-workflow-track strong{font-size:.67rem;line-height:1.15}.request-workflow-track small{color:var(--muted);font-size:.59rem}.request-workflow-track li.current small{color:#146ab8;font-weight:850}
.request-workflow-dialog{width:min(1500px,96vw);max-width:none;height:min(920px,94vh);max-height:none;padding:0;border:0;border-radius:22px;background:#f5f6f0;box-shadow:0 30px 90px rgba(7,40,33,.28)}.request-workflow-dialog::backdrop{background:rgba(4,27,23,.68);backdrop-filter:blur(5px)}.request-workflow-shell{height:100%;padding:22px;overflow:auto}.request-workflow-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:16px}.request-workflow-hero h2{margin:2px 0;font-size:1.65rem}.request-workflow-hero p{margin:0;color:var(--muted)}.request-workflow-score{display:grid;justify-items:end}.request-workflow-score strong{color:#168454;font-size:2rem}.request-workflow-score span{color:var(--muted);font-size:.72rem}.request-workflow-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:16px;margin-top:16px}.request-workflow-stage-panel,.request-workflow-side section{padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--soft-shadow)}.request-workflow-stage-head{display:flex;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid var(--line)}.request-workflow-stage-head h2{margin:2px 0}.request-workflow-stage-head p{margin:4px 0 0;color:var(--muted)}.workflow-next-action{display:grid;gap:4px;margin:15px 0;padding:14px;border:1px solid #c8e5d6;border-radius:12px;background:#f0faf5}.workflow-next-action span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.workflow-accountability-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:17px}.workflow-accountability-grid label,.workflow-blocker-box{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:800}.workflow-accountability-grid input,.workflow-blocker-box textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;color:var(--ink)}.workflow-checklist{display:grid;gap:8px;margin:12px 0 16px}.workflow-checklist>label{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.workflow-checklist>label.complete{border-color:#bde6ce;background:#f3fbf6}.workflow-checklist input{width:18px;height:18px;accent-color:#20a565}.workflow-checklist span{display:grid}.workflow-checklist small{color:var(--muted)}.workflow-blocker-box textarea{min-height:72px;resize:vertical}.request-workflow-side{display:grid;align-content:start;gap:16px}.request-workflow-side h3{margin:3px 0 12px}.request-workflow-side dl{display:grid;gap:8px;margin:0}.request-workflow-side dl>div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:8px}.request-workflow-side dt{color:var(--muted)}.request-workflow-side dd{margin:0;font-weight:800;text-transform:capitalize}.workflow-event-list{display:grid;gap:0;margin:12px 0 0;padding:0;list-style:none}.workflow-event-list li{position:relative;display:grid;grid-template-columns:14px 1fr;gap:9px;padding-bottom:14px}.workflow-event-list li:before{content:"";position:absolute;left:5px;top:12px;bottom:0;border-left:2px solid #dce8e2}.workflow-event-list li:last-child:before{display:none}.workflow-event-list i{position:relative;z-index:1;width:12px;height:12px;border:3px solid #c9edda;border-radius:50%;background:#2daf6f}.workflow-event-list p{margin:2px 0;color:var(--muted);font-size:.72rem}.workflow-event-list small{color:#899892;font-size:.64rem}
@media(max-width:1050px){.request-workflow-layout{grid-template-columns:1fr}.request-workflow-hero{grid-template-columns:1fr}.request-workflow-score{justify-items:start}.request-workflow-track{grid-template-columns:repeat(10,92px)}}
@media(max-width:650px){.request-workflow-dialog{width:100vw;height:100vh;border-radius:0}.request-workflow-shell{padding:13px}.request-workflow-hero h2{font-size:1.25rem}.workflow-accountability-grid{grid-template-columns:1fr}.request-workflow-stage-panel,.request-workflow-side section{padding:14px}.request-workflow-summary{padding:13px}.request-workflow-track{grid-template-columns:repeat(10,88px)}}

/* Versioned deterministic Grow Plan workspace */
.library-production-profile{margin:16px 0;padding:16px;border:1px solid #c9dfd3;border-radius:16px;background:#f4faf6}.library-production-profile h4{margin:2px 0}.grow-plan-dialog{width:min(1550px,97vw);max-width:none;height:min(940px,95vh);max-height:none;padding:0;border:0;border-radius:22px;background:#f5f6f0;box-shadow:0 30px 90px rgba(7,40,33,.3)}.grow-plan-dialog::backdrop{background:rgba(4,27,23,.7);backdrop-filter:blur(5px)}.grow-plan-shell{height:100%;padding:22px;overflow:auto}.grow-plan-shell>header{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-bottom:16px}.grow-plan-shell>header h2{margin:2px 0}.grow-plan-shell>header p{margin:0;color:var(--muted)}.grow-plan-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:15px 0}.grow-plan-kpis>div{display:grid;gap:3px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}.grow-plan-kpis span{color:var(--muted);font-size:.68rem;text-transform:uppercase}.grow-plan-kpis strong{font-size:1.25rem}.grow-plan-tabs{display:flex;align-items:center;gap:5px;padding:6px;border:1px solid var(--line);border-radius:12px;background:#e9efeb;overflow:auto}.grow-plan-tabs button{border:0;border-radius:8px;background:transparent;padding:9px 13px;color:var(--muted);font-weight:800;cursor:pointer}.grow-plan-tabs button.active{background:#fff;color:var(--ink);box-shadow:0 3px 10px rgba(23,55,47,.12)}.grow-plan-tabs select{margin-left:auto;min-width:145px}.grow-plan-shell>main{margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--soft-shadow)}.grow-plan-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.grow-plan-legend span{padding:5px 9px;border-radius:99px;font-size:.68rem;font-weight:800}.grow-plan-legend .preparation{background:#ead7bd}.grow-plan-legend .propagation{background:#d7e9fc}.grow-plan-legend .production{background:#c9f1d7}.grow-plan-legend .supply{background:#9be6bb}.grow-plan-legend .delivery{background:#dcd8f7}.grow-plan-calendar-wrap{overflow:auto}.grow-plan-calendar{width:100%;min-width:1050px;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:13px;overflow:hidden}.grow-plan-calendar th,.grow-plan-calendar td{min-width:68px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.7rem;text-align:center}.grow-plan-calendar th{background:#dbe9f5;color:#173d61;text-transform:uppercase}.grow-plan-calendar th:first-child,.grow-plan-calendar td:first-child{text-align:left;min-width:180px}.grow-plan-calendar th small,.grow-plan-calendar td small{display:block}.grow-plan-month.phase-preparation{background:#ead7bd}.grow-plan-month.phase-propagation{background:#d7e9fc}.grow-plan-month.phase-production{background:linear-gradient(90deg,#d8f7e3,#58d68d)}.grow-plan-month.phase-supply{background:linear-gradient(90deg,#b4f0ca,#27ae60)}.grow-plan-month.phase-delivery{background:repeating-linear-gradient(90deg,#dcd8f7 0 18px,#b9b1ed 18px 25px)}.grow-plan-month span{padding:2px 6px;border-radius:99px;background:rgba(255,255,255,.72);font-size:.58rem;font-weight:900}.grow-plan-supply-grid,.grow-plan-assumptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grow-plan-supply-grid article,.grow-plan-assumptions article,.grow-plan-version-summary{padding:15px;border:1px solid var(--line);border-radius:13px;background:#fbfcfa}.grow-plan-supply-grid h3,.grow-plan-assumptions h3{margin-top:0}.grow-plan-supply-bar{height:10px;border-radius:99px;background:#e1e8e4;overflow:hidden}.grow-plan-supply-bar i{display:block;height:100%;background:#2caf6e}.grow-plan-supply-grid dl,.grow-plan-assumptions dl,.grow-plan-version-summary dl{display:grid;gap:7px}.grow-plan-supply-grid dl>div,.grow-plan-assumptions dl>div,.grow-plan-version-summary dl>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:7px}.grow-plan-supply-grid dt,.grow-plan-assumptions dt,.grow-plan-version-summary dt{color:var(--muted)}.grow-plan-supply-grid dd,.grow-plan-assumptions dd,.grow-plan-version-summary dd{margin:0;font-weight:800;text-align:right}.grow-plan-risks{display:grid;gap:9px}.grow-plan-risks article{display:grid;grid-template-columns:65px 1fr;gap:12px;padding:12px;border:1px solid var(--line);border-left:5px solid #7f91a0;border-radius:10px}.grow-plan-risks article.risk-high{border-left-color:#ce4949;background:#fff5f4}.grow-plan-risks article.risk-medium{border-left-color:#dd931d;background:#fff9ee}.grow-plan-risks article.risk-info{border-left-color:#3486ca;background:#f2f8fd}.grow-plan-risks article>span{text-transform:uppercase;font-size:.65rem;font-weight:900}.grow-plan-risks p{margin:3px 0;color:var(--muted)}.grow-plan-empty{display:grid;place-items:center;min-height:300px;text-align:center}.grow-plan-empty strong{font-size:1.3rem}.grow-plan-empty p{max-width:580px;color:var(--muted)}
@media(max-width:900px){.grow-plan-shell>header{grid-template-columns:1fr}.grow-plan-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grow-plan-supply-grid,.grow-plan-assumptions{grid-template-columns:1fr}}
@media(max-width:650px){.grow-plan-dialog{width:100vw;height:100vh;border-radius:0}.grow-plan-shell{padding:12px}.grow-plan-kpis{grid-template-columns:1fr 1fr}.grow-plan-shell>main{padding:10px}}

/* Choice fields, inline planning validation, and compact workflow status */
.library-form .otherField{display:none;margin-top:8px}.library-form .otherField.show{display:block}.library-multi-choice{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.library-multi-choice label{display:inline-flex;align-items:center;gap:5px;padding:4px 3px;border:0;border-radius:0;background:transparent;font-size:.76rem}.library-multi-choice input[type=checkbox]{width:16px;height:16px;accent-color:#20a565}.library-multi-choice .otherField{flex-basis:100%;width:100%}.library-profile-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.library-profile-head-actions .btn{padding:7px 10px;font-size:.72rem}.grow-plan-inline-status{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 16px;padding:13px 15px;border-radius:12px}.grow-plan-inline-status.error{border:1px solid #edc1bc;background:#fff3f1;color:#8d3028}.grow-plan-inline-status p{margin:4px 0 0}.request-workflow-stage-head{align-items:flex-start}.request-workflow-stage-head>.badge{align-self:flex-start;display:inline-flex;width:auto;min-width:0;height:auto;padding:7px 11px;border-radius:999px;line-height:1;white-space:nowrap}
.library-multi-combo{position:relative;border:1px solid var(--line);border-radius:10px;background:#fff}.library-multi-combo>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:9px 12px;cursor:pointer;list-style:none}.library-multi-combo>summary::-webkit-details-marker{display:none}.library-multi-combo>summary:after{content:'⌄';color:var(--muted);font-weight:900}.library-multi-combo[open]>summary:after{content:'⌃'}.library-multi-combo>summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-multi-combo>summary small{margin-left:auto;color:var(--muted);white-space:nowrap}.library-multi-combo>.library-multi-choice{position:absolute;z-index:20;top:calc(100% + 5px);left:0;right:0;max-height:240px;overflow:auto;box-shadow:0 14px 35px rgba(16,53,43,.18)}

/* Product Library overflow protection and phone-safe admin shell */
.library-production-profile,.library-production-profile .form-grid,.library-production-profile .field,.library-multi-combo{min-width:0;max-width:100%}.library-multi-combo>summary{width:100%;overflow:hidden}.library-multi-combo>summary span{max-width:calc(100% - 120px)}.library-multi-combo>.library-multi-choice{min-width:0}.custom-brand-logo{display:grid!important;place-items:center;overflow:hidden;background:#fff!important}.custom-brand-logo .brand-logo-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
@media (max-width:860px), (pointer:coarse) and (max-width:1100px){
 .admin-shell,.admin-shell[style*="display: block"]{display:block!important;width:100%!important;min-width:0!important}
 .admin-sidebar{position:sticky!important;inset:0 0 auto 0!important;z-index:50!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;padding:9px 12px!important;overflow:visible!important}
 .sidebar-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
 .sidebar-brand{min-width:0!important;margin:0!important;padding:0!important;border:0!important}.sidebar-brand .logo{flex:0 0 40px;width:40px!important;height:40px!important}.sidebar-brand>div:last-child{min-width:0}.sidebar-brand strong,.sidebar-brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .mobile-menu-toggle{display:inline-flex!important;flex:0 0 auto;align-items:center;justify-content:center}
 .sidebar-menu-content{display:none!important;padding-top:10px}.admin-sidebar.mobile-menu-open .sidebar-menu-content{display:flex!important;max-height:calc(100vh - 64px);overflow-y:auto}
 .admin-main{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}.admin-topbar{left:auto!important;position:relative!important;width:100%!important;max-width:100%!important;padding:10px 12px!important}.admin-page-section{width:100%!important;max-width:100%!important;min-width:0!important;padding:18px 10px 32px!important}
 .top-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.theme-picker{grid-column:1/-1}.section-intro{align-items:flex-start!important;flex-direction:column!important}.toolbar-actions,.request-toolbar{max-width:100%;overflow:hidden}.request-modern-row{min-width:0}.request-modern-actions{flex-wrap:wrap}
 .library-production-profile{padding:12px}.library-production-profile .form-grid{grid-template-columns:1fr!important}.library-production-profile .field.full{grid-column:1!important}.library-profile-head-actions{justify-content:flex-start}.library-multi-combo>summary small{display:none}.library-multi-combo>summary span{max-width:calc(100% - 24px)}
}

/* Cross-section overflow containment and Grow Plan cadence clarity */
.tab-panel,.admin-page-section,.surface-card,.card,.farmer-profile-card,.structured-detail-group{min-width:0;max-width:100%}.structured-detail-table-wrap,.admin-table-wrap,.report-table-wrap,.table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.structured-detail-table{width:max-content;min-width:100%;table-layout:auto}.structured-detail-table th,.structured-detail-table td{min-width:150px}.structured-detail-table td input,.structured-detail-table td select,.structured-detail-table td textarea{width:100%;min-width:0}.structured-detail-group{overflow:hidden}.grow-plan-product{display:grid;gap:4px}.grow-plan-product strong{display:block}.grow-plan-product small{display:block;color:var(--muted);white-space:nowrap}.grow-plan-date{display:grid;gap:3px;min-width:126px}.grow-plan-date strong{font-weight:750}.grow-plan-date small{max-width:170px;color:var(--muted);font-size:.62rem;line-height:1.25}.grow-plan-date.past strong{color:#a64b2f}.grow-plan-cadence-key{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.grow-plan-cadence-key>span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #d9d6ef;border-radius:999px;background:#faf9ff;font-size:.66rem;font-weight:800}.cadence-sample{display:inline-block;width:30px;height:10px;background:repeating-linear-gradient(90deg,#7667d8 0 3px,transparent 3px 8px)}.cadence-sample.biweekly{background:repeating-linear-gradient(90deg,#7667d8 0 4px,transparent 4px 15px)}.cadence-sample.monthly{background:radial-gradient(circle,#7667d8 0 4px,transparent 5px)}.cadence-sample.quarterly{background:linear-gradient(90deg,transparent 0 11px,#7667d8 11px 18px,transparent 18px)}.grow-plan-month{position:relative;isolation:isolate;min-height:44px}.grow-plan-month.phase-delivery{background:none}.delivery-marks{position:absolute;z-index:2;inset:4px;display:flex;align-items:center;justify-content:space-around;pointer-events:none}.delivery-marks i{display:block;width:4px;height:24px;border-radius:999px;background:#7567d8;box-shadow:0 0 0 1px rgba(255,255,255,.65)}.cadence-monthly .delivery-marks i,.cadence-quarterly .delivery-marks i,.cadence-seasonal .delivery-marks i,.cadence-one-time .delivery-marks i{width:9px;height:9px;border-radius:50%}.cadence-daily .delivery-marks i,.cadence-twice-weekly .delivery-marks i{width:3px;height:28px}.grow-plan-month>span{position:relative;z-index:3}.grow-plan-legend .delivery{background:#e2ddff;color:#443b91}
@media(max-width:760px){.structured-detail-table th,.structured-detail-table td{min-width:130px}.grow-plan-dialog .table-wrap{overflow-x:auto}.grow-plan-product{min-width:120px}.grow-plan-cadence-key{align-items:flex-start;flex-direction:column}}
.structured-profile-grid{display:grid;gap:12px}.structured-profile-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfa}.structured-profile-row label{display:grid;gap:5px;min-width:0}.structured-profile-row label span{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.structured-profile-row .removeFarmerDetailRowBtn{align-self:end;justify-self:start}
.library-version-dialog{width:min(1040px,94vw);max-width:none;max-height:90vh;padding:0;border:0;border-radius:18px}.library-version-shell{padding:20px;overflow:auto;max-height:90vh}.library-version-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.library-version-shell h2{margin:3px 0}.library-version-list{display:grid;gap:10px;margin-top:18px}.library-version-list details{border:1px solid var(--line);border-radius:12px;background:#fff}.library-version-list summary{display:grid;grid-template-columns:auto 1fr auto;gap:12px;padding:13px;cursor:pointer}.library-version-list summary small{color:var(--muted)}.library-version-list dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0 13px 13px}.library-version-list dl>div{display:grid;grid-template-columns:minmax(120px,.7fr) 1.3fr;gap:8px;padding:7px;border-top:1px solid var(--line)}.library-version-list dt{color:var(--muted)}.library-version-list dd{margin:0;overflow-wrap:anywhere}.workflow-document-center{margin:18px 0;padding:16px;border:1px solid #cbdcea;border-radius:13px;background:#f6faff}.workflow-document-center>p{margin:4px 0 12px;color:var(--muted)}.workflow-document-actions{display:flex;flex-wrap:wrap;gap:8px}.buyer-package-list{display:grid;gap:8px;margin-top:12px}.buyer-package-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.buyer-package-list article>div:first-child{display:grid}.buyer-package-list small{color:var(--muted)}
@media(max-width:700px){.library-version-list summary{grid-template-columns:1fr}.library-version-list dl{grid-template-columns:1fr}.buyer-package-list article{align-items:flex-start;flex-direction:column}.workflow-document-actions .btn{width:100%}}
