@charset "UTF-8";
:root{color-scheme:dark;--ink:#f4f2ed;--muted:#b1b1ae;--paper:#101112;--surface:#191b1d;--raised:#222426;--accent:#e9b77e;--line:#484b4e}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,'Helvetica Neue','Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--paper)}header,main{width:min(820px,calc(100% - 48px));margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:28px 0;gap:18px}header>a:last-child{font-size:13px}.brand{display:flex;align-items:center;gap:9px;font-size:29px;font-weight:650;letter-spacing:-.06em;text-decoration:none;color:var(--ink)}.brand span{font-size:13px;font-weight:400;letter-spacing:0;margin-left:6px;color:var(--muted)}a{color:var(--accent);text-underline-offset:4px}h1,h2{font-weight:500;line-height:1.06;letter-spacing:-.055em;margin:0;text-wrap:balance}h1{font-size:clamp(58px,10vw,86px);margin:18px 0 26px}h1 em{color:var(--accent);font-weight:500;font-style:normal}.intro{padding:45px 0 32px}.intro>p:not(.eyebrow){max-width:660px;color:var(--muted)}.intro strong{color:var(--ink);font-weight:500}.eyebrow{font-size:13px;color:var(--muted)}.badge{display:inline-block;font-size:14px;padding:0}.card{background:var(--surface);border-radius:4px;padding:32px;margin:16px 0}.step{display:flex;align-items:center;gap:16px;margin-bottom:22px}.step span{font-size:14px;color:var(--accent);font-variant-numeric:tabular-nums}.step h2{font-size:29px;letter-spacing:-.035em}p{margin:16px 0}.small,details{font-size:14px;color:var(--muted)}button{font:inherit;font-size:14px;font-weight:600;background:var(--accent);border:1px solid transparent;border-radius:4px;color:var(--paper);padding:14px 20px;cursor:pointer;min-height:50px;touch-action:manipulation;transition:background .15s ease}button:hover:not(:disabled){background:#f4c99b}button:disabled{background:#343739;color:#a7aaa9;cursor:not-allowed}.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.secondary:hover:not(:disabled){background:var(--raised)}.secondary:disabled{background:transparent;color:#8b8e8d;border-color:#373a3c}.consent{display:flex;align-items:flex-start;gap:13px;font-size:14px;margin:24px 0}.consent input{flex-shrink:0;width:22px;height:22px;margin:2px 0;accent-color:var(--accent)}input[type=file]{display:block;width:100%;max-width:100%;font:inherit;font-size:14px;margin:16px 0;color:var(--muted)}input[type=file]::file-selector-button{font:inherit;padding:12px 16px;border:1px solid var(--line);border-radius:4px;background:var(--raised);color:var(--ink);margin-right:12px;cursor:pointer;min-height:46px}.file-label{display:block;font-weight:500}#file-info{font-size:14px;overflow-wrap:anywhere}audio{width:100%;margin:10px 0}details{margin:22px 0}summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--ink)}#transcribe{margin-top:12px;width:100%}.status{padding:14px 32px 24px;overflow-wrap:anywhere}#status{font-weight:500}progress{width:100%;height:9px;accent-color:var(--accent)}textarea{display:block;width:100%;min-height:250px;font:inherit;font-size:16px;line-height:1.7;padding:18px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:4px;margin:12px 0 20px;resize:vertical}textarea::placeholder{color:var(--muted)}label[for=transcript]{font-size:14px}.actions{display:flex;gap:12px;flex-wrap:wrap}.help{padding:62px 0}.help h2{font-size:46px;margin:18px 0 28px}.help>p{max-width:720px}footer{padding:24px 0 60px;font-size:14px;display:flex;gap:20px;flex-wrap:wrap}footer p{margin:0;width:100%;color:var(--muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.skip{position:absolute;top:-80px;left:20px;padding:12px;background:var(--accent);color:var(--paper);z-index:10}.skip:focus{top:5px}@media(max-width:520px){header,main{width:calc(100% - 36px)}header{gap:12px}.brand{font-size:26px}.brand span{display:none}header>a:last-child{font-size:12px}.intro{padding-top:28px}.card{padding:23px 20px}.step{gap:12px}.step h2{font-size:25px}.status{padding:10px 20px 22px}.actions{display:grid}.actions>button,#load{width:100%}.help h2{font-size:39px}h1{font-size:62px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
