/* =====================================================================
   RSI · enterrsi.si · rsi-g.css (v1.9.0, Nov 10, 2026)
   The growth build: Report a Rogue and the Jury, the Rogue Canon, the
   Promise Tracker, the Comment Desk and the Kill Switch Pledge.
   Uses the site.css tokens and the rsi-plus.css components only.
   ===================================================================== */
:root { --ps-kept: #5fe3a6; --ps-not-met: #ff7a8f; --ps-withdrawn: #ffb45e; --ps-in-progress: #4fa3ff; --ps-no-evidence: #6b7280; }

/* ---------- metrics: centered, animated, single line labels ---------- */
.g-tiles { display: grid; gap: clamp(10px, 1.4vw, 16px); grid-template-columns: repeat(var(--gn, 4), minmax(0, 1fr)); margin-bottom: clamp(20px, 2.6vw, 32px); }
.g-n3 { --gn: 3; } .g-n4 { --gn: 4; } .g-n5 { --gn: 5; } .g-n6 { --gn: 6; }
.g-tile { text-align: center; padding: clamp(16px, 2vw, 24px) 10px; border: 1px solid var(--line); border-radius: var(--r); background: linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .008)); display: grid; gap: 6px; justify-items: center; min-width: 0; }
.g-tile > * + * { margin-top: 0; }
.g-v { font-family: var(--f-display); font-size: clamp(28px, 3.2vw, 44px); line-height: 1.1; background: var(--chrome); -webkit-background-clip: text; background-clip: text; color: transparent; font-variant-numeric: tabular-nums; }
.g-tile .k { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
@media (max-width: 900px) { .g-n6 { --gn: 3; } .g-n4 { --gn: 2; } .g-n5 { --gn: 5; } }
@media (max-width: 640px) { .g-n5 .g-tile .k { font-size: 9.5px; letter-spacing: .06em; } .g-n5 .g-v { font-size: 22px; } }
@media (max-width: 560px) { .g-n6 { --gn: 2; } .g-n3 { --gn: 3; } .g-n3 .g-tile .k { font-size: 9.5px; letter-spacing: .06em; } }
@media (max-width: 420px) { .g-n5 { --gn: 5; gap: 6px; } .g-n5 .g-tile { padding: 12px 4px; } }
.g-lnum { display: inline-block; min-width: 1.6em; font-variant-numeric: tabular-nums; }
.g-lnum[aria-busy="true"] { width: 2.4em; height: .9em; border-radius: 6px; background: linear-gradient(90deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .14), rgba(255, 255, 255, .05)); background-size: 200% 100%; animation: g-shim 1.6s linear infinite; vertical-align: middle; }
@keyframes g-shim { from { background-position: 200% 0; } to { background-position: 0 0; } }
@media (prefers-reduced-motion: reduce) { .g-lnum[aria-busy="true"] { animation: none; } }

/* ---------- shared bits ---------- */
.g-tabs { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 14px; }
.g-tabs .ftab { min-height: 38px; padding: 6px 14px; font-size: 14px; }
.g-share { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; margin-top: clamp(24px, 3vw, 36px); }
.g-share .k { width: 100%; text-align: center; }
.g-share .btn svg { width: 16px; height: 16px; }
.g-sharecard .g-share { margin-top: 4px; justify-content: flex-start; }
.g-sharecard .g-share .k { display: none; }
.g-empty { text-align: center; padding: clamp(26px, 3vw, 40px) clamp(18px, 3vw, 40px); border: 1px dashed var(--line-2); border-radius: var(--r); display: grid; gap: 10px; justify-items: center; background: rgba(255, 255, 255, .012); }
.g-empty .k { color: var(--ion); }
.g-empty .body-copy { max-width: 64ch; }
.g-empty .body-copy a, .g-pnote a, .g-why a, .g-feedlist a, .body-copy a { color: var(--ice); }
.g-live { min-height: 60px; }
.g-faq { display: grid; gap: 12px; }
.g-pair { align-items: stretch; }
.g-pair > .card { display: grid; gap: 12px; align-content: start; }
.g-pair > .card > * + * { margin-top: 0; }
.g-steps li { grid-template-columns: 44px minmax(0, 1fr); }
.g-steps li p { color: var(--mute); }
.g-quote { margin: 0; padding: 12px 16px; border-left: 3px solid var(--pc, var(--ion)); background: rgba(255, 255, 255, .025); border-radius: 0 10px 10px 0; font-style: italic; color: var(--ice); overflow-wrap: anywhere; }
.g-y { font-variant-numeric: tabular-nums; }
.sm a { color: inherit; }

