/* =====================================================================
   GLL listing sub-pages kit (gll-lsub.css), lane JOBS phase 2, 2026-10-13.
   One system for:
     .glh  listing header on sub-pages (identity, actions, tabs)
     .gls  jobs & events: profile section, list page, detail page
     .grv  reviews: /reviews page and the profile card
   Quality bar 2026-10-13: Inter Tight; H1 32/28/24, H2 22/20, body 16,
   captions 13, micro 11; spacing 4/8/12/16/24/32/48/64; card padding 24
   (20 on phones); ink #0a0a0a, body #222, meta #5f6b70, hairline #e6e6e6,
   field #949494, tint #f2f2f2; square, no shadows, no gradients.
   Scoped with "html body" + !important where the site's older layers
   (gll-qoves, gll-final, profile <style>) style bare elements.
   ===================================================================== */

.glh, .gls, .grv {
  --k-ink: #0a0a0a; --k-body: #222; --k-meta: #5f6b70; --k-line: #e6e6e6; --k-field: #949494; --k-tint: #f2f2f2; --k-gold: #7A5B12;
  --k-font: 'Inter Tight', 'Inter', Helvetica, Arial, sans-serif;
}
html body :is(.glh, .gls, .grv) { font-family: var(--k-font) !important; color: var(--k-body); }
html body :is(.glh, .gls, .grv) *, html body :is(.glh, .gls, .grv) *::before, html body :is(.glh, .gls, .grv) *::after { box-sizing: border-box; }
html body :is(.glh, .gls, .grv) :is(h1, h2, h3, p, ul, ol, dl, dd, figure) { margin: 0 !important; padding: 0; }
html body :is(.glh, .gls, .grv) :is(ul, ol) { list-style: none !important; }
html body :is(.glh, .gls, .grv) :is(ul, ol) > li::before { content: none !important; display: none !important; }
.gls-ic { flex: 0 0 auto; display: inline-block; vertical-align: middle; }
.gls-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: -1px; padding: 0; border: 0; }

/* ── Shared type and controls ─────────────────────────────────────── */
html body :is(.gls, .grv) .gls-h2 { display: flex; align-items: baseline; gap: 8px; font: 600 22px/1.25 var(--k-font) !important; letter-spacing: -.01em !important; text-transform: none !important; color: var(--k-ink) !important; }
html body :is(.gls, .grv) .gls-n { font: 400 16px/1 var(--k-font); color: var(--k-meta); font-variant-numeric: tabular-nums; }
html body :is(.gls, .grv) .gls-lead { margin-top: 8px !important; font: 400 16px/1.5 var(--k-font) !important; color: var(--k-meta) !important; }
html body :is(.gls, .grv) .gls-cap { font: 500 11px/1.4 var(--k-font) !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: var(--k-gold) !important; }
html body :is(.gls, .grv, .glh) .gls-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px; margin: 0;
  background: #fff !important; border: 1px solid var(--k-ink) !important; border-radius: 0 !important; box-shadow: none !important;
  font: 500 15px/1.2 var(--k-font) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--k-ink) !important;
  text-decoration: none !important; white-space: nowrap; cursor: pointer; transition: background-color .15s ease, color .15s ease;
}
html body :is(.gls, .grv, .glh) .gls-btn:hover { background: var(--k-tint) !important; }
html body :is(.gls, .grv, .glh) .gls-btn-primary { background: var(--k-ink) !important; color: #fff !important; }
html body :is(.gls, .grv, .glh) .gls-btn-primary:hover { background: #2b2b2b !important; border-color: #2b2b2b !important; }
html body :is(.gls, .grv, .glh) .gls-btn:focus-visible, html body :is(.gls, .grv, .glh) a:focus-visible, html body :is(.gls, .grv, .glh) button:focus-visible, html body .grv select:focus-visible { outline: 2px solid var(--k-ink) !important; outline-offset: 2px !important; }
html body :is(.gls, .grv) .gls-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font: 500 15px/1.2 var(--k-font) !important; color: var(--k-ink) !important; text-decoration: underline !important; text-underline-offset: 4px; text-decoration-thickness: 1px; white-space: nowrap; }
html body :is(.gls, .grv) .gls-link:hover { text-decoration-thickness: 2px; }
html body :is(.gls, .grv) .gls-empty { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px; border: 1px solid var(--k-line); }
html body :is(.gls, .grv) .gls-empty p { font: 400 16px/1.6 var(--k-font) !important; color: var(--k-meta) !important; max-width: 60ch; }
html body :is(.gls, .grv) .gls-empty .gls-ic, html body .grv-empty .gls-stars { color: var(--k-meta); }

/* ── Page frame (sub-pages) ───────────────────────────────────────── */
html body section.widget.gls-page:not(#k1):not(#k2):not(#k3), html body section.widget.grv-page:not(#k1):not(#k2):not(#k3) { padding: 48px 0 !important; margin: 0 !important; background: #fff !important; }
html body .gls-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 24px !important; }
html body .gls-head > div { min-width: 0; }

/* ── Profile cards (inside the profile's main column) ─────────────── */
html body .gll-lw.gllp2 .gllp2-card.gls-pcard { padding: 24px !important; }
html body .gls-phead { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 8px !important; }

/* ── The item card: profile section, list page (one component) ────── */
html body .gls .gls-cards > .gls-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 24px; align-items: center; padding: 24px 0; border-top: 1px solid var(--k-line); }
html body .gls .gls-cards > .gls-card:first-child { border-top: 0; }
html body .gls .gls-cards-page { border: 1px solid var(--k-line); padding: 0 24px !important; }
html body .gls .gls-card-main { min-width: 0; }
html body .gls .gls-card-t { font: 600 16px/1.4 var(--k-font) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--k-ink) !important; overflow-wrap: anywhere; }
html body .gls .gls-card-t a { color: var(--k-ink) !important; text-decoration: none !important; }
html body .gls .gls-card-t a:hover { text-decoration: underline !important; text-underline-offset: 4px; }
html body .gls .gls-card-d { margin-top: 12px !important; font: 400 16px/1.6 var(--k-font) !important; color: var(--k-body) !important; max-width: 70ch; overflow-wrap: anywhere; }
html body .gls .gls-card-act { display: flex; gap: 8px; align-items: center; }
html body .gls .gls-meta-row { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 8px !important; }
html body .gls .gls-meta-row li { display: inline-flex; align-items: center; gap: 6px; font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; min-width: 0; overflow-wrap: anywhere; }
html body .gls .gls-meta-row .gls-ic { color: var(--k-meta); }

