/* Shared presentation only. Item coding colors and exported documents retain their original values. */
:root {
  color-scheme: light;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  color: #1d1d1f;
  background: #f5f5f7;
  --text: #1d1d1f;
  --secondary-text: #65656c;
  --accent: #0071e3;
  --accent-hover: #0062c7;
  --accent-soft: #eaf2fc;
  --line: #e2e2e7;
  --surface: #fff;
  --surface-muted: #f5f5f7;
  --green: var(--accent);
  --dark: #ececf0;
  --muted: var(--secondary-text);
  --lime: var(--accent-soft);
}
::selection { background: #cde3ff; color: #153354; }
body { background: #f5f5f7; }
input, select, textarea { color: var(--text); border-color: #d9d9df; border-radius: 8px; }
input::placeholder, textarea::placeholder { color: #85858d; }
input:focus, select:focus, textarea:focus {
  border-color: #6ba9ed;
  box-shadow: 0 0 0 3px #0071e321;
}
button:focus-visible, a:focus-visible { outline: 3px solid #0071e380; outline-offset: 3px; }
input[type=checkbox], input[type=radio] { accent-color: var(--accent); }
label, .modal-form label { color: #55555d; }
h1, h2, h3, .account-name h2, .modal-head h2,
.sales-console .section-heading h2, .table-toolbar h3, .section-heading h3 { color: var(--text); }
h1 { letter-spacing: -1.1px; font-weight: 650; }
.page-top p, .sales-console .section-heading p, .table-toolbar p,
.modal-head p, .account-heading p, .form-help { color: var(--secondary-text); }
.sidebar {
  background: linear-gradient(170deg, #f0f0f4, #e9e9ef);
  color: #484850;
  border-right: 1px solid #dcdce3;
}
.brand { color: #29292f; }
.brand-mark { color: var(--accent); }
.brand-small { color: #74747d; }
.workspace-label { color: #777780; font-weight: 600; letter-spacing: 1px; }
.nav-item { color: #4e4e56; border-radius: 8px; }
.nav-item svg { color: #72727c; }
.nav-item:hover { background: #ddddE580; }
.nav-item.active { background: var(--accent); color: #fff; box-shadow: 0 2px 5px #0071e31a; }
.nav-item.active svg { color: #fff; }
.live-dot, .title-dot, .tiny-dot { background: #66a3ed; }
.nav-item.active .live-dot { background: #fff; }
.local-card { background: #ffffff70; color: #55555d; border-color: #dcdce3; border-radius: 10px; }
.local-card small, .sidebar-foot, .sidebar-foot span { color: #787881; }
.sidebar-foot { border-color: #d8d8df; }
.topbar {
  background: #fbfbfddd;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-color: #e1e1e7;
}
.breadcrumb { color: #7b7b83; }
.breadcrumb strong, .user-switch select { color: #42424a; }
.prototype-tag { background: #f1f1f4; color: #71717a; border-color: #e4e4e9; border-radius: 6px; }
.user-avatar, .main-avatar, .tone-0 { background: #e5edfa; color: #3b6fae; }
.tone-1 { background: #eee9f9; color: #8060ab; }
.tone-2 { background: #e3eef3; color: #567e93; }
.tone-3 { background: #f4e8ed; color: #a36784; }
.primary {
  background: var(--accent); border-color: var(--accent); color: #fff;
  border-radius: 8px; font-weight: 600; box-shadow: 0 1px 2px #002b5c12;
}
.primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.primary:disabled { background: #88afdc; border-color: #88afdc; opacity: .7; box-shadow: none; }
.secondary {
  background: #fff; border-color: #d9d9df; color: #414149;
  border-radius: 8px; box-shadow: 0 1px 2px #1d1d1f06;
}
.secondary:hover { background: #f6f6f9; border-color: #bfbfc9; }
.text-button, .recent-customer { color: #0068d1; }
.icon-button { color: #72727c; border-radius: 7px; }
.icon-button:hover { background: #eeeeF3; color: #45454e; }
.client-panel, .capture-card, .products-card, .empty-card, .stat {
  border-color: var(--line); border-radius: 13px;
  box-shadow: 0 2px 6px #1d1d1f03, 0 1px 2px #1d1d1f02;
}
.client-info strong, .sale-options strong, .account-heading p strong,
.account-card h3, .account-card > strong, .sale-target strong, .sale-balance strong,
.delivery-card strong, .batch-stock, .history-current-price strong { color: #303038; }
.client-info > span, .account-caption, .sale-account-line, .sale-balance,
.sale-options small, .account-card p, .delivery-card span, .delivery-card small { color: var(--secondary-text); }
.search-input { background: #f5f5f7; border-color: #e0e0e6; color: #85858f; border-radius: 8px; }
.search-input:focus-within, .sale-picker-input:focus-within {
  outline: none; border-color: #6ba9ed; box-shadow: 0 0 0 3px #0071e31a;
}
.search-input kbd, .sale-picker-input kbd { background: #ebebf0; color: #777780; }
.client-row:hover, .sale-options [role=option]:hover { background: #f4f4f8; }
.client-row.selected, .sale-options [aria-selected=true], .delivery-card.selected { background: var(--accent-soft); }
.client-row.selected:before { background: var(--accent); }
.count-badge, .client-panel-title h2 span { background: #eeeef3; color: #686872; }
.pill, .soft-label, .client-status { background: #f2f2f6; color: #62626c; border-color: #e2e2e9; border-radius: 5px; }
.client-status.is-blocked { background: #fff0ed; color: #a74635; border-color: #f0d0c8; }
.ready-pill { background: var(--accent-soft); border-color: #d6e5f9; color: #2467af; }
.stat > strong { color: #292930; font-weight: 600; letter-spacing: -.7px; font-variant-numeric: tabular-nums; }
.stat > span:first-child, .stat-foot, .stat.balance .stat-foot { color: var(--secondary-text); }
.stat-icon { color: #a4a4b0; }
.stat.balance { background: #edf3fc; border-color: #d8e5f7; }
.stat.balance > strong { color: #2465ad; }
.green-text { color: #2465ad !important; }
.sale-picker-input { background: #fcfcfd; border-color: #d4d4de; border-radius: 9px; color: #868692; }
.sale-picker-input input { color: #303038; }
.sale-options { border-color: #dcdce4; border-radius: 11px; box-shadow: 0 12px 35px #23232f1a; }
.sale-picker > label, .sale-account-choice label, .sale-live-context > label,
.live-shift-options legend, .sales-console .capture-fields label { color: #55555f; }
.sale-account-line select, .account-select-line > select { background: #fcfcfd; color: #464650; border-color: #d9d9e1; }
.shift-switch { background: #eaeaf0; border-color: #e0e0e7; border-radius: 8px; }
.shift-switch button { color: #6a6a75; }
.shift-switch button.selected { color: #30303a; box-shadow: 0 1px 3px #2424331f; }
.live-shift-options label { background: #fff; border-color: #dddde5; border-radius: 8px; color: #65656f; }
.live-shift-options label:has(input:checked) { background: #eef4fd; border-color: #b6cff0; color: #2564aa; }
.live-shift-options input, .delivery-pick-row input { accent-color: var(--accent); }
.compact-label, .capture-bottom > strong, .sales-console .capture-bottom > strong { color: #51515d; }
.compact-label select { background: #f2f2f6; color: #64646e; }
.client-note, .role-notice { background: #f7f7fa; border-color: #e5e5ec; color: #65656f; }
.sales-feed-tabs { background: #fafafc; border-color: #e5e5ec; }
.sales-feed-tabs > button:not(.text-button) { color: #70707b; border-radius: 7px; }
.sales-feed-tabs > button.active, .filter-chip.active { background: #eaf2fc; color: #2467b1; border-color: #d6e4f7; }
.sales-feed-tabs button span { color: #70707c; }
.filter-chip { color: #62626e; border-color: #e0e0e8; }
.filter-chip span, .process-exports strong span { color: #6c6c77; background: #eeeef3; }
thead { background: #f7f7fa; }
th { color: #74747f; border-color: #e9e9ef; font-weight: 600; letter-spacing: .4px; }
td { color: #555560; border-color: #eeeef3; }
td strong, .product-description strong, .recent-sales-table td strong, .amount-cell,
.warehouse-cell > strong, .table-foot strong { color: #34343e; }
td small, .recent-sales-table td small, .product-description small { color: #7b7b85; }
.row-number { color: #92929d; }
.task-check { border-color: #c9c9d4; border-radius: 6px; }
.task-check.checked { background: #3982d6; border-color: #3982d6; }
.task-check:not(:disabled):hover { outline-color: #0071e321; }
.table-foot { color: #74747f; }
.export-footer, .delivery-close-footer { background: #fafafc; border-color: #e5e5ed; }
.export-footer strong, .delivery-close-footer strong, .process-exports strong { color: #4d4d59; }
.export-footer small, .delivery-close-footer p, .delivery-readonly-note { color: #74747f; }
.delivery-summary span, .statement-totals, .batch-product-summary, .batch-counter,
.delivery-selection-summary, .delivery-continuation { background: #f1f4fa; color: #424a59; }
.delivery-summary strong { color: #305c94; }
.batch-card { background: #fafafc; border-color: #e3e3eb; border-radius: 11px; }
.account-card { border-color: #e1e1e9; border-radius: 11px; }
.account-card.selected { background: #f4f7fd; border-color: #b5cdef; }
.delivery-card.selected { border-color: #d2e2f8; }
.delivery-note { background: #f7f7fa; border-left-color: #aac6ed; }
.timeline-dot { background: #87addf; }
.timeline-row:not(:last-child):before { background: #e3e3ec; }
.timeline-row strong { color: #484854; }
.timeline-row p, .timeline-row small { color: #74747f; }
dialog { background: #fdfdfe; color: #41414d; border-color: #d8d8e2; border-radius: 16px; box-shadow: 0 24px 80px #14142333, 0 0 0 1px #fff6; }
dialog::backdrop { background: #1d1d2b45; backdrop-filter: blur(5px); }
.modal-head, .modal-footer { border-color: #e7e7ee; }
.modal-head { background: #f9f9fc; }
#toast { background: #33333e; color: #fff; border-color: #555560; border-radius: 11px; box-shadow: 0 6px 24px #1d1d2b26; }
#toast.error { background: #8a3d35; border-color: #a4635d; }
.danger-text, .error-text { color: #bc4a3c !important; }
.batch-counter.over-limit, .delivery-funding-error { background: #fff0ec; color: #a03c2d; }
.public-brand strong { color: #303039; }
.public-brand small, .public-head p, .public-footer { color: #74747f; }
.readonly-tag { color: #65748b; background: #edf2fa; border-color: #dae3f3; }
.public-live-section { border-color: #e2e4ed; }
.public-live-heading { background: #f0f3fa; }
.public-live-heading h4, .public-live-subtotal strong { color: #344a6c; }
.public-live-heading p, .public-live-subtotal span { color: #737989; }
/* Transparent artwork blends into each surface without a rectangular matte. */
.brand-logo {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1724 / 912;
}
.brand-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}
.sidebar .brand { display: flex; padding: 0; margin-bottom: 35px; }
.sidebar .brand .brand-logo { display: block; }
.public-brand { width: 195px; flex-shrink: 0; }
.public-top { padding: 18px 0; }
.mobile-brand { display: none; }
@media (min-width: 701px) and (max-width: 960px) {
  .sidebar .brand { margin-bottom: 30px; }
  .sidebar .brand .brand-logo { aspect-ratio: 1490 / 480; }
  .sidebar .brand .brand-logo img { position: absolute; width: 115.7047%; left: -9.396%; top: -20.8333%; }
}
@media (max-width: 700px) {
  .sidebar { background: #efeff4; border-bottom: 1px solid #dcdce5; }
  .sidebar .brand { display: none; }
  .mobile-brand { display: block; width: 88px; flex-shrink: 0; }
  .topbar > .breadcrumb { display: none; }
  .public-brand { width: 150px; }
  .public-top { padding: 12px 0; gap: 15px; }
  .public-top .readonly-tag { font-size: 9px; text-align: center; line-height: 1.5; }
}
@media print {
  body, .customer-page { background: #fff; }
  .stat, .products-card { box-shadow: none; }
  .public-live-heading { background: #f0f3fa !important; print-color-adjust: exact; }
}

.sign-in { min-height: 100dvh; display: grid; place-items: center; padding: 24px; }
.sign-in-card { width: min(100%, 420px); padding: clamp(22px, 5vw, 36px); }
.sign-in-card .brand-logo { display: block; width: 145px; margin-bottom: 24px; }
.sign-in-card h1 { font-size: clamp(24px, 5vw, 30px); line-height: 1.15; margin: 0 0 8px; }
.sign-in-card > p { color: var(--secondary-text); margin: 0 0 22px; }
.sign-in-card .sign-in-error { color: #b42318; margin: 0; }
.sign-in-card .sign-in-error:empty { display: none; }
.staff-session { display: flex; gap: 10px; align-items: center; }
.staff-session .staff-identity { display: grid; font-size: 12px; }
.staff-session .staff-identity small { color: var(--secondary-text); }
.staff-session #logout { white-space: nowrap; }
@media (max-width: 560px) {
  .staff-session .user-avatar { display: none; }
  .staff-session #logout { padding-inline: 8px; }
}
