:root{--ink: #111;--muted: #444;--bg: #fff;--line: #111;--bad: #b00020;--good: #0b6b2c;--chat: #f3f3f3;--you: #dff5d2;--accent: #111}*{box-sizing:border-box}html{font-size:18px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Georgia,Times New Roman,Times,serif;line-height:1.55}.page{width:min(720px,calc(100% - 2rem));margin:0 auto;padding:2.25rem 0 4rem}.hero{margin-bottom:.5rem}.name{margin:0;font-size:clamp(3rem,10vw,4.8rem);line-height:.95;letter-spacing:-.03em;text-transform:lowercase;font-weight:700}#strike{display:inline-block;min-width:2.2ch}.typed-cursor{font-weight:400;opacity:1}.typed-cursor.typed-cursor--blink{animation:typed-blink .7s infinite}@keyframes typed-blink{0%,to{opacity:1}50%{opacity:0}}.subtitle{display:block;margin:.75rem 0 0;font-size:1.15rem;color:var(--muted)}.lead{margin:1.5rem 0 0;font-size:1.35rem;font-weight:400;line-height:1.35}.lead em{font-style:italic}.section-title{margin:1.75rem 0 .75rem;font-size:1.25rem}.section-title.bad{color:var(--bad)}.section-title.good{color:var(--good)}.rant p,.rant li{color:var(--ink)}.rant ul{padding-left:1.2rem}.punch{font-size:1.2rem}.chat{border:2px solid var(--line);background:var(--chat);padding:.85rem;margin:.75rem 0 1.1rem}.bubble{max-width:92%;margin:.55rem 0;padding:.55rem .7rem;border:1px solid #bbb;background:#fff}.bubble.you{margin-left:auto;background:var(--you)}.bubble .who{display:block;font-family:ui-monospace,Courier New,monospace;font-size:.72rem;color:#666;margin-bottom:.2rem}.bubble p{margin:0}.bubble .small{margin-top:.35rem;font-size:.85rem;color:#666;font-style:italic}.voice{display:flex;align-items:center;gap:.55rem;font-family:ui-monospace,Courier New,monospace;font-size:.9rem}.wave{letter-spacing:.05em;color:#128c7e}.privacy{margin:2rem 0;padding:.9rem 1rem;border:3px solid var(--line);background:#fff8d6;font-family:Verdana,Geneva,sans-serif;font-size:.92rem}.tool{margin-top:2.5rem;padding-top:1.5rem;border-top:3px solid var(--line)}.tool h2{margin:0 0 .4rem;font-size:1.6rem}.tool-lead{margin:0 0 1.1rem;color:var(--muted)}.controls{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.85rem;font-family:Verdana,Geneva,sans-serif;font-size:.85rem}.controls label{display:grid;gap:.3rem}.controls select,.dropzone,.actions button,textarea,.status,.file-meta,.out-head,.ts{font-family:Verdana,Geneva,sans-serif}.controls select{border:2px solid var(--line);background:#fff;padding:.55rem;font-size:.95rem}.dropzone{border:3px dashed var(--line);min-height:130px;display:grid;place-content:center;text-align:center;gap:.25rem;cursor:pointer;background:#fafafa;padding:1rem}.dropzone:hover,.dropzone:focus-visible,.dropzone.dragover{background:#fff8d6;outline:none}.dropzone span{color:var(--muted);font-size:.88rem}.file-meta{margin:.5rem 0 0;color:var(--muted);font-size:.88rem}.file-meta.hidden{display:none}.actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem}.actions button{border:2px solid var(--line);background:var(--ink);color:#fff;padding:.55rem .85rem;font-size:.92rem;font-weight:700;cursor:pointer}.actions button.secondary{background:#fff;color:var(--ink)}.actions button:disabled{opacity:.4;cursor:not-allowed}.status{margin:.75rem 0 .35rem;color:var(--muted);font-size:.88rem;min-height:1.3em}.bar{height:10px;border:2px solid var(--line);background:#eee}#progressBar{height:100%;width:0%;background:#128c7e}.out-head{display:flex;justify-content:space-between;align-items:center;margin:1rem 0 .4rem}.out-head h3{margin:0;font-family:Georgia,serif;font-size:1.1rem}.ts{font-size:.85rem;color:var(--muted);display:inline-flex;gap:.35rem;align-items:center}textarea{width:100%;min-height:240px;border:2px solid var(--line);padding:.75rem;font-size:.95rem;line-height:1.5;resize:vertical;background:#fff}.foot{margin-top:2.5rem;padding-top:1rem;border-top:1px solid #ccc;color:var(--muted);font-size:.92rem}.foot a{color:var(--ink)}.crafted{margin-top:1.25rem;font-family:Verdana,Geneva,sans-serif;font-size:.85rem;letter-spacing:.02em}.crafted a{font-weight:700;text-decoration:underline;text-underline-offset:2px}@media(max-width:560px){.controls{grid-template-columns:1fr}}
