dsh-github-flow 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.en.md +98 -15
  2. package/README.md +101 -15
  3. package/docs/UPGRADE-NOTES.md +12 -11
  4. package/docs/architecture.md +56 -13
  5. package/lib/api/route-helpers.d.ts +19 -0
  6. package/lib/api/route-helpers.js +54 -0
  7. package/lib/api/routes-actions.js +75 -1
  8. package/lib/api/routes-lifecycle.js +8 -1
  9. package/lib/api/routes-overview.d.ts +26 -0
  10. package/lib/api/routes-overview.js +276 -34
  11. package/lib/api/routes-proxy.js +8 -1
  12. package/lib/api/routes.d.ts +11 -1
  13. package/lib/api/routes.js +15 -2
  14. package/lib/cache.d.ts +0 -21
  15. package/lib/cache.js +0 -37
  16. package/lib/client.d.ts +2 -1
  17. package/lib/client.js +1585 -429
  18. package/lib/destructive.d.ts +59 -0
  19. package/lib/destructive.js +285 -0
  20. package/lib/executor/args-guard.d.ts +17 -0
  21. package/lib/executor/args-guard.js +23 -0
  22. package/lib/executor/failure-anchors.d.ts +52 -0
  23. package/lib/executor/failure-anchors.js +116 -0
  24. package/lib/executor/pr-review.d.ts +95 -0
  25. package/lib/executor/pr-review.js +175 -0
  26. package/lib/executor/run-log.d.ts +36 -0
  27. package/lib/executor/run-log.js +78 -0
  28. package/lib/executor.d.ts +156 -3
  29. package/lib/executor.js +594 -28
  30. package/lib/github-service.d.ts +1 -1
  31. package/lib/main.d.ts +92 -18
  32. package/lib/main.js +186 -95
  33. package/lib/renderers/common.d.ts +0 -3
  34. package/lib/renderers/common.js +8 -44
  35. package/lib/renderers/markdown.d.ts +1 -0
  36. package/lib/renderers/markdown.js +1 -0
  37. package/lib/renderers/pr.js +26 -1
  38. package/lib/renderers/task.d.ts +9 -0
  39. package/lib/renderers/task.js +120 -0
  40. package/lib/review-rules.d.ts +60 -0
  41. package/lib/review-rules.js +204 -0
  42. package/lib/shared/state-badges.d.ts +42 -0
  43. package/lib/shared/state-badges.js +102 -0
  44. package/lib/task-primitives.d.ts +109 -0
  45. package/lib/task-primitives.js +194 -0
  46. package/lib/tool-tiers.d.ts +57 -0
  47. package/lib/tool-tiers.js +168 -0
  48. package/lib/tools/agent-task.js +4 -4
  49. package/lib/tools/api.js +18 -6
  50. package/lib/tools/cache.js +42 -40
  51. package/lib/tools/codespace.js +4 -12
  52. package/lib/tools/discussion.js +4 -4
  53. package/lib/tools/gist.d.ts +1 -39
  54. package/lib/tools/gist.js +4 -14
  55. package/lib/tools/help.js +52 -13
  56. package/lib/tools/issue.js +16 -28
  57. package/lib/tools/label.js +4 -15
  58. package/lib/tools/pr.d.ts +47 -0
  59. package/lib/tools/pr.js +170 -33
  60. package/lib/tools/project.js +4 -13
  61. package/lib/tools/release.js +11 -22
  62. package/lib/tools/repo.js +4 -4
  63. package/lib/tools/ruleset.js +9 -6
  64. package/lib/tools/run.js +76 -24
  65. package/lib/tools/secret.js +11 -17
  66. package/lib/tools/skill.js +18 -22
  67. package/lib/tools/status.js +4 -4
  68. package/lib/tools/task.d.ts +219 -0
  69. package/lib/tools/task.js +457 -0
  70. package/lib/types.d.ts +183 -1
  71. package/lib/ui/help-modal.d.ts +1 -1
  72. package/lib/ui/help-modal.js +20 -10
  73. package/lib/ui/issue-modal.js +7 -3
  74. package/lib/ui/pr-modal.js +50 -11
  75. package/lib/ui/run-modal.d.ts +26 -0
  76. package/lib/ui/run-modal.js +486 -0
  77. package/lib/ui/styles.d.ts +1 -1
  78. package/lib/ui/styles.js +370 -44
  79. package/lib/ui/sync-settings-modal.js +1 -1
  80. package/lib/ui/workspace-panel.js +78 -23
  81. package/lib/version.d.ts +1 -1
  82. package/lib/version.js +1 -1
  83. package/package.json +9 -2
@@ -2,5 +2,5 @@
2
2
  * DSH GitHub Flow - 主题自适应样式系统 (Light / Dark 动态联动)
3
3
  * 遵循 DSH 原生 DSW (DeepSeek Web) 设计语言规范
4
4
  */