/* ---------- the Rogue Canon ---------- */
.g-works { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 18px); }
@media (max-width: 1099px) { .g-works { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .g-works { grid-template-columns: minmax(0, 1fr); } }
.g-rel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 900px) { .g-rel { grid-template-columns: minmax(0, 1fr); } }
.g-work { display: flex; flex-direction: column; gap: 10px; text-decoration: none; min-height: 100%; }
.g-work > * + * { margin-top: 0; }
.g-work:hover { border-color: rgba(79, 163, 255, .45); transform: translateY(-3px); }
.g-work[hidden] { display: none; }
.g-wk { display: flex; gap: 8px; align-items: center; color: var(--ion); }
.g-wk .g-y::before, .g-rm .g-y::before { content: "·"; margin-right: 8px; color: var(--dim); }
.g-rm .g-y::before { margin-left: 8px; }
.g-wt { font-family: var(--f-display); font-weight: 400; font-size: clamp(16px, 1.35vw, 19px); line-height: 1.3; color: var(--ice); overflow-wrap: anywhere; letter-spacing: .01em; }
.g-wc { font-size: 14px; color: var(--dim); line-height: 1.45; }
.g-wb { margin-top: auto !important; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; }
.g-real { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--mute); white-space: nowrap; }
.g-real b { color: var(--flare); font-weight: 600; }
.g-meter { --p: 50%; display: block; width: 100%; height: 8px; border-radius: 99px; background: rgba(255, 255, 255, .07); overflow: hidden; }
.g-meter i { display: block; height: 100%; width: var(--p); border-radius: inherit; background: linear-gradient(90deg, #4fa3ff, #ffd27a 55%, #ff9a3c); }
.g-meter.big { height: 12px; }
.g-rank { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(10px, 1.4vw, 16px); }
@media (max-width: 860px) { .g-rank { grid-template-columns: minmax(0, 1fr); } }
.g-rk { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 6px 16px; align-items: center; padding: 16px 18px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(180deg, rgba(255, 255, 255, .03), rgba(255, 255, 255, .008)); }
.g-rn { grid-row: span 3; font-family: var(--f-display); font-size: 30px; color: var(--flare); text-align: center; text-shadow: 0 0 24px rgba(255, 154, 60, .35); }
.g-rt { display: grid; gap: 2px; min-width: 0; }
.g-rt a { color: var(--ice); font-weight: 700; font-size: 17px; text-decoration: none; overflow-wrap: anywhere; }
.g-rt a:hover { text-decoration: underline; }
.g-rm { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--dim); }
.g-rr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.g-rc { font-size: 14px; color: var(--dim); line-height: 1.45; }
.g-rc a { color: var(--mute); }
.g-flt { grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)) auto; }
.g-flt3 { grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(0, 1fr)) auto; }
.g-flt .btn { order: 9; }
@media (max-width: 1100px) { .g-flt, .g-flt3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .g-flt .f-q, .g-flt3 .f-q { grid-column: 1 / -1; } .g-flt .btn { order: 9; grid-column: auto; } .g-flt3 .btn { grid-column: auto; } }
@media (max-width: 640px) { .g-flt, .g-flt3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .g-flt .btn, .g-flt3 .btn { grid-column: 1 / -1; } }
.g-bars { list-style: none; display: grid; gap: 10px; margin-top: 6px; }
.g-bars li { display: grid; grid-template-columns: minmax(0, 132px) minmax(0, 1fr) 40px; gap: 10px; align-items: center; }
.g-bt { height: 12px; border-radius: 99px; background: rgba(255, 255, 255, .06); overflow: hidden; }
.g-bt i { display: block; height: 100%; width: var(--w); background: var(--c); border-radius: inherit; transform-origin: left; transition: transform 1.2s cubic-bezier(.2, .7, .2, 1); }
.g-bars.rv.pre .g-bt i { transform: scaleX(0); }
.g-bn { font-family: var(--f-mono); font-size: 13px; text-align: right; color: var(--ice); }
.g-bl .sev { font-size: 10.5px; padding: 3px 9px 3px 3px; }
.g-bl .sev i { width: 18px; height: 18px; font-size: 10px; }
.g-bl .g-y { font-family: var(--f-mono); font-size: 12.5px; color: var(--mute); }
.g-charts > .card { display: grid; gap: 8px; align-content: start; }
@media (max-width: 1000px) { .g-charts { grid-template-columns: minmax(0, 1fr); } }
.g-realcard { display: grid; gap: 12px; align-content: start; }
.g-realcard > * + * { margin-top: 0; }
.g-case { display: grid; gap: 8px; text-decoration: none; }
.g-case > * + * { margin-top: 0; }
.g-case:hover { border-color: rgba(79, 163, 255, .45); }
.g-case .t { font-weight: 700; color: var(--ice); line-height: 1.4; }

