main { max-width: 64rem; margin: 0 auto; padding: 2rem 1rem 3rem; display: grid; gap: 1rem; } .wordmark { font-weight: 650; font-size: 1.125rem; } .engine { display: grid; gap: 0.375rem; } .level { --level: 0; height: 0.375rem; border-radius: 999px; background: linear-gradient(var(--accent), var(--accent)) no-repeat left / calc(var(--level) * 100%) 100%, var(--surface); } .hearing, .conversation p { margin: 0; } .hearing:empty { display: none; } .table { overflow-x: auto; } table { width: 100%; border-collapse: collapse; font-size: 0.85rem; font-variant-numeric: tabular-nums; } th, td { padding: 0.375rem 0.5rem; border-bottom: 1px solid var(--hairline); text-align: right; white-space: nowrap; } th:first-child, td:first-child { text-align: left; } thead th { color: var(--ink-soft); font-weight: 550; cursor: help; } td:nth-child(2), tfoot td, tfoot th { font-weight: 650; } .conversation { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; } .conversation li { display: grid; gap: 0.25rem; } .caller { color: var(--ink-soft); } .caller::before { content: "You: "; font-weight: 650; } .assistant::before { content: "Assistant: "; font-weight: 650; color: var(--accent); } fieldset { margin: 0; padding: 0; border: 0; display: grid; gap: 0.5rem; } legend { padding: 0; margin-bottom: 0.5rem; color: var(--ink-soft); font-size: 0.875rem; } .voices { display: flex; flex-wrap: wrap; gap: 0.5rem; } .voice input { position: absolute; opacity: 0; pointer-events: none; } .voice span { display: block; border: 1px solid var(--hairline); border-radius: 999px; padding: 0.375rem 0.875rem; font-size: 0.85rem; cursor: pointer; transition: background-color 0.2s, color 0.2s, border-color 0.2s; } .voice input:checked + span { background: var(--ink); border-color: var(--ink); color: var(--canvas); } .voice input:focus-visible + span { outline: 2px solid var(--accent); outline-offset: 2px; }