:root{--bg: #0b0d10;--surface: #14181d;--text: #f3f4f6;--muted: #9ca3af;--accent: #60a5fa;--en: #fbbf24;--border: #1f242b;--w-bg: #f5efe6;--w-surface: #ffffff;--w-ink: #1a1a1a;--w-ink-muted: #6b6b6b;--w-accent: #2a3142;--w-line: #e6dfd1;--w-card-shadow: 0 1px 2px rgba(20, 20, 20, .04), 0 8px 24px rgba(20, 20, 20, .06)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}html,body{overscroll-behavior-y:none}.app{display:flex;flex-direction:column;min-height:100%;max-width:900px;margin:0 auto;padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom)}.header{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.header>*{flex-shrink:0}.header select.lang-select{flex-shrink:1;min-width:72px;position:sticky;top:0;background:var(--bg);z-index:10}.header .status{font-size:12px;color:var(--muted);padding:0 6px;white-space:nowrap}.header .status.live{color:#4ade80}.header .status.waiting{color:#fbbf24}.ptr{position:fixed;top:0;left:50%;transform:translate(-50%) translateY(-48px);z-index:20;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:50%;box-shadow:0 2px 10px #00000073;opacity:0;pointer-events:none}.ptr.armed{color:var(--accent);border-color:var(--accent)}@property --ptr-p{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.ptr:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:conic-gradient(var(--accent) var(--ptr-p),transparent 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));opacity:0}.ptr.holding:after{opacity:1;animation:ptr-fill 2s linear forwards}@keyframes ptr-fill{0%{--ptr-p: 0deg}to{--ptr-p: 360deg}}.ptr.spinning{animation:ptr-spin .7s linear infinite;transform:translate(-50%) translateY(16px)!important;opacity:1!important}@keyframes ptr-spin{0%{rotate:0deg}to{rotate:360deg}}select,button{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 12px;font-size:14px;font-family:inherit;cursor:pointer}select.compact,button.compact{padding:4px 8px;font-size:13px}.brand-btn{background:transparent;border:1px solid var(--border);color:var(--muted);padding:4px 10px;font-size:16px;line-height:1}.brand-btn:hover{color:var(--text);border-color:var(--accent)}select:focus,button:focus{outline:2px solid var(--accent)}button.toggle.active{border-color:var(--accent);color:var(--accent)}button.toggle:disabled{opacity:.4;cursor:not-allowed}.header .audio-btn{margin-left:auto}button.big-btn{min-width:44px;min-height:40px;padding:6px 10px;font-size:20px;line-height:1}button.toggle.audio-off:not(:disabled){border-color:#f87171b3;background:#f8717114}@media (max-width: 520px){.app{padding-left:10px;padding-right:10px}.header{gap:4px;flex-wrap:nowrap;overflow-x:auto}.header .status{font-size:11px;padding:0 1px}.header select.lang-select{min-width:64px}select.compact,button.compact{padding:4px 5px}.brand-btn{padding:4px 7px}button.big-btn{min-width:40px;min-height:38px;padding:5px 7px;font-size:18px}}.voice-pref{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.voice-pref input[type=checkbox]{margin:0;cursor:pointer}.voice-pref:has(input:disabled){opacity:.5;cursor:not-allowed}.captions{flex:1;padding:16px 0 140px;display:flex;flex-direction:column;gap:16px;scroll-padding-bottom:140px}.empty{color:var(--muted);text-align:center;padding:64px 16px;font-size:16px}.segment{display:flex;flex-direction:column;gap:4px}.segment .translation{font-size:var(--font-size, 22px);line-height:1.4;font-weight:500}.segment .original{font-size:calc(var(--font-size, 22px) * .65);line-height:1.4;color:var(--en);opacity:.85;font-weight:400}.bottom-anchor{height:1px}.disclosure{position:sticky;bottom:0;padding:6px 0 calc(env(safe-area-inset-bottom,0) + 6px);font-size:11px;color:var(--muted);text-align:center;background:linear-gradient(transparent,var(--bg) 30%)}.welcome{min-height:100%;background:radial-gradient(120% 60% at 50% -10%,#fbf6ed 0%,var(--w-bg) 60%),var(--w-bg);color:var(--w-ink);padding:env(safe-area-inset-top) 20px calc(env(safe-area-inset-bottom) + 32px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.welcome-inner{max-width:720px;margin:0 auto;padding:56px 4px 24px}.welcome-logo{display:block;max-height:64px;max-width:240px;margin-bottom:24px;object-fit:contain}.welcome-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--w-ink-muted);margin-bottom:18px}.welcome-title{font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;font-size:clamp(40px,8vw,64px);line-height:1.05;font-weight:600;letter-spacing:-.02em;margin:0 0 12px;color:var(--w-ink)}.welcome-tagline{font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;font-size:clamp(18px,3.2vw,22px);line-height:1.4;color:var(--w-accent);margin:0 0 28px;font-style:italic}.welcome-copy{font-size:16px;line-height:1.6;color:var(--w-ink);max-width:56ch;margin:0 0 36px}.welcome-section-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-ink-muted);margin:8px 0 14px}.welcome-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:36px}.lang-card{background:var(--w-surface);border:1px solid var(--w-line);border-radius:12px;padding:18px 14px;text-align:left;cursor:pointer;transition:transform .08s ease,border-color .15s ease,box-shadow .15s ease;box-shadow:var(--w-card-shadow);color:var(--w-ink)}.lang-card:hover,.lang-card:focus-visible{transform:translateY(-1px);border-color:var(--w-accent);outline:none}.lang-card:active{transform:translateY(0)}.lang-card-native{font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;font-size:22px;font-weight:600;letter-spacing:-.005em;margin-bottom:4px;color:var(--w-ink)}.lang-card-en{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--w-ink-muted)}.welcome-fineprint{border-top:1px solid var(--w-line);padding-top:18px;font-size:13px;line-height:1.55;color:var(--w-ink-muted)}.welcome-fineprint p{margin:0 0 10px}.welcome-fineprint p:last-child{margin-bottom:0}
