/* Brand Systems · 07 governance — permissions, semver changelog, filters, watch controls */
.cbs-gv{background:var(--paper)}
.cbs-gv__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,4vw,64px)}
@media (min-width:1024px){.cbs-gv__grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start}}
.cbs-gv__side{min-width:0;display:flex;flex-direction:column;gap:22px}
.cbs-gv__photo{aspect-ratio:3 / 2}

.cbs-gv__perm{border-radius:var(--r-lg);box-shadow:inset 0 0 0 1px var(--line)}
.cbs-gv__perm table{width:100%;min-width:420px;border-collapse:collapse;font-size:.8125rem}
.cbs-gv__cap{text-align:left;padding:16px 18px 10px;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.cbs-gv__perm th,.cbs-gv__perm td{padding:11px 12px;text-align:left;border-top:1px solid var(--line-2);vertical-align:middle}
.cbs-gv__perm th:first-child{padding-left:18px}
.cbs-gv__perm td:last-child{padding-right:18px}
.cbs-gv__perm thead th{font-family:var(--f);font-size:.6875rem;font-weight:400;color:var(--muted)}
.cbs-gv__perm tbody th{font-weight:400}
.cbs-gv__perm tbody th b{display:block;font-weight:500;color:var(--ink)}
.cbs-gv__perm tbody th span{font-size:.6875rem;color:var(--muted)}
.cbs-gv__p{display:inline-block;font-family:var(--f);font-size:.6875rem;padding:3px 7px;border-radius:var(--r-xs);background:var(--paper-3);color:var(--txt);white-space:nowrap}
.cbs-gv__p--approve,.cbs-gv__p--sign-off{background:var(--ink);color:#fff}
.cbs-gv__p--review{background:var(--blue-wash);color:var(--blue-d)}
.cbs-gv__p--none{background:none;color:var(--ghost)}
.cbs-gv__semver{font-family:var(--f);font-size:.6875rem;color:var(--muted);line-height:1.6}
.cbs-gv__semver b{font-weight:500;color:var(--ink)}

/* controls */
.cbs-gv__log{min-width:0}
.cbs-gv__ctl{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;padding-bottom:18px;border-bottom:1px solid var(--ink)}
.cbs-gv__chips{display:flex;flex-wrap:wrap;gap:6px}
.cbs-gv__chip{height:30px;padding:0 12px;border-radius:var(--r-xs);font-family:var(--f);font-size:.6875rem;color:var(--txt);box-shadow:inset 0 0 0 1px var(--line-3);transition:background var(--d1),color var(--d1),box-shadow var(--d1)}
.cbs-gv__chip:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.cbs-gv__chip[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:none}
.cbs-gv__watch{border:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:3px;border-radius:var(--r-pill);background:var(--paper-3)}
.cbs-gv__watch legend{float:left;font-family:var(--f);font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);padding:0 10px 0 10px}
.cbs-gv__watch label{position:relative;display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:var(--r-pill);font-size:.75rem;font-weight:500;color:var(--muted);cursor:pointer;transition:background var(--d1),color var(--d1)}
.cbs-gv__watch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.cbs-gv__watch label:has(input:checked){background:var(--paper);color:var(--ink);box-shadow:var(--sh-1)}
.cbs-gv__watch label:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px}
.cbs-gv__live{margin-top:12px;font-family:var(--f);font-size:.6875rem;color:var(--muted)}