5
- export declare const GITHUB_PANEL_CSS = "\n/* 1. \u4FA7\u8FB9\u680F\u56FE\u6807\u4E0E\u5916\u58F3 */\n.dsh-github-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n cursor: pointer;\n color: var(--dsw-alias-label-secondary, #656d76);\n transition: color 0.15s ease;\n}\n.dsh-github-icon:hover {\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-icon-inner {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: 7px;\n background: transparent;\n color: inherit;\n border: 1px solid transparent;\n transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);\n}\n.dsh-github-icon-inner.active {\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.08));\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-border-l2, rgba(9, 105, 218, 0.2));\n}\n\nbody[data-ds-dark-theme] .dsh-github-icon {\n color: var(--dsw-alias-label-secondary, #9ca3af);\n}\nbody[data-ds-dark-theme] .dsh-github-icon:hover {\n color: var(--dsw-alias-label-primary, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-icon-inner.active {\n background: linear-gradient(135deg, rgba(46, 160, 67, 0.3) 0%, rgba(31, 111, 235, 0.45) 100%);\n color: #ffffff;\n box-shadow: 0 0 12px rgba(31, 111, 235, 0.4);\n border-color: rgba(88, 166, 255, 0.45);\n}\n\n/* 2. Octocat \u79D1\u6280\u52CB\u7AE0 Badge */\n.dsh-octocat-badge {\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, #1f6feb 0%, #0969da 60%, #8957e5 100%);\n box-shadow: 0 2px 6px rgba(9, 105, 218, 0.25);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-octocat-badge {\n background: linear-gradient(135deg, #2ea043 0%, #1f6feb 60%, #8957e5 100%);\n box-shadow: 0 2px 8px rgba(31, 111, 235, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n\n/* 3. \u5BB9\u5668\u89C6\u56FE\uFF08\u4E3B\u9762\u677F\u4E0E\u53F3\u4FA7\u62BD\u5C49\u680F\uFF09 */\n.dsh-github-panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 24px 32px;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n\n.dsh-github-rightbar-container {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px 18px;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n\nbody[data-ds-dark-theme] .dsh-github-panel,\nbody[data-ds-dark-theme] .dsh-github-rightbar-container {\n background: var(--dsw-alias-bg-base, #151517);\n color: var(--dsw-alias-label-primary, #ececec);\n}\n\n/* 4. \u5934\u90E8\u533A\u57DF */\n.dsh-github-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 20px;\n padding-bottom: 12px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n}\nbody[data-ds-dark-theme] .dsh-github-header {\n border-bottom-color: var(--dsw-alias-border-l1, #2c2c2e);\n}\n.dsh-github-title {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n.dsh-github-title h2 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-title h2 {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 5. \u5237\u65B0\u6309\u94AE */\n.dsh-github-refresh-btn {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 5px 12px;\n font-size: 12px;\n font-weight: 500;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-refresh-btn:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-border-l3, #d0d7de);\n}\n.dsh-github-refresh-btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\nbody[data-ds-dark-theme] .dsh-github-refresh-btn {\n border-color: var(--dsw-alias-border-l1, #38383c);\n background: var(--dsw-alias-bg-layer-2, #242528);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-refresh-btn:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover, #2f3034);\n border-color: rgba(255, 255, 255, 0.25);\n}\n\n/* 6. \u6982\u89C8\u5361\u7247\u4E0E\u7F51\u683C */\n.dsh-github-overview-cards {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 14px;\n margin-bottom: 20px;\n}\n.dsh-github-card {\n padding: 14px 16px;\n border-radius: 8px;\n border: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n background: var(--dsw-alias-bg-layer-1, #fcfcfd);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n margin-bottom: 12px;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-card {\n border-color: var(--dsw-alias-border-l1, #303034);\n background: var(--dsw-alias-bg-layer-2, #212124);\n box-shadow: none;\n}\n.dsh-github-card-title {\n font-size: 11px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n margin-bottom: 6px;\n font-weight: 500;\n}\nbody[data-ds-dark-theme] .dsh-github-card-title {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n.dsh-github-card-value {\n font-size: 15px;\n font-weight: 600;\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-card-value {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-card-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n margin-top: 4px;\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-card-desc {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-card-subtext {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #8c959f);\n margin-top: 6px;\n}\nbody[data-ds-dark-theme] .dsh-github-card-subtext {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n\n/* fork \u8840\u7F18\u884C\uFF1A\u8BF4\u660E\u300C\u8FD9\u662F\u8C01\u7684\u4E0A\u6E38\u300D\uFF0C\u4E0A\u6E38\u540D\u53EF\u70B9\u51FB */\n.dsh-github-fork-line {\n font-size: 12px;\n margin-top: 4px;\n color: var(--dsw-alias-label-secondary, #656d76);\n display: flex;\n align-items: center;\n gap: 4px;\n flex-wrap: wrap;\n}\nbody[data-ds-dark-theme] .dsh-github-fork-line {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-fork-line a {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 600;\n}\n.dsh-github-fork-line a:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-fork-line a {\n color: #58a6ff;\n}\n\n/* 7. \u5FBD\u7AE0\uFF08Badges\uFF09 */\n.dsh-github-badge {\n display: inline-flex;\n align-items: center;\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 12px;\n font-weight: 500;\n line-height: 16px;\n}\n.dsh-badge-green {\n background: rgba(46, 160, 67, 0.12);\n color: #1a7f37;\n border: 1px solid rgba(46, 160, 67, 0.2);\n}\n.dsh-badge-red {\n background: rgba(207, 34, 46, 0.12);\n color: #cf222e;\n border: 1px solid rgba(207, 34, 46, 0.2);\n}\n.dsh-badge-yellow {\n background: rgba(154, 103, 0, 0.12);\n color: #9a6700;\n border: 1px solid rgba(154, 103, 0, 0.2);\n}\n\n/*\n * \u53EA\u8BFB\u5FBD\u7AE0\uFF1A\u4E0E yellow \u540C\u8272\u7CFB\u4F46\u63CF\u8FB9\u66F4\u660E\u663E\uFF0C\u56E0\u4E3A\u300C\u4F60\u6539\u4E0D\u4E86\u300D\u662F\u9700\u8981\u88AB\u770B\u89C1\u7684\u7EA6\u675F\u3002\n * \u72EC\u7ACB\u7C7B\u800C\u975E\u590D\u7528 yellow\uFF0C\u662F\u4E3A\u4E86\u5C06\u6765\u8C03\u6574\u53EA\u8BFB\u8BED\u4E49\u7684\u89C6\u89C9\u5F3A\u5EA6\u65F6\u4E0D\u7275\u52A8\u5176\u4ED6\u9EC4\u8272\u5FBD\u7AE0\u3002\n */\n.dsh-badge-readonly {\n background: rgba(154, 103, 0, 0.12);\n color: #9a6700;\n border: 1px solid rgba(154, 103, 0, 0.35);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-badge-readonly {\n background: rgba(210, 153, 34, 0.18);\n color: #d29922;\n border-color: rgba(210, 153, 34, 0.4);\n}\n.dsh-badge-blue {\n background: rgba(9, 105, 218, 0.12);\n color: #0969da;\n border: 1px solid rgba(9, 105, 218, 0.2);\n}\n.dsh-badge-purple {\n background: rgba(137, 87, 229, 0.12);\n color: #8250df;\n border: 1px solid rgba(137, 87, 229, 0.2);\n}\nbody[data-ds-dark-theme] .dsh-badge-green {\n background: rgba(46, 160, 67, 0.22);\n color: #3fb950;\n border-color: rgba(46, 160, 67, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-red {\n background: rgba(248, 81, 73, 0.22);\n color: #f85149;\n border-color: rgba(248, 81, 73, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-yellow {\n background: rgba(210, 153, 34, 0.22);\n color: #d29922;\n border-color: rgba(210, 153, 34, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-blue {\n background: rgba(56, 139, 253, 0.22);\n color: #58a6ff;\n border-color: rgba(56, 139, 253, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-purple {\n background: rgba(163, 113, 247, 0.22);\n color: #bc8cff;\n border-color: rgba(163, 113, 247, 0.3);\n}\n\n/* \u63D2\u4EF6\u8EAB\u4EFD\u5FBD\u6807\uFF1A\u6807\u8BC6\u754C\u9762\u7531\u7B2C\u4E09\u65B9\u63D2\u4EF6 dsh-github-flow \u63D0\u4F9B\uFF08\u975E DSH/GitHub \u5B98\u65B9\uFF09 */\n.dsh-github-plugin-badge {\n display: inline-flex;\n align-items: center;\n font-size: 10px;\n font-weight: 500;\n padding: 1px 7px;\n border-radius: 10px;\n line-height: 14px;\n vertical-align: middle;\n margin-left: 8px;\n text-decoration: none !important;\n background: rgba(125, 133, 144, 0.12);\n color: #656d76;\n border: 1px solid rgba(125, 133, 144, 0.25);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-plugin-badge:hover {\n background: rgba(125, 133, 144, 0.2);\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-plugin-badge {\n background: rgba(139, 148, 158, 0.18);\n color: #8b949e;\n border-color: rgba(139, 148, 158, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-github-plugin-badge:hover {\n background: rgba(139, 148, 158, 0.28);\n color: #f0f6fc;\n}\n\n/* 7.5. \u5206\u7C7B\u7B5B\u9009\u836F\u4E38\u680F */\n.dsh-github-pills {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n margin-bottom: 12px;\n}\n.dsh-github-pill-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 14px;\n font-size: 11px;\n font-weight: 500;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-pill-btn:hover {\n color: var(--dsw-alias-label-primary, #1f2328);\n border-color: var(--dsw-alias-border-l3, #b0b8c1);\n}\n.dsh-github-pill-btn.active {\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.1));\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn {\n background: var(--dsw-alias-bg-layer-2, #21262d);\n color: var(--dsw-alias-label-secondary, #8b949e);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn:hover {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n border-color: #8b949e;\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn.active {\n background: rgba(56, 139, 253, 0.18);\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* 8. \u5FEB\u6377\u64CD\u4F5C\u7F51\u683C */\n.dsh-github-quick-actions {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n margin-bottom: 16px;\n}\n.dsh-github-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-action-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-link, #0969da);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-action-btn {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #28282b);\n color: var(--dsw-alias-label-primary, #fff);\n}\nbody[data-ds-dark-theme] .dsh-github-action-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n border-color: #58a6ff;\n color: #58a6ff;\n}\n\n/* \u7EC4\u5408\u5F0F\u5FEB\u6377\u64CD\u4F5C\u6309\u94AE (AI \u667A\u80FD\u88C5\u586B\u4E3B\u64CD\u4F5C + \u5B98\u65B9\u5916\u94FE\u76F4\u8FBE) */\n.dsh-github-split-btn {\n display: flex;\n align-items: stretch;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n overflow: hidden;\n transition: all 0.15s ease;\n}\n.dsh-github-split-btn:hover {\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-btn {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #28282b);\n}\nbody[data-ds-dark-theme] .dsh-github-split-btn:hover {\n border-color: #58a6ff;\n}\n.dsh-github-split-main {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 5px;\n padding: 8px 8px;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n white-space: nowrap;\n}\n.dsh-github-split-main:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-main {\n color: var(--dsw-alias-label-primary, #fff);\n}\nbody[data-ds-dark-theme] .dsh-github-split-main:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n color: #58a6ff;\n}\n.dsh-github-split-link {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 8px;\n border-left: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: transparent;\n color: var(--dsw-alias-label-tertiary, #656d76);\n font-size: 12px;\n font-weight: bold;\n text-decoration: none !important;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-split-link:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-link {\n border-left-color: var(--dsw-alias-border-l1, #444);\n color: var(--dsw-alias-label-secondary, #9ca3af);\n}\nbody[data-ds-dark-theme] .dsh-github-split-link:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n color: #58a6ff;\n}\n\n/* 9. \u6A21\u5757\u5206\u533A\u4E0E\u5217\u8868 */\n.dsh-github-section {\n margin-bottom: 20px;\n}\n.dsh-github-section-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n.dsh-github-section-header h3 {\n margin: 0;\n font-size: 13px;\n font-weight: 600;\n color: var(--dsw-alias-label-secondary, #656d76);\n}\nbody[data-ds-dark-theme] .dsh-github-section-header h3 {\n color: var(--dsw-alias-label-secondary, #ccc);\n}\n.dsh-github-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.dsh-github-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n padding: 10px 14px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n background: var(--dsw-alias-bg-layer-1, #fcfcfd);\n transition: border-color 0.15s ease, background 0.15s ease;\n}\n.dsh-github-item:hover {\n border-color: var(--dsw-alias-border-l3, #d0d7de);\n background: var(--dsw-alias-interactive-bg-hover, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-item {\n border-color: var(--dsw-alias-border-l1, #333336);\n background: var(--dsw-alias-bg-layer-2, #252528);\n}\nbody[data-ds-dark-theme] .dsh-github-item:hover {\n border-color: var(--dsw-alias-border-l2, #555);\n background: var(--dsw-alias-interactive-bg-hover, #2c2c30);\n}\n.dsh-github-item-title {\n font-size: 13px;\n font-weight: 500;\n color: var(--dsw-alias-label-primary, #1f2328);\n text-decoration: none;\n transition: color 0.15s ease;\n}\n.dsh-github-item-title:hover {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-item-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-item-title:hover {\n color: #58a6ff;\n}\n.dsh-github-item-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-item-desc {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-item-meta {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-item-meta {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n\n/* 10. \u5C0F\u6309\u94AE\u6837\u5F0F\uFF08\u5728 GitHub \u6253\u5F00\u7B49\uFF09 */\n.dsh-github-btn-sm {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n font-weight: 500;\n padding: 4px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n text-decoration: none !important;\n transition: all 0.15s ease;\n}\n.dsh-github-btn-sm:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-border-l3, #b0b8c1);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #26272b);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm:hover {\n background: var(--dsw-alias-interactive-bg-hover, #33343a);\n border-color: rgba(255, 255, 255, 0.25);\n color: #58a6ff;\n}\n\n/* 11. \u7A7A\u72B6\u6001 */\n.dsh-github-empty {\n padding: 24px;\n text-align: center;\n font-size: 12px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n border: 1px dashed var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 8px;\n background: rgba(0, 0, 0, 0.01);\n}\nbody[data-ds-dark-theme] .dsh-github-empty {\n color: var(--dsw-alias-label-tertiary, #888);\n border-color: var(--dsw-alias-border-l1, #38383c);\n background: rgba(255, 255, 255, 0.01);\n}\n\n/* 12. Tabs \u5BFC\u822A\u680F */\n.dsh-github-tabs {\n display: flex;\n gap: 8px;\n margin-bottom: 18px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n padding-bottom: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-tabs {\n border-bottom-color: var(--dsw-alias-border-l1, #303034);\n}\n.dsh-github-tab-btn {\n padding: 6px 14px;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-tab-btn:hover {\n color: var(--dsw-alias-label-primary, #1f2328);\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\n.dsh-github-tab-btn.active {\n color: var(--dsw-alias-link, #0969da);\n background: rgba(9, 105, 218, 0.1);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn:hover {\n color: var(--dsw-alias-label-primary, #fff);\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.06));\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn.active {\n color: #58a6ff;\n background: rgba(88, 166, 255, 0.15);\n}\n\n/* 13. \u641C\u7D22\u8F93\u5165\u6846 */\n.dsh-github-search-input {\n width: 100%;\n max-width: 320px;\n padding: 6px 12px;\n font-size: 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n outline: none;\n margin-bottom: 14px;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-search-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\nbody[data-ds-dark-theme] .dsh-github-search-input {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #212124);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-search-input:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\n\n/* 14. \u5DE5\u4F5C\u533A\u77E9\u9635\u6761\u76EE\u4E13\u5C5E\u7C7B */\n.dsh-github-workspace-card {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n.dsh-github-ws-title {\n font-size: 14px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-ws-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-ws-path {\n font-size: 12px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n font-family: var(--ds-font-family-code, monospace);\n}\nbody[data-ds-dark-theme] .dsh-github-ws-path {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n.dsh-github-ws-repo-link {\n color: var(--dsw-alias-link, #0969da);\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n}\nbody[data-ds-dark-theme] .dsh-github-ws-repo-link {\n color: #58a6ff;\n}\n.dsh-github-repo-link {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 600;\n}\n.dsh-github-repo-link:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-link {\n color: #58a6ff;\n}\n.dsh-github-subheading {\n font-size: 14px;\n font-weight: 600;\n margin: 0 0 10px 0;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-subheading {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 15. \u5C31\u7EEA\u5F15\u5BFC\u6A2A\u5E45 (Setup Guide Banner) */\n.dsh-github-guide-card {\n padding: 16px;\n border-radius: 8px;\n margin-bottom: 16px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\n.dsh-github-guide-card.warning {\n border-color: rgba(210, 153, 34, 0.4);\n background: rgba(210, 153, 34, 0.08);\n}\n.dsh-github-guide-card.danger {\n border-color: rgba(248, 81, 73, 0.4);\n background: rgba(248, 81, 73, 0.08);\n}\n.dsh-github-guide-header {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 15px;\n font-weight: 600;\n margin-bottom: 6px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-guide-header {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-guide-desc {\n font-size: 13px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.5;\n margin-bottom: 12px;\n}\nbody[data-ds-dark-theme] .dsh-github-guide-desc {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n.dsh-github-cmd-box {\n display: flex;\n align-items: center;\n justify-content: space-between;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 6px;\n padding: 8px 12px;\n font-family: var(--ds-font-family-code, monospace);\n font-size: 13px;\n color: var(--dsw-alias-label-primary, #1f2328);\n margin-bottom: 12px;\n}\nbody[data-ds-dark-theme] .dsh-github-cmd-box {\n background: var(--dsw-alias-bg-layer-2, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-copy-btn {\n padding: 4px 10px;\n font-size: 12px;\n border-radius: 4px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n white-space: nowrap;\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-copy-btn {\n background: var(--dsw-alias-bg-layer-2, #21262d);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #c9d1d9);\n}\n.dsh-github-copy-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef1);\n}\nbody[data-ds-dark-theme] .dsh-github-copy-btn:hover {\n background: #30363d;\n}\n.dsh-github-copy-btn.copied {\n color: #2da44e !important;\n border-color: #2da44e !important;\n background: rgba(45, 164, 78, 0.15) !important;\n}\n.dsh-github-steps-list {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.6;\n margin: 0 0 12px 18px;\n padding: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-steps-list {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n.dsh-github-guide-actions {\n display: flex;\n gap: 8px;\n flex-wrap: wrap;\n}\n.dsh-github-guide-tip {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #8c8c8c);\n margin-top: 10px;\n line-height: 1.4;\n}\n\n/* 16. \u8BBE\u7F6E\u5F39\u7A97 (Settings Modal)\uFF1A\u5DE6\u4FA7\u5206\u533A\u5BFC\u822A + \u53F3\u4FA7\u5185\u5BB9\u533A */\n.dsh-github-modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.45);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 99999;\n backdrop-filter: blur(2px);\n}\n.dsh-github-modal-dialog {\n width: 92%;\n max-width: 640px;\n max-height: 86vh;\n display: flex;\n flex-direction: column;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 12px;\n box-shadow: 0 16px 32px rgba(0, 0, 0, 0.18);\n padding: 0;\n box-sizing: border-box;\n overflow: hidden;\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\nbody[data-ds-dark-theme] .dsh-github-modal-dialog {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45);\n}\n.dsh-github-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 18px 22px 14px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-modal-body {\n display: flex;\n min-height: 0;\n flex: 1;\n}\n.dsh-github-settings-nav {\n flex-shrink: 0;\n width: 148px;\n padding: 14px 10px;\n border-right: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n flex-direction: column;\n gap: 4px;\n box-sizing: border-box;\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav {\n border-right-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-settings-nav-item {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 10px;\n border-radius: 6px;\n border: none;\n background: none;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n color: var(--dsw-alias-label-secondary, #656d76);\n transition: background 0.12s ease, color 0.12s ease;\n}\n.dsh-github-settings-nav-item:hover {\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-settings-nav-item.active {\n background: rgba(9, 105, 218, 0.1);\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav-item:hover {\n background: rgba(240, 246, 252, 0.06);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav-item.active {\n background: rgba(88, 166, 255, 0.15);\n color: #58a6ff;\n}\n.dsh-github-settings-content {\n flex: 1;\n min-width: 0;\n padding: 18px 22px 20px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n@media (max-width: 560px) {\n .dsh-github-modal-body {\n flex-direction: column;\n }\n .dsh-github-settings-nav {\n width: 100%;\n flex-direction: row;\n border-right: none;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7e0);\n overflow-x: auto;\n }\n body[data-ds-dark-theme] .dsh-github-settings-nav {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n }\n .dsh-github-settings-nav-item {\n white-space: nowrap;\n }\n}\n.dsh-github-modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 8px;\n padding: 14px 22px;\n border-top: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-modal-footer {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-radio-card {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n padding: 10px 12px;\n border-radius: 8px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n margin-bottom: 8px;\n cursor: pointer;\n transition: all 0.15s ease;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\n.dsh-github-radio-card:hover {\n border-color: var(--dsw-alias-link, #0969da);\n}\n.dsh-github-radio-card.active {\n border-color: var(--dsw-alias-link, #0969da);\n background: rgba(9, 105, 218, 0.08);\n}\nbody[data-ds-dark-theme] .dsh-github-radio-card {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-radio-card.active {\n border-color: #58a6ff;\n background: rgba(88, 166, 255, 0.12);\n}\n\n.dsh-github-select {\n width: 100%;\n padding: 8px 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 13px;\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n color-scheme: light;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-select:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\n.dsh-github-select option {\n background-color: #ffffff;\n color: #1f2328;\n padding: 6px 10px;\n}\nbody[data-ds-dark-theme] .dsh-github-select {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n color-scheme: dark;\n}\nbody[data-ds-dark-theme] .dsh-github-select:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\nbody[data-ds-dark-theme] .dsh-github-select option {\n background-color: #1e1e22;\n color: #f0f6fc;\n}\n\n.dsh-github-input {\n padding: 7px 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 13px;\n outline: none;\n box-sizing: border-box;\n color-scheme: light;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\n.dsh-github-input::placeholder {\n color: var(--dsw-alias-label-tertiary, #8c959f);\n}\nbody[data-ds-dark-theme] .dsh-github-input {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n color-scheme: dark;\n}\nbody[data-ds-dark-theme] .dsh-github-input:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\n\n.dsh-github-cache-info-box {\n padding: 10px 12px;\n border-radius: 6px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n margin-bottom: 20px;\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-cache-info-box {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n\n.dsh-github-about-star-box {\n padding: 12px 14px;\n border-radius: 8px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n}\nbody[data-ds-dark-theme] .dsh-github-about-star-box {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-primary-btn {\n padding: 5px 14px;\n font-weight: 600;\n white-space: nowrap;\n background: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n}\n.dsh-github-primary-btn:hover {\n background: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n opacity: 0.88;\n}\nbody[data-ds-dark-theme] .dsh-github-primary-btn {\n background: #58a6ff;\n border-color: #58a6ff;\n color: #0d1117;\n}\nbody[data-ds-dark-theme] .dsh-github-primary-btn:hover {\n background: #58a6ff;\n border-color: #58a6ff;\n color: #0d1117;\n opacity: 0.88;\n}\n\n.dsh-github-radio {\n accent-color: var(--dsw-alias-link, #0969da);\n cursor: pointer;\n margin-top: 3px;\n}\nbody[data-ds-dark-theme] .dsh-github-radio {\n accent-color: #58a6ff;\n}\n\n#dsh-github-commit-dialog {\n max-width: 600px;\n width: calc(100vw - 48px);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 12px;\n padding: 0;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n#dsh-github-commit-dialog::backdrop {\n background: rgba(0, 0, 0, 0.45);\n backdrop-filter: blur(2px);\n}\nbody[data-ds-dark-theme] #dsh-github-commit-dialog {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #ececec);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.5);\n}\n.dsh-github-commit-row {\n transition: background 0.15s ease;\n}\n.dsh-github-commit-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-commit-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.08));\n}\nbody[data-ds-dark-theme] .dsh-github-commit-pre {\n background: var(--dsw-alias-bg-base, #151517) !important;\n color: #ececec !important;\n border: 1px solid #30363d !important;\n}\n.dsh-github-dialog-close-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.08)) !important;\n opacity: 1 !important;\n}\n\n.dsh-github-branch-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 8px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 12px;\n border: 1px solid rgba(46, 160, 67, 0.4);\n background: rgba(46, 160, 67, 0.12);\n color: var(--dsw-alias-state-success, #2ea043);\n cursor: pointer;\n transition: all 0.15s ease;\n user-select: none;\n}\n.dsh-github-branch-btn:hover {\n background: rgba(46, 160, 67, 0.22);\n border-color: rgba(46, 160, 67, 0.6);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-btn {\n border-color: rgba(56, 139, 253, 0.4);\n background: rgba(56, 139, 253, 0.15);\n color: #58a6ff;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-btn:hover {\n background: rgba(56, 139, 253, 0.25);\n border-color: #58a6ff;\n}\n\n.dsh-github-branch-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 5px;\n width: 290px;\n max-height: 380px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 8px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-dropdown {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 8px 28px rgba(0, 0, 0, 0.5);\n}\n\n.dsh-github-branch-search {\n padding: 8px 10px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-search {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-branch-input {\n width: 100%;\n padding: 5px 8px;\n box-sizing: border-box;\n font-size: 11px;\n border-radius: 5px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n outline: none;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-input {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-base, #151517);\n color: #ececec;\n}\n.dsh-github-branch-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n}\n\n.dsh-github-branch-list {\n flex: 1;\n overflow-y: auto;\n max-height: 280px;\n padding: 4px 0;\n}\n.dsh-github-branch-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n font-size: 12px;\n cursor: pointer;\n transition: background 0.12s ease;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item {\n color: var(--dsw-alias-label-primary, #ececec);\n}\n.dsh-github-branch-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.dsh-github-branch-item.active {\n font-weight: 600;\n color: var(--dsw-alias-state-success, #1a7f37);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item.active {\n color: #3fb950;\n}\n\n/* 15. \u72EC\u7ACB\u6C89\u6D78\u5F0F\u6307\u5357\u5927\u7A97\u53E3 (Help Modal) \u53CC\u4E3B\u9898\u4F53\u7CFB */\n.dsh-github-help-dialog {\n width: 920px;\n max-width: 92vw;\n height: 85vh;\n max-height: 85vh;\n display: flex;\n flex-direction: column;\n border-radius: 12px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n box-shadow: 0 24px 64px rgba(0, 0, 0, 0.22);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n overflow: hidden;\n box-sizing: border-box;\n}\nbody[data-ds-dark-theme] .dsh-github-help-dialog {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n box-shadow: 0 24px 64px rgba(0, 0, 0, 0.65);\n}\n\n.dsh-github-help-header {\n padding: 16px 22px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-shrink: 0;\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-help-header {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-nav {\n display: flex;\n gap: 8px;\n padding: 10px 22px;\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.05));\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-nav {\n background: rgba(56, 139, 253, 0.08);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-tab-btn {\n padding: 6px 14px;\n font-size: 13px;\n font-weight: 500;\n border-radius: 6px;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n.dsh-github-help-tab-btn:hover {\n background: rgba(0, 0, 0, 0.05);\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn:hover {\n background: rgba(255, 255, 255, 0.08);\n color: #f0f6fc;\n}\n.dsh-github-help-tab-btn.active {\n font-weight: 600;\n background: var(--dsw-alias-link, #0969da);\n color: #ffffff !important;\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn.active {\n background: #1f6feb;\n border-color: #1f6feb;\n}\n\n.dsh-github-help-scroll-body {\n flex: 1;\n overflow-y: auto;\n padding: 22px;\n box-sizing: border-box;\n}\n.dsh-github-help-scroll-body::-webkit-scrollbar {\n width: 6px;\n}\n.dsh-github-help-scroll-body::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.15);\n border-radius: 3px;\n}\nbody[data-ds-dark-theme] .dsh-github-help-scroll-body::-webkit-scrollbar-thumb {\n background: #30363d;\n}\n\n.dsh-github-help-card {\n padding: 16px 18px;\n margin-bottom: 14px;\n border-radius: 8px;\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.04));\n border: 1px solid var(--dsw-alias-border-l2, rgba(9, 105, 218, 0.18));\n transition: border-color 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-help-card {\n background: rgba(56, 139, 253, 0.05);\n border-color: rgba(56, 139, 253, 0.18);\n}\n.dsh-github-help-card:hover {\n border-color: rgba(9, 105, 218, 0.35);\n}\nbody[data-ds-dark-theme] .dsh-github-help-card:hover {\n border-color: rgba(56, 139, 253, 0.4);\n}\n\n.dsh-github-prompt-box {\n padding: 10px 14px;\n margin-bottom: 8px;\n border-radius: 6px;\n background: #f6f8fa;\n border: 1px solid #d0d7de;\n font-family: ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, Consolas, monospace;\n font-size: 12px;\n line-height: 1.5;\n color: var(--dsw-alias-label-primary, #1f2328);\n word-break: break-all;\n}\nbody[data-ds-dark-theme] .dsh-github-prompt-box {\n background: #0d1117;\n border-color: #30363d;\n color: #79c0ff;\n}\n\n.dsh-github-help-step-badge {\n width: 28px;\n height: 28px;\n border-radius: 50%;\n background: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-weight: 700;\n font-size: 14px;\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-step-badge {\n background: #1f6feb;\n box-shadow: 0 0 10px rgba(31, 111, 235, 0.35);\n}\n\n.dsh-github-help-footer {\n padding: 12px 22px;\n border-top: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n justify-content: space-between;\n align-items: center;\n background: var(--dsw-alias-bg-base, #ffffff);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-footer {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-title {\n font-weight: 600;\n font-size: 14px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-help-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n.dsh-github-help-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.5;\n}\nbody[data-ds-dark-theme] .dsh-github-help-desc {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n\n/* 16. \u672A\u63D0\u4EA4\u6587\u4EF6\u6E05\u5355\u4EA4\u4E92\u4E0E Git Diff \u5BF9\u6BD4\u89C6\u56FE */\n.dsh-github-dirty-item {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 6px;\n border-radius: 6px;\n cursor: pointer;\n transition: background-color 0.15s ease;\n user-select: none;\n}\n.dsh-github-dirty-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-dirty-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.dsh-github-dirty-item:active {\n background: var(--dsw-alias-interactive-bg-active, rgba(0, 0, 0, 0.08));\n}\nbody[data-ds-dark-theme] .dsh-github-dirty-item:active {\n background: rgba(255, 255, 255, 0.12);\n}\n\n.dsh-github-inline-diff-view {\n animation: dsh-github-fade-in 0.15s ease-out;\n}\n@keyframes dsh-github-fade-in {\n from { opacity: 0; transform: translateY(2px); }\n to { opacity: 1; transform: translateY(0); }\n}\nbody[data-ds-dark-theme] .dsh-github-inline-diff-content {\n background-color: var(--dsw-alias-bg-layer-2, #1c2128) !important;\n border-color: var(--dsw-alias-border-l1, #30363d) !important;\n}\n\n/* 17. \u63D0\u4EA4\u8BE6\u60C5\u6587\u4EF6\u53D8\u66F4\u7EDF\u8BA1\u7ED3\u6784\u5316\u9AD8\u4EAE */\n.dsh-github-stat-list {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-stat-list {\n border-color: var(--dsw-alias-border-l1, #30363d) !important;\n background: var(--dsw-alias-bg-layer-2, #1c2128) !important;\n}\n\n.dsh-github-stat-row {\n transition: background-color 0.15s ease;\n}\n.dsh-github-stat-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.04));\n}\nbody[data-ds-dark-theme] .dsh-github-stat-row:hover {\n background: rgba(255, 255, 255, 0.06);\n}\n\n/* 18. \u53F3\u4FA7\u680F\u4E0A\u65B9\u5361\u7247\u6298\u53E0/\u5C55\u5F00\u52A8\u753B\u4E0E\u6309\u94AE\u6837\u5F0F */\n.dsh-github-header-cards-collapsed {\n display: none !important;\n}\n\n.dsh-github-btn-sm.active {\n background: var(--dsw-alias-state-attention-subtle, rgba(234, 179, 8, 0.15)) !important;\n color: var(--dsw-alias-state-attention-primary, #9a6700) !important;\n border-color: var(--dsw-alias-state-attention-primary, #d29922) !important;\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm.active {\n background: rgba(234, 179, 8, 0.2) !important;\n color: #f0b72f !important;\n border-color: #d29922 !important;\n}\n\n/* 19. \u5173\u8054\u4ED3\u5E93\u5207\u6362\u5668 (RepoSelectorDropdown) */\n.dsh-github-repo-switch-trigger {\n display: inline-flex;\n align-items: center;\n gap: 3px;\n padding: 1px 7px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 12px;\n border: 1px solid rgba(130, 80, 223, 0.35);\n background: rgba(130, 80, 223, 0.1);\n color: #8250df;\n cursor: pointer;\n transition: all 0.15s ease;\n user-select: none;\n line-height: 16px;\n}\n.dsh-github-repo-switch-trigger:hover {\n background: rgba(130, 80, 223, 0.2);\n border-color: rgba(130, 80, 223, 0.6);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-switch-trigger {\n border-color: rgba(163, 113, 247, 0.4);\n background: rgba(163, 113, 247, 0.15);\n color: #a371f7;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-switch-trigger:hover {\n background: rgba(163, 113, 247, 0.25);\n border-color: #a371f7;\n}\n\n.dsh-github-repo-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 5px;\n width: 320px;\n max-height: 380px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 8px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 8px 28px rgba(0, 0, 0, 0.5);\n}\n\n.dsh-github-repo-dropdown-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 12px;\n font-size: 11px;\n font-weight: 600;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n color: var(--dsw-alias-label-secondary, #57606a);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n\n.dsh-github-repo-dropdown-list {\n overflow-y: auto;\n max-height: 260px;\n padding: 4px 0;\n}\n\n.dsh-github-repo-item {\n padding: 7px 12px;\n font-size: 12px;\n cursor: pointer;\n transition: background 0.12s ease;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-repo-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.06));\n}\n.dsh-github-repo-item.selected {\n background: rgba(9, 105, 218, 0.08);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item.selected {\n background: rgba(56, 139, 253, 0.15);\n}\n\n.dsh-github-repo-dropdown-footer {\n padding: 6px 10px;\n font-size: 10px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n color: var(--dsw-alias-label-tertiary, #656d76);\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown-footer {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-tertiary, #8b949e);\n}\n\n.dsh-github-switch-quicklink {\n font-size: 11px;\n cursor: pointer;\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 500;\n display: inline-flex;\n align-items: center;\n gap: 3px;\n margin-left: 6px;\n padding: 1px 6px;\n border-radius: 4px;\n background: rgba(9, 105, 218, 0.08);\n border: 1px solid rgba(9, 105, 218, 0.2);\n}\n.dsh-github-switch-quicklink:hover {\n text-decoration: none;\n background: rgba(9, 105, 218, 0.16);\n border-color: rgba(9, 105, 218, 0.4);\n}\nbody[data-ds-dark-theme] .dsh-github-switch-quicklink {\n color: #58a6ff;\n background: rgba(56, 139, 253, 0.15);\n border-color: rgba(56, 139, 253, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-github-switch-quicklink:hover {\n background: rgba(56, 139, 253, 0.25);\n border-color: rgba(56, 139, 253, 0.5);\n}\n\n/* 20. PR \u5728\u7EBF\u8BE6\u60C5\u4E0E\u4EE3\u7801\u5BA1\u9605\u5DE5\u4F5C\u53F0 (PrDetailModal) */\n.dsh-github-pr-modal-dialog {\n width: 95% !important;\n max-width: 1040px !important;\n height: 88vh !important;\n max-height: 88vh !important;\n display: flex !important;\n flex-direction: column !important;\n overflow: hidden !important;\n padding: 0 !important;\n}\n\n.dsh-github-pr-modal-header {\n padding: 12px 16px !important;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n.dsh-github-pr-modal-tabs {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 6px 16px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-modal-tabs {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-tab-btn {\n padding: 5px 12px;\n font-size: 12px;\n font-weight: 500;\n border-radius: 6px;\n border: 1px solid transparent;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-pr-tab-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-pr-tab-btn.active {\n background: var(--dsw-alias-interactive-bg-active, rgba(9, 105, 218, 0.1));\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n border-color: rgba(9, 105, 218, 0.25);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn:hover {\n background: rgba(255, 255, 255, 0.06);\n color: #f0f6fc;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn.active {\n background: rgba(56, 139, 253, 0.15);\n color: #58a6ff;\n border-color: rgba(56, 139, 253, 0.4);\n}\n\n.dsh-github-pr-conversation-pane {\n padding: 16px !important;\n overflow-y: auto !important;\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 12px;\n /* \u6EDA\u5230\u8FB9\u754C\u65F6\u4E0D\u628A\u6EDA\u52A8\u4F20\u7ED9\u5F39\u7A97\u5916\u5C42\uFF0C\u907F\u514D\u6574\u9875\u8DDF\u7740\u6EDA */\n overscroll-behavior: contain;\n}\n\n.dsh-github-pr-checks-bar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-checks-bar {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-body-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n /*\n * flex: 0 0 auto \u662F\u6EDA\u52A8\u80FD\u5426\u5DE5\u4F5C\u7684\u5173\u952E\u3002\n * \u7236\u5BB9\u5668 .dsh-github-pr-conversation-pane \u662F flex-direction: column\uFF0C\n * flex \u5B50\u9879\u9ED8\u8BA4 flex-shrink: 1 \u2014\u2014 \u5185\u5BB9\u53D8\u957F\u65F6\u4F1A\u88AB\u300C\u538B\u7F29\u300D\u800C\u4E0D\u662F\u6491\u5F00\u7236\u5BB9\u5668\uFF0C\n * \u7236\u5BB9\u5668\u7684 overflow-y: auto \u4E8E\u662F\u6C38\u8FDC\u4E0D\u89E6\u53D1\uFF0C\u957F\u5185\u5BB9\u88AB\u76F4\u63A5\u88C1\u6389\u3002\n * \u7981\u6B62\u6536\u7F29\u540E\u5361\u7247\u9AD8\u5EA6\u7531\u5185\u5BB9\u51B3\u5B9A\uFF0C\u7236\u5BB9\u5668\u624D\u80FD\u771F\u6B63\u6EDA\u52A8\u3002\n */\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-body-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-comment-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n margin-bottom: 10px;\n /* \u540C body-card\uFF1A\u7981\u6B62\u6536\u7F29\uFF0C\u5426\u5219\u7236\u5BB9\u5668\u6EDA\u4E0D\u52A8\uFF08\u89C1\u4E0A\u65B9\u6CE8\u91CA\uFF09 */\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-comment-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-comment-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 6px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-comment-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-files-pane {\n display: flex;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n.dsh-github-pr-file-list {\n width: 280px;\n flex-shrink: 0;\n border-right: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n overflow-y: auto;\n padding: 6px 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-list {\n border-right-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n/*\n * \u62D6\u62FD\u5206\u9694\u6761\u3002\u5BBD\u5EA6 6px \u800C\u975E\u5E38\u89C1\u7684 1px\uFF1A\u7EC6\u6761\u51E0\u4E4E\u70B9\u4E0D\u4E2D\uFF0C\n * \u662F\u5206\u680F\u62D6\u62FD\u6700\u5E38\u89C1\u7684\u53EF\u7528\u6027\u7F3A\u9677\u3002\n */\n.dsh-github-pr-splitter {\n position: relative;\n flex-shrink: 0;\n width: 6px;\n cursor: col-resize;\n background: var(--dsw-alias-border-l2, #e1e4e8);\n transition: background 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.dsh-github-pr-splitter:hover {\n background: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter {\n background: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter:hover {\n background: #58a6ff;\n}\n\n/* \u6298\u53E0\u6309\u94AE\u8D34\u5728\u5206\u9694\u6761\u4E2D\u90E8\uFF0C\u59CB\u7EC8\u53EF\u89C1\u2014\u2014\u6298\u53E0\u540E\u8FD9\u662F\u552F\u4E00\u7684\u89C6\u89C9\u6062\u590D\u63D0\u793A */\n.dsh-github-pr-splitter-toggle {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 16px;\n height: 32px;\n padding: 0;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 3px;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-secondary, #656d76);\n font-size: 8px;\n line-height: 1;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n}\n.dsh-github-pr-splitter-toggle:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.06));\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter-toggle {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter-toggle:hover {\n background: rgba(255, 255, 255, 0.08);\n color: #f0f6fc;\n}\n\n/*\n * PR \u5361\u7247\u6807\u9898\u884C\uFF1A\u6807\u9898\u5728\u5DE6\u3001\u8DF3\u8F6C\u6309\u94AE\u9489\u5728\u6700\u53F3\uFF0C\u4E14\u4E25\u683C\u4FDD\u6301\u540C\u4E00\u884C\u3002\n *\n * \u4E3A\u4EC0\u4E48\u9700\u8981\u8FD9\u4E2A\u5BB9\u5668\uFF1A.dsh-github-item \u672C\u8EAB\u662F flex-direction: column\uFF0C\n * \u82E5\u628A\u6309\u94AE\u76F4\u63A5\u653E\u8FDB\u53BB\uFF0C\u5B83\u4F1A\u72EC\u5360\u4E00\u6574\u884C\u3001\u53EA\u5269\u4E00\u4E2A\u5B64\u96F6\u96F6\u7684 \u2197 \u5B57\u7B26\uFF0C\n * \u65E2\u4E11\u4E5F\u8BA9\u7528\u6237\u770B\u4E0D\u51FA\u8FD9\u662F\u53EF\u70B9\u7684\u5165\u53E3\u3002\u5305\u8FDB\u6A2A\u5411 flex \u884C\u5373\u53EF\u89E3\u51B3\u3002\n */\n.dsh-github-pr-title-row {\n display: flex;\n align-items: center; /* \u6807\u9898\u5DF2\u5F3A\u5236\u5355\u884C\uFF0C\u5C45\u4E2D\u5BF9\u9F50\u5373\u300C\u540C\u4E00\u884C\u300D */\n gap: 10px;\n width: 100%;\n min-width: 0;\n}\n.dsh-github-pr-title-row .dsh-github-item-title {\n /*\n * flex: 0 1 auto \u2014\u2014 \u6807\u9898\u6309\u81EA\u8EAB\u5185\u5BB9\u5BBD\u5EA6\u5360\u636E\uFF0C\u53EF\u6536\u7F29\uFF08shrink 1\uFF09\u4F46\u4E0D\u6491\u6EE1\uFF08grow 0\uFF09\u3002\n *\n * \u4E3A\u4EC0\u4E48\u4E0D\u662F flex: 1 1 0%\uFF1A\n * \u6807\u9898\u884C\u91CC\u73B0\u5728\u8FD8\u6709\u72B6\u6001\u5FBD\u7AE0\uFF08MERGED/CLOSED\uFF09\u8DDF\u5728\u6807\u9898\u53F3\u4FA7\u3002\n * \u82E5\u6807\u9898 grow \u6491\u6EE1\u5168\u90E8\u5269\u4F59\u7A7A\u95F4\uFF0C\u5FBD\u7AE0\u4F1A\u88AB\u9876\u5230\u6700\u53F3\u8FB9\u7D27\u8D34\u300CGitHub \u2197\u300D\u6309\u94AE\uFF0C\n * \u770B\u8D77\u6765\u50CF\u4E24\u4E2A\u53F3\u8FB9\u63A7\u4EF6\u6324\u5728\u4E00\u8D77\uFF0C\u800C\u4E0D\u662F\u300C\u6807\u9898 \u2192 \u72B6\u6001 \u2192 \u6309\u94AE\u300D\u7684\u9605\u8BFB\u987A\u5E8F\u3002\n * \u6539\u6210\u4E0D\u6491\u6EE1\u540E\uFF0C\u5FBD\u7AE0\u81EA\u7136\u7D27\u8DDF\u5728\u6807\u9898\u6587\u5B57\u4E4B\u540E\uFF1B\n * \u300C\u6309\u94AE\u8D34\u6700\u53F3\u300D\u7531\u6309\u94AE\u81EA\u8EAB\u7684 margin-left: auto \u4FDD\u8BC1\uFF0C\u4E0E\u6B64\u5904\u65E0\u5173\u3002\n */\n flex: 0 1 auto;\n /*\n * min-width: 0 \u662F\u5173\u952E\u3002flex \u5B50\u9879\u9ED8\u8BA4 min-width: auto\uFF0C\n * PR \u6807\u9898\u7ECF\u5E38\u5F88\u957F\uFF0C\u4F1A\u6491\u7834\u5BB9\u5668\u628A\u53F3\u4FA7\u5FBD\u7AE0\u4E0E\u6309\u94AE\u9876\u51FA\u53EF\u89C6\u533A\u2014\u2014\n * \u6CA1\u6709\u8FD9\u4E00\u884C\uFF0Ctext-overflow: ellipsis \u6839\u672C\u4E0D\u4F1A\u751F\u6548\u3002\n */\n min-width: 0;\n /*\n * white-space: nowrap + ellipsis\uFF1A\u6807\u9898\u53EA\u5360\u4E00\u884C\u3002\n * \u82E5\u5141\u8BB8\u6362\u884C\uFF0C\u6807\u9898\u53D8\u6210\u4E24\u4E09\u884C\u540E\u5FBD\u7AE0\u4E0E\u6309\u94AE\u4F1A\u6D6E\u5728\u9996\u884C\u53F3\u4FA7\uFF0C\n * \u89C6\u89C9\u4E0A\u4E0E\u6587\u5B57\u672B\u884C\u9519\u4F4D\u2014\u2014\u7528\u6237\u770B\u5230\u7684\u5C31\u662F\u300C\u6309\u94AE\u8DD1\u5230\u4E0A\u9762\u53BB\u4E86\u300D\u3002\n * \u5B8C\u6574\u6807\u9898\u901A\u8FC7 title \u5C5E\u6027\u60AC\u6D6E\u67E5\u770B\uFF0C\u8FD9\u4E5F\u662F GitHub \u81EA\u8EAB\u7684\u505A\u6CD5\u3002\n */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n /* \u6807\u9898\u4E0E\u6309\u94AE\u4E4B\u95F4\u9760 flex \u5206\u914D\u7559\u767D\uFF0C\u4E0D\u989D\u5916\u52A0 margin */\n text-decoration: none;\n}\n\n/*\n * \u300CGitHub \u2197\u300D\u8DF3\u8F6C\u6309\u94AE\u3002\n *\n * \u89C6\u89C9\u89C4\u683C\u6309\u622A\u56FE\u53CD\u9988\u91CD\u505A\uFF1A\u539F\u5148\u662F font-size 11px / padding 2px 8px\uFF0C\n * \u5728\u6DF1\u8272\u80CC\u666F\u4E0A\u53C8\u77EE\u53C8\u5C0F\u3001\u4E0E 13px \u6807\u9898\u4E0D\u5339\u914D\uFF0C\u770B\u8D77\u6765\u50CF\u8D34\u5728\u6587\u5B57\u4E0A\u7684\u6807\u7B7E\u3002\n * \u73B0\u5728\u653E\u5927\u5230\u4E0E\u6807\u9898\u540C\u4E00\u89C6\u89C9\u91CF\u7EA7\uFF0C\u5E76\u7ED9\u51FA\u660E\u786E\u7684\u60AC\u6D6E\u53CD\u9988\u3002\n */\n.dsh-github-pr-gh-btn {\n flex-shrink: 0; /* \u6C38\u4E0D\u538B\u7F29\uFF0C\u5B81\u53EF\u8BA9\u6807\u9898\u7701\u7565 */\n /*\n * margin-left: auto \u662F\u53CC\u4FDD\u9669\uFF1A\u5373\u4F7F\u6807\u9898\u56E0\u67D0\u79CD\u539F\u56E0\u6CA1\u5403\u6EE1 flex \u7A7A\u95F4\n * \uFF08\u5982\u7236\u5BB9\u5668\u5BBD\u5EA6\u5F02\u5E38\u3001flex-basis \u88AB\u8986\u76D6\uFF09\uFF0C\u6309\u94AE\u4ECD\u4F1A\u88AB\u63A8\u5230\u6700\u53F3\u4FA7\uFF0C\n * \u800C\u4E0D\u662F\u7D27\u8D34\u5728\u6807\u9898\u6587\u5B57\u5C41\u80A1\u540E\u9762\u3002\n */\n margin-left: auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n font-size: 12px;\n font-weight: 500;\n line-height: 18px;\n padding: 3px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n text-decoration: none;\n white-space: nowrap;\n transition: all 0.15s ease;\n}\n.dsh-github-pr-gh-btn:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n background: var(--dsw-alias-interactive-bg-hover, #eaeef2);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-gh-btn {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-gh-btn:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n background: rgba(56, 139, 253, 0.15);\n}\n\n.dsh-github-pr-file-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 6px 12px;\n font-size: 11px;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n cursor: pointer;\n color: var(--dsw-alias-label-primary, #1f2328);\n transition: background 0.12s ease;\n}\n.dsh-github-pr-file-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\n.dsh-github-pr-file-item.selected {\n background: rgba(9, 105, 218, 0.1);\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item:hover {\n background: rgba(255, 255, 255, 0.06);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item.selected {\n background: rgba(56, 139, 253, 0.18);\n color: #58a6ff;\n}\n\n.dsh-github-pr-diff-viewer {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-diff-viewer {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-diff-toolbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-diff-toolbar {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n/* \u884C\u7EA7\u5BA1\u67E5\u8BC4\u8BBA\uFF1A\u4E0E\u5BF9\u8BDD\u533A\u8BC4\u8BBA\u89C6\u89C9\u533A\u5206\uFF08\u5DE6\u4FA7\u7D2B\u8272\u63CF\u8FB9\uFF0C\u6697\u793A\u300C\u6302\u5728\u4EE3\u7801\u4E0A\u300D\uFF09 */\n.dsh-github-pr-line-comments {\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n padding: 10px 12px 14px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comments {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n.dsh-github-pr-line-comments-title {\n font-size: 11px;\n font-weight: 600;\n margin-bottom: 8px;\n color: var(--dsw-alias-label-secondary, #656d76);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comments-title {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n.dsh-github-pr-line-comment-item {\n border-left: 3px solid rgba(130, 80, 223, 0.5);\n border-radius: 4px;\n background: var(--dsw-alias-bg-base, #ffffff);\n padding: 8px 10px;\n margin-bottom: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comment-item {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-left-color: rgba(163, 113, 247, 0.6);\n}\n.dsh-github-pr-line-comment-head {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n font-size: 11px;\n margin-bottom: 5px;\n}\n.dsh-github-pr-line-comment-body {\n font-size: 12px;\n line-height: 1.6;\n white-space: pre-wrap;\n word-break: break-word;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comment-body {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 21. PR \u5F39\u7A97\u5185\u7684 Markdown \u6392\u7248 (markdown-lite) */\n.dsh-github-md-body {\n padding: 12px;\n font-size: 12px;\n line-height: 1.7;\n word-break: break-word;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* \u6807\u9898\uFF1AGitHub \u7684\u5C42\u7EA7\u5DEE\u8DDD\u6BD4\u6D4F\u89C8\u5668\u9ED8\u8BA4\u5C0F\uFF0C\u907F\u514D h3 \u8FC7\u5927\u6491\u7834\u5361\u7247 */\n.dsh-github-md-body .dsh-github-md-heading {\n margin: 14px 0 8px 0;\n font-weight: 600;\n line-height: 1.4;\n}\n.dsh-github-md-body h1.dsh-github-md-heading { font-size: 17px; }\n.dsh-github-md-body h2.dsh-github-md-heading { font-size: 15px; }\n.dsh-github-md-body h3.dsh-github-md-heading { font-size: 14px; }\n.dsh-github-md-body h4.dsh-github-md-heading { font-size: 13px; }\n.dsh-github-md-body h5.dsh-github-md-heading,\n.dsh-github-md-body h6.dsh-github-md-heading { font-size: 12px; opacity: 0.9; }\n.dsh-github-md-body > .dsh-github-md-heading:first-child {\n margin-top: 0;\n}\n\n.dsh-github-md-body .dsh-github-md-p {\n margin: 0 0 10px 0;\n}\n.dsh-github-md-body .dsh-github-md-p:last-child {\n margin-bottom: 0;\n}\n\n/* \u884C\u5185\u4EE3\u7801\uFF1A\u7528\u8FB9\u6846 + \u5E95\u8272\u4E0E\u6B63\u6587\u533A\u5206\uFF0C\u6BD4\u5355\u7EAF\u6539\u5B57\u4F53\u66F4\u6613\u8FA8\u8BC6 */\n.dsh-github-md-body .dsh-github-md-inline-code {\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n font-size: 0.92em;\n padding: 1px 5px;\n border-radius: 4px;\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.06));\n border: 1px solid var(--dsw-alias-border-subtle, rgba(0, 0, 0, 0.08));\n word-break: break-all;\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-inline-code {\n background: rgba(255, 255, 255, 0.1);\n border-color: rgba(255, 255, 255, 0.12);\n}\n\n/* \u56F4\u680F\u4EE3\u7801\u5757\uFF1A\u6A2A\u5411\u53EF\u6EDA\uFF0C\u7EDD\u4E0D\u6362\u884C\u2014\u2014\u6362\u884C\u4F1A\u6BC1\u6389\u7F29\u8FDB\u8BED\u4E49 */\n.dsh-github-md-body .dsh-github-md-pre {\n margin: 10px 0;\n padding: 10px 12px;\n border-radius: 6px;\n overflow-x: auto;\n max-height: 420px;\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.04));\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-pre {\n background: rgba(0, 0, 0, 0.3);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-md-body .dsh-github-md-pre code {\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n font-size: 11px;\n line-height: 1.55;\n white-space: pre;\n display: block;\n}\n\n.dsh-github-md-body .dsh-github-md-list {\n margin: 8px 0;\n padding-left: 22px;\n}\n.dsh-github-md-body .dsh-github-md-list li {\n margin: 4px 0;\n}\n.dsh-github-md-body .dsh-github-md-task {\n list-style: none;\n margin-left: -18px;\n display: flex;\n align-items: flex-start;\n gap: 6px;\n}\n.dsh-github-md-body .dsh-github-md-checkbox {\n flex-shrink: 0;\n opacity: 0.8;\n}\n\n.dsh-github-md-body .dsh-github-md-quote {\n margin: 10px 0;\n padding: 6px 12px;\n border-left: 3px solid var(--dsw-alias-border-l3, #d0d7de);\n color: var(--dsw-alias-label-secondary, #656d76);\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.02));\n border-radius: 0 4px 4px 0;\n}\n\n.dsh-github-md-body .dsh-github-md-hr {\n margin: 14px 0;\n border: none;\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-hr {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-md-body .dsh-github-md-link {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n}\n.dsh-github-md-body .dsh-github-md-link:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-link {\n color: #58a6ff;\n}\n\n/* \u6298\u53E0/\u5C55\u5F00\u6309\u94AE\uFF1A\u4F4E\u8C03\u7684\u6587\u672C\u6309\u94AE\uFF0C\u4E0D\u62A2\u6B63\u6587\u89C6\u89C9 */\n.dsh-github-md-expand-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n margin: 0 0 4px 12px;\n padding: 3px 8px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 5px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-md-expand-btn:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-md-expand-btn {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-md-expand-btn:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* 22. Issue \u5728\u7EBF\u67E5\u770B\u5F39\u7A97 (IssueDetailModal)\n *\n * \u4E3A\u4EC0\u4E48\u662F\u5355\u5217\u800C\u4E0D\u662F PR \u90A3\u6837\u7684\u53CC\u680F\uFF1AIssue \u6CA1\u6709 diff \u8F7D\u8377\uFF0C\u6CA1\u6709\u9700\u8981\u5E76\u6392\n * \u5BF9\u7167\u7684\u7B2C\u4E8C\u4E2A\u4FE1\u606F\u6E90\u3002\u628A\u5BBD\u5EA6\u5168\u90E8\u8BA9\u7ED9 Markdown \u6B63\u6587\uFF0C\u884C\u5BBD\u66F4\u63A5\u8FD1 80 \u5B57\u7B26\u7684\n * \u53EF\u8BFB\u533A\u95F4\uFF0C\u957F\u8BA8\u8BBA\u8BFB\u8D77\u6765\u6BD4\u6324\u5728\u5DE6\u534A\u8FB9\u8212\u670D\u5F97\u591A\u3002\n */\n.dsh-github-issue-modal-dialog {\n width: 92% !important;\n max-width: 880px !important;\n height: 84vh !important;\n max-height: 84vh !important;\n display: flex !important;\n flex-direction: column !important;\n overflow: hidden !important;\n padding: 0 !important;\n}\n\n.dsh-github-issue-modal-header {\n padding: 12px 16px !important;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n.dsh-github-issue-conversation-pane {\n padding: 16px !important;\n overflow-y: auto !important;\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 12px;\n /* \u6EDA\u5230\u8FB9\u754C\u4E0D\u628A\u6EDA\u52A8\u4F20\u7ED9\u5F39\u7A97\u5916\u5C42\uFF0C\u907F\u514D\u6574\u9875\u8DDF\u7740\u6EDA */\n overscroll-behavior: contain;\n}\n\n/* \u5143\u6570\u636E\u6761\uFF1A\u6807\u7B7E/\u6307\u6D3E\u4EBA/\u91CC\u7A0B\u7891/\u5173\u8054 PR \u5168\u90E8\u4EE5\u80F6\u56CA\u5448\u73B0\uFF0C\u4E00\u884C\u4E0D\u591F\u81EA\u7136\u6362\u884C */\n.dsh-github-issue-meta {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n}\n.dsh-github-issue-chip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 2px 8px;\n border-radius: 999px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n font-size: 11px;\n line-height: 18px;\n white-space: nowrap;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n/* \u6807\u7B7E\u80F6\u56CA\u81EA\u8EAB\u5E26 label \u8272\uFF08\u884C\u5185 background/borderColor \u8986\u76D6\uFF09\uFF0C\n * \u8FD9\u91CC\u7684\u7C7B\u53EA\u7528\u4E8E\u8272\u70B9\u4E0E\u6587\u5B57\u5BF9\u5176\uFF0C\u4E0D\u8BBE\u80CC\u666F\u4EE5\u514D\u884C\u5185\u6837\u5F0F\u5931\u6548\u65F6\u53D8\u6210\u7070\u5757 */\n.dsh-github-issue-label-chip {\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n/* \u903E\u671F\u91CC\u7A0B\u7891\uFF1A\u7528\u9519\u8BEF\u8272\u63CF\u8FB9\u63D0\u793A\u300C\u8FD9\u6761\u5DF2\u7ECF\u8FC7\u671F\u4E86\u300D\uFF0C\u5426\u5219\u548C\u6B63\u5E38 milestone \u957F\u5F97\u4E00\u6837 */\n.dsh-github-issue-chip-overdue {\n border-color: rgba(207, 34, 46, 0.5);\n color: var(--dsw-alias-state-error-primary, #cf222e);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip-overdue {\n border-color: rgba(248, 81, 73, 0.5);\n color: #f85149;\n}\n.dsh-github-issue-label-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n/* \u53EF\u70B9\u51FB\u7684\u80F6\u56CA\uFF08\u56FE\u7247\u6E05\u5355\u5F00\u5173\u3001\u5173\u8054 PR \u5916\u94FE\uFF09\u5FC5\u987B\u6709 hover \u53CD\u9988\uFF0C\u5426\u5219\u770B\u4E0D\u51FA\u53EF\u70B9 */\n.dsh-github-issue-chip-btn,\n.dsh-github-issue-chip-link {\n cursor: pointer;\n text-decoration: none;\n font-family: inherit;\n transition: border-color 0.15s ease, color 0.15s ease;\n}\n.dsh-github-issue-chip-btn:hover,\n.dsh-github-issue-chip-link:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-label-chip {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip-btn:hover,\nbody[data-ds-dark-theme] .dsh-github-issue-chip-link:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* \u56FE\u7247\u6E05\u5355\uFF1A\u5C55\u5F00\u540E\u9010\u884C\u5217\u51FA\u5916\u94FE\uFF0C\u4E0D\u4E0E\u6B63\u6587\u6DF7\u6392 */\n.dsh-github-issue-image-badge {\n display: inline-flex;\n flex-direction: column;\n gap: 6px;\n max-width: 100%;\n}\n.dsh-github-issue-image-links {\n display: flex;\n flex-direction: column;\n gap: 3px;\n padding: 6px 8px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-image-links {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n.dsh-github-issue-image-link {\n font-size: 11px;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dsh-github-issue-image-link:hover {\n text-decoration: underline;\n}\n\n/* \u6B63\u6587\u4E0E\u8BC4\u8BBA\u5361\u7247\uFF1A\u540C PR \u5F39\u7A97\uFF0Cflex: 0 0 auto \u662F\u6EDA\u52A8\u80FD\u5426\u5DE5\u4F5C\u7684\u524D\u63D0 */\n.dsh-github-issue-body-card,\n.dsh-github-issue-comment-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n /* \u7981\u6B62\u6536\u7F29\uFF1A\u7236\u5BB9\u5668\u662F column flex\uFF0C\u9ED8\u8BA4 flex-shrink:1 \u4F1A\u538B\u7F29\u5361\u7247\n * \u800C\u4E0D\u662F\u6491\u5F00\u7236\u5BB9\u5668\uFF0C\u5BFC\u81F4 overflow-y:auto \u6C38\u4E0D\u89E6\u53D1\uFF08\u957F Issue \u6EDA\u4E0D\u52A8\uFF09 */\n flex: 0 0 auto;\n}\n.dsh-github-issue-comment-card {\n margin-bottom: 10px;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-body-card,\nbody[data-ds-dark-theme] .dsh-github-issue-comment-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-issue-comment-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-comment-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n/* \u6B63\u6587\u5BB9\u5668\u4E0D\u52A0 padding\uFF1ACollapsibleBody \u5185\u90E8\u7684 .dsh-github-md-body \u5DF2\u6709 12px\uFF0C\n * \u53CC\u5C42\u53E0\u52A0\u4F1A\u8BA9\u6B63\u6587\u6BD4\u8BC4\u8BBA\u7F29\u8FDB\u66F4\u6DF1\uFF0C\u89C6\u89C9\u4E0A\u8BEF\u8BFB\u6210\u5F15\u7528\u5757 */\n.dsh-github-issue-body-content {\n padding: 0;\n}\n\n.dsh-github-issue-timeline-title {\n margin: 4px 0 0 0;\n font-size: 13px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-timeline-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n.dsh-github-issue-empty-timeline {\n padding: 16px 0;\n text-align: center;\n font-size: 12px;\n opacity: 0.6;\n flex: 0 0 auto;\n}\n";
5
+ export declare const GITHUB_PANEL_CSS = "\n/* 1. \u4FA7\u8FB9\u680F\u5165\u53E3\u56FE\u6807\uFF1A\u523B\u610F\u4E0D\u63D0\u4F9B\u4EFB\u4F55\u6837\u5F0F\n *\n * \u5BBF\u4E3B\u7684 .panelRow \u8D1F\u8D23\u884C\u9AD8\u4EAE / hover / \u989C\u8272\uFF0C\u56FE\u6807\u683C .panelGlyph \u662F flex:none\n * \u4E14\u4E0D\u8BBE\u5BBD\u9AD8\uFF08\u5BBD\u5EA6\u5B8C\u5168\u7531\u5185\u5BB9\u51B3\u5B9A\uFF09\u3002\u8FD9\u91CC\u4EFB\u4F55\u56FA\u5B9A\u5C3A\u5BF8\u90FD\u4F1A\u6491\u5F00\u56FE\u6807\u683C\u3001\u628A\u6807\u7B7E\u63A8\u53F3\uFF1B\n * \u4EFB\u4F55\u80CC\u666F/\u53D1\u5149\u90FD\u4F1A\u4E0E\u5BBF\u4E3B\u9009\u4E2D\u6001\u53E0\u52A0\u3002\u5386\u53F2\u6559\u8BAD\u89C1 issue #9\uFF1A\n * 28px \u5185\u5C42\u76D2\u5B50\u8BA9\u56FE\u6807\u683C\u6BD4\u540C\u7EA7\u5BBD 12px\uFF0C\u6DF1\u8272\u6E10\u53D8+\u53D1\u5149\u5219\u662F\u591A\u4F59\u7684\u7B2C\u4E8C\u5C42\u9009\u4E2D\u6001\u3002\n */\n\n/* 2. Octocat \u79D1\u6280\u52CB\u7AE0 Badge */\n.dsh-octocat-badge {\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, #1f6feb 0%, #0969da 60%, #8957e5 100%);\n box-shadow: 0 2px 6px rgba(9, 105, 218, 0.25);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-octocat-badge {\n background: linear-gradient(135deg, #2ea043 0%, #1f6feb 60%, #8957e5 100%);\n box-shadow: 0 2px 8px rgba(31, 111, 235, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n\n/* 3. \u5BB9\u5668\u89C6\u56FE\uFF08\u4E3B\u9762\u677F\u4E0E\u53F3\u4FA7\u62BD\u5C49\u680F\uFF09 */\n.dsh-github-panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 24px 32px;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n\n.dsh-github-rightbar-container {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px 18px;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n\nbody[data-ds-dark-theme] .dsh-github-panel,\nbody[data-ds-dark-theme] .dsh-github-rightbar-container {\n background: var(--dsw-alias-bg-base, #151517);\n color: var(--dsw-alias-label-primary, #ececec);\n}\n\n/* 4. \u5934\u90E8\u533A\u57DF */\n.dsh-github-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 20px;\n padding-bottom: 12px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n}\nbody[data-ds-dark-theme] .dsh-github-header {\n border-bottom-color: var(--dsw-alias-border-l1, #2c2c2e);\n}\n.dsh-github-title {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n.dsh-github-title h2 {\n margin: 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-title h2 {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 5. \u5237\u65B0\u6309\u94AE */\n.dsh-github-refresh-btn {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 5px 12px;\n font-size: 12px;\n font-weight: 500;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-refresh-btn:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-border-l3, #d0d7de);\n}\n.dsh-github-refresh-btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\nbody[data-ds-dark-theme] .dsh-github-refresh-btn {\n border-color: var(--dsw-alias-border-l1, #38383c);\n background: var(--dsw-alias-bg-layer-2, #242528);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-refresh-btn:hover:not(:disabled) {\n background: var(--dsw-alias-interactive-bg-hover, #2f3034);\n border-color: rgba(255, 255, 255, 0.25);\n}\n\n/* 6. \u6982\u89C8\u5361\u7247\u4E0E\u7F51\u683C */\n.dsh-github-overview-cards {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 14px;\n margin-bottom: 20px;\n}\n.dsh-github-card {\n padding: 14px 16px;\n border-radius: 8px;\n border: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n background: var(--dsw-alias-bg-layer-1, #fcfcfd);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n margin-bottom: 12px;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-card {\n border-color: var(--dsw-alias-border-l1, #303034);\n background: var(--dsw-alias-bg-layer-2, #212124);\n box-shadow: none;\n}\n.dsh-github-card-title {\n font-size: 11px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n margin-bottom: 6px;\n font-weight: 500;\n}\nbody[data-ds-dark-theme] .dsh-github-card-title {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n.dsh-github-card-value {\n font-size: 15px;\n font-weight: 600;\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-card-value {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-card-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n margin-top: 4px;\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-card-desc {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-card-subtext {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #8c959f);\n margin-top: 6px;\n}\nbody[data-ds-dark-theme] .dsh-github-card-subtext {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n\n/* fork \u8840\u7F18\u884C\uFF1A\u8BF4\u660E\u300C\u8FD9\u662F\u8C01\u7684\u4E0A\u6E38\u300D\uFF0C\u4E0A\u6E38\u540D\u53EF\u70B9\u51FB */\n.dsh-github-fork-line {\n font-size: 12px;\n margin-top: 4px;\n color: var(--dsw-alias-label-secondary, #656d76);\n display: flex;\n align-items: center;\n gap: 4px;\n flex-wrap: wrap;\n}\nbody[data-ds-dark-theme] .dsh-github-fork-line {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-fork-line a {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 600;\n}\n.dsh-github-fork-line a:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-fork-line a {\n color: #58a6ff;\n}\n\n/* 7. \u5FBD\u7AE0\uFF08Badges\uFF09 */\n.dsh-github-badge {\n display: inline-flex;\n align-items: center;\n font-size: 11px;\n padding: 2px 8px;\n border-radius: 12px;\n font-weight: 500;\n line-height: 16px;\n}\n.dsh-badge-green {\n background: rgba(46, 160, 67, 0.12);\n color: #1a7f37;\n border: 1px solid rgba(46, 160, 67, 0.2);\n}\n.dsh-badge-red {\n background: rgba(207, 34, 46, 0.12);\n color: #cf222e;\n border: 1px solid rgba(207, 34, 46, 0.2);\n}\n.dsh-badge-yellow {\n background: rgba(154, 103, 0, 0.12);\n color: #9a6700;\n border: 1px solid rgba(154, 103, 0, 0.2);\n}\n\n/*\n * \u53EA\u8BFB\u5FBD\u7AE0\uFF1A\u4E0E yellow \u540C\u8272\u7CFB\u4F46\u63CF\u8FB9\u66F4\u660E\u663E\uFF0C\u56E0\u4E3A\u300C\u4F60\u6539\u4E0D\u4E86\u300D\u662F\u9700\u8981\u88AB\u770B\u89C1\u7684\u7EA6\u675F\u3002\n * \u72EC\u7ACB\u7C7B\u800C\u975E\u590D\u7528 yellow\uFF0C\u662F\u4E3A\u4E86\u5C06\u6765\u8C03\u6574\u53EA\u8BFB\u8BED\u4E49\u7684\u89C6\u89C9\u5F3A\u5EA6\u65F6\u4E0D\u7275\u52A8\u5176\u4ED6\u9EC4\u8272\u5FBD\u7AE0\u3002\n */\n.dsh-badge-readonly {\n background: rgba(154, 103, 0, 0.12);\n color: #9a6700;\n border: 1px solid rgba(154, 103, 0, 0.35);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-badge-readonly {\n background: rgba(210, 153, 34, 0.18);\n color: #d29922;\n border-color: rgba(210, 153, 34, 0.4);\n}\n.dsh-badge-blue {\n background: rgba(9, 105, 218, 0.12);\n color: #0969da;\n border: 1px solid rgba(9, 105, 218, 0.2);\n}\n.dsh-badge-purple {\n background: rgba(137, 87, 229, 0.12);\n color: #8250df;\n border: 1px solid rgba(137, 87, 229, 0.2);\n}\nbody[data-ds-dark-theme] .dsh-badge-green {\n background: rgba(46, 160, 67, 0.22);\n color: #3fb950;\n border-color: rgba(46, 160, 67, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-red {\n background: rgba(248, 81, 73, 0.22);\n color: #f85149;\n border-color: rgba(248, 81, 73, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-yellow {\n background: rgba(210, 153, 34, 0.22);\n color: #d29922;\n border-color: rgba(210, 153, 34, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-blue {\n background: rgba(56, 139, 253, 0.22);\n color: #58a6ff;\n border-color: rgba(56, 139, 253, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-badge-purple {\n background: rgba(163, 113, 247, 0.22);\n color: #bc8cff;\n border-color: rgba(163, 113, 247, 0.3);\n}\n\n/* \u63D2\u4EF6\u8EAB\u4EFD\u5FBD\u6807\uFF1A\u6807\u8BC6\u754C\u9762\u7531\u7B2C\u4E09\u65B9\u63D2\u4EF6 dsh-github-flow \u63D0\u4F9B\uFF08\u975E DSH/GitHub \u5B98\u65B9\uFF09 */\n.dsh-github-plugin-badge {\n display: inline-flex;\n align-items: center;\n font-size: 10px;\n font-weight: 500;\n padding: 1px 7px;\n border-radius: 10px;\n line-height: 14px;\n vertical-align: middle;\n margin-left: 8px;\n text-decoration: none !important;\n background: rgba(125, 133, 144, 0.12);\n color: #656d76;\n border: 1px solid rgba(125, 133, 144, 0.25);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-plugin-badge:hover {\n background: rgba(125, 133, 144, 0.2);\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-plugin-badge {\n background: rgba(139, 148, 158, 0.18);\n color: #8b949e;\n border-color: rgba(139, 148, 158, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-github-plugin-badge:hover {\n background: rgba(139, 148, 158, 0.28);\n color: #f0f6fc;\n}\n\n/* 7.5. \u5206\u7C7B\u7B5B\u9009\u836F\u4E38\u680F */\n.dsh-github-pills {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n margin-bottom: 12px;\n}\n.dsh-github-pill-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 14px;\n font-size: 11px;\n font-weight: 500;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-pill-btn:hover {\n color: var(--dsw-alias-label-primary, #1f2328);\n border-color: var(--dsw-alias-border-l3, #b0b8c1);\n}\n.dsh-github-pill-btn.active {\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.1));\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn {\n background: var(--dsw-alias-bg-layer-2, #21262d);\n color: var(--dsw-alias-label-secondary, #8b949e);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn:hover {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n border-color: #8b949e;\n}\nbody[data-ds-dark-theme] .dsh-github-pill-btn.active {\n background: rgba(56, 139, 253, 0.18);\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* 8. \u5FEB\u6377\u64CD\u4F5C\u7F51\u683C */\n.dsh-github-quick-actions {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n margin-bottom: 16px;\n}\n.dsh-github-action-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n padding: 8px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-action-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-link, #0969da);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-action-btn {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #28282b);\n color: var(--dsw-alias-label-primary, #fff);\n}\nbody[data-ds-dark-theme] .dsh-github-action-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n border-color: #58a6ff;\n color: #58a6ff;\n}\n\n/* \u7EC4\u5408\u5F0F\u5FEB\u6377\u64CD\u4F5C\u6309\u94AE (AI \u667A\u80FD\u88C5\u586B\u4E3B\u64CD\u4F5C + \u5B98\u65B9\u5916\u94FE\u76F4\u8FBE) */\n.dsh-github-split-btn {\n display: flex;\n align-items: stretch;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n overflow: hidden;\n transition: all 0.15s ease;\n}\n.dsh-github-split-btn:hover {\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-btn {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #28282b);\n}\nbody[data-ds-dark-theme] .dsh-github-split-btn:hover {\n border-color: #58a6ff;\n}\n.dsh-github-split-main {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 5px;\n padding: 8px 8px;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n white-space: nowrap;\n}\n.dsh-github-split-main:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-main {\n color: var(--dsw-alias-label-primary, #fff);\n}\nbody[data-ds-dark-theme] .dsh-github-split-main:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n color: #58a6ff;\n}\n.dsh-github-split-link {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 8px;\n border-left: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: transparent;\n color: var(--dsw-alias-label-tertiary, #656d76);\n font-size: 12px;\n font-weight: bold;\n text-decoration: none !important;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-split-link:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-split-link {\n border-left-color: var(--dsw-alias-border-l1, #444);\n color: var(--dsw-alias-label-secondary, #9ca3af);\n}\nbody[data-ds-dark-theme] .dsh-github-split-link:hover {\n background: var(--dsw-alias-interactive-bg-hover, #343438);\n color: #58a6ff;\n}\n\n/* 9. \u6A21\u5757\u5206\u533A\u4E0E\u5217\u8868 */\n.dsh-github-section {\n margin-bottom: 20px;\n}\n.dsh-github-section-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n.dsh-github-section-header h3 {\n margin: 0;\n font-size: 13px;\n font-weight: 600;\n color: var(--dsw-alias-label-secondary, #656d76);\n}\nbody[data-ds-dark-theme] .dsh-github-section-header h3 {\n color: var(--dsw-alias-label-secondary, #ccc);\n}\n.dsh-github-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.dsh-github-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n padding: 10px 14px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n background: var(--dsw-alias-bg-layer-1, #fcfcfd);\n transition: border-color 0.15s ease, background 0.15s ease;\n}\n.dsh-github-item:hover {\n border-color: var(--dsw-alias-border-l3, #d0d7de);\n background: var(--dsw-alias-interactive-bg-hover, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-item {\n border-color: var(--dsw-alias-border-l1, #333336);\n background: var(--dsw-alias-bg-layer-2, #252528);\n}\nbody[data-ds-dark-theme] .dsh-github-item:hover {\n border-color: var(--dsw-alias-border-l2, #555);\n background: var(--dsw-alias-interactive-bg-hover, #2c2c30);\n}\n.dsh-github-item-title {\n font-size: 13px;\n font-weight: 500;\n color: var(--dsw-alias-label-primary, #1f2328);\n text-decoration: none;\n transition: color 0.15s ease;\n}\n.dsh-github-item-title:hover {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-item-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-item-title:hover {\n color: #58a6ff;\n}\n.dsh-github-item-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-item-desc {\n color: var(--dsw-alias-label-secondary, #bbb);\n}\n.dsh-github-item-meta {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-item-meta {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n\n/* 10. \u5C0F\u6309\u94AE\u6837\u5F0F\uFF08\u5728 GitHub \u6253\u5F00\u7B49\uFF09 */\n.dsh-github-btn-sm {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n font-weight: 500;\n padding: 4px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n text-decoration: none !important;\n transition: all 0.15s ease;\n}\n.dsh-github-btn-sm:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef2);\n border-color: var(--dsw-alias-border-l3, #b0b8c1);\n color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #26272b);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm:hover {\n background: var(--dsw-alias-interactive-bg-hover, #33343a);\n border-color: rgba(255, 255, 255, 0.25);\n color: #58a6ff;\n}\n\n/* 11. \u7A7A\u72B6\u6001 */\n.dsh-github-empty {\n padding: 24px;\n text-align: center;\n font-size: 12px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n border: 1px dashed var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 8px;\n background: rgba(0, 0, 0, 0.01);\n}\nbody[data-ds-dark-theme] .dsh-github-empty {\n color: var(--dsw-alias-label-tertiary, #888);\n border-color: var(--dsw-alias-border-l1, #38383c);\n background: rgba(255, 255, 255, 0.01);\n}\n\n/* 12. Tabs \u5BFC\u822A\u680F */\n.dsh-github-tabs {\n display: flex;\n gap: 8px;\n margin-bottom: 18px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e5e7eb);\n padding-bottom: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-tabs {\n border-bottom-color: var(--dsw-alias-border-l1, #303034);\n}\n.dsh-github-tab-btn {\n padding: 6px 14px;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n border: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-tab-btn:hover {\n color: var(--dsw-alias-label-primary, #1f2328);\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\n.dsh-github-tab-btn.active {\n color: var(--dsw-alias-link, #0969da);\n background: rgba(9, 105, 218, 0.1);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn:hover {\n color: var(--dsw-alias-label-primary, #fff);\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.06));\n}\nbody[data-ds-dark-theme] .dsh-github-tab-btn.active {\n color: #58a6ff;\n background: rgba(88, 166, 255, 0.15);\n}\n\n/* 13. \u641C\u7D22\u8F93\u5165\u6846 */\n.dsh-github-search-input {\n width: 100%;\n max-width: 320px;\n padding: 6px 12px;\n font-size: 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n outline: none;\n margin-bottom: 14px;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-search-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\nbody[data-ds-dark-theme] .dsh-github-search-input {\n border-color: var(--dsw-alias-border-l1, #444);\n background: var(--dsw-alias-bg-layer-2, #212124);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-search-input:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\n\n/* 14. \u5DE5\u4F5C\u533A\u77E9\u9635\u6761\u76EE\u4E13\u5C5E\u7C7B */\n.dsh-github-workspace-card {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n.dsh-github-ws-title {\n font-size: 14px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-ws-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-ws-path {\n font-size: 12px;\n color: var(--dsw-alias-label-tertiary, #656d76);\n font-family: var(--ds-font-family-code, monospace);\n}\nbody[data-ds-dark-theme] .dsh-github-ws-path {\n color: var(--dsw-alias-label-tertiary, #888);\n}\n.dsh-github-ws-repo-link {\n color: var(--dsw-alias-link, #0969da);\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-weight: 500;\n}\nbody[data-ds-dark-theme] .dsh-github-ws-repo-link {\n color: #58a6ff;\n}\n.dsh-github-repo-link {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 600;\n}\n.dsh-github-repo-link:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-link {\n color: #58a6ff;\n}\n.dsh-github-subheading {\n font-size: 14px;\n font-weight: 600;\n margin: 0 0 10px 0;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-subheading {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 15. \u5C31\u7EEA\u5F15\u5BFC\u6A2A\u5E45 (Setup Guide Banner) */\n.dsh-github-guide-card {\n padding: 16px;\n border-radius: 8px;\n margin-bottom: 16px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\n.dsh-github-guide-card.warning {\n border-color: rgba(210, 153, 34, 0.4);\n background: rgba(210, 153, 34, 0.08);\n}\n.dsh-github-guide-card.danger {\n border-color: rgba(248, 81, 73, 0.4);\n background: rgba(248, 81, 73, 0.08);\n}\n.dsh-github-guide-header {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 15px;\n font-weight: 600;\n margin-bottom: 6px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-guide-header {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-guide-desc {\n font-size: 13px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.5;\n margin-bottom: 12px;\n}\nbody[data-ds-dark-theme] .dsh-github-guide-desc {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n.dsh-github-cmd-box {\n display: flex;\n align-items: center;\n justify-content: space-between;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 6px;\n padding: 8px 12px;\n font-family: var(--ds-font-family-code, monospace);\n font-size: 13px;\n color: var(--dsw-alias-label-primary, #1f2328);\n margin-bottom: 12px;\n}\nbody[data-ds-dark-theme] .dsh-github-cmd-box {\n background: var(--dsw-alias-bg-layer-2, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n.dsh-github-copy-btn {\n padding: 4px 10px;\n font-size: 12px;\n border-radius: 4px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n white-space: nowrap;\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-copy-btn {\n background: var(--dsw-alias-bg-layer-2, #21262d);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #c9d1d9);\n}\n.dsh-github-copy-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, #ebeef1);\n}\nbody[data-ds-dark-theme] .dsh-github-copy-btn:hover {\n background: #30363d;\n}\n.dsh-github-copy-btn.copied {\n color: #2da44e !important;\n border-color: #2da44e !important;\n background: rgba(45, 164, 78, 0.15) !important;\n}\n.dsh-github-steps-list {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.6;\n margin: 0 0 12px 18px;\n padding: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-steps-list {\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n.dsh-github-guide-actions {\n display: flex;\n gap: 8px;\n flex-wrap: wrap;\n}\n.dsh-github-guide-tip {\n font-size: 11px;\n color: var(--dsw-alias-label-tertiary, #8c8c8c);\n margin-top: 10px;\n line-height: 1.4;\n}\n\n/* 16. \u8BBE\u7F6E\u5F39\u7A97 (Settings Modal)\uFF1A\u5DE6\u4FA7\u5206\u533A\u5BFC\u822A + \u53F3\u4FA7\u5185\u5BB9\u533A */\n.dsh-github-modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.45);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 99999;\n backdrop-filter: blur(2px);\n}\n.dsh-github-modal-dialog {\n width: 92%;\n max-width: 640px;\n max-height: 86vh;\n display: flex;\n flex-direction: column;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 12px;\n box-shadow: 0 16px 32px rgba(0, 0, 0, 0.18);\n padding: 0;\n box-sizing: border-box;\n overflow: hidden;\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\nbody[data-ds-dark-theme] .dsh-github-modal-dialog {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45);\n}\n.dsh-github-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 18px 22px 14px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-modal-body {\n display: flex;\n min-height: 0;\n flex: 1;\n}\n.dsh-github-settings-nav {\n flex-shrink: 0;\n width: 148px;\n padding: 14px 10px;\n border-right: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n flex-direction: column;\n gap: 4px;\n box-sizing: border-box;\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav {\n border-right-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-settings-nav-item {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 10px;\n border-radius: 6px;\n border: none;\n background: none;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n color: var(--dsw-alias-label-secondary, #656d76);\n transition: background 0.12s ease, color 0.12s ease;\n}\n.dsh-github-settings-nav-item:hover {\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-settings-nav-item.active {\n background: rgba(9, 105, 218, 0.1);\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav-item:hover {\n background: rgba(240, 246, 252, 0.06);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-settings-nav-item.active {\n background: rgba(88, 166, 255, 0.15);\n color: #58a6ff;\n}\n.dsh-github-settings-content {\n flex: 1;\n min-width: 0;\n padding: 18px 22px 20px;\n overflow-y: auto;\n box-sizing: border-box;\n}\n@media (max-width: 560px) {\n .dsh-github-modal-body {\n flex-direction: column;\n }\n .dsh-github-settings-nav {\n width: 100%;\n flex-direction: row;\n border-right: none;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7e0);\n overflow-x: auto;\n }\n body[data-ds-dark-theme] .dsh-github-settings-nav {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n }\n .dsh-github-settings-nav-item {\n white-space: nowrap;\n }\n}\n.dsh-github-modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 8px;\n padding: 14px 22px;\n border-top: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-modal-footer {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-radio-card {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n padding: 10px 12px;\n border-radius: 8px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n margin-bottom: 8px;\n cursor: pointer;\n transition: all 0.15s ease;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\n.dsh-github-radio-card:hover {\n border-color: var(--dsw-alias-link, #0969da);\n}\n.dsh-github-radio-card.active {\n border-color: var(--dsw-alias-link, #0969da);\n background: rgba(9, 105, 218, 0.08);\n}\nbody[data-ds-dark-theme] .dsh-github-radio-card {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-radio-card.active {\n border-color: #58a6ff;\n background: rgba(88, 166, 255, 0.12);\n}\n\n.dsh-github-select {\n width: 100%;\n padding: 8px 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 13px;\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n color-scheme: light;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-select:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\n.dsh-github-select option {\n background-color: #ffffff;\n color: #1f2328;\n padding: 6px 10px;\n}\nbody[data-ds-dark-theme] .dsh-github-select {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n color-scheme: dark;\n}\nbody[data-ds-dark-theme] .dsh-github-select:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\nbody[data-ds-dark-theme] .dsh-github-select option {\n background-color: #1e1e22;\n color: #f0f6fc;\n}\n\n.dsh-github-input {\n padding: 7px 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-size: 13px;\n outline: none;\n box-sizing: border-box;\n color-scheme: light;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n.dsh-github-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\n.dsh-github-input::placeholder {\n color: var(--dsw-alias-label-tertiary, #8c959f);\n}\nbody[data-ds-dark-theme] .dsh-github-input {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n color-scheme: dark;\n}\nbody[data-ds-dark-theme] .dsh-github-input:focus {\n border-color: #58a6ff;\n box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.2);\n}\n\n.dsh-github-cache-info-box {\n padding: 10px 12px;\n border-radius: 6px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n margin-bottom: 20px;\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-cache-info-box {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-secondary, #8c8c8c);\n}\n\n.dsh-github-about-star-box {\n padding: 12px 14px;\n border-radius: 8px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n}\nbody[data-ds-dark-theme] .dsh-github-about-star-box {\n background: var(--dsw-alias-bg-base, #161b22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-primary-btn {\n padding: 5px 14px;\n font-weight: 600;\n white-space: nowrap;\n background: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n}\n.dsh-github-primary-btn:hover {\n background: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n opacity: 0.88;\n}\nbody[data-ds-dark-theme] .dsh-github-primary-btn {\n background: #58a6ff;\n border-color: #58a6ff;\n color: #0d1117;\n}\nbody[data-ds-dark-theme] .dsh-github-primary-btn:hover {\n background: #58a6ff;\n border-color: #58a6ff;\n color: #0d1117;\n opacity: 0.88;\n}\n\n.dsh-github-radio {\n accent-color: var(--dsw-alias-link, #0969da);\n cursor: pointer;\n margin-top: 3px;\n}\nbody[data-ds-dark-theme] .dsh-github-radio {\n accent-color: #58a6ff;\n}\n\n#dsh-github-commit-dialog {\n max-width: 600px;\n width: calc(100vw - 48px);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 12px;\n padding: 0;\n box-sizing: border-box;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n}\n#dsh-github-commit-dialog::backdrop {\n background: rgba(0, 0, 0, 0.45);\n backdrop-filter: blur(2px);\n}\nbody[data-ds-dark-theme] #dsh-github-commit-dialog {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #ececec);\n box-shadow: 0 16px 36px rgba(0, 0, 0, 0.5);\n}\n.dsh-github-commit-row {\n transition: background 0.15s ease;\n}\n.dsh-github-commit-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-commit-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.08));\n}\nbody[data-ds-dark-theme] .dsh-github-commit-pre {\n background: var(--dsw-alias-bg-base, #151517) !important;\n color: #ececec !important;\n border: 1px solid #30363d !important;\n}\n.dsh-github-dialog-close-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.08)) !important;\n opacity: 1 !important;\n}\n\n.dsh-github-branch-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 2px 8px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 12px;\n border: 1px solid rgba(46, 160, 67, 0.4);\n background: rgba(46, 160, 67, 0.12);\n color: var(--dsw-alias-state-success, #2ea043);\n cursor: pointer;\n transition: all 0.15s ease;\n user-select: none;\n}\n.dsh-github-branch-btn:hover {\n background: rgba(46, 160, 67, 0.22);\n border-color: rgba(46, 160, 67, 0.6);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-btn {\n border-color: rgba(56, 139, 253, 0.4);\n background: rgba(56, 139, 253, 0.15);\n color: #58a6ff;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-btn:hover {\n background: rgba(56, 139, 253, 0.25);\n border-color: #58a6ff;\n}\n\n.dsh-github-branch-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 5px;\n width: 290px;\n max-height: 380px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 8px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-dropdown {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 8px 28px rgba(0, 0, 0, 0.5);\n}\n\n.dsh-github-branch-search {\n padding: 8px 10px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-search {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-branch-input {\n width: 100%;\n padding: 5px 8px;\n box-sizing: border-box;\n font-size: 11px;\n border-radius: 5px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-primary, #1f2328);\n outline: none;\n}\nbody[data-ds-dark-theme] .dsh-github-branch-input {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-base, #151517);\n color: #ececec;\n}\n.dsh-github-branch-input:focus {\n border-color: var(--dsw-alias-link, #0969da);\n}\n\n.dsh-github-branch-list {\n flex: 1;\n overflow-y: auto;\n max-height: 280px;\n padding: 4px 0;\n}\n.dsh-github-branch-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n font-size: 12px;\n cursor: pointer;\n transition: background 0.12s ease;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item {\n color: var(--dsw-alias-label-primary, #ececec);\n}\n.dsh-github-branch-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.dsh-github-branch-item.active {\n font-weight: 600;\n color: var(--dsw-alias-state-success, #1a7f37);\n}\nbody[data-ds-dark-theme] .dsh-github-branch-item.active {\n color: #3fb950;\n}\n\n/* 15. \u72EC\u7ACB\u6C89\u6D78\u5F0F\u6307\u5357\u5927\u7A97\u53E3 (Help Modal) \u53CC\u4E3B\u9898\u4F53\u7CFB */\n.dsh-github-help-dialog {\n width: 920px;\n max-width: 92vw;\n height: 85vh;\n max-height: 85vh;\n display: flex;\n flex-direction: column;\n border-radius: 12px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n box-shadow: 0 24px 64px rgba(0, 0, 0, 0.22);\n color: var(--dsw-alias-label-primary, #1f2328);\n font-family: var(--dsw-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n overflow: hidden;\n box-sizing: border-box;\n}\nbody[data-ds-dark-theme] .dsh-github-help-dialog {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n box-shadow: 0 24px 64px rgba(0, 0, 0, 0.65);\n}\n\n.dsh-github-help-header {\n padding: 16px 22px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-shrink: 0;\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-help-header {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-nav {\n display: flex;\n gap: 8px;\n padding: 10px 22px;\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.05));\n border-bottom: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-nav {\n background: rgba(56, 139, 253, 0.08);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-tab-btn {\n padding: 6px 14px;\n font-size: 13px;\n font-weight: 500;\n border-radius: 6px;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n.dsh-github-help-tab-btn:hover {\n background: rgba(0, 0, 0, 0.05);\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn:hover {\n background: rgba(255, 255, 255, 0.08);\n color: #f0f6fc;\n}\n.dsh-github-help-tab-btn.active {\n font-weight: 600;\n background: var(--dsw-alias-link, #0969da);\n color: #ffffff !important;\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-help-tab-btn.active {\n background: #1f6feb;\n border-color: #1f6feb;\n}\n\n.dsh-github-help-scroll-body {\n flex: 1;\n overflow-y: auto;\n padding: 22px;\n box-sizing: border-box;\n}\n.dsh-github-help-scroll-body::-webkit-scrollbar {\n width: 6px;\n}\n.dsh-github-help-scroll-body::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.15);\n border-radius: 3px;\n}\nbody[data-ds-dark-theme] .dsh-github-help-scroll-body::-webkit-scrollbar-thumb {\n background: #30363d;\n}\n\n.dsh-github-help-card {\n padding: 16px 18px;\n margin-bottom: 14px;\n border-radius: 8px;\n background: var(--dsw-alias-bg-module-platform, rgba(9, 105, 218, 0.04));\n border: 1px solid var(--dsw-alias-border-l2, rgba(9, 105, 218, 0.18));\n transition: border-color 0.15s ease;\n}\nbody[data-ds-dark-theme] .dsh-github-help-card {\n background: rgba(56, 139, 253, 0.05);\n border-color: rgba(56, 139, 253, 0.18);\n}\n.dsh-github-help-card:hover {\n border-color: rgba(9, 105, 218, 0.35);\n}\nbody[data-ds-dark-theme] .dsh-github-help-card:hover {\n border-color: rgba(56, 139, 253, 0.4);\n}\n\n.dsh-github-prompt-box {\n padding: 10px 14px;\n margin-bottom: 8px;\n border-radius: 6px;\n background: #f6f8fa;\n border: 1px solid #d0d7de;\n font-family: ui-monospace, SFMono-Regular, \"SF Mono\", Menlo, Consolas, monospace;\n font-size: 12px;\n line-height: 1.5;\n color: var(--dsw-alias-label-primary, #1f2328);\n word-break: break-all;\n}\nbody[data-ds-dark-theme] .dsh-github-prompt-box {\n background: #0d1117;\n border-color: #30363d;\n color: #79c0ff;\n}\n\n.dsh-github-help-step-badge {\n width: 28px;\n height: 28px;\n border-radius: 50%;\n background: var(--dsw-alias-link, #0969da);\n color: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-weight: 700;\n font-size: 14px;\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-step-badge {\n background: #1f6feb;\n box-shadow: 0 0 10px rgba(31, 111, 235, 0.35);\n}\n\n.dsh-github-help-footer {\n padding: 12px 22px;\n border-top: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n display: flex;\n justify-content: space-between;\n align-items: center;\n background: var(--dsw-alias-bg-base, #ffffff);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-help-footer {\n background: var(--dsw-alias-bg-layer-2, #1c2128);\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-help-title {\n font-weight: 600;\n font-size: 14px;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-help-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n.dsh-github-help-desc {\n font-size: 12px;\n color: var(--dsw-alias-label-secondary, #656d76);\n line-height: 1.5;\n}\nbody[data-ds-dark-theme] .dsh-github-help-desc {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n\n/* 16. \u672A\u63D0\u4EA4\u6587\u4EF6\u6E05\u5355\u4EA4\u4E92\u4E0E Git Diff \u5BF9\u6BD4\u89C6\u56FE */\n.dsh-github-dirty-item {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 6px;\n border-radius: 6px;\n cursor: pointer;\n transition: background-color 0.15s ease;\n user-select: none;\n}\n.dsh-github-dirty-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-dirty-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.dsh-github-dirty-item:active {\n background: var(--dsw-alias-interactive-bg-active, rgba(0, 0, 0, 0.08));\n}\nbody[data-ds-dark-theme] .dsh-github-dirty-item:active {\n background: rgba(255, 255, 255, 0.12);\n}\n\n.dsh-github-inline-diff-view {\n animation: dsh-github-fade-in 0.15s ease-out;\n}\n@keyframes dsh-github-fade-in {\n from { opacity: 0; transform: translateY(2px); }\n to { opacity: 1; transform: translateY(0); }\n}\nbody[data-ds-dark-theme] .dsh-github-inline-diff-content {\n background-color: var(--dsw-alias-bg-layer-2, #1c2128) !important;\n border-color: var(--dsw-alias-border-l1, #30363d) !important;\n}\n\n/* 17. \u63D0\u4EA4\u8BE6\u60C5\u6587\u4EF6\u53D8\u66F4\u7EDF\u8BA1\u7ED3\u6784\u5316\u9AD8\u4EAE */\n.dsh-github-stat-list {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-stat-list {\n border-color: var(--dsw-alias-border-l1, #30363d) !important;\n background: var(--dsw-alias-bg-layer-2, #1c2128) !important;\n}\n\n.dsh-github-stat-row {\n transition: background-color 0.15s ease;\n}\n.dsh-github-stat-row:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.04));\n}\nbody[data-ds-dark-theme] .dsh-github-stat-row:hover {\n background: rgba(255, 255, 255, 0.06);\n}\n\n/* 18. \u53F3\u4FA7\u680F\u4E0A\u65B9\u5361\u7247\u6298\u53E0/\u5C55\u5F00\u52A8\u753B\u4E0E\u6309\u94AE\u6837\u5F0F */\n.dsh-github-header-cards-collapsed {\n display: none !important;\n}\n\n.dsh-github-btn-sm.active {\n background: var(--dsw-alias-state-attention-subtle, rgba(234, 179, 8, 0.15)) !important;\n color: var(--dsw-alias-state-attention-primary, #9a6700) !important;\n border-color: var(--dsw-alias-state-attention-primary, #d29922) !important;\n}\nbody[data-ds-dark-theme] .dsh-github-btn-sm.active {\n background: rgba(234, 179, 8, 0.2) !important;\n color: #f0b72f !important;\n border-color: #d29922 !important;\n}\n\n/* 19. \u5173\u8054\u4ED3\u5E93\u5207\u6362\u5668 (RepoSelectorDropdown) */\n.dsh-github-repo-switch-trigger {\n display: inline-flex;\n align-items: center;\n gap: 3px;\n padding: 1px 7px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 12px;\n border: 1px solid rgba(130, 80, 223, 0.35);\n background: rgba(130, 80, 223, 0.1);\n color: #8250df;\n cursor: pointer;\n transition: all 0.15s ease;\n user-select: none;\n line-height: 16px;\n}\n.dsh-github-repo-switch-trigger:hover {\n background: rgba(130, 80, 223, 0.2);\n border-color: rgba(130, 80, 223, 0.6);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-switch-trigger {\n border-color: rgba(163, 113, 247, 0.4);\n background: rgba(163, 113, 247, 0.15);\n color: #a371f7;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-switch-trigger:hover {\n background: rgba(163, 113, 247, 0.25);\n border-color: #a371f7;\n}\n\n.dsh-github-repo-dropdown {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 5px;\n width: 320px;\n max-height: 380px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 8px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-color: var(--dsw-alias-border-l1, #30363d);\n box-shadow: 0 8px 28px rgba(0, 0, 0, 0.5);\n}\n\n.dsh-github-repo-dropdown-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 12px;\n font-size: 11px;\n font-weight: 600;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n color: var(--dsw-alias-label-secondary, #57606a);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n\n.dsh-github-repo-dropdown-list {\n overflow-y: auto;\n max-height: 260px;\n padding: 4px 0;\n}\n\n.dsh-github-repo-item {\n padding: 7px 12px;\n font-size: 12px;\n cursor: pointer;\n transition: background 0.12s ease;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-repo-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(255, 255, 255, 0.06));\n}\n.dsh-github-repo-item.selected {\n background: rgba(9, 105, 218, 0.08);\n}\nbody[data-ds-dark-theme] .dsh-github-repo-item.selected {\n background: rgba(56, 139, 253, 0.15);\n}\n\n.dsh-github-repo-dropdown-footer {\n padding: 6px 10px;\n font-size: 10px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n color: var(--dsw-alias-label-tertiary, #656d76);\n line-height: 1.4;\n}\nbody[data-ds-dark-theme] .dsh-github-repo-dropdown-footer {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n color: var(--dsw-alias-label-tertiary, #8b949e);\n}\n\n.dsh-github-switch-quicklink {\n font-size: 11px;\n cursor: pointer;\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n font-weight: 500;\n display: inline-flex;\n align-items: center;\n gap: 3px;\n margin-left: 6px;\n padding: 1px 6px;\n border-radius: 4px;\n background: rgba(9, 105, 218, 0.08);\n border: 1px solid rgba(9, 105, 218, 0.2);\n}\n.dsh-github-switch-quicklink:hover {\n text-decoration: none;\n background: rgba(9, 105, 218, 0.16);\n border-color: rgba(9, 105, 218, 0.4);\n}\nbody[data-ds-dark-theme] .dsh-github-switch-quicklink {\n color: #58a6ff;\n background: rgba(56, 139, 253, 0.15);\n border-color: rgba(56, 139, 253, 0.3);\n}\nbody[data-ds-dark-theme] .dsh-github-switch-quicklink:hover {\n background: rgba(56, 139, 253, 0.25);\n border-color: rgba(56, 139, 253, 0.5);\n}\n\n/* 20. PR \u5728\u7EBF\u8BE6\u60C5\u4E0E\u4EE3\u7801\u5BA1\u9605\u5DE5\u4F5C\u53F0 (PrDetailModal) */\n.dsh-github-pr-modal-dialog {\n width: 95% !important;\n max-width: 1040px !important;\n height: 88vh !important;\n max-height: 88vh !important;\n display: flex !important;\n flex-direction: column !important;\n overflow: hidden !important;\n padding: 0 !important;\n}\n\n.dsh-github-pr-modal-header {\n padding: 12px 16px !important;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n.dsh-github-pr-modal-tabs {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 6px 16px;\n background: var(--dsw-alias-bg-base, #ffffff);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-modal-tabs {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-tab-btn {\n padding: 5px 12px;\n font-size: 12px;\n font-weight: 500;\n border-radius: 6px;\n border: 1px solid transparent;\n background: transparent;\n color: var(--dsw-alias-label-secondary, #656d76);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-pr-tab-btn:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n.dsh-github-pr-tab-btn.active {\n background: var(--dsw-alias-interactive-bg-active, rgba(9, 105, 218, 0.1));\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n border-color: rgba(9, 105, 218, 0.25);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn:hover {\n background: rgba(255, 255, 255, 0.06);\n color: #f0f6fc;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-tab-btn.active {\n background: rgba(56, 139, 253, 0.15);\n color: #58a6ff;\n border-color: rgba(56, 139, 253, 0.4);\n}\n\n.dsh-github-pr-conversation-pane {\n padding: 16px !important;\n overflow-y: auto !important;\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 12px;\n /* \u6EDA\u5230\u8FB9\u754C\u65F6\u4E0D\u628A\u6EDA\u52A8\u4F20\u7ED9\u5F39\u7A97\u5916\u5C42\uFF0C\u907F\u514D\u6574\u9875\u8DDF\u7740\u6EDA */\n overscroll-behavior: contain;\n}\n\n.dsh-github-pr-checks-bar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-checks-bar {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-body-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n /*\n * flex: 0 0 auto \u662F\u6EDA\u52A8\u80FD\u5426\u5DE5\u4F5C\u7684\u5173\u952E\u3002\n * \u7236\u5BB9\u5668 .dsh-github-pr-conversation-pane \u662F flex-direction: column\uFF0C\n * flex \u5B50\u9879\u9ED8\u8BA4 flex-shrink: 1 \u2014\u2014 \u5185\u5BB9\u53D8\u957F\u65F6\u4F1A\u88AB\u300C\u538B\u7F29\u300D\u800C\u4E0D\u662F\u6491\u5F00\u7236\u5BB9\u5668\uFF0C\n * \u7236\u5BB9\u5668\u7684 overflow-y: auto \u4E8E\u662F\u6C38\u8FDC\u4E0D\u89E6\u53D1\uFF0C\u957F\u5185\u5BB9\u88AB\u76F4\u63A5\u88C1\u6389\u3002\n * \u7981\u6B62\u6536\u7F29\u540E\u5361\u7247\u9AD8\u5EA6\u7531\u5185\u5BB9\u51B3\u5B9A\uFF0C\u7236\u5BB9\u5668\u624D\u80FD\u771F\u6B63\u6EDA\u52A8\u3002\n */\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-body-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-comment-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n margin-bottom: 10px;\n /* \u540C body-card\uFF1A\u7981\u6B62\u6536\u7F29\uFF0C\u5426\u5219\u7236\u5BB9\u5668\u6EDA\u4E0D\u52A8\uFF08\u89C1\u4E0A\u65B9\u6CE8\u91CA\uFF09 */\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-comment-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-comment-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 6px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-comment-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-pr-files-pane {\n display: flex;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n.dsh-github-pr-file-list {\n width: 280px;\n flex-shrink: 0;\n border-right: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n overflow-y: auto;\n padding: 6px 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-list {\n border-right-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n/*\n * \u62D6\u62FD\u5206\u9694\u6761\u3002\u5BBD\u5EA6 6px \u800C\u975E\u5E38\u89C1\u7684 1px\uFF1A\u7EC6\u6761\u51E0\u4E4E\u70B9\u4E0D\u4E2D\uFF0C\n * \u662F\u5206\u680F\u62D6\u62FD\u6700\u5E38\u89C1\u7684\u53EF\u7528\u6027\u7F3A\u9677\u3002\n */\n.dsh-github-pr-splitter {\n position: relative;\n flex-shrink: 0;\n width: 6px;\n cursor: col-resize;\n background: var(--dsw-alias-border-l2, #e1e4e8);\n transition: background 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.dsh-github-pr-splitter:hover {\n background: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter {\n background: var(--dsw-alias-border-l1, #30363d);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter:hover {\n background: #58a6ff;\n}\n\n/* \u6298\u53E0\u6309\u94AE\u8D34\u5728\u5206\u9694\u6761\u4E2D\u90E8\uFF0C\u59CB\u7EC8\u53EF\u89C1\u2014\u2014\u6298\u53E0\u540E\u8FD9\u662F\u552F\u4E00\u7684\u89C6\u89C9\u6062\u590D\u63D0\u793A */\n.dsh-github-pr-splitter-toggle {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 16px;\n height: 32px;\n padding: 0;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n border-radius: 3px;\n background: var(--dsw-alias-bg-base, #ffffff);\n color: var(--dsw-alias-label-secondary, #656d76);\n font-size: 8px;\n line-height: 1;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n}\n.dsh-github-pr-splitter-toggle:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.06));\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter-toggle {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-splitter-toggle:hover {\n background: rgba(255, 255, 255, 0.08);\n color: #f0f6fc;\n}\n\n/*\n * PR \u5361\u7247\u6807\u9898\u884C\uFF1A\u6807\u9898\u5728\u5DE6\u3001\u8DF3\u8F6C\u6309\u94AE\u9489\u5728\u6700\u53F3\uFF0C\u4E14\u4E25\u683C\u4FDD\u6301\u540C\u4E00\u884C\u3002\n *\n * \u4E3A\u4EC0\u4E48\u9700\u8981\u8FD9\u4E2A\u5BB9\u5668\uFF1A.dsh-github-item \u672C\u8EAB\u662F flex-direction: column\uFF0C\n * \u82E5\u628A\u6309\u94AE\u76F4\u63A5\u653E\u8FDB\u53BB\uFF0C\u5B83\u4F1A\u72EC\u5360\u4E00\u6574\u884C\u3001\u53EA\u5269\u4E00\u4E2A\u5B64\u96F6\u96F6\u7684 \u2197 \u5B57\u7B26\uFF0C\n * \u65E2\u4E11\u4E5F\u8BA9\u7528\u6237\u770B\u4E0D\u51FA\u8FD9\u662F\u53EF\u70B9\u7684\u5165\u53E3\u3002\u5305\u8FDB\u6A2A\u5411 flex \u884C\u5373\u53EF\u89E3\u51B3\u3002\n */\n.dsh-github-pr-title-row {\n display: flex;\n align-items: center; /* \u6807\u9898\u5DF2\u5F3A\u5236\u5355\u884C\uFF0C\u5C45\u4E2D\u5BF9\u9F50\u5373\u300C\u540C\u4E00\u884C\u300D */\n gap: 10px;\n width: 100%;\n min-width: 0;\n}\n.dsh-github-pr-title-row .dsh-github-item-title {\n /*\n * flex: 0 1 auto \u2014\u2014 \u6807\u9898\u6309\u81EA\u8EAB\u5185\u5BB9\u5BBD\u5EA6\u5360\u636E\uFF0C\u53EF\u6536\u7F29\uFF08shrink 1\uFF09\u4F46\u4E0D\u6491\u6EE1\uFF08grow 0\uFF09\u3002\n *\n * \u4E3A\u4EC0\u4E48\u4E0D\u662F flex: 1 1 0%\uFF1A\n * \u6807\u9898\u884C\u91CC\u73B0\u5728\u8FD8\u6709\u72B6\u6001\u5FBD\u7AE0\uFF08MERGED/CLOSED\uFF09\u8DDF\u5728\u6807\u9898\u53F3\u4FA7\u3002\n * \u82E5\u6807\u9898 grow \u6491\u6EE1\u5168\u90E8\u5269\u4F59\u7A7A\u95F4\uFF0C\u5FBD\u7AE0\u4F1A\u88AB\u9876\u5230\u6700\u53F3\u8FB9\u7D27\u8D34\u300CGitHub \u2197\u300D\u6309\u94AE\uFF0C\n * \u770B\u8D77\u6765\u50CF\u4E24\u4E2A\u53F3\u8FB9\u63A7\u4EF6\u6324\u5728\u4E00\u8D77\uFF0C\u800C\u4E0D\u662F\u300C\u6807\u9898 \u2192 \u72B6\u6001 \u2192 \u6309\u94AE\u300D\u7684\u9605\u8BFB\u987A\u5E8F\u3002\n * \u6539\u6210\u4E0D\u6491\u6EE1\u540E\uFF0C\u5FBD\u7AE0\u81EA\u7136\u7D27\u8DDF\u5728\u6807\u9898\u6587\u5B57\u4E4B\u540E\uFF1B\n * \u300C\u6309\u94AE\u8D34\u6700\u53F3\u300D\u7531\u6309\u94AE\u81EA\u8EAB\u7684 margin-left: auto \u4FDD\u8BC1\uFF0C\u4E0E\u6B64\u5904\u65E0\u5173\u3002\n */\n flex: 0 1 auto;\n /*\n * min-width: 0 \u662F\u5173\u952E\u3002flex \u5B50\u9879\u9ED8\u8BA4 min-width: auto\uFF0C\n * PR \u6807\u9898\u7ECF\u5E38\u5F88\u957F\uFF0C\u4F1A\u6491\u7834\u5BB9\u5668\u628A\u53F3\u4FA7\u5FBD\u7AE0\u4E0E\u6309\u94AE\u9876\u51FA\u53EF\u89C6\u533A\u2014\u2014\n * \u6CA1\u6709\u8FD9\u4E00\u884C\uFF0Ctext-overflow: ellipsis \u6839\u672C\u4E0D\u4F1A\u751F\u6548\u3002\n */\n min-width: 0;\n /*\n * white-space: nowrap + ellipsis\uFF1A\u6807\u9898\u53EA\u5360\u4E00\u884C\u3002\n * \u82E5\u5141\u8BB8\u6362\u884C\uFF0C\u6807\u9898\u53D8\u6210\u4E24\u4E09\u884C\u540E\u5FBD\u7AE0\u4E0E\u6309\u94AE\u4F1A\u6D6E\u5728\u9996\u884C\u53F3\u4FA7\uFF0C\n * \u89C6\u89C9\u4E0A\u4E0E\u6587\u5B57\u672B\u884C\u9519\u4F4D\u2014\u2014\u7528\u6237\u770B\u5230\u7684\u5C31\u662F\u300C\u6309\u94AE\u8DD1\u5230\u4E0A\u9762\u53BB\u4E86\u300D\u3002\n * \u5B8C\u6574\u6807\u9898\u901A\u8FC7 title \u5C5E\u6027\u60AC\u6D6E\u67E5\u770B\uFF0C\u8FD9\u4E5F\u662F GitHub \u81EA\u8EAB\u7684\u505A\u6CD5\u3002\n */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n /* \u6807\u9898\u4E0E\u6309\u94AE\u4E4B\u95F4\u9760 flex \u5206\u914D\u7559\u767D\uFF0C\u4E0D\u989D\u5916\u52A0 margin */\n text-decoration: none;\n}\n\n/*\n * \u300CGitHub \u2197\u300D\u8DF3\u8F6C\u6309\u94AE\u3002\n *\n * \u89C6\u89C9\u89C4\u683C\u6309\u622A\u56FE\u53CD\u9988\u91CD\u505A\uFF1A\u539F\u5148\u662F font-size 11px / padding 2px 8px\uFF0C\n * \u5728\u6DF1\u8272\u80CC\u666F\u4E0A\u53C8\u77EE\u53C8\u5C0F\u3001\u4E0E 13px \u6807\u9898\u4E0D\u5339\u914D\uFF0C\u770B\u8D77\u6765\u50CF\u8D34\u5728\u6587\u5B57\u4E0A\u7684\u6807\u7B7E\u3002\n * \u73B0\u5728\u653E\u5927\u5230\u4E0E\u6807\u9898\u540C\u4E00\u89C6\u89C9\u91CF\u7EA7\uFF0C\u5E76\u7ED9\u51FA\u660E\u786E\u7684\u60AC\u6D6E\u53CD\u9988\u3002\n */\n.dsh-github-pr-gh-btn {\n flex-shrink: 0; /* \u6C38\u4E0D\u538B\u7F29\uFF0C\u5B81\u53EF\u8BA9\u6807\u9898\u7701\u7565 */\n /*\n * margin-left: auto \u662F\u53CC\u4FDD\u9669\uFF1A\u5373\u4F7F\u6807\u9898\u56E0\u67D0\u79CD\u539F\u56E0\u6CA1\u5403\u6EE1 flex \u7A7A\u95F4\n * \uFF08\u5982\u7236\u5BB9\u5668\u5BBD\u5EA6\u5F02\u5E38\u3001flex-basis \u88AB\u8986\u76D6\uFF09\uFF0C\u6309\u94AE\u4ECD\u4F1A\u88AB\u63A8\u5230\u6700\u53F3\u4FA7\uFF0C\n * \u800C\u4E0D\u662F\u7D27\u8D34\u5728\u6807\u9898\u6587\u5B57\u5C41\u80A1\u540E\u9762\u3002\n */\n margin-left: auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n font-size: 12px;\n font-weight: 500;\n line-height: 18px;\n padding: 3px 10px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n text-decoration: none;\n white-space: nowrap;\n transition: all 0.15s ease;\n}\n.dsh-github-pr-gh-btn:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n background: var(--dsw-alias-interactive-bg-hover, #eaeef2);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-gh-btn {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-gh-btn:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n background: rgba(56, 139, 253, 0.15);\n}\n\n.dsh-github-pr-file-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 6px 12px;\n font-size: 11px;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n cursor: pointer;\n color: var(--dsw-alias-label-primary, #1f2328);\n transition: background 0.12s ease;\n}\n.dsh-github-pr-file-item:hover {\n background: var(--dsw-alias-interactive-bg-hover, rgba(0, 0, 0, 0.05));\n}\n.dsh-github-pr-file-item.selected {\n background: rgba(9, 105, 218, 0.1);\n color: var(--dsw-alias-link, #0969da);\n font-weight: 600;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item:hover {\n background: rgba(255, 255, 255, 0.06);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-file-item.selected {\n background: rgba(56, 139, 253, 0.18);\n color: #58a6ff;\n}\n\n.dsh-github-pr-diff-viewer {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-diff-viewer {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-pr-diff-toolbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-diff-toolbar {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n/* \u884C\u7EA7\u5BA1\u67E5\u8BC4\u8BBA\uFF1A\u4E0E\u5BF9\u8BDD\u533A\u8BC4\u8BBA\u89C6\u89C9\u533A\u5206\uFF08\u5DE6\u4FA7\u7D2B\u8272\u63CF\u8FB9\uFF0C\u6697\u793A\u300C\u6302\u5728\u4EE3\u7801\u4E0A\u300D\uFF09 */\n.dsh-github-pr-line-comments {\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n padding: 10px 12px 14px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comments {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n.dsh-github-pr-line-comments-title {\n font-size: 11px;\n font-weight: 600;\n margin-bottom: 8px;\n color: var(--dsw-alias-label-secondary, #656d76);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comments-title {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n.dsh-github-pr-line-comment-item {\n border-left: 3px solid rgba(130, 80, 223, 0.5);\n border-radius: 4px;\n background: var(--dsw-alias-bg-base, #ffffff);\n padding: 8px 10px;\n margin-bottom: 8px;\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comment-item {\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n border-left-color: rgba(163, 113, 247, 0.6);\n}\n.dsh-github-pr-line-comment-head {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n font-size: 11px;\n margin-bottom: 5px;\n}\n.dsh-github-pr-line-comment-body {\n font-size: 12px;\n line-height: 1.6;\n white-space: pre-wrap;\n word-break: break-word;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-pr-line-comment-body {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* 21. PR \u5F39\u7A97\u5185\u7684 Markdown \u6392\u7248 (markdown-lite) */\n.dsh-github-md-body {\n padding: 12px;\n font-size: 12px;\n line-height: 1.7;\n word-break: break-word;\n color: var(--dsw-alias-label-primary, #1f2328);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* \u6807\u9898\uFF1AGitHub \u7684\u5C42\u7EA7\u5DEE\u8DDD\u6BD4\u6D4F\u89C8\u5668\u9ED8\u8BA4\u5C0F\uFF0C\u907F\u514D h3 \u8FC7\u5927\u6491\u7834\u5361\u7247 */\n.dsh-github-md-body .dsh-github-md-heading {\n margin: 14px 0 8px 0;\n font-weight: 600;\n line-height: 1.4;\n}\n.dsh-github-md-body h1.dsh-github-md-heading { font-size: 17px; }\n.dsh-github-md-body h2.dsh-github-md-heading { font-size: 15px; }\n.dsh-github-md-body h3.dsh-github-md-heading { font-size: 14px; }\n.dsh-github-md-body h4.dsh-github-md-heading { font-size: 13px; }\n.dsh-github-md-body h5.dsh-github-md-heading,\n.dsh-github-md-body h6.dsh-github-md-heading { font-size: 12px; opacity: 0.9; }\n.dsh-github-md-body > .dsh-github-md-heading:first-child {\n margin-top: 0;\n}\n\n.dsh-github-md-body .dsh-github-md-p {\n margin: 0 0 10px 0;\n}\n.dsh-github-md-body .dsh-github-md-p:last-child {\n margin-bottom: 0;\n}\n\n/* \u884C\u5185\u4EE3\u7801\uFF1A\u7528\u8FB9\u6846 + \u5E95\u8272\u4E0E\u6B63\u6587\u533A\u5206\uFF0C\u6BD4\u5355\u7EAF\u6539\u5B57\u4F53\u66F4\u6613\u8FA8\u8BC6 */\n.dsh-github-md-body .dsh-github-md-inline-code {\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n font-size: 0.92em;\n padding: 1px 5px;\n border-radius: 4px;\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.06));\n border: 1px solid var(--dsw-alias-border-subtle, rgba(0, 0, 0, 0.08));\n word-break: break-all;\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-inline-code {\n background: rgba(255, 255, 255, 0.1);\n border-color: rgba(255, 255, 255, 0.12);\n}\n\n/* \u56F4\u680F\u4EE3\u7801\u5757\uFF1A\u6A2A\u5411\u53EF\u6EDA\uFF0C\u7EDD\u4E0D\u6362\u884C\u2014\u2014\u6362\u884C\u4F1A\u6BC1\u6389\u7F29\u8FDB\u8BED\u4E49 */\n.dsh-github-md-body .dsh-github-md-pre {\n margin: 10px 0;\n padding: 10px 12px;\n border-radius: 6px;\n overflow-x: auto;\n max-height: 420px;\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.04));\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-pre {\n background: rgba(0, 0, 0, 0.3);\n border-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-md-body .dsh-github-md-pre code {\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n font-size: 11px;\n line-height: 1.55;\n white-space: pre;\n display: block;\n}\n\n.dsh-github-md-body .dsh-github-md-list {\n margin: 8px 0;\n padding-left: 22px;\n}\n.dsh-github-md-body .dsh-github-md-list li {\n margin: 4px 0;\n}\n.dsh-github-md-body .dsh-github-md-task {\n list-style: none;\n margin-left: -18px;\n display: flex;\n align-items: flex-start;\n gap: 6px;\n}\n.dsh-github-md-body .dsh-github-md-checkbox {\n flex-shrink: 0;\n opacity: 0.8;\n}\n\n.dsh-github-md-body .dsh-github-md-quote {\n margin: 10px 0;\n padding: 6px 12px;\n border-left: 3px solid var(--dsw-alias-border-l3, #d0d7de);\n color: var(--dsw-alias-label-secondary, #656d76);\n background: var(--dsw-alias-bg-subtle, rgba(0, 0, 0, 0.02));\n border-radius: 0 4px 4px 0;\n}\n\n.dsh-github-md-body .dsh-github-md-hr {\n margin: 14px 0;\n border: none;\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-hr {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-md-body .dsh-github-md-link {\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n}\n.dsh-github-md-body .dsh-github-md-link:hover {\n text-decoration: underline;\n}\nbody[data-ds-dark-theme] .dsh-github-md-body .dsh-github-md-link {\n color: #58a6ff;\n}\n\n/* \u6298\u53E0/\u5C55\u5F00\u6309\u94AE\uFF1A\u4F4E\u8C03\u7684\u6587\u672C\u6309\u94AE\uFF0C\u4E0D\u62A2\u6B63\u6587\u89C6\u89C9 */\n.dsh-github-md-expand-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n margin: 0 0 4px 12px;\n padding: 3px 8px;\n font-size: 11px;\n font-weight: 500;\n border-radius: 5px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n cursor: pointer;\n transition: all 0.15s ease;\n}\n.dsh-github-md-expand-btn:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-md-expand-btn {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-md-expand-btn:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* 22. Issue \u5728\u7EBF\u67E5\u770B\u5F39\u7A97 (IssueDetailModal)\n *\n * \u4E3A\u4EC0\u4E48\u662F\u5355\u5217\u800C\u4E0D\u662F PR \u90A3\u6837\u7684\u53CC\u680F\uFF1AIssue \u6CA1\u6709 diff \u8F7D\u8377\uFF0C\u6CA1\u6709\u9700\u8981\u5E76\u6392\n * \u5BF9\u7167\u7684\u7B2C\u4E8C\u4E2A\u4FE1\u606F\u6E90\u3002\u628A\u5BBD\u5EA6\u5168\u90E8\u8BA9\u7ED9 Markdown \u6B63\u6587\uFF0C\u884C\u5BBD\u66F4\u63A5\u8FD1 80 \u5B57\u7B26\u7684\n * \u53EF\u8BFB\u533A\u95F4\uFF0C\u957F\u8BA8\u8BBA\u8BFB\u8D77\u6765\u6BD4\u6324\u5728\u5DE6\u534A\u8FB9\u8212\u670D\u5F97\u591A\u3002\n */\n.dsh-github-issue-modal-dialog {\n width: 92% !important;\n max-width: 880px !important;\n height: 84vh !important;\n max-height: 84vh !important;\n display: flex !important;\n flex-direction: column !important;\n overflow: hidden !important;\n padding: 0 !important;\n}\n\n.dsh-github-issue-modal-header {\n padding: 12px 16px !important;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n.dsh-github-issue-conversation-pane {\n padding: 16px !important;\n overflow-y: auto !important;\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 12px;\n /* \u6EDA\u5230\u8FB9\u754C\u4E0D\u628A\u6EDA\u52A8\u4F20\u7ED9\u5F39\u7A97\u5916\u5C42\uFF0C\u907F\u514D\u6574\u9875\u8DDF\u7740\u6EDA */\n overscroll-behavior: contain;\n}\n\n/* \u5143\u6570\u636E\u6761\uFF1A\u6807\u7B7E/\u6307\u6D3E\u4EBA/\u91CC\u7A0B\u7891/\u5173\u8054 PR \u5168\u90E8\u4EE5\u80F6\u56CA\u5448\u73B0\uFF0C\u4E00\u884C\u4E0D\u591F\u81EA\u7136\u6362\u884C */\n.dsh-github-issue-meta {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n}\n.dsh-github-issue-chip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 2px 8px;\n border-radius: 999px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-secondary, #57606a);\n font-size: 11px;\n line-height: 18px;\n white-space: nowrap;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n/* \u6807\u7B7E\u80F6\u56CA\u81EA\u8EAB\u5E26 label \u8272\uFF08\u884C\u5185 background/borderColor \u8986\u76D6\uFF09\uFF0C\n * \u8FD9\u91CC\u7684\u7C7B\u53EA\u7528\u4E8E\u8272\u70B9\u4E0E\u6587\u5B57\u5BF9\u5176\uFF0C\u4E0D\u8BBE\u80CC\u666F\u4EE5\u514D\u884C\u5185\u6837\u5F0F\u5931\u6548\u65F6\u53D8\u6210\u7070\u5757 */\n.dsh-github-issue-label-chip {\n color: var(--dsw-alias-label-primary, #1f2328);\n}\n/* \u903E\u671F\u91CC\u7A0B\u7891\uFF1A\u7528\u9519\u8BEF\u8272\u63CF\u8FB9\u63D0\u793A\u300C\u8FD9\u6761\u5DF2\u7ECF\u8FC7\u671F\u4E86\u300D\uFF0C\u5426\u5219\u548C\u6B63\u5E38 milestone \u957F\u5F97\u4E00\u6837 */\n.dsh-github-issue-chip-overdue {\n border-color: rgba(207, 34, 46, 0.5);\n color: var(--dsw-alias-state-error-primary, #cf222e);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip-overdue {\n border-color: rgba(248, 81, 73, 0.5);\n color: #f85149;\n}\n.dsh-github-issue-label-dot {\n width: 7px;\n height: 7px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n/* \u53EF\u70B9\u51FB\u7684\u80F6\u56CA\uFF08\u56FE\u7247\u6E05\u5355\u5F00\u5173\u3001\u5173\u8054 PR \u5916\u94FE\uFF09\u5FC5\u987B\u6709 hover \u53CD\u9988\uFF0C\u5426\u5219\u770B\u4E0D\u51FA\u53EF\u70B9 */\n.dsh-github-issue-chip-btn,\n.dsh-github-issue-chip-link {\n cursor: pointer;\n text-decoration: none;\n font-family: inherit;\n transition: border-color 0.15s ease, color 0.15s ease;\n}\n.dsh-github-issue-chip-btn:hover,\n.dsh-github-issue-chip-link:hover {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-label-chip {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-chip-btn:hover,\nbody[data-ds-dark-theme] .dsh-github-issue-chip-link:hover {\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n/* \u56FE\u7247\u6E05\u5355\uFF1A\u5C55\u5F00\u540E\u9010\u884C\u5217\u51FA\u5916\u94FE\uFF0C\u4E0D\u4E0E\u6B63\u6587\u6DF7\u6392 */\n.dsh-github-issue-image-badge {\n display: inline-flex;\n flex-direction: column;\n gap: 6px;\n max-width: 100%;\n}\n.dsh-github-issue-image-links {\n display: flex;\n flex-direction: column;\n gap: 3px;\n padding: 6px 8px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-base, #ffffff);\n}\nbody[data-ds-dark-theme] .dsh-github-issue-image-links {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n.dsh-github-issue-image-link {\n font-size: 11px;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n color: var(--dsw-alias-link, #0969da);\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dsh-github-issue-image-link:hover {\n text-decoration: underline;\n}\n\n/* \u6B63\u6587\u4E0E\u8BC4\u8BBA\u5361\u7247\uFF1A\u540C PR \u5F39\u7A97\uFF0Cflex: 0 0 auto \u662F\u6EDA\u52A8\u80FD\u5426\u5DE5\u4F5C\u7684\u524D\u63D0 */\n.dsh-github-issue-body-card,\n.dsh-github-issue-comment-card {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n /* \u7981\u6B62\u6536\u7F29\uFF1A\u7236\u5BB9\u5668\u662F column flex\uFF0C\u9ED8\u8BA4 flex-shrink:1 \u4F1A\u538B\u7F29\u5361\u7247\n * \u800C\u4E0D\u662F\u6491\u5F00\u7236\u5BB9\u5668\uFF0C\u5BFC\u81F4 overflow-y:auto \u6C38\u4E0D\u89E6\u53D1\uFF08\u957F Issue \u6EDA\u4E0D\u52A8\uFF09 */\n flex: 0 0 auto;\n}\n.dsh-github-issue-comment-card {\n margin-bottom: 10px;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-body-card,\nbody[data-ds-dark-theme] .dsh-github-issue-comment-card {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n.dsh-github-issue-comment-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n font-size: 11px;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-comment-header {\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n/* \u6B63\u6587\u5BB9\u5668\u4E0D\u52A0 padding\uFF1ACollapsibleBody \u5185\u90E8\u7684 .dsh-github-md-body \u5DF2\u6709 12px\uFF0C\n * \u53CC\u5C42\u53E0\u52A0\u4F1A\u8BA9\u6B63\u6587\u6BD4\u8BC4\u8BBA\u7F29\u8FDB\u66F4\u6DF1\uFF0C\u89C6\u89C9\u4E0A\u8BEF\u8BFB\u6210\u5F15\u7528\u5757 */\n.dsh-github-issue-body-content {\n padding: 0;\n}\n\n.dsh-github-issue-timeline-title {\n margin: 4px 0 0 0;\n font-size: 13px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-issue-timeline-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n.dsh-github-issue-empty-timeline {\n padding: 16px 0;\n text-align: center;\n font-size: 12px;\n opacity: 0.6;\n flex: 0 0 auto;\n}\n\n/* 23. Actions Run \u8BE6\u60C5\u5F39\u7A97 (RunDetailModal)\n *\n * \u4E3A\u4EC0\u4E48\u662F\u5355\u5217\u800C\u4E0D\u662F PR \u90A3\u6837\u7684\u53CC\u680F\uFF1Arun \u7684\u4FE1\u606F\u662F\u300C\u4E00\u4E32 job + \u4E00\u6761\u65E5\u5FD7\u6D41\u300D\uFF0C\n * \u5929\u7136\u6309\u7EB5\u5411\u987A\u5E8F\u9605\u8BFB\uFF0C\u6CA1\u6709\u9700\u8981\u5E76\u6392\u5BF9\u7167\u7684\u7B2C\u4E8C\u4E2A\u4FE1\u606F\u6E90\uFF08PR \u624D\u6709 diff \u53CC\u680F\uFF09\uFF1B\n * \u4F46\u5BBD\u5EA6\u4ECD\u7ED9\u5230 960px\u2014\u2014job/step \u540D\u79F0\u4E0E\u65E5\u5FD7\u884C\u90FD\u8981\u9760\u6A2A\u5411\u7A7A\u95F4\u51CF\u5C11\u6298\u884C\u3002\n *\n * \u4E3A\u4EC0\u4E48\u65E5\u5FD7\u5757\u7528 pre \u800C\u4E0D\u662F Markdown\uFF1AGitHub \u539F\u59CB\u65E5\u5FD7\u91CC\u7684 #\u3001|\u3001--- \u5206\u522B\u662F\n * shell \u6CE8\u91CA\u3001\u8868\u683C\u4E0E diff \u5206\u9694\u7B26\uFF0C\u4EA4\u7ED9 markdown-lite \u4F1A\u88AB\u5F53\u6210\u6807\u9898/\u8868\u683C\u8BED\u6CD5\uFF0C\n * \u628A\u5806\u6808\u4E0E diff \u7247\u6BB5\u6495\u788E\uFF1B\u7B49\u5BBD\u5B57\u4F53 + pre-wrap + \u81EA\u8EAB\u6EDA\u52A8\u533A\u624D\u662F\u65E5\u5FD7\u7684\u5448\u73B0\u5F62\u6001\u3002\n */\n.dsh-github-run-modal-dialog {\n width: 92% !important;\n max-width: 960px !important;\n height: 84vh !important;\n max-height: 84vh !important;\n display: flex !important;\n flex-direction: column !important;\n overflow: hidden !important;\n padding: 0 !important;\n}\n\n.dsh-github-run-modal-header {\n padding: 12px 16px !important;\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n flex-shrink: 0;\n}\nbody[data-ds-dark-theme] .dsh-github-run-modal-header {\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n}\n\n/* \u6EDA\u52A8\u5BB9\u5668\uFF1Aflex:1 \u4E0E min-height:0 \u7F3A\u4E00\u4E0D\u53EF\uFF0C\u5426\u5219 column flex \u7684\u5B50\u9879\u4F1A\u6309\u5185\u5BB9\n * \u6491\u9AD8\uFF0Coverflow-y:auto \u6C38\u8FDC\u4E0D\u89E6\u53D1\uFF08\u957F job \u5217\u8868\u6EDA\u4E0D\u52A8\uFF09 */\n.dsh-github-run-body {\n padding: 14px 16px 20px;\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 10px;\n /* \u6EDA\u5230\u8FB9\u754C\u4E0D\u628A\u6EDA\u52A8\u4F20\u7ED9\u5F39\u7A97\u5916\u5C42\uFF0C\u907F\u514D\u6574\u9875\u8DDF\u7740\u6EDA */\n overscroll-behavior: contain;\n}\n\n/* \u5143\u4FE1\u606F\u884C\uFF1A\u5206\u9694\u7B26\u4EA4\u7ED9 ::before\uFF0C\u7701\u6389\u4E00\u6279\u7EAF\u88C5\u9970\u7684\u7A7A span */\n.dsh-github-run-meta {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 6px;\n padding: 8px 16px;\n font-size: 11px;\n line-height: 18px;\n color: var(--dsw-alias-label-secondary, #57606a);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n flex: 0 0 auto;\n}\n.dsh-github-run-meta > span:not(:first-child)::before {\n content: \"\u00B7\";\n margin-right: 6px;\n opacity: 0.5;\n}\nbody[data-ds-dark-theme] .dsh-github-run-meta {\n color: var(--dsw-alias-label-secondary, #8b949e);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n\n.dsh-github-run-mono {\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n opacity: 0.9;\n}\n.dsh-github-run-degraded {\n color: var(--dsw-alias-state-warning-primary, #9a6700);\n}\nbody[data-ds-dark-theme] .dsh-github-run-degraded {\n color: #d29922;\n}\n\n/* \u5355\u4E2A job \u5361\u7247 */\n.dsh-github-run-job {\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-base, #ffffff);\n overflow: hidden;\n /* \u7981\u6B62\u6536\u7F29\uFF1A\u7236\u5BB9\u5668\u662F column flex\uFF0C\u9ED8\u8BA4 flex-shrink:1 \u4F1A\u538B\u7F29\u5361\u7247\u800C\u4E0D\u662F\u6491\u5F00\n * \u7236\u5BB9\u5668\uFF0C\u5BFC\u81F4 overflow-y:auto \u6C38\u4E0D\u89E6\u53D1 */\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-run-job {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n}\n\n/* \u6298\u53E0\u5934\u662F <button>\uFF1A\u5FC5\u987B\u6574\u6761\u91CD\u7F6E\uFF0C\u5426\u5219\u4F1A\u7EE7\u627F\u5BBF\u4E3B\u7684\u6309\u94AE\u8FB9\u6846/\u7070\u5E95/\u6587\u5B57\u5C45\u4E2D\uFF0C\n * \u4E00\u6392 job \u5C31\u53D8\u6210\u4E00\u6392\u300C\u5927\u6309\u94AE\u300D\uFF0C\u4E0E\u65E2\u6709\u5F39\u7A97\u7684\u884C\u5F0F\u6392\u7248\u5B8C\u5168\u51B2\u7A81 */\n.dsh-github-run-job-header {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n padding: 7px 10px;\n border: none;\n background: transparent;\n cursor: pointer;\n text-align: left;\n font-family: inherit;\n font-size: 12px;\n line-height: 18px;\n color: var(--dsw-alias-label-primary, #1f2328);\n border-radius: 6px;\n transition: background 0.15s ease;\n}\n.dsh-github-run-job-header:hover {\n background: var(--dsw-alias-interactive-bg-hover, #eaeef2);\n}\nbody[data-ds-dark-theme] .dsh-github-run-job-header {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-run-job-header:hover {\n background: rgba(56, 139, 253, 0.12);\n}\n.dsh-github-run-caret {\n flex-shrink: 0;\n width: 10px;\n font-size: 10px;\n opacity: 0.65;\n}\n.dsh-github-run-job-name {\n flex: 1 1 auto;\n min-width: 0;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dsh-github-run-failed-count {\n flex-shrink: 0;\n font-size: 11px;\n opacity: 0.6;\n white-space: nowrap;\n}\n/* \u6709\u5931\u8D25\u6B65\u9AA4\u65F6\u70B9\u6210\u9519\u8BEF\u8272\uFF1A0/N \u4E0E 2/N \u7684\u4FE1\u606F\u91CF\u5B8C\u5168\u4E0D\u540C\uFF0C\u4E0D\u80FD\u540C\u8272 */\n.dsh-github-run-failed-count.is-hit {\n opacity: 1;\n font-weight: 600;\n color: var(--dsw-alias-state-error-primary, #cf222e);\n}\nbody[data-ds-dark-theme] .dsh-github-run-failed-count.is-hit {\n color: #f85149;\n}\n\n/* \u6B65\u9AA4\u8868\uFF1A\u56DB\u5217\u7B49\u5BBD\u5BF9\u9F50\uFF08\u5E8F\u53F7 / \u540D\u79F0 / \u72B6\u6001 / \u8017\u65F6\uFF09\uFF1B\u6CA1\u6709\u8868\u5934\uFF0C\u7528 grid \u884C\u5F0F\n * \u5E03\u5C40\u6BD4 table \u66F4\u8F7B\uFF0C\u4E14\u80FD\u8BA9\u957F\u6B65\u9AA4\u540D\u7701\u7565\u800C\u4E0D\u662F\u6491\u7834\u5E03\u5C40 */\n.dsh-github-run-steps {\n border-top: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n display: flex;\n flex-direction: column;\n}\nbody[data-ds-dark-theme] .dsh-github-run-steps {\n border-top-color: var(--dsw-alias-border-l1, #30363d);\n}\n.dsh-github-run-step {\n display: grid;\n grid-template-columns: 32px minmax(0, 1fr) auto 62px;\n align-items: center;\n gap: 8px;\n padding: 5px 10px 5px 18px;\n font-size: 11px;\n line-height: 17px;\n color: var(--dsw-alias-label-primary, #1f2328);\n border-bottom: 1px solid var(--dsw-alias-border-l2, #eaeef2);\n}\n.dsh-github-run-step:last-child {\n border-bottom: none;\n}\n.dsh-github-run-step > span:first-child {\n font-variant-numeric: tabular-nums;\n opacity: 0.55;\n}\n.dsh-github-run-step > span:nth-child(2) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dsh-github-run-step > span:nth-child(3) {\n justify-self: start;\n}\nbody[data-ds-dark-theme] .dsh-github-run-step {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n border-bottom-color: var(--dsw-alias-border-l1, #30363d);\n}\n/* \u5931\u8D25\u6B65\u9AA4\uFF1A\u6D45\u7EA2\u5E95 + \u5DE6\u4FA7\u7C97\u7EBF\uFF0C\u626B\u4E00\u773C\u5C31\u80FD\u5B9A\u4F4D\u65AD\u70B9\uFF0C\u4E0D\u5FC5\u9010\u4E2A\u8BFB\u72B6\u6001\u6587\u5B57 */\n.dsh-github-run-step-failed {\n background: rgba(207, 34, 46, 0.07);\n box-shadow: inset 3px 0 0 rgba(207, 34, 46, 0.55);\n}\nbody[data-ds-dark-theme] .dsh-github-run-step-failed {\n background: rgba(248, 81, 73, 0.12);\n box-shadow: inset 3px 0 0 rgba(248, 81, 73, 0.7);\n}\n\n/* \u8017\u65F6\u5217\uFF1Atabular-nums \u8BA9 m/s \u6570\u5B57\u4E0A\u4E0B\u4E25\u683C\u5BF9\u9F50 */\n.dsh-github-run-duration {\n font-size: 11px;\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n text-align: right;\n justify-self: end;\n opacity: 0.65;\n}\n\n/* \u65E5\u5FD7\u63D0\u53D6\u6309\u94AE\uFF0C\u540C\u65F6\u4E5F\u662F\u9519\u8BEF\u5757\u91CC\u7684\u300C\u91CD\u8BD5\u300D */\n.dsh-github-run-log-btn {\n align-self: flex-start;\n flex-shrink: 0;\n font-family: inherit;\n font-size: 11px;\n line-height: 18px;\n padding: 5px 12px;\n border-radius: 6px;\n border: 1px solid var(--dsw-alias-border-l2, #d0d7de);\n background: var(--dsw-alias-bg-module-platform, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n cursor: pointer;\n transition: border-color 0.15s ease, color 0.15s ease;\n}\n.dsh-github-run-log-btn:hover:not(:disabled) {\n color: var(--dsw-alias-link, #0969da);\n border-color: var(--dsw-alias-link, #0969da);\n}\n.dsh-github-run-log-btn:disabled {\n cursor: progress;\n opacity: 0.6;\n}\nbody[data-ds-dark-theme] .dsh-github-run-log-btn {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-2, #1e1e22);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\nbody[data-ds-dark-theme] .dsh-github-run-log-btn:hover:not(:disabled) {\n color: #58a6ff;\n border-color: #58a6ff;\n}\n\n.dsh-github-run-log-section {\n display: flex;\n flex-direction: column;\n gap: 8px;\n flex: 0 0 auto;\n}\n.dsh-github-run-log-block {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n.dsh-github-run-log-title {\n font-size: 12px;\n font-weight: 600;\n color: var(--dsw-alias-label-primary, #1f2328);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\nbody[data-ds-dark-theme] .dsh-github-run-log-title {\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n/* \u622A\u65AD\u63D0\u793A\u5FC5\u987B\u663E\u773C\uFF1A\u7528\u6237\u770B\u5230\u7684\u662F\u4E0D\u5B8C\u6574\u65E5\u5FD7\uFF0C\u4E0D\u80FD\u8BA9\u4ED6\u8BEF\u4EE5\u4E3A\u65E5\u5FD7\u5C31\u8FD9\u4E48\u591A */\n.dsh-github-run-log-truncated {\n font-size: 11px;\n color: var(--dsw-alias-state-warning-primary, #9a6700);\n}\nbody[data-ds-dark-theme] .dsh-github-run-log-truncated {\n color: #d29922;\n}\n.dsh-github-run-log-hint {\n font-size: 11px;\n line-height: 1.6;\n opacity: 0.7;\n}\n\n/* \u65E5\u5FD7\u6B63\u6587\uFF1A\u7B49\u5BBD + pre-wrap\uFF08GitHub \u65E5\u5FD7\u51E0\u4E4E\u4E0D\u6298\u884C\uFF0C\u9ED8\u8BA4 pre \u4F1A\u628A\u957F\u884C\u85CF\u8FDB\u6A2A\u5411\n * \u6EDA\u52A8\uFF09\uFF0Cmax-height \u5185\u72EC\u7ACB\u6EDA\u52A8\uFF0C\u907F\u514D\u51E0\u4E07\u884C\u65E5\u5FD7\u628A\u6574\u4E2A\u5F39\u7A97\u9876\u7206 */\n.dsh-github-run-log {\n margin: 0;\n padding: 8px 10px;\n max-height: 320px;\n overflow: auto;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;\n font-size: 11px;\n line-height: 1.5;\n white-space: pre-wrap;\n word-break: break-word;\n border: 1px solid var(--dsw-alias-border-l2, #e1e4e8);\n border-radius: 6px;\n background: var(--dsw-alias-bg-layer-1, #f6f8fa);\n color: var(--dsw-alias-label-primary, #1f2328);\n overscroll-behavior: contain;\n}\nbody[data-ds-dark-theme] .dsh-github-run-log {\n border-color: var(--dsw-alias-border-l1, #30363d);\n background: var(--dsw-alias-bg-layer-1, #16161a);\n color: var(--dsw-alias-label-primary, #f0f6fc);\n}\n\n/* \u9519\u8BEF\u5757\uFF1A\u9519\u8BEF\u6587\u672C\u53EF\u80FD\u662F\u4E00\u6574\u6BB5 gh \u539F\u59CB\u8F93\u51FA\uFF0C\u5355\u72EC\u9650\u9AD8\u6EDA\u52A8\uFF0C\u522B\u8BA9\u5B83\u628A\u91CD\u8BD5\u6309\u94AE\u9876\u51FA\u89C6\u53E3 */\n.dsh-github-run-error {\n display: flex;\n flex-direction: column;\n gap: 6px;\n padding: 10px 12px;\n border-radius: 6px;\n border: 1px solid rgba(248, 81, 73, 0.35);\n background: rgba(248, 81, 73, 0.08);\n color: var(--dsw-alias-state-error-primary, #cf222e);\n font-size: 12px;\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-run-error {\n border-color: rgba(248, 81, 73, 0.45);\n background: rgba(248, 81, 73, 0.12);\n color: #f85149;\n}\n.dsh-github-run-error-title {\n font-weight: 600;\n}\n.dsh-github-run-error-text {\n max-height: 180px;\n overflow: auto;\n opacity: 0.9;\n line-height: 1.6;\n word-break: break-word;\n white-space: pre-wrap;\n overscroll-behavior: contain;\n}\n\n.dsh-github-run-empty {\n padding: 18px 0;\n text-align: center;\n font-size: 12px;\n opacity: 0.6;\n flex: 0 0 auto;\n}\nbody[data-ds-dark-theme] .dsh-github-run-empty {\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n\n/* ciBadge \u7684 neutral \u6863\uFF08skipped\uFF09\u5728\u5168\u5C40\u6837\u5F0F\u91CC\u6CA1\u6709\u5B9A\u4E49\uFF1B\u53EA\u5728\u672C\u5F39\u7A97\u4F5C\u7528\u57DF\u5185\u8865\uFF0C\n * \u514D\u5F97\u5F71\u54CD\u5176\u5B83\u9762\u677F\u5DF2\u6709\u5FBD\u7AE0\u7684\u89C2\u611F */\n.dsh-github-run-modal-dialog .dsh-badge-neutral {\n background: rgba(110, 118, 129, 0.14);\n border: 1px solid rgba(110, 118, 129, 0.28);\n color: var(--dsw-alias-label-secondary, #57606a);\n}\nbody[data-ds-dark-theme] .dsh-github-run-modal-dialog .dsh-badge-neutral {\n background: rgba(139, 148, 158, 0.18);\n border-color: rgba(139, 148, 158, 0.35);\n color: var(--dsw-alias-label-secondary, #8b949e);\n}\n";
6
6
  export declare function injectStyles(): () => void;