:root {
  --ws-text: #172033;
  --ws-muted: #596579;
  --ws-border: #dce2ea;
  --ws-surface: #ffffff;
  --ws-subtle: #f3f5fc;
  --ws-highlight: #eef2ff;
  --ws-row-padding: 12px;
  --ws-accent: #1d4ed8;
  --ws-success: #087753;
  --ws-warning: #9a4b08;
  --ws-danger: #b42332;
  --ws-radius: 8px;
  --ws-space: 8px;
  --ws-control: 44px;
  --ws-body: 14px;
}

.ws-ui { color: var(--ws-text); font-size: var(--ws-body); letter-spacing: 0; }
.ws-ui *, .ws-ui *::before, .ws-ui *::after { box-sizing: border-box; }
.ws-heading { margin: 0; font-size: 22px; line-height: 1.35; font-weight: 700; letter-spacing: 0; }
.ws-muted { color: var(--ws-muted); }
.ws-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ws-space); }
.ws-field, .ws-button {
  min-height: var(--ws-control); border: 1px solid var(--ws-border);
  border-radius: var(--ws-radius); font: inherit; letter-spacing: 0;
}
.ws-field { width: 100%; min-width: 0; padding: 8px 12px; color: var(--ws-text); background: var(--ws-surface); }
.ws-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 14px; color: var(--ws-text); background: var(--ws-surface); cursor: pointer; }
.ws-button:hover:not(:disabled) { background: var(--ws-subtle); }
.ws-button--primary { color: #fff; background: var(--ws-accent); border-color: var(--ws-accent); }
.ws-button--primary:hover:not(:disabled) { background: #1e40af; }
.ws-button--icon { width: var(--ws-control); flex: 0 0 var(--ws-control); padding: 0; }
.ws-button:disabled { opacity: .5; cursor: default; }
.ws-ui :is(button, input, select, textarea, a, summary):focus-visible { outline: 2px solid var(--ws-accent); outline-offset: 3px; }
.ws-status { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; line-height: 1.4; }
.ws-status[data-tone="success"] { color: var(--ws-success); }
.ws-status[data-tone="warning"] { color: var(--ws-warning); }
.ws-status[data-tone="danger"] { color: var(--ws-danger); }
.ws-notice { padding: 12px 16px; background: var(--ws-subtle); border-left: 3px solid var(--ws-border); line-height: 1.5; }
.ws-table { width: 100%; border-collapse: collapse; font-size: var(--ws-body); }
.ws-table th { text-align: left; color: var(--ws-muted); background: var(--ws-subtle); font-size: 12px; font-weight: 600; }
.ws-table :is(th, td) { padding: 12px; border-bottom: 1px solid var(--ws-border); vertical-align: top; }
.ws-table td { line-height: 1.45; overflow-wrap: anywhere; }
.ws-row { padding: var(--ws-row-padding); border: 1px solid var(--ws-border); border-radius: var(--ws-radius); background: var(--ws-surface); }
.ws-row__facts { display: grid; gap: 10px; margin-top: 12px; }
.ws-row__fact { display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: baseline; gap: 8px; }
.ws-row__fact > span:first-child { color: var(--ws-muted); font-size: 13px; }
.ws-row__fact > div { min-width: 0; overflow-wrap: anywhere; }
.ws-value { font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; }
.ws-order-top { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 10px; }
.ws-order-status { min-width: 0; max-width: 100%; }
.ws-order-tags { display: flex; flex-wrap: wrap; gap: 6px; align-items: flex-start; margin-top: 6px; }
.ws-order-tags > span, .ws-order-status > span { white-space: normal; overflow-wrap: anywhere; max-width: 100%; }
.ws-order-tags > span { border-radius: 4px; font-size: 12px; }
.ws-order-name { display: block; overflow-wrap: anywhere; }
.ws-order-contact { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 3px; }
.ws-order-phone { white-space: nowrap; font-variant-numeric: tabular-nums; }
.ws-order-contact > span { margin-left: 0; }
.ws-order-date { font-size: 12px; color: var(--ws-muted); line-height: 1.4; }
.ws-order-customer, .ws-order-delivery, .ws-item-summary { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; line-height: 1.45; margin-top: 8px; overflow-wrap: anywhere; }
.ws-order-customer > div, .ws-order-delivery > div, .ws-item-summary > div { min-width: 0; }
.ws-item-summary { background: var(--ws-subtle); padding: 8px; border-radius: 4px; }
.ws-item-summary .material-symbols-outlined, .ws-order-customer .material-symbols-outlined, .ws-order-delivery .material-symbols-outlined { font-size: 16px; flex: 0 0 16px; color: var(--ws-muted); }
.ws-order-bottom { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
.ws-order-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 4px; font-size: 12px; }
.ws-order-chevron { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 4px; background: var(--ws-highlight); color: var(--ws-accent); }
.ws-row--closed { background: var(--ws-subtle); }
.ws-row--closed :is(.ws-order-customer, .ws-item-summary, .ws-order-delivery, .ws-order-last-call), .ws-row--closed .ws-order-tags > span { display: none; }
.ws-row--closed .ws-order-bottom { margin-top: 4px; }
.ws-button--open { font-size: 12px; padding: 6px 10px; background: var(--ws-highlight); color: var(--ws-accent); border-color: transparent; }
.ws-search-group { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 16px; }
.ws-search-group > label { display: none !important; }
.ws-searchbox { position: relative; min-width: 0; }
.ws-searchbox > span { position: absolute; z-index: 1; left: 10px; top: 50%; transform: translateY(-50%); font-size: 18px; color: var(--ws-muted); pointer-events: none; }
.ws-searchbox > input { padding-left: 36px; }
.ws-filter-source { display: none !important; }
.ws-segments { display: flex; min-width: 0; padding: 3px; border-radius: var(--ws-radius); background: var(--ws-highlight); }
.ws-segments > button { flex: 1 1 auto; min-width: 0; border: 0; padding: 6px; background: transparent; color: var(--ws-muted); font: inherit; font-size: 12px; cursor: pointer; white-space: nowrap; }
.ws-segments > button[aria-pressed="true"] { background: var(--ws-surface); color: var(--ws-text); box-shadow: 0 1px 3px #17203314; }
.ws-ui #v3OrdersFiltersPanel > .ws-order-filters { grid-template-columns: minmax(0,1fr) 180px 220px 96px !important; }
.ws-order-heading { display: flex; align-items: center; gap: 8px; min-width: 0; }
.ws-count { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; padding: 2px 5px; border-radius: 4px; background: var(--ws-highlight); font-size: 12px; font-variant-numeric: tabular-nums; }
.ws-ui #v3OrdersFiltersPanel .ws-page-size { width: 64px; flex: 0 0 64px; padding: 4px 20px 4px 8px; font-size: 13px; }

/* Temporary adapters for legacy utility styles; remove as sections migrate. */
.ws-ui #v3OrdersFiltersPanel, .ws-ui #v3OrdersListSection { border-radius: 0 !important; box-shadow: none; }
.ws-ui #v3OrdersFiltersPanel { border: 0; border-bottom: 1px solid var(--ws-border); }
.ws-ui #v3OrdersListSection { border: 0; }
.ws-ui #v3OrdersFiltersPanel :is(input, select, button) { min-height: var(--ws-control) !important; border-radius: var(--ws-radius) !important; font-size: var(--ws-body); }
.ws-ui #v3OrdersFiltersPanel label { font-size: 12px; text-transform: none; }
.ws-ui #v3OrdersFiltersPanel > .grid { align-items: center; }
.ws-ui #v3OrdersSyncInfo { line-height: 1.5; max-height: none; overflow: visible; }
.ws-ui #v3OrdersCards article { border-radius: var(--ws-radius) !important; box-shadow: none; opacity: 1; }
.ws-ui #v3OrdersCards { align-items: start; }
.ws-ui #v3OrdersCards article :is(.text-xs, .text-\[11px\], .text-\[10px\]) { font-size: 13px; line-height: 1.45; }
.ws-ui #v3OrdersCards article .ws-value { font-size: 18px; }
.ws-ui #v3OrdersTable { table-layout: auto; }
.ws-ui #v3OrdersTable :is(th, td) { padding: 10px 8px; }
.ws-ui #v3OrdersTable tbody tr:nth-child(even) { background: var(--ws-subtle); }
.ws-ui #v3OrdersTable tbody tr:hover { background: var(--ws-highlight); }
.ws-ui #v3OrdersTable :is(td:nth-child(1), td:nth-child(6), td:nth-child(9)) { white-space: nowrap; }
.ws-ui #v3OrdersTable td:nth-child(5) { max-width: 180px; }
.ws-ui #v3OrdersTable td:nth-child(7) { max-width: 200px; }
.ws-ui #v3OrdersTable td:nth-child(8) { min-width: 125px; }
.ws-ui #v3OrdersCards article .ws-order-status > span, .ws-ui #v3OrdersTable :is(td:nth-child(3),td:nth-child(8)) span { border-radius: 4px; }
.ws-ui #v3OrdersTable th { text-transform: none; }
.ws-ui #v3OrdersTable td { font-size: var(--ws-body); }
.ws-ui #v3OrdersTable td:nth-child(2) { font-size: 13px; }
.ws-ui #v3OrdersTable .v3-order-items-preview { font-size: 13px; }
.ws-ui #v3OrdersPageSize { padding-left: 8px; padding-right: 20px; }
@media (max-width: 767px) {
  .ws-search-group { grid-template-columns: minmax(0,1fr); gap: 6px; }
  .ws-ui #v3OrdersRefreshBtn { display: inline-flex; }
  .ws-ui #v3OrdersCards { padding: 8px !important; gap: 8px !important; }
  .ws-ui #v3OrdersCards article { padding: var(--ws-row-padding) !important; }
  .ws-ui #v3OrdersFiltersPanel { position: relative; padding: 8px !important; }
  .ws-ui #v3OrdersFiltersPanel > .ws-order-filters { grid-template-columns: minmax(0,.9fr) minmax(0,1.4fr) !important; }
  .ws-ui #v3OrdersFiltersPanel .ws-search-group { grid-column: 1 / -1 !important; }
  .ws-ui #v3OrdersFiltersPanel .ws-order-heading { min-height: 44px; gap: 6px; }
  .ws-ui #v3OrdersFiltersPanel .ws-order-heading h1 { font-size: 18px; }
  .ws-ui #v3OrdersFiltersPanel .ws-order-tools { gap: 4px; }
  .ws-ui #v3OrdersFiltersPanel .ws-segments { padding: 1px; }
  .ws-ui #v3OrdersFiltersPanel .ws-segments > button { font-size: 12px; border-radius: 4px !important; padding: 4px; }
}
@media (min-width: 768px) {
  .ws-ui #v3OrdersFiltersPanel label { display: none; }
}
@media (min-width: 768px) and (orientation: landscape) and (max-height: 520px) {
  .ws-search-group { grid-template-columns: minmax(0,1fr); gap: 4px; }
  .ws-ui #v3OrdersFiltersPanel > .ws-order-filters { grid-template-columns: minmax(0,1fr) 160px 200px 96px !important; }
}

.ws-order-header-row { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.ws-order-tools { display:flex; align-items:center; gap:6px; flex-shrink:0; }
.ws-menu { position:relative; }
.ws-menu > summary { list-style:none; cursor:pointer; }
.ws-menu > summary::-webkit-details-marker { display:none; }
.ws-menu-panel { position:absolute; right:0; top:calc(100% + 6px); z-index:40; width:240px; max-width:calc(100vw - 32px); padding:12px; background:var(--ws-surface); border:1px solid var(--ws-border); border-radius:var(--ws-radius); box-shadow:0 6px 20px #1720331a; }
.ws-menu-panel label { display:block; margin-bottom:6px; font-size:12px; color:var(--ws-muted); }
.ws-menu-panel .ws-field { width:100%; }
.ws-menu-panel .ws-button { width:100%; justify-content:flex-start; margin-top:10px; }
.ws-ui #v3OrdersFiltersPanel .ws-menu-panel label { display:block !important; }
.ws-ui #v3OrdersFiltersPanel > .ws-order-filters { grid-template-columns:minmax(0,1fr) 200px 240px !important; }
.ws-ui #v3OrdersFiltersPanel .ws-search-group { display:block; grid-column:auto; }
.ws-ui #v3OrdersFiltersPanel .ws-order-filters label { display:none; }
.ws-ui #v3OrdersCreateBtn { display:inline-flex; align-items:center; gap:8px; }
.ws-ui #v3OrdersCreateBtn[hidden] { display:none; }
.ws-dialog { color:var(--ws-text); background:var(--ws-surface); border:1px solid var(--ws-border); border-radius:var(--ws-radius); padding:0; }
.ws-dialog[open] { display:flex; flex-direction:column; height:min(94dvh,1000px); max-height:94dvh; }
.ws-dialog-header,.ws-dialog-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px; flex-shrink:0; }
.ws-dialog-header { border-bottom:1px solid var(--ws-border); }
.ws-dialog-footer { border-top:1px solid var(--ws-border); }
.ws-dialog-title { display:flex; align-items:center; gap:10px; min-width:0; }
.ws-dialog-title h3 { margin:0; font-size:18px; line-height:1.3; overflow-wrap:anywhere; }
.ws-dialog-emblem { display:grid; place-items:center; flex:0 0 36px; height:36px; color:var(--ws-accent); background:var(--ws-subtle); border:1px solid var(--ws-border); border-radius:6px; }
.ws-ui svg { flex-shrink:0; width:18px; height:18px; }
.ws-dialog-body { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; }
.ws-dialog :is(input,select,textarea,button) { font-family:inherit; }
.ws-form-section { min-width:0; margin-bottom:16px; }
.ws-section-heading { display:flex; align-items:center; gap:8px; margin:0; padding:12px; border-bottom:1px solid var(--ws-border); background:var(--ws-subtle); font-size:14px; font-weight:700; }
.ws-section-heading svg { color:var(--ws-accent); }
.ws-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ws-summary { display:flex; flex-direction:column; gap:2px; min-width:0; }
.ws-summary > span,.ws-field-note { font-size:12px; line-height:1.5; color:var(--ws-muted); }
.ws-summary strong { font-size:18px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.ws-picker-search { padding:12px 16px; border-bottom:1px solid var(--ws-border); }
.ws-picker-search input { width:100%; }
.ws-picker-search .ws-field-note { margin-top:6px; }
.ws-selection-count { font-size:13px; color:var(--ws-muted); }
.ws-selection-count strong { display:inline-block; min-width:24px; padding:3px 6px; margin-left:4px; border-radius:4px; background:var(--ws-subtle); color:var(--ws-accent); text-align:center; }
.ws-pick-row { display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:12px; padding:14px 16px; border-bottom:1px solid var(--ws-border); cursor:pointer; }
.ws-pick-row:hover { background:var(--ws-subtle); }
.ws-pick-row.is-selected { background:#edf3ff; box-shadow:inset 3px 0 var(--ws-accent); }
.ws-pick-row input[type=checkbox] { width:20px; height:20px; accent-color:var(--ws-accent); cursor:pointer; }
.ws-pick-name { font-size:14px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.ws-pick-reference { margin-top:4px; font-size:12px; color:var(--ws-muted); overflow-wrap:anywhere; }
.ws-pick-price { font-size:14px; font-weight:700; font-variant-numeric:tabular-nums; color:var(--ws-accent); white-space:nowrap; }
.ws-empty { padding:28px 16px; text-align:center; color:var(--ws-muted); font-size:14px; }
.ws-empty svg { display:block; width:28px; height:28px; margin:0 auto 10px; color:var(--ws-accent); }
.ws-payment-options {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px;}
.ws-payment-options label {position:relative; min-width:0; cursor:pointer;}
.ws-payment-options label > span {display:flex; flex-direction:column; justify-content:center; align-items:center; gap:8px; min-height:74px; padding:10px 4px; border:1px solid var(--ws-border); border-radius:6px; color:var(--ws-muted); font-size:13px; font-weight:600;}
.ws-payment-options input:checked + span {background:var(--ws-highlight); border-color:var(--ws-accent); color:var(--ws-accent); box-shadow:inset 0 0 0 1px var(--ws-accent);}
.ws-payment-options input:focus-visible + span {outline:2px solid var(--ws-accent); outline-offset:2px;}
.ws-dialog.order-checkout[open] {height:min(520px,calc(100dvh - 24px)); max-height:calc(100dvh - 24px); inset:0; margin:auto; transform:none;}
.order-checkout > .ws-dialog-header,.order-checkout > .ws-dialog-footer {flex:0 0 auto;}
.order-checkout > .ws-dialog-body {flex:1 1 0; min-height:0; max-height:none; overflow-y:auto;}
.order-checkout-body {padding:16px;}
.order-checkout-summary {font-size:18px; font-weight:700; margin-bottom:6px; overflow-wrap:anywhere;}
.order-checkout fieldset {border:0; padding:0; margin:20px 0 12px; min-width:0;}
.order-checkout fieldset legend {font-size:13px; font-weight:600; margin-bottom:10px;}
.order-checkout-notice {margin-bottom:0; font-size:12px;}
.order-checkout-actions {display:grid; grid-template-columns:auto auto minmax(0,1fr); gap:8px;}
.order-checkout-actions .ws-button {font-size:13px; padding:8px 10px;}
@media(max-width:540px) {
  .order-checkout-actions {grid-template-columns:repeat(2,minmax(0,1fr));}
  .order-checkout-actions .ws-button--primary {grid-column:1/-1; grid-row:1;}
}
@media (max-width:700px) {
  .ws-dialog-header,.ws-dialog-footer { padding:12px; }
  .ws-form-grid { grid-template-columns:minmax(0,1fr); }
  .ws-pick-row { grid-template-columns:24px minmax(0,1fr); gap:8px 12px; padding:12px; }
  .ws-pick-price { grid-column:2; }
  .ws-dialog input:not([type=checkbox]),.ws-dialog select,.ws-dialog textarea { font-size:16px; }
}
@media(max-width:767px) {
  .ws-ui #v3OrdersFiltersPanel > .ws-order-filters { grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr) !important; gap:6px; }
  .ws-ui #v3OrdersFiltersPanel .ws-search-group { grid-column:1/-1; }
  .ws-ui #v3OrdersCreateBtn { width:44px; padding:0; justify-content:center; }
  .ws-ui #v3OrdersCreateBtn .ws-command-label { display:none; }
  .ws-order-header-row { margin-bottom:6px; }
}
.ws-order-review { margin-top: 6px; padding-left: 8px; border-left: 2px solid #d97706; }
.ws-order-review > span { display: inline; border: 0; border-radius: 0; padding: 0; background: transparent; color: #92400e; font-size: 12px; font-weight: 500; line-height: 1.5; }
