*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#2d3748;line-height:1.6}.dashboard-container{max-width:1400px;margin:0 auto;padding:20px;min-height:100vh}.dashboard-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2)}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.dashboard-title{font-size:2.5rem;font-weight:700;color:#2d3748;display:flex;align-items:center;gap:15px;margin-bottom:8px}.title-icon{font-size:2.2rem}.dashboard-subtitle{font-size:1.1rem;color:#718096;font-weight:400}.last-updated{text-align:right;background:#f7fafc;padding:12px 20px;border-radius:12px;border:1px solid #e2e8f0}.update-label{display:block;font-size:.875rem;color:#718096;margin-bottom:4px}.update-time{font-weight:600;color:#2d3748;font-size:.95rem}.stats-section{margin-bottom:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.stat-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:25px;display:flex;align-items:center;gap:20px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--accent-color)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.stat-card.positive{--accent-color: #48bb78}.stat-card.negative{--accent-color: #f56565}.stat-card.neutral{--accent-color: #ed8936}.stat-card.total{--accent-color: #4299e1}.stat-icon{font-size:2.5rem;opacity:.8}.stat-content{flex:1}.stat-value{font-size:2.2rem;font-weight:700;color:#2d3748;margin-bottom:4px}.stat-label{font-size:.95rem;color:#718096;font-weight:500;margin-bottom:4px}.stat-percentage{font-size:.875rem;color:var(--accent-color);font-weight:600}.charts-section{margin-bottom:30px}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:30px}.chart-container{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:25px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2)}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.chart-title{font-size:1.25rem;font-weight:600;color:#2d3748}.chart-controls{display:flex;gap:8px}.chart-btn{padding:8px 16px;border:1px solid #e2e8f0;background:#f7fafc;border-radius:8px;font-size:.875rem;font-weight:500;color:#4a5568;cursor:pointer;transition:all .2s ease}.chart-btn:hover{background:#edf2f7;border-color:#cbd5e0}.chart-btn.active{background:#4299e1;color:#fff;border-color:#4299e1}.chart-wrapper{position:relative;height:300px}.reviews-section{margin-bottom:30px}.reviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.section-title{font-size:1.5rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.reviews-filters{display:flex;gap:12px}.filter-select{padding:10px 16px;border:1px solid rgba(255,255,255,.3);background:#ffffffe6;border-radius:8px;font-size:.875rem;color:#2d3748;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reviews-container{display:grid;gap:16px;margin-bottom:20px}.review-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:20px;box-shadow:0 2px 12px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.review-card:hover{transform:translateY(-1px);box-shadow:0 4px 20px #0000001f}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:10px}.sentiment-badge{padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sentiment-badge.positive{background:#c6f6d5;color:#22543d}.sentiment-badge.negative{background:#fed7d7;color:#742a2a}.sentiment-badge.neutral{background:#feebc8;color:#7b341e}.review-meta{font-size:.875rem;color:#718096}.review-text{color:#2d3748;line-height:1.6;margin-bottom:12px}.review-footer{display:flex;justify-content:between;align-items:center;font-size:.75rem;color:#a0aec0;border-top:1px solid #e2e8f0;padding-top:12px}.confidence-score{font-weight:600}.loading-state{text-align:center;padding:60px 20px;color:#fff}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 20px;color:#fff}.empty-state h3{font-size:1.5rem;margin-bottom:10px;opacity:.9}.empty-state p{opacity:.7}.reviews-pagination{text-align:center}.load-more-btn{background:#ffffffe6;color:#4299e1;border:1px solid rgba(255,255,255,.3);padding:12px 30px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.load-more-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 15px #0000001a}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.dashboard-footer{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:20px;text-align:center;border:1px solid rgba(255,255,255,.2)}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;color:#fff}.footer-links{display:flex;gap:20px}.footer-link{color:#fffc;text-decoration:none;font-size:.875rem;transition:color .2s ease}.footer-link:hover{color:#fff}@media (max-width: 768px){.dashboard-container{padding:15px}.dashboard-title{font-size:2rem}.charts-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.header-content{text-align:center}.reviews-header{flex-direction:column;align-items:stretch}.reviews-filters{justify-content:center}.footer-content{flex-direction:column;text-align:center}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.chart-header{flex-direction:column;align-items:stretch}.chart-controls{justify-content:center}}