/* timeline */
.cbs-gv__list{position:relative;margin-top:10px}
.cbs-gv__item{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:24px 0;border-bottom:1px solid var(--line)}
.cbs-gv__item[hidden]{display:none}
@media (min-width:600px){.cbs-gv__item{grid-template-columns:150px minmax(0,1fr);gap:24px}}
.cbs-gv__when{display:flex;flex-wrap:wrap;align-items:center;gap:8px;align-self:start}
@media (min-width:600px){.cbs-gv__when{flex-direction:column;align-items:flex-start}}
.cbs-gv__ver{font-family:var(--f);font-size:.9375rem;font-weight:500;color:var(--ink);letter-spacing:-.01em}
.cbs-gv__lvl{font-family:var(--f);font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:var(--r-xs);box-shadow:inset 0 0 0 1px var(--line-3);color:var(--muted)}
.cbs-gv__item--major .cbs-gv__lvl{background:var(--ink);color:#fff;box-shadow:none}
.cbs-gv__item--minor .cbs-gv__lvl{box-shadow:inset 0 0 0 1px var(--blue-line);color:var(--blue-d)}
.cbs-gv__bell{display:none;align-items:center;gap:6px;font-family:var(--f);font-size:.625rem;color:var(--blue)}
.cbs-gv__bell::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
.cbs-gv__bell::after{content:"notifies you"}
.cbs-gv__item.is-watched .cbs-gv__bell{display:inline-flex}
.cbs-gv__date{font-family:var(--f);font-size:.6875rem;color:var(--faint);margin-bottom:6px}
.is-rc .cbs-gv__date{color:var(--blue)}
.cbs-gv__h{font-size:var(--t-h3);letter-spacing:-.012em;line-height:1.28;margin-bottom:12px}
.cbs-gv__notes{display:flex;flex-direction:column;gap:8px}
.cbs-gv__notes li{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}
.cbs-gv__notes li[hidden]{display:none}
.cbs-gv__notes code{font-size:.75rem;color:var(--txt);line-height:1.5;overflow-wrap:anywhere}
.cbs-gv__b{flex:none;min-width:84px;text-align:center;font-family:var(--f);font-size:.625rem;padding:3px 6px;border-radius:var(--r-xs);background:var(--paper-3);color:var(--txt)}
.cbs-gv__b--added{background:var(--blue-wash);color:var(--blue-d)}
.cbs-gv__b--deprecated{background:none;box-shadow:inset 0 0 0 1px var(--line-3);color:var(--muted);text-decoration:line-through;text-decoration-color:var(--faint)}
.cbs-gv__b--breaking{background:var(--ink);color:#fff}
.cbs-gv__empty{padding:24px 0;font-size:var(--t-sm);color:var(--muted)}

/* release candidate progress */
.cbs-gv__item.is-rc{padding:22px 18px;margin:12px 0 0;border-radius:var(--r-lg);background:var(--paper-2);border-bottom:0}
.cbs-gv__steps{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.cbs-gv__steps li{position:relative;display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;border-radius:var(--r-pill);font-size:.6875rem;font-weight:500;color:var(--faint);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);transition:color .3s,box-shadow .3s,background .3s}
.cbs-gv__steps li::before{content:"";width:8px;height:8px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--ghost)}
.cbs-gv__steps li.is-done{color:var(--ink)}
.cbs-gv__steps li.is-done::before{background:var(--blue);box-shadow:none}
.cbs-gv__steps li.is-now{color:var(--blue-d);box-shadow:inset 0 0 0 1.5px var(--blue)}
.cbs-gv__steps li.is-now::before{box-shadow:inset 0 0 0 2px var(--blue)}
.is-live .cbs-gv__steps li.is-now::before{animation:cbs-gv-pulse 1.2s var(--e) infinite}
@keyframes cbs-gv-pulse{50%{transform:scale(.6)}}
@media (max-width:599px){.cbs-gv__watch{border-radius:var(--r);padding:6px}.cbs-gv__watch legend{float:none;width:100%;padding:4px 8px 6px}.cbs-gv__b{min-width:0}}
@media (prefers-reduced-motion:reduce){.is-live .cbs-gv__steps li.is-now::before{animation:none}}
@media (min-width:1024px) and (min-height:860px){.cbs-gv__side{position:sticky;top:112px}}
@media (max-width:599px){.cbs-gv__perm table{min-width:0}.cbs-gv__perm th,.cbs-gv__perm td{padding:10px 4px}.cbs-gv__perm th:first-child{padding-left:14px}.cbs-gv__perm td:last-child{padding-right:12px}.cbs-gv__perm thead th{font-size:.625rem}.cbs-gv__p{font-size:.5625rem;padding:3px 5px}.cbs-gv__perm tbody th span{font-size:.625rem;line-height:1.35}}
