:root { color-scheme: dark; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #0d1117; color: #e6edf3; }
* { box-sizing: border-box; }
body { margin: 0; }
main { max-width: 1440px; margin: 0 auto; padding: 28px 24px 48px; }
h1 { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; font-size: 20px; font-weight: 600; line-height: 1.5; }
h1 svg { flex: none; width: 18px; height: 18px; fill: #8b949e; }
.file { overflow: hidden; border: 1px solid #30363d; border-radius: 6px; }
.toolbar { min-height: 46px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px; background: #161b22; border-bottom: 1px solid #30363d; }
.file-info, .actions, .button-group { display: flex; align-items: center; }
.file-info { gap: 12px; min-width: 0; }
.code-label { padding: 4px 12px; border: 1px solid #30363d; border-radius: 6px; background: #21262d; font-size: 12px; font-weight: 600; line-height: 18px; }
#metadata { color: #8b949e; font: 12px/18px ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; white-space: nowrap; }
.actions { gap: 12px; }
#status { color: #7ee787; font-size: 12px; }
.button-group { flex: none; }
a, button { color: #c9d1d9; }
.button-group a, .button-group button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 28px; padding: 0 10px; border: 1px solid #363b42; background: #21262d; font: 500 12px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-decoration: none; cursor: pointer; white-space: nowrap; }
.button-group a { border-radius: 6px 0 0 6px; }
.button-group button { margin-left: -1px; border-radius: 0 6px 6px 0; }
.button-group a:hover, .button-group button:hover { background: #30363d; border-color: #8b949e; position: relative; }
.button-group button:disabled { opacity: .5; cursor: default; }
.copy-icon { width: 14px; height: 14px; fill: currentColor; }
:focus-visible { outline: 2px solid #58a6ff; outline-offset: 3px; }
.source { overflow-x: auto; padding: 12px 0; tab-size: 4; font: 12px/20px ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; }
.line { display: grid; grid-template-columns: 54px 1fr; min-width: 100%; width: max-content; }
.line-number { padding: 0 16px 0 8px; color: #6e7681; text-align: right; user-select: none; }
.line-code { padding-right: 24px; white-space: pre; font: inherit; }
.token-comment { color: #8b949e; }
.token-string { color: #a5d6ff; }
.token-keyword { color: #ff7b72; }
.token-number { color: #79c0ff; }
.token-function { color: #d2a8ff; }
.loading { margin: 12px 20px; color: #8b949e; font: 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.loading a { color: #58a6ff; }
.clipboard-proxy { position: fixed; left: -10000px; top: 0; }
::selection { background: #264f78; }
@media (max-width: 600px) {
  main { padding: 20px 12px 32px; }
  h1 { font-size: 17px; gap: 8px; margin-bottom: 16px; }
  .toolbar { flex-wrap: wrap; gap: 8px; }
  .file-info { gap: 8px; }
  #metadata { font-size: 11px; }
  .actions { margin-left: auto; gap: 8px; }
  .line { grid-template-columns: 42px 1fr; }
  .line-number { padding-right: 12px; }
}