/* ── Detail page ──────────────────────────────────────────────────── */
html body .gls .gls-back { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin: 0 0 16px; font: 500 15px/1.2 var(--k-font) !important; color: var(--k-meta) !important; text-decoration: none !important; }
html body .gls .gls-back:hover { color: var(--k-ink) !important; }
html body .gls .gls-note { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 24px !important; padding: 12px 16px !important; border: 1px solid var(--k-ink); font: 400 16px/1.5 var(--k-font) !important; color: var(--k-ink) !important; }
html body .gls .gls-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; align-items: start; }
html body .gls .gls-main { min-width: 0; padding: 32px; border: 1px solid var(--k-line); }
html body .gls .gls-title { margin-top: 8px !important; }
html body .gls .gls-main > .gls-meta-row { margin-top: 16px !important; padding-bottom: 24px !important; border-bottom: 1px solid var(--k-line); }
html body .gls .gls-body { margin-top: 24px; max-width: 70ch; }
html body .gls .gls-body p { margin: 0 0 16px !important; font: 400 16px/1.7 var(--k-font) !important; color: var(--k-body) !important; overflow-wrap: anywhere; }
html body .gls .gls-body p:last-child { margin-bottom: 0 !important; }
html body .gls .gls-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
html body .gls .gls-cta-row { margin-top: 32px; }
html body .gls .gls-toast { margin-top: 8px !important; min-height: 0; font: 500 13px/1.4 var(--k-font) !important; color: var(--k-ink) !important; }
html body .gls .gls-toast:empty { display: none; }
html body .gls .gls-small { margin-top: 16px !important; font: 400 13px/1.5 var(--k-font) !important; color: var(--k-meta) !important; overflow-wrap: anywhere; }
html body .gls .gls-side { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
html body .gls .gls-panel { padding: 24px; border: 1px solid var(--k-line); }
html body .gls .gls-org { display: flex; align-items: center; gap: 12px; margin: 16px 0 !important; }
html body .gls .gls-org-logo { flex: 0 0 auto; width: 56px; height: 56px; object-fit: contain; border: 1px solid var(--k-line); background: #fff; padding: 4px; margin: 0 !important; }
html body .gls .gls-org-logo.is-mono { display: flex; align-items: center; justify-content: center; font: 600 22px/1 var(--k-font); color: var(--k-ink); background: var(--k-tint); }
html body .gls .gls-org-txt { min-width: 0; }
html body .gls .gls-org-name { font: 600 16px/1.35 var(--k-font) !important; color: var(--k-ink) !important; overflow-wrap: anywhere; }
html body .gls .gls-org-place { margin-top: 4px !important; font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; }
html body .gls .gls-btn-block { display: flex; width: 100%; }
html body .gls .gls-more { margin-top: 8px !important; }
html body .gls .gls-more li { border-top: 1px solid var(--k-line); }
html body .gls .gls-more li:first-child { border-top: 0; }
html body .gls .gls-more a { display: flex; flex-direction: column; gap: 4px; padding: 12px 0; text-decoration: none !important; min-height: 44px; }
html body .gls .gls-more-t { font: 500 15px/1.4 var(--k-font); color: var(--k-ink); overflow-wrap: anywhere; }
html body .gls .gls-more a:hover .gls-more-t { text-decoration: underline; text-underline-offset: 4px; }
html body .gls .gls-more-m { font: 400 13px/1.4 var(--k-font); color: var(--k-meta); }
html body .gls .gls-gone { padding: 32px; border: 1px solid var(--k-line); }
html body .gls .gls-gone .gls-row { margin-top: 24px; }

/* ── Listing header with tabs ─────────────────────────────────────── */
html body section.widget.listing-header-widget.glh:not(#k1):not(#k2):not(#k3) { padding: 32px 0 0 !important; margin: 0 !important; background: #fff !important; background-image: none !important; border-bottom: 1px solid var(--k-line); }
html body .glh .glh-crumbs ol { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 0 0 16px !important; }
html body .glh .glh-crumbs li { display: inline-flex; align-items: center; gap: 8px; font: 500 11px/1.4 var(--k-font) !important; letter-spacing: .16em; text-transform: uppercase; }
html body .glh .glh-crumbs li + li::before { content: '/' !important; display: inline !important; color: var(--k-line); letter-spacing: 0; }
html body .glh .glh-crumbs a { color: var(--k-gold) !important; text-decoration: none !important; }
html body .glh .glh-crumbs a:hover { color: var(--k-ink) !important; }
html body .glh .glh-top { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 16px 24px; align-items: center; }
html body .glh .glh-logo { width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--k-line); background: #fff; overflow: hidden; text-decoration: none !important; }
html body .glh .glh-logo img { width: 100%; height: 100%; object-fit: contain; padding: 6px; margin: 0 !important; }
html body .glh .glh-logo.is-mono { background: var(--k-tint); font: 600 28px/1 var(--k-font); color: var(--k-ink); }
html body .glh .glh-id { min-width: 0; }
html body .glh .glh-name { font: 600 32px/1.15 var(--k-font) !important; letter-spacing: -.015em !important; color: var(--k-ink) !important; text-transform: none !important; overflow-wrap: anywhere; }
html body .glh .glh-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 8px !important; }
html body .glh .glh-meta-i { display: inline-flex; align-items: center; gap: 6px; font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; text-decoration: none !important; }
html body .glh .glh-rating strong { font-weight: 600; color: var(--k-ink); }
html body .glh .glh-rating span:last-child { text-decoration: underline; text-underline-offset: 3px; }
html body .glh .glh-rating .gls-stars { color: var(--k-ink); }
html body .glh .glh-label { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border: 1px solid var(--k-line); font: 500 11px/1 var(--k-font) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--k-meta) !important; }
html body .glh .glh-act { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
html body .glh .glh-act .gls-btn i { font-size: 15px; }
html body .glh .glh-toast { margin: 8px 0 0 !important; font: 500 13px/1.4 var(--k-font); color: var(--k-ink); }
html body .glh .glh-toast:empty { display: none; }
html body .glh .glh-tabs { display: flex; gap: 32px; margin-top: 24px; overflow-x: auto; scrollbar-width: none; }
html body .glh .glh-tabs::-webkit-scrollbar { display: none; }
html body .glh .glh-tab { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0; margin-bottom: -1px; border-bottom: 2px solid transparent; font: 500 15px/1 var(--k-font) !important; color: var(--k-meta) !important; text-decoration: none !important; white-space: nowrap; }
html body .glh .glh-tab:hover { color: var(--k-ink) !important; }
html body .glh .glh-tab.is-active { color: var(--k-ink) !important; border-bottom-color: var(--k-ink); font-weight: 600 !important; }
html body .glh .glh-tab-n { font: 400 13px/1 var(--k-font); color: var(--k-meta); font-variant-numeric: tabular-nums; }
html body .glh .glh-tab:focus-visible { outline-offset: -2px !important; }
html body .glh .glh-in > .glh-top:last-child { padding-bottom: 32px; }
html body .glh .glh-in > .glh-toast:last-child { margin-bottom: 32px !important; }

/* ── Stars ────────────────────────────────────────────────────────── */
.gls-stars { display: inline-flex; align-items: center; gap: 2px; color: var(--k-ink, #0a0a0a); line-height: 0; }
.gls-stars svg { display: block; }

/* ── Reviews ──────────────────────────────────────────────────────── */
html body .grv .grv-head { align-items: center; }
html body .grv .grv-sum { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px 32px; padding: 24px; border: 1px solid var(--k-line); margin: 0 0 24px; }
html body .grv .grv-sum.has-cats { grid-template-columns: 220px minmax(0, 1fr) minmax(0, 1fr); }
html body .grv-pcard .grv-sum { margin-top: 16px; }
html body .grv .grv-score { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
html body .grv .grv-score-n { font: 600 32px/1 var(--k-font) !important; color: var(--k-ink) !important; font-variant-numeric: tabular-nums; }
html body .grv .grv-score-of { font: 400 16px/1 var(--k-font); color: var(--k-meta); }
html body .grv .grv-score-c { font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; }
html body .grv .grv-write { margin-top: 8px; }
html body .grv .grv-bars { display: flex; flex-direction: column; justify-content: center; gap: 8px; min-width: 0; }
html body .grv .grv-bar { display: grid; grid-template-columns: 16px minmax(0, 1fr) 32px; gap: 12px; align-items: center; min-height: 24px; }
html body .grv .grv-bar-l { font: 500 13px/1 var(--k-font); color: var(--k-ink); text-align: right; }
html body .grv .grv-bar-t { height: 8px; background: var(--k-tint); position: relative; overflow: hidden; }
html body .grv .grv-bar-f { position: absolute; inset: 0 auto 0 0; background: var(--k-ink); }
html body .grv .grv-bar-c { font: 400 13px/1 var(--k-font); color: var(--k-meta); text-align: right; font-variant-numeric: tabular-nums; }
html body .grv .grv-cats { min-width: 0; align-self: center; }
html body .grv .grv-cats > div { display: flex; justify-content: space-between; gap: 16px; padding: 8px 0; border-top: 1px solid var(--k-line); }
html body .grv .grv-cats > div:first-child { border-top: 0; }
html body .grv .grv-cats dt { font: 400 16px/1.4 var(--k-font); color: var(--k-body); }
html body .grv .grv-cats dd { font: 600 16px/1.4 var(--k-font); color: var(--k-ink); font-variant-numeric: tabular-nums; }
html body .grv .grv-tools { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin: 0 0 8px !important; }
html body .grv .grv-tools label { margin: 0 !important; font: 500 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; text-transform: none !important; letter-spacing: 0 !important; }
html body .grv .grv-tools select { height: 48px; min-width: 200px; padding: 0 40px 0 12px; border: 1px solid var(--k-field) !important; border-radius: 0 !important; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 6l4.5 4.5L12.5 6' fill='none' stroke='%230a0a0a' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center/16px 16px !important; -webkit-appearance: none; appearance: none; font: 400 16px/1.2 var(--k-font) !important; color: var(--k-ink) !important; box-shadow: none !important; }
html body .grv .grv-list > .grv-item { padding: 24px 0; border-top: 1px solid var(--k-line); }
html body .grv .grv-list > .grv-item:first-child { border-top: 0; }
html body .grv-page .grv-list { border-top: 1px solid var(--k-line); }
html body .grv-page .grv-list > .grv-item:first-child { border-top: 0; }
html body .grv .grv-top { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
html body .grv .grv-av { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: var(--k-tint); font: 600 13px/1 var(--k-font); color: var(--k-ink); }
html body .grv .grv-name { font: 600 16px/1.3 var(--k-font) !important; color: var(--k-ink) !important; overflow-wrap: anywhere; }
html body .grv .grv-date { font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; }
html body .grv .grv-t { margin-top: 16px !important; font: 600 16px/1.4 var(--k-font) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--k-ink) !important; overflow-wrap: anywhere; }
html body .grv .grv-text { margin-top: 8px; max-width: 70ch; }
html body .grv .grv-text p { margin: 0 0 12px !important; font: 400 16px/1.7 var(--k-font) !important; color: var(--k-body) !important; overflow-wrap: anywhere; }
html body .grv .grv-text p:last-child { margin-bottom: 0 !important; }
html body .grv .grv-clamp { max-height: 10.2em; overflow: hidden; }
html body .grv .grv-more { display: inline-flex; align-items: center; min-height: 44px; padding: 0; margin: 0; background: none !important; border: 0 !important; font: 500 15px/1.2 var(--k-font) !important; color: var(--k-ink) !important; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
html body .grv .grv-pending { margin-top: 12px !important; padding: 8px 12px !important; border: 1px solid var(--k-line); font: 400 13px/1.4 var(--k-font) !important; color: var(--k-meta) !important; }
html body .grv .grv-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px !important; }
html body .grv .grv-chips li { display: inline-flex; align-items: center; gap: 6px; min-height: 28px; padding: 0 8px; border: 1px solid var(--k-line); font: 400 13px/1 var(--k-font); color: var(--k-meta); }
html body .grv .grv-chips b { font-weight: 600; color: var(--k-ink); }
html body .grv .grv-fields { margin-top: 16px !important; max-width: 70ch; }
html body .grv .grv-fields > div { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 12px; padding: 8px 0; border-top: 1px solid var(--k-line); font: 400 15px/1.5 var(--k-font); }
html body .grv .grv-fields dt { color: var(--k-meta); font-weight: 500; }
html body .grv .grv-reply { margin-top: 16px; padding: 16px; background: var(--k-tint); border-left: 2px solid var(--k-ink); max-width: 70ch; }
html body .grv .grv-reply-h { font: 600 13px/1.4 var(--k-font) !important; color: var(--k-ink) !important; }
html body .grv .grv-reply .grv-text { margin-top: 8px; }
html body .grv .grv-replylink { margin-top: 8px; }
html body .grv .grv-all { margin-top: 8px; }
html body .grv .grv-pager { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--k-line); }
html body .grv .grv-pager-n { font: 400 13px/1.4 var(--k-font); color: var(--k-meta); }

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 1099.98px) {
  html body .grv .grv-sum.has-cats { grid-template-columns: 220px minmax(0, 1fr); }
  html body .grv .grv-sum.has-cats .grv-cats { grid-column: 1 / -1; padding-top: 16px; border-top: 1px solid var(--k-line); }
}
@media (max-width: 991.98px) {
  html body .gls .gls-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  html body .glh .glh-name { font-size: 28px !important; }
  html body .glh .glh-top { grid-template-columns: 56px minmax(0, 1fr); }
  html body .glh .glh-logo { width: 56px; height: 56px; }
  html body .glh .glh-act { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 767.98px) {
  html body section.widget.gls-page:not(#k1):not(#k2):not(#k3), html body section.widget.grv-page:not(#k1):not(#k2):not(#k3) { padding: 32px 0 !important; }
  html body :is(.gls, .grv) .gls-h2 { font-size: 20px !important; }
  html body .gll-lw.gllp2 .gllp2-card.gls-pcard { padding: 20px !important; }
  html body .gls .gls-cards > .gls-card { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  html body .gls .gls-card-act { width: 100%; }
  html body .gls .gls-card-act .gls-btn { flex: 1 1 0; }
  html body .gls .gls-cards-page { padding: 0 20px !important; }
  html body .gls .gls-main, html body .gls .gls-panel, html body .gls .gls-gone { padding: 20px; }
  html body .gls .gls-cta-row .gls-btn { flex: 1 1 100%; }
  html body .glh .glh-name { font-size: 24px !important; }
  html body .glh .glh-act .gls-btn { flex: 1 1 0; padding: 0 12px; }
  html body .glh .glh-tabs { gap: 24px; }
  html body .grv .grv-sum, html body .grv .grv-sum.has-cats { grid-template-columns: minmax(0, 1fr); padding: 20px; }
  html body .grv .grv-head .gls-btn { width: 100%; }
  html body .grv .grv-tools { justify-content: stretch; }
  html body .grv .grv-tools select { flex: 1 1 auto; min-width: 0; }
  html body .grv .grv-fields > div { grid-template-columns: minmax(0, 1fr); gap: 0; }
  html body .grv .grv-pager .gls-btn { flex: 1 1 0; }
}

/* ── Weight lock: the site phone layer (gll-qoves, 2-ID h1 rule and main p/li 15px rule)
   must not resize this kit. Same values as above, three-ID weight. ── */
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .glh-name { font-size: 32px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-h2 { font-size: 22px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-lead { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-cap { font-size: 11px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-card-d { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-meta-row li { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-body p { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-small { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-toast { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-org-name { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-org-place { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-empty p { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-note { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-score-n { font-size: 32px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-score-c { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-name { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-date { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-text p { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-pending { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-reply-h { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-chips li { font-size: 13px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .grv-t { font-size: 16px !important; }
html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .glh-toast { font-size: 13px !important; }
@media (max-width: 991.98px) { html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .glh-name { font-size: 28px !important; } }
@media (max-width: 767.98px) { html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .glh-name { font-size: 24px !important; } html:root body :is(.glh, .gls, .grv):not(#k1):not(#k2):not(#k3) .gls-h2 { font-size: 20px !important; } }
