/*
 * UMMIGO vouchers (Accounts and Inventory design): voucher lists, voucher entry, every data entry
 * voucher (stock, purchase, sales, production, closing) and recipes. Colours follow the panel's
 * light and dark tokens (um-ui.css). Pages: accounts-page.blade.php (voucher entry), the
 * create-*.blade.php voucher screens (po-* classes), recipe-screen.blade.php and the voucher lists.
 */
:root {
    --uv-bg: var(--um-bg, #F5F5F2); --uv-card: var(--um-card, #fff); --uv-line: var(--um-line, #EFEFEA); --uv-bd2: var(--um-bd2, #E2E2DB);
    --uv-bd3: var(--um-bd3, #D6D6CF); --uv-fg: var(--um-fg, #111); --uv-fg2: var(--um-fg2, #3A3A36); --uv-mut: var(--um-mut, #6B6B66);
    --uv-mut2: var(--um-mut2, #9A9A94); --uv-red: #C2372B; --uv-amb: #A86A00; --uv-lime: #4D7C0F; --uv-acid: #A4E635; --uv-acid2: #B5F04A;
    --uv-sel: #EEF3FF; --uv-hi: #2F5FE0; --uv-colBd: #DCDCD4; --uv-sub: #FAFAF7; --uv-pop: 0 16px 40px rgba(0, 0, 0, .14);
}
.dark {
    --uv-red: #FF8A7E; --uv-amb: #F5B94A; --uv-lime: #A4E635; --uv-sel: rgba(107, 149, 255, .10); --uv-hi: #3B6CF6;
    --uv-colBd: #2A2A2F; --uv-sub: #0F0F11; --uv-pop: 0 16px 40px rgba(0, 0, 0, .5);
}

/* ── Page ─────────────────────────────────────────────────────────────── */
.uv { color: var(--uv-fg); font-size: 13.5px; }
.uv *, .uv *::before, .uv *::after { box-sizing: border-box; }
.uv input, .uv select, .uv button, .uv textarea { font-family: inherit; color: inherit; }
.uv input::placeholder, .uv textarea::placeholder { color: var(--uv-mut2); }
.uv select option { background: var(--uv-card); color: var(--uv-fg); }
.uv [x-cloak] { display: none !important; }
.uv-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.uv-title { margin: 0; font-size: 24px; font-weight: 600; letter-spacing: -.01em; line-height: 1.2; color: var(--uv-fg); }
.uv-sub { font-size: 13px; color: var(--uv-mut); margin-top: 3px; }
.uv-crumb { display: inline-flex; align-items: center; gap: 4px; margin-bottom: 4px; padding: 0; border: 0; background: none; font-size: 13px; color: var(--uv-mut); cursor: pointer; text-decoration: none; }
.uv-crumb:hover { color: var(--uv-fg); }
.uv-num { font-variant-numeric: tabular-nums; }

/* ── Buttons ──────────────────────────────────────────────────────────── */
.uv-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 40px; padding: 0 18px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: var(--uv-card); color: var(--uv-fg); font-size: 13.5px; font-weight: 500; white-space: nowrap; cursor: pointer; text-decoration: none; transition: background .15s, border-color .15s; }
.uv-btn:hover { background: var(--uv-line); }
.uv-btn.sm { height: 30px; padding: 0 14px; font-size: 12.5px; border-color: var(--uv-bd3); }
.uv-btn.ghost { border-color: transparent; background: transparent; color: var(--uv-mut); }
.uv-btn.ghost:hover { color: var(--uv-fg); background: transparent; }
.uv-btn-lime { border: none; background: var(--uv-acid); color: #0A0A0B; font-weight: 600; padding: 0 18px 0 14px; }
.uv-btn-lime:hover { background: var(--uv-acid2); }
.uv-btn-lime:disabled, .uv-btn-lime.off { background: var(--uv-line); color: var(--uv-mut2); cursor: default; }
.uv-btn-lime.wide { padding: 0 20px; }
.uv-icon { width: 30px; height: 30px; border-radius: 50%; border: none; background: transparent; display: inline-flex; align-items: center; justify-content: center; color: var(--uv-mut); cursor: pointer; }
.uv-icon:hover { background: var(--uv-line); color: var(--uv-fg); }

/* ── Filters ──────────────────────────────────────────────────────────── */
.uv-filters { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 16px; }
.uv-search { display: flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: var(--uv-card); flex: 1 1 240px; min-width: 200px; max-width: 340px; }
.uv-search svg { color: var(--uv-mut); flex-shrink: 0; }
.uv-search input { flex: 1; min-width: 0; border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important; font-size: 13px; padding: 0; height: 36px; }
.uv-pill-sel { position: relative; display: flex; align-items: center; height: 38px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: var(--uv-card); }
.uv-pill-sel > span { padding-left: 14px; font-size: 12.5px; color: var(--uv-mut); white-space: nowrap; }
.uv-pill-sel select { appearance: none; -webkit-appearance: none; height: 36px; padding: 0 32px 0 6px; border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important; font-size: 13px; font-weight: 500; cursor: pointer; }
.uv-pill-sel svg { position: absolute; right: 12px; pointer-events: none; color: var(--uv-mut); }

/* Date range: From / To typed (DD/MM/YYYY) or picked on a two-month calendar */
.uv-range { position: relative; }
.uv-range-box { display: flex; align-items: center; height: 38px; padding: 0 6px 0 4px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: var(--uv-card); }
.uv-range-box.on { border-color: var(--uv-lime); }
.uv-range-box > button { width: 30px; height: 30px; border-radius: 50%; border: none; background: transparent; display: flex; align-items: center; justify-content: center; color: var(--uv-lime); cursor: pointer; }
.uv-range-box > button:hover { background: var(--uv-line); }
.uv-range-box > span { padding: 0 4px 0 6px; font-size: 12.5px; color: var(--uv-mut); }
.uv-range-box input { width: 100px; height: 30px; padding: 0 6px; border: none !important; border-radius: 8px; outline: none !important; box-shadow: none !important; background: transparent; font-size: 13px; font-weight: 500; font-variant-numeric: tabular-nums; }
.uv-range-box input:focus { background: var(--uv-line); }
.uv-cal { position: absolute; top: 46px; left: 0; z-index: 60; background: var(--uv-card); border: 1px solid var(--uv-bd2); border-radius: 24px; box-shadow: 0 20px 50px rgba(0, 0, 0, .22); padding: 18px; display: flex; gap: 22px; flex-wrap: wrap; width: max-content; max-width: calc(100vw - 48px); }
.uv-cal-mo { display: flex; flex-direction: column; gap: 10px; width: 266px; }
.uv-cal-hd { display: flex; align-items: center; justify-content: space-between; height: 32px; font-size: 14px; font-weight: 600; }
.uv-cal-hd button { width: 32px; height: 32px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.uv-cal-hd i { width: 32px; }
.uv-cal-grid { display: grid; grid-template-columns: repeat(7, 38px); row-gap: 2px; }
.uv-cal-grid > span { height: 28px; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 500; color: var(--uv-mut2); }
.uv-cal-grid > div { height: 38px; display: flex; align-items: center; justify-content: center; }
.uv-cal-grid > div.band { background: rgba(164, 230, 53, .16); }
.uv-cal-grid > div.band-s { background: linear-gradient(90deg, transparent 50%, rgba(164, 230, 53, .16) 50%); }
.uv-cal-grid > div.band-e { background: linear-gradient(90deg, rgba(164, 230, 53, .16) 50%, transparent 50%); }
.uv-cal-grid button { width: 36px; height: 36px; border-radius: 999px; border: none; background: transparent; font-size: 13px; color: var(--uv-fg); cursor: pointer; }
.uv-cal-grid button:hover { background: var(--uv-line); }
.uv-cal-grid button.today { box-shadow: inset 0 0 0 1.5px var(--uv-lime); font-weight: 600; }
.uv-cal-grid button.edge { background: var(--uv-acid); color: #0A0A0B; font-weight: 600; }
.uv-cal-grid button:disabled { opacity: .3; cursor: default; background: transparent; }

/* ── List table ───────────────────────────────────────────────────────── */
.uv-card { background: var(--uv-card); border: 1px solid var(--uv-colBd); border-radius: 16px; }
.uv-card.clip { overflow: hidden; }
.uv-scroll { overflow-x: auto; }
.uv-selbar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 10px 16px; background: var(--uv-sel); border-bottom: 1px solid var(--uv-colBd); font-size: 13px; }
.uv-selbar b { font-weight: 600; }
.uv-selbar .tot { color: var(--uv-mut); font-variant-numeric: tabular-nums; }
.uv-selbar .sp { flex: 1; }
.uv-tr { display: grid; align-items: center; gap: 0 16px; padding: 0 16px; }
.uv-thead { height: 40px; border-bottom: 1px solid var(--uv-colBd); background: var(--uv-sub); font-size: 12.5px; font-weight: 500; color: var(--uv-mut); }
.uv-thead > span { white-space: nowrap; }
.uv-row { border-bottom: 1px solid var(--uv-line); }
.uv-row.sel { background: var(--uv-sel); }
.uv-row.open { background: var(--uv-sub); }
.uv-row.hl { box-shadow: inset 3px 0 0 var(--uv-acid); }
.uv-row > .uv-tr { min-height: 52px; cursor: pointer; }
.uv-row > .uv-tr:hover { background: var(--uv-sub); }
.uv-row.sel > .uv-tr:hover { background: transparent; }
.uv-cell { min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: 13.5px; }
.uv-cell > b, .uv-cell > span { max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uv-cell > b { font-weight: 500; }
.uv-cell > small { font-size: 12px; color: var(--uv-mut); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uv-cell.r { text-align: right; align-items: flex-end; }
.uv-cell.c { text-align: center; align-items: center; color: var(--uv-mut); }
.uv-cell.mut { color: var(--uv-fg2); }
.uv-tr input[type=checkbox], .uv-selbar input[type=checkbox] { width: 15px; height: 15px; margin: 0; accent-color: var(--uv-hi); cursor: pointer; }
.uv-st { font-size: 13px; font-weight: 500; white-space: nowrap; color: var(--uv-mut); }
.uv-st.posted, .uv-st.approved { color: var(--uv-lime); }
.uv-st.pending, .uv-st.unapproved { color: var(--uv-amb); }
.uv-st.reversed, .uv-st.rejected, .uv-st.cancelled { color: var(--uv-red); }
.uv-st.draft { color: var(--uv-mut); }
.uv-menu-wrap { position: relative; display: flex; align-items: center; justify-content: flex-end; }
.uv-menu { position: absolute; top: 34px; right: 0; z-index: 30; width: 190px; padding: 6px; background: var(--uv-card); border: 1px solid var(--uv-bd3); border-radius: 12px; box-shadow: var(--uv-pop); }
.uv-menu button, .uv-menu a { width: 100%; display: flex; align-items: center; height: 34px; padding: 0 10px; border: none; border-radius: 8px; background: transparent; font-size: 13px; color: var(--uv-fg); text-align: left; cursor: pointer; text-decoration: none; }
.uv-menu button:hover, .uv-menu a:hover { background: var(--uv-line); }
.uv-menu .red { color: var(--uv-red); }
.uv-menu hr { border: 0; border-top: 1px solid var(--uv-line); margin: 4px 2px; }
.uv-lines-wrap { padding: 2px 16px 18px 47px; cursor: default; }
.uv-lines { border: 1px solid var(--uv-colBd); border-radius: 12px; overflow: hidden; background: var(--uv-card); }
.uv-lines .uv-tr { padding: 8px 16px; border-bottom: 1px solid var(--uv-line); font-size: 13px; font-variant-numeric: tabular-nums; }
.uv-lines .uv-tr > span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uv-lines .uv-tr.hd { padding: 9px 16px; border-bottom-color: var(--uv-colBd); background: var(--uv-sub); font-size: 12px; font-weight: 500; color: var(--uv-mut); }
.uv-lines .uv-tr.ft { padding: 10px 16px; border-bottom: 0; font-weight: 600; }
.uv-lines .r { text-align: right; }
.uv-lines .mut { color: var(--uv-mut); }
.uv-lines .dim { color: var(--uv-mut2); }
.uv-meta { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 10px; font-size: 12.5px; color: var(--uv-mut); }
.uv-meta b { color: var(--uv-fg2); font-weight: 500; }
.uv-empty { padding: 56px 16px; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.uv-empty b { font-size: 14px; font-weight: 500; }
.uv-empty span { font-size: 13px; color: var(--uv-mut); }
.uv-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 12px 16px; border-top: 1px solid var(--uv-colBd); font-size: 13px; color: var(--uv-mut); }
.uv-pager { display: flex; align-items: center; gap: 6px; }
.uv-pager button { width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--uv-bd2); background: var(--uv-card); display: flex; align-items: center; justify-content: center; cursor: pointer; color: var(--uv-fg); }
.uv-pager button:disabled { opacity: .4; cursor: default; }
.uv-pager span { min-width: 64px; text-align: center; color: var(--uv-fg); font-variant-numeric: tabular-nums; }

/* ── Entry form ───────────────────────────────────────────────────────── */
.uv-form { padding-bottom: 96px; }
.uv-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 18px; padding: 20px; }
.uv-fields .full { grid-column: 1 / -1; }
@media (max-width: 1000px) { .uv-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.uv-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.uv-field > span { font-size: 12.5px; color: var(--uv-mut); }
.uv-in, .uv-field input, .uv-field select, .uv-field textarea {
    width: 100%; height: 38px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--uv-bd3); background: var(--uv-card); color: var(--uv-fg);
    font-size: 13.5px; outline: none; box-shadow: none; transition: border-color .15s;
}
.uv-field textarea { height: auto; min-height: 38px; padding: 9px 12px; resize: vertical; }
.uv-in:focus, .uv-field input:focus, .uv-field select:focus, .uv-field textarea:focus { border-color: var(--uv-lime); box-shadow: none; }
.uv-field input[readonly], .uv-in[readonly] { background: var(--uv-sub); color: var(--uv-mut); }
.uv-field select, select.uv-in { appearance: none; -webkit-appearance: none; padding-right: 32px; cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238E8E88' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 12px center; }
.uv-grid-lines .uv-tr { padding: 8px 16px; border-bottom: 1px solid var(--uv-line); }
.uv-grid-lines .uv-tr.hd { height: 40px; padding: 0 16px; background: var(--uv-sub); border-bottom-color: var(--uv-colBd); font-size: 12.5px; font-weight: 500; color: var(--uv-mut); }
.uv-grid-lines .n { text-align: center; font-size: 12.5px; color: var(--uv-mut2); }
.uv-grid-lines .r { text-align: right; }
.uv-grid-lines input { width: 100%; height: 36px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--uv-bd3); background: var(--uv-card); font-size: 13.5px; outline: none; box-shadow: none; }
.uv-grid-lines input:focus { border-color: var(--uv-lime); }
.uv-grid-lines input.r { text-align: right; font-variant-numeric: tabular-nums; }
.uv-pick { position: relative; display: flex; align-items: center; height: 36px; border-radius: 10px; border: 1px solid var(--uv-bd3); background: var(--uv-card); }
.uv-pick.on { border-color: var(--uv-lime); }
.uv-pick > em { font-style: normal; padding-left: 12px; font-size: 12.5px; color: var(--uv-mut); font-variant-numeric: tabular-nums; white-space: nowrap; }
.uv-pick > input { border: none !important; height: 34px; flex: 1; min-width: 0; background: transparent !important; }
.uv-pick > .tag { margin-right: 8px; font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 999px; background: var(--uv-line); color: var(--uv-fg2); white-space: nowrap; }
.uv-x { width: 28px; height: 28px; border-radius: 50%; border: none; background: transparent; color: var(--uv-mut2); display: flex; align-items: center; justify-content: center; cursor: pointer; justify-self: center; }
.uv-x:hover { background: var(--uv-line); color: var(--uv-red); }
.uv-addline { margin: 12px 16px 16px; height: 32px; padding: 0 14px; border-radius: 999px; border: 1px dashed var(--uv-bd3); background: transparent; display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 500; color: var(--uv-fg); cursor: pointer; }
.uv-addline:hover { border-color: var(--uv-lime); }
.uv-drop { position: absolute; z-index: 9999; background: var(--uv-card); border: 1px solid var(--uv-bd2); border-radius: 14px; box-shadow: var(--uv-pop); padding: 6px; max-height: 340px; overflow-y: auto; }
.uv-drop .o { display: grid; grid-template-columns: 118px minmax(0, 1fr) auto; gap: 12px; align-items: center; height: 40px; padding: 0 12px; border-radius: 10px; cursor: pointer; font-size: 13.5px; }
.uv-drop .o.on, .uv-drop .o:hover { background: var(--uv-line); }
.uv-drop .o > em { font-style: normal; font-size: 12.5px; color: var(--uv-mut); font-variant-numeric: tabular-nums; }
.uv-drop .o > b { font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uv-drop .o > small { font-size: 12.5px; color: var(--uv-mut); white-space: nowrap; }
.uv-drop .none { padding: 12px; font-size: 13px; color: var(--uv-mut); }

/* Sticky totals and actions at the bottom of every entry screen */
.uv-bar { position: sticky; bottom: 0; z-index: 25; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 16px; padding: 12px 20px; background: var(--um-hdr, rgba(245, 245, 242, .86)); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid var(--uv-line); }
.uv-tots { display: flex; gap: 28px; flex-wrap: wrap; }
.uv-tots > div { display: flex; flex-direction: column; gap: 2px; }
.uv-tots span { font-size: 12.5px; color: var(--uv-mut); }
.uv-tots b { font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; }
.uv-tots b.red { color: var(--uv-red); }
.uv-acts { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.uv-toast { position: fixed; bottom: 92px; left: 50%; transform: translateX(-50%); z-index: 99999; padding: 10px 18px; border-radius: 999px; background: var(--uv-fg); color: var(--uv-bg); font-size: 13px; font-weight: 500; box-shadow: var(--uv-pop); }

/* ════════════════════════════════════════════════════════════════════════
   Data entry vouchers (create-*.blade.php: po-* classes) in the same design
   ════════════════════════════════════════════════════════════════════════ */
.po-wrapper.uv-skin { font-family: inherit !important; color: var(--uv-fg) !important; padding-bottom: 8px; }
.uv-skin .po-breadcrumbs { margin-bottom: 4px !important; font-size: 13px !important; color: var(--uv-mut) !important; font-weight: 400 !important; }
.uv-skin .po-breadcrumbs a { color: var(--uv-mut) !important; }
.uv-skin .po-breadcrumbs a:hover { color: var(--uv-fg) !important; }
.uv-skin .po-breadcrumbs span[style] { color: var(--uv-mut) !important; font-weight: 400 !important; }
.uv-skin .po-header { margin-bottom: 16px !important; }
.uv-skin .po-title { font-size: 24px !important; font-weight: 600 !important; letter-spacing: -.01em !important; color: var(--uv-fg) !important; }
.uv-skin .po-form-card, .uv-skin .po-table-card { background: var(--uv-card) !important; border: 1px solid var(--uv-colBd) !important; border-radius: 16px !important; box-shadow: none !important; }
.uv-skin .po-form-card { padding: 20px !important; margin-bottom: 16px !important; }
.uv-skin .form-grid { gap: 16px 18px !important; }
.uv-skin .form-label { font-size: 12.5px !important; font-weight: 400 !important; color: var(--uv-mut) !important; }
.uv-skin .po-input, .uv-skin .po-select, .uv-skin .po-textarea, .uv-skin select.po-input {
    height: 38px; padding: 0 12px !important; border-radius: 10px !important; border: 1px solid var(--uv-bd3) !important; background-color: var(--uv-card) !important;
    color: var(--uv-fg) !important; font-size: 13.5px !important; box-shadow: none !important;
}
.uv-skin .po-textarea { height: auto; min-height: 38px; padding: 9px 12px !important; }
.uv-skin .po-input:focus, .uv-skin .po-select:focus, .uv-skin .po-textarea:focus { border-color: var(--uv-lime) !important; box-shadow: none !important; }
.uv-skin .po-input.readonly, .uv-skin .po-input.disabled, .uv-skin .po-input[readonly] { background-color: var(--uv-sub) !important; color: var(--uv-mut) !important; font-weight: 400 !important; }
.uv-skin .table-controls { padding: 12px 16px !important; background: transparent !important; border-bottom: 1px solid var(--uv-line) !important; border-radius: 16px 16px 0 0 !important; }
.uv-skin .table-controls .po-input { border-radius: 999px !important; height: 34px; }
.uv-skin .po-table th { background: var(--uv-sub) !important; color: var(--uv-mut) !important; text-transform: none !important; font-size: 12.5px !important; font-weight: 500 !important; letter-spacing: 0 !important; padding: 11px 10px !important; border-bottom: 1px solid var(--uv-colBd) !important; }
.uv-skin .po-table td { border-top: 1px solid var(--uv-line) !important; padding: 8px 10px !important; color: var(--uv-fg); font-size: 13.5px; }
.uv-skin .po-table td[style*="color"] { color: var(--uv-fg) !important; }
.uv-skin .po-table tr[style*="background"] { background: var(--uv-sel) !important; }
.uv-skin .entry-row { background: var(--uv-sub) !important; border-top: 1px solid var(--uv-colBd) !important; border-bottom: 1px solid var(--uv-colBd) !important; }
.uv-skin .entry-row td { border-top: none !important; }
.uv-skin .tbl-input { height: 36px; border-radius: 10px !important; border: 1px solid var(--uv-bd3) !important; background: var(--uv-card) !important; color: var(--uv-fg) !important; font-weight: 500 !important; font-size: 13.5px !important; padding: 0 12px !important; box-shadow: none !important; }
.uv-skin .tbl-input:focus { border-color: var(--uv-lime) !important; outline: none !important; }
.uv-skin .tbl-input[readonly] { background: var(--uv-sub) !important; color: var(--uv-mut) !important; }
.uv-skin .add-item-btn { color: var(--uv-fg) !important; }
.uv-skin .po-footer { display: none !important; }
.uv-skin .po-actions { display: none !important; }
.uv-skin .btn-po { border-radius: 999px !important; height: 40px; padding: 0 18px !important; font-size: 13.5px !important; font-weight: 500 !important; box-shadow: none !important; transform: none !important; }
.uv-skin .btn-po-save { background: var(--uv-acid) !important; color: #0A0A0B !important; font-weight: 600 !important; }
.uv-skin .btn-po-save:hover { background: var(--uv-acid2) !important; filter: none !important; }
.uv-skin .btn-po-cancel { background: var(--uv-card) !important; border: 1px solid var(--uv-bd2) !important; color: var(--uv-fg) !important; }
.uv-skin .btn-po-cancel:hover { background: var(--uv-line) !important; }
.uv-skin .uv-bar .po-actions, .uv-skin .uv-bar .summary-box { display: flex !important; }
.uv-skin .uv-bar .summary-box { width: auto !important; flex-direction: row !important; gap: 28px !important; }
.uv-skin .uv-bar .summary-row { flex-direction: column !important; gap: 2px !important; font-size: 12.5px !important; color: var(--uv-mut) !important; border: 0 !important; padding: 0 !important; justify-content: flex-start !important; }
.uv-skin .uv-bar .summary-row > :last-child, .uv-skin .uv-bar .summary-row strong, .uv-skin .uv-bar .summary-row span[style] { font-size: 16px !important; font-weight: 600 !important; color: var(--uv-fg) !important; font-variant-numeric: tabular-nums; }
.uv-skin .uv-bar .summary-row > :first-child { font-size: 12.5px !important; font-weight: 400 !important; color: var(--uv-mut) !important; }
.uv-skin .uv-bar .summary-row input { height: 30px; border-radius: 8px; border: 1px solid var(--uv-bd3); background: var(--uv-card); color: var(--uv-fg); padding: 0 8px; width: 110px; }
/* Product suggestions of the voucher screens */
.sugg-dropdown { background: var(--uv-card) !important; border: 1px solid var(--uv-bd2) !important; border-radius: 14px !important; box-shadow: var(--uv-pop) !important; color: var(--uv-fg); }
.sugg-header, .sugg-footer { background: var(--uv-sub) !important; border-color: var(--uv-line) !important; color: var(--uv-mut) !important; }
.sugg-item-card { border-radius: 10px !important; }
.sugg-item-card:hover, .sugg-item-card.is-active { background: var(--uv-line) !important; box-shadow: none !important; }
.sugg-item-name { color: var(--uv-fg) !important; }
.sugg-code-pill { background: transparent !important; color: var(--uv-mut) !important; border: 0 !important; font-weight: 500 !important; }

/* Dark mode for the voucher screens (their own styles assume white) */
.dark .uv-skin .po-table td span[style*="color: #111111"], .dark .uv-skin .po-table td[style*="#111111"] { color: var(--uv-fg) !important; }
.dark .uv-skin .po-input, .dark .uv-skin .po-select { background-image: none; }
.dark .uv-skin .po-select, .dark .uv-skin select.po-input { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238E8E88' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 12px center !important; }

/* Voucher entry (accounts-page.blade.php) columns */
.uv-cols-v { grid-template-columns: 20px 150px 120px 100px minmax(220px, 1fr) 48px 130px 90px 36px; }
.uv-cols-l { grid-template-columns: 130px minmax(0, 1.2fr) minmax(0, 1fr) 140px 140px; }
.uv-cols-f { grid-template-columns: 28px minmax(260px, 1.5fr) minmax(160px, 1fr) 150px 150px 32px; gap: 0 10px; }
.uv-grid-lines { overflow: visible; }
html .ummigo-accounts-root {
    --ac-ink: var(--um-fg); --ac-ink-2: var(--um-fg2); --ac-muted: var(--um-mut); --ac-faint: var(--um-mut2); --ac-line: var(--um-bd2);
    --ac-line-soft: var(--um-line); --ac-surface: var(--um-card); --ac-canvas: var(--um-bg); --ac-head: var(--uv-sub);
}

.uv-skin .btn-po > span:not([style*="display: none"]) { display: inline-flex !important; align-items: center; gap: 6px; flex-direction: row !important; }
.uv-skin .btn-po svg { width: 15px !important; height: 15px !important; }
.uv-skin .po-table th:first-child, .uv-skin .po-table td:first-child { color: var(--uv-mut2) !important; }

/* ════════════════════════════════════════════════════════════════════════
   Saved voucher lists (Filament tables of the voucher resources, body.uv-list-skin)
   ════════════════════════════════════════════════════════════════════════ */
.uv-list-skin .fi-header-heading { font-size: 24px !important; font-weight: 600 !important; letter-spacing: -.01em; }
.uv-list-skin .fi-header .fi-ac-btn-action, .uv-list-skin .fi-header .fi-btn { border-radius: 999px !important; height: 40px; padding: 0 18px !important; background: var(--uv-acid) !important; color: #0A0A0B !important; font-weight: 600 !important; box-shadow: none !important; border: 0 !important; }
.uv-list-skin .fi-header .fi-btn:hover { background: var(--uv-acid2) !important; }
.uv-list-skin .fi-ta-ctn { border-radius: 16px !important; border: 1px solid var(--uv-colBd) !important; box-shadow: none !important; background: var(--uv-card) !important; overflow: hidden; --tw-ring-shadow: 0 0 #0000 !important; }
.uv-list-skin .fi-ta-header-toolbar { padding: 12px 16px !important; border-bottom: 1px solid var(--uv-colBd) !important; }
.uv-list-skin .fi-ta-search-field .fi-input-wrp, .uv-list-skin .fi-ta-header-toolbar .fi-input-wrp { border-radius: 999px !important; height: 38px; box-shadow: none !important; border: 1px solid var(--uv-bd2) !important; background: var(--uv-card) !important; --tw-ring-shadow: 0 0 #0000 !important; }
.uv-list-skin .fi-ta-table thead tr, .uv-list-skin .fi-ta-table thead th { background: var(--uv-sub) !important; }
.uv-list-skin .fi-ta-header-cell, .uv-list-skin .fi-ta-table thead th { height: 40px; padding-top: 0 !important; padding-bottom: 0 !important; }
.uv-list-skin .fi-ta-header-cell-label, .uv-list-skin .fi-ta-header-cell span, .uv-list-skin .fi-ta-table thead th span { font-size: 12.5px !important; font-weight: 500 !important; color: var(--uv-mut) !important; text-transform: none !important; letter-spacing: 0 !important; }
.uv-list-skin .fi-ta-table tbody tr { border-color: var(--uv-line) !important; }
.uv-list-skin .fi-ta-table tbody tr:hover { background: var(--uv-sub) !important; }
.uv-list-skin .fi-ta-table tbody td { height: 52px; }
.uv-list-skin .fi-ta-text-item-label, .uv-list-skin .fi-ta-text { font-size: 13.5px !important; }
.uv-list-skin .fi-ta-text-item-label.text-primary-600, .uv-list-skin .fi-ta-text-item-label[class*="primary"] { color: var(--uv-fg) !important; font-weight: 500 !important; }
/* Status and type badges read as plain coloured text, like the design */
.uv-list-skin .fi-ta-cell .fi-badge { background: transparent !important; box-shadow: none !important; padding: 0 !important; font-size: 13px !important; font-weight: 500 !important; --tw-ring-shadow: 0 0 #0000 !important; }
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-success, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-success * { color: var(--uv-lime) !important; }
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-warning, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-warning * { color: var(--uv-amb) !important; }
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-danger, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-danger * { color: var(--uv-red) !important; }
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-gray, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-gray *,
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-info, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-info *,
.uv-list-skin .fi-ta-cell .fi-badge.fi-color-primary, .uv-list-skin .fi-ta-cell .fi-badge.fi-color-primary * { color: var(--uv-fg2) !important; }
.uv-list-skin .fi-ta-footer, .uv-list-skin .fi-pagination { border-color: var(--uv-colBd) !important; font-size: 13px; color: var(--uv-mut); }
.uv-list-skin .fi-ta-selection-indicator { background: var(--uv-sel) !important; border-color: var(--uv-colBd) !important; }
.uv-list-skin .fi-ta-actions .fi-dropdown-panel, .uv-list-skin .fi-dropdown-panel { border-radius: 12px !important; }
.uv-list-skin .fi-ta-filter-indicators { background: var(--uv-sub) !important; }
.uv-list-skin .fi-ta-filter-indicators .fi-badge { border-radius: 999px !important; }
.uv-list-skin input[type=checkbox].fi-checkbox-input { accent-color: var(--uv-hi); }

/* Search and filters in one row above the table card (filters layout: above content) */
.uv-list-skin .fi-ta-ctn { background: transparent !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; box-shadow: none !important; --tw-ring-shadow: 0 0 #0000 !important; }
.uv-list-skin .fi-ta-ctn > *, .uv-list-skin .fi-ta-header-ctn > * { border-top-width: 0 !important; border-bottom-width: 0 !important; }
.uv-list-skin .fi-ta-header-ctn { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; padding: 0 0 14px; }
.uv-list-skin .fi-ta-header-ctn[hidden] { display: none; }
.uv-list-skin .fi-ta-header-toolbar { order: -1; flex: 0 1 320px; min-width: 220px; padding: 0 !important; border: 0 !important; background: transparent !important; gap: 10px; }
.uv-list-skin .fi-ta-header-toolbar > div:empty { display: none; }
.uv-list-skin .fi-ta-header-toolbar > .ms-auto { margin-left: 0 !important; flex: 1; gap: 10px; }
.uv-list-skin .fi-ta-header-toolbar .fi-ta-search-field { flex: 1; }
.uv-list-skin .fi-ta-search-field .fi-input-wrp { height: 40px !important; }
.uv-list-skin .fi-ta-filters-above-content-ctn { flex: 1 1 0; min-width: 0; padding: 0 !important; display: block !important; }
.uv-list-skin .fi-ta-text-item-label[class*="custom"], .uv-list-skin .fi-ta-text-item-label[class*="primary"] { color: var(--uv-fg) !important; }
.uv-list-skin .fi-ta-cell:first-of-type .fi-ta-text-item-label, .uv-list-skin td.fi-ta-cell .fi-ta-text-item-label.font-bold { font-weight: 600 !important; }
.uv-list-skin .fi-ta-filters { display: flex !important; flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: 10px !important; }
.uv-list-skin .fi-ta-filters > div:first-child h4 { display: none; }
.uv-list-skin .fi-ta-filters > div:first-child .fi-link span { font-size: 12.5px !important; font-weight: 500 !important; color: var(--uv-mut) !important; }
.uv-list-skin .fi-ta-filters > div:first-child .fi-link svg { display: none; }
.uv-list-skin .fi-ta-filters > .fi-fo-component-ctn { display: flex !important; flex-wrap: wrap; gap: 10px !important; }
.uv-list-skin .fi-ta-filters > .fi-fo-component-ctn > * { flex: none; min-width: 0; }
/* each filter is a pill: muted label inside, value next to it */
.uv-list-skin .fi-ta-filters .fi-fo-field-wrp > .grid { display: flex !important; align-items: center; gap: 8px; height: 40px; padding: 0 6px 0 14px; border: 1px solid var(--uv-bd2); border-radius: 999px; background: var(--uv-card); }
.uv-list-skin .fi-ta-filters .fi-fo-field-wrp > .grid > div { display: flex; align-items: center; }
.uv-list-skin .fi-ta-filters .fi-fo-field-wrp-label span { font-size: 12.5px !important; font-weight: 400 !important; color: var(--uv-mut) !important; white-space: nowrap; }
.uv-list-skin .fi-ta-filters .fi-input-wrp { background: transparent !important; box-shadow: none !important; --tw-ring-shadow: 0 0 #0000 !important; border: 0 !important; border-radius: 0 !important; min-width: 0; }
.uv-list-skin .fi-ta-filters .fi-select-input { padding-right: 26px !important; background-position: right 4px center !important; }
.uv-list-skin .fi-ta-filters .fi-input, .uv-list-skin .fi-ta-filters .fi-select-input, .uv-list-skin .fi-ta-filters .choices__inner { font-size: 13px !important; font-weight: 500 !important; color: var(--uv-fg) !important; padding-left: 0 !important; background: transparent !important; border: 0 !important; min-height: 0 !important; }
.uv-list-skin .fi-ta-filters input[type=date] { padding-right: 4px !important; }
.uv-list-skin .fi-ta-filters .choices { min-width: 110px; width: auto !important; }
.uv-list-skin .fi-ta-filters .choices__inner { width: auto !important; padding-right: 22px !important; }
.uv-list-skin .fi-ta-filters > div:first-child { align-self: center; }
/* the date range: From and To share one pill */
.uv-list-skin .fi-ta-filters .fi-fo-component-ctn .fi-fo-component-ctn:has(input[type=date]) { display: flex !important; gap: 0 !important; border: 1px solid var(--uv-bd2); border-radius: 999px; background: var(--uv-card); padding-right: 6px; }
.uv-list-skin .fi-ta-filters .fi-fo-component-ctn .fi-fo-component-ctn:has(input[type=date]) .fi-fo-field-wrp > .grid { border: 0; background: transparent; padding-right: 0; }
.uv-list-skin .fi-ta-filters .fi-fo-component-ctn .fi-fo-component-ctn:has(input[type=date]) > div:first-child .fi-fo-field-wrp > .grid::before { content: ''; width: 15px; height: 15px; flex: none; background: var(--uv-hi); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center / contain no-repeat; }
/* the table is the card; filter chips are not needed with the fields in view */
.uv-list-skin .fi-ta-filter-indicators { display: none !important; }
.uv-list-skin .fi-ta-content { border: 1px solid var(--uv-colBd) !important; border-radius: 16px 16px 0 0; background: var(--uv-card) !important; }
.uv-list-skin .fi-ta-content:last-child { border-radius: 16px; }
.uv-list-skin .fi-ta-pagination { border: 1px solid var(--uv-colBd) !important; border-top: 0 !important; border-radius: 0 0 16px 16px; background: var(--uv-card) !important; }
.uv-list-skin .fi-ta-selection-indicator { border: 1px solid var(--uv-colBd) !important; border-bottom: 0 !important; border-radius: 16px 16px 0 0; }
.uv-list-skin .fi-ta-selection-indicator:not([hidden]) + .fi-ta-content { border-radius: 0; }
.uv-list-skin .fi-ta-record-checkbox, .uv-list-skin .fi-ta-page-checkbox { border-radius: 5px !important; }
.uv-list-skin .fi-ta-actions .fi-icon-btn { color: var(--uv-mut) !important; }
.uv-list-skin .fi-ta-actions .fi-icon-btn:hover { color: var(--uv-fg) !important; background: var(--uv-sub) !important; }
.dark .uv-list-skin .fi-ta-filters input[type=date] { color-scheme: dark; }
@media (max-width: 760px) { .uv-list-skin .fi-ta-header-toolbar { flex-basis: 100%; } }

/* Batch-wise stock vouchers (batch-stock-vouchers.blade.php) in the same design, light and dark */
.bsv { background: var(--uv-bg) !important; color: var(--uv-fg) !important; font-family: inherit !important; }
.bsv input, .bsv select, .bsv button { color: var(--uv-fg) !important; }
.bsv-card { background: var(--uv-card) !important; border-color: var(--uv-colBd) !important; border-radius: 16px !important; }
.bsv-in, .bsv-sel { background: var(--uv-card) !important; border-color: var(--uv-bd3) !important; border-radius: 10px !important; height: 38px !important; font-size: 13.5px !important; }
.bsv-in:focus, .bsv-sel:focus { border-color: var(--uv-lime) !important; outline: none; }
.bsv-ro { background: var(--uv-sub) !important; border-color: var(--uv-bd3) !important; color: var(--uv-mut) !important; border-radius: 10px !important; height: 38px !important; font-weight: 400 !important; }
.bsv-lbl { font-weight: 400 !important; color: var(--uv-mut) !important; font-size: 12.5px !important; }
.bsv-btn { background: var(--uv-card) !important; border-color: var(--uv-bd2) !important; border-radius: 999px !important; font-weight: 500 !important; }
.bsv-btn:hover { background: var(--uv-line) !important; }
.bsv-save { background: var(--uv-acid) !important; color: #0A0A0B !important; border-radius: 999px !important; font-weight: 600 !important; }
.bsv-save:hover { background: var(--uv-acid2) !important; }
.bsv-cancel { border-radius: 999px !important; color: var(--uv-mut) !important; }
.bsv-tab { color: var(--uv-mut) !important; }
.bsv-tab.on { color: var(--uv-fg) !important; border-bottom-color: var(--uv-fg) !important; }
.bsv thead tr { background: var(--uv-sub) !important; border-bottom-color: var(--uv-colBd) !important; color: var(--uv-mut) !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 12.5px !important; font-weight: 500 !important; }
.bsv tbody tr { border-bottom-color: var(--uv-line) !important; }
.bsv-cell { background: var(--uv-card) !important; border-color: var(--uv-bd3) !important; border-radius: 10px !important; color: var(--uv-fg) !important; }
.bsv-drop { background: var(--uv-card) !important; border-color: var(--uv-bd2) !important; color: var(--uv-fg) !important; }
.bsv-drop div.opt:hover, .bsv-drop div.opt.hl { background: var(--uv-line) !important; }
.dark .bsv [style*="background:#fff"], .dark .bsv [style*="background: #fff"], .dark .bsv [style*="background:#ffffff"], .dark .bsv [style*="background: white"] { background: var(--uv-card) !important; }
.dark .bsv [style*="color:#151515"], .dark .bsv [style*="color: #151515"] { color: var(--uv-fg) !important; }
.dark .bsv input:not([type=checkbox]) { background-color: var(--uv-card) !important; color: var(--uv-fg) !important; border-color: var(--uv-bd3) !important; }

/* Batch notes entry (batch-stock-vouchers.blade.php, .bsv2) */
@font-face { font-family: 'Anton'; src: url('/fonts/Anton-Regular.ttf') format('truetype'); font-display: swap; }
.bsv2-sec { overflow: visible; }
.bsv2-hd { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 14px 16px; border-bottom: 1px solid var(--uv-colBd); }
.bsv2-hd b { font-size: 14px; font-weight: 600; }
.bsv2-hd .n { font-size: 13px; color: var(--uv-mut2); }
.bsv2-hd .sp { flex: 1; }
.bsv2-hd .bad, .bsv2-t .bad { color: var(--uv-red); font-size: 12.5px; font-weight: 500; }
.bsv2-hd .warn { color: var(--uv-amb); font-size: 12.5px; }
.bsv2-t { width: 100%; min-width: 980px; border-collapse: collapse; font-size: 13.5px; font-variant-numeric: tabular-nums; }
.bsv2-t th { height: 40px; padding: 0 10px; text-align: left; font-size: 12.5px; font-weight: 500; color: var(--uv-mut); background: var(--uv-sub); border-bottom: 1px solid var(--uv-colBd); white-space: nowrap; }
.bsv2-t td { padding: 8px 10px; border-bottom: 1px solid var(--uv-line); vertical-align: middle; }
.bsv2-t th:first-child, .bsv2-t td:first-child { padding-left: 16px; }
.bsv2-t th:last-child, .bsv2-t td:last-child { padding-right: 16px; }
.bsv2-t .r { text-align: right; }
.bsv2-t .mut { color: var(--uv-mut); }
.bsv2-t small { display: block; font-size: 11.5px; color: var(--uv-mut); margin-top: 2px; }
.bsv2-t input { width: 100%; height: 36px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--uv-bd3); background: var(--uv-card); color: var(--uv-fg); font-size: 13.5px; outline: none; }
.bsv2-t input:focus { border-color: var(--uv-lime); }
.bsv2-t input.r { text-align: right; }
.bsv2-t tr.add td { background: var(--uv-sub); border-bottom: 0; }
.bsv2-t tbody tr:last-child td { border-bottom: 0; }
.bsv2-ov { position: fixed; inset: 0; z-index: 60; background: rgba(10, 10, 11, .62); overflow: auto; padding: 24px 16px; }
.bsv2-ov-bar { width: 210mm; max-width: 100%; margin: 0 auto 14px; display: flex; justify-content: flex-end; gap: 8px; }
.bsv2-doc { width: 210mm; max-width: 100%; min-height: 297mm; margin: 0 auto; background: #fff; color: #141414; padding: 52px 56px 36px; font-size: 13px; display: flex; flex-direction: column; font-family: 'Segoe UI', 'Inter', Helvetica, Arial, sans-serif; }
.bsv2-doc .anton { font-family: 'Anton', 'Arial Black', Impact, sans-serif; font-size: 26px; line-height: 1.05; text-transform: uppercase; }
.bsv2-doc .top { display: flex; justify-content: space-between; gap: 24px; }
.bsv2-doc .doc { text-align: right; }
.bsv2-doc .no { margin-top: 6px; color: #262624; }
.bsv2-doc .sheetname { margin-top: 4px; font-size: 12.5px; color: #4A4A45; }
.bsv2-doc .st { margin-top: 6px; font-weight: 700; color: #9A6A00; }
.bsv2-doc .meta { display: grid; margin-top: 30px; border: 1px solid #D6D6CF; border-radius: 8px; background: #F5F5F2; overflow: hidden; }
.bsv2-doc .meta > div { padding: 11px 16px 12px; border-left: 1px solid #D6D6CF; }
.bsv2-doc .meta > div:first-child { border-left: 0; }
.bsv2-doc .k { font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #3A3A36; }
.bsv2-doc .v { margin-top: 4px; }
.bsv2-doc table { width: 100%; border-collapse: collapse; margin-top: 26px; font-size: 13.5px; font-variant-numeric: tabular-nums; }
.bsv2-doc th { text-align: left; font-size: 12.5px; font-weight: 700; padding: 8px 10px 9px 0; border-bottom: 1.5px solid #141414; }
.bsv2-doc td { padding: 10px 10px 10px 0; border-bottom: 1px solid #D9D9D2; vertical-align: top; }
.bsv2-doc .r { text-align: right; padding-right: 0; padding-left: 10px; white-space: nowrap; }
.bsv2-doc .sub { font-size: 11px; color: #6B6B66; margin-top: 2px; }
.bsv2-doc .sum { display: flex; justify-content: space-between; gap: 40px; margin-top: 22px; }
.bsv2-doc .notes { flex: 1; }
.bsv2-doc .k2 { font-size: 12px; color: #4A4A45; }
.bsv2-doc .t { margin-top: 4px; }
.bsv2-doc .tots { width: 280px; }
.bsv2-doc .tr { display: flex; justify-content: space-between; padding: 6px 0; }
.bsv2-doc .grand { display: flex; justify-content: space-between; align-items: baseline; margin-top: 6px; padding-top: 12px; border-top: 1.5px solid #141414; }
.bsv2-doc .grand span { font-weight: 700; }
.bsv2-doc .grand b { font-size: 18px; }
.bsv2-doc .signs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin-top: auto; padding-top: 70px; }
.bsv2-doc .who { height: 26px; border-bottom: 1px solid #141414; }
.bsv2-doc .role { font-size: 12.5px; color: #3A3A36; margin-top: 6px; }

/* Production note: recall batch issue notes */
.prn-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.prn-chip { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 6px 0 12px; border-radius: 999px; background: var(--uv-line); font-size: 12.5px; color: var(--uv-fg); }
.prn-chip button { width: 20px; height: 20px; border-radius: 50%; border: 0; background: transparent; color: var(--uv-mut); cursor: pointer; font-size: 15px; line-height: 1; }
.prn-chip button:hover { color: var(--uv-red); background: var(--uv-card); }
.prn-tag { margin-left: 8px; font-size: 11px; font-weight: 600; padding: 1px 8px; border-radius: 999px; background: var(--uv-line); color: var(--uv-fg2); }
.prn-ov { position: fixed; inset: 0; z-index: 70; background: rgba(10, 10, 11, .5); display: flex; align-items: flex-start; justify-content: center; padding: 80px 16px 16px; }
.prn-modal { width: 720px; max-width: 100%; max-height: calc(100vh - 110px); display: flex; flex-direction: column; background: var(--uv-card); color: var(--uv-fg); border: 1px solid var(--uv-bd2); border-radius: 20px; box-shadow: var(--uv-pop); overflow: hidden; }
.prn-mh { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 18px 20px; border-bottom: 1px solid var(--uv-colBd); }
.prn-mh b { font-size: 16px; font-weight: 600; display: block; }
.prn-mh small { font-size: 12.5px; color: var(--uv-mut); }
.prn-list { overflow-y: auto; }
.prn-empty { padding: 36px 16px; text-align: center; font-size: 13px; color: var(--uv-mut); }
.prn-row { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) 130px 150px; gap: 12px; align-items: center; padding: 12px 20px; border-bottom: 1px solid var(--uv-line); font-size: 13.5px; }
.prn-row:last-child { border-bottom: 0; }
.prn-row small { display: block; font-size: 12px; color: var(--uv-mut); margin-top: 2px; }
.prn-row b { font-weight: 600; }
.prn-row .c3 { text-align: right; font-variant-numeric: tabular-nums; }
.prn-row .c4 { text-align: right; }
.prn-row.off { opacity: .55; }
.prn-done { font-size: 12.5px; color: var(--uv-mut); }

/* Consumption › Actual vs Sales Variance (actual-vs-sales-variance.blade.php) */
.avs-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.avs-bar { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin-bottom: 14px; }
.avs-bar .uv-search { max-width: 300px; }
.avs-switch { display: inline-flex; align-items: center; gap: 10px; height: 38px; padding: 0 16px 0 10px; border-radius: 999px; border: 1px solid var(--uv-bd2); background: var(--uv-card); color: var(--uv-fg); font-size: 13px; cursor: pointer; }
.avs-switch i { width: 30px; height: 18px; border-radius: 999px; background: var(--uv-bd3); position: relative; transition: background .15s; }
.avs-switch i::after { content: ''; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: left .15s; }
.avs-switch.on i { background: var(--uv-acid); }
.avs-switch.on i::after { left: 14px; }
.avs-card { overflow: hidden; }
.avs-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding: 12px 16px; border-bottom: 1px solid var(--uv-colBd); font-size: 13px; color: var(--uv-mut); }
.avs-t { min-width: 940px; font-variant-numeric: tabular-nums; }
.avs-r { display: grid; grid-template-columns: minmax(220px, 1fr) 96px 96px 96px 96px 96px 96px 96px; align-items: center; gap: 0 12px; padding: 0 16px; }
.avs-r > span { text-align: right; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.avs-r > span:first-child { text-align: left; }
.avs-g { height: 34px; font-size: 12.5px; font-weight: 600; color: var(--uv-fg2); }
.avs-g .g3 { grid-column: span 3; text-align: center; border-bottom: 1px solid var(--uv-bd3); padding-bottom: 6px; }
.avs-g .g2 { grid-column: span 2; text-align: center; border-bottom: 1px solid var(--uv-bd3); padding-bottom: 6px; }
.avs-h { height: 38px; border-bottom: 1px solid var(--uv-colBd); font-size: 12.5px; color: var(--uv-mut); }
.avs-p { min-height: 46px; border-bottom: 1px solid var(--uv-line); background: var(--uv-sub); font-size: 13.5px; font-weight: 600; cursor: pointer; }
.avs-p .nm { display: flex; align-items: center; gap: 8px; min-width: 0; }
.avs-p .nm b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; }
.avs-p .nm small { font-weight: 400; font-size: 12px; color: var(--uv-mut); }
.avs-p .nm svg { flex-shrink: 0; color: var(--uv-mut); transition: transform .15s; }
.avs-p .nm svg.shut { transform: rotate(-90deg); }
.avs-c { min-height: 40px; border-bottom: 1px solid var(--uv-line); font-size: 13px; }
.avs-c .nm { padding-left: 22px; display: flex; gap: 8px; align-items: baseline; min-width: 0; }
.avs-c .nm small { font-size: 12px; color: var(--uv-mut); }
.avs-c .nm em { font-style: normal; font-size: 11.5px; color: var(--uv-amb); }
.avs-c .mut { color: var(--uv-mut); }
.avs-r .neg { color: var(--uv-red); }
.avs-tot { min-height: 48px; font-size: 14px; font-weight: 700; border-top: 1.5px solid var(--uv-fg); }
.avs-note { margin-top: 12px; font-size: 12.5px; color: var(--uv-mut); max-width: 900px; line-height: 1.5; }
.avs-print-head { display: none; }
@media print {
    .avs-noprint, .fi-sidebar, .fi-topbar, .um-topbar, .um-side { display: none !important; }
    .avs-print-head { display: flex; justify-content: space-between; margin-bottom: 8px; font-size: 12px; }
    html, body, body.fi-body, .fi-layout, .fi-main-ctn, .fi-main { background: #fff !important; }
    .avs .uv-crumb, .avs-top, .avs-note { display: none !important; }
    .avs-p { background: #F5F5F2 !important; }
    .avs * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .avs-card { border: 0 !important; }
    .avs-t { min-width: 0; font-size: 10.5px; }
    .avs-r { grid-template-columns: minmax(180px, 1fr) repeat(7, 74px); gap: 0 6px; padding: 0 4px; }
    .avs-p, .avs-c { min-height: 26px; break-inside: avoid; }
    @page { size: A4 landscape; margin: 10mm; }
}
