:root { --bg: #fbfaf8; --panel: #ffffff; --ink: #171614; --muted: #6c6862; --line: #e2ded7; --accent: #7a3b2e; --code-bg: #f4f2ee; --user: #2f5d8a; --assistant: #7a3b2e; --system: #6c6862; --tool: #3f6b4a; } @media (prefers-color-scheme: dark) { :root { --bg: #131311; --panel: #1b1b19; --ink: #eae7e1; --muted: #9a958d; --line: #2e2d2a; --accent: #d99479; --code-bg: #21201d; --user: #8ab4e0; --assistant: #d99479; --system: #9a958d; --tool: #8dc39c; } } * { box-sizing: border-box; } body { margin: 0; background: var(--bg); color: var(--ink); font: 15px/1.6 ui-sans-serif, -apple-system, "Segoe UI", Inter, system-ui, sans-serif; -webkit-font-smoothing: antialiased; } main { max-width: 54rem; margin: 0 auto; padding: 2rem 1.25rem 5rem; } a { color: var(--accent); text-decoration-thickness: 1px; text-underline-offset: 2px; } /* ---------- chrome ---------- */ .topbar { display: flex; align-items: baseline; gap: .75rem; padding: 1rem 1.25rem; border-bottom: 1px solid var(--line); max-width: 54rem; margin: 0 auto; } .wordmark { font: 600 15px/1 ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace; letter-spacing: -.02em; color: var(--ink); text-decoration: none; } .tagline { color: var(--muted); font-size: 13px; } .whoami { margin-left: auto; color: var(--muted); font-size: 12px; font-family: ui-monospace, Menlo, monospace; } /* Kept in the layout (so .select() works) but out of sight. */ .offscreen { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; } /* ---------- forms ---------- */ .row { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; } .row.actions { margin-top: .75rem; } input[type=text], input[type=password], textarea { font-family: inherit; font-size: 14px; color: var(--ink); background: var(--panel); border: 1px solid var(--line); border-radius: 6px; padding: .5rem .65rem; } input[type=text] { flex: 1 1 16rem; } input:focus, textarea:focus { outline: 2px solid var(--accent); outline-offset: -1px; } textarea { width: 100%; min-height: 22rem; margin-top: .5rem; font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace; font-size: 13px; line-height: 1.55; resize: vertical; } button, .btn { display: inline-block; font: 500 14px/1 inherit; padding: .6rem 1rem; border: 1px solid var(--accent); border-radius: 6px; background: var(--accent); color: var(--bg); cursor: pointer; text-decoration: none; white-space: nowrap; } button:hover, .btn:hover { filter: brightness(1.08); } .btn.ghost, button.ghost { background: transparent; color: var(--accent); border-color: var(--line); } .restrict { margin-top: .9rem; } .restrict input { width: 100%; } .restrict .hint { margin: .35rem 0 0; } .lock { color: var(--accent); } .trace-head .actions { margin-top: .9rem; } .hint, .meta { color: var(--muted); font-size: 13px; } .warn { color: var(--muted); font-size: 14px; max-width: 42rem; } /* ---------- docs ---------- */ .docs { margin-top: 3rem; border-top: 1px solid var(--line); padding-top: 1.5rem; } .docs h2 { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); font-weight: 600; } .docs em { color: var(--accent); font-style: normal; } .docs p { font-size: 13.5px; color: var(--muted); } pre, code { font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace; font-size: 12.5px; } .docs pre { background: var(--code-bg); border: 1px solid var(--line); border-radius: 6px; padding: .85rem 1rem; overflow-x: auto; } /* ---------- created ---------- */ .created h1 { font-size: 1.35rem; margin: 1rem 0 1rem; letter-spacing: -.01em; } #share-url { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; } /* ---------- trace ---------- */ .trace-head { border-bottom: 1px solid var(--line); padding-bottom: 1rem; margin-bottom: 1.5rem; } .trace-head h1 { font-size: 1.35rem; margin: 0 0 .35rem; letter-spacing: -.01em; } .trace-head .meta { margin: 0; } .kv { display: grid; grid-template-columns: auto 1fr; gap: .15rem 1rem; margin: .75rem 0 0; font-size: 13px; } .kv dt { color: var(--muted); font-family: ui-monospace, Menlo, monospace; } .kv dd { margin: 0; } .msg { display: grid; grid-template-columns: 6.5rem 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--line); } .msg-role { font: 600 11px/1.6 ui-monospace, SFMono-Regular, Menlo, monospace; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); padding-top: .15rem; } .role-user .msg-role { color: var(--user); } .role-assistant .msg-role { color: var(--assistant); } .role-tool .msg-role { color: var(--tool); } .msg-name { display: block; text-transform: none; letter-spacing: 0; font-weight: 400; opacity: .75; } .msg-body { min-width: 0; } .block + .block { margin-top: .7rem; } .block.text { white-space: pre-wrap; overflow-wrap: anywhere; } .block.note { color: var(--muted); font-size: 13px; font-style: italic; } .block.thinking { color: var(--muted); font-size: 14px; } .block.thinking summary { cursor: pointer; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; } .block.thinking div { white-space: pre-wrap; margin-top: .4rem; padding-left: .75rem; border-left: 2px solid var(--line); } .block.tool { border-left: 2px solid var(--tool); padding-left: .75rem; } .block.tool-error { border-left-color: #b4553f; } .tool-head { font: 600 12px/1.5 ui-monospace, Menlo, monospace; color: var(--tool); } .tool-error .tool-head { color: #b4553f; } pre.block, pre.doc, .block.tool pre { background: var(--code-bg); border-radius: 5px; padding: .6rem .75rem; margin: .35rem 0 0; /* Tool output is mostly long unbroken lines; wrapping beats a horizontal scrollbar per block. Indentation survives via pre-wrap. */ white-space: pre-wrap; overflow-wrap: anywhere; max-height: 30rem; overflow-y: auto; } pre.doc { white-space: pre-wrap; overflow-wrap: anywhere; max-height: none; padding: 1rem; } @media (max-width: 34rem) { .msg { grid-template-columns: 1fr; gap: .35rem; } }