:root {
  --ink: #102a43;
  --muted: #667b90;
  --canvas: #f3f8fc;
  --panel: #ffffff;
  --line: #d8e5ef;
  --line-soft: #eaf1f7;
  --navy: #164d78;
  --navy-2: #0d2d4a;
  --teal: #2f95d2;
  --teal-soft: #e4f4fd;
  --gold: #d69e2e;
  --gold-soft: #fff5da;
  --red: #b84d4d;
  --red-soft: #faecea;
  --blue: #277cb2;
  --blue-soft: #e8f3fb;
  --shadow: 0 12px 34px rgba(25, 88, 132, .10);
  --radius: 16px;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body { max-width: 100%; margin: 0; overflow-x: hidden; color: var(--ink); background: var(--canvas); font: 14px/1.45 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(47, 149, 210, .26); outline-offset: 1px; }
.hidden { display: none !important; }

.app-shell { display: grid; grid-template-columns: var(--sidebar-width, 250px) 1fr; min-height: 100vh; }
.sidebar { position: fixed; inset: 0 auto 0 0; width: var(--sidebar-width, 250px); display: flex; flex-direction: column; padding: 26px 18px 20px; color: #f2f7f5; background: var(--navy-2); z-index: 30; }
.brand { display: flex; align-items: center; gap: 12px; padding: 0 8px 30px; }
.brand strong { display: block; font-size: 18px; letter-spacing: -.2px; }
.brand small, .profile small, .sidebar-note small { display: block; color: #a8bdb8; font-size: 11px; margin-top: 2px; }
.brand-mark { width: 36px; height: 36px; flex: 0 0 36px; display: block; border-radius: 11px; box-shadow: 0 8px 20px rgba(47,149,210,.24); }
.sidebar nav { display: grid; gap: 6px; }
.nav-item { width: 100%; border: 0; border-radius: 10px; display: flex; align-items: center; gap: 11px; padding: 11px 12px; color: #b7c8c4; background: transparent; text-align: left; font-weight: 600; }
.nav-item:hover { background: rgba(255,255,255,.06); color: #fff; }
.nav-item.active { background: linear-gradient(135deg,#1f78ae,#319fdc); color: #fff; box-shadow: 0 8px 18px rgba(15,91,145,.2); }
.nav-item svg { width: 18px; fill: currentColor; }
.nav-count { margin-left: auto; min-width: 24px; padding: 2px 7px; border-radius: 12px; text-align: center; font-size: 11px; background: rgba(255,255,255,.12); }
.sidebar-note { margin-top: auto; padding: 14px 12px; display: flex; align-items: flex-start; gap: 9px; border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.035); border-radius: 12px; }
.sidebar-note strong { font-size: 12px; }
.online-dot { width: 8px; height: 8px; margin-top: 5px; border-radius: 50%; background: #58c9a9; box-shadow: 0 0 0 4px rgba(88,201,169,.12); }
.profile { display: flex; align-items: center; gap: 10px; padding: 17px 8px 0; margin-top: auto; border-top: 1px solid rgba(255,255,255,.08); }
.profile strong { font-size: 12px; }
.profile-copy { min-width: 0; flex: 1; }
.profile-copy label,.profile-copy strong,.profile-copy small { display: block; overflow-wrap: anywhere; }
.avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: var(--navy-2); background: #ccecff; font-size: 11px; font-weight: 800; }

.workspace { grid-column: 2; min-width: 0; }
.topbar { position: sticky; top: 0; z-index: 20; height: 76px; display: flex; gap: 18px; align-items: center; padding: 0 34px; background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); backdrop-filter: blur(16px); }
.global-search { position: relative; flex: 1; max-width: 620px; }
.global-search svg { position: absolute; left: 14px; top: 50%; width: 17px; transform: translateY(-50%); fill: none; stroke: #71807b; stroke-width: 1.8; }
.global-search input { width: 100%; padding: 11px 44px 11px 42px; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: #f9fbfa; }
.global-search input::placeholder { color: #87938f; }
kbd { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); border: 1px solid #d5ddda; border-bottom-width: 2px; padding: 1px 6px; border-radius: 5px; color: #7e8985; background: white; font: 11px ui-monospace, monospace; }
.mobile-menu, .desktop-menu { display: none !important; }
.profile-signout svg { display: none; }
@media screen and (min-width: 821px) {
  .desktop-menu { display: inline-grid !important; flex-shrink: 0; }
  .brand { position: relative; }
  .brand-copy { flex: 1; min-width: 0; }
  .brand strong { padding-right: 36px; }
  .brand .desktop-menu { position: absolute; top: 3px; right: 0; width: 32px; height: 32px; border-color: rgba(168,210,240,.28); color: #e4f4fd; background: rgba(168,210,240,.10); transition: background .15s ease, border-color .15s ease; }
  .brand .desktop-menu:hover { border-color: rgba(168,210,240,.55); background: rgba(168,210,240,.20); }
  .brand .desktop-menu:focus-visible { outline-color: #86d1ff; outline-offset: 3px; }
  .auth-locked .desktop-menu { visibility: hidden; pointer-events: none; }
  .sidebar-collapsed { --sidebar-width: 76px; }
  .sidebar-collapsed .sidebar { padding-inline: 12px; }
  .sidebar-collapsed .brand { flex-direction: column; justify-content: center; padding: 0 0 20px; }
  .sidebar-collapsed .brand .desktop-menu { position: static; width: 36px; height: 36px; }
  .sidebar-collapsed .brand-copy,
  .sidebar-collapsed .nav-label,
  .sidebar-collapsed .nav-count,
  .sidebar-collapsed .profile-copy,
  .sidebar-collapsed .profile-signout span { display: none; }
  .sidebar-collapsed .nav-item { justify-content: center; min-height: 44px; padding: 12px; }
  .sidebar-collapsed .nav-item svg { flex: 0 0 20px; width: 20px; }
  .sidebar-collapsed .profile { flex-direction: column; padding-inline: 0; }
  .sidebar-collapsed .profile-signout { display: grid; place-items: center; width: 38px; height: 38px; margin-left: 0; padding: 0; border-radius: 10px; color: #b7c8c4; }
  .sidebar-collapsed .profile-signout:hover { color: #fff; background: rgba(255,255,255,.06); }
  .sidebar-collapsed .profile-signout svg { display: block; width: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  .sidebar-collapsed .desktop-menu svg { transform: rotate(180deg); }
}
.icon-btn { width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 10px; display: inline-grid; place-items: center; color: var(--ink); background: white; }
.icon-btn svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.btn { border: 1px solid var(--line); border-radius: 9px; padding: 9px 14px; font-weight: 700; color: var(--ink); background: white; transition: .15s ease; }
.btn:hover { transform: translateY(-1px); box-shadow: 0 5px 14px rgba(18,49,46,.08); }
.btn-primary { border-color: var(--teal); color: white; background: var(--teal); }
.btn-primary:hover { background: #247fb8; }
.btn-danger { border-color: #edceca; color: var(--red); background: var(--red-soft); }
.btn-small { padding: 6px 10px; font-size: 12px; }

main { width: 100%; min-width: 0; padding: 30px 34px 60px; max-width: 1480px; margin: 0 auto; }
.page-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 24px; }
.eyebrow { margin: 0 0 5px; color: var(--teal); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 6px; font-size: clamp(25px, 3vw, 35px); letter-spacing: -.035em; line-height: 1.15; }
.page-head p:not(.eyebrow) { margin-bottom: 0; color: var(--muted); }
.date-note { color: var(--muted); font-size: 12px; }

.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 22px; }
.metric-card { position: relative; overflow: hidden; padding: 19px 20px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); }
.metric-card::after { content: ""; position: absolute; right: -14px; top: -16px; width: 72px; height: 72px; border-radius: 50%; background: var(--tone, var(--teal-soft)); opacity: .7; }
.metric-card span { color: var(--muted); font-size: 12px; font-weight: 650; }
.metric-card strong { display: block; margin: 6px 0 3px; font-size: 30px; letter-spacing: -.04em; }
.metric-card small { color: var(--muted); }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 18px; }
.panel { min-width: 0; max-width: 100%; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: 0 2px 3px rgba(18,49,46,.02); }
.panel + .panel { margin-top: 18px; }
.panel-head { min-width: 0; min-height: 62px; display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 16px 19px; border-bottom: 1px solid var(--line-soft); }
.panel-head > * { min-width: 0; }
.panel-head h2,.panel-head h3,.panel-head p { overflow-wrap: anywhere; }
.panel-head h2, .panel-head h3 { margin: 0; font-size: 15px; }
.panel-head p { margin: 3px 0 0; color: var(--muted); font-size: 12px; }
.panel-body { padding: 18px 19px; }
.text-btn { border: 0; padding: 4px; color: var(--teal); background: transparent; font-size: 12px; font-weight: 750; }

.action-list { display: grid; }
.action-row { display: grid; grid-template-columns: 40px minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 14px 19px; border-bottom: 1px solid var(--line-soft); }
.action-row:last-child { border-bottom: 0; }
.action-row:hover { background: #fbfcfb; }
.action-pr { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; color: var(--teal); background: var(--teal-soft); font-size: 10px; font-weight: 900; }
.action-copy { min-width: 0; overflow-wrap: anywhere; }
.action-copy strong { display: block; margin-bottom: 2px; font-size: 13px; }
.action-copy small { color: var(--muted); overflow-wrap: anywhere; }
.action-meta { min-width: 0; display: grid; justify-items: end; text-align: right; }
.action-meta small { display: block; margin-top: 5px; color: var(--muted); }
.overdue { color: var(--red) !important; font-weight: 700; }

.status-pill { display: inline-flex; align-items: center; max-width: 100%; white-space: normal; overflow-wrap: anywhere; gap: 6px; padding: 4px 9px; border-radius: 99px; color: #315b78; background: #edf5fa; font-size: 11px; font-weight: 750; }
.status-pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .75; }
.status-pill.warning { color: #986d14; background: var(--gold-soft); }
.status-pill.danger { color: #a34545; background: var(--red-soft); }
.status-cell{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.clearance-payment-info { flex-basis: 100%; color: var(--muted); font-size: 11px; line-height: 1.5; white-space: normal; }
.clearance-payment-info strong { color: var(--ink); font-weight: 700; font-variant-numeric: tabular-nums; }
.status-pill.success { color: #176f9f; background: var(--teal-soft); }
.status-pill.info { color: #37627d; background: var(--blue-soft); }

.pipeline-list { display: grid; gap: 14px; }
.pipeline-row { display: grid; grid-template-columns: 115px 1fr 26px; align-items: center; gap: 10px; font-size: 12px; }
.pipeline-row strong { text-align: right; }
.bar { height: 8px; overflow: hidden; border-radius: 9px; background: #edf1ef; }
.bar > span { display: block; height: 100%; min-width: 5px; border-radius: inherit; background: var(--teal); }
.mini-case-list { display: grid; gap: 11px; }
.mini-case { display: flex; align-items: center; gap: 10px; padding-bottom: 11px; border-bottom: 1px solid var(--line-soft); cursor: pointer; }
.mini-case:last-child { border: 0; padding-bottom: 0; }
.mini-case > div { min-width: 0; flex: 1; }
.mini-case strong { display: block; font-size: 12px; }
.mini-case small { display: block; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.toolbar { display: flex; gap: 12px; align-items: center; margin-bottom: 16px; }
.toolbar .field { margin: 0; min-width: 180px; }
.toolbar .toolbar-search { flex: 1; min-width: 220px; }
.toolbar input, .toolbar select { background: white; }
.case-table-wrap { width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
table { width: 100%; border-collapse: collapse; }
th { padding: 11px 14px; color: #6e7a76; background: #f8faf9; border-bottom: 1px solid var(--line); text-align: left; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
td { padding: 14px; border-bottom: 1px solid var(--line-soft); vertical-align: middle; }
tbody tr { transition: background .12s ease; }
tbody tr.clickable:hover { background: #f8fbfa; cursor: pointer; }
tbody tr:last-child td { border-bottom: 0; }
.pr-cell strong { display: block; color: var(--teal); }
.pr-cell small, .supplier-cell small { color: var(--muted); }
.money { font-variant-numeric: tabular-nums; white-space: nowrap; }
.configurable-table .col-value .money { font-weight:700; }
.configurable-table td.col-remaining,.financial-table td.col-remaining { font-weight:700; }
.financial-note.empty-note{min-width:72px;min-height:36px;padding:7px 9px;border:1px dashed #d4e4ef;border-radius:7px;background:#f8fcff}.financial-note.empty-note:hover,.financial-note.empty-note:focus-visible{border-color:#91c9e9;background:#edf7fd}
.statement-table .row-actions{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.empty-state { padding: 48px 24px; text-align: center; color: var(--muted); }
.empty-state strong { display: block; margin-bottom: 5px; color: var(--ink); }

.case-hero { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 20px; }
.back-btn { margin-top: 1px; }
.case-title { flex: 1; }
.case-title h1 { display: flex; align-items: center; gap: 10px; }
.case-title p { color: var(--muted); margin-bottom: 0; }
.case-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 12px; min-width: 0; }
.case-action-buttons { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; align-items: center; }
.target-due { width: 266px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; text-align: left; }
.target-due-label { display: block; margin-bottom: 7px; font-size: 11px; font-weight: 800; color: var(--navy); }
.target-due-saved,.target-due-controls { display: flex; gap: 6px; align-items: center; }
.target-due-saved { justify-content: space-between; }
.target-due-saved strong { font-size: 13px; font-variant-numeric: tabular-nums; }
.target-due input { min-width: 0; flex: 1; padding: 7px 8px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); }
.target-due .btn { flex: 0 0 auto; padding: 7px 8px; }
.case-actions .btn:disabled { cursor: not-allowed; opacity: .48; transform: none; box-shadow: none; }
.workflow-next { max-width: 290px; white-space: normal; text-align: left; }
.workflow-tracker { margin: 0 0 24px; padding: 19px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: 0 2px 3px rgba(18,49,46,.02); }
.workflow-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.workflow-head h2 { margin: 0 0 3px; font-size: 18px; }
.workflow-head p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 12px; }
.workflow-count { flex: 0 0 auto; display: grid; justify-items: end; }
.workflow-count strong { color: var(--teal); font-size: 23px; line-height: 1; }
.workflow-count span { margin-top: 4px; color: var(--muted); font-size: 11px; }
.workflow-progress { height: 5px; overflow: hidden; margin: 16px 0 18px; border-radius: 6px; background: #e4eae7; }
.workflow-progress span { display: block; height: 100%; border-radius: inherit; background: var(--teal); transition: width .2s ease; }
.workflow-phases { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; align-items: start; }
.workflow-phase { min-width: 0; padding: 10px; border: 1px solid var(--line-soft); border-radius: 12px; background: #fafcfb; }
.workflow-phase-head { display: flex; align-items: center; gap: 7px; min-height: 32px; margin-bottom: 7px; color: var(--navy); font-size: 12px; }
.workflow-phase-head > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; color: var(--teal); background: var(--teal-soft); font-size: 9px; font-weight: 900; }
.workflow-steps { display: grid; gap: 4px; }
.workflow-step { width: 100%; min-height: 36px; display: grid; grid-template-columns: 22px minmax(0,1fr); align-items: center; gap: 7px; padding: 6px 7px; border: 1px solid transparent; border-radius: 8px; color: #66736f; background: transparent; text-align: left; font-size: 12px; line-height: 1.25; transition: .14s ease; }
.workflow-step:hover { border-color: #cbdad5; color: var(--navy); background: white; transform: translateY(-1px); }
.workflow-marker { width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; color: #7d8985; background: #edf1ef; font-size: 9px; font-weight: 850; }
.workflow-step.done { color: #40605a; }
.workflow-step.done .workflow-marker { color: white; background: var(--teal); }
.workflow-step.current { border-color: #e7cb86; color: #664b12; background: var(--gold-soft); font-weight: 800; box-shadow: 0 3px 10px rgba(126,91,21,.08); }
.workflow-step.current .workflow-marker { color: white; background: var(--gold); }
.clearance-payment-control { margin: 7px 5px 5px; padding: 9px; border: 1px solid #e7cb86; border-radius: 8px; background: #fffdf7; }
.clearance-payment-control label,.clearance-payment-label { display: block; margin: 0 0 6px; color: var(--ink); font-size: 11px; font-weight: 700; }
.clearance-payment-saved { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.clearance-payment-saved strong { font-size: 12px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.clearance-payment-saved .btn { flex: 0 0 auto; padding: 6px 9px; font-size: 11px; }
.clearance-payment-input-row { display: flex; align-items: center; gap: 6px; }
.clearance-payment-input-row input { width: 100%; min-width: 0; min-height: 32px; padding: 5px 7px; border: 1px solid var(--line); border-radius: 7px; color: var(--ink); background: #fff; font-size: 12px; }
.clearance-payment-input-row .btn { flex: 0 0 auto; padding: 6px 9px; font-size: 11px; }
.clearance-payment-control > small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
@media print { .clearance-payment-control { display: none !important; } }
@media (max-width: 760px) { .clearance-payment-input-row input { font-size: 16px; } }
.detail-grid { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 300px); gap: 18px; align-items: start; }
.detail-main { min-width: 0; }
.detail-grid > *, .detail-grid aside, .section-stack, .record-tabs-shell { min-width: 0; max-width: 100%; }
.summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1px; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: var(--line); margin-bottom: 18px; }
.summary-item { min-height: 80px; padding: 14px 16px; background: white; }
.summary-item span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 10px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.summary-item strong { display: block; overflow-wrap: anywhere; }
.tabs { display: flex; gap: 4px; overflow-x: auto; padding: 5px; margin-bottom: 14px; border: 1px solid var(--line); border-radius: 12px; background: white; scrollbar-width: none; }
.tab { flex: 0 0 auto; border: 0; border-radius: 8px; padding: 9px 13px; color: var(--muted); background: transparent; font-size: 12px; font-weight: 750; }
.tab.active { color: var(--navy); background: var(--teal-soft); }
.section-stack { display: grid; gap: 18px; }
.two-col { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.three-col { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.field { display: grid; gap: 6px; margin-bottom: 13px; }
.field label { color: #51605c; font-size: 11px; font-weight: 750; }
.field input, .field select, .field textarea { width: 100%; border: 1px solid #d8e1dd; border-radius: 9px; padding: 9px 10px; color: var(--ink); background: #fff; }
.field textarea { min-height: 84px; resize: vertical; }
.field input[readonly] { color: #65716e; background: #f5f7f6; }
.field-hint { color: var(--muted); font-size: 10px; }
.company-field + .pr-reference-field{align-self:start}
.company-picker{border:1px solid #d8e1dd;border-radius:9px;background:#fff;min-width:0}
.company-picker summary{display:flex;align-items:center;gap:10px;padding:10px;cursor:pointer;list-style:none;font-size:13px;min-height:41px}
.company-picker summary::-webkit-details-marker{display:none}
.company-picker summary::after{content:"";width:7px;height:7px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);margin-left:auto;flex-shrink:0}
.company-picker[open] summary::after{transform:rotate(225deg)}
.company-picker summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:9px}
#company-selection{overflow-wrap:anywhere;min-width:0}
.company-options{display:grid;gap:3px;padding:6px;border-top:1px solid #e5edf0;max-height:200px;overflow:auto}
.field .company-option{display:flex;align-items:center;gap:10px;padding:10px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;overflow-wrap:anywhere}
.field .company-option:hover,.field .company-option:has(input:checked){background:var(--teal-soft);color:var(--navy)}
.field .company-option input{width:17px;height:17px;flex-shrink:0;accent-color:var(--teal);margin:0;padding:0}
.form-actions { display: flex; justify-content: flex-end; gap: 8px; padding-top: 8px; }
.subhead { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; }
.subhead h3 { margin: 0; font-size: 13px; }
.record-list { display: grid; gap: 9px; }
.purchase-order-table { min-width: 850px; }
.record-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 12px 13px; border: 1px solid var(--line); border-radius: 11px; background: #fbfcfb; }
.record-card strong { display: block; font-size: 12px; }
.record-card small { color: var(--muted); }
.record-meta { text-align: right; }
.record-meta strong { font-variant-numeric: tabular-nums; }
.quotation-note-form { grid-column: 1 / -1; display: grid; gap: 5px; }
.quotation-note-form label { font-size: 11px; font-weight: 700; color: var(--muted); }
.quotation-note-form>div { display: flex; gap: 8px; }
.quotation-note-form input { flex: 1; min-width: 0; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.score-chip { display: inline-block; padding: 3px 7px; border-radius: 6px; color: var(--teal); background: var(--teal-soft); font-size: 10px; font-weight: 800; }
.selected-row { background: #f0faf7 !important; box-shadow: inset 3px 0 var(--teal); }
.doc-status { min-width: 118px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; background: white; font-size: 11px; }
.activity-list { display: grid; gap: 0; }
.activity-item { position: relative; padding: 0 0 18px 23px; color: var(--muted); font-size: 11px; }
.activity-item::before { content: ""; position: absolute; left: 4px; top: 4px; width: 7px; height: 7px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 4px var(--teal-soft); }
.activity-item::after { content: ""; position: absolute; left: 7px; top: 16px; bottom: 0; width: 1px; background: var(--line); }
.activity-item:last-child::after { display: none; }
.activity-item strong { display: block; margin-bottom: 2px; overflow-wrap: anywhere; color: var(--ink); font-size: 12px; }
.attention { border-color: #ecd59e; background: var(--gold-soft); }
.attention .panel-body { padding: 15px; }
.attention strong { display: block; margin-bottom: 4px; font-size: 12px; }
.attention p { margin-bottom: 0; color: #745a22; font-size: 11px; }

.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 20px; background: rgba(8,28,26,.54); backdrop-filter: blur(5px); }
.modal { width: min(680px, 100%); max-height: min(90vh, 850px); overflow: auto; border-radius: 18px; background: white; box-shadow: 0 28px 80px rgba(8,28,26,.26); }
.modal-head { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: flex-start; padding: 20px 22px; border-bottom: 1px solid var(--line); background: white; }
.modal-head h2 { margin: 0 0 3px; font-size: 19px; }
.modal-head p { margin: 0; color: var(--muted); font-size: 12px; }
.modal-close { border: 0; width: 32px; height: 32px; border-radius: 8px; background: #f2f5f3; font-size: 20px; }
.modal-body { padding: 20px 22px 22px; }
.toast-region { position: fixed; right: 24px; bottom: 24px; z-index: 80; display: grid; gap: 9px; }
.toast { min-width: 260px; max-width: 380px; padding: 12px 15px; border-radius: 10px; color: #fff; background: var(--navy); box-shadow: var(--shadow); animation: toast-in .2s ease; }
@keyframes toast-in { from { opacity: 0; transform: translateY(8px); } }

@media (max-width: 1100px) {
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .summary-grid { grid-template-columns: repeat(2, 1fr); }
  .detail-grid { grid-template-columns: 1fr; }
  .workflow-phases { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .app-shell { display: block; }
  .sidebar { width:min(250px,85vw); transform:translate3d(-115%,0,0); visibility:hidden; pointer-events:none; transition:transform .2s ease,visibility 0s linear .2s; box-shadow:16px 0 40px rgba(0,0,0,.18); }
  .sidebar.open { transform:translate3d(0,0,0); visibility:visible; pointer-events:auto; transition-delay:0s; }
  .workspace { width: 100%; }
  .mobile-menu { display: inline-grid !important; }
  .topbar { height: auto; min-height: 70px; padding: 12px 18px; gap: 10px; }
  .topbar .btn-primary { padding: 9px 11px; font-size: 0; }
  .topbar .btn-primary span { font-size: 20px; line-height: 14px; }
  main { padding: 24px 18px 50px; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .page-head { align-items: flex-start; }
  .toolbar { flex-wrap: wrap; }
  .toolbar .field { flex: 1; }
  .case-hero { flex-wrap: wrap; }
  .case-actions { width: 100%; justify-content: flex-start; }
  .workflow-phases { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .metric-card { padding: 15px; }
  .metric-card strong { font-size: 24px; }
  .two-col, .three-col { grid-template-columns: 1fr; }
  .summary-grid { grid-template-columns: 1fr 1fr; }
  .action-row { grid-template-columns: 38px minmax(0,1fr); }
  .action-meta { grid-column: 2; text-align: left; }
  .global-search kbd { display: none; }
  .workflow-head { align-items: flex-start; }
  .workflow-head p:not(.eyebrow) { display: none; }
  .workflow-phases { grid-template-columns: 1fr; }
  .workflow-next { order: -1; width: 100%; max-width: none; text-align: center; }
}

/* Independent workflow controls */
.workflow-step-item{min-width:0}.workflow-step-item .workflow-step{width:100%;text-align:left}.workflow-step.deferred{background:#fff3dc;color:#885709}.case-check-summary{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}.task-summary{font-size:13px;color:#64748b;border:1px solid #dce4e8;padding:5px 8px;border-radius:6px}.task-summary.checked{color:#176c58;background:#edf8f3}td .case-check-summary{min-width:220px;display:grid;margin-bottom:0}td .task-summary{font-size:12px}.workflow-steps{align-content:start}

.payment-plan-card{display:grid;gap:10px;margin:6px 0 10px;padding:10px;border:1px solid #b9d6cf;border-radius:10px;background:#f2faf7;box-shadow:0 4px 14px rgba(15,91,76,.08)}.payment-plan-head{display:grid;gap:2px}.payment-plan-head strong{font-size:13px}.payment-plan-head small,.payment-option small{color:var(--muted);font-size:11px;line-height:1.35}.payment-options{display:grid;gap:6px}.payment-option{display:flex;align-items:flex-start;gap:8px;padding:8px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.payment-option.selected{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-soft)}.payment-option input{margin-top:2px;accent-color:var(--teal)}.payment-option span{display:grid;gap:2px}.payment-option strong{font-size:12px}.payment-total{margin:0;font-size:11px}.payment-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.payment-split-grid>strong{grid-column:1/-1;font-size:12px}.payment-split-grid label{position:relative;display:grid;gap:3px;color:var(--muted);font-size:10px}.payment-split-grid input{width:100%;padding:7px;border:1px solid var(--line);border-radius:7px}.payment-split-grid label span{position:absolute;right:8px;bottom:8px}.split-total{padding:7px;border-radius:7px;background:#fff;font-size:11px}
.payment-plan-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.payment-plan-head>div{display:grid;gap:2px}.saved-payment-split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.saved-payment-split>div{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.saved-payment-split span,.saved-payment-split small{color:var(--muted);font-size:10px}.saved-payment-split strong{font-size:12px}.completion-note{padding:8px;border-radius:8px;color:#176c58;background:#e4f5ef;font-size:11px;font-weight:800}.document-action-card .payment-option{align-items:center}.freight-payment-card{margin:0 0 14px}.freight-payment-card>.payment-plan-head{align-items:center}

.document-presence-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px}.document-presence{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}.document-presence input{position:absolute;opacity:0;pointer-events:none}.document-check{display:grid;place-items:center;width:28px;height:28px;border:2px solid #b8c6c2;border-radius:8px;color:transparent;font-weight:900}.document-presence.present{border-color:#a8d2c7;background:#f1faf7}.document-presence.present .document-check{border-color:var(--teal);color:#fff;background:var(--teal)}.document-presence strong{font-size:14px}.document-presence small{color:var(--muted);font-size:12px}.document-presence.present small{color:#176c58}

.inline-form{display:flex;align-items:end;gap:10px;margin-bottom:18px}.inline-form .field{flex:1;margin:0}.admin-doc-list{display:grid;gap:8px}.admin-doc-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px}.admin-doc-row>input{flex:1;padding:9px 10px;border:1px solid #d8e1dd;border-radius:8px}.admin-doc-row>div{display:flex;gap:7px}.btn.danger{color:#a43127;border-color:#efc4bf;background:#fff6f4}

.admin-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}.admin-option-panel .panel-head{padding-bottom:12px}.admin-option-panel .panel-body{padding-top:14px}.admin-option-panel .inline-form{align-items:stretch;flex-direction:column}.admin-option-panel .inline-form .btn{width:100%}
.column-manager{position:relative}.column-manager>summary{list-style:none;white-space:nowrap}.column-manager>summary::-webkit-details-marker{display:none}.column-manager-menu{position:absolute;z-index:20;right:0;top:calc(100% + 8px);width:310px;max-height:430px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.column-manager-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;position:sticky;top:0;z-index:1;background:#fff;padding-bottom:8px}.column-manager-heading>strong{font-size:13px}.column-manager-heading .column-close{width:28px;height:28px;flex-shrink:0;font-size:19px}.column-control{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0;border-top:1px solid var(--line-soft)}.column-control label{font-size:12px}.column-control label input{accent-color:var(--teal)}.column-control>div{display:flex;gap:4px}.column-control .icon-btn{display:grid;width:28px;height:28px}.configurable-table td{vertical-align:top}.configurable-table small{display:block;margin-top:4px}.table-comment{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freight-state{width:max-content;padding:2px 6px;border-radius:5px;color:#8a5b12;background:#fff0d4;font-weight:800}.freight-state.paid{color:#176c58;background:#e4f5ef}
.payment-ledger{margin-bottom:18px}.payment-ledger-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:15px}.payment-ledger-summary>div{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fafcfb}.payment-ledger-summary span{color:var(--muted);font-size:11px}.payment-ledger-summary strong{font-size:17px}.payment-ledger-summary .remaining{border-color:#acd4ca;background:#f0faf7}.payment-history{display:grid;gap:0;border-top:1px solid var(--line)}.payment-history>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:11px 15px;border-bottom:1px solid var(--line-soft)}.payment-history>div:last-child{border-bottom:0}.payment-history span,.payment-history small{color:var(--muted);font-size:11px}.payment-history small{grid-column:1/-1}

@media(max-width:1000px){.admin-settings-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.document-presence-list{grid-template-columns:1fr}.inline-form{align-items:stretch;flex-direction:column}.inline-form .btn{width:100%}.admin-settings-grid{grid-template-columns:1fr}.column-manager{width:100%}.column-manager>summary{width:100%;text-align:center}.column-manager-menu{left:0;right:auto;width:min(310px,calc(100vw - 40px))}.payment-ledger-summary{grid-template-columns:1fr}.saved-payment-split{grid-template-columns:1fr}}


/* Version 6: responsive operational controls */
.profile{align-items:flex-start}.profile-copy{min-width:0;flex:1}.profile-copy label{display:block;color:#8fa9a3;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.profile-copy select{width:100%;margin:3px 0 2px;padding:5px 6px;border:1px solid rgba(255,255,255,.14);border-radius:7px;color:#fff;background:#143a38;font-size:11px}.profile-copy option{color:#16211f;background:#fff}
.financial-panel{margin-top:18px}.clickable-panel-head{cursor:pointer}.clickable-panel-head:hover{background:#fbfdfc}.financial-table td{min-width:120px}.financial-table td:first-child{min-width:90px;color:var(--teal)}.financial-table td:last-child{min-width:220px}.financial-note{display:block;max-width:320px;white-space:normal;line-height:1.45}.financial-table .freight-state{display:inline-block;margin-left:5px}
.admin-users{margin-bottom:14px}.user-form{display:grid;grid-template-columns:1fr 1.25fr 1.4fr auto;gap:10px;align-items:end}.user-form .field{margin:0}.user-list{display:grid;gap:8px;margin-top:18px}.user-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px}.user-identity{display:flex;flex:1 1 220px;min-width:0;align-items:center;gap:10px}.user-identity small{overflow-wrap:anywhere}.user-identity strong,.user-identity small{display:block}.user-identity small{color:var(--muted)}.user-role{flex:0 1 230px;min-width:150px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.owner-chip{padding:5px 8px;border-radius:99px;color:#176c58;background:#e4f5ef;font-size:11px;font-weight:800}
.key-controls{margin-bottom:18px;padding:18px;border:1px solid #cfe0da;border-radius:var(--radius);background:linear-gradient(145deg,#f5fbf9,#fff);box-shadow:var(--shadow)}.key-control-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.key-control-head h2{margin:0;font-size:18px}.key-control-head>p{margin:0;color:var(--muted);font-size:12px}.key-control-grid{display:grid;grid-template-columns:1fr;gap:14px}.key-control-grid .payment-plan-card{margin:0;padding:15px;box-shadow:none}.payment-plan-head strong{font-size:15px}.saved-payment-split{grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px}.saved-payment-split>div{padding:12px}.saved-payment-split strong{font-size:15px}.saved-payment-split small{line-height:1.45}.document-action-card .payment-options{grid-template-columns:repeat(2,minmax(0,1fr))}.document-action-card .payment-option{min-height:72px;padding:12px}.document-action-card .payment-option strong{font-size:14px}.document-action-card .payment-option span{min-width:0}.document-action-card .payment-option small{font-size:12px}
.record-tabs-shell{position:sticky;top:88px;z-index:12;padding:5px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:rgba(245,247,245,.94);backdrop-filter:blur(12px);box-shadow:0 8px 18px rgba(18,49,46,.06)}.record-tabs-shell .tabs{margin:0;border:0;background:white}.record-tabs-shell .tab{flex:1;min-width:max-content;font-size:13px}
.workflow-disclosure{margin-top:24px}.workflow-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;list-style:none;box-shadow:0 2px 3px rgba(18,49,46,.02)}.workflow-disclosure>summary::-webkit-details-marker{display:none}.workflow-disclosure>summary span:first-child{display:grid;gap:2px}.workflow-disclosure>summary small{color:var(--muted)}.workflow-disclosure>summary span:last-child{color:var(--teal);font-size:12px;font-weight:800}.workflow-disclosure[open]>summary{border-radius:14px 14px 0 0}.workflow-disclosure .workflow-tracker{margin:0;border-top:0;border-radius:0 0 var(--radius) var(--radius)}.workflow-phases{display:flex;overflow-x:auto;gap:12px;padding:2px 2px 12px;scroll-snap-type:x proximity}.workflow-phase{flex:0 0 260px;scroll-snap-align:start}.view-only button:disabled,.view-only input:disabled,.view-only select:disabled,.view-only textarea:disabled{cursor:not-allowed;opacity:.62}

@media(max-width:1100px){.key-control-grid{grid-template-columns:1fr}.user-form{grid-template-columns:1fr 1fr}.user-form .btn{align-self:end}.saved-payment-split{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){main{padding:20px 14px 44px}.page-head{margin-bottom:18px}.key-control-head{display:block}.key-control-head>p{margin-top:5px}.record-tabs-shell{top:76px;margin-left:-2px;margin-right:-2px}.detail-grid{display:flex;flex-direction:column}.detail-main{display:contents}.detail-grid aside{order:3}.section-stack{order:1}.record-tabs-shell{order:0}.case-hero{display:grid;grid-template-columns:auto 1fr}.case-title{min-width:0}.case-title h1{flex-wrap:wrap}.case-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.case-actions .btn{width:100%;max-width:none;text-align:center}.case-actions #edit-overview{grid-column:1/-1}.user-row{grid-template-columns:1fr}.user-row .btn{width:100%}.user-form{grid-template-columns:1fr}.admin-settings-grid{grid-template-columns:1fr}.payment-plan-card{min-width:0}.payment-plan-head{gap:8px}.document-action-card .payment-options{grid-template-columns:1fr}.modal-backdrop{padding:0;align-items:end}.modal{width:100%;max-height:94vh;border-radius:18px 18px 0 0}.modal-head,.modal-body{padding-left:16px;padding-right:16px}.panel-head{align-items:flex-start}.panel-head .btn{flex:0 0 auto}}
@media(max-width:820px){.case-actions{display:flex;align-items:stretch}.case-action-buttons{display:grid;grid-template-columns:1fr 1fr}.case-action-buttons #edit-overview{grid-column:1/-1}.case-actions .target-due{width:100%}.case-actions .target-due .btn{width:auto}}
@media(max-width:640px){body{font-size:14px}.topbar{padding:10px 12px}.global-search input{padding-right:12px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:14px}.summary-grid{grid-template-columns:1fr 1fr}.summary-item{min-height:72px;padding:12px}.key-controls{padding:12px}.saved-payment-split{grid-template-columns:1fr}.payment-split-grid{grid-template-columns:1fr}.document-presence-list{padding:12px}.document-presence{grid-template-columns:32px minmax(0,1fr)}.document-presence small{grid-column:2}.record-card{grid-template-columns:1fr}.record-meta{text-align:left}.payment-ledger .panel-head{display:grid}.payment-ledger .panel-head .btn{width:100%}.toolbar{display:grid;grid-template-columns:1fr}.toolbar .field{min-width:0}.column-manager-menu{position:fixed;left:12px;right:12px;top:86px;width:auto;max-height:70vh}.workflow-phase{flex-basis:86vw}.workflow-tracker{padding:14px}.financial-table,.financial-table thead,.financial-table tbody,.financial-table tr,.financial-table td{display:block}.financial-table thead{display:none}.financial-table tr{padding:14px;border-bottom:1px solid var(--line)}.financial-table td{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;min-width:0!important;padding:6px 0;border:0}.financial-table td:before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.financial-table td:last-child{padding-bottom:0}.financial-note{max-width:none}.page-head{display:block}.date-note{display:block;margin-top:7px}}
@media(max-width:420px){main{padding-left:10px;padding-right:10px}.topbar{gap:8px}.global-search{min-width:0}.topbar .btn-primary{flex:0 0 42px}.metric-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr}.case-actions{grid-template-columns:1fr}.case-actions #edit-overview{grid-column:auto}.payment-ledger-summary{padding:10px}.tabs{padding:3px}.tab{padding:10px 12px}.financial-table td{grid-template-columns:105px minmax(0,1fr)}}
@media(max-width:420px){.case-action-buttons{grid-template-columns:1fr}.case-action-buttons #edit-overview{grid-column:auto}}

/* Compact admin records and top workflow disclosure */
.workflow-disclosure{margin:0 0 18px}
.admin-doc-row{min-height:52px}.admin-value{min-width:0;flex:1;overflow-wrap:anywhere;font-weight:650}.admin-inline-input{min-width:0;flex:1;padding:8px 10px;border:1px solid var(--teal);border-radius:8px;background:#fff;box-shadow:0 0 0 3px var(--teal-soft)}.row-actions{display:flex;gap:4px}.row-icon{width:30px;height:30px;display:inline-grid;place-items:center;padding:0;border:1px solid transparent;border-radius:8px;color:#60706b;background:transparent}.row-icon:hover{color:var(--teal);border-color:#c7ddd7;background:var(--teal-soft)}.row-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.row-icon.danger{color:#a43127}.row-icon.danger:hover{border-color:#efc4bf;background:#fff3f1}.user-row .row-icon{justify-self:end}
.row-icon:disabled{opacity:.35;cursor:not-allowed}.row-icon:disabled:hover{color:#60706b;border-color:transparent;background:transparent}
@media(max-width:820px){.admin-doc-row{padding:9px}.user-row .row-icon{justify-self:start}.row-icon{width:34px;height:34px}}

/* Sky-blue refresh and supplier accounts */
.profile-copy select{background:#143e61}
.financial-panel{margin:0 0 18px}
.clickable-panel-head:hover,tbody tr.clickable:hover,.action-row:hover{background:#f4faff}
.financial-note-cell{min-width:220px}
.financial-note{display:block;width:100%;max-width:320px;padding:7px 9px;border:1px dashed transparent;border-radius:8px;color:var(--ink);background:transparent;text-align:left;white-space:normal;overflow-wrap:anywhere;line-height:1.45}
.financial-note:hover{border-color:#a9d6ef;background:#f1f9fe}
.financial-note:disabled{cursor:default;opacity:1}
.financial-note-editor{width:100%;min-height:62px;padding:8px 9px;border:1px solid var(--teal);border-radius:8px;color:var(--ink);background:#fff;resize:vertical;box-shadow:0 0 0 3px rgba(47,149,210,.12)}
.case-comment{display:block;width:100%;max-width:210px;padding:6px 8px;border:1px dashed transparent;border-radius:7px;color:var(--ink);background:transparent;text-align:left;white-space:normal;overflow-wrap:anywhere}.case-comment:hover{border-color:#a9d6ef;background:#f1f9fe}.case-comment:disabled{cursor:default;opacity:1}.case-comment-editor{width:210px;min-height:58px;padding:7px 8px;border:1px solid var(--teal);border-radius:8px;resize:vertical;box-shadow:0 0 0 3px rgba(47,149,210,.12)}
.freight-quote-actions{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.panel-actions{display:flex;align-items:center;gap:8px}.supplier-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:9px;margin-bottom:14px}.supplier-form .field{margin:0}.supplier-admin-panel{grid-column:span 2}.supplier-admin-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;padding:9px;border:1px solid var(--line);border-radius:10px}.supplier-admin-row>input{min-width:0;padding:9px 10px;border:1px solid #d8e1dd;border-radius:8px;background:#fff}.supplier-row-value{min-width:0;overflow-wrap:anywhere;font-weight:650}.supplier-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}
.admin-opening-balances{margin-bottom:14px}
.opening-balance-list{display:grid;gap:9px}
.opening-balance-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,.7fr) 120px auto;align-items:end;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f9fcff}
.opening-balance-row>strong{align-self:center;overflow-wrap:anywhere}
.opening-balance-row label{display:grid;gap:5px}
.opening-balance-row label span{color:var(--muted);font-size:11px;font-weight:750}
.opening-balance-row input,.opening-balance-row select,.statement-toolbar select{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}
.opening-balance-saved{grid-template-columns:minmax(180px,1fr) minmax(180px,.7fr) auto;align-items:center}
.opening-balance-saved>div span,.opening-balance-saved>div strong{display:block}
.opening-balance-saved>div span{margin-bottom:4px;color:var(--muted);font-size:11px;font-weight:750}
.opening-balance-saved>div strong{font-size:14px}
.opening-balance-actions{display:flex;gap:6px}
.statement-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#fff,#eef8fe);box-shadow:var(--shadow)}
.statement-toolbar>.field{min-width:min(340px,100%);margin:0}
.statement-balances{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.statement-balances>div{min-width:170px;padding:9px 12px;border:1px solid #c8e4f4;border-radius:11px;background:#fff}
.statement-balances span{display:block;color:var(--muted);font-size:11px}
.statement-balances strong{display:block;margin-top:2px;font-size:17px}
.statement-table td{white-space:nowrap}
.statement-table td:nth-child(4){min-width:220px;white-space:normal}
.ledger-type{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:11px;font-weight:800}
.ledger-type.order{color:#1b6f9d;background:#e4f4fd}
.ledger-type.payment{color:#246c50;background:#e9f7f0}
.ledger-type.invoice{color:#8a5b12;background:#fff0d4}.ledger-type.opening-balance{color:#1b6f9d;background:#e4f4fd}
.key-controls,.payment-plan-card{border-color:#bdddf0;background:linear-gradient(145deg,#f2f9fe,#fff)}
.payment-option.selected,.document-presence.present{border-color:#83c4e8;background:#f1f9fe}
.completion-note,.owner-chip{color:#176f9f;background:#e4f4fd}

@media(max-width:1180px){.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:760px){.opening-balance-row{grid-template-columns:1fr}.opening-balance-row .btn{width:100%}.statement-toolbar{display:grid}.statement-balances{justify-content:stretch}.statement-balances>div{flex:1}.financial-note{max-width:none}}
@media(max-width:760px){.opening-balance-saved{grid-template-columns:minmax(0,1fr) auto}.opening-balance-saved>div{grid-column:1}.opening-balance-saved>.btn{grid-column:2;grid-row:1/3;width:auto}.opening-balance-actions{display:grid}}
@media(max-width:760px){.panel-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}.supplier-admin-panel{grid-column:auto}.supplier-form,.supplier-admin-row{grid-template-columns:1fr}.supplier-form .btn{width:100%}.supplier-row-actions{justify-content:flex-start}.case-comment-editor{width:180px}}

.row-case-actions{white-space:nowrap}.row-case-actions .btn{position:relative;z-index:2}.report-page-head{align-items:center}.report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px;margin:0 0 14px}.report-tab{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:9px 14px;background:#fff;color:var(--muted);font-weight:750}.report-tab:hover,.report-tab.active{border-color:#8cc8eb;background:#eaf6fd;color:#125f91}.report-control-panel{padding:16px;margin-bottom:18px}.report-filters{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}.report-filters .field,.report-case-picker{margin:0}.report-case-picker{margin-top:12px}.report-output{display:grid;gap:18px}.report-title{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid #cfe4f2;border-radius:var(--radius);background:linear-gradient(135deg,#f5fbff,#eaf6fd)}.report-title h2{margin:2px 0 5px;font-size:28px}.report-title p{margin:0;color:var(--muted)}.report-title>span{color:var(--muted);font-size:12px}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-kpis article{display:grid;gap:7px;min-height:94px;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.report-kpis span{color:var(--muted);font-size:12px;font-weight:700}.report-kpis strong{font-size:25px}.report-kpis .report-status{font-size:16px}.report-section{overflow:hidden}.report-section .panel-head{padding:17px 20px}.report-section .panel-head h3{margin:0}.report-table{min-width:1000px}.report-table th{white-space:nowrap}.report-currency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:18px}.report-currency-grid article{display:grid;gap:9px;padding:16px;border:1px solid #cfe4f2;border-radius:12px;background:#f8fcff}.report-currency-grid article>strong{font-size:18px;color:#1578b5}.report-currency-grid span{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.report-currency-grid b{color:var(--ink)}.report-footnote{margin:0;padding:12px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.report-two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-details{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:8px 20px 20px;margin:0}.report-details div{padding:12px 0;border-bottom:1px solid var(--line-soft)}.report-details dt{color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase}.report-details dd{margin:4px 0 0;font-weight:700}.report-document-list{display:grid;padding:5px 20px}.report-document-list div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft)}.report-document-list strong{color:#1578b5;font-size:12px}.report-notes{padding:16px 20px}.report-notes p{white-space:pre-wrap;color:var(--muted)}

@media(max-width:900px){.report-filters{grid-template-columns:1fr 1fr}.report-kpis{grid-template-columns:1fr 1fr}.report-two-column{grid-template-columns:1fr}}
@media(max-width:560px){.report-page-head{display:grid}.report-actions{margin-top:12px}.report-actions .btn{flex:1}.report-filters,.report-kpis{grid-template-columns:1fr}.report-title{align-items:start;display:grid;padding:18px}.report-title h2{font-size:23px}.report-details{grid-template-columns:1fr}}

@media print{
  @page{size:landscape;margin:0}
  body{background:#fff;color:#000;font-size:10pt}.sidebar,.topbar,.report-page-head,.report-tabs,.report-control-panel,.toast-region,.modal-backdrop{display:none!important}.app-shell,.workspace{display:block!important}.workspace{margin:0!important;width:100%!important}main{padding:0!important;max-width:none!important}.report-output{display:block}.report-output>*{margin-bottom:12px;break-inside:avoid}.report-title{padding:10px 0;border:0;border-bottom:2px solid #4d95c1;border-radius:0;background:#fff}.report-title h2{font-size:20pt}.report-kpis{grid-template-columns:repeat(4,1fr)}.report-kpis article{min-height:0;padding:9px;box-shadow:none}.report-section{box-shadow:none;border-color:#aaa}.case-table-wrap{overflow:visible}.report-table{min-width:0;width:100%;font-size:8pt}.report-table th,.report-table td{padding:5px}.report-two-column{grid-template-columns:1fr 1fr}.btn{display:none!important}
}

/* Private Beta authentication */
.profile-signout{margin-left:auto;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:750;cursor:pointer}.profile-signout:hover{color:var(--ink)}
.profile-password{margin:8px 0 0;padding:0;border:0;background:transparent;color:#9dd6f4;font-size:11px;font-weight:700;text-align:left;cursor:pointer}.profile-password:hover{text-decoration:underline}.auth-inline-error{padding:10px 12px;border:1px solid #efc4bf;border-radius:8px;background:#fff3f1;color:#8f2f26!important;font-size:13px}
.auth-form{display:grid;gap:14px;margin:20px auto 12px;text-align:left}.auth-form label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:750}.auth-form input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit}.auth-form input:focus{outline:3px solid var(--teal-soft);border-color:var(--teal)}.auth-form .btn{width:100%;justify-content:center}.auth-secondary{margin-top:8px}.auth-enrollment{margin-top:4vh}.auth-qr{display:block;width:min(230px,75vw);height:auto;margin:18px auto;border:10px solid #fff;border-radius:12px;box-shadow:0 0 0 1px solid var(--line)}.auth-enrollment details{margin:10px auto;color:var(--muted)}.auth-secret{display:block;margin:10px auto;padding:10px;border-radius:8px;background:var(--line-soft);color:var(--ink);overflow-wrap:anywhere;user-select:all}.user-row{gap:10px}.user-row .reset-totp{white-space:nowrap}@media(max-width:820px){.user-row{flex-direction:column;align-items:stretch}.user-identity{flex-basis:auto}.user-role{flex-basis:auto}.user-row .row-icon{align-self:flex-start}}

/* Table preferences and compact workflow document controls */
.financial-debt-summary{margin-top:18px}.panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.workflow-phase .document-action-card{margin:8px 0;padding:10px;overflow:hidden}.workflow-phase .document-action-card .payment-plan-head{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.workflow-phase .document-action-card .payment-plan-head strong,.workflow-phase .document-action-card .payment-plan-head small{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;line-height:1.35}.workflow-phase .document-action-card .payment-options{grid-template-columns:minmax(0,1fr)}.workflow-phase .document-action-card .payment-option{min-width:0;align-items:center}.workflow-phase .document-action-card .payment-option span{min-width:0}.workflow-phase .document-action-card .payment-option strong,.workflow-phase .document-action-card .payment-option small{overflow-wrap:anywhere}

.archive-actions{display:flex;align-items:center;gap:6px}.sort-button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;color:inherit;background:transparent;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap}.sort-button span{color:#90a0aa;font-size:12px}.sort-button.active{color:#1479b6}.mini-action{width:28px;height:28px;display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid #bfd9e8;border-radius:8px;color:#1479b6;background:#f5fbff;font-size:14px;font-weight:800;text-decoration:none;line-height:1}.mini-action:hover{border-color:#6db7df;background:#e9f6fd}.mini-action.danger{border-color:#efc9c4;color:#a43127;background:#fff7f5}.document-presence{cursor:default}.document-check-label{min-width:0;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;cursor:pointer}.document-check-label>span:last-child{min-width:0}.document-check-label strong,.document-check-label small{display:block}.document-link-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.linked-records{margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafdff}.linked-records-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.linked-records-head strong,.linked-records-head small{display:block}.linked-records-head small,.empty-inline{margin:3px 0 0;color:var(--muted);font-size:12px}.linked-record-list{display:grid;gap:7px;margin-top:12px}.linked-record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:9px;background:#fff}.linked-record>a{min-width:0;overflow-wrap:anywhere;color:#1479b6;font-weight:750}.receipt-table{min-width:850px}

@media(max-width:640px){
  .case-table-wrap{-webkit-overflow-scrolling:touch}.case-table-wrap table,.financial-table,.statement-table,.configurable-table{display:table!important;min-width:860px}.financial-table thead,.financial-table tbody{display:table-header-group}.financial-table tbody{display:table-row-group}.financial-table tr{display:table-row;padding:0;border:0}.financial-table th,.financial-table td{display:table-cell!important;min-width:120px!important;padding:11px 14px;border-bottom:1px solid var(--line-soft)}.financial-table td:first-child{min-width:90px!important}.financial-table td:last-child{min-width:200px!important}.financial-table td:before{content:none!important}.financial-note{max-width:220px}.document-presence{grid-template-columns:minmax(0,1fr) auto}.document-presence small{grid-column:auto}.document-link-actions{grid-column:auto}
}

/* Beta hardening: contained responsive layout, secure session states and reliable print view */
@media (min-width:821px) and (max-width:1280px){.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-grid aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-grid aside .panel{margin-top:0}}
.record-tabs-shell{overflow:hidden}.record-tabs-shell .tabs{max-width:100%;overflow-x:auto}.section-stack>.panel{overflow:hidden}.detail-grid aside .panel-body{min-width:0}.attention p,.activity-item,.activity-item strong{overflow-wrap:anywhere}.linked-records,.linked-record,.document-presence,.payment-plan-card,.key-controls{min-width:0;max-width:100%}
.auth-locked .sidebar nav,.auth-locked .profile,.auth-locked .topbar{visibility:hidden;pointer-events:none}.auth-locked .brand{padding-bottom:0}.auth-gate{width:min(520px,100%);margin:10vh auto 0;padding:42px 30px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow);text-align:center}.auth-gate h1{font-size:25px}.auth-gate p{margin:0 auto 20px;max-width:420px;color:var(--muted)}.auth-spinner{width:38px;height:38px;margin:0 auto 18px;border:4px solid var(--teal-soft);border-top-color:var(--teal);border-radius:50%;animation:auth-spin .8s linear infinite}.auth-lock{width:38px;height:38px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;color:#9b4c44;background:var(--red-soft);font-weight:900}@keyframes auth-spin{to{transform:rotate(360deg)}}
.sync-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:18px;padding:11px 13px;border:1px solid #e6c86f;border-radius:12px;background:#fff7dc;color:#674d11}.sync-alert span{font-size:12px}.sync-alert .btn{background:#fff}
.save-status{max-width:220px;padding:7px 10px;border-radius:8px;background:#e7f4fb;color:#176f9f;font-size:12px;font-weight:700;line-height:1.25}.save-status[data-status="retry"],.save-status[data-status="conflict"],.save-status[data-status="error"]{background:#fff1df;color:#9d4c19}.save-status[data-status="saved"]{background:#e5f5ed;color:#226d48}
@media(max-width:820px){.topbar{backdrop-filter:none}.save-status{position:fixed;left:12px;bottom:12px;z-index:70;max-width:min(300px,calc(100vw - 24px));box-shadow:var(--shadow);pointer-events:none}}
.print-heading{margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid var(--teal)}.print-heading p{margin:0;color:var(--teal);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.print-heading h1{margin:4px 0}.print-heading small{color:var(--muted)}.print-surface{overflow:visible;background:#fff}.print-surface main{max-width:none;padding:24px}.print-surface .case-table-wrap{overflow:visible}.print-surface table{min-width:0!important}.print-surface .panel{box-shadow:none}.print-surface a{color:inherit;text-decoration:none}
@media(max-width:900px){.page-head{align-items:flex-start;flex-wrap:wrap}.page-head>div{min-width:0}.report-actions{max-width:100%}.panel-head{flex-wrap:wrap}.linked-records-head{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:560px){.sync-alert{grid-template-columns:1fr}.sync-alert .btn{width:100%}.auth-gate{margin-top:5vh;padding:30px 20px}.panel-head>.btn,.panel-head>.panel-actions{max-width:100%}}
@media print{
  body{overflow:visible!important;background:#fff!important}.sync-alert{display:none!important}.case-table-wrap{overflow:visible!important}.report-table,.financial-table,.statement-table,.receipt-table{display:table!important;min-width:0!important;width:100%!important;font-size:8pt}.report-table thead,.financial-table thead,.statement-table thead,.receipt-table thead{display:table-header-group!important}.report-table tbody,.financial-table tbody,.statement-table tbody,.receipt-table tbody{display:table-row-group!important}.report-table tr,.financial-table tr,.statement-table tr,.receipt-table tr{display:table-row!important}.report-table th,.report-table td,.financial-table th,.financial-table td,.statement-table th,.statement-table td,.receipt-table th,.receipt-table td{display:table-cell!important;min-width:0!important;padding:5px!important}.print-heading{display:block!important}.print-surface main{padding:12mm!important}
}

/* Company identity and compact order controls */
.company-tag{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:3px 0;padding:4px 8px;border:1px solid #b7d8e9;border-radius:99px;color:#11658e;background:#eaf6fc;font-size:10px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}
.case-company{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:9px 0 3px}.case-company .company-tag{margin:0;font-size:12px}.case-company .btn{padding:7px 11px}.pr-cell .company-tag,.financial-table td .company-tag,.report-table td .company-tag,.statement-table td .company-tag{display:flex}.form-note{margin:0 0 15px;color:var(--muted);font-size:13px}
.detail-grid aside .key-controls{margin:0 0 16px;padding:14px;box-shadow:none}.detail-grid aside .key-control-head{margin-bottom:10px}.detail-grid aside .key-control-grid .payment-plan-card{padding:10px}.detail-grid aside .saved-payment-split{grid-template-columns:1fr;gap:7px}.detail-grid aside .saved-payment-split>div{padding:10px}.detail-grid aside .saved-payment-split strong{font-size:14px}.detail-grid aside .saved-payment-split small{font-size:12px}.detail-grid aside .full-amount{border-color:#9bcce4;background:#eaf6fc}.detail-grid aside .full-amount span{font-size:12px;font-weight:800;color:#11658e}.detail-grid aside .full-amount strong{font-size:18px;color:var(--navy)}
@media(min-width:1281px){.workflow-phases{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;gap:8px;scroll-snap-type:none}.workflow-phase{min-width:0;flex:auto;padding:8px}.workflow-phase-head{font-size:11px}.workflow-step{grid-template-columns:19px minmax(0,1fr);gap:5px;padding:5px 4px;font-size:11px}.workflow-marker{width:19px;height:19px}.workflow-phase .document-action-card .payment-option{padding:7px}}

/* Align operational table columns by the kind of information they contain. */
.configurable-table td,.financial-table td{vertical-align:middle;line-height:1.4}
.configurable-table :is(th,td):is(.col-department,.col-value,.col-owner,.col-status,.col-containers,.col-eta,.col-remaining,.col-freight,.col-updated,.col-actions),.financial-table :is(th,td):is(.col-containers,.col-eta,.col-remaining,.col-shipping){text-align:center}
.configurable-table .col-status .status-cell{justify-content:center}
.configurable-table .col-freight .freight-state{margin-inline:auto}
.financial-table .col-shipping .freight-state.paid,.financial-table .col-remaining .freight-state{margin-left:0}
.financial-table td:last-child:not(.col-notes){min-width:120px!important}
.financial-table td.col-notes{min-width:220px}
.container-count{display:inline-grid;min-width:28px;height:28px;place-items:center;padding:0 8px;border:1px solid #c8e3f2;border-radius:9px;color:#126f9f;background:#edf8fe;font-weight:800;font-variant-numeric:tabular-nums}
.workflow-step.unpaid{border-color:#f0d2ce;color:#a43127;background:#fff8f7}
.workflow-step.unpaid .workflow-marker{border:1px solid #e6aaa3;color:#a43127;background:#fde9e6;font-size:17px;line-height:1}
.financial-table :is(th,td).col-serial{width:56px;min-width:56px!important;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--ink)}
.configurable-table :is(th,td).col-shipmentSerial{width:105px;min-width:105px;text-align:center}
.shipment-serial{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink)}
.event-timestamp{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;font-variant-numeric:tabular-nums}.event-timestamp>span{white-space:nowrap}.timestamp-clock{font-size:11px;line-height:1.3;color:var(--muted);white-space:nowrap}.event-timestamp-stacked{display:inline-grid;gap:3px;justify-items:center}.case-created{display:block;margin-top:5px;font-size:11px;line-height:1.5;color:var(--muted)}.case-created[hidden]{display:none}.activity-item .timestamp-clock{color:inherit}.activity-item>small{line-height:1.6}
.financial-table td{font-weight:700;color:var(--ink)}.financial-table th{font-weight:800;color:var(--ink)}.financial-table .financial-note,.financial-table .financial-note-editor{font-weight:700;color:var(--ink)}
.financial-table :is(th,td).col-totalContainers{text-align:center}
.order-cancellation{margin:18px 0}.order-cancellation.is-cancelled{border-color:#e7b9b5}.order-cancellation .panel-body p,.cancellation-history p{white-space:pre-wrap;overflow-wrap:anywhere}.cancellation-history{padding:12px 20px;border-top:1px solid var(--line)}.cancellation-history summary{cursor:pointer;font-weight:700}.cancellation-history article{padding:12px 0;border-bottom:1px solid var(--line)}.cancellation-history article small{display:block;color:var(--muted);margin-top:3px}.cancellation-reason{display:block;max-width:300px;white-space:normal;overflow-wrap:anywhere;color:var(--red);font-size:12px;margin-top:4px}.order-cancellation .panel-head{gap:12px;flex-wrap:wrap}
.financial-debt-summary table :is(th,td){font-weight:700}.financial-debt-summary table th{font-weight:800}
.opening-balance-reference{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;margin-right:4px;border:1px solid #e6d6a9;border-radius:7px;background:#fff8e6;color:#876213;font-size:12px;font-weight:700;white-space:nowrap;vertical-align:middle}.opening-balance-reference strong{font-weight:800}
.todo-table .todo-task-title{display:flex;gap:6px;align-items:baseline;min-width:0;max-width:100%;text-decoration:none}.todo-task-name{flex:0 1 auto;overflow-wrap:anywhere}.todo-description-preview{flex:1 1 80px;min-width:0;font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.todo-completed .todo-task-name{text-decoration:line-through}.todo-task-title:hover .todo-task-name{text-decoration:underline}.todo-table td:first-child{max-width:340px}@media(max-width:640px){.todo-table .todo-task-title{flex-wrap:wrap;gap:2px 6px}.todo-description-preview{flex-basis:100%;max-width:240px}}
@media(max-width:820px){
  .workspace{padding-top:76px}.topbar{position:fixed;top:0;left:0;right:0;width:100%;height:76px;background:#fff}.topbar .global-search{min-width:0}.topbar .global-search input{min-width:0}.task-modal.modal{display:flex;flex-direction:column;height:calc(100vh - 16px);height:calc(100dvh - 16px - env(safe-area-inset-top,0px));max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px));overflow:hidden;border-radius:18px 18px 0 0}.task-modal .modal-head{flex:0 0 auto;position:relative;padding:16px;gap:12px}.task-modal .modal-head>div{min-width:0}.task-modal .modal-head h2{font-size:19px}.task-modal .modal-head p{font-size:12px;line-height:1.45}.task-modal .modal-close{flex:0 0 36px;width:36px;height:36px}.task-modal .modal-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 16px max(16px,env(safe-area-inset-bottom,0px))}.task-modal .field{min-width:0;margin-bottom:12px}.task-modal .two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-modal .two-col>.field:last-child{grid-column:1/-1}.task-modal :is(input:not([type=checkbox]),select,textarea){display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;font-size:16px}.task-modal :is(input:not([type=checkbox]),select){min-height:44px}.task-modal input[type=date]{appearance:none;-webkit-appearance:none;text-align:left;padding:10px 12px}.task-modal input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1em}.task-modal textarea{min-height:80px}.task-modal .todo-member-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:none;overflow:visible}.task-modal .todo-member-options label{min-width:0;min-height:44px;padding:9px;border:1px solid var(--line);border-radius:10px;font-size:13px;overflow-wrap:anywhere}.task-modal .todo-member-options input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:0}.task-modal .form-actions{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;background:white;padding:12px 0 6px}.task-modal .form-actions .btn{min-height:46px;padding:10px;font-size:15px;width:100%;margin:0}
}
@media print{.workspace{padding-top:0}.topbar{display:none!important}}
.notification-center{position:relative;margin-left:auto;flex:0 0 auto}.notification-center[hidden]{display:none!important}.notification-bell{position:relative;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);cursor:pointer}.notification-bell svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.notification-badge{position:absolute;right:-6px;top:-6px;background:#cb4141;color:#fff;font-size:11px;line-height:18px;min-width:18px;padding:0 4px;border-radius:12px;font-weight:800}.notification-menu{position:absolute;right:0;top:54px;width:380px;max-width:calc(100vw - 24px);background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 35px #102f4829;z-index:120}.notification-menu-head{display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid var(--line)}.notification-menu-head strong{margin-right:auto}.notification-menu-head .text-btn{font-size:12px}.notification-menu-list{max-height:420px;overflow:auto}.notification-entry{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:13px 16px;color:var(--ink);font:inherit;cursor:pointer;overflow-wrap:anywhere}.notification-entry.unread{background:#eef8ff;border-left:3px solid #2999d3}.notification-entry:hover{background:#e5f3fc}.notification-entry strong,.notification-entry span,.notification-entry small{display:block}.notification-entry span{margin:4px 0}.notification-entry small{color:var(--muted);font-size:11px}.notification-toast{text-align:left;font:inherit;cursor:pointer;border:1px solid var(--line);max-width:min(420px,calc(100vw - 28px))}.notification-bell:focus-visible,.notification-entry:focus-visible{outline:3px solid #b5e2ff;outline-offset:2px}@media(max-width:640px){.notification-menu{position:fixed;top:76px;left:12px;right:12px;width:auto}.notification-center{margin-left:0}.notification-menu-list{max-height:60vh}}@media print{.notification-center,.notification-toast{display:none!important}}
.todo-table tr.todo-priority-high>td{background:#fff2f1}.todo-table tr.todo-priority-normal>td{background:#f0f8ff}.todo-table tr.todo-priority-low>td{background:#f0faf4}.todo-table tr.todo-priority-high>td:first-child{box-shadow:inset 3px 0 #d35d55}.todo-table tr.todo-priority-normal>td:first-child{box-shadow:inset 3px 0 #3297cd}.todo-table tr.todo-priority-low>td:first-child{box-shadow:inset 3px 0 #45956a}.todo-priority-high .todo-task-priority{color:#a5352e}.todo-priority-normal .todo-task-priority{color:#236d9a}.todo-priority-low .todo-task-priority{color:#2e754c}.todo-table tr.todo-completed>td{background:#f6f8f9;box-shadow:none}.todo-progress-toggle{padding:7px 10px;border:1px solid #c6d6e0;border-radius:18px;background:#fff;color:#526b7a;font:inherit;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}.todo-progress-toggle.in-progress{background:#fff3d5;border-color:#edcf89;color:#95620c}.todo-progress-toggle:hover:not(:disabled){border-color:#2992c6}.todo-progress-toggle:focus-visible{outline:3px solid #b5e2ff;outline-offset:2px}.todo-progress-toggle:disabled{cursor:default;opacity:.65}
.todo-title-cell{display:flex;align-items:center;gap:10px}.todo-title-cell>div{min-width:0;flex:1}.todo-complete-circle{width:24px;height:24px;flex:0 0 24px;border:2px solid #9ab5c7;border-radius:50%;background:#fff;color:#fff;padding:0;display:inline-grid;place-items:center;cursor:pointer;font-size:15px;font-weight:800}.todo-complete-circle.checked{background:#228f6b;border-color:#228f6b}.todo-complete-circle:focus-visible{outline:3px solid #b5e2ff;outline-offset:2px}.todo-complete-circle:disabled{cursor:default}.todo-completed .todo-task-title{text-decoration:line-through;color:var(--muted)}.todo-status-cell select{padding:7px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:12px;min-width:95px}.todo-status-cell .btn{display:block;margin-top:6px}
.todo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.todo-grid .todo-panel{min-width:0}.todo-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}.todo-table-toolbar select{border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:white;color:var(--ink)}.todo-table td{vertical-align:middle}.todo-table td:first-child{min-width:170px;width:45%;overflow-wrap:anywhere}.todo-task-title{display:block;text-align:start;font:inherit;font-weight:700;color:var(--ink);background:none;border:0;padding:0;cursor:pointer;width:100%;overflow-wrap:anywhere}.todo-task-title:hover{color:var(--teal);text-decoration:underline}.todo-task-priority{display:block;color:var(--muted);font-size:12px;margin-top:4px}.todo-task-date{white-space:nowrap}.todo-task-overdue{display:block;color:var(--red);font-weight:700;margin-top:4px}.todo-table .status-pill{white-space:nowrap}.todo-workspace>.todo-notifications{margin-top:24px}
@media(max-width:1000px){.todo-grid{grid-template-columns:minmax(0,1fr);gap:0}}@media(max-width:640px){.todo-table{min-width:460px}.todo-table-toolbar{padding:12px}.todo-grid .panel-head{flex-wrap:wrap}.todo-grid .panel-head h2{font-size:18px}}
.dashboard-metric{padding:0;border:0;background:none;text-align:left;cursor:pointer;color:inherit;font:inherit;border-radius:18px}.dashboard-metric .metric-card{height:100%}.dashboard-metric:hover .metric-card,.dashboard-metric:focus-visible .metric-card{box-shadow:0 0 0 2px var(--teal)}
.todo-panel,.dashboard-followup{margin-top:24px}.todo-toolbar{padding:16px 22px;display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line)}.todo-tabs{display:flex;gap:8px}.todo-toolbar select{padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.todo-list{padding:0 22px}.todo-item,.dashboard-alert{display:flex;align-items:center;gap:14px;width:100%;padding:16px 0;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;color:var(--ink);font:inherit}.dashboard-alert{padding:16px 22px;justify-content:space-between}.todo-item>div,.dashboard-alert>div{flex:1;min-width:0}.todo-item strong,.dashboard-alert strong{display:block;overflow-wrap:anywhere}.todo-item small,.dashboard-alert small{display:block;color:var(--muted);margin-top:5px}.todo-item:hover,.dashboard-alert:hover{background:#f4faff}.todo-status{font-size:24px;color:var(--teal)}.todo-status.done{color:#16724c}.todo-edit-form fieldset{border:0;padding:0;margin:0;min-width:0}.todo-edit-form textarea,.todo-comments textarea{width:100%;min-height:80px}.todo-member-options{display:flex;flex-wrap:wrap;gap:10px 18px;padding:8px 0}.todo-member-options label{display:flex;align-items:center;gap:6px;font-weight:500}.todo-member-options input{width:auto}.todo-comments{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.todo-comments article{border:1px solid var(--line);border-radius:10px;padding:12px;margin:12px 0;overflow-wrap:anywhere}.todo-comments article small{display:block;color:var(--muted);margin-top:4px}.todo-comments form{margin:16px 0}.todo-notifications{padding:14px 22px;background:#f0f8ff;border-bottom:1px solid var(--line)}.todo-notifications>div{display:flex;justify-content:space-between;gap:10px}.todo-notice{display:block;text-align:left;border:0;background:none;color:var(--ink);font:inherit;padding:7px 0;width:100%;cursor:pointer}.todo-notice:hover{text-decoration:underline}
@media(max-width:640px){.todo-toolbar{align-items:stretch;flex-direction:column;padding:12px}.todo-tabs .btn{flex:1}.todo-list{padding:0 12px}.todo-item,.dashboard-alert{gap:8px}.dashboard-alert{padding:14px 12px}.dashboard-alert .status-pill{display:none}.todo-panel .panel-head{gap:10px}.todo-member-options{max-height:180px;overflow:auto}.todo-item strong{font-size:14px}}
.payment-breakdown-trigger { padding: 2px 0; border: 0; border-bottom: 1px dashed #93b8d0; color: inherit; background: transparent; font: inherit; font-variant-numeric: tabular-nums; }
.payment-breakdown-trigger:hover,.payment-breakdown-trigger[aria-expanded="true"] { color: var(--blue); border-bottom-color: var(--teal); }
.payment-breakdown-tooltip { position: fixed; z-index: 100; width: max-content; min-width: 230px; max-width: calc(100vw - 24px); padding: 14px 16px; border: 1px solid #c8dfef; border-radius: 12px; color: var(--ink); background: #fff; box-shadow: 0 10px 30px rgba(16,42,67,.18); font-size: 13px; line-height: 1.5; }
.payment-breakdown-heading { margin: 0 0 10px; color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.payment-breakdown-row { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; }
.payment-breakdown-row + .payment-breakdown-row { margin-top: 7px; }
.payment-breakdown-row span { color: var(--muted); }
.payment-breakdown-row strong { font-weight: 800; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.payment-breakdown-note { max-width: 240px; margin: 8px 0 0; color: var(--muted); font-size: 12px; }
@media print {
  .payment-breakdown-tooltip { display: none !important; }
  .payment-breakdown-trigger { padding: 0; border: 0; color: var(--ink) !important; }
}
.undated-order-controls{display:inline-flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap}.undated-order-controls>span{margin-right:3px;color:var(--muted)}.undated-order-controls .mini-action{width:24px;height:24px;padding:0;font-size:15px;line-height:1}.undated-order-controls .mini-action:disabled{opacity:.3;cursor:default}@media print{.undated-order-controls button{display:none!important}}
.case-comment.empty-comment{min-width:72px;min-height:36px;border-color:#d4e4ef;background:#f8fcff}.case-comment.empty-comment:hover,.case-comment:focus-visible{border-color:#91c9e9;background:#edf7fd}
.pr-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.pr-field-heading>label{margin:0}.pr-field-heading .pr-not-created-toggle{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;white-space:nowrap}.pr-not-created-toggle input{width:13px!important;min-height:0!important;margin:0;accent-color:#c34439}.pr-not-created{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid #edc4bf;border-radius:6px;color:#ad3028;background:#fff0ed;font-size:12px;font-weight:800;line-height:1.3}.pr-reference-field input:disabled{background:#f2f5f6;color:var(--muted)}

.company-tag + .company-tag{margin-left:4px}.pr-cell .company-tag + .company-tag,.financial-table td .company-tag + .company-tag,.report-table td .company-tag + .company-tag,.statement-table td .company-tag + .company-tag{margin-left:0}

.shipment-serial-entry{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.shipment-serial-link{color:var(--blue);font-weight:650;font-variant-numeric:tabular-nums;text-decoration:underline;text-decoration-color:#93b8d0;text-underline-offset:3px}
.shipment-serial-link:hover{color:var(--navy);text-decoration-color:currentColor}
.shipment-serial-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}
.shipment-serial-info{display:none;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid #c8dfef;border-radius:50%;color:var(--blue);background:#f2f8fc;vertical-align:middle}
.shipment-summary-order{max-width:280px;margin:0 0 12px;font-weight:700;overflow-wrap:anywhere}
@media(hover:none),(pointer:coarse){.shipment-serial-info{display:inline-flex}}
@media print{.shipment-serial-info{display:none!important}.shipment-serial-link{color:inherit;text-decoration:none}}
