| |
| :root { |
| --bg: #ffffff; |
| --panel: #ffffff; |
| --panel-2: #f7f8fa; |
| --panel-3: #eef1f5; |
| --border: #dfe3e9; |
| --border-strong: #c3cad4; |
| --text: #14181f; |
| --text-dim: #5f6b7a; |
| --text-faint: #8b95a3; |
| --accent: #1d5fd0; |
| --accent-soft: #e8effc; |
| --green: #1f7a45; |
| --green-bg: #e2f3e9; |
| --green-border: #a9d8bd; |
| --red: #b3392f; |
| --red-bg: #fbe9e7; |
| --red-border: #eebbb5; |
| --amber: #9a6a10; |
| --amber-bg: #fdf2dc; |
| --mono: 'SF Mono', ui-monospace, 'Cascadia Code', Menlo, Consolas, monospace; |
| color-scheme: light; |
| } |
|
|
| * { |
| box-sizing: border-box; |
| } |
|
|
| html, |
| body { |
| margin: 0; |
| background: var(--bg); |
| color: var(--text); |
| font-family: |
| -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; |
| line-height: 1.55; |
| font-size: 15px; |
| -webkit-font-smoothing: antialiased; |
| } |
|
|
| h1, |
| h2, |
| h3 { |
| line-height: 1.25; |
| font-weight: 650; |
| } |
|
|
| button { |
| font: inherit; |
| color: var(--text); |
| background: #fff; |
| border: 1px solid var(--border-strong); |
| border-radius: 6px; |
| padding: 6px 12px; |
| cursor: pointer; |
| transition: background 0.12s, border-color 0.12s; |
| } |
| button:hover:not(:disabled) { |
| background: var(--panel-2); |
| border-color: var(--accent); |
| } |
| button:disabled { |
| opacity: 0.4; |
| cursor: not-allowed; |
| } |
| button.primary { |
| background: var(--accent); |
| color: #fff; |
| border-color: var(--accent); |
| font-weight: 600; |
| } |
| button.primary:hover:not(:disabled) { |
| background: #1a54ba; |
| border-color: #1a54ba; |
| } |
|
|
| input, |
| textarea, |
| select { |
| font: inherit; |
| color: var(--text); |
| background: #fff; |
| border: 1px solid var(--border-strong); |
| border-radius: 6px; |
| padding: 6px 9px; |
| } |
| input:focus, |
| textarea:focus, |
| select:focus { |
| outline: 2px solid var(--accent-soft); |
| border-color: var(--accent); |
| } |
| textarea { |
| width: 100%; |
| resize: vertical; |
| } |
| input[type='range'] { |
| padding: 0; |
| border: none; |
| accent-color: var(--accent); |
| } |
|
|
| code, |
| .mono { |
| font-family: var(--mono); |
| font-size: 0.86em; |
| } |
|
|
| .panel { |
| background: var(--panel); |
| border: 1px solid var(--border); |
| border-radius: 10px; |
| padding: 14px 16px; |
| } |
|
|
| .dim { |
| color: var(--text-dim); |
| } |
| .small { |
| font-size: 12.5px; |
| } |
|
|
| .badge { |
| display: inline-block; |
| padding: 0 8px; |
| border-radius: 999px; |
| font-size: 11.5px; |
| border: 1px solid var(--border-strong); |
| color: var(--text-dim); |
| background: var(--panel-2); |
| white-space: nowrap; |
| } |
| .badge.ok { |
| color: var(--green); |
| border-color: var(--green-border); |
| background: var(--green-bg); |
| } |
| .badge.bad { |
| color: var(--red); |
| border-color: var(--red-border); |
| background: var(--red-bg); |
| } |
| .badge.warn { |
| color: var(--amber); |
| border-color: #e6cd94; |
| background: var(--amber-bg); |
| } |
|
|
| |
| .tok-green { |
| background: var(--green-bg); |
| box-shadow: inset 0 -2px 0 var(--green-border); |
| border-radius: 2px; |
| } |
| .tok-red { |
| background: var(--red-bg); |
| box-shadow: inset 0 -2px 0 var(--red-border); |
| border-radius: 2px; |
| } |
| .tok-neutral { |
| background: var(--panel-3); |
| border-radius: 2px; |
| } |
| .tok-skip { |
| opacity: 0.5; |
| text-decoration: underline dotted; |
| } |
|
|
| |
| |
| |
| |
| |
| :root { |
| --text-box-h: 268px; |
| } |
| .text-box { |
| height: var(--text-box-h); |
| overflow-y: auto; |
| border: 1px solid var(--border); |
| border-radius: 8px; |
| background: var(--panel-2); |
| padding: 10px 12px; |
| margin: 0; |
| white-space: pre-wrap; |
| font-size: 14px; |
| line-height: 1.9; |
| } |
| .text-box.plain { |
| background: #fff; |
| } |
| |
| .text-box.list { |
| white-space: normal; |
| line-height: 1.55; |
| display: flex; |
| flex-direction: column; |
| gap: 5px; |
| list-style: none; |
| padding: 8px; |
| } |
| |
| .text-box.list > * { |
| flex: 0 0 auto; |
| } |
|
|
| table.data { |
| width: 100%; |
| border-collapse: collapse; |
| font-size: 13px; |
| } |
| table.data th, |
| table.data td { |
| text-align: left; |
| padding: 5px 9px; |
| border-bottom: 1px solid var(--border); |
| } |
| table.data th { |
| color: var(--text-dim); |
| font-weight: 550; |
| background: var(--panel-2); |
| } |
| table.data tr.hl { |
| background: var(--accent-soft); |
| } |
|
|
| |
| @keyframes caret-pulse { |
| 0%, |
| 100% { |
| box-shadow: 0 0 0 0 rgba(29, 95, 208, 0.35); |
| } |
| 50% { |
| box-shadow: 0 0 0 5px rgba(29, 95, 208, 0); |
| } |
| } |
| .awaiting-input { |
| animation: caret-pulse 1.4s ease-in-out infinite; |
| border-color: var(--accent) !important; |
| } |
|
|