:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,system-ui,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{overflow-x:hidden;overflow-y:auto;background:#0a0a0a;color:#f5f5f5}.app-shell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;min-height:100%;padding:max(env(safe-area-inset-top,0),1rem) max(env(safe-area-inset-right,0),1rem) max(env(safe-area-inset-bottom,0),1rem) max(env(safe-area-inset-left,0),1rem)}.main-column{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;flex-shrink:0;min-width:0}@media (min-width: 1000px){.app-shell-tuning{flex-direction:row;align-items:center;justify-content:center;gap:2rem;padding-right:2rem}}.canvas-wrap{width:min(92vw,80vh,720px);aspect-ratio:1 / 1;border-radius:16px;overflow:hidden;background:#111;box-shadow:0 12px 40px #00000080;position:relative;flex-shrink:0}.avatar-stage{width:100%;height:100%}.debug-overlay{position:absolute;top:.5rem;left:.5rem;background:#000000c7;color:#9af2a4;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.62rem;line-height:1.45;padding:.5rem .7rem;border-radius:6px;pointer-events:none;white-space:pre;max-width:calc(100% - 1rem);overflow:hidden;border:1px solid rgba(154,242,164,.18);font-feature-settings:"tnum"}.status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.9rem;letter-spacing:.04em;color:#888;padding:1rem;text-align:center}.status-loading{color:#aaa}.status-error{color:#ff7070}.controls{display:flex;flex-direction:column;gap:.75rem;align-items:center;width:100%;max-width:480px}.phrase-row{display:flex;gap:.5rem;width:100%}.phrase-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;background:#161616;border:1px solid #2a2a2a;color:#f5f5f5;border-radius:12px;padding:.65rem .5rem;cursor:pointer;font-family:inherit;transition:background .12s,border-color .12s;min-height:64px;-webkit-tap-highlight-color:transparent}.phrase-btn:not(:disabled):hover,.phrase-btn:not(:disabled):active{background:#1f1f1f;border-color:#555}.phrase-btn:disabled{opacity:.4;cursor:not-allowed}.phrase-btn-active{background:#1f2230;border-color:#6080d0}.phrase-btn-num{font-size:.65rem;color:#888;letter-spacing:.1em}.phrase-btn-label{font-size:.85rem;font-weight:500}.control-row{display:flex;gap:.5rem}.ctrl-btn{background:transparent;border:1px solid #333;color:#ccc;border-radius:8px;padding:.4rem .85rem;font-size:.8rem;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent;transition:background .12s,color .12s,border-color .12s}.ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.ctrl-btn:not(:disabled):hover{background:#1a1a1a;color:#fff}.ctrl-btn-active{color:#9af2a4;border-color:#4a8a4a;background:#9af2a40f}.sprint-tag{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#888;max-width:90vw;text-align:center;font-feature-settings:"tnum"}.voice-picker{display:flex;align-items:center;gap:.6rem;width:100%;background:#131313;border:1px solid #2a2a2a;border-radius:10px;padding:.55rem .75rem}.voice-picker-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#888;white-space:nowrap}.voice-picker-select{flex:1;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:6px;color:#f5f5f5;font-family:inherit;font-size:.85rem;padding:.45rem .55rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:0}.voice-picker-select:focus{outline:1px solid #6080d0}.voice-picker-loading,.voice-picker-error{flex:1;font-size:.8rem;color:#888;font-style:italic}.voice-picker-error{color:#ff8a8a;font-style:normal}.tts-error{position:absolute;left:.5rem;right:.5rem;bottom:.5rem;background:#3c0000c7;border:1px solid rgba(255,120,120,.4);color:#ffb0b0;font-size:.7rem;padding:.4rem .6rem;border-radius:6px;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;line-height:1.4;pointer-events:none;white-space:pre-wrap}.tuning-panel{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:540px;background:#131313;border:1px solid #2a2a2a;border-radius:12px;padding:.75rem;font-size:.75rem;flex-shrink:0}@media (min-width: 1000px){.tuning-panel{width:360px;max-width:360px;max-height:calc(100vh - 4rem);overflow-y:auto;position:sticky;top:1rem}}.tuning-row{display:flex;align-items:center;gap:.5rem}.tuning-row-slider{flex-direction:column;align-items:stretch;gap:.25rem}.tuning-label{color:#888;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;min-width:5.5rem}.tuning-segmented{display:flex;gap:.25rem;flex:1}.tuning-wrap{flex-wrap:wrap}.tuning-seg{flex:1;background:#0a0a0a;border:1px solid #2a2a2a;color:#ccc;border-radius:6px;padding:.35rem .5rem;font-family:inherit;font-size:.7rem;cursor:pointer;-webkit-tap-highlight-color:transparent}.tuning-seg:hover{background:#1a1a1a;color:#fff}.tuning-seg-active{background:#6080d02e;border-color:#6080d0;color:#d0d8ff}.tuning-slider{width:100%;accent-color:#6080d0}.tuning-reset{align-self:flex-end;background:transparent;border:1px solid #333;color:#aaa;border-radius:6px;padding:.35rem .7rem;font-size:.7rem;font-family:inherit;cursor:pointer}.tuning-reset:hover{background:#1a1a1a;color:#fff}.tuning-divider{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:#555;padding-top:.3rem;border-top:1px dashed #2a2a2a;margin-top:.25rem}.ctrl-btn-update{color:#f5d870;border-color:#6a5320}.ctrl-btn-update:hover{background:#f5d87014;color:#fff}
