*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#000;--surface:#111827;--border:#1f2937;--text:#f9fafb;--muted:#6b7280;--accent:#2563eb;--highlight:#22d3ee;--spoken:#374151;--marker:rgba(255,255,255,0.12);--green:#16a34a;--red:#dc2626}body,html{height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,sans-serif;-webkit-text-size-adjust:100%}#pp-setup{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:1.25rem}#pp-setup h1{font-size:1.4rem;font-weight:600;text-align:center}#pp-setup p{color:var(--muted);font-size:.875rem;text-align:center;max-width:36rem}#pp-setup textarea{width:100%;max-width:38rem;height:14rem;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;color:var(--text);padding:1rem;font-size:1rem;resize:vertical;outline:none}#pp-setup textarea:focus{border-color:var(--accent)}#pp-remove-breaks-btn{width:100%;max-width:38rem;padding:.55rem;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:.5rem;font-size:.875rem;cursor:pointer}#pp-remove-breaks-btn:hover{color:var(--text);border-color:#4b5563}#pp-remove-breaks-btn:active{opacity:.75}#pp-load-btn{width:100%;max-width:38rem;padding:.8rem;background:var(--accent);color:white;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer}#pp-load-btn:active{opacity:.85}#pp-sr-notice{max-width:38rem;padding:.75rem 1rem;background:#7c2d12;border-radius:.5rem;font-size:.8rem;line-height:1.5;display:none}#pp-prompter{display:none;position:fixed;inset:0;flex-direction:column}#pp-prompter.visible{display:flex}#pp-viewport-wrap{flex:1;position:relative;overflow:hidden}#pp-viewport{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(75,85,99,.3) transparent}#pp-viewport::-webkit-scrollbar{width:6px}#pp-viewport::-webkit-scrollbar-thumb{background:rgba(75,85,99,.3);border-radius:3px}#pp-line-marker{position:absolute;left:0;right:0;height:2px;background:var(--marker);pointer-events:none;z-index:10}#pp-text-body{max-width:78%;margin:0 auto;padding:30vh 1rem 55vh;font-size:16vh;line-height:1;text-align:center;-moz-user-select:none;user-select:none;-webkit-user-select:none;word-break:break-word}.pp-word{display:inline}.pp-word.spoken{color:var(--spoken);transition:color .6s}.pp-color-swatches{display:flex;gap:.35rem;align-items:center}.pp-swatch{width:18px;height:18px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color .15s,transform .1s;flex-shrink:0}.pp-swatch:hover{transform:scale(1.15)}.pp-swatch.active{border-color:#fff}.pp-swatch-white{background:#f9fafb}.pp-swatch-red{background:#ef4444}.pp-swatch-yellow{background:#facc15}.pp-swatch-cyan{background:#22d3ee}.pp-swatch-green{background:#4ade80}.pp-ctrl-check{display:flex;flex-direction:column;align-items:center;gap:.3rem}.pp-ctrl-check label{font-size:.68rem;color:var(--muted);white-space:nowrap}.pp-ctrl-check input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.pp-weight-labels{display:flex;justify-content:space-between;width:110px;font-size:.6rem;color:var(--muted);margin-top:.1rem}#pp-controls{flex-shrink:0;background:rgba(10,15,25,.97);border-top:1px solid var(--border);padding:.65rem 1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.85rem}#pp-mic-dot{width:11px;height:11px;border-radius:50%;background:var(--muted);flex-shrink:0;transition:background .08s}#pp-mic-dot.active{background:var(--red)}#pp-mic-dot.blink{animation:pp-blink .55s step-start infinite}@keyframes pp-blink{50%{opacity:.15}}#pp-audio-meter{width:110px;height:22px;border-radius:3px;flex-shrink:0}.pp-ctrl{display:flex;flex-direction:column;align-items:center;gap:.2rem}.pp-ctrl label{font-size:.68rem;color:var(--muted);white-space:nowrap}.pp-ctrl input[type=range]{width:110px;accent-color:var(--accent);cursor:pointer}.pp-ctrl .pp-val{font-size:.72rem;color:#d1d5db;font-weight:500}.pp-ctrl select{background:#1f2937;color:#f9fafb;border:1px solid #374151;border-radius:.3rem;font-size:.72rem;padding:.2rem .4rem;cursor:pointer;accent-color:var(--accent)}.pp-btn{padding:.45rem 1.1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap}.pp-btn:active{opacity:.8}.pp-btn-start{background:var(--green);color:white}.pp-btn-stop{background:var(--red);color:white}.pp-btn-mic-off{background:var(--surface);color:#d1d5db;border:1px solid var(--border)}.pp-btn-mic-on{background:var(--accent);color:white}.pp-btn-restart{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.pp-preset-group{display:flex;align-items:center;gap:.3rem;flex-shrink:0;margin-left:auto}.pp-btn-preset-save{padding:.35rem .7rem;font-size:.72rem;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:.375rem;cursor:pointer;white-space:nowrap}.pp-btn-preset-save:hover{color:#f9fafb;border-color:#6b7280}.pp-btn-preset{padding:.35rem .6rem;font-size:.72rem;font-weight:600;min-width:2rem;text-align:center;background:var(--surface);color:#6b7280;border:1px dashed #374151;border-radius:.375rem;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.pp-btn-preset.saved{color:#d1d5db;border-style:solid;border-color:#4b5563}.pp-btn-preset.saved:hover{background:#374151;color:#f9fafb}#pp-preset-save-popover{display:none;position:absolute;bottom:calc(100% + .5rem);right:0;background:#1f2937;border:1px solid #374151;border-radius:.5rem;padding:.6rem .75rem;z-index:50;white-space:nowrap}#pp-preset-save-popover.show{display:block}#pp-preset-save-popover span{font-size:.72rem;color:var(--muted);margin-right:.5rem}.pp-btn-preset-saveto{padding:.25rem .55rem;font-size:.72rem;font-weight:600;background:#374151;color:#d1d5db;border:none;border-radius:.3rem;cursor:pointer;margin-left:.2rem}.pp-btn-preset-saveto:hover{background:#4b5563;color:#f9fafb}#pp-status{flex-shrink:0;background:#050505;border-top:1px solid #0f0f0f;padding:.35rem 1rem;display:flex;gap:1.5rem;font-size:.68rem;color:var(--muted);flex-wrap:wrap}#pp-status strong{color:#9ca3af}.pp-status-hold{color:#f59e0b!important}.pp-status-manual{color:#60a5fa!important}#pp-toast{position:fixed;top:1rem;left:50%;transform:translateX(-50%);background:rgba(30,58,138,.9);color:white;padding:.45rem 1rem;border-radius:.5rem;font-size:.78rem;pointer-events:none;opacity:0;transition:opacity .25s;z-index:30;white-space:nowrap}#pp-toast.show{opacity:1}#pp-sim-bar{position:fixed;top:4rem;left:0;right:0;height:2.5rem;background:rgba(10,15,25,.97);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:.6rem;padding:0 1rem;z-index:150;font-size:.72rem;color:var(--muted);flex-shrink:0}#pp-sim-bar label{font-size:.68rem;color:var(--muted);white-space:nowrap}#pp-sim-input{width:4.5rem;background:var(--surface);border:1px solid var(--border);border-radius:.3rem;color:var(--text);padding:.15rem .35rem;font-size:.72rem;text-align:center}#pp-sim-input:focus{border-color:var(--accent);outline:none}#pp-sim-info{color:#9ca3af}#pp-sim-apply-btn,#pp-sim-info{font-size:.68rem;white-space:nowrap}#pp-sim-apply-btn{padding:.2rem .6rem;background:var(--accent);color:white;border:none;border-radius:.3rem;cursor:pointer;flex-shrink:0}#pp-sim-apply-btn:hover{opacity:.85}#pp-sim-apply-btn:active{opacity:.7}#pp-sim-reset-btn{padding:.2rem .6rem;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:.3rem;font-size:.68rem;cursor:pointer;white-space:nowrap;flex-shrink:0}#pp-sim-reset-btn:hover{color:var(--text);border-color:#4b5563}.pp-upsell-wrap{position:relative;flex-shrink:0}.pp-btn-upsell{padding:.45rem 1rem;background:transparent;color:#4b5563;border:1px dashed #374151;border-radius:.375rem;font-size:.8rem;font-weight:500;cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.pp-upsell-tip{display:none;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translateX(-50%);background:#1f2937;border:1px solid #374151;border-radius:.5rem;padding:.7rem .9rem;width:220px;z-index:60;pointer-events:all}.pp-upsell-tip p{margin:0 0 .5rem;font-size:.75rem;line-height:1.5;color:#d1d5db}.pp-upsell-tip a{display:inline-block;font-size:.72rem;font-weight:600;color:#60a5fa;text-decoration:none}.pp-upsell-tip a:hover{text-decoration:underline}.pp-upsell-wrap.open .pp-upsell-tip,.pp-upsell-wrap:hover .pp-upsell-tip{display:block}#pp-error-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:100;align-items:center;justify-content:center}#pp-error-modal.show{display:flex}#pp-error-modal-box{background:#1f2937;border:1px solid #374151;border-radius:.75rem;padding:1.5rem 2rem;max-width:420px;text-align:center;color:#f9fafb}#pp-error-modal-box h3{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#fbbf24}#pp-error-modal-box p{margin:0 0 1.25rem;font-size:.85rem;line-height:1.6;color:#d1d5db}#pp-error-modal-close{background:#374151;color:#f9fafb;border:none;border-radius:.4rem;padding:.4rem 1.2rem;font-size:.85rem;cursor:pointer}#pp-error-modal-close:hover{background:#4b5563}