@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";.upload-form{background:var(--bg-card);animation:fadeIn .6s ease-out}.upload-form h2{margin-bottom:12px;color:var(--text-primary);font-size:28px;font-weight:800}.form-description{color:var(--text-secondary);margin-bottom:36px;line-height:1.7;font-size:16px}.form-group{margin-bottom:28px}.form-label{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:12px;color:var(--text-primary);font-size:15px}.form-label-icon{font-size:18px}.form-hint{font-size:14px;color:var(--text-tertiary);margin-top:8px;display:flex;align-items:center;gap:6px}.file-input-wrapper{position:relative;border:3px dashed var(--border-color);border-radius:16px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s ease;background:var(--bg-tertiary)}.file-input-wrapper:hover{border-color:var(--primary);background:var(--bg-secondary);transform:translateY(-2px)}.file-input-wrapper.has-file{border-color:var(--primary);border-style:solid;background:#6366f11a}.file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.file-input-content{display:flex;flex-direction:column;align-items:center;gap:12px}.file-input-icon{font-size:48px;opacity:.6}.file-input-text{font-weight:600;color:var(--text-primary);font-size:16px}.file-input-subtext{font-size:14px;color:var(--text-secondary)}.video-preview{margin-top:20px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-lg);background:#000}.preview-video{width:100%;max-width:500px;border-radius:16px;display:block}.file-name{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-tertiary);border-radius:12px;margin-top:12px;font-weight:600;color:var(--primary-light);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.file-size{font-size:13px;color:var(--text-tertiary);margin-left:auto}.submit-button{width:100%;margin-top:16px;padding:18px;font-size:18px;font-weight:700}.feature-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:32px;padding:24px;background:var(--bg-tertiary);border-radius:16px;border:1px solid var(--border-color)}.feature-list-item{display:flex;align-items:flex-start;gap:10px}.feature-list-icon{font-size:20px;flex-shrink:0}.feature-list-text{font-size:14px;color:var(--text-secondary);font-weight:500}@media (max-width: 768px){.upload-form h2{font-size:24px}.file-input-wrapper{padding:30px 20px}.feature-list{grid-template-columns:1fr}}.hero{background:linear-gradient(135deg,#1e1e2e,#2a2a3e);color:var(--text-primary);padding:48px;border-radius:24px;position:relative;overflow:hidden;border:1px solid var(--border-light)}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at top right,rgba(99,102,241,.1),transparent 50%);opacity:.5}.hero-content{position:relative;z-index:1}.hero-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;flex-wrap:wrap;gap:16px}.hero-header h2{color:var(--text-primary);margin:0;font-size:32px;font-weight:800;letter-spacing:-.02em}.hero-badges{display:flex;gap:10px;flex-wrap:wrap}.predictions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.prediction-card{background:#6366f10d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(99,102,241,.2);border-radius:20px;padding:32px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.prediction-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.prediction-card:hover:before{opacity:1}.prediction-card:hover{transform:translateY(-8px) scale(1.02);background:#6366f11a;box-shadow:0 20px 40px #0009;border-color:#6366f166}.prediction-icon{font-size:48px;margin-bottom:16px;display:block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.prediction-label{font-size:14px;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.prediction-value{font-size:48px;font-weight:900;margin-bottom:8px;line-height:1;color:var(--text-primary);text-shadow:0 2px 10px rgba(0,0,0,.5)}.prediction-range{font-size:15px;color:var(--text-tertiary);font-weight:500}@media (max-width: 768px){.hero{padding:32px 24px}.hero-header{flex-direction:column;align-items:flex-start}.hero-header h2{font-size:24px}.predictions-grid{grid-template-columns:1fr}.prediction-value{font-size:36px}}.topic-summary{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border:1px solid rgba(99,102,241,.3);animation-delay:.1s}.summary-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.summary-icon{font-size:32px}.summary-header h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0}.summary-text{color:var(--text-secondary);font-size:16px;line-height:1.8;padding:16px;background:var(--bg-tertiary);border-radius:12px;border-left:3px solid var(--primary)}.market-insights{background:var(--bg-card);animation-delay:.3s}.market-insights h3{color:var(--text-primary);margin-bottom:20px;font-size:24px;font-weight:700;display:flex;align-items:center;gap:8px}.market-overall{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--bg-tertiary);border-radius:12px;margin-bottom:24px;border:1px solid var(--border-color)}.market-label{font-weight:600;color:var(--text-primary);font-size:16px}.market-heat-display{display:flex;align-items:center;gap:12px}.market-heat-icon{font-size:32px}.market-signals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.market-signal{padding:20px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.market-signal:hover{border-color:var(--border-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.market-signal h4{font-size:14px;color:var(--text-secondary);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.signal-content{display:flex;flex-direction:column;gap:12px}.signal-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.signal-row:last-child{border-bottom:none;padding-bottom:0}.signal-label{color:var(--text-tertiary);font-size:14px}.signal-value{font-weight:700;color:var(--text-primary);font-size:16px;display:flex;align-items:center;gap:6px}.trend-indicator{font-size:18px}.interest-bar{margin-top:8px}.interest-bar-bg{height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.interest-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:4px;transition:width .8s ease;box-shadow:0 0 8px #6366f166}@media (max-width: 768px){.market-insights h3{font-size:20px}.market-signals-grid{grid-template-columns:1fr}.market-overall{flex-direction:column;gap:12px;text-align:center}}.competitor-context{background:var(--bg-card);animation-delay:.4s}.competitor-context h3{color:var(--text-primary);margin-bottom:20px;font-size:24px;font-weight:700;display:flex;align-items:center;gap:8px}.competitor-summary{text-align:center;padding:24px;background:var(--bg-tertiary);border-radius:12px;margin-bottom:24px;border:1px solid var(--border-color)}.summary-label{font-size:14px;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:36px;font-weight:900;color:var(--text-primary)}.competitor-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px}.competitor-metric{text-align:center;padding:16px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.competitor-metric:hover{border-color:var(--border-light);transform:translateY(-2px)}.metric-label{font-size:12px;color:var(--text-tertiary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:24px;font-weight:700;color:var(--text-primary)}.top-competitors{margin-top:24px}.top-competitors h4{font-size:14px;color:var(--text-secondary);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.competitors-list{display:flex;flex-direction:column;gap:12px}.competitor-item{padding:16px;background:var(--bg-tertiary);border-radius:12px;border-left:3px solid var(--primary);transition:all .3s ease;border:1px solid var(--border-color)}.competitor-item:hover{border-color:var(--border-light);transform:translate(4px)}.competitor-title{font-size:14px;color:var(--text-primary);margin-bottom:8px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.competitor-stats{font-size:13px;color:var(--text-tertiary);display:flex;gap:16px;flex-wrap:wrap}.competitor-stat{display:flex;align-items:center;gap:4px}.no-data{padding:40px 20px;text-align:center;color:var(--text-tertiary);font-style:italic;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color)}@media (max-width: 768px){.competitor-context h3{font-size:20px}.competitor-metrics{grid-template-columns:repeat(2,1fr)}.summary-value{font-size:28px}}.results{margin-top:30px}.prediction-text{background:var(--bg-card);animation-delay:.2s}.prediction-text h3{color:var(--text-primary);margin-bottom:20px;font-size:24px;font-weight:700}.reasoning-text{display:flex;flex-direction:column;gap:16px}.reasoning-text p{color:var(--text-secondary);line-height:1.7;font-size:16px;padding:16px;background:var(--bg-tertiary);border-left:3px solid var(--primary);border-radius:8px}.app{min-height:100vh;padding:40px 0;background:linear-gradient(135deg,#0a0a0f,#13131a,#1a1a24)}.header{text-align:center;margin-bottom:48px;animation:fadeIn .8s ease-out}.header-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:#6366f126;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.3);border-radius:50px;color:var(--primary-light);font-size:14px;font-weight:600;margin-bottom:20px;box-shadow:0 4px 15px #0000004d}.header-badge-icon{width:20px;height:20px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.title{font-size:56px;font-weight:900;margin-bottom:16px;color:var(--text-primary);text-shadow:0 4px 20px rgba(0,0,0,.5);letter-spacing:-.02em;line-height:1.1}.subtitle{font-size:20px;color:var(--text-secondary);font-weight:500;max-width:600px;margin:0 auto;line-height:1.6}.subtitle-highlight{color:var(--primary-light);font-weight:700}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:32px;max-width:800px;margin-left:auto;margin-right:auto}.feature-item{background:#6366f11a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.2);border-radius:16px;padding:20px;text-align:center;color:var(--text-primary);transition:all .3s ease}.feature-item:hover{background:#6366f126;transform:translateY(-4px);box-shadow:0 8px 25px #0006;border-color:#6366f166}.feature-icon{font-size:32px;margin-bottom:12px;display:block}.feature-title{font-size:16px;font-weight:700;margin-bottom:4px}.feature-desc{font-size:13px;color:var(--text-secondary)}@media (max-width: 768px){.title{font-size:40px}.subtitle{font-size:18px}.features-grid{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #818cf8;--secondary: #ec4899;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--bg-primary: #0a0a0f;--bg-secondary: #13131a;--bg-tertiary: #1a1a24;--bg-card: #1e1e2e;--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--border-color: #27273a;--border-light: #3a3a4a;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -4px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .6), 0 8px 10px -6px rgb(0 0 0 / .4);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .8)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);min-height:100vh;color:var(--text-primary);line-height:1.6}code{font-family:Fira Code,Courier New,monospace}.container{max-width:1280px;margin:0 auto;padding:24px}.card{background:var(--bg-card);border-radius:20px;padding:32px;margin-bottom:24px;box-shadow:var(--shadow-xl);border:1px solid var(--border-color);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2xl);border-color:var(--border-light)}.button{padding:14px 28px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif;letter-spacing:.025em;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 15px #6366f166}.button-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #6366f199}.button-primary:active:not(:disabled){transform:translateY(0)}.button-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.input{width:100%;padding:14px 18px;border:2px solid var(--border-color);border-radius:12px;font-size:16px;font-family:Inter,sans-serif;transition:all .3s ease;background:var(--bg-tertiary);color:var(--text-primary)}.input:focus{outline:none;border-color:var(--primary);background:var(--bg-secondary);box-shadow:0 0 0 3px #6366f133}.input::placeholder{color:var(--text-tertiary)}.error{background:#ef44441a;border-left:4px solid var(--danger);padding:20px;border-radius:12px;color:#fca5a5;margin-bottom:24px;box-shadow:var(--shadow-md)}.warning{background:#f59e0b1a;border-left:4px solid var(--warning);padding:20px;border-radius:12px;color:#fcd34d;margin-bottom:24px;box-shadow:var(--shadow-md)}.loading{text-align:center;padding:60px 40px}.spinner{border:4px solid var(--border-color);border-top:4px solid var(--primary);border-radius:50%;width:60px;height:60px;animation:spin 1s linear infinite;margin:0 auto 24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.metric-bar{height:10px;background:var(--bg-tertiary);border-radius:8px;overflow:hidden;margin-top:10px;box-shadow:inset 0 2px 4px #0000004d}.metric-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:8px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #6366f180}.badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-low{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.badge-medium{background:#f59e0b26;color:#fcd34d;border:1px solid rgba(245,158,11,.3)}.badge-high{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (max-width: 768px){.container{padding:16px}.card{padding:24px;border-radius:16px}.grid-2{grid-template-columns:1fr}}
