/* Shared ERP primitives. Loaded in HEAD, screen only; no DOM rebuilding. */
/* Opt-in action menus: one surface and a shared icon/text grid. */
@media screen {
html:root body .sc-action-disclosure{position:relative;flex:none}
html:root body .sc-action-disclosure>summary{display:flex;align-items:center;justify-content:center;gap:5px;width:max-content;min-width:0!important;max-width:none;height:36px;min-height:36px;padding:0 7px!important;margin:0;line-height:1.2;list-style:none}
html:root body .sc-action-disclosure>summary .sc-ui-icon{width:16px;height:16px;flex:0 0 16px;margin:0}
html:root body .sc-action-disclosure:not([open])>.sc-action-menu-panel{display:none}
html:root body .sc-action-menu-panel{position:absolute;z-index:60;inset-inline-end:0;top:calc(100% + 6px);width:max-content;min-width:200px;max-width:calc(100vw - 28px);padding:5px;border:1px solid var(--sc-border);border-radius:9px;background:var(--sc-surface);box-shadow:0 6px 20px #0003}
html:root body .sc-action-menu-panel form{display:block;width:100%;margin:0;padding:0}
html:root body .sc-action-menu-panel button{display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:center;justify-content:normal!important;gap:9px!important;width:100%!important;min-width:0!important;min-height:36px;height:auto!important;padding:8px 9px!important;margin:0!important;border:0!important;border-radius:6px!important;box-shadow:none!important;background:transparent!important;color:var(--sc-text)!important;text-align:start!important;font-size:12px!important;font-weight:500!important;line-height:1.35!important;white-space:normal!important;cursor:pointer}
html:root body .sc-action-menu-panel button>.sc-ui-icon{width:18px!important;height:18px!important;margin:0!important;display:block;position:static;transform:none;align-self:center}
html:root body .sc-action-menu-panel button:hover{background:var(--sc-soft)!important}
html:root body .sc-action-menu-panel button:focus-visible{outline:2px solid var(--sc-accent);outline-offset:-2px}
html:root body .sc-action-menu-panel .sc-action-menu-danger{border-top:1px solid var(--sc-border);margin-top:4px;padding-top:4px}
html:root body .sc-action-menu-panel .sc-action-menu-danger button{color:var(--ui-danger)!important}
html:root body .sc-action-menu-panel button:disabled{opacity:.45;cursor:not-allowed}
html:root body .sc-money-display{white-space:nowrap;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
html:root body .sc-money-unit{font-size:max(11px,.82em);font-weight:400;color:var(--sc-muted)}
/* Compact table scrolling uses the same theme with a quieter thumb. */
html:root body .sc-table-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--sc-muted) 40%,var(--sc-surface)) var(--sc-surface)}
html:root body .sc-table-scroll::-webkit-scrollbar{height:6px;width:6px}
html:root body .sc-table-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--sc-muted) 40%,var(--sc-surface));border-radius:8px}
html:root body .sc-table-scroll::-webkit-scrollbar-button{display:none;width:0;height:0}
@media(pointer:coarse){html:root body .sc-action-menu-panel button{min-height:44px}}
}
@media screen {
    :root {
        --ui-height:40px; --ui-radius:8px; --ui-card-radius:12px;
        --ui-surface:var(--sc-surface,#fff); --ui-field:var(--sc-bg,#f4f6fb);
        --ui-text:var(--sc-text,#17233b); --ui-muted:var(--sc-muted,#586780);
        --ui-border:var(--sc-border,#dce3ee); --ui-soft:var(--sc-soft,#eef1f7);
        --ui-primary:var(--sc-topbar-primary,#7351d7); --ui-focus:var(--sc-accent,#7351d7);
        --ui-danger:#b42335;
    }
    :root[data-theme=dark] { --ui-danger:#ffacbb; }
    /* One checkbox model for native controls and legacy iCheck skins.
       Keep iCheck's hidden input/helper and events untouched. */
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input),
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]) {
        appearance:none; -webkit-appearance:none; box-sizing:border-box;
        display:inline-block; width:18px!important; height:18px!important; min-width:18px; min-height:18px;
        padding:0!important; border:1px solid var(--ui-muted)!important; border-radius:4px!important;
        background-color:var(--ui-field)!important; background-image:none!important;
        background-position:center!important; background-size:14px 14px!important; background-repeat:no-repeat!important;
        box-shadow:none!important; vertical-align:middle; cursor:pointer; flex-shrink:0;
        accent-color:var(--ui-primary);
    }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):is(:checked,:indeterminate),
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]):is(.checked,.indeterminate) {
        background-color:var(--ui-primary)!important; border-color:var(--ui-primary)!important;
    }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):checked,
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]).checked {
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
    }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):indeterminate,
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]).indeterminate {
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8h8' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")!important;
    }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):hover:not(:disabled),
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]):is(:hover,.hover):not(.disabled) { border-color:var(--ui-focus)!important; }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):focus-visible,
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]):is(.focus,:has(input:focus-visible)) { outline:2px solid var(--ui-focus)!important; outline-offset:3px; }
    html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input):disabled,
    html body :is([class^="icheckbox_"],[class*=" icheckbox_"]).disabled { opacity:.45; cursor:not-allowed; }
    @media(forced-colors:active) {
        html body input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not([class*="icheckbox"] input) { appearance:auto; background-image:none!important; }
        html body :is([class^="icheckbox_"],[class*=" icheckbox_"]) { forced-color-adjust:none; background-color:Canvas!important; border-color:CanvasText!important; }
        html body :is([class^="icheckbox_"],[class*=" icheckbox_"]):is(.checked,.indeterminate) { background-color:Highlight!important; }
    }
    html body :is(.btn,.tw-dw-btn,.dt-button) {
        border-radius:var(--ui-radius)!important; font-size:12px; font-weight:500;
        line-height:20px; height:auto; min-height:36px; padding:7px 10px;
        box-shadow:none; text-transform:none; transition:background-color .15s,border-color .15s;
    }
    html body :is(.btn-default,.btn-neutral,.tw-dw-btn-neutral,.tw-dw-btn-ghost,.tw-dw-btn-outline,.dt-button) {
        background:var(--ui-surface)!important; color:var(--ui-text)!important; border:1px solid var(--ui-border)!important;
    }
    html body :is(.btn-primary,.tw-dw-btn-primary,.tw-dw-btn.tw-from-indigo-600) {
        background:var(--ui-primary)!important; color:#fff!important; border:1px solid transparent!important;
    }
    html body :is(.btn-default,.btn-neutral,.tw-dw-btn-neutral,.tw-dw-btn-ghost,.tw-dw-btn-outline,.dt-button):not(:disabled):not(.disabled):not([aria-disabled=true]):hover {
        background:var(--ui-soft)!important; border-color:var(--ui-focus)!important;
    }
    html body :is(.btn-primary,.tw-dw-btn-primary,.tw-dw-btn.tw-from-indigo-600):not(:disabled):not(.disabled):not([aria-disabled=true]):hover { background:var(--sc-topbar-primary-hover,#6240c4)!important; }
    html body :is(.btn-danger,.tw-dw-btn-error) { background:var(--ui-surface)!important; border:1px solid color-mix(in srgb,var(--ui-danger) 45%,var(--ui-border))!important; color:var(--ui-danger)!important; }
    html body :is(.btn-danger,.tw-dw-btn-error):not(:disabled):not(.disabled):not([aria-disabled=true]):hover { background:#b42335!important; border-color:#b42335!important; color:#fff!important; }
    html body :is(.btn-sm,.btn-xs,.tw-dw-btn-sm,.tw-dw-btn-xs) { min-height:32px; padding:5px 8px; }
    html body .input-group-btn>.btn { min-height:var(--ui-height); padding:5px 10px; }
    html body :is(.btn,.tw-dw-btn,.dt-button):is(:disabled,.disabled) { opacity:.55; cursor:not-allowed; }
    html body :is(.form-control,.select2-selection--single,.dataTables_filter input,.dataTables_length select) {
        height:var(--ui-height); min-height:var(--ui-height); border-radius:var(--ui-radius)!important;
        border:1px solid var(--ui-border)!important; background-color:var(--ui-field)!important;
        color:var(--ui-text)!important; font-size:13px; box-shadow:none!important;
    }
    html body .form-control { padding:8px 12px; }
    html body textarea.form-control { height:auto; min-height:88px; line-height:1.5; resize:vertical; }
    html body select.form-control[multiple] { height:auto; min-height:80px; }
    html body input[type=file].form-control { height:auto; }
    html body .form-control:is([readonly],[disabled]) { background-color:var(--ui-soft)!important; }
    html body .form-control:disabled { opacity:.65; }
    html body .form-control::placeholder { color:var(--ui-muted); opacity:.8; }
    html body select.form-control:not([multiple]):not(.select2-hidden-accessible) {
        appearance:none; padding-inline-end:32px;
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='16' height='16'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%238b8699' stroke-width='1.8'/%3E%3C/svg%3E");
        background-repeat:no-repeat; background-position:right 10px center;
    }
    html[dir=rtl] body select.form-control:not([multiple]) { background-position:left 10px center; }
    /* Legacy Select2 themes add padding and a negative text margin. Keep one
       centering rule for every single-value selector, including input groups. */
    html body .select2-selection--single { display:flex!important; align-items:center!important; padding:0!important; }
    html body .form-group>.select2-container, html body .input-group>.select2-container { width:100%!important; min-width:0; }
    html body .select2-selection--single .select2-selection__rendered {
        display:block!important; width:100%; margin:0!important; padding:0 32px 0 12px!important;
        line-height:20px!important; color:var(--ui-text)!important;
    }
    html body .select2-selection--single .select2-selection__arrow {
        top:0; right:8px; height:100%!important; width:16px; display:flex; align-items:center; justify-content:center;
    }
    html body .select2-selection--single .select2-selection__arrow b {
        position:static!important; width:7px!important; height:7px!important; flex:0 0 7px; margin:-4px 0 0!important;
        border:solid var(--ui-muted)!important; border-width:0 1.5px 1.5px 0!important; transform:rotate(45deg);
    }
    html body .select2-container--open .select2-selection__arrow b { transform:rotate(225deg); margin-top:4px; }
    html[dir=rtl] body .select2-selection__arrow { right:auto; left:8px; }
    html body .select2-selection--multiple { min-height:var(--ui-height); border-radius:8px!important; border:1px solid var(--ui-border)!important; background:var(--ui-field)!important; }
    html body .select2-selection__choice { background:var(--ui-soft)!important; color:var(--ui-text)!important; border:1px solid var(--ui-border)!important; border-radius:6px; }
    html body .select2-selection__choice__remove { color:var(--ui-muted)!important; }
    html body .select2-dropdown, html body .ui-autocomplete { border:1px solid var(--ui-border)!important; border-radius:8px; background:var(--ui-surface)!important; color:var(--ui-text)!important; }
    html body .select2-results__option { padding:10px 12px; color:var(--ui-text)!important; }
    html body .select2-results__option[aria-selected=true] { background:var(--ui-soft)!important; }
    html body .select2-results__option--highlighted[aria-selected] { background:var(--ui-primary)!important; color:white!important; }
    html body .select2-results__option[aria-disabled=true] { opacity:.55; }
    html body .select2-search__field { border-radius:6px; border-color:var(--ui-border)!important; background:var(--ui-field)!important; color:var(--ui-text)!important; }
    html body .ui-autocomplete :is(.ui-state-active,.ui-state-focus) { background:var(--ui-soft)!important; color:var(--ui-text)!important; border-color:var(--ui-border)!important; }
    html body .form-group { margin-bottom:16px; }
    html body .form-group>label, html body .form-group>.sc-field-label>label { font-size:12px; font-weight:500; color:var(--ui-muted); margin-bottom:8px; }
    html body .help-block { font-size:11px; line-height:1.5; color:var(--ui-muted); }
    html body .hover-q { color:var(--ui-muted)!important; opacity:.65; }
    html body .hover-q:hover { opacity:1; }
    html body .input-group { border-radius:8px; }
    html body .input-group-addon { background:var(--ui-soft)!important; border:1px solid var(--ui-border)!important; color:var(--ui-muted)!important; padding:8px 12px; }
    html body .input-group>:first-child { border-start-start-radius:8px!important; border-end-start-radius:8px!important; }
    html body .input-group>:last-child { border-start-end-radius:8px!important; border-end-end-radius:8px!important; }
    html body .input-group>.form-control:not(:first-child) { border-start-start-radius:0!important; border-end-start-radius:0!important; }
    html body .input-group>.form-control:not(:last-child) { border-start-end-radius:0!important; border-end-end-radius:0!important; }
    html body .input-group .select2-selection { border-start-start-radius:0!important; border-end-start-radius:0!important; }
    html body .input-group:has(input#search_product:not([type=hidden])) { border:1px solid var(--ui-border); background:var(--ui-field); border-radius:8px; }
    html body .input-group:has(input#search_product) :is(.form-control,.input-group-addon,.input-group-btn>.btn) { border:0!important; height:var(--ui-height); min-height:var(--ui-height); background:transparent!important; color:var(--ui-text)!important; }
    html body .input-group:has(input#search_product) .input-group-btn>.btn:hover { background:var(--ui-soft)!important; }
    html body :is(.btn,.tw-dw-btn,.form-control,.select2-selection,.dt-button):focus-visible { outline:2px solid var(--ui-focus)!important; outline-offset:2px; }
    html body .form-control:focus { border-color:var(--ui-focus)!important; }
    html body .has-error .form-control, html body .form-control.error { border-color:var(--ui-danger)!important; }
    html body label.error { font-size:12px; color:var(--ui-danger)!important; margin-top:8px; }
    html body .modal-content { border:1px solid var(--ui-border); border-radius:12px!important; background:var(--ui-surface)!important; color:var(--ui-text); }
    html body .modal-header { padding:16px 24px; border-radius:12px 12px 0 0; border-color:var(--ui-border); background:var(--ui-surface)!important; }
    html body .modal-title { font-size:22px; font-weight:600; line-height:1.4; color:var(--ui-text); }
    html body .modal-body { padding:24px; background:var(--ui-surface)!important; }
    html body .modal-footer { padding:16px 24px; border-radius:0 0 12px 12px; background:var(--ui-surface)!important; border-color:var(--ui-border); }
    html body .modal-footer :is(.btn,.tw-dw-btn) { min-height:36px; margin-inline-start:8px; }
    html:root body .modal-content :is(.modal-header,.modal-body,.modal-footer) { background:var(--ui-surface)!important; }
    html body .modal .close { color:var(--ui-muted); opacity:1; }
    html body .modal .form-group { min-width:0; }
    html body .modal .row { margin-inline:-8px; }
    html body .modal [class*="col-"] { padding-inline:8px; }
    html body .modal .select2-container { max-width:100%; }
    html body :is(.box,.panel,.card) { border-radius:12px; }
    html body :is(.nav-tabs-custom,.nav-tabs-custom>.tab-content) { background:var(--ui-surface); color:var(--ui-text); border-radius:12px; }
    html body .nav-tabs-custom>.nav-tabs>li>a { color:var(--ui-muted); }
    html body .nav-tabs-custom>.nav-tabs>li.active { border-top-color:var(--ui-primary); }
    /* Responsive wrappers provide scrolling, not a second light Bootstrap frame. */
    html body .table-responsive { border:0; }
    html body .table-bordered, html body .table-bordered>thead>tr>th, html body .table-bordered>tbody>tr>td { border-color:var(--ui-border); }
    html body .table>thead { background:var(--ui-soft); color:var(--ui-text); }
    html body .tw-ring-gray-200 { --tw-ring-color:var(--ui-border); }
    html body .content-header>h1 { font-size:26px; line-height:1.25; font-weight:600; color:var(--ui-text); }
    html body .content-header h1, html body h1.tw-text-black { color:var(--ui-text)!important; }
    html body :is(.box-title,.panel-title) { font-size:18px; font-weight:600; color:var(--ui-text); }
    html body .dropdown-menu { border:1px solid var(--ui-border); border-radius:8px; background:var(--ui-surface)!important; color:var(--ui-text); }
    html body .dropdown-menu>li>a { color:var(--ui-text); padding:8px 12px; }
    html body .dropdown-menu>li>a:is(:hover,:focus), html body .dt-button-collection .active>a { background:var(--ui-soft)!important; color:var(--ui-text)!important; }
    /* DataTables collections also live outside list wrappers (notably on Home).
       Keep one shared menu surface; the POS layout remains excluded. */
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu { background:var(--ui-surface)!important; color:var(--ui-text); border:1px solid var(--ui-border); border-radius:8px; padding:6px!important; max-height:60vh; overflow:auto; box-shadow:0 8px 24px #0003; }
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li { position:relative; display:block; padding:0!important; margin:0!important; background:transparent!important; border:0!important; border-radius:0!important; box-shadow:none!important; }
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li>a { position:relative; display:block; padding:8px 32px 8px 10px!important; margin:0!important; border:0!important; border-radius:4px!important; background:transparent!important; color:var(--ui-text)!important; box-shadow:none!important; font-size:13px; line-height:20px; }
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li:is(:hover,:focus-visible)>a,
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li>a:is(:hover,:focus-visible) { background:var(--ui-soft)!important; }
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li:focus-visible,
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li>a:focus-visible { outline:2px solid var(--ui-focus); outline-offset:-2px; border-radius:4px!important; }
    html body:not(.lockscreen) .dt-button-collection.dropdown-menu>li.buttons-columnVisibility.active>a::after { content:'✓'; position:absolute; inset-inline-end:10px; top:50%; transform:translateY(-50%); color:var(--ui-focus); font-weight:600; }
    /* Legacy settings tabs share these primitives across ERP modules. */
    html body :is(.pos-tab-container,.pos-tab-content) { background:var(--ui-surface)!important; color:var(--ui-text); border-color:var(--ui-border); box-shadow:none; }
    html body .pos-tab-content { padding:20px; }
    html body .pos-tab-menu .list-group>a { background:var(--ui-surface); color:var(--ui-muted); border-color:var(--ui-border); text-align:start; padding:12px; }
    html body .pos-tab-menu .list-group>a:is(:hover,:focus-visible) { background:var(--ui-soft); color:var(--ui-text); }
    html body .pos-tab-menu .list-group>a.active { background:var(--ui-primary)!important; color:#fff!important; border-color:var(--ui-primary); }
    html body .input-group:has(>.select2-container) { display:flex; width:100%; min-width:0; }
    html body .input-group>.select2-container { flex:1 1 0%; width:0!important; }
    html body .input-group:has(>.select2-container)>:is(.input-group-addon,.input-group-btn) { display:flex; align-items:center; justify-content:center; width:auto; flex:0 0 auto; }
    html body .select2-selection__rendered { min-width:0; }
    html body .file-caption-main { display:flex; width:100%; gap:0; }
    html body .file-caption-main>.file-caption { flex:1 1 0%; min-width:0; width:auto; }
    html body .file-caption-main>.input-group-btn { display:flex; width:auto; flex:0 0 auto; }
    html body .file-caption-main .btn-file { display:inline-flex; align-items:center; gap:6px; min-height:var(--ui-height); }
    html body .pos-tab-content :is(.well,.panel,.panel-heading,.panel-body) { background:var(--ui-surface); color:var(--ui-text); border-color:var(--ui-border); }
    html body .pos-tab-content .form-group>label { display:inline; }
    html body .pos-tab-content .form-group>:is(.input-group,.form-control,.select2-container) { margin-top:8px; }
    @media(min-width:768px) and (max-width:1199px) {
        html body .pos-tab-content>.row>[class*="col-"]:is(.col-sm-4,.col-md-4) { width:50%; }
        html body .pos-tab-content>.row { display:flex; flex-wrap:wrap; }
        html body .pos-tab-content>.row>.clearfix { display:none; }
    }
    @media(max-width:767px) {
        html body .pos-tab-menu, html body .pos-tab { width:100%; float:none; }
        html body .pos-tab-menu .list-group { display:flex; overflow-x:auto; }
        html body .pos-tab-menu .list-group>a { flex:0 0 auto; }
        html body .pos-tab-content { padding:16px 0; }
    }
    html body .multi-input { column-gap:8px; }
    html body .multi-input:has(>.width-40):has(>.width-60)>.width-40 { width:calc(40% - 4px)!important; margin-inline-end:8px; }
    html body .multi-input:has(>.width-40):has(>.width-60)>.width-60 { width:calc(60% - 4px)!important; }
    @media(max-width:767px) {
        :root { --ui-height:44px; }
        html body .modal-dialog { margin:8px; width:auto; max-width:calc(100% - 16px); }
        html body :is(.modal-header,.modal-body,.modal-footer) { padding:16px; }
        html body .modal-footer :is(.btn,.tw-dw-btn) { min-height:36px; }
    }
    @media(prefers-reduced-motion:reduce) { html body :is(.btn,.tw-dw-btn,.dt-button) { transition:none; } }
}
/* Date picker states use the shared palette throughout the ERP. */
@media screen {
 html body .daterangepicker { background:var(--ui-surface); color:var(--ui-text); border-color:var(--ui-border); border-radius:12px; }
 html body .daterangepicker.sc-date-popover { position:fixed;left:var(--sc-date-left)!important;right:auto!important;top:var(--sc-date-top)!important;margin:0;max-width:calc(100vw - 16px);border-radius:9px;box-shadow:0 5px 18px #211b3129;font-family:inherit; }
 html[data-theme="dark"] body .daterangepicker.sc-date-popover { box-shadow:0 0 14px #c8afff26; }
 html body .daterangepicker.sc-date-popover:not(.show-calendar) { width:max-content;min-width:0; }
 /* Explicit width avoids fixed-position shrink-to-fit against the old menu's
    right edge when the calendars appear. Keep actions reachable while scrolling. */
 html body .daterangepicker.sc-date-popover { max-height:calc(100dvh - 16px);overflow:auto;scrollbar-width:thin; }
 html body .daterangepicker.sc-date-popover.show-calendar { width:730px; }
 html body .daterangepicker.sc-date-popover.show-calendar:not(.show-ranges) { width:532px; }
 html body .daterangepicker.sc-date-popover.show-calendar .ranges { width:198px;float:left; }
 html body .daterangepicker.sc-date-popover.show-calendar .drp-calendar { width:264px;max-width:none;float:left;clear:none!important;padding:8px; }
 html body .daterangepicker.sc-date-popover.single.show-calendar { width:266px; }
 html body .daterangepicker.sc-date-popover .calendar-table table { width:100%;table-layout:fixed;margin:0; }
 html body .daterangepicker.sc-date-popover .calendar-table th,
 html body .daterangepicker.sc-date-popover .calendar-table td { padding:0;height:32px;min-width:0;line-height:30px;text-align:center;font-size:12px; }
 html body .daterangepicker.sc-date-popover .calendar-table th.month { white-space:nowrap; }
 html body .daterangepicker.sc-date-popover select.monthselect,
 html body .daterangepicker.sc-date-popover select.yearselect { display:inline-flex!important;align-items:center;gap:2px;min-width:0;height:30px;padding:2px 4px;vertical-align:middle; }
 html body .daterangepicker.sc-date-popover .drp-buttons { position:sticky;bottom:0;background:var(--ui-surface);z-index:1;white-space:normal; }
 html body .daterangepicker.sc-date-popover .drp-selected { display:block;margin-bottom:6px; }
 html body .daterangepicker.sc-date-popover[data-sc-detached="true"]:after { display:none; }
 html body .daterangepicker.sc-date-popover .calendar-table :is(.prev,.next) span { border-color:var(--ui-text); }
 html body .daterangepicker.sc-date-popover :is(td,th,li)[tabindex]:focus-visible { outline:2px solid var(--ui-primary);outline-offset:-2px; }
 @media(min-width:760px) and (min-height:540px) {
  html body .daterangepicker.sc-date-popover { overflow:visible; }
 }
 @media(max-width:759px) {
  html body .daterangepicker.sc-date-popover.show-calendar { width:532px; }
  html body .daterangepicker.sc-date-popover.show-calendar .ranges { width:100%;max-height:102px;overflow:auto;float:none; }
  html body .daterangepicker.sc-date-popover.show-calendar .ranges ul { display:flex;flex-wrap:wrap;gap:2px;min-width:0; }
 }
 @media(max-width:559px) {
  html body .daterangepicker.sc-date-popover.show-calendar,
  html body .daterangepicker.sc-date-popover.show-calendar:not(.show-ranges) { width:340px; }
  html body .daterangepicker.sc-date-popover.show-calendar .drp-calendar { float:none;width:100%;border:0; }
  html body .daterangepicker.sc-date-popover .calendar-table td { height:40px; }
 }
 html body .daterangepicker.sc-date-popover .ranges { margin:0;padding:5px; }
 html body .daterangepicker.sc-date-popover .ranges ul { width:auto;min-width:180px;margin:0; }
 html body .daterangepicker.sc-date-popover .ranges li { padding:6px 10px;font-size:12px;line-height:16px;margin:0; }
 html body .daterangepicker.sc-date-popover .ranges li:hover:not(.active) { background:var(--ui-soft)!important;color:var(--ui-text)!important; }
 html body .daterangepicker.sc-date-popover:before { display:none; }
 html body .daterangepicker.sc-date-popover:after { left:var(--sc-date-arrow);right:auto;top:-5px;bottom:auto;margin:0;width:8px;height:8px;border:0;border-left:1px solid var(--ui-border);border-top:1px solid var(--ui-border);background:var(--ui-surface);transform:translateX(-50%) rotate(45deg); }
 html body .daterangepicker.sc-date-popover[data-sc-side="above"]:after { top:auto;bottom:-5px;transform:translateX(-50%) rotate(225deg); }
 html body .daterangepicker .ranges li { border-radius:6px; }
 html body .daterangepicker .ranges li:is(:hover,.active) { background:var(--ui-primary)!important; color:#fff!important; }
 html body .daterangepicker td:is(.active,.active:hover,.start-date,.end-date) { background:var(--ui-primary)!important; color:#fff!important; }
 html body .daterangepicker td.in-range:not(.active) { background:var(--ui-soft)!important; color:var(--ui-text)!important; }
 html body .daterangepicker .calendar-table { background:var(--ui-surface); border-color:var(--ui-surface); }
 html body .daterangepicker .drp-buttons { border-color:var(--ui-border); }
 html body .daterangepicker .applyBtn { background:var(--ui-primary)!important; border-color:var(--ui-primary)!important; color:#fff!important; }
}
@media screen {
 .sc-pos-entry .sc-ui-icon { width:20px; height:20px; vertical-align:middle; flex-shrink:0; }
 html body .sc-pos-entry .input-group { display:flex; align-items:stretch; width:100%; min-width:0; }
 html body .sc-pos-entry .input-group>.form-control:not([type=hidden]):not(.select2-hidden-accessible) { flex:1 1 0%; min-width:0; width:0; }
 html body .sc-pos-entry .input-group>.input-group-btn,html body .sc-pos-entry .input-group>.input-group-addon { display:flex; align-items:center; width:auto; flex:0 0 auto; }
 html body .sc-pos-entry .input-group .btn { display:inline-flex; align-items:center; justify-content:center; height:var(--ui-height); min-width:40px; padding:8px; color:var(--ui-muted)!important; }
 html body .sc-pos-entry .input-group .btn:hover { color:var(--ui-focus)!important; background:var(--ui-soft)!important; }
 html body .sc-pos-entry .form-group { margin-bottom:10px; }
 /* Semantic table emphasis: apply to rows and individual cells across ERP. */
 html[data-theme=dark] body .table :is(tr.success>td,tr.success>th,td.success,th.success) { background:#19382f!important; color:#bbefd7!important; border-color:#34564a!important; }
 html[data-theme=dark] body .table :is(tr.info>td,tr.info>th,td.info,th.info) { background:#252d49!important; color:#d0ddff!important; border-color:#424e70!important; }
 html[data-theme=dark] body .table :is(tr.danger>td,tr.danger>th,td.danger,th.danger) { background:#44252f!important; color:#ffd0db!important; border-color:#70424f!important; }
 html[data-theme=dark] body .table :is(tr.warning>td,tr.warning>th,td.warning,th.warning) { background:#3b3221!important; color:#f5dfab!important; border-color:#63573c!important; }
 html[data-theme=dark] body .table :is(tr.active>td,tr.active>th,td.active,th.active) { background:var(--ui-soft)!important; color:var(--ui-text)!important; border-color:var(--ui-border)!important; }
 html[data-theme=dark] body .modal .table { color:var(--ui-text); }
 html[data-theme=dark] body .modal hr { border-color:var(--ui-border); }
}
/* POS finishing: shared shape, quiet empty state and action hierarchy. */
@media screen {
 html body .sc-pos-topbar .sc-pos-brand { margin:3px 2px; }
 html body #sc-pos-profile>summary { border-radius:10px!important; overflow:hidden; padding:3px; }
 html body #sc-pos-profile>summary img { width:100%; height:100%; border-radius:7px!important; object-fit:cover; }
 html body #pos_table .pos-empty-state-row>td>div { padding:38px 20px; gap:12px; color:var(--ui-muted); }
 html body #pos_table .pos-empty-state-row>td>div>div:first-child { width:60px; height:60px; border-radius:16px; background:var(--ui-soft)!important; border:1px solid var(--ui-border); color:var(--ui-focus)!important; }
 html body #pos_table .pos-empty-state-row>td>div>div:nth-child(2) { color:var(--ui-text)!important; font-size:17px; font-weight:600; }
 html body #pos_table .pos-empty-state-row>td>div>div:last-child { color:var(--ui-muted)!important; font-size:13px; line-height:1.6; max-width:320px; }
 html body .pos-form-actions { background:var(--ui-surface)!important; border-top:1px solid var(--ui-border); }
 html body .pos-form-actions button { border-radius:8px!important; color:var(--ui-muted)!important; }
 html body .pos-form-actions button :is(i,svg) { color:inherit!important; }
 html body .pos-form-actions :is(.js-pos-cancel,.pos-finalize) { background:var(--ui-soft)!important; border:1px solid var(--ui-border)!important; color:var(--ui-text)!important; }
 html body .pos-form-actions [data-pay_method=cash] { background:var(--ui-primary)!important; border:1px solid var(--ui-primary)!important; color:#fff!important; }
 html body .pos-form-actions button:hover { background:var(--ui-soft)!important; color:var(--ui-focus)!important; }
 html body .pos-form-actions [data-pay_method=cash]:hover { background:var(--sc-topbar-primary-hover)!important; color:#fff!important; }
 html body .pos-form-actions .js-pos-delete { background:#b42335!important; color:#fff!important; }
 html body .pos-form-actions button:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
}
/* Compact POS basket: loaded with the shared theme before first paint. */
@media screen {
 html body #pos_table>thead>tr>th { background:var(--ui-soft)!important; color:var(--ui-muted)!important; border-color:var(--ui-border)!important; padding:5px 6px!important; }
 html body #pos_table>tbody>.product_row>td { padding:4px 6px!important; vertical-align:middle; border-color:var(--ui-border)!important; }
 html body #pos_table .product_row :is(.pos_quantity,.pos_unit_price,.pos_unit_price_inc_tax,.sub_unit,.quantity-up,.quantity-down) { min-height:32px!important; height:32px!important; padding:4px 6px!important; font-size:12px!important; line-height:20px!important; }
 html body #pos_table .product_row :is(.quantity-up,.quantity-down) { min-width:32px; color:var(--ui-focus)!important; border-color:var(--ui-border)!important; }
 html body #pos_table .product_row img[alt=product-img] { width:30px!important; height:30px!important; border-radius:6px!important; }
 html body #pos_table .product_row .text-link { color:var(--ui-focus)!important; }
 html body #pos_table .pos_remove_row { background:transparent!important; border:0!important; box-shadow:none!important; color:var(--ui-muted)!important; min-width:36px; min-height:36px; }
 html body #pos_table .pos_remove_row:hover { background:transparent!important; color:#e56b80!important; }
 html body #pos_table .pos_remove_row:focus-visible { outline:2px solid var(--ui-focus); outline-offset:1px; }
 html body .pos_form_totals { background:var(--ui-surface); border-color:var(--ui-border); }
 html body .pos_form_totals .pos_totals_left { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:var(--ui-border); }
 html body .pos_form_totals .pos_totals_cell { min-width:0; min-height:38px; padding:4px; background:var(--ui-surface); }
 html body .pos_form_totals .pos_totals_label { color:var(--ui-muted); font-size:9px; max-width:100%; }
 html body .pos_form_totals .pos_totals_value { color:var(--ui-text); font-size:13px; }
 html body .pos_form_totals .pos_totals_edit { color:var(--ui-focus); }
 html body .pos_form_totals .pos_totals_right { background:var(--ui-soft); border-color:var(--ui-border); margin-bottom:0!important; min-height:42px; padding:6px 12px; }
 html body .pos_form_totals .pos_totals_right_label { color:var(--ui-muted); font-size:10px; letter-spacing:.3px; }
 html body .pos_form_totals .pos_totals_right_value { color:var(--ui-focus); font-size:22px; }
 @media(min-width:768px) { html body .pos_form_totals .pos_totals_right { flex-basis:24%; } }
}
@media screen {
 html body .pos_form_totals .pos_totals_label { display:flex; align-items:center; justify-content:center; min-width:0; width:100%; overflow:visible; }
 html body .pos_form_totals .pos_totals_label>:is(.desktop-only,.mobile-only) { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 html body .pos_form_totals .pos_totals_edit { flex:0 0 auto; padding:3px; cursor:pointer; }
}
@media screen {
 html body #pos_table .sc-pos-quantity-control { display:flex; align-items:center; justify-content:center; gap:4px; }
 html body #pos_table .sc-pos-quantity-control .input-number { display:flex; width:124px; flex:0 0 auto; }
 html body #pos_table .sc-pos-quantity-control .pos_quantity { width:60px!important; min-width:0; flex:1 1 auto; border-radius:6px!important; }
 html body #pos_table .sc-pos-quantity-control .pos-unit-label { margin:0!important; color:var(--ui-muted)!important; font-size:10px; }
 html body #pos_table .sc-pos-quantity-control .sub_unit { width:64px!important; min-width:0; margin:0; padding:2px!important; }
 html body #pos_table .sc-pos-quantity { width:1%; }
 #sc-pos-catalogue,.sc-pos-total-chevron { display:none; }
 html body #mobile_product_suggestion_modal .modal-dialog { transform:none; }
 html body #mobile_product_suggestion_modal #pos_sidebar_wrap { display:block!important; width:100%!important; max-height:none; overflow:visible; }
 html body #mobile_product_suggestion_modal .pos-sidebar-root { overflow:visible!important; }
 html body #mobile_product_suggestion_modal .modal-content { background:var(--ui-surface); }
 @media(max-width:767px) {
  html body #sc-pos-catalogue { display:inline-flex; flex-shrink:0; width:34px; height:40px; }
  html body .sc-pos-topbar { gap:3px; }
  html body #pos_table .sc-pos-quantity-control .input-number { width:48px; }
  html body #pos_table .sc-pos-quantity-control { gap:3px; }
  html body #pos_table .sc-pos-quantity-control .pos-unit-label { max-width:40px; white-space:normal; line-height:1.1; }
  html body .pos_form_totals .pos_totals_left { display:none; order:2; }
  html body .pos_form_totals.sc-expanded .pos_totals_left { display:grid; }
  html body .pos_form_totals .pos_totals_right { order:1; cursor:pointer; }
  html body .pos_form_totals .pos_totals_right:focus-visible { outline:2px solid var(--ui-focus); outline-offset:-2px; }
  html body .sc-pos-total-chevron { display:inline-block; margin-inline-start:6px; font-size:18px; }
  html body .sc-expanded .sc-pos-total-chevron { transform:rotate(180deg); }
  html body.lockscreen #add_pos_sell_form .box-body.pb-0,html body.lockscreen #edit_pos_sell_form .box-body.pb-0 { height:var(--sc-pos-workspace-height,calc(100dvh - 150px))!important; max-height:var(--sc-pos-workspace-height,calc(100dvh - 150px))!important; padding-bottom:0!important; }
  html body #mobile_product_suggestion_modal .modal-dialog { margin-inline:6px; width:calc(100% - 12px); max-width:none; }
  html body #mobile_product_suggestion_modal .modal-body { padding:8px; }
  html body #mobile_product_suggestion_modal .tw-dw-drawer-side { width:100vw!important; max-width:100vw!important; inset-inline-start:0!important; }
  html body #mobile_product_suggestion_modal .pos-drawer-panel { width:100vw!important; max-width:100vw!important; }
 }
}
@media screen and (min-width:768px) {
 html body #pos_table .sc-pos-quantity-control .input-number>.input-group-btn { width:32px!important; flex:0 0 32px; }
 html body #pos_table .sc-pos-quantity-control .input-number>.pos_quantity { width:60px!important; max-width:60px!important; flex:0 0 60px; }
}
/* One action row at every width; secondary actions open upward. */
@media screen {
 html body .sc-pos-footer { position:fixed!important; inset:auto 0 0; z-index:1030; width:100%; border-radius:12px 12px 0 0; }
 html body .sc-pos-actions-bar { display:flex!important; flex-flow:row nowrap!important; align-items:center; gap:8px; padding:6px 12px; min-height:52px; overflow:visible!important; }
 html body .sc-pos-actions-bar>button,html body .sc-pos-actions-bar .sc-pos-recent>button { display:inline-flex; flex-direction:row; align-items:center; justify-content:center; gap:5px; width:auto!important; min-width:0!important; height:40px; margin:0!important; padding:6px 12px!important; font-size:12px; white-space:nowrap; }
 html body .sc-pos-actions-bar>.hide,html body .sc-pos-more-panel>.hide { display:none!important; }
 html body .sc-pos-more { position:relative; flex:0 0 auto; }
 html body .sc-pos-more>summary { display:flex; align-items:center; justify-content:center; width:40px; height:40px; cursor:pointer; list-style:none; border-radius:8px; border:1px solid var(--ui-border); background:var(--ui-soft); color:var(--ui-text); letter-spacing:2px; }
 html body .sc-pos-more>summary::-webkit-details-marker { display:none; }
 html body .sc-pos-more>summary:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
 html body .sc-pos-more-panel { position:absolute; bottom:calc(100% + 8px); inset-inline-start:0; min-width:190px; padding:6px; border:1px solid var(--ui-border); border-radius:12px; background:var(--ui-surface); box-shadow:0 8px 28px #0004; }
 html body .sc-pos-more-panel>button { display:flex; flex-direction:row!important; justify-content:flex-start!important; align-items:center; gap:10px; width:100%!important; float:none!important; padding:10px!important; margin:0!important; min-height:40px; border:0; background:transparent; font-size:13px; }
 html body .sc-pos-recent { margin-inline-start:auto; }
 @media(max-width:767px) {
  html body .sc-pos-actions-bar { gap:4px; padding:6px; }
  html body .sc-pos-actions-bar>button { flex:0 0 auto; font-size:10px!important; padding:4px!important; overflow:hidden; text-overflow:ellipsis; }
  html body .sc-pos-actions-bar>.js-pos-cancel { padding-inline:12px!important; }
  html body .sc-pos-actions-bar>.pos-finalize,html body .sc-pos-actions-bar>[data-pay_method=cash] { flex:1 1 0; }
  html body .sc-pos-actions-bar>.pos-finalize { font-size:0!important; }
  html body .sc-pos-actions-bar>.pos-finalize:after { content:'Multi pay'; font-size:10px; }
  html body .sc-pos-actions-bar>button>i { display:none; }
  html body .sc-pos-actions-bar>[data-pay_method=suspend] { font-size:0!important; flex:0 0 36px; }
  html body .sc-pos-actions-bar>[data-pay_method=suspend]>i { display:inline; font-size:16px; }
  html body .sc-pos-recent { display:none!important; }
  html body .pos_form_totals .pos_totals_left { order:0; }
  html body .pos_form_totals .pos_totals_right { order:1; }
  html body .sc-pos-total-chevron { transform:rotate(180deg); }
  html body .sc-expanded .sc-pos-total-chevron { transform:none; }
 }
}
@media screen {
 html body .sc-pos-footer #recent-transactions { background:transparent!important; border:1px solid transparent!important; box-shadow:none!important; color:var(--ui-muted)!important; font-weight:400!important; }
 html body .sc-pos-footer #recent-transactions:hover { background:var(--ui-soft)!important; color:var(--ui-text)!important; }
 html body .sc-pos-footer #recent-transactions svg { width:18px; height:18px; flex-shrink:0; color:inherit!important; }
}
@media screen {
 html body .sc-pos-actions-bar .sc-ui-icon { width:18px; height:18px; flex-shrink:0; vertical-align:middle; color:inherit!important; }
 html body .sc-pos-footer .js-pos-cancel { background:color-mix(in srgb,#c45160 7%,var(--ui-surface))!important; border:1px solid color-mix(in srgb,#c45160 24%,var(--ui-border))!important; color:#a43e4d!important; }
 html[data-theme=dark] body .sc-pos-footer .js-pos-cancel { color:#e79aa5!important; }
 html body .sc-pos-footer .js-pos-cancel:hover { background:color-mix(in srgb,#c45160 14%,var(--ui-surface))!important; }
 @media(max-width:767px) {
  html body .sc-pos-actions-bar>button>.sc-ui-icon { display:none; }
  html body .sc-pos-actions-bar>[data-pay_method=suspend]>.sc-ui-icon { display:block; }
 }
}
@media screen {
 html body .sc-pos-entry .input-group { align-items:stretch!important; }
 html body .sc-pos-entry .input-group :is(.input-group-addon,.btn,.form-control:not(.select2-hidden-accessible),.select2-selection--single) { height:var(--ui-height)!important; min-height:var(--ui-height)!important; box-sizing:border-box; margin-top:0!important; margin-bottom:0!important; }
 html body .sc-pos-entry .input-group .select2-selection--single { display:flex!important; align-items:center!important; padding-top:0!important; padding-bottom:0!important; }
 html body .sc-pos-entry .select2-selection__rendered { display:flex; align-items:center; height:100%; }
 html body .sc-pos-entry .select2-selection__arrow { height:100%!important; top:0!important; }
 html body #sc-pos-customer-modal .modal-dialog { width:600px; max-width:calc(100% - 24px); }
 html body #sc-pos-customer-modal .modal-body { min-height:110px; }
 html body #sc-pos-customer-modal .sc-ui-icon { width:20px; height:20px; }
 html body #sc-pos-customer-modal .select2-container--open .select2-dropdown { min-width:240px; }
}

@media screen {
 html body .select2-results .sc-customer-create { display:flex; align-items:center; gap:10px; width:100%; padding:10px 12px; border:1px solid var(--ui-border)!important; border-radius:10px; background:var(--ui-soft)!important; color:var(--ui-focus)!important; text-align:start; white-space:normal; text-decoration:none!important; }
 html body .select2-results .sc-customer-create svg { flex:0 0 20px; }
 html body .select2-results .sc-customer-create:hover { border-color:var(--ui-focus)!important; background:color-mix(in srgb,var(--ui-focus) 10%,var(--ui-surface))!important; }
 html body .select2-results .sc-customer-create:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
}

@media screen {
 html body .sc-pos-entry .sc-pos-customer-field { position:relative; border:1px solid var(--ui-border); border-radius:10px; background:var(--ui-field); }
 html body .sc-pos-entry .sc-pos-customer-field:focus-within { border-color:var(--ui-focus); box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-focus) 15%,transparent); }
 html body .sc-pos-entry .sc-pos-customer-field>.input-group-addon { position:absolute; inset-inline-start:0; top:0; width:36px; padding:8px; border:0!important; background:transparent!important; pointer-events:none; z-index:2; }
 html body .sc-pos-entry .sc-pos-customer-field>.select2 { flex:1 1 0%; width:0!important; min-width:0; }
 html body .sc-pos-entry .sc-pos-customer-field .select2-selection--single { border:0!important; background:transparent!important; box-shadow:none!important; border-radius:10px!important; padding-inline-start:34px!important; padding-inline-end:4px!important; }
 html body .sc-pos-entry .sc-pos-customer-field .select2-selection__rendered { padding-inline:0!important; width:100%; }
 html body .sc-pos-entry .sc-pos-customer-field .select2-selection__arrow { display:none; }
 html body .sc-pos-entry .sc-pos-customer-field>.input-group-btn { position:static; gap:0; }
 html body .sc-pos-entry .sc-pos-customer-field>.input-group-btn>.btn { border:0!important; background:transparent!important; box-shadow:none!important; border-radius:8px!important; margin:0!important; min-width:36px; padding:7px; }
 html body .sc-pos-entry .sc-pos-customer-field>.input-group-btn>.btn:hover { background:var(--ui-soft)!important; }
 html body .sc-pos-entry .sc-pos-customer-field #pos-receive-customer-payment { border-inline-start:1px solid var(--ui-border)!important; border-start-start-radius:0!important; border-end-start-radius:0!important; }
}

@media screen {
 html body .sc-products-header { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
 html body .sc-products-header h1 { margin:0; }
 html body .sc-products-header .sc-product-tabs { display:flex; gap:4px; padding:4px; margin:0; margin-inline-start:auto; border:1px solid var(--ui-border); border-radius:12px; background:var(--ui-soft); }
 html body .sc-product-tabs>li { float:none; margin:0; border:0; }
 html body .sc-product-tabs>li>a { display:flex; align-items:center; gap:8px; margin:0; padding:9px 12px; border:1px solid transparent!important; border-radius:8px; color:var(--ui-muted)!important; background:transparent!important; }
 html body .sc-product-tabs>li.active>a { background:var(--ui-surface)!important; border-color:var(--ui-border)!important; color:var(--ui-focus)!important; }
 html body .sc-product-tabs>li>a:hover { color:var(--ui-focus)!important; background:var(--ui-surface)!important; }
 html body .sc-product-tabs svg { width:18px; height:18px; flex-shrink:0; }
 html body #product_list_tab .sc-product-image { width:120px; min-width:120px; max-width:120px; box-sizing:border-box; text-align:center; overflow-wrap:normal; white-space:normal; }
 html body #product_list_tab td.sc-product-image img { width:42px!important; height:42px!important; object-fit:contain; margin:auto; border-radius:6px; }
 @media(max-width:600px) { html body .sc-products-header .sc-product-tabs { width:100%; } html body .sc-product-tabs>li { flex:1; } html body .sc-product-tabs>li>a { justify-content:center; padding:9px 6px; font-size:12px; } }
}

#add_pos_sell_form .box-body.pb-0 > .row, #edit_pos_sell_form .box-body.pb-0 > .row
 {
     padding-left: 0px !important;
    padding-right: 0px !important;
    margin-right: -14px !important;
    margin-left: -13px !important;
}
/* Shared table headings and compact quick-product controls. */
@media screen {
 html:root body table :is(thead.bg-green, thead tr.bg-green, tr.bg-green > th, th.bg-green),
 html:root body .add-product-price-table th,
 html:root body #quick_product_opening_stock_table thead th { background:var(--sc-topbar-primary,#7351d7) !important; color:#fff !important; }
 html:root body #quick_add_product_form .modal-header { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
 html:root body #quick_add_product_form .modal-title { order:0; margin:0; flex:1; }
 html:root body #quick_add_product_form .modal-header > .close { order:2; margin:0; }
 html:root body #quick_add_product_form .sc-product-heading-options { order:1; display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; }
 html:root body #quick_add_product_form .sc-product-option { display:flex; align-items:center; gap:6px; margin:0; font-size:12px; }
 html:root body #quick_add_product_form .sc-product-option label { margin:0; display:flex; align-items:center; gap:6px; }
 html:root body #quick_add_product_form .sc-product-option br { display:none; }
 html:root body #quick_add_product_form .sc-product-option strong { font-weight:500; }
 html:root body #quick_add_product_form .sc-product-custom-fields { margin:12px 0 20px; }
 html:root body #quick_add_product_form .sc-product-custom-fields > summary { cursor:pointer; color:var(--sc-muted); padding:10px 0; font-size:13px; }
 html:root body #quick_add_product_form .sc-product-custom-fields > .row { padding-top:12px; }
 html:root body #quick_add_product_form .add-product-price-table td { vertical-align:bottom !important; }
 html:root body #quick_add_product_form .add-product-price-table td:has(#profit_percent) > br { display:none; }
 html:root body #quick_add_product_form .add-product-price-table input { margin-bottom:0 !important; }
 @media(max-width:600px) { html:root body #quick_add_product_form .sc-product-heading-options { order:3; flex-basis:100%; } }
}
@media screen {
 html:root body #quick_add_product_form .sc-product-option { margin:0 !important; }
 html:root body #quick_add_product_form .sc-product-custom-fields > summary::before { content:'▸'; display:inline-block; margin-inline-end:8px; color:var(--sc-topbar-primary,#7351d7); }
 html:root body #quick_add_product_form .sc-product-custom-fields[open] > summary::before { transform:rotate(90deg); }
}

/* Below the POS two-column breakpoint, the catalogue is available in its dialog. */
@media screen and (max-width:1023.98px) {
 html body #sc-pos-catalogue { display:inline-flex; flex-shrink:0; width:34px; height:40px; }
 html body #pos_sidebar_wrap { display:none!important; }
 html body #mobile_product_suggestion_modal #pos_sidebar_wrap { display:block!important; }
}

/* Primary checkout actions sit at the end of the footer. */
html body .sc-pos-actions-bar>.pos-finalize:not(.hide),
html body .sc-pos-actions-bar:not(:has(>.pos-finalize:not(.hide)))>[data-pay_method=cash] { margin-inline-start:auto!important; }

/* Legacy module navigation shares the ERP tokens in both themes. */
@media screen {
html body #scrollable-container section.no-print nav.navbar-default {
 background:var(--ui-surface)!important; color:var(--ui-text)!important;
 border:1px solid var(--ui-border)!important; border-radius:var(--ui-card-radius)!important;
 margin:16px!important; box-shadow:none; min-height:0;
}
html body #scrollable-container section.no-print nav.navbar-default .container-fluid {padding:10px 14px}
html body #scrollable-container section.no-print nav.navbar-default .navbar-brand {color:var(--ui-text)!important;font-size:16px;font-weight:650;height:auto;min-height:44px;padding:12px}
html body #scrollable-container section.no-print nav.navbar-default .navbar-nav>li>a {color:var(--ui-muted)!important;border-radius:8px;font-size:13px;line-height:20px;padding:10px 12px;margin:2px;min-height:40px}
html body #scrollable-container section.no-print nav.navbar-default .navbar-nav>li.active>a,
html body #scrollable-container section.no-print nav.navbar-default .navbar-nav>li>a:hover,
html body #scrollable-container section.no-print nav.navbar-default .navbar-nav>li>a:focus {background:var(--ui-soft)!important;color:var(--ui-text)!important}
html body #scrollable-container section.no-print nav.navbar-default .navbar-nav>li.active>a {box-shadow:inset 0 -2px var(--ui-primary);font-weight:650}
html body #scrollable-container section.no-print nav.navbar-default .navbar-toggle {border-color:var(--ui-border);background:var(--ui-surface);min-height:44px;min-width:44px}
html body #scrollable-container section.no-print nav.navbar-default .icon-bar {background:var(--ui-text)}
html body #scrollable-container section.no-print nav.navbar-default .navbar-collapse {border-color:var(--ui-border);box-shadow:none}
html body #scrollable-container section.no-print nav.navbar-default .dropdown-menu {background:var(--ui-surface);border-color:var(--ui-border)}
html body #scrollable-container section.no-print nav.navbar-default .dropdown-menu a {color:var(--ui-text)}
.sc-business-actions {display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 22px}
#users_table_wrapper .dataTables_filter {float:none;text-align:start;margin:0 0 16px}
#users_table_wrapper .dataTables_filter input {margin-inline-start:10px;max-width:220px}
#users_table_wrapper td:last-child {min-width:180px}
@media(max-width:767px){.sc-business-actions>a{flex:1 1 100%;justify-content:center}html body #scrollable-container section.no-print nav.navbar-default .navbar-nav{margin:8px 0}}
}

@media screen {
 html[data-theme=dark] body .modal .table,
 html[data-theme=dark] body .modal .table>tbody>tr {background-color:var(--ui-surface)!important;color:var(--ui-text)!important;}
 html[data-theme=dark] body .modal .table>tbody>tr:not(.success):not(.info):not(.warning):not(.danger):not(.active)>td:not(.success):not(.info):not(.warning):not(.danger):not(.active) {background-color:var(--ui-surface)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important;}
 html[data-theme=dark] body .modal .table>thead>tr>th,
 html[data-theme=dark] body .modal .table>tbody>tr>th {background-color:var(--ui-soft)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important;}
}

/* Shared dropdown chevrons: same stroke and spacing as filter/profile controls. */
@media screen {
 html body .sc-menu-chevron { width:16px!important; height:16px!important; flex:0 0 16px; vertical-align:middle; }
 html body .sc-list-toolbar .dt-buttons > a > span { display:inline-flex; align-items:center; gap:8px; }
 html body .sc-list-size summary { display:inline-flex; align-items:center; gap:8px; }
 html body .sc-list-size[open] .sc-menu-chevron { transform:rotate(180deg); }
 html body .dropdown-toggle .caret {
   display:inline-block; width:16px; height:16px; border:0!important; margin:0 0 0 6px; vertical-align:middle;
   background:currentColor;
   mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat;
 }
 @media(min-width:768px) {
   html body .sc-hrm-nav > .container-fluid { display:flex; align-items:center; gap:16px; padding:12px 16px!important; }
   html body .sc-hrm-nav .container-fluid::before,html body .sc-hrm-nav .container-fluid::after { display:none; }
   html body .sc-hrm-nav .navbar-header { flex:0 0 auto; float:none!important; margin:0!important; }
   html body .sc-hrm-nav .navbar-brand { padding:8px 0!important; height:auto; font-size:16px; white-space:nowrap; }
   html body .sc-hrm-nav .navbar-collapse { flex:1; min-width:0; float:none!important; padding:0!important; }
   html body .sc-hrm-nav .navbar-nav { display:flex; flex-wrap:wrap; align-items:center; gap:2px; float:none!important; margin:0!important; }
   html body .sc-hrm-nav .navbar-nav > li { float:none; }
   html body .sc-hrm-nav .navbar-nav > li > a { padding:8px 9px!important; min-height:36px; font-size:13px; }
 }
}
@media screen {
 html:root, html body:not(.lockscreen) * { scrollbar-width:thin; scrollbar-color:var(--ui-muted) var(--ui-surface); }
 html:root::-webkit-scrollbar, html body:not(.lockscreen) *::-webkit-scrollbar { width:7px; height:7px; }
 html:root::-webkit-scrollbar-track, html body:not(.lockscreen) *::-webkit-scrollbar-track { background:var(--ui-surface); }
 html:root::-webkit-scrollbar-thumb, html body:not(.lockscreen) *::-webkit-scrollbar-thumb { background:var(--ui-muted); border-radius:8px; }
}
@media screen {
 html body:not(.lockscreen) #delete-selected:not(:where(.sc-action-menu-panel *)) { background:var(--ui-surface)!important; color:var(--ui-danger)!important; border:1px solid color-mix(in srgb,var(--ui-danger) 35%,var(--ui-border))!important; box-shadow:none!important; }
 html body:not(.lockscreen) #delete-selected:not(:where(.sc-action-menu-panel *)):hover { background:color-mix(in srgb,var(--ui-danger) 10%,var(--ui-surface))!important; }
}

@media screen {
.sc-opening-stock-scroll{overflow-x:auto;overflow-y:hidden;margin:0;scrollbar-width:thin;scrollbar-color:var(--sc-muted) transparent}
.sc-opening-stock-scroll>.col-sm-12{padding:0}
.sc-opening-stock-scroll .add_opening_stock_table{min-width:920px;width:100%;margin:0}
.sc-opening-stock-scroll .add_opening_stock_table th{vertical-align:middle;padding:12px;line-height:1.4}
.sc-opening-stock-scroll .add_opening_stock_table td{vertical-align:top;padding:10px}
.sc-opening-stock-scroll .add_opening_stock_table td:first-child{min-width:180px;text-align:start}
.sc-opening-stock-scroll input.form-control{min-width:105px}
.sc-opening-stock-scroll .input-group{min-width:155px}
.sc-opening-stock-scroll .os_date,.sc-opening-stock-scroll .os_exp_date{min-width:155px}
.sc-opening-stock-scroll textarea{min-width:150px;resize:vertical}
.sc-opening-stock-scroll::-webkit-scrollbar{height:7px;width:7px}
.sc-opening-stock-scroll::-webkit-scrollbar-thumb{background:var(--sc-muted);border-radius:10px}
.sc-opening-stock-scroll::-webkit-scrollbar-track{background:transparent}
}

@media screen {.sc-opening-stock-scroll .add_opening_stock_table th{min-width:120px}.sc-opening-stock-scroll .add_opening_stock_table th:last-child{min-width:54px}.sc-opening-stock-scroll .add_opening_stock_table tfoot td{text-align:start;white-space:nowrap;padding:16px}.sc-opening-stock-scroll .add_opening_stock_table tfoot strong{margin-inline-end:16px}}

/* Secondary row actions stay subordinate to the page's primary action. */
@media screen {
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]){
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  min-height:32px!important;height:auto!important;min-width:32px;padding:5px 8px!important;
  margin:2px 3px 2px 0;font-size:12px!important;line-height:20px;font-weight:500;
  border:1px solid var(--ui-border)!important;border-radius:7px!important;
  background:var(--ui-surface)!important;color:var(--ui-text)!important;box-shadow:none!important;
 }
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]):is(.btn-primary,.tw-dw-btn-primary){color:var(--ui-focus)!important;border-color:color-mix(in srgb,var(--ui-focus) 22%,var(--ui-border))!important}
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]):is(.btn-danger,.tw-dw-btn-error){color:var(--ui-danger)!important;border-color:color-mix(in srgb,var(--ui-danger) 24%,var(--ui-border))!important}
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]):hover{background:var(--ui-soft)!important}
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]):is(.btn-danger,.tw-dw-btn-error):not(:disabled):not(.disabled):hover{background:#b42335!important;border-color:#b42335!important;color:#fff!important}
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs):not(.dropdown-toggle):not([data-toggle="dropdown"]):focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
 html body:not(.lockscreen) table tbody :is(.btn-xs,.tw-dw-btn-xs) :is(i,svg){font-size:12px;width:13px;height:13px;flex-shrink:0}
}

@media screen {
 html body:not(.lockscreen) .content-header.sc-list-heading{align-items:center!important}
 html body:not(.lockscreen) .content-header.sc-list-heading>h1{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;line-height:1.25;margin-block:0!important;padding-block:0!important}
 html body:not(.lockscreen) .content-header.sc-list-heading>h1>small{display:block;margin:0;padding:0;line-height:1.25}
 html body:not(.lockscreen) .content-header.sc-list-heading>.sc-filter-trigger{align-self:center;margin-block:0!important;display:inline-flex;align-items:center;justify-content:center;line-height:20px;height:36px;padding-block:7px!important}
 html body .sc-products-header .sc-product-tabs{align-self:center;align-items:center;margin-block:0!important;padding:3px}
 html body .sc-products-header .sc-product-tabs>li>a{min-height:36px;height:36px;line-height:20px;padding:7px 10px!important;font-size:13px}
 html body .sc-list-actions .sc-action-secondary{background:var(--ui-surface)!important;background-image:none!important;color:var(--ui-text)!important;border:1px solid var(--ui-border)!important;font-weight:500}
 html body .sc-list-actions .sc-action-secondary:hover{background:var(--ui-soft)!important}
 html body :is(#product_table_wrapper,#stock_report_table_wrapper) table.dataTable :is(th,td):not(.sc-money-cell){text-align:start!important;padding-inline-start:12px!important}
}

@media screen {
 html body:not(.lockscreen) .content-header.sc-list-heading{padding-block:20px!important;margin-block:0!important}
 html body:not(.lockscreen) .content-header.sc-list-heading + section.content{padding-top:0!important}
}

/* Document printing from sale/purchase detail links. Screen layout is untouched. */
@media print {
    html.sc-document-print-path,
    html body.sc-document-print-path,
    html body .sc-document-print-path {
        display: block !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
        background: white !important;
        transform: none !important;
    }
    .sc-document-print-path > :not(.sc-document-print-path):not(.sc-document-print-target) {
        display: none !important;
    }
    html body .sc-document-print-target {
        display: block !important;
        position: static !important;
        color: black !important;
        background: white !important;
        overflow: visible !important;
    }
}
@media screen {
    html body .sc-sale-details .modal-footer a.print-invoice {
        background: var(--ui-surface) !important;
        background-image: none !important;
        border: 1px solid var(--ui-border) !important;
        color: var(--ui-text) !important;
        box-shadow: none !important;
    }
    html body .sc-sale-details .modal-footer a.print-invoice:hover {
        background: var(--ui-soft) !important;
    }
    html body .sc-sale-details .label.bg-info {
        background: var(--ui-soft) !important;
        color: var(--ui-text) !important;
        border: 1px solid var(--ui-border);
        border-radius: 6px;
        font-weight: 500;
    }
}

@media screen {
 html body .sc-sale-details .sc-sale-parties,
 html body .sc-sale-details .sc-sale-finance,
 html body .sc-sale-details .sc-sale-notes {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 20px;}
 html body .sc-sale-details :is(.sc-sale-parties,.sc-sale-finance,.sc-sale-notes)::before,
 html body .sc-sale-details :is(.sc-sale-parties,.sc-sale-finance,.sc-sale-notes)::after {display:none;}
 html body .sc-sale-details :is(.sc-sale-parties,.sc-sale-finance,.sc-sale-notes)>div {min-width:0;}
 html body .sc-sale-details .sc-sale-invoice {text-align:right;}
 html body .sc-sale-details .sc-sale-totals {grid-column:2;}
 html body .sc-sale-details h4:not(.modal-title) {font-size:15px;font-weight:600;color:var(--ui-text);margin:0 0 12px;}
 html body .sc-sale-details .table {width:100%;background:var(--ui-surface)!important;color:var(--ui-text)!important;}
 html body .sc-sale-details .table :is(th,td) {padding:9px 10px;vertical-align:top;border-color:var(--ui-border)!important;background:var(--ui-surface)!important;color:var(--ui-text)!important;font-size:13px;}
 html body .sc-sale-details .table tr.bg-green>th {background:var(--ui-soft)!important;color:var(--ui-text)!important;font-weight:600;}
 html body .sc-sale-details .sc-sale-totals th {font-weight:500;}
 html body .sc-sale-details .sc-sale-totals tr:last-child>* {font-weight:650;background:var(--ui-soft)!important;}
 html body .sc-sale-details .sc-sale-payments .table-responsive {overflow-x:auto;}
 html body .sc-sale-details .sc-sale-notes .well {background:var(--ui-soft);border:1px solid var(--ui-border);margin-top:8px;}
 html body .popover.tour {background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:12px;box-shadow:0 12px 32px #0003;}
 html body .popover.tour .popover-title {background:var(--ui-soft);color:var(--ui-text);border-color:var(--ui-border);padding:12px 14px;font-size:15px;}
 html body .popover.tour .popover-content {padding:14px;font-size:14px;line-height:1.5;}
 html body .popover.tour .popover-navigation {display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid var(--ui-border);}
 html body .popover.tour .popover-navigation .btn {min-height:34px;height:34px;padding:6px 10px;font-size:12px;float:none!important;margin:0!important;background:var(--ui-surface)!important;color:var(--ui-text)!important;border:1px solid var(--ui-border)!important;box-shadow:none!important;}
 html body .popover.tour .popover-navigation [data-role=next] {background:var(--ui-soft)!important;color:var(--sc-accent)!important;}
 html body .popover.tour .popover-navigation .disabled {opacity:.45;}
 html body .popover.tour.bottom>.arrow:after {border-bottom-color:var(--ui-surface);}
 html body .popover.tour.top>.arrow:after {border-top-color:var(--ui-surface);}
 html body .popover.tour.left>.arrow:after {border-left-color:var(--ui-surface);}
 html body .popover.tour.right>.arrow:after {border-right-color:var(--ui-surface);}
 @media(max-width:600px) {
  html body .sc-sale-details :is(.sc-sale-parties,.sc-sale-finance,.sc-sale-notes) {grid-template-columns:minmax(0,1fr);gap:16px;}
  html body .sc-sale-details .sc-sale-totals {grid-column:auto;}
  html body .sc-sale-details .sc-sale-invoice {text-align:start;}
 }
}

/* Opt-in detail headers; preserve the original status in printed documents. */
@media screen {
 html body .sc-detail-header {display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
 html body .sc-detail-header::before,html body .sc-detail-header::after {display:none;}
 html body .sc-detail-header .modal-title {order:1;flex:1 1 200px;margin:0;min-width:0;}
 html body .sc-detail-header .sc-detail-status {order:2;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--ui-soft);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:8px;font-size:12px;line-height:1.4;font-weight:600;max-width:100%;}
 html body .sc-detail-status-label {font-weight:400;color:var(--ui-muted);}
 html body .sc-detail-header .close {order:3;float:none;flex:none;margin:0;}
 html body .sc-detail-body-status {display:none;}
}

/* Sale detail density: retain every amount and activity, fit narrow screens. */
@media screen {
  html body .sc-sale-details .sc-sale-finance { gap: 16px; margin-bottom: 16px; }
  html body .sc-sale-details :is(.sc-sale-payments, .sc-sale-totals) h4 { margin-bottom: 8px; }
  html body .sc-sale-details :is(.sc-sale-payments, .sc-sale-totals) .table { margin-bottom: 0; }
  html body .sc-sale-details :is(.sc-sale-payments, .sc-sale-totals) .table :is(th, td) { padding: 5px 7px; line-height: 1.4; }
  html body .sc-sale-details .sc-sale-payments .table { table-layout: fixed; min-width: 0; }
  html body .sc-sale-details .sc-sale-payments .table :is(th, td) { white-space: normal; overflow-wrap: anywhere; }
  html body .sc-sale-details .sc-sale-totals .table td:nth-child(2) { width: 24px; padding-inline: 2px; text-align: center; }
  html body .sc-sale-details .sc-sale-totals .table td:last-child { text-align: right; }
  html body .sc-sale-details .sc-sale-activities > div > .table { margin: 8px 0 0; }
  html body .sc-sale-details .sc-sale-activities .table :is(th, td) { padding: 6px 8px; line-height: 1.4; }
  html body .sc-sale-details .sc-sale-activities .table .table { margin: 0; }
  html body .sc-sale-details .sc-sale-activities .table .table :is(th, td) { padding: 2px 4px; border: 0 !important; width: auto !important; font-size: 12px; }
  html body .sc-sale-details .sc-sale-activities .table .table th { font-weight: 500; }
  html body .sc-sale-details .sc-sale-activities .label { display: inline-block; padding: 2px 5px; line-height: 1.35; white-space: normal; }
  @media (max-width: 600px) {
    html body .sc-sale-details .sc-sale-totals { order: -1; }
  }
  @media (max-width: 900px) {
    html body .sc-sale-details .sc-sale-payments .table,
    html body .sc-sale-details .sc-sale-payments .table > tbody { display: block; }
    html body .sc-sale-details .sc-sale-payments .table > tbody > tr:first-child { display: none; }
    html body .sc-sale-details .sc-sale-payments .table > tbody > tr:not(:first-child) { display: grid; grid-template-columns: max-content minmax(0,1fr) max-content max-content; padding: 4px 0; border-top: 1px solid var(--ui-border); }
    html body .sc-sale-details .sc-sale-payments .table td { display: block; border: 0 !important; }
    html body .sc-sale-details .sc-sale-payments .table td::before { content: attr(data-label); display: block; font-size: 11px; font-weight: 500; color: var(--ui-muted); margin-bottom: 2px; }
    @container (max-width: 290px) {html body .sc-sale-details .sc-sale-payments .table > tbody > tr:not(:first-child){grid-template-columns:repeat(2,minmax(0,1fr))}}
    html body .sc-sale-details .sc-sale-payments .table td:nth-child(5) { grid-column: 1 / -1; }
  }
  @media (max-width: 600px) {
    html body .sc-sale-details .sc-sale-activities > div > .table,
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody { display: block; }
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody > tr:first-child { display: none; }
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody > tr:not(:first-child) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 6px 0; border-top: 1px solid var(--ui-border); }
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody > tr > td { border: 0 !important; padding: 3px 4px; overflow-wrap: anywhere; }
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody > tr > td:nth-child(3) { color: var(--ui-muted) !important; }
    html body .sc-sale-details .sc-sale-activities > div > .table > tbody > tr > td:last-child { grid-column: 1 / -1; }
  }
}

/* All table pagers use the same theme, including legacy DataTables. */
@media screen {
 html body .dataTables_wrapper .pagination > li > :is(a,span) { background:var(--ui-surface)!important; color:var(--ui-text)!important; border-color:var(--ui-border)!important; box-shadow:none!important; }
 html body .dataTables_wrapper .pagination > li.active > :is(a,span) { background:var(--ui-soft)!important; color:var(--ui-primary)!important; border-color:var(--ui-primary)!important; font-weight:600; }
 html body .dataTables_wrapper .pagination > li.disabled > :is(a,span) { color:var(--ui-muted)!important; opacity:.65; }
 html body .dataTables_wrapper .pagination > li:not(.disabled) > a:hover { background:var(--ui-soft)!important; }
}

@media screen {
 html body table.dataTable .sc-table-party { min-width:140px; }
 html body table.dataTable .sc-table-reference { white-space:nowrap; min-width:64px; }
 html:root body .dataTables_wrapper table.dataTable :is(th,td).sc-table-product { width:var(--sc-product-column-width,180px)!important; min-width:var(--sc-product-column-width,180px)!important; max-width:var(--sc-product-column-width,180px)!important; box-sizing:border-box; white-space:normal!important; overflow-wrap:anywhere; }
}

/* Touch targets stay in normal flow: no overlapping invisible hit areas. */
@media screen and (any-pointer:coarse), screen and (max-width:1100px) {
    html:root body label:has(input[type=checkbox]):not(:has(.tw-dw-drawer-toggle, .drawer-toggle, [role=switch], .tw-dw-toggle)) {
        display:inline-flex!important; align-items:center; gap:8px!important;
        box-sizing:border-box; min-height:44px; padding:8px 6px!important;
        max-width:100%; vertical-align:middle; cursor:pointer; touch-action:manipulation;
    }
    html:root body label:has(input[type=checkbox]:disabled) { cursor:not-allowed; }
    html:root body label input[type=checkbox]:not([role=switch]):not(.tw-dw-toggle):not(.tw-dw-drawer-toggle):not(.drawer-toggle):not([class*="icheckbox"] input),
    html:root body label :is([class^="icheckbox_"],[class*=" icheckbox_"]) {
        width:22px!important; height:22px!important; min-width:22px; min-height:22px;
        flex-shrink:0; margin:0 4px 0 0!important; background-size:18px 18px!important;
    }
    /* Unlabelled row selectors get their own full touch target. */
    html:root body input[type=checkbox]:not(label input):not([role=switch]):not(.tw-dw-toggle):not(.tw-dw-drawer-toggle):not(.drawer-toggle):not([class*="icheckbox"] input),
    html:root body :is([class^="icheckbox_"],[class*=" icheckbox_"]):not(label *) {
        width:44px!important; height:44px!important; min-width:44px; min-height:44px;
        background-size:18px 18px!important; touch-action:manipulation;
    }
    html:root body #quick_add_product_form .sc-product-heading-options { flex-wrap:wrap; gap:8px 12px; }
    html:root body #quick_add_product_form .sc-product-option { max-width:100%; }
}

@media screen {
    html body #toast-container > .toast { padding-inline-end:46px; }
    html body #toast-container .toast-close-button {
        position:absolute; top:7px; right:auto; inset-inline-end:7px; float:none;
        display:flex; align-items:center; justify-content:center;
        width:30px; height:30px; padding:0; border:0; border-radius:6px;
        color:var(--sc-notice-error,#b74759)!important; background:transparent!important;
        font-size:22px; line-height:1; font-weight:500; text-shadow:none;
        opacity:1; cursor:pointer; touch-action:manipulation;
    }
    html body #toast-container .toast-close-button:hover { background:color-mix(in srgb,var(--sc-notice-error,#b74759) 10%,transparent)!important; color:var(--sc-notice-error,#b74759)!important; }
    html body #toast-container .toast-close-button svg { width:15px; height:15px; pointer-events:none; }
    html body #toast-container .toast-close-button:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
}
@media screen and (any-pointer:coarse), screen and (max-width:1100px) {
    html body #toast-container .toast-close-button { width:44px; height:44px; top:0; inset-inline-end:0; }
    html body #toast-container > .toast { min-height:48px; padding-inline-end:48px; }
}

/* Keep isolated selectors easy to hit without drawing a 44px square. */
@media screen and (any-pointer:coarse), screen and (max-width:1100px) {
 html:root body input[type=checkbox]:not(label input):not([role=switch]):not(.tw-dw-toggle):not(.tw-dw-drawer-toggle):not(.drawer-toggle):not([class*="icheckbox"] input),
 html:root body :is([class^="icheckbox_"],[class*=" icheckbox_"]):not(label *) {
  border:0!important; background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Crect x='.5' y='.5' width='21' height='21' rx='4' fill='none' stroke='%23586780'/%3E%3C/svg%3E"),linear-gradient(var(--ui-field),var(--ui-field))!important;
  background-size:22px 22px!important; background-position:center!important; background-repeat:no-repeat!important;
 }
 html:root body input[type=checkbox]:not(label input):not([role=switch]):not(.tw-dw-toggle):not(.tw-dw-drawer-toggle):not(.drawer-toggle):not([class*="icheckbox"] input):checked,
 html:root body :is([class^="icheckbox_"],[class*=" icheckbox_"]):not(label *).checked {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(var(--ui-primary),var(--ui-primary))!important;
  background-size:16px 16px,22px 22px!important;
 }
 html:root body input[type=checkbox]:not(label input):indeterminate,
 html:root body :is([class^="icheckbox_"],[class*=" icheckbox_"]):not(label *).indeterminate {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8h8' stroke='white' stroke-width='2'/%3E%3C/svg%3E"),linear-gradient(var(--ui-primary),var(--ui-primary))!important;
  background-size:16px 16px,22px 22px!important;
 }
}
/* Label setup: flexible option cards, no absolute checkbox positioning. */
@media screen {
 html body .sc-label-page .sc-label-product-table { overflow-x:auto; }
 html body .sc-label-page #product_table { min-width:600px; }
 html body .sc-label-page .sc-label-options { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; border:0!important; background:transparent!important; }
 html body .sc-label-options > tbody, html body .sc-label-options tr { display:contents!important; }
 html body .sc-label-options td { display:flex; flex-direction:column; gap:10px; min-width:0; padding:14px!important; border:1px solid var(--ui-border)!important; border-radius:var(--ui-radius); background:var(--ui-surface)!important; }
 html body .sc-label-options td:not(:has(input,select)) { display:none!important; }
 html body .sc-label-options .checkbox { margin:0; min-height:44px; }
 html body .sc-label-options .checkbox label { display:flex!important; align-items:center; gap:10px!important; min-height:44px; padding:0!important; font-weight:500; }
 html body .sc-label-options .checkbox input[type=checkbox] { position:static!important; float:none!important; margin:0!important; flex:0 0 22px; width:22px!important; height:22px!important; }
 html body .sc-label-options .input-group { margin-top:auto; width:100%; }
 html body .sc-label-options .form-control { min-width:0; }
 html body .sc-label-options .form-group { margin:0; }
 html body .sc-label-format .input-group { width:100%; }
 html body .sc-label-format select.form-control { height:auto!important; min-height:40px; padding-block:8px!important; line-height:1.4!important; white-space:normal; overflow-wrap:anywhere; }
 html body .sc-label-page .text-center { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; }
 html body .sc-label-page #labels_print_pdf { background:var(--ui-surface)!important; color:var(--ui-text)!important; border:1px solid var(--ui-border)!important; }
 .sc-profit-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
 .sc-profit-card { padding:18px; border:1px solid var(--ui-border); border-radius:var(--ui-card-radius); background:var(--ui-surface); color:var(--ui-text); min-width:0; }
 .sc-profit-net { grid-column:1/-1; order:-1; background:var(--ui-soft); border-inline-start:4px solid var(--ui-primary); }
 html body .sc-profit-card h3 { font-size:14px!important; line-height:1.4; font-weight:600; color:var(--ui-muted)!important; margin:0 0 10px!important; }
 .sc-profit-value { display:block; font-size:24px; font-weight:650; line-height:1.3; color:var(--ui-text); }
 .sc-profit-net .sc-profit-value { font-size:30px; }
 .sc-profit-negative .sc-profit-value { color:var(--ui-danger); }
 .sc-profit-rate { display:block; margin-top:4px; font-size:12px; color:var(--ui-muted); }
 .sc-profit-help { display:block; margin-top:10px; font-size:12px; }
 .sc-profit-help-trigger { border:0; background:transparent; color:var(--ui-muted); padding:5px 0; min-height:32px; cursor:help; font:inherit; }
 .sc-profit-help-trigger:focus-visible, .sc-profit-breakdown > summary:focus-visible { outline:2px solid var(--ui-focus); outline-offset:2px; }
 .sc-profit-tip[hidden] { display:none!important; }
 .sc-profit-tooltip .tooltip-inner { max-width:min(440px,90vw); text-align:start; }
 #todays_profit_modal .modal-content { container-type:inline-size; }
 #todays_profit_modal .sc-profit-modal-heading { display:flex; align-items:center; gap:16px; }
 #todays_profit_modal .sc-profit-modal-heading::before,#todays_profit_modal .sc-profit-modal-heading::after { display:none; }
 #todays_profit_modal .sc-profit-modal-heading .close { order:3; margin:0 0 0 auto; flex-shrink:0; }
 .sc-profit-period { margin:0; font-size:13px; color:var(--ui-muted); }
 .sc-profit-period-help { display:none; flex-shrink:0; }
 @container (max-width:760px) { .sc-profit-modal-heading .sc-profit-period { display:none; } .sc-profit-modal-heading .sc-profit-period-help { display:inline-flex; } }
 .sc-profit-chevron { flex-shrink:0; transition:transform .18s ease; }
 .sc-profit-breakdown[open] > summary .sc-profit-chevron { transform:rotate(180deg); }
 .sc-profit-breakdown > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; list-style:none; }
 .sc-profit-breakdown > summary::-webkit-details-marker { display:none; }
 @media(prefers-reduced-motion:reduce) { .sc-profit-chevron { transition:none; } }
 .sc-profit-breakdown > summary { cursor:pointer; padding:12px; min-height:44px; color:var(--ui-text); font-weight:600; border:1px solid var(--ui-border); border-radius:8px; margin-bottom:12px; }
 #todays_profit_modal .modal-body { background:var(--ui-field); }
 /* Profit detail: native compact panels, shared theme and full-value tooltips. */
 .sc-profit-breakdown-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:12px; align-items:start; }
 .sc-profit-breakdown-panel { min-width:0; border:1px solid var(--ui-border); border-radius:10px; background:var(--ui-surface); overflow:hidden; }
 html body .sc-profit-detail-table { width:100%; margin:0; border-collapse:collapse; table-layout:fixed; color:var(--ui-text); }
 .sc-profit-label-column { width:62%; }
 html body .sc-profit-detail-table caption { padding:10px; color:var(--ui-text); background:var(--ui-soft); text-align:start; }
 .sc-profit-detail-title { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600; }
 .sc-profit-detail-title .sc-ui-icon { width:18px; height:18px; flex:none; color:var(--ui-primary); }
 html body .sc-profit-detail-table tbody th, html body .sc-profit-detail-table tbody td { padding:6px 10px; border:0; border-top:1px solid var(--ui-border); background:transparent; color:var(--ui-text); font-size:13px; line-height:20px; vertical-align:middle; }
 html body .sc-profit-detail-table tbody th { font-weight:400; text-align:start; }
 html body .sc-profit-detail-table tbody td { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
 .sc-profit-detail-table .display_currency { direction:ltr; unicode-bidi:isolate; }
 html body .sc-profit-detail-table .sc-profit-detail-total > * { background:var(--ui-soft); font-weight:600; }
 html body .sc-profit-detail-table .sc-profit-detail-category { padding-inline-start:18px; }
 .sc-profit-detail-table ul { margin:4px 0; padding-inline-start:16px; }
 .sc-profit-detail-table .text-muted { color:var(--ui-muted); }
 html body .sc-profit-detail-table .sc-table-text { display:block; max-width:100%; min-height:0!important; height:auto!important; padding:0!important; line-height:20px!important; }
}
@media screen and (max-width:1000px) { html body .sc-label-page .sc-label-options { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media screen and (max-width:540px) {
 html body .sc-label-page .sc-label-options { grid-template-columns:1fr; }
 .sc-profit-summary { grid-template-columns:1fr; }
 .sc-profit-net { grid-column:auto; }
}
@media print { .sc-profit-breakdown > div { display:block!important; } .sc-profit-breakdown::details-content { content-visibility:visible!important; } .sc-profit-detail-table { width:100%; margin-bottom:12px; } .sc-profit-detail-table caption { text-align:start; font-weight:600; } .sc-profit-detail-title .sc-ui-icon { width:18px; height:18px; } .sc-profit-detail-table td { text-align:right; } }

/* Upload attachments inherit the active theme instead of Dropzone's white surface. */
@media screen {
 html body .dropzone {
  background:var(--ui-field)!important; color:var(--ui-text)!important;
  border:1px dashed var(--ui-muted)!important; border-radius:var(--ui-radius);
 }
 html body .dropzone .dz-message {color:var(--ui-muted)!important; opacity:1;}
 html body .dropzone.dz-drag-hover {border-color:var(--ui-primary)!important; background:var(--ui-soft)!important;}
 html body .dropzone .dz-preview {background:var(--ui-surface); color:var(--ui-text);}
 html body .dropzone .dz-details :is(.dz-size span,.dz-filename span) {background:var(--ui-surface); color:var(--ui-text);}
}

/* Shared help glyph: includes direct and dynamically inserted tooltip icons. */
html:root body .fa-info-circle{display:inline-block!important;width:16px;height:16px;font-size:16px!important;line-height:1;vertical-align:middle;color:var(--sc-muted,#6b7280)!important}
html:root body .fa-info-circle::before{content:''!important;display:block!important;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%209h.01M11%2012h1v4h1M12%203c7.2%200%209%201.8%209%209c0%207.2%20-1.8%209%20-9%209c-7.2%200%20-9%20-1.8%20-9%20-9c0%20-7.2%201.8%20-9%209%20-9%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%209h.01M11%2012h1v4h1M12%203c7.2%200%209%201.8%209%209c0%207.2%20-1.8%209%20-9%209c-7.2%200%20-9%20-1.8%20-9%20-9c0%20-7.2%201.8%20-9%209%20-9%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}
html:root body .fa-info-circle>svg{display:none!important}
html:root body .fa-info-circle:hover,html:root body .fa-info-circle:focus{color:var(--sc-accent,#875bea)!important}

html:root body :is(.sc-required-star,.sc-global-required,.sc-product-required){color:#ff303b!important;font-size:12px;font-weight:700;margin-inline-start:4px;line-height:1;vertical-align:super}
html:root body .sc-user-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin:0 0 18px}
html:root body .sc-user-heading h1{font-size:24px;font-weight:700;margin:0;color:var(--sc-text,#17233b)}
html:root body .sc-user-heading-options{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px;margin-inline-start:auto}
html:root body .sc-user-heading-option :is(.form-group,.checkbox){margin:0;padding:0}
html:root body .sc-user-heading-option br{display:none}
html:root body .sc-user-heading-option label{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12px}
html:root body .sc-user-name-row{display:grid;grid-template-columns:minmax(72px,1fr) minmax(0,4fr) minmax(0,5fr);gap:16px}
html:root body .sc-user-name-row>[class*=col-]{width:auto!important;min-width:0;padding:0;float:none}
@media(max-width:480px){html:root body .sc-user-name-row{grid-template-columns:minmax(60px,1fr) minmax(0,3fr)}html:root body .sc-user-name-row>div:last-child{grid-column:1/-1}}

/* Task dialogs keep short fields paired at dialog widths, not page breakpoints. */
@media screen {
 html body #task_form .sc-task-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 html body #task_form .sc-task-fields::before,html body #task_form .sc-task-fields::after,
 html body #task_form .sc-task-fields > .clearfix { display:none; }
 html body #task_form .sc-task-fields > [class*=col-] { width:auto!important; min-width:0; float:none; }
 html body #task_form .sc-task-fields > .col-md-12 { grid-column:1 / -1; }
 html body #task_form .sc-task-fields .form-group { margin-bottom:16px; }
 html body #task_form .dropzone { min-height:110px; padding:16px; }
 html body #task_form .dropzone .dz-message { margin:18px 0; }
 html body .dropzone .dz-remove { color:var(--ui-primary); }
 html body .dropzone.dz-clickable:focus-within { outline:2px solid var(--ui-focus); outline-offset:2px; }
}
@media screen and (max-width:575px) {
 html body #task_form .sc-task-fields { grid-template-columns:minmax(0,1fr); }
}

/* User creation: optional fields retain their native values in simple mode. */
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form).sc-user-simple .sc-user-advanced{display:none!important}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form).sc-user-simple .sc-user-name-row{grid-template-columns:repeat(2,minmax(0,1fr))}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-mode-toggle[hidden]{display:none!important}
@media(max-width:480px){html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form).sc-user-simple .sc-user-name-row{grid-template-columns:minmax(0,1fr)}}

/* Compact user access controls and optional staff sections. */
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-password{position:relative}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-password input{padding-inline-end:46px}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-password-toggle{position:absolute;inset-inline-end:1px;top:1px;width:40px;height:38px;background:transparent;border:0;color:var(--ui-muted);border-radius:8px}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-password-toggle:focus-visible{outline:2px solid var(--ui-focus)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-locations{display:flex;align-items:center;gap:10px;width:100%;overflow-x:auto;padding:4px 0 10px;float:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-locations>.col-md-12{flex:0 0 auto;width:auto;padding:0;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-field)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-locations>.col-md-12:has(input:checked){border-color:var(--ui-focus);background:var(--ui-soft)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-locations .checkbox{margin:0;padding:8px 10px;white-space:nowrap}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;align-items:start}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module{min-width:0;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module>summary{padding:14px 16px;cursor:pointer;color:var(--ui-text);font-weight:600}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module>.tw-mb-4{margin-bottom:0;box-shadow:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row>[class*=col-]{width:100%;float:none;min-width:0;margin-bottom:12px}
@media(max-width:600px){html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-modules{grid-template-columns:minmax(0,1fr)}}

/* User creation layout independent of Bootstrap's page-width breakpoint. */
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-password-toggle{display:flex;align-items:center;justify-content:center;color:var(--ui-focus)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-password-toggle svg{display:block;width:20px;height:20px;flex:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-credentials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;clear:both}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-credentials>.user_auth_fields:not(.hide){display:contents}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-credentials [class*=col-]{width:auto!important;min-width:0;float:none;padding:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-access-bar{display:flex;gap:24px;align-items:center;margin-bottom:20px;min-width:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-access-bar>[class*=col-]{width:auto;float:none;padding:0;flex:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-access-bar :is(.form-group,.checkbox){margin:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group{display:flex;gap:12px;align-items:center;justify-content:flex-end;min-width:0;flex:0 1 auto;margin-inline-start:auto}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group>.col-md-3{width:auto;float:none;padding:0;flex:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group h4{margin:0;font-size:13px;font-weight:600;color:var(--ui-text)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group .sc-user-locations{width:auto;min-width:0;padding:4px;flex:0 1 auto;justify-content:safe flex-end}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-field-grid,html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-field-grid>[class*=col-],html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row>[class*=col-]{width:auto!important;float:none;padding:0;min-width:0;margin-bottom:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-field-grid>.clearfix,html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row::before,html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row::after{display:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-field-grid>.col-md-12{grid-column:1/-1}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module>summary{display:flex;align-items:center;gap:10px}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module>summary::after{content:'⌄';margin-inline-start:auto;color:var(--ui-muted)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module[open]>summary::after{transform:rotate(180deg)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-section-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:8px;background:var(--ui-soft);color:var(--ui-focus)}
@media(max-width:700px){html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-access-bar{align-items:flex-start;flex-direction:column;gap:12px}html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group{width:100%}html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-modules{grid-template-columns:minmax(0,1fr)}}
@media(max-width:540px){html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-credentials,html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-field-grid,html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row{grid-template-columns:minmax(0,1fr)}html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group{flex-wrap:wrap}html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-place-group .sc-user-locations{flex-basis:100%}}

/* Bound Select2 and payroll controls to the actual disclosure width. */
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .box-header[hidden]{display:none!important}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module .row{margin:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-module :is(.form-control,.select2-container){width:100%!important;max-width:100%;min-width:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-payroll .row{grid-template-columns:minmax(0,1fr)}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-payroll .multi-input{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-payroll .multi-input>label{grid-column:1/-1;margin-bottom:0}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-payroll .multi-input>br{display:none}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-payroll .multi-input>.form-control{float:none!important;width:100%!important;min-width:0}
html body .sc-password-toggle .sc-password-slash[hidden]{display:none!important}

/* Native permissions heading shares the HR/payroll icon treatment. */
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-permissions>.tw-p-2>.box-header{display:flex;align-items:center;gap:10px}
html body :is(#user_add_form,#user_edit_form,#edit_user_profile_form) .sc-user-permissions>.tw-p-2>.box-header .box-title{margin:0}

/* Payment overview: compact, themed and print-safe. */
html body .sc-payments-details :is(.add_payment_modal,[data-receipt-payment]){display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;height:36px!important;min-height:36px!important;padding:0 12px!important;font-size:13px;line-height:20px}

html body .sc-payments-details .sc-payments-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:16px}
html body .sc-payments-details .modal-title{font-size:18px;line-height:1.3;margin:0!important;text-align:start}
html body .sc-payment-header-end{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
html body .sc-payments-details .close{position:static!important;float:none!important;margin:0!important;flex:none}
html body .sc-payment-reference,html body .sc-payment-status{display:inline-block;border:1px solid var(--sc-border);border-radius:7px;padding:4px 8px;font-size:12px;font-weight:600;line-height:1.4;background:var(--sc-soft);color:var(--sc-text);overflow-wrap:anywhere}
html body .sc-payment-reference{color:var(--sc-accent);text-align:center;max-width:160px}
html body .sc-payment-status[data-status=paid]{color:#16786b;background:#e8f6f1;border-color:#b6dfd1}
html[data-theme=dark] body .sc-payment-status[data-status=paid]{color:#80dfc4;background:#203b34;border-color:#376558}
html body .sc-payments-details .modal-body{padding:16px;font-size:13px;color:var(--sc-text)}
html body .sc-payments-details .invoice-info{display:grid;grid-template-columns:1fr 1fr .7fr;gap:12px;margin:0 0 12px;padding:12px;background:var(--sc-soft);border:1px solid var(--sc-border);border-radius:10px}
html body .sc-payments-details .invoice-info::before,html body .sc-payments-details .invoice-info::after{display:none}
html body .sc-payments-details .invoice-col{width:auto;float:none;padding:0;min-width:0;line-height:1.5;overflow-wrap:anywhere}
html body .sc-payments-details address{margin:2px 0 0;font-size:13px;line-height:1.5}
html body .sc-payments-details .sc-payment-notifications{margin:0 0 12px}
html body .sc-payments-details .sc-payment-notifications>div{padding:0}
html body .sc-payments-details .sc-payment-notifications+br{display:none}
html body .sc-payments-details .sc-payment-notifications button{min-height:32px;padding:5px 9px;font-size:12px;border:1px solid var(--sc-border)!important;background:var(--sc-soft)!important;color:var(--sc-accent)!important;box-shadow:none}
html body .sc-payments-details .table-responsive{margin:0;border:1px solid var(--sc-border);border-radius:9px}
html body .sc-payments-details table{margin:0;font-size:12px}
html body .sc-payments-details table th,html body .sc-payments-details table td{padding:9px 10px!important;vertical-align:middle;border-color:var(--sc-border)!important}
html body .sc-payments-details table th{background:var(--sc-soft)!important;color:var(--sc-text);white-space:nowrap}
html body .sc-payments-details .display_currency{white-space:nowrap;font-weight:600}
html body .sc-payments-details .modal-footer{padding:12px 16px}
html body .sc-payments-details .modal-footer button{min-height:34px;padding:6px 12px;font-size:13px}
@media(max-width:480px){html body .sc-payments-details .modal-title{font-size:14px}html body .sc-payments-details .sc-payments-header{gap:6px;padding:12px}html body .sc-payment-header-end{gap:6px}html body .sc-payment-reference{max-width:90px}html body .sc-payments-details .invoice-info{grid-template-columns:1fr 1fr}html body .sc-payments-details .invoice-col:last-child{grid-column:1/-1}html body .sc-payments-details .modal-body{padding:12px}}
@media print{html body .sc-payments-details,html body .sc-payments-details *{color:#000!important;background:#fff!important;box-shadow:none!important}html body .sc-payments-details .modal-footer{display:none!important}html body .sc-payments-details .table-responsive{overflow:visible!important}html body .sc-payments-details table{width:100%!important}html body .sc-payments-details tr{break-inside:avoid}}

html body .sc-payments-details .sc-payments-header::before,html body .sc-payments-details .sc-payments-header::after{display:none;content:none}

/* Shared transaction headings: title / centered reference / status and close. */
html body .modal-header.sc-transaction-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:16px}
html body .sc-transaction-header::before,html body .sc-transaction-header::after{display:none;content:none}
html body .sc-transaction-header .modal-title{font-size:18px;line-height:1.3;margin:0!important;text-align:start;min-width:0;overflow-wrap:anywhere}
html body .sc-transaction-header-end{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
html body .sc-transaction-header .close{position:static!important;float:none!important;margin:0!important;flex:none}
html body .sc-transaction-reference,html body .sc-transaction-status{display:inline-block;border:1px solid var(--ui-border);border-radius:7px;padding:4px 8px;font-size:12px;font-weight:600;line-height:1.4;background:var(--ui-soft);color:var(--ui-text);overflow-wrap:anywhere}
html body .sc-transaction-reference{color:var(--ui-focus);text-align:center;max-width:160px}
html body .sc-transaction-status[data-status=paid]{color:#16786b;background:#e8f6f1;border-color:#b6dfd1}
html[data-theme=dark] body .sc-transaction-status[data-status=paid]{color:#80dfc4;background:#203b34;border-color:#376558}
@media(max-width:480px){html body .modal-header.sc-transaction-header{gap:6px;padding:12px}html body .sc-transaction-header .modal-title{font-size:14px}html body .sc-transaction-header-end{gap:6px}html body .sc-transaction-reference{max-width:90px}}
@media print{html body .sc-transaction-reference,html body .sc-transaction-status{background:#fff!important;color:#111!important;border-color:#ddd!important}}

/* Shared row action menu presentation across ERP modules. */
html body .sc-action-menu{padding:5px!important;border:1px solid var(--ui-border)!important;border-radius:12px!important;background:var(--ui-surface)!important;box-shadow:0 10px 28px #0002;min-width:220px;scrollbar-width:thin;scrollbar-color:var(--ui-muted) var(--ui-surface)}
html body .sc-action-menu>li>:is(a,button){display:flex!important;align-items:center;gap:9px;min-height:32px;padding:5px 9px!important;margin:0;border-radius:7px;font-size:13px!important;line-height:20px;font-weight:500;color:var(--ui-text)!important;white-space:normal}
html body .sc-action-menu .sc-action-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:6px;background:var(--ui-soft);color:var(--ui-focus)}
html body .sc-action-menu .sc-action-icon svg{width:17px;height:17px}
html body .sc-action-menu>li>:is(a,button):is(:hover,:focus){background:var(--ui-soft)!important;color:var(--ui-text)!important}
html body .sc-action-menu>li>:is(a,button):focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}
html body .sc-action-menu .sc-action-danger .sc-action-icon{color:#c74658;background:color-mix(in srgb,#c74658 12%,var(--ui-surface))}
html[data-theme=dark] body .sc-action-menu .sc-action-danger .sc-action-icon{color:#ff94a2}
html body .sc-action-menu>.divider{margin:5px 9px!important;background:var(--ui-border)!important}
@media(pointer:coarse){html body .sc-action-menu>li>:is(a,button){min-height:40px}}
html body .sc-action-menu .sc-action-icon i{font-size:16px;width:auto;margin:0}
html body .sc-product-bulk-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:12px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);max-width:100%}
html body .sc-product-bulk-actions form{display:flex;margin:0;max-width:100%}
html body .sc-product-bulk-actions :is(button,input[type=submit]){white-space:normal;max-width:100%}
@media print{html body .sc-product-bulk-actions{display:none!important}}

/* Shipping editor: explicit grid prevents unequal textarea heights shifting floats. */
html body .sc-shipping-dialog{width:820px;max-width:calc(100% - 24px);margin:20px auto}
html body .sc-shipping-dialog .modal-content{display:flex;flex-direction:column;max-height:calc(100dvh - 40px);overflow:hidden}
html body .sc-shipping-dialog .modal-header,html body .sc-shipping-dialog .modal-footer{flex:none}
html body .sc-shipping-dialog .modal-body{overflow-y:auto;min-height:0;padding:20px}
html body .sc-shipping-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin:0}
html body .sc-shipping-grid::before,html body .sc-shipping-grid::after,html body .sc-shipping-grid>.clearfix{display:none}
html body .sc-shipping-grid>[class*=col-]{float:none;width:auto;min-width:0;padding:0;grid-column:span 12}
html body .sc-shipping-grid .form-group{margin:0}
html body .sc-shipping-grid .form-control,html body .sc-shipping-grid .select2-container{width:100%!important;max-width:100%}
html body .sc-shipping-grid textarea.form-control{min-height:84px;resize:vertical}
html body .sc-shipping-grid .dropzone{min-height:100px;background:var(--ui-soft);border:1px dashed var(--ui-border);border-radius:10px;color:var(--ui-text)}
html body .sc-shipping-grid .dz-message{margin:18px 0}
html body .sc-shipping-dialog .modal-footer{padding:14px 20px;border-top:1px solid var(--ui-border);background:var(--ui-surface)}
@media(min-width:640px){html body .sc-shipping-grid>.col-md-6{grid-column:span 6}html body .sc-shipping-grid>.col-md-4{grid-column:span 4}}
@media(max-width:639px){html body .sc-shipping-dialog{margin:12px auto}html body .sc-shipping-dialog .modal-content{max-height:calc(100dvh - 24px)}html body .sc-shipping-dialog .modal-body{padding:14px}}

/* My profile uses the same simple/advanced layout as user management. */
.sc-profile-overview{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:16px;align-items:start}
.sc-profile-overview>div{min-width:0}
.sc-profile-actions{display:flex;justify-content:flex-end;margin:12px 0 20px}
.sc-profile-security{border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-text)}
.sc-profile-security>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;cursor:pointer;font-weight:600;list-style:none}
.sc-profile-security>summary::-webkit-details-marker{display:none}
.sc-profile-security[open]>summary svg{transform:rotate(180deg)}
.sc-profile-security form{padding:0 20px 4px}
.sc-profile-password-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sc-profile-page input[type=file]{max-width:100%}
@media(max-width:767px){.sc-profile-overview,.sc-profile-password-grid{grid-template-columns:minmax(0,1fr)}}

.sc-profile-overview>div{grid-column:auto}

.sc-profile-image{position:relative}.sc-profile-image-help{display:flex;justify-content:flex-end}
.sc-profile-image-help button{color:var(--ui-muted);padding:0 4px;font-size:20px}
.sc-profile-image-preview{max-width:220px;aspect-ratio:1;margin:0 auto 12px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-soft);overflow:hidden;display:flex;align-items:center;justify-content:center}
.sc-profile-image-preview img{width:100%;height:100%;object-fit:contain}.sc-profile-image-preview:empty{display:none}
.sc-profile-image-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.sc-profile-image-actions label{cursor:pointer;white-space:normal}
.sc-profile-image [hidden]{display:none!important}.sc-profile-image-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.sc-profile-image:focus-within .sc-profile-image-actions label{outline:2px solid var(--ui-focus);outline-offset:2px}
#profile-image-error:empty{display:none}#profile-image-error{margin:12px 0 0}

html body .scrolltop{width:auto;margin:0;inset-inline-end:16px;left:auto;right:auto;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:1000;pointer-events:none}
html body .scrolltop{inset-inline-end:16px}
html body .scrolltop .scroll{position:static;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;margin:0;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-focus);box-shadow:0 4px 14px #0003;pointer-events:auto;transition:background .15s,color .15s}
html body .scrolltop .scroll:hover{background:var(--ui-soft);color:var(--ui-text)}
html body .scrolltop .scroll:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}
@media(max-width:600px){html body .scrolltop{inset-inline-end:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){html body .scrolltop .scroll{transition:none}}

/* The profile fields determine the row height; the photo never enlarges it. */
html body .sc-profile-photo-heading{display:flex;align-items:center;gap:8px}
html body .sc-profile-photo-heading .box-title{margin:0;min-width:0}
html body .sc-profile-photo-help{flex:none;color:var(--ui-muted);padding:0;font-size:18px;line-height:1;border:0;min-height:0}
@media(min-width:768px){
.sc-profile-overview>.sc-profile-photo-card{contain:size;align-self:stretch;min-height:0}
.sc-profile-photo-card>div{height:100%;box-sizing:border-box;display:flex;flex-direction:column}
.sc-profile-photo-card .tw-flow-root,.sc-profile-photo-card .tw-flow-root>div,.sc-profile-photo-card .tw-flow-root>div>div{display:flex;flex-direction:column;flex:1;min-height:0}
.sc-profile-photo-card .sc-profile-image{display:flex;flex-direction:column;flex:1;min-height:0}
.sc-profile-photo-card .sc-profile-image-preview{position:relative;flex:1;min-height:0;aspect-ratio:auto;width:100%;max-width:180px;margin:0 auto 10px}
.sc-profile-photo-card .sc-profile-image-preview img{position:absolute;inset:0;max-height:100%;object-fit:contain}
.sc-profile-photo-card .sc-profile-image-actions{flex:none}
.sc-profile-photo-card #profile-image-error{flex:none;font-size:12px;margin-top:4px}
}
@media(max-width:767px){.sc-profile-photo-card .sc-profile-image-preview{max-width:160px}}

/* Tablet controls have explicit SVG dimensions, including Safari. */
html body #btnCalculator{display:inline-flex!important;flex-shrink:0}
html body #btnCalculator svg{display:block;width:24px;height:24px;flex:none}
.sc-clock-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sc-clock-heading .modal-title{flex:1;margin:0}
.sc-clock-ip{font-size:12px;padding:4px 8px;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-muted)}
.sc-help-button{border:0;background:transparent;color:var(--ui-muted);padding:4px;cursor:help}
.sc-search-results{position:absolute;inset-inline:0;top:100%;max-height:60vh;overflow:auto;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:12px;padding:6px;z-index:1100;box-shadow:0 8px 24px #0003}
.sc-header-search{position:relative}
.sc-search-results[hidden]{display:none}
.sc-search-results a{display:block;padding:9px 12px;color:var(--ui-text);border-radius:8px}
.sc-search-results a:hover,.sc-search-results a:focus{background:var(--ui-soft);outline:2px solid var(--ui-focus)}
.sc-search-results small{display:block;color:var(--ui-muted);font-size:11px}
.sc-search-target{outline:2px solid var(--ui-focus)!important;outline-offset:5px;background:var(--ui-soft)!important;scroll-margin:100px}

/* Shared customer/supplier balance payment layout. */
html body #pay_contact_due_form .sc-due-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 12px}
html body #pay_contact_due_form .sc-due-summary:before,html body #pay_contact_due_form .sc-due-summary:after,html body #pay_contact_due_form .sc-due-fields:before,html body #pay_contact_due_form .sc-due-fields:after,html body #pay_contact_due_form .sc-due-fields>.clearfix{display:none}
html body #pay_contact_due_form .sc-due-summary>[class*="col-"],html body #pay_contact_due_form .sc-due-fields>[class*="col-"]{width:auto;float:none;padding:0;min-width:0}
html body #pay_contact_due_form .sc-due-summary .well{padding:12px;margin:0;height:100%;font-size:12px;overflow-wrap:anywhere}
html body #pay_contact_due_form .sc-due-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin:0}
html body #pay_contact_due_form .sc-due-fields>.col-md-12,html body #pay_contact_due_form .sc-due-fields>.payment_details_div{grid-column:1/-1}
@media(max-width:420px){html body #pay_contact_due_form .sc-due-summary,html body #pay_contact_due_form .sc-due-fields{grid-template-columns:minmax(0,1fr)}}

@media(max-width:600px){html body .sc-topbar #btnCalculator{display:none!important}}

.sc-einvoice-link{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:28px;height:28px;margin-inline-start:5px;border:1px solid var(--ui-border);border-radius:7px;color:var(--ui-focus);background:var(--ui-soft)}.sc-einvoice-link svg{width:17px;height:17px}.sc-einvoice-link:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}

@media screen {
body[data-activity-profile=services] .sc-stock-chip,body[data-activity-profile=services] .sc-initial-stock,body[data-activity-profile=services] #opening_stock_button,body[data-activity-profile=services] .form-group:has(label[for=enable_stock]),body[data-activity-profile=services] .form-group:has(label[for=weight]),body[data-activity-profile=services] .form-group:has(label[for=alert_quantity]),body[data-activity-profile=services] .form-group:has(label[for=expiry_period]){display:none!important}
body[data-activity-delivery=off] .a4-shipping-address,body[data-activity-delivery=off] [aria-controls=shipping_edit],body[data-activity-delivery=off] .pos_totals_cell:has([data-target="#posShippingModal"]){display:none!important}
.sc-profile-hidden{display:none!important}
}

@media screen{html body[data-activity-profile=both] #product_add_form .sc-stock-chip.sc-advanced-field{display:flex!important}body[data-activity-profile=services] .form-group:has(label[for=barcode_type]),body[data-activity-profile=services] .form-group:has(label[for=brand_id]){display:none!important}}

/* Service catalog keeps rates and options, without physical product tooling. */
body[data-activity-profile="services"] #product_add_form .form-group:has([name="warranty_id"]),body[data-activity-profile="services"] #product_edit_form .form-group:has([name="warranty_id"]){display:none!important}
body[data-activity-profile="services"] a[href*="/labels/show"],body[data-activity-profile="services"] a[href*="/barcodes"],body[data-activity-profile="services"] a[href*="/brands"],body[data-activity-profile="services"] a[href*="/warranties"]{display:none!important}

/* Shared contextual help icon. Visible focus retained without a permanent button border. */
html body button.sc-help-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px;padding:4px;border:0!important;border-radius:50%;background:transparent!important;box-shadow:none!important;color:var(--ui-muted,#81758f);vertical-align:middle;cursor:pointer;flex:none}
html body button.sc-help-trigger svg{width:16px;height:16px}
html body button.sc-help-trigger:hover,html body button.sc-help-trigger[aria-expanded=true]{color:var(--sc-accent,#8864df)}
html body button.sc-help-trigger:focus-visible{outline:2px solid var(--sc-accent,#8864df);outline-offset:2px}
html body button.sc-help-trigger[hidden]{display:none!important}
@media(pointer:coarse){html body button.sc-help-trigger{width:36px;height:36px;min-height:36px}}

.sc-unit-trigger{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;max-width:62px;min-height:30px;padding:0 2px;border:0;background:transparent;color:var(--sc-text);font-size:11px;cursor:pointer}
.sc-unit-trigger span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.sc-unit-trigger svg{width:12px;height:12px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sc-unit-trigger:focus-visible{outline:2px solid var(--sc-accent);border-radius:4px}
.sc-unit-menu{position:fixed;z-index:1100;min-width:170px;max-width:calc(100vw - 16px);max-height:240px;overflow:auto;padding:4px;border:1px solid var(--sc-border);border-radius:9px;background:var(--sc-surface);box-shadow:0 6px 20px #0003;color:var(--sc-text)}
.sc-unit-menu button{display:block;width:100%;text-align:start;padding:8px 12px;background:transparent;border:0;border-radius:5px;color:inherit}
.sc-unit-menu button[aria-selected=true],.sc-unit-menu button:hover,.sc-unit-menu button:focus-visible{background:var(--sc-soft);color:var(--sc-accent);outline:none}

/* BEGIN generated first-paint icons: tools/build-ui-icons.cjs */
@media screen {
@supports (mask-image: url("")) {
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-plus,.fa-plus-circle,.glyphicon-plus,.fa-times,.fa-close,.glyphicon-remove,.fa-print,.glyphicon-print,.fa-user,.fa-user-o,.glyphicon-user,.fa-calendar,.fa-calendar-alt,.glyphicon-calendar,.fa-map-marker,.fa-map-marker-alt,.fa-edit,.fa-pencil,.fa-pencil-alt,.glyphicon-edit,.glyphicon-pencil,.fa-trash,.fa-trash-alt,.fa-trash-o,.glyphicon-trash,.fa-search,.glyphicon-search,.fa-barcode,.glyphicon-barcode,.fa-check,.glyphicon-ok,.fa-credit-card,.glyphicon-credit-card,.fa-money,.fa-money-bill,.fa-money-bill-alt,.fa-wallet,.fa-receipt,.fa-tag,.glyphicon-tag,.fa-percent,.fa-percentage,.fa-truck,.fa-shipping-fast,.fa-sticky-note,.fa-sticky-note-o,.fa-paperclip,.glyphicon-paperclip,.fa-briefcase,.glyphicon-briefcase,.fa-bank,.fa-university,.fa-clock,.fa-clock-o,.glyphicon-time,.fa-sliders,.fa-sliders-h,.fa-warehouse,.fa-ellipsis-h,.fa-download,.glyphicon-download-alt,.fa-upload,.glyphicon-upload,.fa-envelope,.fa-envelope-o,.glyphicon-envelope,.fa-eye,.glyphicon-eye-open,.fa-file,.fa-file-o,.fa-file-text,.fa-file-text-o,.fa-file-alt,.fa-save,.fa-floppy-o,.glyphicon-floppy-disk,.fa-filter,.glyphicon-filter,.fa-columns,.fa-chevron-down,.fa-angle-down,.glyphicon-chevron-down,.fa-info,.fa-info-circle,.fa-question-circle,.fa-question-circle-o,.fa-minus,.glyphicon-minus)::before { content:""!important; display:inline-block; width:1em; height:1em; vertical-align:-.125em; background-color:currentColor; forced-color-adjust:none; -webkit-mask:var(--sc-legacy-icon) center/contain no-repeat; mask:var(--sc-legacy-icon) center/contain no-repeat; }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-plus,.fa-plus-circle,.glyphicon-plus) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v14M5%2012h14%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-times,.fa-close,.glyphicon-remove) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%206%2012%2012M6%2018%2018%206%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-print,.glyphicon-print) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209V3h12v6M6%2017H3V9h18v8h-3M6%2014h12v7H6z%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-user,.fa-user-o,.glyphicon-user) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2021v-2a7%207%200%200%200-14%200v2M16%207a4%204%200%201%201-8%200%204%204%200%200%201%208%200%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-calendar,.fa-calendar-alt,.glyphicon-calendar) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16v16H4zM4%2010h16M8%203v4m8-4v4%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-map-marker,.fa-map-marker-alt) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012S4%2016%204%2010a8%208%200%201%201%2016%200ZM15%2010a3%203%200%201%201-6%200%203%203%200%200%201%206%200%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-edit,.fa-pencil,.fa-pencil-alt,.glyphicon-edit,.glyphicon-pencil) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%204%205%205M4%2020l4-1L21%206l-5-5L3%2014v6h1Z%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-trash,.fa-trash-alt,.fa-trash-o,.glyphicon-trash) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h18M9%206V3h6v3M5%206l1%2015h12l1-15M10%2010v7m4-7v7%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-search,.glyphicon-search) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%2010a6%206%200%201%201-12%200%206%206%200%200%201%2012%200Zm-1%205%206%206%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-barcode,.glyphicon-barcode) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205v14M7%205v14M11%205v14M14%205v14M17%205v14M20%205v14%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-check,.glyphicon-ok) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%2012%204%204L19%206%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-credit-card,.glyphicon-credit-card) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h18v14H3zM3%2010h18M7%2015h3%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-money,.fa-money-bill,.fa-money-bill-alt) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%205h20v14H2zM15%2012a3%203%200%201%201-6%200%203%203%200%200%201%206%200M5%209v6m14-6v6%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-wallet) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%208H4V4h14v4M4%208v12h17V8M16%2012h5v4h-5z%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-receipt) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%203v18l3-2%204%202%204-2%203%202V3l-3%202-4-2-4%202-3-2ZM8%209h8m-8%204h8%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-tag,.glyphicon-tag) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203h8l10%2010-8%208L3%2011V3Zm4%204h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-percent,.fa-percentage) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2019%2019%205M9%206a3%203%200%201%201-6%200%203%203%200%200%201%206%200Zm12%2012a3%203%200%201%201-6%200%203%203%200%200%201%206%200%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-truck,.fa-shipping-fast) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%205h12v12H2zM14%2010h4l4%204v3h-8M7%2018a2%202%200%201%201-4%200m18%200a2%202%200%201%201-4%200%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-sticky-note,.fa-sticky-note-o) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%203h16v12l-6%206H4V3Zm10%2018v-6h6%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-paperclip,.glyphicon-paperclip) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m8%2012%206-6a3%203%200%200%201%204%204l-8%208a5%205%200%200%201-7-7l9-9M7%2013l7-7%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-briefcase,.glyphicon-briefcase) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207h18v14H3zM8%207V3h8v4M3%2012l9%203%209-3M12%2012v4%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-bank,.fa-university) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2010h18M3%2021h18M5%2010v8m5-8v8m4-8v8m5-8v8M2%207l10-5%2010%205v3H2z%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-clock,.fa-clock-o,.glyphicon-time) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2012a9%209%200%201%201-18%200%209%209%200%200%201%2018%200ZM12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-sliders,.fa-sliders-h) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h6m4%200h8M3%2012h12m4%200h2M3%2018h2m4%200h12M9%203v6m6%200v6M5%2015v6%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-warehouse) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021V8l9-5%209%205v13M3%2021h18M7%2021V11h10v10M7%2015h10M7%2018h10%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-ellipsis-h) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h.01M12%2012h.01M19%2012h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-download,.glyphicon-download-alt) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v12m-5-5%205%205%205-5M4%2016v5h16v-5%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-upload,.glyphicon-upload) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2016V3m-5%205%205-5%205%205M4%2016v5h16v-5%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-envelope,.fa-envelope-o,.glyphicon-envelope) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h18v14H3zM3%206l9%207%209-7%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-eye,.glyphicon-eye-open) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012s3-7%2010-7%2010%207%2010%207-3%207-10%207S2%2012%202%2012Zm13%200a3%203%200%201%201-6%200%203%203%200%200%201%206%200%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-file,.fa-file-o,.fa-file-text,.fa-file-text-o,.fa-file-alt) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203H5v18h14V8l-5-5Zm0%200v5h5M8%2013h8m-8%204h5%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-save,.fa-floppy-o,.glyphicon-floppy-disk) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%203h13l4%204v14H3V3h1ZM7%203v6h10V3M7%2021v-8h10v8%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-filter,.glyphicon-filter) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h18l-7%208v7l-4%202v-9L3%204Z%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-columns) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h18v16H3zM9%204v16m6-16v16%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-chevron-down,.fa-angle-down,.glyphicon-chevron-down) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209l6%206%206-6%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-info,.fa-info-circle) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%209h.01M11%2012h1v4h1M12%203c7.2%200%209%201.8%209%209c0%207.2%20-1.8%209%20-9%209c-7.2%200%20-9%20-1.8%20-9%20-9c0%20-7.2%201.8%20-9%209%20-9%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-question-circle,.fa-question-circle-o) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203c7.2%200%209%201.8%209%209c0%207.2%20-1.8%209%20-9%209c-7.2%200%20-9%20-1.8%20-9%20-9c0%20-7.2%201.8%20-9%209%20-9M12%2016v.01M12%2013a2%202%200%200%200%20.914%20-3.782a1.98%201.98%200%200%200%20-2.414%20.483%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.fa,.fas,.far,.glyphicon):not([data-sc-icon]):not(:has(svg)):not(.fa-stack-1x):not(.fa-stack-2x):is(.fa-minus,.glyphicon-minus) { --sc-legacy-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14%22%2F%3E%3C%2Fsvg%3E"); }
html body :is(.btn,.tw-dw-btn,.input-group-addon) > :is(i.fa,i.fas).text-primary {color:inherit!important}
}
}
/* END generated first-paint icons */

/* Native select palettes follow the same light/dark tokens as Select2. */
@media screen {
 html body select { color-scheme:light; accent-color:var(--ui-focus); }
 html[data-theme=dark] body select { color-scheme:dark; }
 html body select:is(.form-control,.input-sm,.tw-dw-select) {
  background-color:var(--ui-field)!important; color:var(--ui-text)!important; border-color:var(--ui-border);
 }
 html body select:focus { --tw-ring-color:var(--ui-focus); --tw-ring-shadow:0 0 #0000; box-shadow:none!important; }
 html body select option, html body select optgroup { background-color:var(--ui-surface); color:var(--ui-text); }
 html body select option:checked { background-color:var(--ui-soft); color:var(--ui-text); }
 html body select option:disabled { color:var(--ui-muted); }
}

/* ERP product columns: two total lines and full text in the shared tooltip. */
html:root body .dataTables_wrapper .sc-catalogue-identity{display:block!important;width:100%!important;min-width:0!important;max-width:100%;min-height:44px;height:auto!important;padding:0!important;margin:0!important;border:0!important;border-radius:4px;background:transparent!important;box-shadow:none!important;color:inherit!important;font:inherit;text-align:start;white-space:normal;cursor:help}
html:root body .dataTables_wrapper .sc-catalogue-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}
html:root body .dataTables_wrapper .sc-catalogue-meta{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;min-width:0;max-width:100%;margin-top:3px;line-height:1.4;overflow:hidden}
html:root body .dataTables_wrapper .sc-catalogue-meta .sc-catalogue-sku{display:block;min-width:0;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:root body .dataTables_wrapper .sc-catalogue-meta .sc-product-status{flex-shrink:0;padding-block:0}
html:root body .dataTables_wrapper .sc-catalogue-identity:focus-visible{outline:2px solid var(--ui-primary);outline-offset:2px}
@media print{html:root body .dataTables_wrapper .sc-catalogue-name,html:root body .dataTables_wrapper .sc-catalogue-meta .sc-catalogue-sku{white-space:normal;overflow:visible}html:root body .dataTables_wrapper .sc-catalogue-meta{flex-wrap:wrap;overflow:visible}}

html:root body .dataTables_wrapper .sc-catalogue-meta .sc-catalogue-sku{color:var(--ui-muted);font-size:11px}
html:root body .dataTables_wrapper .sc-catalogue-identity:not(:has(.sc-catalogue-meta)) .sc-catalogue-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere}
@media print{html:root body .dataTables_wrapper .sc-catalogue-identity:not(:has(.sc-catalogue-meta)) .sc-catalogue-name{display:block;-webkit-line-clamp:unset}}

/* First DataTables paint: retain geometry and the shared loading/error UI. */
@media screen {
html.sc-table-boot body [data-sc-table-host]:not([data-sc-table-ready]){min-height:150px}
html.sc-table-boot body [data-sc-table-host]:not([data-sc-table-ready]) :is(table,.dataTables_info,.dataTables_paginate),
html body .sc-table-preparing :is(table,.dataTables_info,.dataTables_paginate){visibility:hidden}
html body :is(table.table,table.dataTable) a:not(.btn):not(.dropdown-menu a):not(.sc-action-menu a):not([role=button]),
html body a.btn-modal:not(.btn){color:var(--ui-focus);text-decoration:none}
html body :is(table.table,table.dataTable) a:not(.btn):not(.dropdown-menu a):not(.sc-action-menu a):not([role=button]):is(:hover,:focus-visible),
html body a.btn-modal:not(.btn):is(:hover,:focus-visible){color:var(--ui-primary);text-decoration:none}
html body :is(table.table,table.dataTable) a:not(.btn):focus-visible,html body a.btn-modal:not(.btn):focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px;border-radius:3px}
}
/* Purchase detail: same two-column reading order as the document form. */
html body .sc-purchase-parties { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 24px; margin-inline:0; }
html body .sc-purchase-parties::before,html body .sc-purchase-parties::after { display:none; }
html body .sc-purchase-parties > .invoice-col { width:auto; float:none; min-width:0; padding:0; overflow-wrap:anywhere; }
html body .sc-purchase-parties > .invoice-col:first-child { grid-row:span 2; }
html body .sc-purchase-parties address { margin-bottom:0; }
html body .sc-purchase-notes { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:16px; margin-inline:0; }
html body .sc-purchase-notes::before,html body .sc-purchase-notes::after { display:none; }
html body .sc-purchase-notes > div { width:auto; float:none; min-width:0; padding:0; overflow-wrap:anywhere; }
@media(max-width:480px){html body .sc-purchase-parties{grid-template-columns:minmax(0,1fr)}html body .sc-purchase-parties > .invoice-col:first-child{grid-row:auto}}

/* Receipt payment history: shared theme, compact settlement. */
html body .sc-receipt-payments .sc-receipt-payment-client{margin:0 0 14px;overflow-wrap:anywhere}
html body .sc-receipt-payment-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
html body .sc-receipt-payment-actions{display:flex;flex-wrap:wrap;gap:8px}
html body .sc-receipt-payment-summary dl{margin:0;min-width:220px;margin-inline-start:auto}
html body .sc-receipt-payment-summary dl>div{display:flex;align-items:baseline;justify-content:flex-end;gap:16px;margin:0 0 4px}
html body .sc-receipt-payment-summary dt{font-weight:500;text-align:end}
html body .sc-receipt-payment-summary dd{margin:0;text-align:end;min-width:90px}
html body .sc-receipt-payment-summary dl>div:last-child{margin-top:6px;font-weight:600}
@media(max-width:480px){html body .sc-receipt-payment-summary{flex-direction:column;gap:12px}html body .sc-receipt-payment-summary dl{width:100%;min-width:0}}

html body .modal-footer a.sc-document-signature{display:inline-flex;align-items:center;justify-content:center;gap:6px}
html body .modal-footer a.sc-document-signature svg{width:18px;height:18px;flex:0 0 18px;margin:0}
html body .sc-user-mode-toggle{display:inline-flex;align-items:center;gap:8px}
html body .sc-user-mode-toggle>.sc-ui-icon{width:16px;height:16px;flex:none;transition:transform 160ms ease}
html body .sc-user-mode-toggle[aria-expanded=true]>.sc-ui-icon{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){html body .sc-user-mode-toggle>.sc-ui-icon{transition:none}}

/* Interface links retain colour/focus, without typographic underlines. */
@media screen {
html body a:any-link {text-decoration:none!important}
html body a:focus-visible {outline:2px solid var(--ui-focus);outline-offset:2px}
/* Complete text is present on first paint; no client-side reconstruction. */
html body .sc-table-text {display:inline-block;max-width:20ch;min-width:0;min-height:28px;height:auto;padding:2px 0;margin:0;border:0;border-radius:3px;background:transparent;color:inherit;font:inherit;line-height:1.4;text-align:start;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;box-shadow:none}
html body .sc-table-text:hover {color:var(--ui-focus)}
html body .sc-table-text:focus-visible {outline:2px solid var(--ui-focus);outline-offset:2px}
html body td:has(>.sc-table-text) {white-space:nowrap}
}
@media print {.sc-table-text {border:0;background:none;color:inherit;font:inherit;white-space:normal;text-align:start}}

/* Two independent document actions, paired in the server-rendered sales menu. */
@media screen {
html body .dropdown-menu>li.sc-document-action-pair{display:flex!important;align-items:stretch;gap:4px}
html body .dropdown-menu>li.sc-document-action-pair>a{display:flex!important;align-items:center;gap:8px;min-width:0;width:auto!important;flex:1;padding:7px 8px!important;white-space:nowrap;border-radius:6px}
html body .dropdown-menu>li.sc-document-action-pair>a.sc-document-signature{flex:0 0 auto;border-inline-start:1px solid var(--ui-border);color:var(--ui-focus)}
html body .dropdown-menu>li.sc-document-action-pair>a>svg{width:18px;height:18px;flex:none}
html body .dropdown-menu>li.sc-document-action-pair>a:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}
}

html:root body #show_unread_notifications .notifications_count:empty{display:none!important}

html body .modal-header.sc-transaction-with-badges{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
html body .sc-transaction-with-badges .sc-transaction-header-end{flex-wrap:wrap;gap:5px}
html body .sc-transaction-with-badges .sc-sale-date{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
html body .sc-sale-date svg{width:14px;height:14px}
html body .sc-sale-document-fields{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:2px 12px;text-align:start;margin:0}
html body .sc-sale-document-fields dd{margin:0;text-align:end;overflow-wrap:anywhere}
html body .sc-sale-payments{container-type:inline-size}
html body .sc-transaction-with-badges [data-status=shipped]{color:var(--ui-primary);background:var(--ui-soft)}
@media(max-width:600px){html body .modal-header.sc-transaction-with-badges .sc-transaction-reference{grid-column:2}html body .sc-transaction-with-badges .sc-transaction-header-end{grid-column:1/-1;justify-content:flex-start}}
