*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:600}p{margin-bottom:1rem}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-card{background:#fff;border-radius:12px;width:100%;max-width:400px;padding:2rem;box-shadow:0 4px 6px rgba(0,0,0,.1)}.auth-header{text-align:center;margin-bottom:2rem}.auth-icon{color:#fff;background:#1f2937;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1rem;display:flex}.auth-title{color:#1f2937;margin-bottom:.5rem;font-size:1.5rem}.auth-subtitle{color:#6b7280;font-size:.875rem}.form-group{margin-bottom:1.5rem}.form-label{color:#374151;margin-bottom:.5rem;font-weight:500;display:block}.form-input{border:2px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-input:focus{border-color:#3b82f6;outline:none}.btn{border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-secondary{color:#fff;background:#6b7280}.btn-secondary:hover{background:#4b5563}.btn-outline{color:#374151;background:#fff;border:2px solid #d1d5db}.btn-outline:hover{background:#f9fafb}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-full{width:100%}.error-message{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.75rem;font-size:.875rem}.auth-footer{text-align:center;color:#6b7280;border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem;font-size:.75rem}.dashboard{background:#f8f9fa;min-height:100vh}.dashboard-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1.5rem 0}.dashboard-nav{justify-content:space-between;align-items:center;display:flex}.dashboard-title{color:#1f2937;font-size:1.875rem}.dashboard-subtitle{color:#6b7280;margin-top:.25rem}.dashboard-actions{gap:.75rem;display:flex}.dashboard-content{padding:2rem 0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;display:flex}.stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-icon-default{color:#6b7280;background:#f3f4f6}.stat-icon-success{color:#16a34a;background:#dcfce7}.stat-icon-warning{color:#d97706;background:#fef3c7}.stat-content h3{color:#6b7280;margin-bottom:.25rem;font-size:.875rem}.stat-content p{margin:0;font-size:1.5rem;font-weight:600}.feedback-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.feedback-header{border-bottom:1px solid #e5e7eb;padding:1.5rem}.feedback-header h2{color:#1f2937;font-size:1.125rem}.feedback-empty{text-align:center;padding:4rem 1.5rem}.feedback-empty-icon{color:#9ca3af;background:#f3f4f6;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex}.feedback-item:not(:last-child){border-bottom:1px solid #e5e7eb}.feedback-item{padding:1.5rem}.feedback-item-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.feedback-meta{flex:1}.feedback-status{border-radius:9999px;align-items:center;gap:.25rem;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-flex}.status-success{color:#16a34a;background:#dcfce7}.status-warning{color:#d97706;background:#fef3c7}.feedback-id{color:#1f2937;margin-bottom:.5rem;font-weight:500}.feedback-details{color:#6b7280;font-size:.875rem;line-height:1.4}.feedback-transcription{color:#374151;background:#f9fafb;border-radius:8px;margin:1rem 0;padding:1rem;font-style:italic}.feedback-actions{align-items:center;gap:1rem;display:flex}.feedback-actions audio{max-width:300px}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover{background:#b91c1c}.loading-spinner{text-align:center;padding:4rem 0}.spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:32px;height:32px;margin:0 auto 1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.voice-recorder{text-align:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;max-width:400px;margin:0 auto;padding:1.5rem}.recording-controls{justify-content:center;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.record-button{color:#fff;background:#dc2626;border:none;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.5rem;transition:all .2s;display:flex}.record-button:hover{background:#b91c1c;transform:scale(1.05)}.record-button:disabled{background:#9ca3af;transform:none}.record-button.recording{animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.timer{color:#374151;min-width:80px;font-family:Monaco,Menlo,monospace;font-size:1.125rem}.timer.recording{color:#dc2626;font-weight:600}.progress-bar{background:#e5e7eb;border-radius:2px;width:100%;height:4px;margin-bottom:1rem;overflow:hidden}.progress-fill{background:#dc2626;height:100%;transition:width .1s linear}.audio-preview{margin-top:1rem}.audio-preview audio{width:100%;margin-bottom:1rem}.widget-actions{justify-content:center;gap:.75rem;display:flex}@media (max-width:768px){.container{padding:0 .5rem}.dashboard-nav{flex-direction:column;align-items:flex-start;gap:1rem}.dashboard-actions{justify-content:flex-end;width:100%}.stats-grid{grid-template-columns:1fr}.feedback-item-header{flex-direction:column;align-items:flex-start;gap:1rem}.feedback-actions{flex-direction:column;align-items:stretch}.feedback-actions audio{max-width:100%}}
