/* order.yorkn.com — same look as www.yorkn.com (Jake, 2026-10-10: "make sure both website theme
   matches"): Apple-grey canvas, white frosted bars, ink text, Apple-blue → indigo gradient for the
   one main action, pill buttons, 18px cards. Tokens copied from the website's app/globals.css.
   Previous colourful navy theme: /root/erp-fix-backups/erp-theme.css.bak-2026-10-10-website-look.
   Colours are set with background-color so a person's own Appearance choice (UserTheme) still wins. */

:root{--erp-ink:#1d1d1f;--erp-body:#34343a;--erp-ink-2:#55555c;--erp-ink-3:#86868b;--erp-blue:#0071e3;--erp-indigo:#5e5ce6;--erp-tint:rgba(0,113,227,.09);--erp-line:#d2d2d7;--erp-line-soft:#e8e8ed;--erp-soft:#f5f5f7;--erp-grad:linear-gradient(135deg,#0071e3 0%,#5e5ce6 100%);--erp-shadow:0 4px 24px rgba(0,0,0,.06);--erp-shadow-hover:0 12px 40px rgba(0,0,0,.12);--erp-radius:18px;--erp-radius-sm:12px;
  /* old names still used by a few page styles */
  --erp-navy:#1d1d1f;--erp-violet:#5e5ce6;--erp-pink:#e11d48;--erp-green:#16a34a;--erp-amber:#f59e0b;--erp-sky:#38bdf8}

html:not(.dark) body,html:not(.dark) .fi-body{color:var(--erp-body);letter-spacing:-.01em;-webkit-font-smoothing:antialiased}

/* ---------- page canvas ---------- */
html:not(.dark) .fi-body{background-color:var(--erp-soft)}
html:not(.dark) .fi-main{background:transparent}

/* ---------- sidebar: white, hairline edge, blue tint on the current page ---------- */
html:not(.dark) .fi-sidebar,html:not(.dark) .fi-sidebar-header,html:not(.dark) .fi-sidebar-nav{background-color:#fff}
html:not(.dark) .fi-sidebar{border-right:1px solid var(--erp-line-soft)!important;box-shadow:none}
html:not(.dark) .fi-sidebar-header{border-bottom:1px solid var(--erp-line-soft)!important;box-shadow:none}
.fi-sidebar-nav{padding-top:.75rem}
.fi-sidebar-group-label{letter-spacing:.06em;font-size:.68rem;text-transform:uppercase;font-weight:600}
html:not(.dark) .fi-sidebar-group-label{color:var(--erp-ink-3)}
.fi-sidebar-item-btn{border-radius:var(--erp-radius-sm)!important;transition:background .15s ease}
.fi-sidebar-item-label{font-weight:500}
html:not(.dark) .fi-sidebar-item-label{color:var(--erp-ink)}
html:not(.dark) .fi-sidebar-item-icon{color:var(--erp-ink-2)}
html:not(.dark) .fi-sidebar-item-btn:hover{background-color:var(--erp-soft)}
html:not(.dark) .fi-sidebar-item.fi-active>.fi-sidebar-item-btn,html:not(.dark) .fi-sidebar-item-active>.fi-sidebar-item-btn{background-color:var(--erp-tint)}
html:not(.dark) .fi-sidebar-item.fi-active .fi-sidebar-item-label,html:not(.dark) .fi-sidebar-item-active .fi-sidebar-item-label,
html:not(.dark) .fi-sidebar-item.fi-active .fi-sidebar-item-icon,html:not(.dark) .fi-sidebar-item-active .fi-sidebar-item-icon{color:var(--erp-blue)}
.fi-sidebar-item.fi-active .fi-sidebar-item-label,.fi-sidebar-item-active .fi-sidebar-item-label{font-weight:600}

/* ---------- topbar: frosted white, like the website header ---------- */
.fi-topbar{position:relative;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}
html:not(.dark) .fi-topbar{background:rgba(255,255,255,.72)!important;box-shadow:none;border-bottom:1px solid var(--erp-line-soft)}
html.dark .fi-topbar{background:rgba(17,24,39,.85)!important}

/* ---------- page header ---------- */
.fi-header-heading{font-weight:700!important;letter-spacing:-.02em}
html:not(.dark) .fi-header-heading{color:var(--erp-ink)!important}
.fi-breadcrumbs-item-label{font-weight:500}

/* ---------- sections / cards ---------- */
.fi-section{border-radius:var(--erp-radius)!important;overflow:hidden}
html:not(.dark) .fi-section{border:1px solid var(--erp-line-soft)!important;box-shadow:var(--erp-shadow)!important}
html:not(.dark) .fi-section-header{background:#fff;border-bottom:1px solid var(--erp-line-soft)}
.fi-section-header-heading{font-weight:600!important;letter-spacing:-.01em}
html:not(.dark) .fi-section-header-heading{color:var(--erp-ink)!important}
.fi-section-header .fi-icon{color:#fff!important;background:var(--erp-grad);border-radius:.65rem;padding:.35rem;width:2rem!important;height:2rem!important;box-shadow:0 4px 12px rgba(0,113,227,.25)}

/* ---------- tabs: grey track, white pill on the current one ---------- */
.fi-tabs{border-radius:var(--pill,980px)!important;padding:.25rem!important;border:0!important}
html:not(.dark) .fi-tabs{background:#e8e8ed!important}
/* Many tabs (CSR / VA per person): wrap onto 2-3 lines instead of one long scrolling strip. */
.fi-tabs{flex-wrap:wrap!important;overflow-x:visible!important;row-gap:.25rem;border-radius:1.25rem!important}
html.dark .fi-tabs{background:rgba(255,255,255,.06)!important}
.fi-tabs-item{border-radius:999px!important}
html:not(.dark) .fi-tabs-item.fi-active,html:not(.dark) .fi-tabs-item-active{background:#fff!important;box-shadow:0 2px 8px rgba(0,0,0,.10)}
html:not(.dark) .fi-tabs-item.fi-active .fi-tabs-item-label,html:not(.dark) .fi-tabs-item-active .fi-tabs-item-label,html:not(.dark) .fi-tabs-item.fi-active .fi-icon{color:var(--erp-blue)!important}

/* ---------- buttons: pills; the main action gets the website's gradient ---------- */
.fi-btn{border-radius:980px!important;font-weight:600!important;transition:transform .1s ease,box-shadow .15s ease,filter .15s ease}
.fi-btn:active{transform:scale(.98)}
.fi-btn.fi-color-primary,.erp-cta{background:var(--erp-grad)!important;color:#fff!important;border:0!important;box-shadow:0 6px 18px rgba(0,113,227,.28)!important}
.fi-btn.fi-color-primary:hover,.erp-cta:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 10px 26px rgba(0,113,227,.36)!important}
.fi-btn.fi-color-success:hover,.fi-btn.fi-color-danger:hover,.fi-btn.fi-color-warning:hover{transform:translateY(-1px)}
.fi-icon-btn{border-radius:999px!important}
.erp-copy{border-radius:999px;padding:.15rem .7rem;font-size:.75rem;font-weight:600;border:1px solid var(--erp-line);color:var(--erp-blue);background:transparent;cursor:pointer}
.erp-copy:hover{border-color:var(--erp-blue);background:rgba(0,113,227,.05)}

/* ---------- badges ---------- */
.fi-badge{font-weight:600!important;border-radius:999px!important}

/* ---------- tables ---------- */
.fi-ta-ctn,.fi-ta{border-radius:var(--erp-radius)!important}
html:not(.dark) .fi-ta-ctn,html:not(.dark) .fi-ta{box-shadow:var(--erp-shadow)!important;border:1px solid var(--erp-line-soft)!important}
html:not(.dark) .fi-ta-header-cell{background:#fafafa!important}
.fi-ta-header-cell,.fi-ta-header-cell-label{font-weight:600!important;text-transform:uppercase;font-size:.7rem!important;letter-spacing:.06em}
html:not(.dark) .fi-ta-header-cell,html:not(.dark) .fi-ta-header-cell-label{color:var(--erp-ink-2)!important}
html:not(.dark) .fi-ta-row:hover{background:var(--erp-soft)!important}
html:not(.dark) .fi-ta-header-toolbar{background:#fff}
html:not(.dark) .fi-ta-row.fi-selected{background:var(--erp-tint)!important}

/* ---------- inputs ---------- */
.fi-input-wrp{border-radius:var(--erp-radius-sm)!important}
.fi-input-wrp:focus-within{box-shadow:0 0 0 3px rgba(0,113,227,.18)!important}
.fi-fo-field-label-content{font-weight:500}
.fi-fo-field-label-required-mark{color:#e11d48!important}

/* ---------- notifications / modals ---------- */
.fi-no-notification,.fi-modal-window{border-radius:var(--erp-radius)!important}
.fi-modal-window{box-shadow:0 30px 80px rgba(0,0,0,.18)!important}
/* Full-screen dialogs (Edit line, Add line): Filament fixes them at 100dvh with no
   scroll, so opening "What we paid in China" on a shorter screen pushed Save off the
   bottom (Jake, 2026-09-21). The body scrolls; header and Save bar stay put. */
.fi-modal.fi-width-screen>.fi-modal-window-ctn>.fi-modal-window .fi-modal-content{min-height:0;overflow-y:auto}
.fi-modal.fi-width-screen>.fi-modal-window-ctn>.fi-modal-window>.fi-modal-header,
.fi-modal.fi-width-screen>.fi-modal-window-ctn>.fi-modal-window>.fi-modal-footer{flex-shrink:0}
/* A select inside a dialog section opened UPWARDS and lost its top rows: the section
   clips its overflow, so the picker saw ~30px of room below the field and flipped
   (Add line > Product, 2026-09-22). Sections in a dialog do not need to clip; the
   dialog body does the scrolling, and the list drops down as it should. */
.fi-modal .fi-section{overflow:visible}

/* ---------- login: the website's sign-in card ---------- */
html:not(.dark) .fi-simple-layout{background-color:var(--erp-soft)!important;background-image:radial-gradient(60rem 30rem at 10% -10%,rgba(0,113,227,.10),transparent 60%),radial-gradient(50rem 26rem at 110% 110%,rgba(94,92,230,.10),transparent 60%)!important}
.fi-simple-main{border-radius:var(--erp-radius)!important}
html:not(.dark) .fi-simple-main{background:#fff;border:1px solid var(--erp-line-soft);box-shadow:var(--erp-shadow-hover)!important}
.fi-simple-header .fi-logo{filter:none}
html:not(.dark) .fi-simple-header-heading{color:var(--erp-ink);font-weight:700;letter-spacing:-.02em}
.erp-login-site{margin-top:.25rem;text-align:center;font-size:.85rem;color:var(--erp-ink-2)}
.erp-login-site a{color:var(--erp-blue);font-weight:500}

/* ---------- www.yorkn.com menu in the top bar (one website, 2026-10-10) ---------- */
.yk-sitelinks{display:flex;align-items:center;gap:.25rem;margin-left:1rem;min-width:0}
.yk-sitelinks>a{padding:.4rem .7rem;border-radius:980px;font-size:.85rem;font-weight:500;white-space:nowrap;color:var(--erp-ink);text-decoration:none}
.yk-sitelinks>a:hover{background:var(--erp-soft)}
html.dark .yk-sitelinks>a{color:#e5e7eb}
html.dark .yk-sitelinks>a:hover{background:rgba(255,255,255,.08)}
.yk-sitesearch input{width:13rem;height:2.1rem;padding:0 .9rem;border:1px solid var(--erp-line);border-radius:980px;background:var(--erp-soft);font-size:.85rem;color:inherit}
.yk-sitesearch input:focus{outline:none;border-color:var(--erp-blue);box-shadow:0 0 0 3px rgba(0,113,227,.18);background:#fff}
.yk-sitelinks>a.yk-site-account{color:var(--erp-blue);border:1px solid var(--erp-line)}
@media (max-width:1279px){.yk-sitelinks>a:not(.yk-site-account),.yk-sitesearch{display:none}}
@media (max-width:640px){.yk-sitelinks{display:none}}

/* ---------- order line items (.erp-lines): a two-row grid per line, no sideways scroll ---------- */
/* Denser again (Jake, 2026-09-13: "make each line more dense for all users"): the add-order
   repeater, the Edit line dialog (.erp-lines), the Lines table rows (.erp-line-row) and the
   view page's line table (.erp-lines-view). */
.erp-lines .fi-fo-repeater-items{gap:.35rem!important}
.erp-lines .fi-fo-repeater-item{padding:.3rem .6rem .4rem!important;border-radius:.5rem}
.erp-lines .fi-fo-repeater-item-header{padding:0 0 .15rem!important;min-height:0}
.erp-lines .fi-fo-repeater-item-header-label{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}
.erp-lines .fi-fo-field-label,.erp-lines .fi-fo-field-wrp-label,.erp-lines .fi-fo-field-label-content{font-size:.66rem!important;line-height:1.1!important;color:var(--gray-500)}
.erp-lines .fi-grid,.erp-lines .fi-sc,.erp-lines .fi-fo-repeater-item-content .fi-grid{gap:.3rem .45rem!important}
.erp-lines .fi-fo-field{gap:.05rem!important}
.erp-lines .fi-input,.erp-lines .fi-select-input{font-size:.8rem!important;padding-top:.2rem!important;padding-bottom:.2rem!important}
.erp-lines .fi-input-wrp{min-height:1.8rem}
.erp-lines .fi-fo-field-helper-text,.erp-lines .fi-fo-field-hint{font-size:.65rem!important;line-height:1.15;margin-top:0!important}
.erp-lines textarea.fi-input{line-height:1.25}
.erp-lines .fi-section-header{padding:.35rem .75rem!important}
.erp-lines .fi-section-content-ctn{padding:.5rem .75rem!important}
.erp-line-row .fi-ta-cell{padding-top:.2rem!important;padding-bottom:.2rem!important}
.erp-line-row .fi-ta-text{padding-top:0!important;padding-bottom:0!important;font-size:.82rem}
.erp-lines-view td,.erp-lines-view th{padding-top:.2rem!important;padding-bottom:.2rem!important;font-size:.82rem}

/* ---------- dense forms (.erp-dense): the product form has ~100 fields; keep them tight ---------- */
.erp-dense .fi-section-content-ctn{padding:.75rem 1rem!important}
.erp-dense .fi-section-header{padding:.5rem 1rem!important}
.erp-dense .fi-section-header-heading{font-size:.9rem!important}
.erp-dense .fi-section-header-description{font-size:.72rem!important}
.erp-dense .fi-section{margin-bottom:0}
.erp-dense .fi-grid,.erp-dense .fi-section-content{gap:.5rem .75rem!important;row-gap:.5rem!important}
.erp-dense .fi-fo-field{gap:.15rem!important}
.erp-dense .fi-fo-field-label-content{font-size:.78rem!important;font-weight:600}
.erp-dense .fi-input,.erp-dense .fi-select-input,.erp-dense .fi-fo-select .fi-select-input{font-size:.85rem!important;padding-top:.35rem!important;padding-bottom:.35rem!important}
.erp-dense .fi-input-wrp{min-height:2.1rem}
.erp-dense .fi-fo-field-helper-text,.erp-dense .fi-fo-field-hint,.erp-dense .fi-fo-field-label-ctn .fi-hint{font-size:.7rem!important;line-height:1.2}
.erp-dense textarea.fi-input{line-height:1.3}
/* picture / file dropzone: a slim bar, not a big empty box */
.fi-fo-file-upload .filepond--root{min-height:2.6rem!important;margin-bottom:0}
.fi-fo-file-upload .filepond--drop-label{min-height:2.6rem!important;font-size:.78rem;padding:0 .5rem}
.fi-fo-file-upload .filepond--drop-label label{padding:.35rem 0}
.fi-fo-file-upload .filepond--panel-root{border-radius:.6rem}
.fi-fo-file-upload .filepond--list-scroller{margin-top:.25rem}
.erp-dense .fi-fo-toggle{padding-top:.2rem}

/* Task comment modal: a five-line editor instead of a one-line strip. */
.fi-fo-rich-editor.erp-comment-editor .fi-fo-rich-editor-content {
    min-height: 8.5rem; /* about five lines */
}

/* Timesheet: rows not yet paid. Beats the striped / hover backgrounds. */
html:not(.dark) .fi-ta-row.erp-row-unpaid{background:#fff4e5!important}
html:not(.dark) .fi-ta-row.erp-row-unpaid:hover{background:#ffe8c7!important}
html.dark .fi-ta-row.erp-row-unpaid{background:rgba(245,158,11,.16)!important}

/* The inline comment box on a task (Jake, 2026-09-11): write where you read,
   no modal. Marked when it holds an existing comment so it is obvious you are
   editing rather than adding. */
.erp-comment-composer { padding: 0 0 1rem; border-bottom: 1px solid rgb(228 228 231); }
.erp-comment-composer--editing { border-left: 4px solid rgb(245 158 11); padding-left: .9rem; }
.erp-comment-composer__title { font-weight: 600; font-size: .875rem; margin: 0 0 .6rem; color: rgb(63 63 70); }
.erp-comment-composer--editing .erp-comment-composer__title { color: rgb(180 83 9); }
.erp-comment-composer__actions { display: flex; align-items: center; gap: .6rem; margin-top: .85rem; }
.erp-comment-composer__busy { font-size: .8rem; color: rgb(113 113 122); }
.dark .erp-comment-composer { border-bottom-color: rgb(63 63 70); }
.dark .erp-comment-composer__title { color: rgb(212 212 216); }
.dark .erp-comment-composer--editing .erp-comment-composer__title { color: rgb(252 211 77); }

/* Product order history under the product name (Jake, 2026-09-18): how many
   orders this item has had, and how long they take to ship. */
.erp-prodstats { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .55rem; }
.erp-prodstat {
    display: flex; flex-direction: column; gap: .05rem;
    padding: .35rem .7rem; border-radius: .7rem; line-height: 1.25;
    border: 1px solid rgb(228 228 231); background: #fff;
    box-shadow: 0 1px 2px rgba(11, 42, 91, .06);
}
.erp-prodstat b { font-size: .95rem; font-weight: 800; color: var(--erp-navy); }
.erp-prodstat i { font-style: normal; font-size: .7rem; color: rgb(113 113 122); }
a.erp-prodstat { text-decoration: none; transition: transform .12s ease, box-shadow .12s ease; }
a.erp-prodstat:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(11, 42, 91, .16); }
.erp-prodstat-orders { border-color: rgba(10, 111, 224, .35); background: linear-gradient(135deg, #eff6ff 0%, #f5f3ff 100%); }
.erp-prodstat-time { border-color: rgba(22, 163, 74, .35); background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%); }
.erp-prodstat-time b { color: #15803d; }
.dark .erp-prodstat { border-color: rgb(63 63 70); background: rgb(39 39 42); box-shadow: none; }
.dark .erp-prodstat b { color: rgb(219 234 254); }
.dark .erp-prodstat i { color: rgb(161 161 170); }
.dark .erp-prodstat-orders { border-color: rgba(56, 189, 248, .4); background: rgba(10, 111, 224, .18); }
.dark .erp-prodstat-time { border-color: rgba(34, 197, 94, .4); background: rgba(22, 163, 74, .18); }
.dark .erp-prodstat-time b { color: rgb(187 247 208); }

/* Page-header buttons wrap onto a second line instead of running off the right edge.
   Filament makes the actions box shrink-0; a shipped order carries enough buttons to push
   the last ones out of view on a laptop (same fix as stock.delite.ca, 2026-09-23). */
.fi-header{align-items:flex-start!important}
.fi-header-actions-ctn{flex-shrink:1!important;flex-wrap:wrap!important;min-width:0;justify-content:flex-end;row-gap:.5rem}
.fi-header-actions-ctn>.fi-ac{flex-wrap:wrap!important;justify-content:flex-end!important;row-gap:.5rem}

/* Warehouse tab on the product page (Jake, 2026-09-27): the Delite racks behind a
   Yorkn product, read-only. Tiles first, then a variant × rack table and the ledger. */
.erp-wh { display: flex; flex-direction: column; gap: .8rem; }
.erp-wh-empty { padding: .9rem 1rem; border-radius: .8rem; border: 1px dashed rgb(212 212 216); color: rgb(82 82 91); font-size: .9rem; line-height: 1.5; }
.erp-wh-empty code { font-family: ui-monospace, monospace; font-size: .85em; padding: .05rem .3rem; border-radius: .3rem; background: rgba(11, 42, 91, .06); }
.erp-wh-empty a { color: var(--erp-blue); font-weight: 600; text-decoration: underline; }
.erp-wh-error { border-color: rgba(245, 158, 11, .6); background: #fffbeb; color: #92400e; }
.erp-wh-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: .6rem; }
.erp-wh-title { display: flex; flex-direction: column; gap: .2rem; }
.erp-wh-kicker { font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; color: rgb(113 113 122); font-weight: 600; }
.erp-wh-name { font-size: 1.05rem; font-weight: 800; color: var(--erp-navy); text-decoration: none; }
.erp-wh-name:hover { text-decoration: underline; }
.erp-wh-skus { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .15rem; }
.erp-wh-sku { font-family: ui-monospace, monospace; font-size: .74rem; padding: .1rem .45rem; border-radius: 999px; border: 1px solid rgb(228 228 231); background: #fff; color: rgb(63 63 70); }
.erp-wh-sku i { font-style: normal; font-family: Inter, ui-sans-serif, sans-serif; font-size: .64rem; text-transform: uppercase; letter-spacing: .05em; color: rgb(161 161 170); margin-left: .15rem; }
.erp-wh-sku-yorkn { border-color: rgba(10, 111, 224, .45); background: #eff6ff; color: var(--erp-navy); }
.erp-wh-sku-yorkn i { color: var(--erp-blue); }
.erp-wh-sku-delite { border-color: rgba(217, 119, 6, .4); background: #fffbeb; color: #78350f; }
.erp-wh-sku-set { border-color: rgba(124, 58, 237, .4); background: #f5f3ff; color: #5b21b6; }
.erp-wh-sku-off { border-color: rgba(239, 68, 68, .4); background: #fef2f2; color: #991b1b; }
.erp-wh-manage { align-self: center; font-size: .8rem; font-weight: 700; color: #fff; text-decoration: none; padding: .45rem .95rem; border-radius: 999px; background: var(--erp-grad); box-shadow: 0 4px 14px rgba(10, 111, 224, .28); transition: transform .12s ease, box-shadow .12s ease; }
.erp-wh-manage:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(10, 111, 224, .35); }
.erp-wh-tiles { display: flex; flex-wrap: wrap; gap: .5rem; }
.erp-wh-tile { display: flex; flex-direction: column; gap: .05rem; min-width: 5.5rem; padding: .45rem .8rem; border-radius: .75rem; line-height: 1.2; border: 1px solid rgb(228 228 231); background: #fff; box-shadow: 0 1px 2px rgba(11, 42, 91, .06); }
.erp-wh-tile b { font-size: 1.15rem; font-weight: 800; color: var(--erp-navy); font-variant-numeric: tabular-nums; }
.erp-wh-tile i { font-style: normal; font-size: .68rem; color: rgb(113 113 122); }
.erp-wh-tile-available { border-color: rgba(22, 163, 74, .4); background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%); }
.erp-wh-tile-available b { color: #15803d; }
.erp-wh-tile-reserved { border-color: rgba(245, 158, 11, .45); background: #fffbeb; }
.erp-wh-tile-reserved b { color: #b45309; }
.erp-wh-tile-wh { border-color: rgba(10, 111, 224, .3); background: linear-gradient(135deg, #eff6ff 0%, #f5f3ff 100%); }
.erp-wh-note { padding: .55rem .8rem; border-radius: .7rem; border: 1px solid rgba(245, 158, 11, .5); background: #fffbeb; color: #78350f; font-size: .82rem; }
.erp-wh-table { width: 100%; font-size: .85rem; border-collapse: collapse; }
.erp-wh-table th { text-align: left; font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; color: rgb(113 113 122); padding: .3rem .5rem; border-bottom: 1px solid rgb(228 228 231); }
.erp-wh-table td { padding: .4rem .5rem; border-bottom: 1px solid rgb(244 244 245); vertical-align: top; }
.erp-wh-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.erp-wh-table .mono { font-family: ui-monospace, monospace; font-size: .78rem; }
.erp-wh-row-off td { color: rgb(161 161 170); }
.erp-wh-default { font-style: normal; font-size: .64rem; text-transform: uppercase; letter-spacing: .05em; color: rgb(161 161 170); margin-left: .3rem; }
.erp-wh-rack { display: inline-flex; gap: .3rem; align-items: baseline; margin: .1rem .3rem .1rem 0; padding: .08rem .5rem; border-radius: .45rem; background: rgba(11, 42, 91, .07); font-family: ui-monospace, monospace; font-size: .78rem; color: var(--erp-navy); }
.erp-wh-rack b { font-weight: 800; }
.erp-wh-rack i { font-style: normal; font-family: Inter, ui-sans-serif, sans-serif; font-size: .66rem; color: #b45309; }
.erp-wh-muted { color: rgb(161 161 170); font-size: .8rem; }
.erp-wh-sub { font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; color: rgb(113 113 122); font-weight: 600; margin-top: .2rem; }
.erp-wh-list { margin: 0; padding-left: 1rem; font-size: .85rem; line-height: 1.6; }
.erp-wh-moves { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .15rem; font-size: .82rem; }
.erp-wh-moves li { display: flex; flex-wrap: wrap; gap: .45rem; align-items: baseline; padding: .25rem .4rem; border-radius: .5rem; }
.erp-wh-moves li:nth-child(odd) { background: rgba(11, 42, 91, .035); }
.erp-wh-qty { min-width: 3.2rem; text-align: right; font-weight: 800; font-variant-numeric: tabular-nums; }
.erp-wh-qty.in { color: #15803d; }
.erp-wh-qty.out { color: #b91c1c; }
.erp-wh-move-type { font-weight: 600; color: var(--erp-navy); }
.erp-wh-when { margin-left: auto; color: rgb(161 161 170); font-size: .74rem; }
.dark .erp-wh-empty { border-color: rgb(63 63 70); color: rgb(161 161 170); }
.dark .erp-wh-empty code { background: rgba(255, 255, 255, .08); }
.dark .erp-wh-error { background: rgba(245, 158, 11, .12); color: #fcd34d; }
.dark .erp-wh-name, .dark .erp-wh-move-type { color: rgb(219 234 254); }
.dark .erp-wh-sku, .dark .erp-wh-tile { border-color: rgb(63 63 70); background: rgb(39 39 42); color: rgb(212 212 216); box-shadow: none; }
.dark .erp-wh-sku-yorkn { background: rgba(10, 111, 224, .18); color: rgb(219 234 254); }
.dark .erp-wh-sku-delite { background: rgba(217, 119, 6, .18); color: #fcd34d; }
.dark .erp-wh-sku-set { background: rgba(124, 58, 237, .2); color: #ddd6fe; }
.dark .erp-wh-sku-off { background: rgba(239, 68, 68, .18); color: #fecaca; }
.dark .erp-wh-tile b { color: rgb(219 234 254); }
.dark .erp-wh-tile-available { background: rgba(22, 163, 74, .16); }
.dark .erp-wh-tile-available b { color: rgb(187 247 208); }
.dark .erp-wh-tile-reserved { background: rgba(245, 158, 11, .14); }
.dark .erp-wh-tile-reserved b { color: #fcd34d; }
.dark .erp-wh-tile-wh { background: rgba(10, 111, 224, .16); }
.dark .erp-wh-note { background: rgba(245, 158, 11, .12); color: #fcd34d; }
.dark .erp-wh-table th { border-color: rgb(63 63 70); }
.dark .erp-wh-table td { border-color: rgb(39 39 42); }
.dark .erp-wh-rack { background: rgba(255, 255, 255, .08); color: rgb(219 234 254); }
.dark .erp-wh-moves li:nth-child(odd) { background: rgba(255, 255, 255, .04); }

/* "Send payout" on the timesheet (Jake, 2026-10-04): Apple-blue → indigo pill, lifts on hover. */
.yk-wise-btn,.fi-modal .yk-wise-send{background:linear-gradient(135deg,#0071e3 0%,#5e5ce6 100%)!important;color:#fff!important;border:0!important;border-radius:980px!important;font-weight:600!important;letter-spacing:-.01em;box-shadow:0 6px 18px rgba(0,113,227,.28)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.yk-wise-btn:hover,.fi-modal .yk-wise-send:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(94,92,230,.34)!important}
.yk-wise-btn .fi-icon,.fi-modal .yk-wise-send .fi-icon{color:#fff!important}
.fi-modal .yk-wise-send{padding-left:1.6rem!important;padding-right:1.6rem!important}
.fi-modal .yk-wise-cancel{border-radius:980px!important;background:#f5f5f7!important;box-shadow:none!important;color:#1d1d1f!important;font-weight:600!important}
html.dark .fi-modal .yk-wise-cancel{background:rgba(255,255,255,.08)!important;color:#f5f5f7!important}

/* Task attachments (erp-files-dense): the ticked "Currently attached" pictures packed
   side by side instead of spread over the page width, each name on one line
   (Jake, 2026-10-09: "make the attached pictures smaller, more dense"). */
.fi-fo-checkbox-list-options.erp-files-dense{display:flex!important;flex-wrap:wrap;gap:.6rem .9rem}
.erp-files-dense .fi-fo-checkbox-list-option{gap:.35rem}
.erp-files-dense .fi-fo-checkbox-list-option-label img,.erp-files-dense .fi-fo-checkbox-list-option-label a>div{width:64px!important;height:64px!important}
.erp-files-dense .fi-fo-checkbox-list-option-label>div{max-width:64px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px!important}

/* No Yorkn logo in the menu or top bar (Jake, 2026-10-10): the website header above already carries
   it. The login card keeps its own. */
.fi-sidebar-header .fi-logo,.fi-topbar .fi-logo{display:none!important}
/* One profile icon (Jake, 2026-10-10): the website header's 👤 menu replaces Filament's avatar menu. */
.fi-topbar .fi-user-menu,.fi-topbar .fi-dropdown:has(.fi-user-avatar){display:none!important}
/* Product edit: Save Changes floats on the right edge, Apple-style frosted ring (Jake, 2026-10-11) */
.fi-btn.yk-float-save{position:fixed!important;right:1.5rem;top:50%;transform:translateY(-50%);z-index:40;border-radius:980px!important;padding:.85rem 1.5rem!important;font-weight:600!important;font-size:.95rem!important;letter-spacing:-.01em;color:#fff!important;background:var(--erp-grad)!important;box-shadow:0 0 0 6px rgba(255,255,255,.72),0 0 0 7px rgba(0,0,0,.06),0 18px 40px rgba(0,113,227,.32)!important;transition:transform .2s ease,box-shadow .2s ease}
.fi-btn.yk-float-save:hover{transform:translateY(-50%) scale(1.04);box-shadow:0 0 0 7px rgba(255,255,255,.8),0 0 0 8px rgba(0,0,0,.06),0 22px 48px rgba(94,92,230,.38)!important}
.fi-btn.yk-float-save .fi-icon,.fi-btn.yk-float-save .fi-btn-label{color:#fff!important}
html.dark .fi-btn.yk-float-save{box-shadow:0 0 0 6px rgba(28,28,30,.72),0 0 0 7px rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.5)!important}
@media (max-width:640px){.fi-btn.yk-float-save{top:auto;bottom:1rem;right:1rem;transform:none}.fi-btn.yk-float-save:hover{transform:scale(1.04)}}
/* ---------- inline line box on the order page (Jake, 2026-10-11: no Edit line pop-up) ---------- */
.yk-line-box-wrap{padding:0 16px 14px}
.yk-line-box{position:relative;padding:14px 16px 14px 20px;border-radius:var(--erp-radius-sm);background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(12px);border:1px solid var(--erp-line-soft);box-shadow:var(--erp-shadow);overflow:hidden;text-align:left}
.yk-line-box::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--erp-grad)}
.yk-line-box--editing::before{background:linear-gradient(180deg,#ff9f0a 0%,#ff6b00 100%)}
.yk-line-box__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}
.yk-line-box__title{font-weight:700;font-size:.9rem;letter-spacing:-.01em;color:var(--erp-ink)}
.yk-line-box__hint{font-size:.72rem;color:var(--erp-ink-3)}
.yk-line-box__actions{display:flex;align-items:center;gap:8px;margin-top:12px}
.yk-line-box__busy{font-size:.78rem;color:var(--erp-ink-3)}
.dark .yk-line-box{background:rgba(28,28,30,.86);border-color:rgba(255,255,255,.08)}
.dark .yk-line-box__title{color:#f5f5f7}
