.g-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.g-tab { min-height: 44px; padding: 0 16px; border: 1px solid var(--control); border-radius: 10px; background: var(--surface); color: var(--ink); font: inherit; font-size: .9375rem; font-weight: 700; cursor: pointer; }
.g-tab[aria-pressed="true"] { border-color: var(--ink); background: var(--ink); color: var(--on-ink); }
.g-issue { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; align-items: center; width: 100%; padding: 12px 4px; border: 0; background: transparent; color: var(--ink); font: inherit; text-align: left; cursor: pointer; }
.g-issue:hover { background: var(--paper-2); }
.g-issue b { font-weight: 700; }
.g-num { color: var(--ink-2); font-size: var(--t-s); font-weight: 700; margin-right: 6px; }
.g-issue .d-muted { grid-column: 1 / -1; }
.g-tl { display: grid; gap: 10px; padding-left: 14px; border-left: 2px solid var(--line); }
.g-tl-i { display: grid; gap: 2px; }
.g-tl-i p { font-size: .9375rem; line-height: 1.5; }
.g-diff { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.g-diff-h { padding: 8px 12px; background: var(--paper-2); font-weight: 700; font-size: var(--t-s); }
.g-ln { display: grid; grid-template-columns: 34px 34px 22px minmax(0, 1fr) auto; align-items: center; gap: 4px; border-top: 1px solid var(--line); font-family: ui-monospace, Menlo, Consolas, var(--font), monospace; font-size: .875rem; }
.g-ln > span { padding: 6px 2px; }
.g-ln .g-n { color: var(--ink-2); text-align: right; }
.g-ln .g-code { white-space: pre-wrap; overflow-wrap: anywhere; }
.g-ln.is-add { background: var(--sun-soft); }
.g-ln.is-del { background: var(--paper-2); color: var(--err); }
.g-ln .d-btn { font-family: var(--font); }
.g-cmt { padding: 10px 12px; border-top: 1px solid var(--line); background: var(--surface); display: grid; gap: 8px; }
.g-cmt-n { font-size: .9375rem; line-height: 1.5; }
.g-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.g-pill { display: inline-flex; align-items: center; padding: 2px 10px; border-radius: 999px; font-size: var(--t-s); font-weight: 700; border: 1px solid var(--line); }
.g-pill.is-open { border-color: var(--ok); color: var(--ok); }
.g-pill.is-closed { border-color: var(--made); color: var(--made); }
@media (max-width: 480px) { .g-ln { grid-template-columns: 28px 28px 18px minmax(0, 1fr); } .g-ln .d-btn { grid-column: 1 / -1; margin: 0 8px 6px; } }
.d-app .d-card, .d-app .d-stack, .d-app .d-row > * { min-width: 0; }
.g-done { padding: 8px 12px; border-radius: 10px; background: var(--sun-soft); font-size: .9375rem; font-weight: 650; line-height: 1.5; overflow-wrap: anywhere; }
.d-card-t, .g-tl-i p { overflow-wrap: anywhere; }