/* ---------- the Promise Tracker ---------- */
.stb.ps-kept { --sc: var(--ps-kept); } .stb.ps-not-met { --sc: var(--ps-not-met); } .stb.ps-withdrawn { --sc: var(--ps-withdrawn); }
.stb.ps-in-progress { --sc: var(--ps-in-progress); } .stb.ps-no-evidence { --sc: var(--ps-no-evidence); }
.g-labcard { padding: clamp(18px, 2.4vw, 30px); }
.g-labbars { list-style: none; display: grid; gap: 10px; }
.g-labbars li { display: grid; grid-template-columns: minmax(0, 170px) minmax(0, 1fr) 34px 46px; gap: 12px; align-items: center; }
.g-lbn { color: var(--ice); font-weight: 700; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g-lbn:hover { text-decoration: underline; }
.g-lbt { display: flex; height: 14px; border-radius: 99px; overflow: hidden; background: rgba(255, 255, 255, .05); }
.g-lbt i { display: block; height: 100%; width: var(--w); transform-origin: left; transition: transform 1.2s cubic-bezier(.2, .7, .2, 1); }
.g-labbars.rv.pre .g-lbt i { transform: scaleX(0); }
.g-lbt i.ps-kept, .g-legend i.ps-kept { background: var(--ps-kept); } .g-lbt i.ps-not-met, .g-legend i.ps-not-met { background: var(--ps-not-met); }
.g-lbt i.ps-withdrawn, .g-legend i.ps-withdrawn { background: var(--ps-withdrawn); } .g-lbt i.ps-in-progress, .g-legend i.ps-in-progress { background: var(--ps-in-progress); }
.g-lbt i.ps-no-evidence, .g-legend i.ps-no-evidence { background: var(--ps-no-evidence); }
.g-lbc { font-family: var(--f-mono); font-size: 13px; text-align: right; color: var(--ice); }
.g-legend { display: flex; flex-wrap: wrap; gap: 8px 18px; justify-content: center; margin-top: 16px; font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--mute); }
.g-legend span { display: inline-flex; gap: 8px; align-items: center; }
.g-legend i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
@media (max-width: 640px) { .g-labbars li { grid-template-columns: minmax(0, 1fr) 34px 46px; } .g-lbt { grid-column: 1 / -1; grid-row: 2; } }
.g-proms { display: grid; gap: clamp(12px, 1.4vw, 18px); }
.g-prom { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 10px clamp(18px, 3vw, 40px); align-items: start; border-left: 3px solid var(--pc); scroll-margin-top: calc(var(--hdr) + var(--tick) + 24px); }
.g-prom > * + * { margin-top: 0; }
.g-prom[hidden] { display: none; }
.g-prom > .g-ph, .g-prom > .h3, .g-prom > .g-who, .g-prom > .g-kind, .g-prom > .g-quote { grid-column: 1; }
.g-prom > .g-psrc, .g-prom > .g-pst { grid-column: 2; }
.g-prom > .g-psrc { grid-row: 1 / span 2; }
.g-prom > .g-pst { grid-row: 3 / span 3; }
.g-ph { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; }
.g-ph time { font-family: var(--f-mono); font-size: 12px; letter-spacing: .08em; color: var(--dim); text-transform: uppercase; }
.g-plab { font-weight: 700; color: var(--ice); text-decoration: none; }
.g-plab:hover { text-decoration: underline; }
.g-who { color: var(--dim); font-size: 14.5px; }
.g-kind { color: var(--mute); }
.g-psrc, .g-pnote, .g-ps-src, .g-chk { font-size: 14.5px; line-height: 1.55; color: var(--mute); overflow-wrap: anywhere; }
.g-psrc .k { display: block; margin-bottom: 4px; }
.g-psrc a, .g-ps-src a, .g-extra a { color: var(--ice); }
.g-pst { display: grid; gap: 8px; padding: 14px 16px; border-radius: 12px; background: rgba(255, 255, 255, .025); border: 1px solid var(--line); }
.g-pnote b { color: var(--ice); }
.g-extra { font-size: 14px; }
.g-chk { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .06em; color: var(--dim); }
.g-chk a { color: var(--mute); }
@media (max-width: 860px) { .g-prom { grid-template-columns: minmax(0, 1fr); } .g-prom > * { grid-column: 1 !important; grid-row: auto !important; } }
.g-defs { list-style: none; display: grid; gap: 12px; }
.g-defs li { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 12px; align-items: start; }
.g-defs p { color: var(--mute); font-size: 15px; }
@media (max-width: 560px) { .g-defs li { grid-template-columns: minmax(0, 1fr); } }
.g-corr, .g-embed, .g-boardcard { display: grid; gap: 12px; align-content: start; }
.g-corr > * + *, .g-embed > * + *, .g-boardcard > * + * { margin-top: 0; }
.g-boardcard .h3 { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }

