:root {
  --navy: #021220;
  --deep-blue: #0c3e6a;
  --slate: #3f5165;
  --sage: #10b981;
  --mint-strong: #a7f3d0;
  --off-white: #f6fafc;
  --ink: #071b36;
  --muted: #64748b;
  --line: #dce5eb;
  --paper: #f6fafc;
  --white: #ffffff;
  --forest: #0c2a4c;
  --forest-2: #123b66;
  --mint: #dff8ec;
  --gold: #d5a84e;
  --danger: #a8453d;
  --font-heading: Manrope, Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-body: Inter, Manrope, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --shadow: 0 14px 38px rgba(2, 18, 45, 0.075);
}

* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: linear-gradient(150deg,#fbfdfe 0%,var(--paper) 58%,#f0f7f7 100%); font-family: var(--font-body); }
a { color: inherit; text-decoration: none; }
.sidebar { position: fixed; inset: 0 auto 0 0; width: 248px; padding: 28px 18px; background: linear-gradient(180deg,#021220 0%,#06233d 55%,#0a3154 100%); color: #e4eef4; display: flex; flex-direction: column; z-index: 5; box-shadow: 8px 0 30px rgba(2,18,45,.08); }
.brand { display: flex; align-items: center; gap: 13px; padding: 0 9px 29px; color: white; }
.brand-mark { display: block; flex: 0 0 43px; width: 43px; height: 48px; border: 0; border-radius: 0; background: transparent url('/haven-mark-light.svg') center/contain no-repeat; font-size: 0; }
.brand strong, .brand small, .sidebar-foot strong, .sidebar-foot small { display: block; }
.brand strong { font-family: var(--font-heading); font-size: 17px; font-weight: 800; letter-spacing: 4.5px; text-transform: uppercase; }
.brand small, .sidebar-foot small { margin-top: 4px; color: #8da4b7; font-size: 9px; line-height: 1.35; letter-spacing: .15px; }
nav { display: grid; gap: 4px; }
.nav-item { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border: 1px solid transparent; border-radius: 9px; color: #a8b9c7; font-size: 14px; font-weight: 650; transition: color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease; }
.nav-item:hover { color: white; background: rgba(167,243,208,.065); border-color: rgba(167,243,208,.08); transform: translateX(2px); }
.nav-item.active { color: white; background: rgba(16,185,129,.16); border-color: rgba(167,243,208,.12); box-shadow: inset 3px 0 var(--sage); }
.nav-icon { width: 18px; color: var(--mint-strong); text-align: center; font-size: 16px; }
.sidebar-foot { display: flex; align-items: center; gap: 10px; margin-top: auto; padding: 16px 10px 0; border-top: 1px solid rgba(255,255,255,.1); font-size: 12px; }
.live-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--sage); box-shadow: 0 0 0 4px rgba(16,185,129,.13),0 0 15px rgba(16,185,129,.35); }
main { min-height: 100vh; margin-left: 248px; padding: 34px 42px 60px; }
.topbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.topbar h1 { margin: 4px 0 0; font: 800 32px/1.1 var(--font-heading); letter-spacing: -.8px; }
.eyebrow { margin: 0; color: var(--sage); font-size: 10px; font-weight: 850; letter-spacing: 1.7px; text-transform: uppercase; }
.avatar { display: grid; place-items: center; width: 42px; height: 42px; border: 3px solid #e2f8ee; border-radius: 50%; color: white; background: var(--deep-blue); box-shadow: 0 7px 18px rgba(2,18,45,.14); font-size: 12px; font-weight: 800; }
.notice { margin: -12px 0 22px; padding: 12px 15px; border: 1px solid #9cdec2; border-radius: 9px; color: #087653; background: #ebfbf4; font-size: 14px; }
.hero-card { position:relative;isolation:isolate;display: flex; align-items: end; justify-content: space-between; gap: 28px; min-height: 230px; padding: 38px 40px; overflow:hidden;border:1px solid rgba(167,243,208,.12);border-radius: 18px; color: white; background: linear-gradient(118deg,#021220 0%,#082b4c 58%,#0c3e6a 100%); box-shadow: 0 20px 48px rgba(2,18,45,.16); }
.hero-card::before { content:"";position:absolute;z-index:-1;inset:-60% -15% auto auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.27) 0%,rgba(16,185,129,.08) 35%,transparent 69%); }
.hero-card::after { content:"";position:absolute;z-index:-1;right:25%;bottom:-115px;width:320px;height:190px;background:linear-gradient(135deg,transparent 42%,rgba(167,243,208,.08) 42%,rgba(167,243,208,.08) 54%,transparent 54%);transform:rotate(-9deg); }
.hero-card h2 { max-width: 650px; margin: 10px 0 13px; font: 800 40px/1.04 var(--font-heading); letter-spacing:-1.2px; }
.hero-card p:not(.eyebrow) { max-width: 650px; margin: 0; color: #c6d6e2; line-height: 1.6; }
.hero-card .eyebrow { color: var(--mint-strong); }
.brand-accent { color: #35d39a; }
.button { display: inline-flex; align-items: center; justify-content: center; gap:8px;min-height: 42px; padding: 0 17px; border: 1px solid transparent; border-radius: 8px; color: white; background: var(--deep-blue); box-shadow:0 7px 16px rgba(2,18,45,.08);font: 750 13px var(--font-body); cursor: pointer; white-space: nowrap; transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease; }
.button:hover { background: var(--sage); border-color:var(--sage);transform:translateY(-1px);box-shadow:0 10px 20px rgba(16,185,129,.18); }
.button-light { color: white; background: rgba(2,18,45,.22); border-color: var(--sage);box-shadow:none; }
.button-light:hover { color:var(--navy);background: var(--mint-strong); border-color:var(--mint-strong); }
.button-ghost { color: var(--forest); background: transparent; border: 1px solid var(--line); }.button-compact { min-height:34px;padding:0 12px;font-size:12px; }
.button-danger { background:var(--danger); }.button-danger:hover { background:#8f352f; }.button-danger-ghost { color:var(--danger);background:white;border:1px solid #dcb7b3; }.button-danger-ghost:hover { color:white;background:var(--danger); }
.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 20px 0; }
.stat-card { position:relative;padding: 20px 22px; overflow:hidden;border: 1px solid var(--line); border-radius: 14px; background: white; box-shadow: 0 7px 20px rgba(2,18,45,.04);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.stat-card::before { content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--sage),var(--mint-strong));opacity:.9; }
.stat-card:hover { transform:translateY(-2px);border-color:#b9d9d0;box-shadow:0 13px 28px rgba(2,18,45,.08); }
.stat-card span, .stat-card small { display: block; color: var(--muted); font-size: 12px; }
.stat-card strong { display: block; margin: 8px 0 5px; font: 800 29px var(--font-heading);color:var(--deep-blue); }
.split-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr); gap: 20px; }
.panel, .form-card, .empty-state { border: 1px solid var(--line); border-radius: 15px; background: white; box-shadow: 0 8px 26px rgba(2,18,45,.045); }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 25px 18px; }
.panel-head h2, .form-head h2 { margin: 5px 0 0; font: 800 23px var(--font-heading);letter-spacing:-.35px; }
.panel-head > a:not(.button) { color: var(--forest-2); font-size: 12px; font-weight: 800; }
.overview-order-list { display:grid;gap:0;padding:0 18px 18px; }
.overview-order-row { display:grid;grid-template-columns:minmax(165px,1.15fr) minmax(180px,1fr) minmax(105px,.55fr);align-items:center;gap:16px;padding:15px 7px;border-bottom:1px solid #edf0ee; }
.overview-order-row:last-child { border-bottom:0; }
.overview-order-row:hover { margin-inline:-7px;padding-inline:14px;border-radius:9px;background:#f8fbf9; }
.overview-order-row strong,.overview-order-row small { display:block; }
.overview-order-row small { margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35; }
.overview-order-main>strong { color:var(--ink);font:19px var(--font-heading); }
.overview-order-delivery>.pill { margin-bottom:7px; }
.overview-order-delivery>strong { color:var(--ink);font-size:12px; }
.overview-order-delivery>strong.negative { color:var(--danger); }
.overview-order-total { text-align:right; }
.overview-order-total>strong { color:var(--ink);font-size:15px; }
.overview-order-total>em { display:block;margin-top:8px;color:var(--forest-2);font-size:11px;font-style:normal;font-weight:800; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th { padding: 11px 18px; color: #7a8781; background: #f8faf8; border-block: 1px solid #e7ebe8; font-size: 10px; letter-spacing: .7px; text-align: left; text-transform: uppercase; }
td { padding: 15px 18px; border-bottom: 1px solid #edf0ee; color: #45514c; font-size: 13px; }
tbody tr:last-child td { border-bottom: 0; }
td strong, td small { display: block; }
td strong { color: var(--ink); }
td small { margin-top: 4px; color: #839089; }
.clickable-table-row { cursor:pointer; }
.clickable-table-row:hover td { background:#f8fbf9; }
.clickable-table-row .table-link:hover strong { color:var(--forest-2); }
.number { text-align: right; font-variant-numeric: tabular-nums; }
.positive { color: #27754f; font-weight: 800; }.negative { color: var(--danger); font-weight: 800; }
.actions { text-align: right; }.actions a { color: var(--forest-2); font-weight: 800; }.actions a + a { margin-left:12px; }.actions .danger-link { color:var(--danger); }.actions form { display:inline; margin:0; }
.table-empty { padding: 40px; color: var(--muted); text-align: center; }
.pill { display: inline-block; padding: 5px 9px; border-radius: 20px; font-size: 10px; font-weight: 800; }
.pill-good { color: #246143; background: #dff1e6; }.pill-muted { color: #737b77; background: #ecefed; }
.pill-draft { color: #6d6344; background: #f3ecd7; }.pill-submitted { color: #2d5d78; background: #dfedf5; }.pill-approved { color: #246143; background: #dff1e6; }
.pill-sent { color:#2d5d78;background:#dfedf5; }.pill-partially_received { color:#765b22;background:#f8efd8; }.pill-received { color:#246143;background:#dff1e6; }.pill-cancelled { color:#737b77;background:#ecefed; }
.quick-panel { padding: 25px; }
.quick-panel h2 { margin: 5px 0 15px; font: 23px var(--font-heading); }
.quick-panel > a { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 11px; padding: 14px 0; border-top: 1px solid #e8ece9; }
.quick-panel strong, .quick-panel small { display: block; }.quick-panel strong { font-size: 13px; }.quick-panel small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.quick-complete-form { margin-top:16px;padding-top:16px;border-top:1px solid #e8ece9; }
.quick-complete-form small { margin-top:8px;line-height:1.45; }
.promo-panel h2 { margin-bottom:14px; }
.promo-card { margin-bottom:12px;padding:17px;border:1px solid #dfd0a7;border-radius:12px;background:linear-gradient(145deg,#fffaf0,#f8fbf9); }
.promo-card span { display:block;color:#96701d;font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase; }
.promo-card strong { margin-top:7px;font:21px var(--font-heading);color:var(--ink); }
.promo-card p { margin:8px 0 14px;color:#68756f;font-size:12px;line-height:1.55; }
.step-number { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; color: var(--forest); background: var(--mint); font-size: 11px; font-weight: 800; }
.form-card { max-width: 900px; margin: 0 auto; padding: 30px; }
.form-head { padding-bottom: 22px; margin-bottom: 23px; border-bottom: 1px solid var(--line); }
.form-head p { margin: 7px 0 0; color: var(--muted); font-size: 13px; }
.field-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
.field-help-inline { display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.4; }
.product-form-top { display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px;align-items:start; }
.product-photo-card { position:sticky;top:24px;padding:14px;border:1px solid #dbe5df;border-radius:13px;background:#f8fbf9;text-align:center; }
.product-photo-frame { display:grid;place-items:center;aspect-ratio:2/3;border:1px dashed #c8d8d0;border-radius:11px;background:white center/contain no-repeat;overflow:hidden;color:#7c8b84; }
.product-photo-frame img { box-sizing:border-box;max-width:100%;max-height:100%;width:auto;height:auto;padding:8px;object-fit:contain; }
.product-photo-frame span { display:block;font-size:28px;line-height:1; }
.product-photo-frame small { margin-top:6px;color:var(--muted);font-size:11px;font-weight:800; }
.product-photo-card form { margin-top:12px; }
.product-photo-card p { margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.4; }
.visually-hidden-file { position:absolute;width:1px;height:1px;opacity:0;pointer-events:none; }
.form-section { margin-top:28px;padding-top:26px;border-top:1px solid var(--line); }.form-section-head { margin-bottom:20px; }.form-section-head h3 { margin:5px 0 7px;font:22px var(--font-heading); }.form-section-head>p:not(.eyebrow) { margin:0;color:var(--muted);font-size:12px;line-height:1.55; }.pricing-section { padding:24px;border:1px solid #dbe5df;border-radius:11px;background:#f8fbf9; }.field-help { margin:14px 0 0;color:var(--muted);font-size:11px; }.vendor-context-card { margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line); }.vendor-context-card h2 { margin:4px 0 6px;font:26px var(--font-heading); }.vendor-context-card p:not(.eyebrow) { margin:0;color:var(--muted);font-size:12px;line-height:1.5; }.vendor-edit-card>.form-section:first-child { margin-top:0;padding-top:0;border-top:0; }.vendor-priority-section { padding:0 0 26px;border-top:0;background:white; }.contact-table { margin-bottom:12px;border:1px solid var(--line);border-radius:10px;background:white; }.contact-table table:not(.location-rules-table) { table-layout:fixed;min-width:800px; }.contact-table table:not(.location-rules-table) th:nth-child(1) { width:25%; }.contact-table table:not(.location-rules-table) th:nth-child(2) { width:24%; }.contact-table table:not(.location-rules-table) th:nth-child(3) { width:18%; }.contact-table table:not(.location-rules-table) th:nth-child(4) { width:18%; }.contact-table table:not(.location-rules-table) th:nth-child(5) { width:8%; }.contact-table table:not(.location-rules-table) th:nth-child(6) { width:7%; }.contact-table table:not(.location-rules-table) td:nth-child(3) { white-space:nowrap;font-variant-numeric:tabular-nums; }.clickable-contact-row .quiet-edit-link { display:block;color:inherit; }.contact-table table:not(.location-rules-table) td:nth-child(3) .quiet-edit-link { white-space:nowrap; }.clickable-contact-row .quiet-edit-link:hover,.clickable-contact-row .table-link:hover strong { color:var(--forest-2); }.clickable-contact-row { cursor:pointer; }.clickable-contact-row:hover td { background:#f8fbf9; }.clickable-contact-row td:nth-child(-n+4) { cursor:pointer; }.modal-overlay { position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;padding:30px;background:rgba(16,45,36,.42); }.modal-overlay:target,.modal-overlay.is-open { display:flex; }.modal-card { width:min(760px,100%);max-height:90vh;overflow:auto;padding:26px;border-radius:14px;background:white;box-shadow:0 24px 70px rgba(16,45,36,.25); }.modal-head { display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line); }.modal-head h2 { margin:5px 0 6px;font:26px var(--font-heading); }.modal-head p:not(.eyebrow) { margin:0;color:var(--muted);font-size:13px; }.modal-close { display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--muted);background:#f1f4f2;font-size:24px;line-height:1; }.subtle-actions { margin:0 0 22px; }.subtle-actions .button-ghost:hover { color:var(--forest);background:var(--mint);border-color:#c8ddd3; }.nested-form { padding:20px;border:1px solid #dbe5df;border-radius:11px;background:white; }.inline-checks { display:flex;gap:18px;flex-wrap:wrap; }.inline-checks .check { margin-top:18px; }.compact-actions { margin-top:18px;padding-top:18px; }
.quiet-note { display:inline-flex;align-items:center;min-height:34px;color:var(--muted);font-size:12px; }
.archive-section { padding:20px;border:1px solid #efd8d5;border-radius:11px;background:#fffafa; }
.archive-section .form-section-head { margin-bottom:12px; }
.archive-check { margin-top:0; }
.archive-actions { margin-top:14px;padding-top:14px;border-top:1px solid #efd8d5; }
.vendor-edit-card { max-width:1040px; }
.contact-table table:not(.location-rules-table) { min-width:760px; }
.contact-table table:not(.location-rules-table) th,
.contact-table table:not(.location-rules-table) td { padding-left:12px;padding-right:12px; }
.contact-table table:not(.location-rules-table) th:nth-child(1) { width:24%; }
.contact-table table:not(.location-rules-table) th:nth-child(2) { width:22%; }
.contact-table table:not(.location-rules-table) th:nth-child(3) { width:18%; }
.contact-table table:not(.location-rules-table) th:nth-child(4) { width:17%; }
.contact-table table:not(.location-rules-table) th:nth-child(5) { width:9%; }
.contact-table table:not(.location-rules-table) th:nth-child(6) { width:10%; }
.contact-table table:not(.location-rules-table) td.actions { white-space:nowrap; }
.location-choice-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px; }
.location-choice { display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fafcfb;cursor:pointer; }
.location-choice:hover { border-color:#c8ddd3;background:#f8fbf9; }
.location-choice input { width:17px;height:17px; }
.location-choice span { margin:0;color:var(--ink);font-weight:800; }
.product-location-choice { justify-content:space-between;align-items:center;gap:14px; }
.product-location-main { display:flex;align-items:center;gap:10px;min-width:0; }
.quick-par-field { display:flex;align-items:center;gap:7px;margin-left:auto; }
.quick-par-field small { color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.6px;text-transform:uppercase; }
.quick-par-field.is-disabled { opacity:.48; }
.quick-par-field .par-input { width:66px;max-width:66px;appearance:textfield;-moz-appearance:textfield; }
.quick-par-field .par-input::-webkit-outer-spin-button,
.quick-par-field .par-input::-webkit-inner-spin-button { margin:0;-webkit-appearance:none; }
.contact-location-picker { margin-top:20px;padding-top:20px;border-top:1px solid var(--line); }
.field-label { display:block;margin-bottom:8px;color:#46534d;font-size:12px;font-weight:800; }
.vendor-scope-note { margin:-5px 0 22px;padding:13px 15px;border:1px solid #dbe5df;border-radius:10px;color:#53615a;background:#f8fbf9;font-size:12px;line-height:1.5; }
.vendor-scope-note strong { color:var(--forest); }
.location-rule-card { display:block;margin:0 0 12px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff; }
.location-rule-head { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line); }
.location-rule-head strong,.location-rule-head small { display:block; }
.location-rule-head strong { color:var(--ink);font:20px var(--font-heading); }
.location-rule-head small { margin-top:4px;color:var(--muted);font-size:11px; }
.location-rules-table { table-layout:fixed;min-width:780px; }
.location-rules-table th:nth-child(1) { width:20%; }
.location-rules-table th:nth-child(2) { width:15%; }
.location-rules-table th:nth-child(3) { width:21%; }
.location-rules-table th:nth-child(4) { width:20%; }
.location-rules-table th:nth-child(5) { width:12%; }
.location-rules-table th:nth-child(6) { width:12%; }
.table-input { width:100%;min-width:0;height:36px;padding:0 8px;font-size:12px; }
.table-input.compact-date { min-width:0;font-variant-numeric:tabular-nums; }
.par-edit-table { table-layout:fixed; }
.par-edit-table th:nth-child(1) { width:auto; }
.par-edit-table th:nth-child(2) { width:160px; }
.par-edit-table td:nth-child(2) { width:160px; }
.par-input { max-width:84px;height:32px;padding:0 9px;text-align:left;font-variant-numeric:tabular-nums; }
.par-save-bar { margin-top:16px; }
.deadline-edit-pair { display:none;gap:8px; }
.deadline-edit-pair select { flex:1.15; }
.deadline-edit-pair input { flex:.85; }
.rule-edit-control,.rule-edit-action { display:none; }
[data-location-rule-row].is-editing .rule-read-value,
[data-location-rule-row].is-editing .rule-read-action { display:none; }
[data-location-rule-row].is-editing .rule-edit-control { display:block; }
[data-location-rule-row].is-editing .deadline-edit-pair { display:flex; }
[data-location-rule-row].is-editing .rule-edit-action { display:inline-flex; }
.rule-read-value { color:#45514c;font-size:13px; }
label span { display: block; margin-bottom: 8px; color: #46534d; font-size: 12px; font-weight: 800; }
label.wide { grid-column: 1 / -1; }
input, select { width: 100%; height: 43px; padding: 0 12px; border: 1px solid #ccd5d0; border-radius: 7px; color: var(--ink); background: white; font: 14px inherit; outline: none; }
input:focus, select:focus { border-color: #4a7b67; box-shadow: 0 0 0 3px rgba(74,123,103,.1); }
.check { display: flex; align-items: center; gap: 10px; margin-top: 24px; }.check input { width: 17px; height: 17px; }.check span { margin: 0; }
.form-actions { display: flex; justify-content: flex-end; gap: 10px; padding-top: 24px; margin-top: 25px; border-top: 1px solid var(--line); }
.form-actions form { display:inline-flex;margin:0; }
.empty-state { padding: 70px 25px; text-align: center; }
.empty-icon { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 18px; border-radius: 15px; color: var(--forest); background: var(--mint); font-size: 24px; }
.empty-state h2 { margin: 0; font: 26px var(--font-heading); }.empty-state p { max-width: 580px; margin: 11px auto 23px; color: var(--muted); line-height: 1.6; }
.tabs { display: flex; gap: 6px; max-width:100%; margin: -8px 0 20px; padding: 5px; width: fit-content; overflow-x:auto;border: 1px solid var(--line); border-radius: 10px; background: white;white-space:nowrap; }
.tabs a { padding: 9px 14px; border-radius: 7px; color: var(--muted); font-size: 12px; font-weight: 800; }.tabs a.active { color: white; background: var(--forest); }
.summary-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; margin-bottom: 18px; }.summary-grid > div { padding: 18px 20px; border: 1px solid var(--line); border-radius: 11px; background: white; }.summary-grid span,.summary-grid strong { display:block; }.summary-grid span { color:var(--muted);font-size:11px; }.summary-grid strong { margin-top:6px;font:24px var(--font-heading); }
.inventory-location-panel { margin-bottom:18px; }
.location-workspace-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;padding:0 18px 18px; }
.location-workspace-card { display:block;padding:17px;border:1px solid var(--line);border-radius:12px;background:#fff;color:inherit;box-shadow:0 5px 16px rgba(21,45,36,.03);transition:border-color .15s ease,background .15s ease,transform .15s ease; }
.location-workspace-card:hover { border-color:#bfd6ca;background:#f8fbf9;transform:translateY(-1px); }
.location-workspace-card.active { border-color:#93bba9;background:#edf7f1;box-shadow:inset 4px 0 #3f8b64; }
.location-workspace-card strong { display:block;margin:6px 0 4px;font:22px var(--font-heading);color:var(--ink); }
.location-workspace-card small { display:block;min-height:16px;color:var(--muted);font-size:11px; }
.location-workspace-card div { display:flex;flex-wrap:wrap;gap:7px;margin-top:13px; }
.location-workspace-card div span { padding:5px 8px;border-radius:20px;background:#f1f5f3;color:#52615a;font-size:10px;font-weight:800; }
.location-workspace-card em { display:inline-block;margin-top:10px;color:#8a6516;font-size:11px;font-style:normal;font-weight:800; }
.location-workspace-card .button { margin-top:14px; }
.order-location-card { cursor:default; }
.filter-bar { display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line); }.filter-bar select { width:auto;min-width:150px; }.filter-bar > a { color:var(--forest-2);font-size:12px;font-weight:800; }.filter-check { display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid transparent;border-radius:8px;white-space:nowrap;font-size:12px;font-weight:700; }.filter-check.active { border-color:#bdd8ca;color:#286748;background:#edf7f1; }.filter-check input { width:15px;height:15px; }
.row-warning { background:#fffaf0; }.warning-text { color:#a56d18!important;font-weight:800; }.table-link:hover strong { color:var(--forest-2); }
.callout { max-width:900px;margin:0 auto 16px;padding:14px 17px;border-radius:9px;font-size:13px; }.callout.warning { color:#765b22;background:#f8efd8;border:1px solid #e9d399; }.callout a { text-decoration:underline;font-weight:800; }
.callout.info { max-width:none;color:#29576b;background:#e6f1f6;border:1px solid #bdd7e3; }
.count-meta { display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-bottom:18px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--line); }.count-meta>div { padding:15px 18px;background:white; }.count-meta span,.count-meta strong { display:block; }.count-meta span { margin-bottom:6px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.6px; }.count-meta strong { font-size:13px; }.count-meta small { display:block;margin-top:4px;color:var(--muted);font-size:11px; }.count-meta b { font:inherit; }.helper { color:var(--muted);font-size:11px; }
.count-meta [data-count-progress] { transition:background-color .16s ease,box-shadow .16s ease; }.count-meta [data-count-progress].complete { background:#edf7f1;box-shadow:inset 0 -3px #3f8b64; }.count-meta [data-count-progress].complete small { color:#2f6f4f;font-weight:800; }
.count-check { width:72px;text-align:center; }.count-check input { width:17px;height:17px; }.count-input { width:90px;height:36px; }.current-cell { color:var(--muted); }.sticky-actions { position:sticky;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:16px 0;padding:15px 18px;border:1px solid #c7d7cf;border-radius:11px;background:#f8fbf9;box-shadow:var(--shadow); }.sticky-actions strong,.sticky-actions small { display:block; }.sticky-actions small { margin-top:3px;color:var(--muted);font-size:11px; }.sticky-actions>div { display:flex;gap:8px; }.button-secondary { color:var(--forest);background:var(--mint); }.submit-count { display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:20px; }.submit-count p { color:var(--muted);font-size:12px; }
.count-table tr.not-counted td:not(:first-child) { opacity:.48; }
.count-table tr[data-count-row] td { transition:background-color .16s ease,opacity .16s ease; }
.count-table tr[data-count-row].counted td { background:#edf7f1; }
.count-table tr[data-count-row].counted td:first-child { box-shadow:inset 3px 0 #3f8b64; }
.approval-box { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding:22px 24px;border:1px solid #d8c794;border-radius:12px;background:#fffaf0; }.approval-box h3 { margin:5px 0;font:22px var(--font-heading); }.approval-box p:not(.eyebrow) { margin:0;color:var(--muted);font-size:12px; }.approval-controls { display:flex;align-items:center;gap:8px; }.approval-controls select { min-width:220px; }.approved-banner { display:flex;align-items:center;gap:14px;margin-top:18px;padding:18px 20px;border:1px solid #bcd7c9;border-radius:11px;background:#eaf5ee; }.approved-banner>span { display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:white;background:#32805a; }.approved-banner strong,.approved-banner small { display:block; }.approved-banner small { margin-top:4px;color:var(--muted);font-size:11px; }.approved-banner .button { margin-left:auto; }
button:disabled,select:disabled { opacity:.5;cursor:not-allowed; }
.head-actions { display:flex;gap:8px; }.order-head { display:grid;grid-template-columns:repeat(5,1fr) auto;align-items:center;gap:1px;margin-bottom:18px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--line); }.order-head>div,.order-head>form,.order-head>a { height:100%;min-height:72px;padding:15px 18px;background:white; }.order-head>div span,.order-head>div strong { display:block; }.order-head>div span { margin-bottom:7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.6px; }.order-head>div strong { font-size:13px; }.order-head>form,.order-head>a { display:flex;align-items:center;justify-content:center; }.form-card.compact { max-width:none;margin-top:18px;padding:24px; }.po-line-grid { display:grid;grid-template-columns:2.2fr .7fr .8fr .8fr .8fr auto;align-items:end;gap:12px; }.po-line-grid .button { height:43px; }.link-button { border:0;color:var(--forest-2);background:none;font:800 12px inherit;cursor:pointer; }.link-button.danger { color:var(--danger); }.delivery-open-panel,.delivery-tracker { margin-bottom:18px; }.delivery-open-list { display:grid;gap:12px;padding:0 18px 18px; }.delivery-open-card { display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(280px,1fr) auto;align-items:center;gap:18px;padding:17px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 5px 16px rgba(21,45,36,.03); }.delivery-open-card.overdue { border-color:#e3c1bd;background:#fffafa;box-shadow:inset 4px 0 var(--danger); }.delivery-open-card.today { border-color:#dfc98a;background:#fffdf7;box-shadow:inset 4px 0 var(--gold); }.delivery-open-card.upcoming { box-shadow:inset 4px 0 #93bba9; }.delivery-card-main strong { display:block;margin:6px 0 4px;font:22px var(--font-heading);color:var(--ink); }.delivery-card-main small { color:var(--muted);font-size:12px; }.delivery-card-stats { display:grid;grid-template-columns:repeat(3,1fr);gap:8px; }.delivery-card-stats span { padding:10px;border:1px solid #edf0ee;border-radius:9px;background:#fafcfb;text-align:center; }.delivery-card-stats strong,.delivery-card-stats small { display:block; }.delivery-card-stats strong { color:var(--ink);font-size:14px; }.delivery-card-stats small { margin-top:3px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px; }.delivery-card-actions { display:flex;align-items:center;justify-content:flex-end;gap:8px; }.timeline-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:0 18px 18px; }.timeline-step { display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fafcfb; }.timeline-step>span { display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;color:#637069;background:#eef2f0;font-size:12px;font-weight:900; }.timeline-step strong,.timeline-step small { display:block; }.timeline-step small { margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45; }.timeline-step.done { border-color:#bfd8cb;background:#f4faf6; }.timeline-step.done>span { color:white;background:#32805a; }.timeline-step.warning { border-color:#e6d39d;background:#fffaf0; }.timeline-step.warning>span { color:#765b22;background:#f3d98e; }.timeline-step.muted { opacity:.72; }.shortage-box { margin:0 18px 18px;padding:15px;border:1px solid #e6d39d;border-radius:11px;background:#fffaf0; }.shortage-box>strong { display:block;margin-bottom:9px;color:#765b22; }.shortage-box ul { display:grid;gap:7px;margin:0;padding:0;list-style:none; }.shortage-box li { display:flex;justify-content:space-between;gap:12px;padding-top:7px;border-top:1px solid #ecdcb3;color:#5f5040;font-size:12px; }.shortage-box li:first-child { border-top:0;padding-top:0; }.delivery-panel { margin-top:18px; }.receipt-meta { max-width:none;margin-bottom:18px; }.standalone { margin-top:18px;padding:0;border:0; }.receive-table input,.receive-table select { min-width:115px; }.receive-table tr.not-counted td:not(:first-child) { opacity:.45; }
.receive-meta { padding-bottom:18px; }.receive-summary { display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--line); }.receive-summary>span { min-width:118px;padding:10px 12px;border:1px solid #edf0ee;border-radius:9px;background:#fafcfb;text-align:center; }.receive-summary strong,.receive-summary small { display:block; }.receive-summary small { margin-top:3px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px; }.receive-line-status { margin-top:5px;color:var(--muted);font-size:11px; }.receive-table tr.receive-short td { background:#fffaf0; }.receive-table tr.receive-short .receive-line-status { color:#8a6516;font-weight:800; }
.order-actions { display:flex;align-items:center;justify-content:center;gap:8px;height:100%;min-height:72px;padding:14px;background:white; }.order-actions form { margin:0; }.confirm-card { max-width:650px;margin:50px auto;padding:42px;border:1px solid var(--line);border-radius:15px;background:white;box-shadow:var(--shadow);text-align:center; }.confirm-card.danger-zone { border-top:5px solid var(--danger); }.confirm-icon { display:grid;place-items:center;width:56px;height:56px;margin:0 auto 18px;border-radius:50%;color:white;background:var(--danger);font:30px var(--font-heading); }.confirm-card h2 { margin:0;font:28px var(--font-heading); }.confirm-card p { margin:14px auto 28px;color:var(--muted);line-height:1.65; }.confirm-list { display:inline-grid;gap:7px;margin:0 auto 10px;padding:15px 22px;text-align:left;border:1px solid #efd8d5;border-radius:9px;color:var(--danger);background:#fff8f7;font-size:13px;font-weight:800; }.confirm-actions { display:flex;justify-content:center;gap:10px; }.confirm-actions form { margin:0; }
.po-product-grid { display:grid;grid-template-columns:2fr 1fr .65fr .65fr .7fr .75fr .75fr auto;align-items:end;gap:10px; }.po-product-grid .button { height:43px; }.expected-date-form { display:flex!important;align-items:end!important;gap:7px!important;padding:10px 12px!important; }.expected-date-form label { min-width:145px; }.expected-date-form label span { margin-bottom:5px!important;color:var(--muted)!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.6px; }.expected-date-form input { height:34px;padding:0 7px;font-size:12px; }.expected-date-form button { height:34px;border:0;border-radius:6px;color:var(--forest);background:var(--mint);font:800 10px inherit;cursor:pointer; }
.panel-description { margin:7px 0 0;color:var(--muted);font-size:12px; }.purchase-filters { display:flex;align-items:center;gap:10px;padding:14px 18px;border-block:1px solid var(--line);background:#f8faf8; }.purchase-filters input[type="search"] { max-width:300px; }.purchase-filters select { width:auto;min-width:150px; }.purchase-filters>span { margin-left:auto;color:var(--muted);font-size:11px;font-weight:800; }.purchase-table-wrap { max-height:620px;overflow:auto;scrollbar-gutter:stable; }.purchase-table thead { position:sticky;top:0;z-index:2; }.purchase-table th { white-space:nowrap; }.purchase-table td { vertical-align:middle; }.purchase-table tr.has-order { background:#edf7f1;box-shadow:inset 3px 0 #3f8b64; }.purchase-product { min-width:230px; }.vendor-context { min-width:155px; }.vendor-context strong,.vendor-context small,.inventory-context strong,.suggested-cell strong,.cost-cell strong { display:block; }.vendor-context small,.inventory-context small,.suggested-cell small,.cost-cell small { display:block;margin-top:3px;color:var(--muted);font-size:10px; }.suggested-cell { min-width:145px; }.use-suggestion { margin-top:6px;padding:3px 8px;border:1px solid #b9d5c7;border-radius:5px;color:var(--forest);background:#edf7f1;font:800 10px inherit;cursor:pointer; }.order-entry { position:sticky;right:0;z-index:1;display:flex;gap:6px;min-width:180px;background:white;box-shadow:-12px 0 16px -16px rgba(21,45,36,.75); }.purchase-table th.order-entry-heading { position:sticky;right:0;z-index:4;background:#f8faf8;box-shadow:-12px 0 16px -16px rgba(21,45,36,.75); }.purchase-table tr.has-order .order-entry { background:#edf7f1; }.purchase-table tr.row-warning:not(.has-order) .order-entry { background:#fffaf0; }.order-entry input { width:88px;height:36px; }.order-entry select { width:82px;height:36px; }.purchase-save { position:sticky;bottom:14px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:15px 0;padding:15px 18px;border:1px solid #b9cec3;border-radius:11px;background:#f8fbf9;box-shadow:var(--shadow); }.purchase-save strong,.purchase-save small { display:block; }.purchase-save small { margin-top:3px;color:var(--muted);font-size:11px; }
.estimated-cost { min-width:145px; }.estimated-cost strong,.estimated-cost small { display:block; }.estimated-cost small { margin-top:3px;color:var(--muted);font-size:10px; }.estimated-cost.missing-cost strong { color:var(--danger); }.purchase-total { margin-left:auto;text-align:right; }.purchase-total strong { font:20px var(--font-heading); }.purchase-total small { margin-top:4px!important; }
.vendor-summary-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0 0 18px; }.vendor-summary-card { padding:16px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow); }.vendor-summary-card>div { display:flex;align-items:center;justify-content:space-between;gap:8px; }.vendor-summary-card span { font-size:12px;font-weight:800; }.vendor-summary-card>strong { display:block;margin:14px 0 5px;font-size:22px; }.vendor-summary-card small,.vendor-summary-card a { display:block;margin-top:5px;font-size:11px; }.batch-vendor-cell { min-width:210px; }.batch-vendor-cell select { width:100%; }.batch-vendor-cell small { display:block;margin-top:4px;color:var(--muted);font-size:10px; }.batch-table .batch-line-total { min-width:125px; }.email-vendor-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:10px;margin:20px 0; }.email-vendor-card { display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:9px;background:#fafcfb; }.email-vendor-card.email-missing { border-color:#dfc98a;background:#fffaf0; }.email-vendor-card>span { width:100%; }.email-vendor-card input { width:18px;height:18px;margin-top:2px; }.email-vendor-card strong,.email-vendor-card small { display:block; }.email-vendor-card small { margin-top:4px;color:var(--muted); }.email-vendor-card.email-missing small { color:#8a6516;font-weight:700; }.email-vendor-products { display:grid;gap:4px;margin:10px 0 0;padding:8px 0 0;border-top:1px solid var(--line);list-style:none; }.email-vendor-products li { display:grid;grid-template-columns:minmax(0,260px) auto;justify-content:start;gap:12px;font-size:11px; }.email-vendor-products li span:first-child { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.email-vendor-products li span:last-child { color:var(--muted);white-space:nowrap; }.email-preview-list { display:grid;gap:18px;padding:18px; }.email-preview { padding:18px;border:1px solid var(--line);border-radius:12px;background:#fafcfb; }.email-preview-meta { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px; }.email-preview-meta>div { padding:12px 13px;border:1px solid #e7ebe8;border-radius:9px;background:white; }.email-preview span,.email-preview strong { display:block; }.email-preview span { color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px; }.email-message { padding:20px;border:1px solid #e1e7e3;border-radius:10px;background:white;color:#26302c;font:14px/1.6 Arial,Helvetica,sans-serif; }.email-message p { margin:0 0 13px; }.email-order-table { margin:14px 0 16px;border:1px solid #dfe5e1;border-radius:9px;overflow:hidden;border-collapse:separate;border-spacing:0; }.email-order-table th { padding:10px 12px;background:#f4f7f5;color:#65736d;font:700 11px Arial,Helvetica,sans-serif;letter-spacing:.4px;text-transform:uppercase; }.email-order-table td { padding:12px;border-bottom:1px solid #edf0ee;color:#38443f;font-size:13px; }.email-order-table tbody tr:last-child td { border-bottom:0; }.email-order-table tfoot td { border-top:1px solid #dfe5e1;border-bottom:0;background:#fbfcfb;font-weight:800; }.email-detail-line { color:#56635d;font-size:13px; }.email-signature { margin-top:17px;padding-top:15px;border-top:1px solid #e6ebe8;color:#45514c; }.email-signature p { margin-bottom:5px; }.email-signature strong { color:#17211d; }.email-signature span { margin-top:2px;color:#68756f;font-size:13px;text-transform:none;letter-spacing:0; }
.vendor-summary-card.ready-receive,.sent-summary-card.ready-receive { border-color:#bdd8ca;background:#f4faf6;box-shadow:inset 4px 0 #3f8b64,var(--shadow); }.vendor-summary-actions,.sent-summary-actions { display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--line); }.vendor-summary-actions a { display:inline-flex;margin-top:0; }.sent-confirm { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:22px 24px;border:1px solid #bdd8ca;border-radius:12px;background:#f4faf6;box-shadow:var(--shadow); }.sent-confirm h2 { margin:5px 0 8px;font:28px var(--font-heading); }.sent-confirm p:not(.eyebrow) { margin:0;color:var(--muted);font-size:13px;line-height:1.5; }.sent-confirm-actions { display:flex;align-items:center;gap:8px; }.sent-summary-stats { margin-bottom:18px; }.sent-summary-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;padding:0 18px 18px; }.sent-summary-card { padding:16px;border:1px solid var(--line);border-radius:11px;background:white;box-shadow:var(--shadow); }.sent-summary-card.just-sent { border-color:#9fceb8; }.sent-summary-card>div { display:flex;align-items:center;justify-content:space-between;gap:10px; }.sent-summary-card span { font-size:12px;font-weight:800; }.sent-summary-card>strong { display:block;margin:14px 0 5px;font-size:22px; }.sent-summary-card small { display:block;margin-top:5px;color:var(--muted);font-size:11px; }.order-next-step { display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:14px 17px;border:1px solid #bdd8ca;border-radius:10px;background:#f4faf6; }.order-next-step span { padding:5px 8px;border-radius:7px;color:white;background:#32805a;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap; }.order-next-step strong { color:#1f513a;font-size:13px; }.order-next-step small { color:#53615a;font-size:12px;line-height:1.4; }.order-next-step .button { margin-left:auto; }
.email-setup-banner { display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:14px 17px;border:1px solid #dfc98a;border-radius:10px;background:#fffaf0;color:#5f5040; }.email-setup-banner.ready { border-color:#bdd8ca;background:#f4faf6;color:#345746; }.email-setup-banner span { padding:5px 8px;border-radius:7px;background:#f3d98e;color:#6f551e;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap; }.email-setup-banner.ready span { color:white;background:#32805a; }.email-setup-banner strong { color:#3c3020;font-size:13px; }.email-setup-banner.ready strong { color:#1f513a; }.email-setup-banner small { color:#6d604d;font-size:12px;line-height:1.4; }.email-setup-banner .button { margin-left:auto; }
.email-setup-hero { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:26px 28px;border:1px solid #dfc98a;border-radius:13px;background:#fffaf0;box-shadow:var(--shadow); }.email-setup-hero.ready { border-color:#bdd8ca;background:#f4faf6; }.email-setup-hero h2 { margin:6px 0 8px;font:30px var(--font-heading); }.email-setup-hero p:not(.eyebrow) { max-width:720px;margin:0;color:var(--muted);line-height:1.55; }.email-setup-panel { margin-bottom:18px; }.email-checklist { display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0;padding:0 18px 18px;list-style:none; }.email-checklist li { display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:center;padding:14px;border:1px solid #ead7a5;border-radius:10px;background:#fffaf0; }.email-checklist li.ready { border-color:#bdd8ca;background:#f4faf6; }.email-checklist li>span { grid-row:span 2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#765b22;background:#f3d98e;font-weight:900; }.email-checklist li.ready>span { color:white;background:#32805a; }.email-checklist strong,.email-checklist small { display:block; }.email-checklist small { margin-top:3px;color:var(--muted);font-size:11px; }.setup-code { display:grid;gap:7px;padding:0 18px 18px; }.setup-code code { display:block;padding:10px 12px;border:1px solid #e7ebe8;border-radius:8px;background:#fafcfb;color:#31423b;font-size:12px; }
.email-setup-actions { display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:0 0 auto; }.email-setup-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0 18px 18px;list-style:none;counter-reset:email-step; }.email-setup-steps li { position:relative;min-height:108px;padding:15px 15px 15px 48px;border:1px solid var(--line);border-radius:11px;background:#fafcfb;counter-increment:email-step; }.email-setup-steps li::before { content:counter(email-step);position:absolute;top:14px;left:14px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;color:white;background:var(--deep-blue);font-size:11px;font-weight:900; }.email-setup-steps strong,.email-setup-steps small,.setup-code>span { display:block; }.email-setup-steps small { margin-top:6px;color:var(--muted);font-size:11px;line-height:1.5; }.setup-code>span { margin-top:5px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase; }
.manual-email-banner { display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:14px 17px;border:1px solid #dfc98a;border-radius:10px;background:#fffaf0;color:#5f5040; }.manual-email-banner span { padding:5px 8px;border-radius:7px;background:#f3d98e;color:#6f551e;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap; }.manual-email-banner strong { color:#3c3020;font-size:13px; }.manual-email-banner small { color:#6d604d;font-size:12px;line-height:1.4; }.email-preview-actions { display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line); }.button.copied { color:white;background:#32805a;border-color:#32805a; }

/* Haven restaurant operations brand system */
.overview-order-main>strong,.quick-panel h2,.promo-card strong,.form-section-head h3,
.vendor-context-card h2,.modal-head h2,.location-rule-head strong,.empty-state h2,
.summary-grid strong,.location-workspace-card strong,.approval-box h3,.delivery-card-main strong,
.confirm-card h2,.purchase-total strong,.sent-confirm h2,.email-setup-hero h2 {
  font-family:var(--font-heading);
  font-weight:800;
  letter-spacing:-.3px;
}
.panel-head>a:not(.button),.actions a,.table-link:hover strong,.clickable-contact-row .quiet-edit-link:hover,
.clickable-contact-row .table-link:hover strong,.filter-bar>a { color:var(--deep-blue); }
th { color:#4b6075;background:#f1f6f9;border-block-color:#dfe8ee; }
td { color:#3d4f60;border-bottom-color:#e8eef2; }
td small { color:#748597; }
.clickable-table-row:hover td,.clickable-contact-row:hover td,.overview-order-row:hover { background:#f0fbf6; }
.positive { color:#07845d; }
.pill-good,.pill-approved,.pill-received { color:#087653;background:#dcf8eb; }
.pill-submitted,.pill-sent { color:#0c4d7b;background:#e5f1f8; }
.quick-panel h2 { font-size:23px; }
.quick-panel>a { border-top-color:#e4ebef;transition:color .16s ease,transform .16s ease; }
.quick-panel>a:hover { color:var(--deep-blue);transform:translateX(3px); }
.quick-complete-form { border-top-color:#e4ebef; }
.step-number { color:#06304a;background:var(--mint-strong);box-shadow:inset 0 0 0 1px rgba(16,185,129,.16); }
.promo-card { border-color:#bfe8d8;background:linear-gradient(145deg,#ecfbf5,#f7fbfd); }
.promo-card span { color:#087653; }
.promo-card strong { color:var(--deep-blue); }
.promo-card p { color:var(--muted); }
.product-photo-card,.pricing-section,.vendor-scope-note,.nested-form { border-color:#d9e5ea;background:#f5fafb; }
.product-photo-frame { border-color:#b9d8ce; }
.modal-overlay { background:rgba(2,18,45,.56);backdrop-filter:blur(3px); }
.modal-card { box-shadow:0 28px 80px rgba(2,18,45,.28); }
.modal-close { color:var(--deep-blue);background:#edf4f7; }
.subtle-actions .button-ghost:hover,.button-ghost:hover { color:var(--deep-blue);background:#e8faf2;border-color:#9edcc3; }
.location-choice { background:#f8fbfd; }
.location-choice:hover { border-color:#a9dbc8;background:#f0fbf6; }
.field-label,label span { color:#334b62; }
input,select { border-color:#c8d6df;border-radius:8px;color:var(--ink);background:#fff; }
input:focus,select:focus { border-color:var(--sage);box-shadow:0 0 0 3px rgba(16,185,129,.13); }
input[type="checkbox"],input[type="radio"] { accent-color:var(--sage); }
.empty-icon { color:var(--deep-blue);background:var(--mint-strong); }
.tabs { border-color:#d8e3e9;background:#f9fcfd;box-shadow:0 5px 15px rgba(2,18,45,.035); }
.tabs a { transition:color .16s ease,background .16s ease; }
.tabs a:hover { color:var(--deep-blue);background:#eef6f8; }
.tabs a.active { color:white;background:var(--deep-blue);box-shadow:0 5px 12px rgba(2,18,45,.13); }
.summary-grid>div { border-color:var(--line);border-radius:13px;box-shadow:0 5px 15px rgba(2,18,45,.03); }
.summary-grid strong { color:var(--deep-blue); }
.location-workspace-card { box-shadow:0 7px 18px rgba(2,18,45,.035); }
.location-workspace-card:hover { border-color:#a9dbc8;background:#f0fbf6; }
.location-workspace-card.active { border-color:#73d5ae;background:#eafaf3;box-shadow:inset 4px 0 var(--sage); }
.filter-check.active { border-color:#8fd9bd;color:#087653;background:#eafaf3; }
.count-meta [data-count-progress].complete { background:#eafaf3;box-shadow:inset 0 -3px var(--sage); }
.count-meta [data-count-progress].complete small { color:#087653; }
.approved-banner,.sent-confirm,.order-next-step,.email-setup-banner.ready,.email-setup-hero.ready,
.email-checklist li.ready { border-color:#9edcc3;background:#ecfbf5; }
.approved-banner>span,.timeline-step.done>span,.order-next-step span,.email-setup-banner.ready span,
.email-checklist li.ready>span { background:var(--sage); }
.timeline-step.done { border-color:#a8dfc9;background:#f0fbf6; }
.purchase-filters { background:#f3f8fa; }
.purchase-table tr.has-order { background:#eafaf3;box-shadow:inset 3px 0 var(--sage); }
.use-suggestion,.batch-use-suggestion { margin-top:6px;padding:4px 9px;border:1px solid var(--deep-blue);border-radius:6px;color:white;background:var(--deep-blue);box-shadow:0 4px 10px rgba(2,18,32,.1);font:800 10px var(--font-body);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease; }
.use-suggestion:hover:not(:disabled),.batch-use-suggestion:hover:not(:disabled) { border-color:var(--sage);background:var(--sage);transform:translateY(-1px); }
.use-suggestion:focus-visible,.batch-use-suggestion:focus-visible { outline:3px solid rgba(16,185,129,.22);outline-offset:2px; }
.use-suggestion:disabled,.batch-use-suggestion:disabled { border-color:#a9b8c5;color:white;background:#a9b8c5;box-shadow:none; }
.purchase-table th.order-entry-heading { background:#f1f6f9; }
.purchase-table tr.has-order .order-entry { background:#eafaf3; }
.purchase-save { border-color:#9edcc3;background:#f0fbf6;box-shadow:0 14px 32px rgba(2,18,45,.1); }
.vendor-summary-card,.sent-summary-card,.email-vendor-card,.email-preview { border-radius:13px; }
.vendor-summary-card.ready-receive,.sent-summary-card.ready-receive { border-color:#8fd9bd;background:#f0fbf6;box-shadow:inset 4px 0 var(--sage),var(--shadow); }
.button.copied { background:var(--sage);border-color:var(--sage); }

@media (max-width: 1050px) { .stat-grid { grid-template-columns: repeat(2,1fr); }.split-grid { grid-template-columns: 1fr; }.order-head { grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible; }.order-head>.order-actions { grid-column:1/-1;min-height:58px;border-top:1px solid var(--line); }.panel-head { align-items:flex-start; } }
@media (max-width: 1050px) { .sidebar { position:static;width:100%;padding:18px 20px; }.sidebar .brand { padding-bottom:17px; }.sidebar nav { grid-template-columns:repeat(5,minmax(0,1fr)); }.sidebar-foot { display:none; } main { margin:0;padding:28px 24px 55px; } }
@media (max-width: 760px) { .sidebar { position: static; width: 100%; padding: 17px; }.sidebar nav { grid-template-columns: repeat(2,1fr); }.sidebar-foot { display:none; }.brand { padding-bottom: 16px; } main { margin:0; padding: 24px 16px 50px; }.hero-card { align-items:flex-start; flex-direction:column; }.stat-grid, .field-grid,.summary-grid,.count-meta,.order-head,.po-line-grid,.po-product-grid,.delivery-open-card,.product-form-top,.overview-order-row,.email-setup-steps { grid-template-columns:1fr; } .order-head>.order-actions { grid-column:auto;width:100%; }.overview-order-row { gap:11px; }.overview-order-total { text-align:left; }.product-photo-card { position:static; } label.wide { grid-column:auto; }.panel-head,.form-actions,.order-actions,.purchase-save,.filter-bar,.approval-box,.approval-controls,.sticky-actions,.purchase-filters,.delivery-card-actions,.sent-confirm,.sent-confirm-actions,.order-next-step,.email-setup-banner,.email-setup-hero,.email-setup-actions { align-items:stretch;flex-direction:column; }.order-actions .button,.order-actions>a,.order-actions>form,.order-actions>form .button,.email-setup-actions .button { width:100%; }.purchase-save { position:static; }.purchase-total { margin-left:0;text-align:left; }.filter-bar select,.purchase-filters select,.purchase-filters input[type="search"] { width:100%;max-width:none; }.purchase-filters>span { margin-left:0; }.head-actions { flex-direction:column; }.order-next-step .button,.email-setup-banner .button { margin-left:0; } }
@media (max-width: 520px) { .sidebar nav { gap:3px; }.nav-item { gap:8px;padding:10px 9px;font-size:12px; }.brand-mark { width:38px;height:42px;flex-basis:38px; }.brand strong { font-size:15px;letter-spacing:3.7px; }.topbar h1 { font-size:29px; }.hero-card { min-height:0;padding:30px 25px; }.hero-card h2 { font-size:32px; }.stat-grid { grid-template-columns:1fr; }.tabs { width:100%;overflow-x:auto; }.tabs a { flex:0 0 auto; } }
@media print {
  @page { margin: .5in; }
  body { background:white;color:#111;font-family:Arial,Helvetica,sans-serif; }
  .sidebar,.topbar,.tabs,.callout,.notice,.form-actions,.print-hide { display:none!important; }
  main { min-height:0;margin:0;padding:0; }
  .panel,.form-card,.empty-state { border:0!important;box-shadow:none!important;background:white!important; }
  .email-preview-list { display:block;padding:0; }
  .email-preview { break-after:page;margin:0 0 24px;padding:0;border:0;border-radius:0;background:white; }
  .email-preview:last-child { break-after:auto; }
  .email-preview-meta { grid-template-columns:1fr 1fr;margin-bottom:14px; }
  .email-preview-meta>div { border:1px solid #d8d8d8;background:white; }
  .email-message { padding:0;border:0;border-radius:0;background:white;color:#111;font-size:12px;line-height:1.45; }
  .email-order-table { border-color:#bbb; }
  .email-order-table th { color:#222;background:#f1f1f1; }
  .email-order-table td { color:#111;border-bottom:1px solid #ddd; }
  .email-order-table tfoot td { background:#f7f7f7;border-top:1px solid #bbb; }
}

.vendor-summary-card .vendor-summary-actions { justify-content:flex-start; }
.vendor-summary-actions .button { display:inline-flex;min-height:32px;padding:0 10px;margin-top:0;font-size:11px;white-space:normal;text-align:center; }

.inventory-product-stock { min-width:260px; }
.inventory-location-total { display:block;font-size:21px;color:var(--deep-blue); }
.inventory-location-total small { display:inline;font-size:12px;font-weight:500; }
.inventory-area-breakdown { display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px; }
.inventory-area-quantity { color:var(--muted);font-size:12px; }
.inventory-area-quantity strong { display:inline;margin-left:5px;color:var(--deep-blue); }

.count-filters { flex-wrap:wrap;align-items:end; }
.count-filters label:not(.filter-check) { display:grid;gap:5px;font-size:12px; }
.count-actions,.count-actions>div { flex-wrap:wrap; }
.count-table tr[hidden] { display:none; }

/* Keep ordering inputs in the worksheet without horizontal scrolling. */
.purchase-builder:has(.batch-table) { container-type:inline-size; }
.purchase-table-wrap:has(.batch-table) { max-height:none;overflow:visible;scrollbar-gutter:auto; }
.batch-table { table-layout:fixed;min-width:0;width:100%; }
.batch-table th,.batch-table td { min-width:0;padding:14px 10px;white-space:normal;overflow-wrap:anywhere; }
.batch-table th:nth-child(1) { width:25%; }
.batch-table th:nth-child(2) { width:23%; }
.batch-table th:nth-child(3) { width:16%; }
.batch-table th:nth-child(4) { width:13%; }
.batch-table th:nth-child(5) { width:23%; }
.batch-table .order-entry,.batch-table th.order-entry-heading { position:static;display:table-cell;box-shadow:none;background:transparent; }
.batch-table .order-entry-controls { display:flex;gap:6px; }
.batch-table .order-entry input,.batch-table .order-entry select { width:50%;min-width:0; }
.batch-table .batch-line-total { min-width:0;margin-top:8px;font-size:12px; }
.batch-table .batch-line-total small { display:block;color:var(--muted);font-size:10px;margin-top:3px; }
@container (max-width: 760px) {
  .batch-table thead { display:none; }
  .batch-table,.batch-table tbody { display:block; }
  .batch-table tr { display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:14px;border-bottom:1px solid var(--line); }
  .batch-table tr[hidden] { display:none; }
  .batch-table td,.batch-table .order-entry { display:block;width:auto;min-width:0;border:0;padding:6px 0; }
  .batch-table td::before { content:attr(data-label);display:block;margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase; }
  .batch-table .purchase-product { grid-column:1 / -1; }
  .batch-table .purchase-product::before { display:none; }
  .batch-table .order-entry { grid-column:1 / -1; }
  .batch-table .order-entry-controls { max-width:300px; }
  .purchase-builder .purchase-filters { flex-wrap:wrap; }
}

.email-message p strong { display:inline; }

/* Keep the before/after confirmation readable in a narrow panel. */
.receipt-impact-table { min-width: 0; width: 100%; table-layout: fixed; }
.receipt-impact-table th, .receipt-impact-table td { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .receipt-impact-table th, .receipt-impact-table td { padding: 10px 6px; font-size: 12px; }
}

/* Sign-in and team access use compact, labelled controls. */
.auth-card { margin-bottom:24px; }
.auth-card form { display:grid; gap:18px; }
.auth-card label { display:grid; gap:7px; color:var(--text, #102b46); font-weight:600; }
.auth-card label:has(input[type="checkbox"]) { display:flex; align-items:center; gap:10px; font-weight:500; }
.auth-card input[type="checkbox"] { width:18px; height:18px; min-height:18px; margin:0; flex:0 0 18px; }
.auth-card fieldset { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; border:1px solid #dbe6ed; border-radius:12px; padding:18px; }
.auth-card legend { font-size:14px; font-weight:600; padding:0 6px; color:#4c6479; }
.auth-card button { justify-self:start; }
.auth-card form + form { margin-top:16px; }
.auth-card .helper { line-height:1.6; margin-bottom:22px; }

.signup-card { max-width: 660px; margin-inline: auto; }
.signup-card .signup-intro { font-size: 1.1rem; line-height: 1.6; }
.signup-card label { display: grid; gap: 8px; }
.signup-card input:not([type=hidden]) { width: 100%; }
.signup-checklist { max-width: 960px; margin-inline: auto; }
.signup-step { display: flex; gap: 24px; align-items: center; justify-content: space-between; padding: 22px 0; border-bottom: 1px solid var(--line,#dbe5ec); }
.signup-step h2 { font-size: 1.15rem; margin: 0 0 8px; }
.signup-step p { margin: 0; }
.staging-notice { margin-bottom: 24px; background: #fff8e7; border-color: #ebd6a0; color: #755c21; }
@media(max-width:650px) { .signup-step { align-items: flex-start; flex-direction: column; } }

/* Public plan preview. Scoped so operational screens retain their layout. */
.pricing-page { background:#fafcfb; color:#102b38; }
.pricing-page a:focus-visible,.pricing-page summary:focus-visible { outline:3px solid #0b8c63; outline-offset:5px; }
.pricing-sr-only,.pricing-skip:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.pricing-skip:focus { position:absolute; z-index:10; top:8px; left:8px; padding:12px; background:white; }
.pricing-preview { background:#092c34; color:#d7eee5; padding:9px 20px; text-align:center; font-size:12px; letter-spacing:.2px; }
.pricing-preview span { margin:0 7px; }
.pricing-header,.pricing-footer { max-width:1220px; margin:auto; padding:26px 30px; display:flex; gap:24px; align-items:center; justify-content:space-between; }
.pricing-brand { display:flex; align-items:center; gap:11px; font-size:20px; font-weight:850; letter-spacing:4px; }
.pricing-brand small { display:block; margin-top:4px; font-size:10px; font-weight:500; letter-spacing:0; color:#5d7077; }
.pricing-header nav { display:flex; align-items:center; gap:30px; font-size:13px; font-weight:650; }
.pricing-header .button { min-height:39px; border-color:#c4d5cf; box-shadow:none; }
.pricing-main { max-width:1220px; min-height:0; margin:0 auto; padding:0 30px; }
.pricing-hero { text-align:center; padding:43px 0 38px; }
.pricing-kicker { color:#13735a; font-size:10px; line-height:1.5; font-weight:800; letter-spacing:2px; margin:0 0 16px; }
.pricing-hero h1 { margin:0 0 20px; font:780 clamp(34px,4.1vw,56px)/1.1 var(--font-heading); letter-spacing:-2px; }
.pricing-hero h1 span { color:#117756; }
.pricing-hero>p:not(.pricing-kicker) { color:#52696f; font-size:16px; line-height:1.7; margin:0; }
.pricing-launch-note { display:inline-flex; align-items:center; gap:8px; margin-top:21px; font-size:12px; color:#355a4d; }
.pricing-launch-note>span { width:6px; height:6px; background:#11825b; border-radius:50%; flex-shrink:0; }
.pricing-plans { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; scroll-margin-top:20px; }
.pricing-plan { border:1px solid #d4e1dc; border-radius:15px; padding:28px; background:#fff; display:flex; flex-direction:column; }
.pricing-plan-label { color:#56756c; font-size:10px; font-weight:750; letter-spacing:1px; text-transform:uppercase; margin:0 0 13px; }
.pricing-plan h2 { font:780 26px/1.2 var(--font-heading); letter-spacing:-.7px; margin:0 0 10px; }
.pricing-plan-description { color:#5c7177; font-size:13px; line-height:1.6; min-height:62px; margin:0 0 20px; }
.pricing-price { font-size:30px; font-weight:750; letter-spacing:-1px; margin-bottom:22px; }
.pricing-price small { display:block; font-size:12px; font-weight:450; letter-spacing:0; color:#6b7d80; margin-top:7px; }
.pricing-capacity { display:flex; flex-wrap:wrap; gap:7px 15px; padding-top:18px; border-top:1px solid #dce7e2; font-size:12px; color:#526b65; }
.pricing-capacity strong { font-size:15px; color:#133b30; }
.pricing-page .pricing-choose { width:100%; margin:23px 0; min-height:45px; background:#f0f6f2; border-color:#c4d8cb; color:#163f32; box-shadow:none; font-size:13px; white-space:normal; }
.pricing-choose span { margin-left:auto; font-size:17px; }
.pricing-page .pricing-choose:hover { background:#dbefe3; transform:none; }
.pricing-plan ul { list-style:none; display:grid; gap:13px; margin:0; padding:0; color:#4f6366; font-size:12px; line-height:1.5; }
.pricing-plan li { display:flex; align-items:baseline; gap:10px; }
.pricing-plan li>span { font-weight:800; color:#168156; }
.pricing-plan-featured { color:white; background:#0c323b; border-color:#0c323b; box-shadow:0 14px 32px #0c323b12; }
.pricing-plan-featured .pricing-plan-label { color:#9fe2c2; }
.pricing-plan-featured .pricing-plan-description,.pricing-plan-featured .pricing-price small,.pricing-plan-featured li,.pricing-plan-featured .pricing-capacity { color:#c3d6d7; }
.pricing-plan-featured .pricing-capacity { border-color:#34545b; }
.pricing-plan-featured .pricing-capacity strong { color:white; }
.pricing-plan-featured li>span { color:#92d9b7; }
.pricing-page .pricing-plan-featured .pricing-choose { background:#a8e8c6; border-color:#a8e8c6; color:#0a3126; }
.pricing-page .pricing-plan-featured .pricing-choose:hover { background:#cbf6df; }
.pricing-plan-note { max-width:800px; margin:22px auto 0; text-align:center; color:#637676; font-size:12px; line-height:1.7; }
.pricing-included { margin:65px 0; padding:32px 0; border-block:1px solid #dae5df; display:grid; grid-template-columns:1fr 1fr 1fr; gap:40px; align-items:center; }
.pricing-included h2 { font-size:29px; letter-spacing:-.7px; margin:0; }
.pricing-included h3 { font-size:16px; margin:0 0 12px; }
.pricing-included p:not(.pricing-kicker) { color:#5b7074; font-size:13px; line-height:1.8; margin:0; }
.pricing-section-heading h2,.pricing-faq h2 { font-size:30px; letter-spacing:-.9px; margin:0 0 13px; }
.pricing-section-heading>p:last-child { color:#657878; font-size:13px; line-height:1.6; margin:0 0 30px; }
.pricing-comparison { scroll-margin-top:25px; }
.pricing-comparison table { width:100%; min-width:0; border-collapse:collapse; table-layout:fixed; font-size:13px; }
.pricing-comparison th,.pricing-comparison td { padding:17px 14px; white-space:normal; overflow-wrap:anywhere; border-bottom:1px solid #dee8e1; color:#284c4b; }
.pricing-comparison thead th { background:#eff5f1; font-size:12px; letter-spacing:0; text-transform:none; text-align:center; }
.pricing-comparison thead th:first-child { width:46%; text-align:left; border-radius:9px 0 0 9px; }
.pricing-comparison thead th:last-child { border-radius:0 9px 9px 0; }
.pricing-comparison tbody th { text-align:left; font-weight:500; background:transparent; text-transform:none; letter-spacing:0; font-size:13px; }
.pricing-comparison td { text-align:center; }
.pricing-check { font-size:17px; font-weight:750; color:#168158; }
.pricing-unavailable { color:#8da29d; }
.pricing-faq { display:grid; grid-template-columns:1fr 1.6fr; gap:50px; margin:76px 0; }
.pricing-faq details { padding:18px 0; border-bottom:1px solid #dce6e1; }
.pricing-faq details:first-child { border-top:1px solid #dce6e1; }
.pricing-faq summary { font-size:14px; font-weight:650; cursor:pointer; line-height:1.5; }
.pricing-faq p { font-size:13px; color:#5b7074; line-height:1.8; margin-bottom:0; }
.pricing-footer { border-top:1px solid #d7e3dd; padding-block:28px; font-size:12px; color:#5d7471; }
.pricing-footer .pricing-brand { color:#133b33; font-size:16px; }
.pricing-footer>p { margin-right:auto; }
.pricing-footer>a:last-child { color:#1a5944; font-weight:650; }
.signup-plan { padding:18px; margin:18px 0 24px; border:1px solid #b9dbc9; border-radius:10px; background:#effaf3; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.signup-plan span,.signup-plan strong,.signup-plan small { display:block; }
.signup-plan span { font-size:9px; letter-spacing:1px; color:#346c55; font-weight:700; }
.signup-plan strong { font-size:21px; margin:6px 0; }
.signup-plan small { color:#547366; line-height:1.5; }
.signup-plan a,.signup-back-link { font-size:12px; font-weight:650; color:#146547; text-decoration:underline; text-underline-offset:3px; }
/* Marketing home: the same palette as pricing, separate from operational layouts. */
.home-main { overflow:visible; }
.home-hero { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:42px; padding:50px 0 66px; }
.home-intro h1 { font:780 clamp(36px,4.3vw,57px)/1.08 var(--font-heading); letter-spacing:-2.4px; margin:0 0 25px; }
.home-intro h1 span { color:#117756; }
.home-intro>p:not(.pricing-kicker):not(.home-small) { max-width:440px; font-size:16px; line-height:1.8; color:#52696f; }
.home-actions { display:flex; flex-wrap:wrap; gap:12px; margin:28px 0 15px; }
.home-page .button { font-size:13px; min-height:44px; box-shadow:none; }
.home-page .home-primary { background:#0c4939; color:white; border-color:#0c4939; gap:24px; }
.home-page .home-primary:hover { background:#126347; }
.home-small { font-size:12px; line-height:1.7; color:#647b73; }
.home-hero-product { min-width:0; border:1px solid #bcd4c8; border-radius:13px; overflow:hidden; background:white; box-shadow:0 23px 55px #1f63421a; transform:rotate(-1deg); }
.home-window-bar { display:flex; gap:12px; align-items:center; justify-content:space-between; padding:13px 17px; background:#e3f0e8; color:#315a4a; font-size:11px; }
.home-window-bar>span:first-child { font-size:8px; letter-spacing:2px; color:#98b7a5; }
.home-hero-product img,.home-product img { display:block; width:100%; height:auto; }
.home-image-note { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:10px; color:#5a7168; padding:14px 16px; }
.home-image-note a { color:#156343; font-weight:700; white-space:nowrap; }
.home-section-heading h2,.home-scale h2,.home-final h2 { font:760 clamp(27px,3vw,36px)/1.2 var(--font-heading); letter-spacing:-1.1px; margin:0 0 15px; }
.home-section-heading>p:last-child { font-size:14px; color:#5b7074; line-height:1.8; margin:0; }
.home-workflow { padding:44px 0 0; border-top:1px solid #d4e1da; scroll-margin-top:28px; }
.home-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px; list-style:none; margin:34px 0 42px; padding:0; }
.home-step-number { color:#13735a; font-size:12px; font-weight:750; display:block; border-top:1px solid #cbded1; padding-top:20px; margin-bottom:15px; }
.home-steps h3 { font-size:18px; letter-spacing:-.3px; margin:0 0 12px; }
.home-steps p,.home-screen-copy>p:last-child { font-size:13px; line-height:1.8; color:#5b7074; margin:0; }
.home-screens { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.home-screens article { min-width:0; border-radius:14px; border:1px solid #d6e3db; background:#f0f6f2; overflow:hidden; }
.home-screen-copy { padding:27px 27px 22px; }
.home-screen-copy .pricing-kicker { margin-bottom:10px; }
.home-screen-copy h2 { font-size:22px; letter-spacing:-.6px; margin:0 0 10px; }
.home-product { margin:0 20px; }
.home-product>a { display:block; border:1px solid #ceddd4; border-radius:7px; overflow:hidden; background:white; }
.home-product figcaption { padding:16px 0 20px; font-size:11px; color:#3f6653; display:flex; gap:12px; justify-content:space-between; }
.home-product figcaption span { color:#657b70; }
.home-demo-note { grid-column:1/-1; margin:-10px 0 0; font-size:11px; line-height:1.6; color:#708278; text-align:center; }
.home-scale { margin:65px 0; padding:42px; border-radius:16px; background:#0c323b; color:white; display:grid; grid-template-columns:1fr 1.2fr; gap:65px; }
.home-scale .pricing-kicker { color:#a3dfbf; }
.home-scale-heading>a { display:inline-block; margin-top:17px; color:#ace4c4; font-size:13px; font-weight:650; }
.home-scale-options article+article { margin-top:26px; padding-top:26px; border-top:1px solid #34545b; }
.home-scale-label { color:#a3c9ba; font-size:9px; font-weight:650; letter-spacing:1.1px; }
.home-scale h3 { font-size:19px; line-height:1.4; margin:12px 0; }
.home-scale p:not(.pricing-kicker) { color:#c0d4d2; font-size:13px; line-height:1.9; margin:0; }
.home-plans .home-section-heading { text-align:center; }
.home-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:30px 0 18px; }
.home-plan-grid article { border:1px solid #d4e1da; border-radius:12px; padding:25px; background:white; }
.home-plan-grid h3 { font-size:23px; letter-spacing:-.5px; margin:13px 0; }
.home-plan-grid p { font-size:12px; color:#63776d; margin:0 0 24px; }
.home-plan-grid strong { display:block; font-size:20px; font-weight:650; margin-bottom:22px; }
.home-plan-grid a { display:flex; justify-content:space-between; gap:10px; padding-top:18px; border-top:1px solid #dbe6de; color:#146547; font-size:12px; font-weight:650; }
.home-plans>.home-small { text-align:center; }
.home-final { padding:55px 0; margin-top:55px; border-top:1px solid #d4e1da; display:flex; justify-content:space-between; gap:30px; align-items:center; }
.home-final p:not(.pricing-kicker) { color:#63776d; font-size:13px; line-height:1.7; margin-bottom:0; }
.home-final>div:last-child { flex-shrink:0; }
.home-final>div:last-child p { font-size:11px; }
.home-final>div:last-child p a { color:#146547; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:1000px) {
  .home-hero { gap:28px; }
  .home-intro h1 { font-size:43px; letter-spacing:-1.7px; }
  .home-steps { gap:25px; }
  .home-scale { gap:30px; padding:32px; }
}
@media(max-width:760px) {
  .home-page .pricing-header { flex-wrap:wrap; gap:20px; }
  .home-page .pricing-header nav { flex:1; justify-content:flex-end; gap:20px; }
  .home-hero { grid-template-columns:1fr; padding:30px 0 42px; gap:32px; }
  .home-intro h1 { font-size:clamp(37px,7vw,53px); }
  .home-intro h1 br:last-child { display:none; }
  .home-intro>p:not(.pricing-kicker):not(.home-small) { max-width:560px; }
  .home-hero-product { transform:none; }
  .home-workflow { padding-top:32px; }
  .home-steps { grid-template-columns:1fr; gap:23px; margin-block:26px 32px; }
  .home-steps li { display:grid; grid-template-columns:32px 1fr; gap:8px 12px; border-top:1px solid #cbded1; padding-top:20px; }
  .home-step-number { grid-row:span 2; border:0; padding:2px 0 0; margin:0; }
  .home-steps h3 { margin:0; }
  .home-screens { grid-template-columns:1fr; }
  .home-scale { grid-template-columns:1fr; margin-block:40px; }
  .home-plan-grid { grid-template-columns:1fr; }
  .home-plan-grid article { padding:25px; }
  .home-final { flex-direction:column; align-items:flex-start; padding:35px 0; margin-top:35px; }
}
@media(max-width:480px) {
  .home-page .pricing-header nav { flex-basis:100%; justify-content:space-between; font-size:12px; gap:10px; }
  .home-page .pricing-header nav>a:not(.button) { display:block; }
  .home-page .pricing-header nav .button { padding:9px 15px; }
  .home-intro .pricing-kicker { font-size:9px; letter-spacing:1.4px; }
  .home-intro h1 { font-size:36px; }
  .home-intro>p:not(.pricing-kicker):not(.home-small) { font-size:15px; }
  .home-window-bar { padding:12px; font-size:10px; }
  .home-window-bar>span:first-child { display:none; }
  .home-image-note { padding:12px; font-size:9px; }
  .home-scale { padding:27px; }
  .home-screen-copy { padding:25px 20px 20px; }
}
@media(max-width:950px) {
  .pricing-plan { padding:21px; }
  .pricing-plan-description { min-height:85px; }
  .pricing-price { font-size:26px; }
  .pricing-included { gap:25px; }
}
@media(max-width:720px) {
  .pricing-main { padding:0 20px; }
  .pricing-header,.pricing-footer { padding:22px 20px; }
  .pricing-header nav { gap:15px; }
  .pricing-brand small { display:none; }
  .pricing-hero { padding:35px 0; }
  .pricing-hero h1 { letter-spacing:-1px; }
  .pricing-desktop-break { display:none; }
  .pricing-plans { grid-template-columns:1fr; max-width:480px; margin:auto; gap:18px; }
  .pricing-plan { padding:28px; }
  .pricing-plan-description { min-height:0; }
  .pricing-price { font-size:30px; }
  .pricing-included { grid-template-columns:1fr; margin:40px 0; gap:24px; }
  .pricing-included h2 br { display:none; }
  .pricing-faq { grid-template-columns:1fr; gap:18px; margin:45px 0; }
  .pricing-footer { flex-wrap:wrap; gap:18px; }
  .pricing-footer>p { flex-basis:65%; }
}
@media(max-width:480px) {
  .pricing-header nav>a:not(.button) { display:none; }
  .pricing-comparison thead { display:none; }
  .pricing-comparison table,.pricing-comparison tbody { display:block; }
  .pricing-comparison tr { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:12px 0; border-bottom:1px solid #dae5df; }
  .pricing-comparison th,.pricing-comparison td { border:0; padding:7px 4px; }
  .pricing-comparison tbody th { grid-column:1/-1; font-weight:650; }
  .pricing-comparison td::before { content:attr(data-plan); display:block; color:#647b73; font-size:10px; margin-bottom:6px; }
  .signup-plan { flex-direction:column; align-items:flex-start; }
}

/* Account capacity and plan choices */
.account-plan-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;margin-bottom:24px}
.account-plan-summary h2{font-size:32px;margin:6px 0 12px}
.account-plan-summary p{margin-bottom:0}
.plan-usage-grid,.account-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.plan-usage,.account-plan-choice{background:#fff;border:1px solid #d8e4e9;border-radius:16px;padding:24px;min-width:0}
.plan-usage>span{display:block;color:#526b7e;font-weight:700;margin-bottom:14px}
.plan-usage>strong{display:block;font-size:28px;line-height:1.2}
.plan-usage strong small{font-size:17px;font-weight:500;color:#526b7e}
.plan-usage p,.plan-count-note{color:#526b7e}
.plan-usage a,.plan-count-note a{color:#0c5075;font-weight:700;text-decoration:underline}
.plan-count-note{margin:18px 0 28px;line-height:1.6}
.account-plan-options .panel-head{border-bottom:0}
.account-plan-grid{padding:0 24px 24px}
.account-plan-choice.is-current{border-color:#10b981;background:#effbf6}
.account-plan-choice h3{font-size:25px;margin:12px 0}
.account-plan-choice p{line-height:1.6}
.account-plan-choice .eyebrow{min-height:32px}
.plan-price{font-size:25px;font-weight:800;margin:25px 0}
.plan-price small{display:block;font-size:13px;font-weight:500;color:#526b7e}
.plan-capacity-note{color:#885e11;font-size:14px}
.plan-history{margin:24px 0;color:#526b7e}
.plan-history summary{cursor:pointer}
.plan-order-card{padding:16px 0;border-bottom:1px solid #d8e4e9;margin-bottom:24px}
@media(max-width:1100px){.plan-usage-grid,.account-plan-grid{grid-template-columns:1fr}.account-plan-summary{align-items:flex-start;flex-direction:column}.account-plan-choice .eyebrow{min-height:0}}

@media(max-width:600px){.topbar{flex-wrap:wrap;gap:16px}.topbar>div:first-child{width:100%}.topbar>div+div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}}
