Spaces:
Running
Running
:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app{max-width:800px;margin:0 auto;padding:2rem;text-align:center}header{margin-bottom:3rem}header h1{font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(45deg,#646cff,#61dafb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}header p{color:#888;font-size:1.1rem}.upload-area{border:2px dashed #646cff;border-radius:12px;padding:3rem;margin:2rem 0;cursor:pointer;transition:all .3s ease;background:#646cff0d}.upload-area:hover{border-color:#61dafb;background:#61dafb0d}.upload-content p{margin:.5rem 0;font-size:1.1rem}.upload-content audio{margin-top:1rem;width:100%;max-width:400px}.controls{margin:2rem 0}.controls button{background:#646cff;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease}.controls button:hover{background:#5a54d6;transform:translateY(-2px)}.controls button.recording{background:#ff4757;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.loading{margin:2rem 0;padding:1rem;background:#646cff1a;border-radius:8px;color:#646cff;font-weight:500}.error{margin:2rem 0;padding:1rem;background:#ff47571a;border-radius:8px;color:#ff4757;font-weight:500}.tags-section{margin:2rem 0;text-align:left}.tags-section h3{margin-bottom:1rem;color:#333}.tags{display:flex;flex-direction:column;gap:.5rem}.tag-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border-radius:8px;background:#646cff0d;transition:all .3s ease}.tag-item.has-feedback{background:#646cff1a}.tag{background:linear-gradient(45deg,#646cff,#61dafb);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500;margin-right:1rem}.tag.custom{background:linear-gradient(45deg,#27ae60,#2ecc71)}.tag.negative{background:linear-gradient(45deg,#e74c3c,#c0392b);opacity:.6}.tag.local{background:linear-gradient(45deg,#9b59b6,#8e44ad)}.tag.blended{background:linear-gradient(45deg,#f39c12,#e67e22)}.source-indicator{margin-left:.5rem;font-size:.8em}.tag-controls{display:flex;gap:.25rem}.feedback-btn{background:transparent;border:2px solid #ddd;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:.9rem}.feedback-btn:hover{transform:scale(1.1)}.feedback-btn.active{border-color:#646cff;background:#646cff;color:#fff}.add-tag{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.tag-input{flex:1;padding:.75rem;border:2px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.tag-input:focus{outline:none;border-color:#646cff}.add-tag-btn{background:#27ae60;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .3s ease}.add-tag-btn:hover{background:#219a52}.frequent-tags{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.frequent-tags h4{margin-bottom:.5rem;color:#666;font-size:.9rem}.frequent-tag-list{display:flex;flex-wrap:wrap;gap:.25rem}.frequent-tag{background:#f8f9fa;border:1px solid #ddd;color:#666;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;cursor:pointer;transition:all .3s ease}.frequent-tag:hover{background:#646cff;color:#fff;border-color:#646cff}.export-section{margin:3rem 0 2rem;padding:2rem;border:1px solid #eee;border-radius:12px;background:#fafafa}.export-section h3{margin-bottom:1rem;color:#333}.export-controls{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.export-btn{background:#3498db;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .3s ease}.export-btn:hover{background:#2980b9}.clear-btn{background:#e74c3c;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .3s ease}.clear-btn:hover{background:#c0392b}.model-stats{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #ddd}.model-stats p{margin:.25rem 0;color:#666;font-size:.9rem}footer{margin-top:3rem;padding:2rem 0 1rem;border-top:1px solid #eee;text-align:center}footer p{margin:0;color:#888;font-size:.9rem;line-height:1.5}footer a{color:#646cff;text-decoration:none}footer a:hover{text-decoration:underline}@media (max-width: 768px){.app{padding:1rem}.upload-area{padding:2rem 1rem}header h1{font-size:2rem}} | |