/* Independent styling. No Telerik assets, source, or runtime dependencies. */
.gbc-qg-grid{--gbc-qg-border:#dce3eb;--gbc-qg-ink:#253449;--gbc-qg-muted:#6b7b8c;--gbc-qg-bg:#fff;--gbc-qg-soft:#f6f8fb;--gbc-qg-accent:#198f68;--gbc-qg-accent-pale:#e9f7f1;font:14px/1.5 'Segoe UI',Tahoma,Arial,sans-serif;color:var(--gbc-qg-ink);background:var(--gbc-qg-bg);border:1px solid var(--gbc-qg-border);border-radius:10px;box-shadow:0 3px 14px #18283d0a;max-width:100%;overflow:hidden}
.gbc-qg-grid *{box-sizing:border-box}
.gbc-qg-grid-config{display:none}
.gbc-qg-grid-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:12px;background:#fff;border-bottom:1px solid var(--gbc-qg-border)}
.gbc-qg-grid-toolbar-actions,.gbc-qg-grid-toolbar-end,.gbc-qg-pager-left,.gbc-qg-pager-right{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.gbc-qg-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:1px solid var(--gbc-qg-border);border-radius:6px;background:#fff;color:var(--gbc-qg-ink);font:inherit;line-height:1.4;padding:7px 12px;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background .1s,border-color .1s}
.gbc-qg-btn:hover:not(:disabled){background:#f3f7fa;border-color:#bdcad5}.gbc-qg-btn:disabled{opacity:.5;cursor:not-allowed}
.gbc-qg-btn-primary{background:var(--gbc-qg-accent);border-color:var(--gbc-qg-accent);color:white}
.gbc-qg-btn-primary:hover:not(:disabled){background:#167d5d;color:#fff;border-color:#167d5d}
.gbc-qg-btn-danger{background:#b83d45;color:#fff;border-color:#b83d45}
.gbc-qg-btn-sm{font-size:12px;padding:4px 7px}
.gbc-qg-control{border:1px solid var(--gbc-qg-border);border-radius:6px;background:#fff;color:var(--gbc-qg-ink);font:inherit;padding:7px 9px;min-width:0}
.gbc-qg-control:focus,.gbc-qg-filter-input:focus,.gbc-qg-filter-op:focus,.gbc-qg-btn:focus-visible{outline:2px solid #6bad9a;outline-offset:1px}
.gbc-qg-search{width:min(240px,60vw)}.gbc-qg-group-select{width:142px}.gbc-qg-group-label{color:var(--gbc-qg-muted);font-size:12px}
.gbc-qg-column-chooser{position:relative}.gbc-qg-column-chooser summary{list-style:none}.gbc-qg-column-chooser summary::-webkit-details-marker{display:none}
.gbc-qg-column-chooser-panel{position:absolute;z-index:20;min-width:190px;inset-inline-end:0;top:calc(100% + 5px);max-height:260px;overflow:auto;background:#fff;border:1px solid var(--gbc-qg-border);border-radius:8px;box-shadow:0 8px 24px #0002;padding:9px}
.gbc-qg-column-toggle{display:flex;align-items:center;gap:9px;padding:4px;cursor:pointer;white-space:nowrap}
.gbc-qg-grid-scroller{max-width:100%;overflow:auto;scrollbar-color:#c9d6df transparent}
.gbc-qg-grid-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;table-layout:auto;text-align:start}
.gbc-qg-grid-table th,.gbc-qg-grid-table td{border-bottom:1px solid var(--gbc-qg-border);border-inline-end:1px solid #eff2f5;padding:8px 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.gbc-qg-grid-table th:last-child,.gbc-qg-grid-table td:last-child{border-inline-end:0}
.gbc-qg-grid-table thead th{background:#f4f7fa;color:#2d3c4d;font-weight:600;position:sticky;top:0;z-index:4}
.gbc-qg-grid-table tbody tr{background:#fff}.gbc-qg-grid-table tbody tr:hover{background:#f6faf8}.gbc-qg-grid-table tbody tr.gbc-qg-selected{background:var(--gbc-qg-accent-pale)}
.gbc-qg-header-cell{user-select:none}.gbc-qg-header-content{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:22px;position:relative}
.gbc-qg-header-cell[draggable=true]{cursor:grab}.gbc-qg-header-cell[draggable=true]:active{cursor:grabbing}
.gbc-qg-sort-button{display:flex;align-items:center;gap:6px;text-align:start;background:none;border:0;color:inherit;font:inherit;font-weight:600;cursor:pointer;flex:1;min-width:0;padding:0}
.gbc-qg-sort-button:disabled{cursor:default}.gbc-qg-sort-button span:first-child{overflow:hidden;text-overflow:ellipsis}
.gbc-qg-sort-indicator{font-size:11px;color:var(--gbc-qg-accent);min-width:13px}
.gbc-qg-resize-handle{cursor:col-resize;position:absolute;inset-inline-end:-10px;top:-9px;width:11px;height:calc(100% + 18px);touch-action:none;z-index:8}
.gbc-qg-resize-handle:hover{background:#2bba8755}
.gbc-qg-grid-table thead tr.gbc-qg-filter-row th{position:sticky;top:39px;z-index:3;background:#fbfcfe;padding:5px 7px}
.gbc-qg-filter-content{display:flex;align-items:stretch;min-width:80px;max-width:100%;gap:2px}
.gbc-qg-filter-op{max-width:39px;min-width:39px;padding:2px 0;border:1px solid var(--gbc-qg-border);border-radius:4px;background:#fff;color:var(--gbc-qg-muted)}
.gbc-qg-filter-input{min-width:0;width:100%;font:inherit;padding:5px;border:1px solid var(--gbc-qg-border);border-radius:4px;background:#fff;color:var(--gbc-qg-ink)}
.gbc-qg-grid-table .gbc-qg-check-column{width:44px;text-align:center;padding-inline:5px}
.gbc-qg-grid-table input[type=checkbox]{accent-color:var(--gbc-qg-accent);width:16px;height:16px;cursor:pointer}
.gbc-qg-grid-table .gbc-qg-empty{text-align:center;padding:35px 18px;color:var(--gbc-qg-muted)}
.gbc-qg-grid-table .gbc-qg-group-header td{font-weight:600;background:#edf4f2;color:#245c4d;padding:9px 14px}
.gbc-qg-grid-table .gbc-qg-actions{text-align:center;overflow:visible}.gbc-qg-actions-head{min-width:175px}
.gbc-qg-grid-table .gbc-qg-edit-row td{background:#fff9ec}.gbc-qg-cell-input{padding:5px 7px;width:100%;min-width:80px}
.gbc-qg-pager{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:9px;padding:10px 12px;border-top:1px solid var(--gbc-qg-border);font-size:12px;color:var(--gbc-qg-muted)}
.gbc-qg-page-counter{padding:3px 7px;color:var(--gbc-qg-ink);font-weight:600}.gbc-qg-size{min-width:65px;padding:5px}
.gbc-qg-error{border-bottom:1px solid #eeb7bc;background:#fff2f2;color:#9b2831;padding:9px 12px}
.gbc-qg-spinner{display:inline-block;width:14px;height:14px;border:2px solid #d3e4dc;border-top-color:var(--gbc-qg-accent);border-radius:50%;animation:gbc-qg-spin .7s linear infinite;vertical-align:middle}
@keyframes gbc-qg-spin{to{transform:rotate(360deg)}}
@media(max-width:690px){.gbc-qg-grid-toolbar{align-items:stretch}.gbc-qg-grid-toolbar-actions,.gbc-qg-grid-toolbar-end{width:100%}.gbc-qg-search{flex:1;width:auto}.gbc-qg-pager{justify-content:center}.gbc-qg-grid-table{min-width:680px}}
/* V2: fixed-height virtual rows, footer aggregates and editable dialog */
.gbc-qg-grid-table .gbc-qg-virtual-space,.gbc-qg-grid-table .gbc-qg-virtual-space:hover{background:transparent}
.gbc-qg-grid-table .gbc-qg-virtual-space td{padding:0!important;border:0!important;line-height:0;font-size:0}
.gbc-qg-grid-table tfoot td{background:#eef5f1;border-top:2px solid var(--gbc-qg-accent);font-weight:700;color:#245d48;position:sticky;bottom:0;z-index:2}
.gbc-qg-virtual-loading{padding:5px 12px;background:#e9f7f1;color:#245d48;font-size:12px;text-align:center}
.gbc-qg-dialog-backdrop{position:fixed;inset:0;z-index:2000;background:#0b1b29a1;display:flex;align-items:center;justify-content:center;padding:16px}
.gbc-qg-dialog{background:#fff;color:var(--gbc-qg-ink);width:min(560px,100%);max-height:92vh;overflow:auto;border-radius:11px;box-shadow:0 16px 60px #0003;outline:none}
.gbc-qg-dialog-header,.gbc-qg-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 20px}
.gbc-qg-dialog-header{border-bottom:1px solid var(--gbc-qg-border);font-size:17px}
.gbc-qg-dialog-footer{justify-content:flex-end;border-top:1px solid var(--gbc-qg-border)}
.gbc-qg-dialog-content{padding:18px 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.gbc-qg-form-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.gbc-qg-form-field label{font-size:13px;font-weight:600}
.gbc-qg-form-field .gbc-qg-control{width:100%}
.gbc-qg-field-error{font-size:12px;color:#a32634;white-space:normal;line-height:1.4}

/* V3: arbitrary Razor templates, template-only action columns */
.gbc-qg-static-header{display:inline-block;font-weight:600;line-height:1.5}
.gbc-qg-template-actions{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.gbc-qg-grid-table td:has(.gbc-qg-template-actions){overflow:visible}


/* V3.1 — optional frozen checkbox column (including the second filter header row) */
.gbc-qg-grid-table .gbc-qg-locked-check{position:sticky;inset-inline-start:0;background:inherit;z-index:5;box-shadow:1px 0 0 var(--gbc-qg-border)}
.gbc-qg-grid-table thead .gbc-qg-locked-check{background:#f4f7fa;z-index:7}
.gbc-qg-grid-table thead .gbc-qg-filter-row .gbc-qg-locked-check{background:#fbfcfe;z-index:7}
.gbc-qg-grid-table tbody .gbc-qg-locked-check{background:#fff}
.gbc-qg-grid-table tbody .gbc-qg-selected .gbc-qg-locked-check{background:var(--gbc-qg-accent-pale)}
.gbc-qg-grid-table tbody tr:hover:not(.gbc-qg-selected) .gbc-qg-locked-check{background:#f6faf8}


/* ===========================================================================
 * V4 — reference invoice appearance, selected by default on QuantumGrid.
 * This theme is an ORIGINAL stylesheet guided by the supplied screenshot.
 * It uses design tokens to avoid page-by-page CSS and allow consumer overrides.
 * The base components and accessible form controls still work in other themes.
 * =========================================================================== */
.gbc-qg-grid {
    --gbc-qg-header-bg: #00a59e;
    --gbc-qg-header-color: #06454b;
    --gbc-qg-header-border: #009a94;
    --gbc-qg-row-bg: #ffffff;
    --gbc-qg-row-alt-bg: #f5f5f5;
    --gbc-qg-row-hover-bg: #e9f7f5;
    --gbc-qg-row-selected-bg: #dff6f2;
    --gbc-qg-text-color: #192b42;
    --gbc-qg-cell-border: #e6e9ed;
    --gbc-qg-row-height: 51px;
    --gbc-qg-header-height: 36px;
    --gbc-qg-cell-padding-x: 12px;
    --gbc-qg-cell-padding-y: 9px;
    --gbc-qg-radius: 12px;
    --gbc-qg-font-size: 13px;
    --gbc-qg-scrollbar-thumb: #949494;
    --gbc-qg-scrollbar-track: #f0f1f3;
    --gbc-qg-success-bg: #d7faeb;
    --gbc-qg-success-color: #008a6b;
    --gbc-qg-success-border: #9af0cc;
    --gbc-qg-danger-bg: #ffe5e5;
    --gbc-qg-danger-color: #e22222;
    --gbc-qg-danger-border: #ffc6c6;
    --gbc-qg-warning-bg: #fff1c5;
    --gbc-qg-warning-color: #ad5700;
    --gbc-qg-warning-border: #ffda75;
    --gbc-qg-info-bg: #e4f0fc;
    --gbc-qg-info-color: #246596;
    --gbc-qg-info-border: #bcdcf8;
    --gbc-qg-secondary-bg: #edf0f2;
    --gbc-qg-secondary-color: #505f6b;
    --gbc-qg-secondary-border: #dbe0e4;
    --gbc-qg-border: var(--gbc-qg-cell-border);
    --gbc-qg-ink: var(--gbc-qg-text-color);
    --gbc-qg-muted: #687889;
    --gbc-qg-bg: #fff;
    --gbc-qg-soft: var(--gbc-qg-row-alt-bg);
    --gbc-qg-accent: var(--gbc-qg-header-bg);
    --gbc-qg-accent-pale: var(--gbc-qg-row-selected-bg);
    font-family: inherit;
    font-size: var(--gbc-qg-font-size);
    line-height: 1.45;
    color: var(--gbc-qg-text-color);
    background: var(--gbc-qg-row-bg);
    border: 1px solid var(--gbc-qg-cell-border);
    border-radius: var(--gbc-qg-radius);
    box-shadow: none;
    width: 100%;
    max-width: 100%;
}
.gbc-qg-grid.gbc-qg-density-compact { --gbc-qg-row-height: 39px; --gbc-qg-header-height: 34px; --gbc-qg-cell-padding-y: 5px; }
.gbc-qg-grid.gbc-qg-density-spacious { --gbc-qg-row-height: 64px; --gbc-qg-header-height: 44px; --gbc-qg-cell-padding-y: 14px; }
.gbc-qg-grid.gbc-qg-theme-clean {
    --gbc-qg-header-bg: #edf2f5;
    --gbc-qg-header-color: #22364b;
    --gbc-qg-header-border: #d8e2e9;
    --gbc-qg-row-alt-bg: #f9fbfc;
    --gbc-qg-row-hover-bg: #f2f7fa;
    --gbc-qg-row-selected-bg: #e8f3fb;
}
.gbc-qg-grid.gbc-qg-square { border-radius: 0; }
.gbc-qg-grid.gbc-qg-no-borders { border: 0; }
.gbc-qg-grid .gbc-qg-grid-scroller { scrollbar-color: var(--gbc-qg-scrollbar-thumb) var(--gbc-qg-scrollbar-track); }
.gbc-qg-grid .gbc-qg-grid-scroller::-webkit-scrollbar { width: 11px; height: 12px; }
.gbc-qg-grid .gbc-qg-grid-scroller::-webkit-scrollbar-track { background: var(--gbc-qg-scrollbar-track); }
.gbc-qg-grid .gbc-qg-grid-scroller::-webkit-scrollbar-thumb { background: var(--gbc-qg-scrollbar-thumb); border: 2px solid var(--gbc-qg-scrollbar-track); border-radius: 8px; }
.gbc-qg-grid .gbc-qg-grid-scroller::-webkit-scrollbar-thumb:hover { background: #7c7c7c; }
.gbc-qg-grid .gbc-qg-grid-table { border-spacing: 0; font-variant-numeric: tabular-nums; }
.gbc-qg-grid .gbc-qg-grid-table thead tr:first-child { height: var(--gbc-qg-header-height); }
.gbc-qg-grid .gbc-qg-grid-table thead tr:first-child th {
    background: var(--gbc-qg-header-bg);
    color: var(--gbc-qg-header-color);
    height: var(--gbc-qg-header-height);
    padding: 5px var(--gbc-qg-cell-padding-x);
    border-bottom: 1px solid var(--gbc-qg-header-border);
    border-inline-end: 1px solid var(--gbc-qg-header-border);
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
}
.gbc-qg-grid .gbc-qg-grid-table thead tr:first-child th:last-child { border-inline-end: 0; }
.gbc-qg-grid .gbc-qg-header-content { justify-content: center; min-height: 22px; }
.gbc-qg-grid .gbc-qg-sort-button { justify-content: center; text-align: center; font-weight: 500; }
.gbc-qg-grid .gbc-qg-static-header { font-weight: 500; }
.gbc-qg-grid .gbc-qg-sort-indicator { color: var(--gbc-qg-header-color); }
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row { background: var(--gbc-qg-row-bg); height: var(--gbc-qg-row-height); }
.gbc-qg-grid.gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected,
.gbc-qg-grid.gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected,
.gbc-qg-grid.gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected:hover { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td {
    height: var(--gbc-qg-row-height);
    padding: var(--gbc-qg-cell-padding-y) var(--gbc-qg-cell-padding-x);
    color: var(--gbc-qg-text-color);
    border-bottom: 0;
    border-inline-end: 1px solid var(--gbc-qg-cell-border);
    vertical-align: middle;
}
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td:last-child { border-inline-end: 0; }
.gbc-qg-grid.gbc-qg-no-borders .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td { border-inline-end: 0; }
.gbc-qg-grid .gbc-qg-grid-table .gbc-qg-check-column { text-align: center; padding-inline: 5px; }
.gbc-qg-grid .gbc-qg-grid-table input[type=checkbox] { width: 19px; height: 19px; accent-color: var(--gbc-qg-header-bg); vertical-align: middle; }
.gbc-qg-grid .gbc-qg-grid-table thead tr:first-child .gbc-qg-locked-check { background: var(--gbc-qg-header-bg); z-index: 7; }
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row > .gbc-qg-locked-check { background: var(--gbc-qg-row-bg); }
.gbc-qg-grid.gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt > .gbc-qg-locked-check { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover > .gbc-qg-locked-check { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected > .gbc-qg-locked-check,
.gbc-qg-grid.gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected:hover > .gbc-qg-locked-check { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid .gbc-qg-grid-table thead tr.gbc-qg-filter-row th { top: var(--gbc-qg-header-height); }
.gbc-qg-grid .gbc-qg-grid-table thead tr.gbc-qg-filter-row .gbc-qg-locked-check { background: #fbfcfe; }
.gbc-qg-grid .gbc-qg-grid-table tfoot td { background: #e9f7f5; color: var(--gbc-qg-text-color); border-top-color: var(--gbc-qg-header-bg); }
.gbc-qg-grid .gbc-qg-grid-table tbody .gbc-qg-group-header td { background: #e1f4f1; color: var(--gbc-qg-header-color); }
.gbc-qg-grid .gbc-qg-toolbar, .gbc-qg-grid .gbc-qg-pager { color: var(--gbc-qg-text-color); }
.gbc-qg-grid .gbc-qg-btn-primary { background: var(--gbc-qg-header-bg); border-color: var(--gbc-qg-header-bg); color: #fff; }
.gbc-qg-grid .gbc-qg-btn-primary:hover:not(:disabled) { filter: brightness(.94); background: var(--gbc-qg-header-bg); border-color: var(--gbc-qg-header-bg); }

/* Reusable status-pill helpers; templates may supply statuses just like the example. */
.gbc-qg-grid .gbc-qg-badge, .gbc-qg-grid .qerp-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 82px;
    max-width: 100%;
    border-radius: 999px;
    padding: 5px 12px;
    border: 1px solid transparent;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    white-space: nowrap;
}
.gbc-qg-grid .gbc-qg-badge--success, .gbc-qg-grid .qerp-status-badge.is-success { background: var(--gbc-qg-success-bg); color: var(--gbc-qg-success-color); border-color: var(--gbc-qg-success-border); }
.gbc-qg-grid .gbc-qg-badge--danger, .gbc-qg-grid .qerp-status-badge.is-danger { background: var(--gbc-qg-danger-bg); color: var(--gbc-qg-danger-color); border-color: var(--gbc-qg-danger-border); }
.gbc-qg-grid .gbc-qg-badge--warning, .gbc-qg-grid .qerp-status-badge.is-warning { background: var(--gbc-qg-warning-bg); color: var(--gbc-qg-warning-color); border-color: var(--gbc-qg-warning-border); }
.gbc-qg-grid .gbc-qg-badge--info, .gbc-qg-grid .qerp-status-badge.is-info { background: var(--gbc-qg-info-bg); color: var(--gbc-qg-info-color); border-color: var(--gbc-qg-info-border); }
.gbc-qg-grid .gbc-qg-badge--secondary, .gbc-qg-grid .qerp-status-badge.is-secondary { background: var(--gbc-qg-secondary-bg); color: var(--gbc-qg-secondary-color); border-color: var(--gbc-qg-secondary-border); }

.gbc-qg-grid .gbc-qg-invoice-number { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;line-height:1.4; }
.gbc-qg-grid .gbc-qg-invoice-number strong { font-weight:700; }
.gbc-qg-grid .gbc-qg-invoice-number small { font-size:11px;color:#657890; }


/* ==========================================================================
 * V5 — responsive defaults. Container width is authoritative, not viewport.
 * A grid in a narrow ERP content pane responds even on a large monitor.
 * Full reference table is unchanged above the container breakpoint.
 * ========================================================================== */
.gbc-qg-grid-host { container-type: inline-size; width: 100%; max-width: 100%; min-width: 0; }
.gbc-qg-grid { min-width: 0; }
.gbc-qg-grid .gbc-qg-mobile-tools,
.gbc-qg-grid .gbc-qg-mobile-virtual-hint,
.gbc-qg-grid .gbc-qg-mobile-expand,
.gbc-qg-grid .gbc-qg-mobile-cell-label { display: none; }
.gbc-qg-grid .gbc-qg-mobile-cell-value { display: contents; }
.gbc-qg-grid .gbc-qg-grid-scroller { overscroll-behavior-inline: contain; }
.gbc-qg-grid .gbc-qg-btn, .gbc-qg-grid .gbc-qg-grid-table input[type=checkbox] { touch-action: manipulation; }
.gbc-qg-grid .gbc-qg-grid-table :is(button, input, select):focus-visible,
.gbc-qg-grid .gbc-qg-mobile-tools :is(button, input, select, summary):focus-visible,
.gbc-qg-grid .gbc-qg-mobile-expand:focus-visible { outline: 2px solid var(--gbc-qg-header-bg); outline-offset: 3px; }
@media (hover: none) and (pointer: coarse) {
    .gbc-qg-grid .gbc-qg-grid-table input[type=checkbox] { min-width: 21px; min-height: 21px; }
    .gbc-qg-grid .gbc-qg-btn { min-height: 40px; }
}
@media (prefers-reduced-motion: reduce) {
    .gbc-qg-grid *, .gbc-qg-grid *::before, .gbc-qg-grid *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

/* Explicit Cards mode uses cards regardless of grid width. */

.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-tools { display: flex; flex-direction: column; gap: 9px; padding: 10px; background: #fff; border-bottom: 1px solid var(--gbc-qg-cell-border); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-search { width: 100%; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all { display:flex;gap:8px;align-items:center;font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all input { width:20px;height:20px;accent-color:var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-sort { display: flex; align-items: center; gap: 8px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-sort label { font-size: 12px; color: var(--gbc-qg-muted); white-space: nowrap; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-sort select { min-width: 0; flex: 1; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-sort-order { min-width: 42px; min-height: 42px; font-size: 20px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel { min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel > summary { display: flex; width: 100%; min-height: 42px; justify-content: center; align-items: center; cursor: pointer; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 12px; padding: 14px 6px 4px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field { display: grid; gap: 5px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field label { font-size: 12px; font-weight: 600; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field .gbc-qg-filter-input { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar { padding: 8px 10px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-actions, .gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end { flex: 1 1 100%; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end .gbc-qg-search { display: none; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-column-chooser-panel { position: absolute; max-width: min(90vw, 320px); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-scroller { overflow: visible !important; height: auto !important; max-height: none !important; padding: 9px; background: #f5f7f7; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table { display: block; width: 100%; min-width: 0 !important; border-collapse: separate; border-spacing: 0; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table colgroup, .gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table thead { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody { display: flex; flex-direction: column; gap: 10px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 8px; align-items: center; width: 100%; height: auto !important; min-width: 0; padding: 12px; background: var(--gbc-qg-row-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: var(--gbc-qg-mobile-card-radius, 12px); box-shadow: 0 2px 6px #102c2510; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual).gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual).gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td { display: none; height: auto !important; width: auto !important; min-width: 0 !important; padding: 6px 0 !important; border: 0 !important; box-shadow: none !important; position: static; background: transparent !important; white-space: normal; text-overflow: clip; overflow: visible; text-align: start !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main { display: flex; grid-column: 2; grid-row: 1; align-items: center; gap: 8px; min-width: 0; font-size: 14px; font-weight: 650; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row:not(:has(> .gbc-qg-check-column)) > td.gbc-qg-mobile-main { grid-column: 1 / -1; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-check-column { display: flex; grid-column: 1; grid-row: 1; align-items: center; justify-content: center; align-self: center; padding-inline-end: 7px !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; border-top: 1px solid var(--gbc-qg-cell-border) !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-hidden { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail { display:grid;grid-column:1/-1;grid-template-columns:minmax(90px,37%) minmax(0,1fr);gap:8px;align-items:center; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display:block;color:var(--gbc-qg-muted);font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-cell-label { display: none; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary > .gbc-qg-mobile-cell-label,
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display: block; min-width: 0; color: var(--gbc-qg-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-mobile-cell-value { display: block; min-width: 0; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main .gbc-qg-mobile-cell-value { flex: 1; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand { display: inline-flex; flex: 0 0 38px; height: 38px; justify-content: center; align-items: center; background: var(--gbc-qg-row-selected-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: 9px; font-size: 22px; font-weight: 600; line-height: 1; cursor: pointer; color: var(--gbc-qg-text-color); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand:hover { border-color: var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-badge,
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .qerp-status-badge { min-width: 0; max-width: 100%; text-wrap: wrap; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail { display: flex; grid-column: 1 / -1; gap: 6px; align-items: center; justify-content: flex-start; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail > :is(button, a) { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions,
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions { display: flex; flex-wrap: wrap; gap: 8px; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions :is(button, a),
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions :is(button, a) { min-height: 42px; min-width: 42px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row { display: flex; flex-direction: column; border: 1px solid var(--gbc-qg-cell-border); border-radius: 10px; padding: 12px; background: #fff9ec; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row > td { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; white-space: normal; width: 100% !important; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row .gbc-qg-cell-input { min-width: 0; width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header { display: block; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header td { display: block; white-space: normal; border-radius: 8px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) { display: block; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) td { display: block; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot { display: block; margin-top: 10px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot tr { display: flex; flex-direction: column; gap: 4px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td { display: grid; grid-template-columns: minmax(90px,37%) minmax(0,1fr); gap: 8px; position: static; white-space: normal; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td:empty { display:none; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td[data-label]::before { content:attr(data-label); font-weight:500; color:var(--gbc-qg-muted); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-pager { padding: 12px; gap: 12px; justify-content: center; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-pager-left, .gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-pager-right { justify-content: center; max-width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-pager .gbc-qg-btn { min-height: 40px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-dialog-backdrop { padding: 10px; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-dialog { max-height: min(90dvh, 760px); }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-dialog-header, .gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-dialog-footer { padding: 13px; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-dialog-content { padding: 12px; grid-template-columns: minmax(0,1fr); }

/* Default Auto mode switches when the GRID's own width reaches 720px. */
@container (max-width: 720px) {

.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-tools { display: flex; flex-direction: column; gap: 9px; padding: 10px; background: #fff; border-bottom: 1px solid var(--gbc-qg-cell-border); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-search { width: 100%; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all { display:flex;gap:8px;align-items:center;font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all input { width:20px;height:20px;accent-color:var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-sort { display: flex; align-items: center; gap: 8px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-sort label { font-size: 12px; color: var(--gbc-qg-muted); white-space: nowrap; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-sort select { min-width: 0; flex: 1; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-sort-order { min-width: 42px; min-height: 42px; font-size: 20px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel { min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel > summary { display: flex; width: 100%; min-height: 42px; justify-content: center; align-items: center; cursor: pointer; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 12px; padding: 14px 6px 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field { display: grid; gap: 5px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field label { font-size: 12px; font-weight: 600; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field .gbc-qg-filter-input { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar { padding: 8px 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-actions, .gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end { flex: 1 1 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end .gbc-qg-search { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-column-chooser-panel { position: absolute; max-width: min(90vw, 320px); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-scroller { overflow: visible !important; height: auto !important; max-height: none !important; padding: 9px; background: #f5f7f7; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table { display: block; width: 100%; min-width: 0 !important; border-collapse: separate; border-spacing: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table colgroup, .gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table thead { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody { display: flex; flex-direction: column; gap: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 8px; align-items: center; width: 100%; height: auto !important; min-width: 0; padding: 12px; background: var(--gbc-qg-row-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: var(--gbc-qg-mobile-card-radius, 12px); box-shadow: 0 2px 6px #102c2510; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual).gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual).gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td { display: none; height: auto !important; width: auto !important; min-width: 0 !important; padding: 6px 0 !important; border: 0 !important; box-shadow: none !important; position: static; background: transparent !important; white-space: normal; text-overflow: clip; overflow: visible; text-align: start !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main { display: flex; grid-column: 2; grid-row: 1; align-items: center; gap: 8px; min-width: 0; font-size: 14px; font-weight: 650; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row:not(:has(> .gbc-qg-check-column)) > td.gbc-qg-mobile-main { grid-column: 1 / -1; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-check-column { display: flex; grid-column: 1; grid-row: 1; align-items: center; justify-content: center; align-self: center; padding-inline-end: 7px !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; border-top: 1px solid var(--gbc-qg-cell-border) !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-hidden { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail { display:grid;grid-column:1/-1;grid-template-columns:minmax(90px,37%) minmax(0,1fr);gap:8px;align-items:center; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display:block;color:var(--gbc-qg-muted);font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-cell-label { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary > .gbc-qg-mobile-cell-label,
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display: block; min-width: 0; color: var(--gbc-qg-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-mobile-cell-value { display: block; min-width: 0; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main .gbc-qg-mobile-cell-value { flex: 1; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand { display: inline-flex; flex: 0 0 38px; height: 38px; justify-content: center; align-items: center; background: var(--gbc-qg-row-selected-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: 9px; font-size: 22px; font-weight: 600; line-height: 1; cursor: pointer; color: var(--gbc-qg-text-color); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand:hover { border-color: var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-badge,
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .qerp-status-badge { min-width: 0; max-width: 100%; text-wrap: wrap; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail { display: flex; grid-column: 1 / -1; gap: 6px; align-items: center; justify-content: flex-start; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail > :is(button, a) { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions,
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions { display: flex; flex-wrap: wrap; gap: 8px; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions :is(button, a),
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions :is(button, a) { min-height: 42px; min-width: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row { display: flex; flex-direction: column; border: 1px solid var(--gbc-qg-cell-border); border-radius: 10px; padding: 12px; background: #fff9ec; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row > td { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; white-space: normal; width: 100% !important; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row .gbc-qg-cell-input { min-width: 0; width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header td { display: block; white-space: normal; border-radius: 8px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) td { display: block; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot { display: block; margin-top: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot tr { display: flex; flex-direction: column; gap: 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td { display: grid; grid-template-columns: minmax(90px,37%) minmax(0,1fr); gap: 8px; position: static; white-space: normal; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td:empty { display:none; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td[data-label]::before { content:attr(data-label); font-weight:500; color:var(--gbc-qg-muted); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-pager { padding: 12px; gap: 12px; justify-content: center; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-pager-left, .gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-pager-right { justify-content: center; max-width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-pager .gbc-qg-btn { min-height: 40px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-dialog-backdrop { padding: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-dialog { max-height: min(90dvh, 760px); }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-dialog-header, .gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-dialog-footer { padding: 13px; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto:not(.gbc-qg-virtual) .gbc-qg-dialog-content { padding: 12px; grid-template-columns: minmax(0,1fr); }

    /* Virtual rows have fixed pixel heights, so changing them to cards would
       invalidate the virtual range calculation. Preserve a scrollable table. */
    .gbc-qg-grid.gbc-qg-virtual .gbc-qg-mobile-virtual-hint { display:block; padding: 6px 12px; background:#f3f8f8; color:var(--gbc-qg-muted); font-size:12px; }
    .gbc-qg-grid.gbc-qg-virtual:not(.gbc-qg-fit-width) .gbc-qg-grid-scroller { overflow-x:auto; }
}


/* V6 - fit to width: never show a horizontal scrollbar in Auto mode.
   Responsive card thresholds depend on the visible column count. */

.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-scroller { overflow-x: hidden; overflow-y: auto; }
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table {
    width: 100%; max-width: 100%; min-width: 0 !important;
    table-layout: fixed;
}
/* User column Width values are preferred in scrolling mode. Fit mode distributes
   columns within the container; the dedicated checkbox column keeps its width. */
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table colgroup col:not(.gbc-qg-selection-col) {
    width: auto !important;
    min-width: 0 !important;
}
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table th,
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table td {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    text-overflow: clip;
}
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-actions-head { min-width: 0; }
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-filter-content { min-width: 0; }
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-cell-input { min-width: 0; }
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-header-content,
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-sort-button,
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-sort-button span:first-child { min-width: 0; white-space: normal; }
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .gbc-qg-template-actions,
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table .qerp-actions { flex-wrap: wrap; white-space: normal; }
/* Virtualization requires fixed row heights. Fit and truncate its cell content
   rather than allowing variable-height rows to break the virtual range. */
.gbc-qg-grid.gbc-qg-fit-width.gbc-qg-virtual .gbc-qg-grid-table th,
.gbc-qg-grid.gbc-qg-fit-width.gbc-qg-virtual .gbc-qg-grid-table td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.gbc-qg-grid.gbc-qg-fit-width.gbc-qg-virtual .gbc-qg-grid-table tr.gbc-qg-virtual-space td { overflow: visible; }

/* More visible columns need cards sooner, before labels become unreadable. */
@container (max-width: 1500px) {
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-tools { display: flex; flex-direction: column; gap: 9px; padding: 10px; background: #fff; border-bottom: 1px solid var(--gbc-qg-cell-border); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-search { width: 100%; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all { display:flex;gap:8px;align-items:center;font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all input { width:20px;height:20px;accent-color:var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-sort { display: flex; align-items: center; gap: 8px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-sort label { font-size: 12px; color: var(--gbc-qg-muted); white-space: nowrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-sort select { min-width: 0; flex: 1; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-sort-order { min-width: 42px; min-height: 42px; font-size: 20px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel { min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel > summary { display: flex; width: 100%; min-height: 42px; justify-content: center; align-items: center; cursor: pointer; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 12px; padding: 14px 6px 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field { display: grid; gap: 5px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field label { font-size: 12px; font-weight: 600; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field .gbc-qg-filter-input { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar { padding: 8px 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-actions, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end { flex: 1 1 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end .gbc-qg-search { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-column-chooser-panel { position: absolute; max-width: min(90vw, 320px); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-scroller { overflow: visible !important; height: auto !important; max-height: none !important; padding: 9px; background: #f5f7f7; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table { display: block; width: 100%; min-width: 0 !important; border-collapse: separate; border-spacing: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table colgroup, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table thead { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody { display: flex; flex-direction: column; gap: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 8px; align-items: center; width: 100%; height: auto !important; min-width: 0; padding: 12px; background: var(--gbc-qg-row-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: var(--gbc-qg-mobile-card-radius, 12px); box-shadow: 0 2px 6px #102c2510; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual).gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual).gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td { display: none; height: auto !important; width: auto !important; min-width: 0 !important; padding: 6px 0 !important; border: 0 !important; box-shadow: none !important; position: static; background: transparent !important; white-space: normal; text-overflow: clip; overflow: visible; text-align: start !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main { display: flex; grid-column: 2; grid-row: 1; align-items: center; gap: 8px; min-width: 0; font-size: 14px; font-weight: 650; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row:not(:has(> .gbc-qg-check-column)) > td.gbc-qg-mobile-main { grid-column: 1 / -1; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-check-column { display: flex; grid-column: 1; grid-row: 1; align-items: center; justify-content: center; align-self: center; padding-inline-end: 7px !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; border-top: 1px solid var(--gbc-qg-cell-border) !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-hidden { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail { display:grid;grid-column:1/-1;grid-template-columns:minmax(90px,37%) minmax(0,1fr);gap:8px;align-items:center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display:block;color:var(--gbc-qg-muted);font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-cell-label { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary > .gbc-qg-mobile-cell-label,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display: block; min-width: 0; color: var(--gbc-qg-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-mobile-cell-value { display: block; min-width: 0; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main .gbc-qg-mobile-cell-value { flex: 1; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand { display: inline-flex; flex: 0 0 38px; height: 38px; justify-content: center; align-items: center; background: var(--gbc-qg-row-selected-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: 9px; font-size: 22px; font-weight: 600; line-height: 1; cursor: pointer; color: var(--gbc-qg-text-color); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand:hover { border-color: var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-badge,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .qerp-status-badge { min-width: 0; max-width: 100%; text-wrap: wrap; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail { display: flex; grid-column: 1 / -1; gap: 6px; align-items: center; justify-content: flex-start; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail > :is(button, a) { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions { display: flex; flex-wrap: wrap; gap: 8px; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions :is(button, a),
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions :is(button, a) { min-height: 42px; min-width: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row { display: flex; flex-direction: column; border: 1px solid var(--gbc-qg-cell-border); border-radius: 10px; padding: 12px; background: #fff9ec; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row > td { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; white-space: normal; width: 100% !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row .gbc-qg-cell-input { min-width: 0; width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header td { display: block; white-space: normal; border-radius: 8px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) td { display: block; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot { display: block; margin-top: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot tr { display: flex; flex-direction: column; gap: 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td { display: grid; grid-template-columns: minmax(90px,37%) minmax(0,1fr); gap: 8px; position: static; white-space: normal; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td:empty { display:none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td[data-label]::before { content:attr(data-label); font-weight:500; color:var(--gbc-qg-muted); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-pager { padding: 12px; gap: 12px; justify-content: center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-pager-left, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-pager-right { justify-content: center; max-width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-pager .gbc-qg-btn { min-height: 40px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-dialog-backdrop { padding: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-dialog { max-height: min(90dvh, 760px); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-dialog-header, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-dialog-footer { padding: 13px; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-dialog-content { padding: 12px; grid-template-columns: minmax(0,1fr); }
}

/* More visible columns need cards sooner, before labels become unreadable. */
@container (max-width: 1100px) {
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-tools { display: flex; flex-direction: column; gap: 9px; padding: 10px; background: #fff; border-bottom: 1px solid var(--gbc-qg-cell-border); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-search { width: 100%; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all { display:flex;gap:8px;align-items:center;font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-select-all input { width:20px;height:20px;accent-color:var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-sort { display: flex; align-items: center; gap: 8px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-sort label { font-size: 12px; color: var(--gbc-qg-muted); white-space: nowrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-sort select { min-width: 0; flex: 1; min-height: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-sort-order { min-width: 42px; min-height: 42px; font-size: 20px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel { min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-panel > summary { display: flex; width: 100%; min-height: 42px; justify-content: center; align-items: center; cursor: pointer; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 12px; padding: 14px 6px 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field { display: grid; gap: 5px; min-width: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field label { font-size: 12px; font-weight: 600; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-mobile-filter-field .gbc-qg-filter-input { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar { padding: 8px 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-actions, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end { flex: 1 1 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-toolbar-end .gbc-qg-search { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-column-chooser-panel { position: absolute; max-width: min(90vw, 320px); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-scroller { overflow: visible !important; height: auto !important; max-height: none !important; padding: 9px; background: #f5f7f7; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table { display: block; width: 100%; min-width: 0 !important; border-collapse: separate; border-spacing: 0; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table colgroup, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table thead { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody { display: flex; flex-direction: column; gap: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 8px; align-items: center; width: 100%; height: auto !important; min-width: 0; padding: 12px; background: var(--gbc-qg-row-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: var(--gbc-qg-mobile-card-radius, 12px); box-shadow: 0 2px 6px #102c2510; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual).gbc-qg-striped .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-row-alt { background: var(--gbc-qg-row-alt-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual).gbc-qg-hoverable .gbc-qg-grid-table tbody tr.gbc-qg-data-row:hover { background: var(--gbc-qg-row-hover-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-selected { background: var(--gbc-qg-row-selected-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td { display: none; height: auto !important; width: auto !important; min-width: 0 !important; padding: 6px 0 !important; border: 0 !important; box-shadow: none !important; position: static; background: transparent !important; white-space: normal; text-overflow: clip; overflow: visible; text-align: start !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main { display: flex; grid-column: 2; grid-row: 1; align-items: center; gap: 8px; min-width: 0; font-size: 14px; font-weight: 650; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row:not(:has(> .gbc-qg-check-column)) > td.gbc-qg-mobile-main { grid-column: 1 / -1; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-check-column { display: flex; grid-column: 1; grid-row: 1; align-items: center; justify-content: center; align-self: center; padding-inline-end: 7px !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); gap: 8px; align-items: center; border-top: 1px solid var(--gbc-qg-cell-border) !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-hidden { display: none !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail { display:grid;grid-column:1/-1;grid-template-columns:minmax(90px,37%) minmax(0,1fr);gap:8px;align-items:center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-edit-row > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display:block;color:var(--gbc-qg-muted);font-size:12px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-cell-label { display: none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-summary > .gbc-qg-mobile-cell-label,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-mobile-detail > .gbc-qg-mobile-cell-label { display: block; min-width: 0; color: var(--gbc-qg-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-mobile-cell-value { display: block; min-width: 0; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main .gbc-qg-mobile-cell-value { flex: 1; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand { display: inline-flex; flex: 0 0 38px; height: 38px; justify-content: center; align-items: center; background: var(--gbc-qg-row-selected-bg); border: 1px solid var(--gbc-qg-cell-border); border-radius: 9px; font-size: 22px; font-weight: 600; line-height: 1; cursor: pointer; color: var(--gbc-qg-text-color); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-mobile-main > .gbc-qg-mobile-expand:hover { border-color: var(--gbc-qg-header-bg); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .gbc-qg-badge,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row .qerp-status-badge { min-width: 0; max-width: 100%; text-wrap: wrap; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail { display: flex; grid-column: 1 / -1; gap: 6px; align-items: center; justify-content: flex-start; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-actions.gbc-qg-mobile-detail > :is(button, a) { min-height: 38px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions,
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions { display: flex; flex-wrap: wrap; gap: 8px; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .gbc-qg-template-actions :is(button, a),
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td .qerp-actions :is(button, a) { min-height: 42px; min-width: 42px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row { display: flex; flex-direction: column; border: 1px solid var(--gbc-qg-cell-border); border-radius: 10px; padding: 12px; background: #fff9ec; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row > td { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; white-space: normal; width: 100% !important; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-edit-row .gbc-qg-cell-input { min-width: 0; width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr.gbc-qg-group-header td { display: block; white-space: normal; border-radius: 8px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) { display: block; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody tr:not(.gbc-qg-data-row):not(.gbc-qg-group-header):not(.gbc-qg-edit-row) td { display: block; white-space: normal; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot { display: block; margin-top: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot tr { display: flex; flex-direction: column; gap: 4px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td { display: grid; grid-template-columns: minmax(90px,37%) minmax(0,1fr); gap: 8px; position: static; white-space: normal; overflow-wrap: anywhere; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td:empty { display:none; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-grid-table tfoot td[data-label]::before { content:attr(data-label); font-weight:500; color:var(--gbc-qg-muted); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-pager { padding: 12px; gap: 12px; justify-content: center; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-pager-left, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-pager-right { justify-content: center; max-width: 100%; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-pager .gbc-qg-btn { min-height: 40px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-dialog-backdrop { padding: 10px; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-dialog { max-height: min(90dvh, 760px); }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-dialog-header, .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-dialog-footer { padding: 13px; flex-wrap: wrap; }
.gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-medium:not(.gbc-qg-virtual) .gbc-qg-dialog-content { padding: 12px; grid-template-columns: minmax(0,1fr); }
}

/* The 10+ column card layout uses two balanced cards per row on wide
   desktop content panes rather than a single oversized full-width card. */
@container (min-width: 1025px) and (max-width: 1500px) {
    .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
        gap: 12px;
    }
    .gbc-qg-grid.gbc-qg-responsive-auto.gbc-qg-fit-width.gbc-qg-cols-many:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody > tr:not(.gbc-qg-data-row) {
        grid-column: 1 / -1;
    }
}

/* Pixel drag-resize conflicts with proportional columns in fit mode. */
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-resize-handle { display: none; }

/* V6: progressive responsive layout (table -> compact actions -> expandable cards).
   Existing Reference tokens still control colors, dimensions and typography. */
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-fit-width .gbc-qg-grid-table {
    width: 100%; min-width: 0 !important; table-layout: fixed;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-fit-width:not(.gbc-qg-responsive-cards) .gbc-qg-grid-scroller {
    overflow-x: clip; overflow-y: auto;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-fit-width .gbc-qg-grid-table :is(th, td) {
    min-width: 0; max-width: 100%;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-fit-width .gbc-qg-grid-table col:not(.gbc-qg-selection-col) {
    min-width: 0 !important;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-fit-width .gbc-qg-row-action-cell {
    display: flex; justify-content: center; align-items: center;
    min-width: 0;
}
.gbc-qg-grid .gbc-qg-row-action-trigger {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px;
    border-radius: 7px; border: 1px solid var(--gbc-qg-cell-border); padding: 6px 9px;
    font: inherit; color: var(--gbc-qg-text-color); background: var(--gbc-qg-row-bg);
    min-height: 35px; cursor: pointer; max-width: 100%; white-space: nowrap;
}
.gbc-qg-grid .gbc-qg-row-action-trigger > span:first-child { font-size: 22px; font-weight: bold; line-height: 1; }
.gbc-qg-grid .gbc-qg-row-action-trigger:focus-visible { outline: 2px solid var(--gbc-qg-header-bg); outline-offset: 2px; }
.gbc-qg-grid .gbc-qg-row-action-trigger:hover { background: var(--gbc-qg-row-hover-bg); border-color: var(--gbc-qg-header-bg); }
/* Top-layer popover means menus work even inside fixed-height scrolling grids. */
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards) .gbc-qg-grid-table .gbc-qg-action-template-cell,
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards) .gbc-qg-grid-table .gbc-qg-actions { overflow: visible; }
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards) .gbc-qg-grid-table .gbc-qg-actions-head { min-width: 0; }
/* With 2-stage cards, the existing .gbc-qg-responsive-cards styles take over all cells. */
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards .gbc-qg-grid-scroller {
    overflow: visible !important; height: auto !important; max-height: none !important;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-action-template-cell {
    display: grid; grid-column: 1 / -1;
    grid-template-columns: minmax(90px, 37%) minmax(0, 1fr); align-items: center;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards .gbc-qg-grid-table tbody tr.gbc-qg-data-row > td.gbc-qg-action-template-cell .gbc-qg-mobile-cell-label {
    color: var(--gbc-qg-muted); font-size: 12px; font-weight: 500;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-action-template-cell .gbc-qg-mobile-cell-label { display: block; }
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards .gbc-qg-grid-table tbody tr.gbc-qg-data-row.gbc-qg-card-expanded > td.gbc-qg-action-template-cell .gbc-qg-row-action-cell { justify-content: flex-start; }
/* Long text in both table cells and cards must not widen the page. */
.gbc-qg-grid.gbc-qg-responsive-adaptive .gbc-qg-grid-table td .gbc-qg-mobile-cell-value,
.gbc-qg-grid.gbc-qg-responsive-adaptive .gbc-qg-grid-table td .gbc-qg-mobile-cell-value > * { max-width: 100%; }
@container (min-width: 1100px) {
    .gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody {
        display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px;
    }
    .gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-responsive-cards:not(.gbc-qg-virtual) .gbc-qg-grid-table tbody > tr:not(.gbc-qg-data-row) { grid-column: 1/-1; }
}

/* ========================================================================
 * V7 scoped action menu. This popover is in the browser top layer, so its
 * stylesheet MUST target the own panel class directly, not descend from
 * .gbc-qg-grid (which may no longer match top-layer layout expectations).
 * ======================================================================== */
.gbc-qg-row-action-panel[popover] {
  box-sizing: border-box !important;
  position: fixed !important;
  inset: auto;
  display: none;
  inline-size: min(292px, calc(100vw - 24px)) !important;
  min-inline-size: min(248px, calc(100vw - 24px)) !important;
  max-inline-size: calc(100vw - 24px) !important;
  padding: 8px !important;
  margin: 0 !important;
  border: 1px solid #dce3eb !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #192b42 !important;
  font: 13px/1.5 'Segoe UI', Tahoma, Arial, sans-serif !important;
  box-shadow: 0 16px 35px #001d233d !important;
  max-block-size: min(68dvh, 480px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  z-index: 2147483600;
  text-align: start;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}
.gbc-qg-row-action-panel[popover]:popover-open {
  display: block !important;
}
.gbc-qg-row-action-panel[popover],
.gbc-qg-row-action-panel[popover] * {
  box-sizing: border-box !important;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 4px !important;
  inline-size: 100% !important;
  min-inline-size: 0 !important;
  max-inline-size: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* The template's own wrapper may have an application-specific class
   (for example .qerp-actions). Override its layout ONLY inside our menu. */
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content > :is(div, section, nav, ul) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  flex-direction: column !important;
  gap: 4px !important;
  inline-size: 100% !important;
  min-inline-size: 0 !important;
  max-inline-size: none !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: normal !important;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button, a, [role="menuitem"]) {
  display: flex !important;
  flex: 0 0 auto !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  inline-size: 100% !important;
  min-inline-size: 0 !important;
  max-inline-size: 100% !important;
  block-size: auto !important;
  min-block-size: 42px !important;
  margin: 0 !important;
  padding: 9px 12px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: #243b51 !important;
  font: inherit !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  text-align: start !important;
  text-decoration: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  cursor: pointer;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button, a):is(:hover, :focus-visible) {
  background: #eaf7f4 !important;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button, a) :is(i, svg, .k-icon) {
  flex: 0 0 18px !important;
  inline-size: 18px !important;
  text-align: center;
}
/* Icon-only ERP buttons expose their existing `title` as visible menu text. */
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content .qerp-icon-btn[title]::after {
  content: attr(title);
  display: inline;
  position: static;
  margin: 0;
  color: inherit;
  font: inherit;
  white-space: normal;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button, a)[disabled] {
  opacity: .5 !important;
  cursor: not-allowed !important;
}
/* Keep trigger small, and ensure its own label never wraps vertically. */
.gbc-qg-grid .gbc-qg-row-action-trigger {
  min-inline-size: 40px;
  max-inline-size: 100%;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

/* V7.1: isolate popup dimensions from table/application rules. */
.gbc-qg-grid .gbc-qg-row-action-panel[popover] {
  height: auto !important;
  min-height: 0 !important;
  width: min(292px, calc(100vw - 24px)) !important;
  max-width: calc(100vw - 24px) !important;
  max-height: calc(100dvh - 24px) !important;
  contain: layout style;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button,a,[role="menuitem"]) {
  width: 100% !important; height: auto !important;
  max-height: none !important; overflow: visible !important;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content :is(button,a) > span:not(.bi):not(.k-icon):not(.k-svg-icon) {
  display: inline !important; font-size: 13px !important;
  visibility: visible !important; opacity: 1 !important;
  white-space: normal !important;
}
.gbc-qg-row-action-panel[popover] .gbc-qg-action-content .qerp-icon-btn[title]::after {
  content: none !important;
}
.gbc-qg-grid.gbc-qg-fit-width .gbc-qg-grid-table :is(.gbc-qg-action-template-cell,.gbc-qg-actions) :is(.qerp-actions,.gbc-qg-template-actions) {
  display: flex; flex-wrap: wrap !important; white-space: normal !important;
  max-width: 100%; min-width: 0;
}

/* 2026-10-26 v7.2: genuinely compact command columns in adaptive table mode.
   All selectors are scoped to GoodbyteComponents; other site tables are untouched. */
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards)
  .gbc-qg-grid-table col.gbc-qg-actions-col {
  width: 62px !important;
  min-width: 0 !important;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards)
  .gbc-qg-grid-table :is(th[data-gbc-qg-action="true"], td.gbc-qg-action-template-cell, td.gbc-qg-actions) {
  width: 62px;
  max-width: 62px;
  padding-inline: 3px !important;
  text-align: center;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards)
  .gbc-qg-row-action-trigger {
  width: 38px;
  min-width: 38px;
  min-inline-size: 38px;
  max-width: 38px;
  padding: 5px;
}
.gbc-qg-grid.gbc-qg-responsive-adaptive.gbc-qg-actions-compact:not(.gbc-qg-responsive-cards)
  .gbc-qg-row-action-trigger > span:not(:first-child) { display: none; }
