        /* ---- v6 ---- */
        .stabs { display: flex; gap: 4px; border-bottom: 1px solid #30363d; overflow-x: auto; scrollbar-width: none; }
        .stab { flex-shrink: 0; white-space: nowrap; padding: 10px 11px; font-size: 13px; font-weight: 600; color: #8b949e; border-bottom: 2px solid transparent; margin-bottom: -1px; }
        .stab.active { color: #e6edf3; border-bottom-color: #58a6ff; }
        #branchBtn.gold { border-color: #9e6a03; color: #e3b341; background: rgba(227,179,65,.08); }
        .star-gold svg { fill: #e3b341; stroke: #e3b341; }
        .sheet-ov { position: fixed; inset: 0; z-index: 1100; background: rgba(0,0,0,.55); display: none; align-items: flex-end; }
        .sheet-ov.open { display: flex; }
        .sheet { width: 100%; max-height: 75vh; background: #161b22; border-top: 1px solid #30363d; border-radius: 16px 16px 0 0; display: flex; flex-direction: column; padding-bottom: env(safe-area-inset-bottom); }
        .sheet-head { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; font-weight: 700; color: #e6edf3; border-bottom: 1px solid #30363d; }
        .sheet-list { overflow-y: auto; padding: 8px 12px; display: flex; flex-direction: column; gap: 6px; min-height: 0; }
        .sheet-foot { padding: 12px; border-top: 1px solid #30363d; }
        .bs-row { display: flex; align-items: stretch; gap: 6px; flex-shrink: 0; }
        .bs-main { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-radius: 10px; border: 1px solid #30363d; background: #0d1117; color: #c9d1d9; font: 600 13px ui-monospace, SFMono-Regular, Menlo, monospace; text-align: left; }
        .bs-row.act .bs-main { border-color: #58a6ff; }
        .bs-row.gold .bs-main { color: #e3b341; border-color: #9e6a03; background: rgba(227,179,65,.08); }
        .bs-star { fill: #e3b341; stroke: #e3b341; }
        .bs-tag { margin-left: auto; font-size: 10px; font-weight: 700; text-transform: uppercase; padding: 1px 6px; border-radius: 999px; background: rgba(227,179,65,.18); color: #e3b341; }
        .bs-check { color: #58a6ff; flex-shrink: 0; }
        .ver-strip { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; -webkit-overflow-scrolling: touch; }
        .ver-chip { flex: 0 0 auto; min-width: 96px; max-width: 150px; text-align: left; padding: 8px 10px; border-radius: 10px; background: #161b22; border: 1px solid #30363d; color: #c9d1d9; }
        .ver-chip.sel { border-color: #58a6ff; background: #1f3a66; }
        .ver-chip b { display: flex; align-items: center; gap: 6px; font-size: 13px; color: #e6edf3; }
        .ver-latest { font-size: 9px; font-weight: 700; text-transform: uppercase; padding: 0 5px; border-radius: 999px; background: #238636; color: #fff; }
        .ver-chip small { display: block; font-size: 10px; color: #8b949e; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .diff { font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; border: 1px solid #30363d; border-radius: 10px; overflow-x: auto; background: #0d1117; }
        .drow { display: flex; min-width: 100%; width: max-content; }
        .drow .ln { flex: 0 0 38px; text-align: right; padding: 0 6px; color: #6e7681; user-select: none; background: rgba(110,118,129,.08); }
        .drow .sg { flex: 0 0 16px; text-align: center; color: #8b949e; user-select: none; }
        .drow code { white-space: pre; padding-right: 12px; color: #c9d1d9; }
        .drow.add { background: rgba(46,160,67,.18); } .drow.add .sg { color: #3fb950; }
        .drow.del { background: rgba(248,81,73,.18); } .drow.del .sg { color: #f85149; }
        .dfold { display: block; width: 100%; text-align: center; padding: 6px; font-size: 11px; color: #58a6ff; background: #161b22; border-top: 1px solid #21262d; border-bottom: 1px solid #21262d; }
        .ren-btn { margin-left: 8px; padding: 3px; color: #8b949e; border-radius: 6px; display: inline-flex; }
        .ren-btn:active { background: #30363d; color: #fff; }
        .cmd-text { white-space: pre-wrap; word-break: break-word; }
        /* ---- v7: in-app dialogs (no browser "This page says" boxes) ---- */
        .dlg-ov { position: fixed; inset: 0; z-index: 1300; background: rgba(0,0,0,.62); display: none; align-items: center; justify-content: center; padding: 20px; }
        .dlg-ov.open { display: flex; }
        .dlg { width: 100%; max-width: 380px; max-height: 90vh; overflow-y: auto; background: #161b22; border: 1px solid #30363d; border-radius: 16px; padding: 18px; box-shadow: 0 24px 70px rgba(0,0,0,.65); animation: dlgIn .14s ease-out; }
        @keyframes dlgIn { from { transform: translateY(8px) scale(.98); opacity: 0; } to { transform: none; opacity: 1; } }
        .dlg-title { font-weight: 700; font-size: 16px; color: #e6edf3; margin-bottom: 6px; }
        .dlg-msg { font-size: 13px; color: #9da7b3; white-space: pre-line; word-break: break-word; line-height: 1.55; }
        .dlg-btns { display: flex; gap: 8px; margin-top: 16px; }
        .dlg-btn { flex: 1; padding: 11px 8px; border-radius: 10px; font-weight: 700; font-size: 13px; border: 1px solid #30363d; background: #21262d; color: #c9d1d9; }
        .dlg-btn:active { filter: brightness(1.2); }
        .dlg-btn.ok { background: #1f6feb; border-color: #388bfd; color: #fff; }
        .dlg-btn.danger { background: #da3633; border-color: #ff7b72; color: #fff; }
