:root {
  color-scheme: light;
  --ink: #17191c;
  --muted: #667085;
  --line: #dfe3e8;
  --soft: #f5f6f8;
  --red: #d90f21;
  --red-dark: #b40d1c;
  --blue: #2477df;
  --green: #16794b;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--soft);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", sans-serif;
}

button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.quote-shell {
  width: min(100% - 28px, 1040px);
  margin: 0 auto;
}

.quote-header {
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.quote-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 66px;
}

.quote-logo { display: inline-flex; align-items: center; }
.quote-logo img { display: block; width: 126px; height: auto; }

.quote-header__nav { display: flex; align-items: center; gap: 8px; }
.quote-header__nav a {
  padding: 8px 10px;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.quote-auth-user { padding-left: 8px; border-left: 1px solid var(--line); color: #344054; font-size: 11px; font-weight: 900; white-space: nowrap; }
.quote-auth-logout { min-height: 32px; padding: 5px 8px; border: 1px solid #cfd5dd; border-radius: 5px; background: #fff; color: #344054; cursor: pointer; font-size: 10px; font-weight: 900; }
.quote-auth-logout:hover { border-color: #98a2b3; background: #f8fafc; }

.quote-login-main { display: grid; min-height: calc(100vh - 67px); place-items: center; padding: 28px 14px; }
.quote-login-panel { width: min(100%, 400px); padding: 28px; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 12px 35px rgba(16,24,40,.08); }
.quote-login-panel h1 { margin: 0; font-size: 24px; }
.quote-login-panel > p:not(.quote-eyebrow) { margin: 9px 0 20px; color: var(--muted); font-size: 12px; line-height: 1.65; }
.quote-login-panel form { display: grid; gap: 14px; }
.quote-login-panel .quote-button { width: 100%; margin-top: 2px; }
.quote-login-error { min-height: 18px; margin: -3px 0 0; color: var(--red-dark); font-size: 11px; font-weight: 800; }

.quote-main { padding: 24px 0 52px; }

.quote-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.quote-eyebrow {
  margin: 0 0 5px;
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.quote-page-head h1 { margin: 0; font-size: 28px; line-height: 1.25; }
.quote-page-head p { max-width: 620px; margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }

.quote-stepper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.quote-stepper span {
  padding: 10px 8px;
  color: #98a2b3;
  font-size: 11px;
  font-weight: 900;
  text-align: center;
}

.quote-stepper span + span { border-left: 1px solid var(--line); }
.quote-stepper .is-active { background: #fff4f5; color: var(--red); }

.quote-form { display: grid; gap: 14px; }
.quote-section {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.quote-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.quote-section h2 { margin: 0; font-size: 18px; }
.quote-section__head small { color: var(--muted); font-size: 11px; font-weight: 700; }

.quote-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.quote-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.quote-field { display: grid; gap: 6px; min-width: 0; }
.quote-field--wide { grid-column: 1 / -1; }
.quote-field > span { color: #344054; font-size: 12px; font-weight: 900; }
.quote-required { color: var(--red); }

.quote-field input,
.quote-field select,
.quote-field textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #cfd5dd;
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  outline: 0;
}

.quote-field input,
.quote-field select { height: 42px; padding: 0 11px; }
.quote-field textarea { min-height: 82px; padding: 10px 11px; resize: vertical; }
.quote-field input:focus, .quote-field select:focus, .quote-field textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(36,119,223,.12); }

.quote-items { display: grid; gap: 12px; }
.quote-item {
  position: relative;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fafbfc;
}

.quote-item__top { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.quote-item__top strong { font-size: 14px; }
.quote-icon-button {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: #667085;
  cursor: pointer;
  font-size: 18px;
}

.quote-upload {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px;
  margin-top: 12px;
}

.quote-upload__button {
  display: grid;
  place-items: center;
  min-height: 92px;
  padding: 9px;
  border: 1px dashed #b7c0cc;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
  text-align: center;
}

.quote-upload__button input { display: none; }
.quote-photo-list { display: grid; grid-template-columns: repeat(4, 72px); gap: 8px; align-content: start; }
.quote-photo-list img { width: 72px; height: 72px; border: 1px solid var(--line); border-radius: 6px; background: #fff; object-fit: cover; }
.quote-photo-empty { color: #98a2b3; font-size: 11px; line-height: 1.5; }

.quote-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 16px;
  border: 1px solid #cfd5dd;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}

.quote-button--primary { border-color: var(--red); background: var(--red); color: #fff; }
.quote-button--primary:hover { background: var(--red-dark); }
.quote-button--soft { border-color: #f1cbd0; background: #fff5f6; color: var(--red-dark); }
.quote-button--danger { color: var(--red-dark); }
.quote-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.quote-add-row { width: 100%; margin-top: 12px; border-style: dashed; }
.quote-batch-upload {
  display: grid;
  justify-items: center;
  gap: 4px;
  margin-bottom: 12px;
  padding: 16px;
  border: 2px solid var(--red);
  border-radius: 8px;
  background: #fff5f6;
  color: var(--red-dark);
  cursor: pointer;
  text-align: center;
}
.quote-batch-upload strong { font-size: 15px; }
.quote-batch-upload small { color: #667085; font-size: 10px; font-weight: 700; }
.quote-batch-upload input { display: none; }
.quote-upload-list { gap: 0; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.quote-upload-list__empty { margin: 0; padding: 22px 12px; color: #98a2b3; font-size: 12px; text-align: center; }
.quote-upload-row { display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 12px; padding: 10px; border-bottom: 1px solid var(--line); background: #fff; }
.quote-upload-row:last-child { border-bottom: 0; }
.quote-upload-row > img { width: 82px; height: 82px; border-radius: 6px; background: var(--soft); object-fit: contain; }
.quote-upload-row__body { min-width: 0; }
.quote-upload-row__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 7px; }
.quote-upload-row__top strong { font-size: 12px; }
.quote-upload-row__fields { display: grid; grid-template-columns: minmax(130px, 1fr) minmax(140px, 1fr) 92px minmax(190px, 1.6fr); gap: 10px; align-items: end; }
.quote-upload-row__fields label { display: grid; gap: 3px; min-width: 0; }
.quote-upload-row__fields span { color: #667085; font-size: 9px; font-weight: 900; }
.quote-upload-row__fields input, .quote-upload-row__fields select { width: 100%; min-width: 0; height: 34px; padding: 0 7px; border: 1px solid #cfd5dd; border-radius: 6px; background: #fff; font-size: 11px; }
.quote-condition-note { margin: 6px 0 0; color: #667085; font-size: 9px; line-height: 1.45; }
.quote-condition-photos { margin-top: 8px; padding: 8px; border: 1px solid #d8dee8; border-radius: 6px; background: #f8fafc; }
.quote-condition-photos__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.quote-condition-photos__head label { display: inline-flex; align-items: center; min-height: 36px; gap: 8px; padding: 7px 11px; border: 1px solid var(--red); border-radius: 6px; background: var(--red); color: #fff; cursor: pointer; box-shadow: 0 2px 6px rgba(227, 11, 31, .18); }
.quote-condition-photos__head label:hover { background: #c90820; }
.quote-condition-photos__head label strong { font-size: 11px; }
.quote-condition-photos__head label small { color: rgba(255,255,255,.82); font-size: 9px; }
.quote-condition-photos__head > span { color: #667085; font-size: 9px; }
.quote-condition-photos__head input { display: none; }
.quote-condition-photos > p { margin: 5px 0 0; color: #667085; font-size: 9px; line-height: 1.45; }
.quote-condition-photos.is-full label { border-color: #d0d5dd; background: #e4e7ec; color: #98a2b3; cursor: default; box-shadow: none; }
.quote-condition-photos.is-full label small { color: #98a2b3; }
.quote-condition-photo-list { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
.quote-condition-photo-list:empty { display: none; }
.quote-condition-photo-list > div { position: relative; width: 54px; height: 54px; }
.quote-condition-photo-list img { width: 54px; height: 54px; border: 1px solid #d8dee8; border-radius: 5px; background: #fff; object-fit: cover; }
.quote-condition-photo-list button { position: absolute; top: -5px; right: -5px; display: grid; place-items: center; width: 18px; height: 18px; border: 1px solid #fff; border-radius: 50%; background: #344054; color: #fff; cursor: pointer; font-size: 12px; line-height: 1; }
.quote-qty-stepper { display: grid !important; grid-template-columns: 30px minmax(32px, 1fr) 30px; gap: 0; width: 100%; height: 34px; }
.quote-qty-stepper button { display: grid; place-items: center; border: 1px solid #cfd5dd; background: #f8fafc; color: #202124; cursor: pointer; font-size: 16px; font-weight: 900; line-height: 1; }
.quote-qty-stepper button:first-child { border-radius: 6px 0 0 6px; }
.quote-qty-stepper button:last-child { border-radius: 0 6px 6px 0; }
.quote-qty-stepper input { height: 34px !important; padding: 0 !important; border-right: 0 !important; border-left: 0 !important; border-radius: 0 !important; text-align: center; font-weight: 900; appearance: textfield; }
.quote-qty-stepper input::-webkit-inner-spin-button, .quote-qty-stepper input::-webkit-outer-spin-button { appearance: none; margin: 0; }

@media (min-width: 721px) {
  .quote-upload-row { grid-template-columns: 104px minmax(0, 1fr); gap: 14px; padding: 12px 14px; }
  .quote-upload-row > img { width: 104px; height: 104px; }
  .quote-upload-row__top { min-height: 32px; margin-bottom: 6px; }
  .quote-upload-row__top strong { font-size: 13px; }
  .quote-upload-row__fields span { font-size: 10px; }
  .quote-upload-row__fields input, .quote-upload-row__fields select { height: 38px; padding: 0 10px; font-size: 12px; }
  .quote-condition-note { font-size: 10px; }
  .quote-condition-photos__head label strong { font-size: 12px; }
  .quote-qty-stepper { height: 38px; }
  .quote-qty-stepper input { height: 38px !important; }
}

.quote-check { display: flex; align-items: flex-start; gap: 9px; color: #475467; font-size: 12px; line-height: 1.55; }
.quote-check input { margin-top: 3px; }
.quote-disclaimer { margin: 0; padding: 12px; border-left: 4px solid var(--red); background: #fff5f6; color: #475467; font-size: 12px; line-height: 1.6; }
.quote-validity { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 12px 0; padding: 10px 12px; border: 1px solid #cfe8dc; border-radius: 6px; background: #f1faf6; }
.quote-validity div { display: flex; align-items: baseline; gap: 10px; }
.quote-validity span, .quote-validity small { color: #52606d; font-size: 11px; font-weight: 800; }
.quote-validity strong { color: var(--green); font-size: 15px; }
.quote-validity.is-expired { border-color: #f0b6bd; background: #fff4f5; }
.quote-validity.is-expired strong, .quote-validity.is-expired small { color: var(--red-dark); }

.quote-status-card { padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.quote-status-top { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; }
.quote-status-id { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.quote-badge { display: inline-flex; min-height: 26px; align-items: center; padding: 0 9px; border-radius: 999px; background: #eef4ff; color: #2457a6; font-size: 11px; font-weight: 900; }
.quote-badge--new { background: #fff4e5; color: #995800; }
.quote-badge--quoted { background: #eaf8f1; color: var(--green); }
.quote-timeline { display: grid; grid-template-columns: repeat(4, 1fr); margin: 24px 0; }
.quote-timeline div { position: relative; padding-top: 22px; color: #98a2b3; font-size: 11px; font-weight: 800; text-align: center; }
.quote-timeline div::before { content: ""; position: absolute; top: 5px; left: 0; right: 0; height: 2px; background: #e4e7ec; }
.quote-timeline div::after { content: ""; position: absolute; top: 0; left: 50%; width: 12px; height: 12px; margin-left: -6px; border-radius: 50%; background: #d0d5dd; }
.quote-timeline .is-done { color: var(--ink); }
.quote-timeline .is-done::before, .quote-timeline .is-done::after { background: var(--red); }

.quote-result-list { display: grid; gap: 8px; }
.quote-result-item { display: grid; grid-template-columns: 108px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 0; border-top: 1px solid #edf0f3; }
.quote-result-photo { width: 108px; height: 108px; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: #fff; cursor: zoom-in; }
.quote-result-photo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.quote-result-item strong { display: block; font-size: 13px; }
.quote-result-item small { color: var(--muted); font-size: 11px; }
.quote-result-info { min-width: 0; }
.quote-result-side { display: grid; justify-items: end; gap: 8px; }
.quote-skip-button { min-width: 62px; min-height: 26px; padding: 3px 8px; border: 1px solid #cfd5dd; border-radius: 6px; background: #fff; color: #667085; cursor: pointer; font-size: 10px; font-weight: 900; }
.quote-skip-button[aria-pressed="true"] { border-color: #b7c0cc; background: #f2f4f7; color: #475467; }
.quote-skip-button:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(36,119,223,.16); }
.quote-result-item.is-skipped .quote-result-photo, .quote-result-item.is-skipped .quote-result-info > strong, .quote-result-item.is-skipped .quote-result-info > small { opacity: .42; }
.quote-result-item.is-skipped .quote-price { color: #98a2b3; text-decoration: line-through; }
.quote-price { color: var(--red); font-size: 20px; font-weight: 900; white-space: nowrap; }
.quote-total { display: grid; justify-items: end; gap: 5px; margin-top: 12px; padding-top: 14px; border-top: 2px solid var(--ink); }
.quote-total > div { display: flex; justify-content: space-between; align-items: baseline; gap: 18px; width: min(100%, 390px); }
.quote-total span { font-size: 12px; font-weight: 900; }
.quote-total__secondary strong { color: #667085; font-size: 15px; }
.quote-total__secondary.is-skipped strong { color: #98a2b3; }
.quote-total__primary { margin-top: 3px; padding-top: 7px; border-top: 1px solid var(--line); }
.quote-total__primary strong { color: var(--red); font-size: 28px; }

.admin-layout { display: grid; grid-template-columns: 310px minmax(0, 1fr); gap: 14px; min-height: 620px; }
.admin-list, .admin-detail { border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; }
.admin-toolbar { display: grid; gap: 8px; padding: 12px; border-bottom: 1px solid var(--line); }
.admin-toolbar input, .admin-toolbar select { width: 100%; height: 38px; padding: 0 10px; border: 1px solid #cfd5dd; border-radius: 7px; background: #fff; }
.admin-rows { max-height: 680px; overflow-y: auto; }
.admin-row { display: grid; gap: 5px; width: 100%; padding: 13px; border: 0; border-bottom: 1px solid #edf0f3; background: #fff; color: var(--ink); cursor: pointer; text-align: left; }
.admin-row:hover, .admin-row.is-active { background: #fff7f8; }
.admin-row__top { display: flex; justify-content: space-between; gap: 8px; }
.admin-row__summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.admin-row__summary strong { color: var(--red); font-size: 12px; }
.admin-row__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.admin-row .admin-row__store { flex: 0 0 auto; padding: 3px 6px; border-radius: 4px; font-weight: 900; line-height: 1.2; }
.admin-row__store.is-primary { background: #eef4ff; color: #175cd3; }
.admin-row__store.is-second { background: #fff4e8; color: #b54708; }
.admin-row__store.is-unselected { background: #f2f4f7; color: #667085; }
.admin-row strong { font-size: 13px; }
.admin-row small { color: var(--muted); font-size: 10px; }
.admin-detail { padding: 18px; }
.admin-empty { display: grid; place-items: center; min-height: 400px; color: var(--muted); font-size: 13px; }
.admin-detail-head { display: flex; justify-content: space-between; gap: 14px; margin-bottom: 16px; }
.admin-detail-head h2 { margin: 0; font-size: 20px; }
.admin-meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin-bottom: 14px; }
.admin-meta div { padding: 10px; background: var(--soft); border-radius: 7px; }
.admin-meta span { display: block; color: var(--muted); font-size: 10px; }
.admin-meta strong { display: block; margin-top: 3px; font-size: 12px; overflow-wrap: anywhere; }
.admin-items-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 4px 0 8px; }
.admin-items-head strong { font-size: 14px; }
.admin-items-head span { color: var(--muted); font-size: 10px; }
.admin-items { border: 1px solid var(--line); border-radius: 7px; overflow: hidden; }
.admin-item { display: grid; grid-template-columns: 96px minmax(150px, 1fr) 74px 118px; grid-template-rows: auto auto auto; gap: 7px 10px; align-items: end; padding: 10px; border-bottom: 1px solid #edf0f3; background: #fff; }
.admin-item:last-child { border-bottom: 0; }
.admin-photo-preview { position: relative; grid-row: 1 / 3; width: 96px; height: 96px; align-self: start; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: var(--soft); cursor: zoom-in; }
.admin-photo-preview img { display: block; width: 100%; height: 100%; object-fit: contain; }
.admin-photo-preview span { position: absolute; right: 5px; bottom: 5px; padding: 2px 5px; border-radius: 4px; background: rgba(23,25,28,.82); color: #fff; font-size: 9px; font-weight: 900; }
.admin-photo-thumbnails { grid-column: 1; grid-row: 3; display: grid; grid-template-columns: repeat(3, 29px); gap: 4px; align-self: start; }
.admin-photo-thumbnail { width: 29px; height: 29px; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 4px; background: var(--soft); cursor: zoom-in; }
.admin-photo-thumbnail img { display: block; width: 100%; height: 100%; object-fit: cover; }
.admin-item label { display: grid; gap: 4px; min-width: 0; }
.admin-item label > span, .admin-item__subtotal span { color: var(--muted); font-size: 9px; font-weight: 900; }
.admin-item input, .admin-item select { width: 100%; min-width: 0; height: 34px; padding: 0 8px; border: 1px solid #cfd5dd; border-radius: 6px; background: #fff; font-size: 11px; font-weight: 800; }
.admin-item__classifiers { grid-column: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; min-width: 0; }
.admin-item__subtotal { grid-column: 4; display: grid; gap: 4px; align-self: stretch; }
.admin-item__subtotal strong { display: flex; align-items: center; justify-content: flex-end; min-height: 34px; color: var(--red); font-size: 15px; }
.admin-item.is-customer-skipped .admin-item__subtotal strong { color: #667085; }
.admin-item__note { grid-column: 1 / -1; margin: 0; padding-top: 2px; color: var(--muted); font-size: 10px; }
.admin-customer-choice { display: inline-flex; margin-left: 8px; padding: 3px 7px; border-radius: 999px; font-weight: 900; }
.admin-customer-choice.is-sell { background: #eaf8f1; color: var(--green); }
.admin-customer-choice.is-skip { background: #f2f4f7; color: #667085; }
.admin-quote-total { display: grid; justify-items: end; gap: 4px; padding: 12px 4px; border-bottom: 2px solid var(--ink); }
.admin-quote-total > div { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; width: min(100%, 330px); }
.admin-quote-total span { font-size: 11px; font-weight: 900; }
.admin-quote-total strong { color: #667085; font-size: 14px; }
.admin-quote-total .is-skipped strong { color: #98a2b3; }
.admin-quote-total .is-selected { margin-top: 3px; padding-top: 6px; border-top: 1px solid var(--line); }
.admin-quote-total .is-selected strong { color: var(--red); font-size: 24px; }
.admin-quote-controls { display: grid; grid-template-columns: 1fr 180px; gap: 10px; margin-top: 14px; }
.admin-actions { margin-top: 14px; }
.admin-delete-button { margin-right: auto; }
.admin-photo-modal { position: fixed; inset: 0; z-index: 30; display: grid; place-items: center; padding: 54px 20px 20px; background: rgba(18, 20, 23, .82); }
.admin-photo-modal img { display: block; max-width: min(92vw, 1000px); max-height: calc(100vh - 80px); border-radius: 7px; background: #fff; object-fit: contain; box-shadow: 0 20px 60px rgba(0,0,0,.35); }
.admin-photo-modal__close { position: absolute; top: 14px; right: 18px; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.5); border-radius: 7px; background: rgba(0,0,0,.35); color: #fff; cursor: pointer; font-size: 24px; line-height: 1; }
.admin-photo-modal__nav { position: absolute; top: 50%; display: grid; place-items: center; width: 42px; height: 54px; border: 1px solid rgba(255,255,255,.5); border-radius: 6px; background: rgba(0,0,0,.42); color: #fff; cursor: pointer; font-size: 32px; transform: translateY(-50%); }
.admin-photo-modal__nav.is-prev { left: 18px; }
.admin-photo-modal__nav.is-next { right: 18px; }
.admin-photo-modal__count { position: absolute; left: 50%; bottom: 14px; padding: 4px 8px; border-radius: 4px; background: rgba(0,0,0,.55); color: #fff; font-size: 11px; transform: translateX(-50%); }
.quote-confirm-modal { position: fixed; inset: 0; z-index: 35; display: grid; place-items: center; padding: 18px; background: rgba(18,20,23,.56); }
.quote-confirm-dialog { width: min(100%, 430px); padding: 22px; border-radius: 8px; background: #fff; box-shadow: 0 18px 55px rgba(0,0,0,.24); }
.quote-confirm-dialog h2 { margin: 0; font-size: 20px; line-height: 1.4; }
.quote-confirm-dialog > p:not(.quote-eyebrow) { margin: 10px 0 0; color: #667085; font-size: 13px; line-height: 1.7; }
.status-visit-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 16px; }
.status-visit-fields label { display: grid; gap: 5px; }
.status-visit-fields .status-visit-store { grid-column: 1 / -1; }
.status-visit-fields span { color: #475467; font-size: 11px; font-weight: 900; }
.status-visit-fields input, .status-visit-fields select { width: 100%; height: 44px; border: 1px solid var(--line); border-radius: 6px; padding: 0 10px; background: #fff; font: inherit; }
.quote-confirm-actions { display: grid; grid-template-columns: 1fr 1.4fr; gap: 9px; margin-top: 20px; }
.quote-visit-summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 14px 0; padding: 11px 14px; border-left: 3px solid var(--red); background: #fff5f5; }
.quote-visit-summary > div { display: grid; gap: 3px; }
.quote-visit-summary > div:last-child { text-align: right; }
.quote-visit-summary span { color: #667085; font-size: 11px; font-weight: 900; }
.quote-visit-summary strong { font-size: 15px; }

.quote-toast { position: fixed; right: 18px; bottom: 18px; z-index: 20; max-width: 320px; padding: 11px 14px; border-radius: 7px; background: #17191c; color: #fff; font-size: 12px; box-shadow: 0 10px 30px rgba(0,0,0,.18); }
.is-hidden { display: none !important; }

.purchase-main { width: min(100% - 28px, 1120px); }
.purchase-toolbar { display: flex; align-items: flex-end; justify-content: flex-end; gap: 9px; margin-bottom: 12px; }
.print-settings-note { margin: 0 auto 0 0; padding: 7px 10px; border-left: 3px solid var(--red); background: #fff5f5; color: #344054; font-size: 11px; line-height: 1.45; }
.print-settings-note strong { margin-right: 7px; color: var(--red); }
.print-settings-note span { color: #667085; }
.purchase-toolbar .quote-field { width: 190px; }
.purchase-paper { padding: 24px; border: 1px solid #cfd5dd; border-radius: 4px; background: #fff; }
.purchase-paper__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding-bottom: 15px; border-bottom: 3px solid var(--ink); }
.purchase-paper__head img { display: block; width: 126px; }
.purchase-paper__head p { margin: 7px 0 0; color: #475467; font-size: 10px; }
.purchase-paper__head > div:last-child { text-align: right; }
.purchase-paper__head h1 { margin: 0 0 8px; font-size: 26px; letter-spacing: 0; }
.purchase-paper__head input { width: 145px; border: 0; border-bottom: 1px solid #98a2b3; background: transparent; }
.purchase-block { margin-top: 16px; }
.purchase-block__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.purchase-block h2 { margin: 0 0 9px; padding: 6px 9px; background: #17191c; color: #fff; font-size: 13px; }
.purchase-block__head h2 { flex: 1; margin-bottom: 0; }
.purchase-block__head .quote-button { min-height: 30px; padding: 4px 10px; font-size: 11px; }
.purchase-fields { display: grid; grid-template-columns: 2fr 1fr 1fr; border-top: 1px solid #98a2b3; border-left: 1px solid #98a2b3; }
.purchase-fields > label, .purchase-check-field { display: grid; grid-template-columns: 86px minmax(0, 1fr); min-height: 38px; border-right: 1px solid #98a2b3; border-bottom: 1px solid #98a2b3; }
.purchase-fields > label.purchase-wide { grid-column: span 2; }
.purchase-fields > .purchase-full { grid-column: 1 / -1; }
.purchase-fields > label > span, .purchase-check-field > span { display: flex; align-items: center; padding: 6px; background: #f2f4f7; color: #344054; font-size: 10px; font-weight: 900; }
.purchase-fields > label > input, .purchase-fields > label > select { min-width: 0; width: 100%; border: 0; padding: 5px 7px; background: #fff; font-size: 12px; outline: 0; }
.purchase-check-options { display: flex; align-items: center; flex-wrap: wrap; gap: 7px 14px; padding: 6px 8px; background: #fff; }
.purchase-check-options label { display: inline-flex; align-items: center; gap: 5px; min-height: 22px; color: #17191c; font-size: 10px; font-weight: 800; white-space: nowrap; }
.purchase-check-options input { position: relative; flex: 0 0 auto; width: 14px; height: 14px; margin: 0; border: 1px solid #667085; border-radius: 2px; background: #fff; appearance: none; }
.purchase-check-options input:checked::after { position: absolute; inset: -4px 0 0 1px; content: "✓"; color: #17191c; font-size: 16px; font-weight: 900; }
.purchase-table-wrap { overflow-x: auto; }
.purchase-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.purchase-table th, .purchase-table td { border: 1px solid #98a2b3; padding: 6px; font-size: 10px; vertical-align: middle; }
.purchase-table th { background: #f2f4f7; font-weight: 900; }
.purchase-table th:nth-child(1) { width: 70px; }
.purchase-table th:nth-child(3) { width: 48px; }
.purchase-table th:nth-child(4), .purchase-table th:nth-child(5), .purchase-table th:nth-child(6) { width: 100px; }
.purchase-table img { display: block; width: 56px; height: 56px; margin: auto; object-fit: contain; }
.purchase-photo-input { display: none; }
.purchase-photo-label { display: grid; justify-items: center; gap: 2px; cursor: pointer; }
.purchase-photo-label span { color: var(--blue); font-size: 8px; font-weight: 900; }
.purchase-table strong { display: block; font-size: 11px; }
.purchase-table small { display: block; margin-top: 3px; color: #667085; font-size: 9px; }
.purchase-table input { width: 100%; height: 32px; border: 1px solid #cfd5dd; border-radius: 4px; padding: 0 5px; text-align: right; font-weight: 900; }
.purchase-table input.purchase-name { text-align: left; font-size: 10px; font-weight: 800; }
.purchase-table .purchase-subtotal { text-align: right; font-size: 12px; font-weight: 900; }
.purchase-total { display: flex; justify-content: flex-end; align-items: baseline; gap: 20px; padding: 12px 8px 0; }
.purchase-total span { font-size: 13px; font-weight: 900; }
.purchase-total strong { font-size: 26px; }
.purchase-declaration { border: 1px solid #98a2b3; }
.purchase-declaration label { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 7px; align-items: start; padding: 7px 9px; border-bottom: 1px solid #cfd5dd; font-size: 10px; line-height: 1.5; }
.purchase-declaration label:last-child { border-bottom: 0; }
.purchase-declaration input { width: 15px; height: 15px; margin: 0; accent-color: #17191c; }
.purchase-privacy { margin-top: 8px; padding: 9px 11px; border: 1px solid #98a2b3; color: #344054; }
.purchase-privacy strong { display: block; margin-bottom: 4px; font-size: 10px; }
.purchase-privacy p { margin: 3px 0 0; font-size: 8px; line-height: 1.55; }
.purchase-bank { margin-top: 12px; border: 1px solid #98a2b3; }
.purchase-bank h3 { margin: 0; padding: 6px 9px; background: #f2f4f7; font-size: 11px; }
.purchase-bank__fields { display: grid; grid-template-columns: 1fr 1fr; }
.purchase-bank__fields label { display: grid; grid-template-columns: 90px minmax(0, 1fr); min-height: 36px; border-top: 1px solid #cfd5dd; }
.purchase-bank__fields label:nth-child(odd) { border-right: 1px solid #cfd5dd; }
.purchase-bank__fields span { display: flex; align-items: center; padding: 6px; background: #f8f9fb; color: #344054; font-size: 9px; font-weight: 900; }
.purchase-bank__fields input, .purchase-bank__fields select { min-width: 0; width: 100%; border: 0; padding: 5px 7px; background: #fff; font-size: 11px; outline: 0; }
.purchase-bank__fields .purchase-bank__wide { grid-column: 1 / -1; border-right: 0; }
.purchase-signatures { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 22px; }
.purchase-signatures div { display: grid; grid-template-columns: 90px minmax(0, 1fr); align-items: end; font-size: 11px; font-weight: 900; }
.purchase-signatures i { display: block; height: 44px; border-bottom: 1px solid #17191c; }
.purchase-paper__foot { margin-top: 22px; padding-top: 8px; border-top: 1px solid #98a2b3; color: #667085; font-size: 9px; text-align: center; }
.purchase-paper__foot p { margin: 3px 0; }
.customer-copy-note { display: none; }
.print-customer .private-field { display: none; }
.print-customer .customer-copy-note { display: block; }

.email-preview-main { width: min(100% - 28px, 980px); }
.email-preview-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.email-preview-card { margin-bottom: 18px; border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; }
.email-preview-meta { display: grid; grid-template-columns: 1fr 2fr 1.4fr; border-bottom: 1px solid var(--line); background: #f8fafc; }
.email-preview-meta div { min-width: 0; padding: 10px 12px; border-right: 1px solid var(--line); }
.email-preview-meta div:last-child { border-right: 0; }
.email-preview-meta span, .email-price-info span { display: block; color: var(--muted); font-size: 9px; font-weight: 900; }
.email-preview-meta strong { display: block; margin-top: 3px; font-size: 11px; overflow-wrap: anywhere; }
.email-message { width: min(100% - 30px, 660px); margin: 0 auto; padding: 28px 0 32px; color: #344054; font-size: 13px; line-height: 1.7; }
.email-message > img { width: 122px; margin-bottom: 14px; }
.email-message ul { margin: 18px 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.email-message li { display: flex; justify-content: space-between; gap: 14px; padding: 9px 0; border-bottom: 1px solid var(--line); }
.email-message li strong { white-space: nowrap; }
.email-message-total { display: flex; align-items: baseline; justify-content: flex-end; gap: 18px; margin: 16px 0; }
.email-message-total span { font-weight: 900; }
.email-message-total strong { color: var(--red); font-size: 24px; }
.email-status-link { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; margin: 8px 0; padding: 9px 18px; border-radius: 7px; background: var(--red); color: #fff; font-weight: 900; text-decoration: none; }
.email-signature { margin-top: 24px; padding-top: 14px; border-top: 1px solid var(--line); }
.email-price-sheet { min-height: 1120px; padding: 34px; border: 1px solid #cfd5dd; border-radius: 4px; background: #fff; }
.email-price-sheet > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 16px; border-bottom: 3px solid var(--ink); }
.email-price-sheet > header img { width: 130px; }
.email-price-sheet > header p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }
.email-price-sheet > header > div:last-child { text-align: right; }
.email-price-sheet h2 { margin: 0; font-size: 24px; }
.email-price-info { display: grid; grid-template-columns: 2fr 1fr 1fr; margin: 16px 0; border-top: 1px solid #98a2b3; border-left: 1px solid #98a2b3; }
.email-price-info div { padding: 8px 10px; border-right: 1px solid #98a2b3; border-bottom: 1px solid #98a2b3; }
.email-price-info strong { display: block; margin-top: 3px; font-size: 12px; }
.email-price-table-wrap { overflow-x: auto; }
.email-price-sheet table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.email-price-sheet th, .email-price-sheet td { padding: 8px; border: 1px solid #98a2b3; font-size: 10px; text-align: right; vertical-align: middle; }
.email-price-sheet th { background: #f2f4f7; font-weight: 900; }
.email-price-sheet th:first-child, .email-price-sheet td:first-child { width: 40px; text-align: center; }
.email-price-sheet th:nth-child(2), .email-price-sheet td:nth-child(2) { width: auto; text-align: left; }
.email-price-sheet th:nth-child(3), .email-price-sheet td:nth-child(3) { width: 54px; text-align: center; }
.email-price-sheet th:nth-child(4), .email-price-sheet th:nth-child(5) { width: 100px; }
.email-price-product { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 8px; align-items: center; }
.email-price-product img { width: 52px; height: 52px; object-fit: contain; }
.email-price-product strong, .email-price-product small { display: block; }
.email-price-product small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.email-price-total { display: flex; align-items: baseline; justify-content: flex-end; gap: 22px; padding: 16px 6px; border-bottom: 2px solid var(--ink); }
.email-price-total span { font-size: 13px; font-weight: 900; }
.email-price-total strong { color: var(--red); font-size: 26px; }
.email-price-note { margin-top: 18px; padding: 12px; border: 1px solid var(--line); color: #475467; font-size: 10px; line-height: 1.6; }
.email-price-note p { margin: 4px 0 0; }
.email-price-sheet footer { margin-top: 30px; padding-top: 8px; border-top: 1px solid var(--line); color: var(--muted); font-size: 9px; text-align: center; }

.receipt-main { width: min(100% - 28px, 820px); }
.receipt-success { padding: 22px 0; text-align: center; }
.receipt-success__mark { display: grid; place-items: center; width: 46px; height: 46px; margin: 0 auto 12px; border-radius: 50%; background: #eaf8f1; color: var(--green); font-size: 24px; font-weight: 900; }
.receipt-success h1 { margin: 0; font-size: 28px; }
.receipt-success > p:last-child { margin: 8px 0 0; color: var(--muted); font-size: 13px; }
.receipt-summary { display: grid; grid-template-columns: repeat(2, 1fr); margin-bottom: 16px; border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; }
.receipt-summary div { padding: 12px 14px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.receipt-summary div:nth-child(2n) { border-right: 0; }
.receipt-summary div:nth-last-child(-n+2) { border-bottom: 0; }
.receipt-summary span, .receipt-mail__meta span { display: block; color: var(--muted); font-size: 10px; font-weight: 900; }
.receipt-summary strong { display: block; margin-top: 4px; font-size: 13px; overflow-wrap: anywhere; }
.receipt-mail { border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; }
.receipt-mail__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 15px; border-bottom: 1px solid var(--line); background: #f8fafc; }
.receipt-mail__head span:first-child { display: block; color: var(--muted); font-size: 9px; font-weight: 900; }
.receipt-mail__head strong { display: block; margin-top: 2px; font-size: 13px; }
.receipt-mail__meta { padding: 11px 15px; border-bottom: 1px solid var(--line); }
.receipt-mail__meta strong { display: block; margin-top: 4px; font-size: 12px; overflow-wrap: anywhere; }
.receipt-mail__body { width: min(100% - 30px, 620px); margin: 0 auto; padding: 24px 0 28px; color: #344054; font-size: 13px; line-height: 1.7; }
.receipt-mail__body > img { width: 118px; margin-bottom: 10px; }
.receipt-mail__body dl { margin: 16px 0; border-top: 1px solid var(--line); }
.receipt-mail__body dl div { display: grid; grid-template-columns: 90px minmax(0, 1fr); padding: 8px 0; border-bottom: 1px solid var(--line); }
.receipt-mail__body dt { color: var(--muted); font-size: 11px; font-weight: 900; }
.receipt-mail__body dd { margin: 0; font-weight: 800; }
.receipt-preview-note { margin: 10px 0 0; color: var(--muted); font-size: 10px; text-align: center; }
.receipt-actions { margin-top: 16px; }

@media (max-width: 720px) {
  .quote-shell { width: min(100% - 18px, 430px); }
  .quote-header__inner { min-height: 50px; }
  .quote-logo img { width: 100px; }
  .quote-header__nav a { padding: 7px 5px; font-size: 11px; }
  .quote-auth-user { max-width: 108px; overflow: hidden; padding-left: 5px; text-overflow: ellipsis; }
  .quote-auth-logout { padding: 4px 6px; }
  .quote-login-panel { padding: 22px 18px; }
  .quote-main { padding: 14px 0 34px; }
  .quote-page-head { align-items: flex-start; flex-direction: column; margin-bottom: 12px; }
  .quote-page-head h1 { font-size: 21px; }
  .quote-page-head p { font-size: 12px; }
  .quote-section { padding: 13px; }
  .quote-section h2 { font-size: 16px; }
  .quote-grid, .quote-grid--3 { grid-template-columns: 1fr; gap: 10px; }
  .quote-field--wide { grid-column: auto; }
  .quote-item { padding: 11px; }
  .quote-upload { grid-template-columns: 92px minmax(0, 1fr); }
  .quote-upload__button { min-height: 76px; }
  .quote-photo-list { grid-template-columns: repeat(3, 58px); }
  .quote-photo-list img { width: 58px; height: 58px; }
  .quote-upload-row { grid-template-columns: 68px minmax(0, 1fr); gap: 9px; padding: 9px; }
  .quote-upload-row > img { width: 68px; height: 68px; }
  .quote-upload-row__fields { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .quote-upload-row__name { grid-column: auto; }
  .quote-qty-stepper { grid-template-columns: 27px 30px 27px; }
  .quote-actions { align-items: stretch; flex-direction: column-reverse; }
  .quote-button { width: 100%; }
  .quote-status-card { padding: 15px; }
  .quote-status-top { flex-direction: column; }
  .quote-timeline { margin: 20px 0; }
  .quote-timeline div { font-size: 9px; }
  .quote-result-item { grid-template-columns: 80px minmax(0, 1fr); gap: 10px; }
  .quote-result-photo { width: 80px; height: 80px; }
  .quote-result-side { grid-column: 2; }
  .quote-price { font-size: 17px; }
  .quote-confirm-dialog { padding: 18px; }
  .quote-confirm-dialog h2 { font-size: 18px; }
  .status-visit-fields { grid-template-columns: 1fr; }
  .status-visit-fields .status-visit-store { grid-column: auto; }
  .quote-visit-summary { align-items: flex-start; flex-direction: column; gap: 8px; }
  .quote-visit-summary > div:last-child { text-align: left; }
  .quote-confirm-actions { grid-template-columns: 1fr; }
  .quote-total__primary strong { font-size: 24px; }
  .admin-layout { grid-template-columns: 1fr; }
  .admin-rows { max-height: 260px; }
  .admin-detail { padding: 13px; }
  .admin-meta { grid-template-columns: 1fr; }
  .admin-items-head { align-items: flex-start; flex-direction: column; gap: 3px; }
  .admin-item { grid-template-columns: 72px minmax(0, 1fr) 70px; grid-template-rows: auto auto auto auto; gap: 7px; }
  .admin-photo-preview { grid-row: 1 / 3; width: 72px; height: 72px; }
  .admin-photo-thumbnails { grid-template-columns: repeat(3, 21px); gap: 4px; }
  .admin-photo-thumbnail { width: 21px; height: 21px; }
  .admin-item__name { grid-column: 2 / 4; }
  .admin-item > label:nth-of-type(2) { grid-column: 2; }
  .admin-item > label:nth-of-type(3) { grid-column: 3; }
  .admin-item__classifiers { grid-column: 1 / 3; }
  .admin-item__subtotal { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: flex-end; gap: 12px; }
  .admin-item__subtotal strong { min-height: 0; }
  .admin-item__note { grid-row: auto; }
  .admin-delete-button { margin-right: 0; }
  .admin-quote-controls { grid-template-columns: 1fr; }
  .purchase-main { width: min(100% - 18px, 430px); }
  .purchase-toolbar { display: grid; grid-template-columns: 1fr 1fr; }
  .print-settings-note { grid-column: 1 / -1; margin: 0; }
  .purchase-toolbar .quote-field { grid-column: 1 / -1; width: auto; }
  .purchase-paper { padding: 12px; overflow: hidden; }
  .purchase-paper__head { gap: 10px; }
  .purchase-paper__head img { width: 88px; }
  .purchase-paper__head h1 { font-size: 18px; }
  .purchase-paper__head input { width: 112px; }
  .purchase-fields { grid-template-columns: 1fr; }
  .purchase-fields label.purchase-wide { grid-column: auto; }
  .purchase-fields > .purchase-full { grid-column: auto; }
  .purchase-table { min-width: 680px; }
  .purchase-bank__fields { grid-template-columns: 1fr; }
  .purchase-bank__fields label:nth-child(odd) { border-right: 0; }
  .purchase-bank__fields .purchase-bank__wide { grid-column: auto; }
  .purchase-signatures { grid-template-columns: 1fr; }
  .email-preview-main { width: min(100% - 18px, 430px); }
  .email-preview-actions { width: 100%; }
  .email-preview-meta { grid-template-columns: 1fr; }
  .email-preview-meta div { border-right: 0; border-bottom: 1px solid var(--line); }
  .email-preview-meta div:last-child { border-bottom: 0; }
  .email-message { width: min(100% - 24px, 660px); padding: 20px 0 24px; }
  .email-price-sheet { min-height: 0; padding: 14px; overflow: hidden; }
  .email-price-sheet h2 { font-size: 18px; }
  .email-price-info { grid-template-columns: 1fr; }
  .email-price-sheet table { min-width: 620px; }
  .receipt-main { width: min(100% - 18px, 430px); }
  .receipt-success { padding: 12px 0 18px; }
  .receipt-success h1 { font-size: 21px; }
  .receipt-summary { grid-template-columns: 1fr; }
  .receipt-summary div { border-right: 0; }
  .receipt-summary div:nth-last-child(-n+2) { border-bottom: 1px solid var(--line); }
  .receipt-summary div:last-child { border-bottom: 0; }
}

@media print {
  @page { size: A4 portrait; margin: 7mm 9mm 9mm; }
  body { background: #fff; }
  .no-print, .quote-toast { display: none !important; }
  .quote-main, .purchase-main, .quote-shell { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .purchase-paper { padding: 0; border: 0; }
  .purchase-paper__head { padding-bottom: 9px; }
  .purchase-paper__head img { width: 108px; }
  .purchase-paper__head h1 { margin-bottom: 4px; font-size: 22px; }
  .purchase-paper__head p { margin-top: 4px; font-size: 8px; }
  .purchase-block { margin-top: 10px; }
  .purchase-block h2 { margin-bottom: 5px; padding: 4px 7px; font-size: 11px; }
  .purchase-fields > label, .purchase-check-field { min-height: 31px; }
  .purchase-fields > label > span, .purchase-check-field > span { padding: 4px 5px; font-size: 9px; }
  .purchase-check-options { gap: 3px 10px; padding: 3px 6px; }
  .purchase-check-options label { min-height: 18px; font-size: 9px; }
  .purchase-table-wrap { overflow: visible; }
  .purchase-table { min-width: 0; }
  .purchase-table thead { display: table-header-group; }
  .purchase-table tr { break-inside: avoid; page-break-inside: avoid; }
  .purchase-table th, .purchase-table td { padding: 4px; font-size: 9px; }
  .purchase-table img { width: 44px; height: 44px; }
  .purchase-table input { height: 26px; }
  .purchase-total { padding-top: 6px; }
  .purchase-total strong { font-size: 22px; }
  .purchase-declaration label { gap: 5px; padding: 4px 7px; font-size: 9px; line-height: 1.35; }
  .purchase-privacy { margin-top: 5px; padding: 6px 8px; }
  .purchase-privacy p { font-size: 7px; line-height: 1.4; }
  .purchase-signatures { margin-top: 12px; }
  .purchase-signatures i { height: 32px; }
  .purchase-paper__foot { margin-top: 12px; padding-top: 4px; background: #fff; font-size: 7px; }
  .purchase-paper__foot p { margin: 1px 0; }
  .purchase-table input, .purchase-fields > label > input, .purchase-fields > label > select { appearance: none; border: 0; }
  .purchase-block { break-inside: auto; }
  .purchase-paper__head, .purchase-block--identity, .purchase-block--agreement, .purchase-total, .purchase-bank, .purchase-signatures, .purchase-paper__foot { break-inside: avoid; page-break-inside: avoid; }
  .purchase-block--products h2, .purchase-table thead { break-after: avoid; page-break-after: avoid; }
  body[data-page="email-preview"] .quote-main { width: 100% !important; }
  body[data-page="email-preview"] .email-preview-card { display: none !important; }
  .email-price-sheet { min-height: 0; padding: 0; border: 0; }
  .email-price-table-wrap { overflow: visible; }
  .email-price-sheet table { min-width: 0; }
}