/* ---------- the Comment Desk ---------- */
.g-reqs { display: grid; gap: clamp(12px, 1.4vw, 16px); }
.g-req { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 24px; align-items: start; }
.g-req > * + * { margin-top: 0; }
.g-req[hidden] { display: none; }
.g-req > .g-rh, .g-req > .g-rt, .g-req > .g-ag, .g-req > .g-exc, .g-req > .g-sum { grid-column: 1; }
.g-req > .g-rf { grid-column: 2; grid-row: 1; text-align: right; }
.g-req > .cta-row { grid-column: 2; grid-row: 2 / span 3; justify-content: flex-end; align-self: end; }
.g-req .cta-row .btn { min-height: 42px; padding: 9px 16px; font-size: 14.5px; }
.g-rh { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.g-jur, .g-tier, .g-left { font-family: var(--f-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; border: 1px solid var(--line-2); color: var(--ice); white-space: nowrap; }
.g-jur-us { border-color: rgba(79, 163, 255, .55); } .g-jur-uk { border-color: rgba(207, 214, 224, .55); } .g-jur-eu { border-color: rgba(255, 210, 122, .55); }
.g-tier { color: var(--mute); }
.g-left { border-color: rgba(95, 227, 166, .5); color: #c9f6e2; }
.g-left.hot { border-color: rgba(255, 154, 60, .6); color: #ffd9b5; }
.g-rt { font-size: clamp(16.5px, 1.3vw, 19px); overflow-wrap: anywhere; }
.g-ag { color: var(--dim); font-size: 14.5px; display: flex; flex-wrap: wrap; gap: 4px 14px; }
.g-dk { font-family: var(--f-mono); font-size: 12px; color: var(--mute); }
.g-exc, .g-sum { font-size: 14.5px; color: var(--mute); overflow-wrap: anywhere; }
.g-exc .k { display: block; margin-bottom: 2px; }
.g-rf time { display: block; font-family: var(--f-display); font-size: 17px; color: var(--ice); white-space: nowrap; }
@media (max-width: 760px) { .g-req { grid-template-columns: minmax(0, 1fr); } .g-req > * { grid-column: 1 !important; grid-row: auto !important; text-align: left !important; } .g-req > .cta-row { justify-content: flex-start; } }
.g-feeds { margin-top: clamp(20px, 2.4vw, 28px); display: grid; gap: 10px; }
.g-feeds > * + * { margin-top: 0; }
.g-feedlist { list-style: none; display: grid; gap: 8px; color: var(--mute); font-size: 15px; }
.g-feedlist b { color: var(--ice); margin-right: 6px; }
.g-filed { display: grid; gap: 12px; }

/* ---------- forms: Report a Rogue, the Jury, the Pledge ---------- */
.g-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px clamp(14px, 2vw, 24px); }
.g-form > * + * { margin-top: 0; }
.g-form > .h3 { grid-column: 1 / -1; }
.g-wide { grid-column: 1 / -1; }
.g-f { display: grid; gap: 7px; min-width: 0; font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--dim); position: relative; border: 0; padding: 0; margin: 0; }
.g-f legend { padding: 0; margin-bottom: 7px; }
.g-f input, .g-f select, .g-f textarea {
  width: 100%; min-height: 48px; padding: 11px 14px; border-radius: 12px; border: 1px solid var(--ctl-line); background: var(--ctl); color: var(--ice);
  font-family: var(--f-body); font-size: 16px; letter-spacing: 0; text-transform: none; line-height: 1.45;
}
.g-f textarea { resize: vertical; min-height: 128px; }
.g-f select { appearance: none; -webkit-appearance: none; padding-right: 34px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%23b8bec8' stroke-width='1.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 12px; }
.g-f input:focus, .g-f select:focus, .g-f textarea:focus { outline: 2px solid var(--ion); outline-offset: 1px; border-color: var(--ion); }
.g-f input::placeholder, .g-f textarea::placeholder { color: var(--dim); }
.g-f [aria-invalid="true"] { border-color: var(--bad); }
.g-srcs, .g-links { display: grid; gap: 10px; }
.g-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.g-links legend { grid-column: 1 / -1; }
@media (max-width: 900px) { .g-links { grid-template-columns: minmax(0, 1fr); } }
.g-cnt { position: absolute; right: 12px; bottom: 10px; font-size: 11px; color: var(--dim); pointer-events: none; }
.g-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.g-check { display: flex; gap: 12px; align-items: flex-start; color: var(--mute); font-size: 15.5px; line-height: 1.5; }
.g-check input { width: 20px; height: 20px; margin-top: 2px; flex: none; accent-color: var(--ion); }
.g-submit { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: center; }
.g-msg { font-size: 15px; color: var(--mute); flex: 1 1 260px; }
.g-msg.ok { color: #c9f6e2; } .g-msg.err { color: #ffc2c8; }
.g-pass { border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; background: rgba(79, 163, 255, .045); margin-bottom: clamp(16px, 2vw, 22px); }
.g-form .g-pass { margin-bottom: 0; }
.g-pass-out { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: center; justify-content: space-between; }
.g-pass-out .body-copy { flex: 1 1 320px; font-size: 15px; }
.g-pass-in .body-copy { font-size: 15px; }
.g-pass-in b { color: var(--ice); }
.g-ok-dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: var(--ok); margin-right: 8px; box-shadow: 0 0 10px rgba(95, 227, 166, .7); }
@media (max-width: 700px) { .g-form { grid-template-columns: minmax(0, 1fr); } }
.g-receipt { display: grid; gap: 10px; }
.g-receipt code { font-family: var(--f-mono); color: var(--ice); }
.g-rules { margin-top: clamp(18px, 2.4vw, 28px); }
@media (max-width: 900px) { .g-rules { grid-template-columns: minmax(0, 1fr); } }

/* ---------- the Jury ---------- */
.g-cases { display: grid; gap: clamp(14px, 1.8vw, 20px); }
.g-jcase { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 16px clamp(18px, 3vw, 36px); }
.g-jcase > * + * { margin-top: 0; }
.g-jcase .g-jl, .g-jcase .g-jr { display: grid; gap: 10px; align-content: start; min-width: 0; }
.g-jcase .g-jl > * + *, .g-jcase .g-jr > * + * { margin-top: 0; }
.g-jwhat { color: var(--ice); white-space: pre-line; overflow-wrap: anywhere; }
.g-jmeta { display: flex; flex-wrap: wrap; gap: 6px 14px; font-family: var(--f-mono); font-size: 12px; letter-spacing: .06em; color: var(--dim); text-transform: uppercase; }
.g-jsrc { list-style: none; display: grid; gap: 6px; font-size: 14.5px; }
.g-jsrc a { color: var(--ion); overflow-wrap: anywhere; }
.g-dist { list-style: none; display: grid; gap: 6px; }
.g-dist li { display: grid; grid-template-columns: 26px minmax(0, 1fr) 30px; gap: 8px; align-items: center; font-family: var(--f-mono); font-size: 12px; color: var(--mute); }
.g-dist .g-bt i { background: var(--c); }
.g-res { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; }
.g-res .k b { color: var(--ice); }
.g-vote { display: grid; gap: 10px; padding: 14px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255, 255, 255, .02); }
.g-lvls { display: flex; flex-wrap: wrap; gap: 6px; border: 0; padding: 0; margin: 0; }
.g-lvls legend, .g-cred legend { font-family: var(--f-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--dim); margin-bottom: 6px; padding: 0; width: 100%; }
.g-lvls label, .g-cred label { cursor: pointer; }
.g-lvls input, .g-cred input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.g-lvls span, .g-cred span { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--ctl-line); background: var(--ctl); font-size: 13.5px; color: var(--mute); transition: border-color .2s, color .2s; }
.g-lvls input:checked + span, .g-cred input:checked + span { border-color: var(--ion); color: var(--ice); background: rgba(79, 163, 255, .14); }
.g-lvls input:focus-visible + span, .g-cred input:focus-visible + span { outline: 2px solid var(--ion); outline-offset: 2px; }
.g-lvls span i { font-style: normal; width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; background: var(--c); color: #0a0605; font-size: 11px; font-weight: 700; }
.g-cred { display: flex; flex-wrap: wrap; gap: 6px; border: 0; padding: 0; margin: 0; }
@media (max-width: 860px) { .g-jcase { grid-template-columns: minmax(0, 1fr); } }
.g-hunt { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; counter-reset: h; }
.g-hunt li { counter-increment: h; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 12px 16px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255, 255, 255, .02); }
.g-hunt li::before { content: counter(h); font-family: var(--f-display); font-size: 20px; color: var(--flare); text-align: center; }
.g-hunt a { color: var(--ice); font-weight: 700; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g-hunt b { font-family: var(--f-mono); color: var(--ice); }
.g-hunt li:only-child, .g-hunt li:last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (max-width: 700px) { .g-hunt { grid-template-columns: minmax(0, 1fr); } }
.g-comm { list-style: none; display: grid; gap: 10px; }

/* ---------- the Kill Switch Pledge ---------- */
.g-pledge { display: grid; gap: 16px; padding: clamp(22px, 3vw, 40px); background: radial-gradient(700px 260px at 0% 0%, rgba(255, 154, 60, .1), transparent 70%), linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01)); border-color: rgba(255, 154, 60, .35); }
.g-pledge > * + * { margin-top: 0; }
.g-pledge > .k { color: var(--flare); text-align: center; }
.g-pre { text-align: center; font-size: clamp(18px, 1.6vw, 22px); color: var(--ice); max-width: 60ch; margin-inline: auto !important; }
.g-commits { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 20px); }
.g-commit { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 14px; align-items: start; padding: 18px; border-radius: 14px; border: 1px solid var(--line); background: rgba(5, 5, 6, .5); scroll-margin-top: calc(var(--hdr) + var(--tick) + 24px); }
.g-commit > div { display: grid; gap: 8px; }
.g-cn { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; font-family: var(--f-display); font-size: 20px; color: #0a0605; background: var(--flare); box-shadow: 0 0 24px rgba(255, 154, 60, .4); }
.g-cc { font-size: 14.5px; color: var(--mute); }
.g-cc .k { display: block; margin-bottom: 2px; }
.g-cc a { color: var(--ice); overflow-wrap: anywhere; }
@media (max-width: 1000px) { .g-commits { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 560px) { .g-commit { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 16px; } .g-cn { width: 40px; height: 40px; font-size: 18px; } }
.badge-demo img { max-width: 100%; height: auto; }
.g-whys > .card, .g-why { display: grid; gap: 10px; align-content: start; }
.g-why > * + * { margin-top: 0; }
.g-srcs-l { list-style: none; display: grid; gap: 6px; font-size: 14.5px; }
.g-srcs-l li { padding-left: 14px; position: relative; color: var(--mute); }
.g-srcs-l li::before { content: ""; position: absolute; left: 0; top: .62em; width: 6px; height: 6px; border-radius: 50%; background: var(--ion); }
@media (max-width: 1000px) { .g-whys { grid-template-columns: minmax(0, 1fr); } }
.g-verify, .g-done { display: grid; gap: 14px; margin-top: clamp(14px, 2vw, 20px); }
.g-verify > * + *, .g-done > * + * { margin-top: 0; }
.g-ways { gap: clamp(12px, 2vw, 24px); }
.g-ways > div { display: grid; gap: 10px; align-content: start; padding: 16px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255, 255, 255, .02); min-width: 0; }
.g-ways > div > * + * { margin-top: 0; }
@media (max-width: 760px) { .g-ways { grid-template-columns: minmax(0, 1fr); } }
.g-signers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 18px); }
.g-signers a.card { display: grid; gap: 6px; text-decoration: none; }
.g-signers a.card > * + * { margin-top: 0; }
.g-signers .t { font-weight: 700; color: var(--ice); overflow-wrap: anywhere; }
.g-signers .card:last-child:nth-child(3n + 1) { grid-column: 1 / -1; }
.g-signers .card:nth-last-child(2):nth-child(3n + 1), .g-signers .card:last-child:nth-child(3n + 2) { grid-column: span 1; }
@media (max-width: 900px) { .g-signers { grid-template-columns: minmax(0, 1fr); } .g-signers .card { grid-column: auto !important; } }
.g-count { text-align: center; margin-bottom: 18px; }
.g-count .g-v { font-size: clamp(40px, 5vw, 64px); }

