:root{--primary-color: #000000;--secondary-color: #ffffff;--accent-color: #ff3e3e;--background-color: #f0f0f0;--font-mono: "IBM Plex Mono", Consolas, monospace;--grid-unit: 8px;--shadow-color: rgba(0, 0, 0, .1);--hover-color: #f5f5f5;--border-radius: 0px;--transition-speed: .2s;--metadata-color: #666666}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-mono);background-color:var(--background-color);color:var(--primary-color);line-height:1.5;-webkit-font-smoothing:antialiased}.container{max-width:1200px;margin:0 auto;padding:calc(var(--grid-unit) * 4)}.button{font-family:var(--font-mono);background:var(--primary-color);color:var(--secondary-color);border:none;padding:calc(var(--grid-unit) * 2) calc(var(--grid-unit) * 4);cursor:pointer;text-transform:uppercase;letter-spacing:1px;transition:background-color .2s}.button:hover{background-color:var(--accent-color)}.input{width:100%;font-family:var(--font-mono);background:var(--secondary-color);border:2px solid var(--primary-color);padding:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 2)}.textarea{min-height:200px;resize:vertical}.select{width:100%;font-family:var(--font-mono);background:var(--secondary-color);border:2px solid var(--primary-color);padding:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 2);appearance:none;border-radius:0}.grid{display:grid;gap:calc(var(--grid-unit) * 4)}.header{font-size:2.5rem;font-weight:700;text-transform:uppercase;margin-bottom:calc(var(--grid-unit) * 4);border-bottom:4px solid var(--primary-color);padding-bottom:calc(var(--grid-unit) * 2)}.audio-player{background:var(--secondary-color);border:1px solid var(--primary-color);padding:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 2);position:relative}.audio-player:hover{background:var(--hover-color)}.audio-controls{display:grid;grid-template-columns:auto 1fr;gap:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 2)}.play-button{width:40px;height:40px;background:var(--primary-color);border:none;color:var(--secondary-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-speed)}.play-button:hover{background:var(--accent-color)}.waveform{height:40px;background:var(--background-color);position:relative;overflow:hidden;border:1px solid var(--primary-color)}.waveform-progress{position:absolute;left:0;top:0;height:100%;background:var(--accent-color);opacity:.1;transition:width var(--transition-speed) linear}.waveform-visualization{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;padding:0 calc(var(--grid-unit) * 1);gap:1px}.waveform-bar{flex-grow:1;background:var(--primary-color);opacity:.3}.audio-info{display:grid;grid-template-columns:1fr auto auto;gap:calc(var(--grid-unit) * 2);align-items:center;font-size:.85em;border-top:1px solid var(--primary-color);padding-top:calc(var(--grid-unit) * 2)}.audio-metadata{display:flex;gap:calc(var(--grid-unit) * 2);font-family:var(--font-mono);color:var(--metadata-color);font-size:.8em}.metadata-item{display:flex;gap:calc(var(--grid-unit) * 1)}.metadata-label{text-transform:uppercase;opacity:.7}.text-preview{font-family:var(--font-mono);color:var(--primary-color)}.timestamp{font-family:var(--font-mono);color:var(--metadata-color)}.delete-button{background:transparent;border:1px solid var(--accent-color);color:var(--accent-color);cursor:pointer;padding:calc(var(--grid-unit) * 1) calc(var(--grid-unit) * 2);font-family:var(--font-mono);font-size:.85em;transition:all var(--transition-speed)}.delete-button:hover{background:var(--accent-color);color:var(--secondary-color)}.audio-player{width:100%;padding:8px;background:#000;border:1px solid #333;border-radius:0}.audio-controls{display:flex;align-items:center;gap:12px;border-radius:0}.play-button{width:32px;height:32px;border:1px solid #333;background:#000;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;padding:0;border-radius:0}.play-button:hover{background:#111}.playback-info{flex:1;display:flex;align-items:center;gap:8px;font-family:Courier New,monospace;font-size:11px;user-select:none;color:#fff;letter-spacing:1px}.time-display{min-width:40px;font-variant-numeric:tabular-nums;color:#fff}.waveform{flex:1;height:20px;background:#000;cursor:pointer;position:relative;overflow:hidden;display:flex;align-items:center;border:1px solid #333;border-radius:0}.waveform-progress{position:absolute;left:0;top:0;height:100%;background:#ff00001a;pointer-events:none;z-index:1;border-radius:0}.timeline-track{width:100%;height:1px;background:#333;position:relative;border-radius:0}.progress-dot{width:6px;height:6px;background:red;position:absolute;top:50%;transform:translate(-50%,-50%);cursor:grab;z-index:2;border-radius:0}.volume-control{width:60px;padding:0 4px}.volume-control input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:1px;background:#333;outline:none;cursor:pointer;border-radius:0}.volume-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:6px;height:12px;background:#fff;cursor:pointer;border:none;border-radius:0}.volume-control input[type=range]::-moz-range-thumb{width:6px;height:12px;background:#fff;cursor:pointer;border:none;border-radius:0}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.container{position:relative;min-height:100vh;background:repeating-linear-gradient(45deg,var(--background-color),var(--background-color) 10px,#e8e8e8 10px,#e8e8e8 20px)}.container:before{content:"";position:absolute;top:0;left:0;width:100%;height:8px;background:var(--accent-color)}.header{position:relative;padding-left:calc(var(--grid-unit) * 2)}.header:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:70%;background:var(--accent-color)}.grid{position:relative;padding:calc(var(--grid-unit) * 4);background:var(--secondary-color);border:2px solid var(--primary-color);box-shadow:8px 8px 0 var(--primary-color)}.button:disabled{opacity:.5;cursor:not-allowed;background:#666}@media (max-width: 768px){.container{padding:calc(var(--grid-unit) * 2)}.grid{padding:calc(var(--grid-unit) * 2);box-shadow:4px 4px 0 var(--primary-color)}}.loading-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(5px)}.loading-content{background:var(--secondary-color);padding:calc(var(--grid-unit) * 4);border:2px solid var(--primary-color);box-shadow:8px 8px 0 var(--accent-color);text-align:center;max-width:80%;font-family:var(--font-mono)}.loading-spinner{width:48px;height:48px;border:4px solid var(--primary-color);border-top:4px solid var(--accent-color);border-radius:50%;margin:0 auto calc(var(--grid-unit) * 2);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 4)}.voice-button{font-family:var(--font-mono);background:var(--secondary-color);border:2px solid var(--primary-color);padding:calc(var(--grid-unit) * 2);cursor:pointer;text-align:left;transition:all .2s;display:flex;flex-direction:column;gap:calc(var(--grid-unit))}.voice-button:hover:not(:disabled){background:var(--background-color);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--primary-color)}.voice-button-selected{background:var(--primary-color)!important;color:var(--secondary-color);box-shadow:none!important;transform:none!important}.voice-button:disabled{opacity:.5;cursor:not-allowed;background:#eee}.voice-name{font-weight:700;text-transform:uppercase;letter-spacing:.5px}.voice-details{font-size:.8em;opacity:.7}.controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:calc(var(--grid-unit) * 2);margin-bottom:calc(var(--grid-unit) * 4);font-family:var(--font-mono)}.control{display:flex;flex-direction:column;gap:calc(var(--grid-unit));background:var(--secondary-color);border:2px solid var(--primary-color);padding:calc(var(--grid-unit) * 2)}.control label{font-weight:700;text-transform:uppercase;letter-spacing:.5px}.control input[type=range]{width:100%;-webkit-appearance:none;height:2px;background:var(--primary-color);outline:none;margin:calc(var(--grid-unit)) 0}.control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--primary-color);cursor:pointer;border:none}.control input[type=range]:disabled{opacity:.5;cursor:not-allowed}.control input[type=range]:disabled::-webkit-slider-thumb{background:#666;cursor:not-allowed}.control span{font-size:.8em;opacity:.7;align-self:flex-end}.history-section{margin-top:calc(var(--grid-unit) * 2);padding:calc(var(--grid-unit) * 2);background:var(--secondary-color)}.history-title{font-family:var(--font-mono);font-size:1.2rem;text-transform:uppercase;margin-bottom:calc(var(--grid-unit) * 4);letter-spacing:2px;color:var(--primary-color);display:flex;align-items:center;gap:var(--grid-unit);padding-bottom:var(--grid-unit);border-bottom:2px solid var(--primary-color)}.history-grid{display:grid;gap:calc(var(--grid-unit) * 3)}.history-item{background:var(--background-color);border-radius:4px;overflow:hidden;border:2px solid var(--primary-color);transition:all .2s ease}.history-item:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--primary-color)}.history-text{padding:calc(var(--grid-unit) * 2);color:var(--primary-color);font-size:.95rem;line-height:1.5;border-bottom:2px solid var(--primary-color);background:var(--secondary-color);font-family:var(--font-mono)}.history-meta{padding:calc(var(--grid-unit));display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--primary-color);background:var(--background-color);border-bottom:2px solid var(--primary-color)}.history-meta .voice-badge{display:inline-flex;align-items:center;padding:2px 8px;background:var(--secondary-color);border:2px solid var(--primary-color);color:var(--primary-color);font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px}.history-meta .timestamp{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);color:var(--primary-color);opacity:.7}.history-meta .timestamp:before{content:"⏱";font-size:.9rem;opacity:.7}.playback-controls{padding:calc(var(--grid-unit));background:var(--background-color)}.progress-container{margin-bottom:calc(var(--grid-unit));position:relative;height:40px;background:var(--secondary-color);border:2px solid var(--primary-color);overflow:hidden}.progress-bar{position:relative;width:100%;height:100%;cursor:pointer;display:flex;align-items:center;background:var(--secondary-color);transition:background .2s ease}.progress-bar:hover{background:var(--background-color)}.progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--primary-color);opacity:.1;transition:width .1s linear}.progress-fill:after{content:"";position:absolute;right:0;top:0;width:2px;height:100%;background:var(--primary-color)}.time-markers{position:absolute;inset:0;display:flex;justify-content:space-between;padding:0 calc(var(--grid-unit));pointer-events:none}.time-marker{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:4px;font-size:.7rem;color:var(--primary-color);font-variant-numeric:tabular-nums;font-family:var(--font-mono);opacity:.7}.time-marker:before{content:"";width:1px;height:4px;background:var(--primary-color);margin-bottom:2px;opacity:.3}.playback-info{display:grid;grid-template-columns:auto 1fr auto;gap:calc(var(--grid-unit));margin:calc(var(--grid-unit)) 0;font-family:var(--font-mono);font-size:.85rem;color:var(--primary-color)}.playback-info span{font-variant-numeric:tabular-nums}.playback-info span:nth-child(2){text-align:center;opacity:.5}.controls-container{display:flex;justify-content:space-between;gap:calc(var(--grid-unit))}.history-actions{display:flex;gap:8px;align-items:center}.history-button{padding:calc(var(--grid-unit)) calc(var(--grid-unit) * 2);font-family:var(--font-mono);font-size:.8rem;color:var(--primary-color);background:var(--secondary-color);border:2px solid var(--primary-color);cursor:pointer;transition:all .2s ease;min-width:100px;display:flex;align-items:center;justify-content:center;gap:calc(var(--grid-unit) / 2)}.history-button:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--primary-color)}.history-button:disabled{opacity:.5;cursor:not-allowed;background:var(--background-color)}.history-button-delete{color:#f44;border-color:#f44}.history-button-delete:hover:not(:disabled){box-shadow:4px 4px #f44}.generation-progress{margin-top:calc(var(--grid-unit) * 2);padding:calc(var(--grid-unit) * 2);background:#fff;border:1px solid #333;display:flex;flex-direction:column;gap:calc(var(--grid-unit))}.generation-progress-bar{height:4px;background:#fff;border:1px solid #333;overflow:hidden}.generation-progress-fill{height:100%;background:#333;transition:width .2s ease}.generation-status{font-family:Courier New,monospace;font-size:11px;color:#333;text-align:left;display:flex;justify-content:space-between;align-items:center}.generation-timer{font-variant-numeric:tabular-nums;letter-spacing:1px}.waveform{flex:1;height:40px;background:#fff;cursor:pointer;position:relative;overflow:hidden;display:flex;align-items:center;padding:0 6px;border:1px solid var(--primary-color)}.timeline-track{width:100%;height:1px;background:#000;position:relative}.progress-dot{width:6px;height:6px;background:red;position:absolute;top:50%;transform:translate(-50%,-50%);cursor:grab;z-index:2}.progress-dot:active{cursor:grabbing}.waveform:hover .progress-dot{transform:translate(-50%,-50%)}.audio-player-container{background:#fff;border:2px solid var(--primary-color);border-radius:0;overflow:hidden;margin-bottom:16px}.audio-player{width:100%;padding:8px;background:#fff}.audio-controls{display:flex;align-items:center;gap:8px}.play-button{width:32px;height:32px;border:1px solid #333;background:#fff;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.play-button:hover{background:#f5f5f5}.play-button svg{width:16px;height:16px}.time-display{font-family:Courier New,monospace;font-size:11px;color:#333;letter-spacing:1px;min-width:40px;font-variant-numeric:tabular-nums}.waveform{flex:1;height:32px;background:#fff;cursor:pointer;position:relative;overflow:hidden;display:flex;align-items:center}.waveform-progress{position:absolute;height:100%;background:#ff00001a;pointer-events:none;z-index:1}.timeline-track{width:100%;height:32px;background:transparent;position:relative;cursor:grab}.timeline-track:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#333;transform:translateY(-50%)}.progress-dot{width:6px;height:6px;background:red;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:2;pointer-events:none}.timeline-track:active{cursor:grabbing}.volume-control{width:60px;display:flex;align-items:center}.volume-control input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:1px;background:#333;outline:none;cursor:pointer}.volume-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:6px;height:12px;background:#333;cursor:pointer;border:none}.volume-control input[type=range]::-moz-range-thumb{width:6px;height:12px;background:#333;cursor:pointer;border:none}.audio-player-container{background:#fff;border:1px solid #333;border-radius:0;overflow:hidden;margin-bottom:16px}@media (max-width: 480px){.volume-control{display:none}.audio-controls{gap:4px}.time-display{font-size:10px;min-width:35px}.play-button{width:28px;height:28px}.play-button svg{width:14px;height:14px}.waveform,.timeline-track{height:28px}}.download-button{padding:4px 8px;font-family:var(--font-mono);font-size:.8rem;color:#333;background:#fff;border:1px solid #333;cursor:pointer;transition:all .2s ease;min-width:80px;display:flex;align-items:center;justify-content:center;gap:4px}.download-button:active{transform:translate(0);box-shadow:none}.audio-info{padding:12px;border-top:1px solid #333;background:#fff;display:grid;gap:8px}.text-preview{font-family:var(--font-mono);font-size:12px;color:#333;text-align:left;padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid #333}.audio-metadata{display:flex;gap:16px;padding:8px 0}.metadata-item{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px}.metadata-label{color:#666;text-transform:uppercase;letter-spacing:.5px}.timestamp-group{display:flex;justify-content:space-between;align-items:center;padding-top:4px}.timestamp{font-family:var(--font-mono);font-size:11px;color:#666}.history-actions{display:flex;gap:8px}.delete-button,.download-button{font-family:var(--font-mono);font-size:11px;padding:4px 8px;border:1px solid #333;background:#fff;cursor:pointer;transition:all .15s ease;min-width:60px;display:flex;align-items:center;justify-content:center}.delete-button{color:#f33;border-color:#f33}.delete-button:hover{background:#fff5f5;transform:translate(-1px,-1px);box-shadow:1px 1px #f33}.download-button:hover{background:#f5f5f5;transform:translate(-1px,-1px);box-shadow:1px 1px #333}.delete-button:active,.download-button:active{transform:translate(0);box-shadow:none}