/* ---------- v1.9.0 layout additions ---------- */
.g-rc .k { margin-right: 6px; }
.g-decades { margin-top: clamp(12px, 1.6vw, 20px); display: grid; gap: 10px; }
.g-decades > * + * { margin-top: 0; }
.g-cols { display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: clamp(6px, 1vw, 14px); align-items: end; height: 220px; padding-top: 8px; }
.g-col { display: grid; grid-template-rows: minmax(0, 1fr) auto auto; justify-items: center; height: 100%; gap: 6px; }
.g-cb { align-self: end; width: min(46px, 70%); height: var(--h); min-height: 3px; border-radius: 8px 8px 3px 3px; background: linear-gradient(180deg, #4fa3ff, rgba(79, 163, 255, .35)); transform-origin: bottom; transition: transform 1.2s cubic-bezier(.2, .7, .2, 1); }
.g-cols.rv.pre .g-cb { transform: scaleY(0); }
.g-cv { font-family: var(--f-mono); font-size: 13px; color: var(--ice); }
.g-cd { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .06em; color: var(--dim); }
@media (max-width: 560px) { .g-cols { height: 170px; } .g-cd { font-size: 9.5px; letter-spacing: 0; writing-mode: vertical-rl; transform: rotate(180deg); } }
.g-cw .scale-strip li.now::after { display: none; }
.g-terms { list-style: none; display: grid; gap: 12px; }
.g-terms li { display: grid; gap: 2px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.g-terms li:last-child { border-bottom: 0; padding-bottom: 0; }
.g-terms .ez-n { color: var(--ice); font-weight: 700; text-decoration: none; }
.g-terms .ez-n:hover { text-decoration: underline; }
.g-terms .ez-d { color: var(--mute); font-size: 15px; }
.g-cw .why-card, .g-cw .g-realcard { display: grid; gap: 12px; align-content: start; }
.g-cw .why-card > * + * { margin-top: 0; }
@media (max-width: 900px) { .g-cw .g-pair { grid-template-columns: minmax(0, 1fr); } }
/* canon work: the synopsis under the answer-first lead (kept in English on every language version) */
.page-hero .g-syn{margin:calc(-1 * clamp(6px,.9vw,10px)) 0 0;font-size:clamp(15px,1.15vw,17px);line-height:1.7;color:var(--mute);text-wrap:pretty}
