@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap";:root{--bg: #0a0b0f;--panel: #111319;--text: #e6f3ff;--muted: #8aa3b3;--cyan: #00ffcc;--green: #00ffaa;--magenta: #ff00ff;--accent: #ff9d00}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,system-ui,Arial;background:var(--bg);color:var(--text)}.russian-text{font-family:Roboto,Inter,system-ui,Arial;font-weight:500;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1;font-kerning:normal}.russian-text.small{font-size:14px;font-weight:400}.russian-text.medium{font-size:16px;font-weight:500}.russian-text.large{font-size:18px;font-weight:600}.app-root{position:relative;min-height:100%}.neon-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(1200px 600px at 10% 10%,rgba(0,255,204,.08),transparent),radial-gradient(900px 500px at 90% 20%,rgba(255,0,255,.08),transparent),radial-gradient(800px 500px at 50% 100%,rgba(0,255,170,.08),transparent);animation:hue 24s linear infinite,float 12s ease-in-out infinite;filter:blur(40px)}.neon-bg.speed-slow{animation-duration:36s,20s}.neon-bg.speed-normal{animation-duration:24s,12s}.neon-bg.speed-fast{animation-duration:16s,8s}@keyframes hue{0%{filter:hue-rotate(0deg) blur(40px)}to{filter:hue-rotate(360deg) blur(40px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.header{display:flex;align-items:center;gap:16px;padding:16px 24px;position:sticky;top:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(to bottom,#0a0b0fcc,#0a0b0f33);z-index:10;border-bottom:1px solid rgba(255,255,255,.06)}.badge{font-weight:800;letter-spacing:1px}.dot{color:var(--magenta);text-shadow:0 0 12px var(--magenta)}.glow{color:var(--cyan);text-shadow:0 0 16px rgba(0,255,204,.8),0 0 32px rgba(0,255,204,.4)}.spacer{flex:1}.toggle-group{display:flex;gap:12px;align-items:center}.neon-btn{padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#0e1016;color:var(--text);box-shadow:inset 0 0 12px #00ffcc1f,0 0 8px #0006;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.neon-btn:hover{transform:translateY(-1px);box-shadow:0 0 16px #00ffcc40}.neon-btn.active{border-color:var(--cyan);box-shadow:0 0 18px #00ffcc59}.wobble{animation:wobble 3.2s ease-in-out infinite}@keyframes wobble{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}.tilt{transform:perspective(400px) rotateX(.5deg)}.select.neon{background:#0e1016;color:var(--text);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 10px}.container{max-width:1100px;margin:0 auto;padding:24px}.hero{display:grid;gap:16px;justify-items:center;padding:20px 0 8px}.logo{font-size:34px;font-weight:800;letter-spacing:2px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}.metric{background:var(--panel);border:1px solid rgba(255,255,255,.06);padding:14px;border-radius:14px;text-align:center;box-shadow:0 0 24px #00ffcc0d}.metric-value{font-size:20px;color:var(--cyan);text-shadow:0 0 10px rgba(0,255,204,.5)}.metric-label{color:var(--muted);font-size:12px}.metric{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.metric:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 10px 30px #00ffcc14;border-color:#00ffcc40}.upload-zone{margin:22px 0;border:1px dashed rgba(255,255,255,.18);background:linear-gradient(180deg,#111319e6,#11131999);border-radius:16px;padding:26px;text-align:center;cursor:pointer;position:relative;overflow:hidden;animation:fade-in .35s ease}.upload-zone.drag{border-color:var(--cyan);box-shadow:0 0 24px #00ffcc40}.upload-content .title{font-size:18px;margin-bottom:4px}.upload-content .desc{color:var(--muted);font-size:13px}.neon-text{color:var(--green);text-shadow:0 0 12px rgba(0,255,170,.6)}.badges{display:flex;gap:8px;justify-content:center;margin-top:12px;flex-wrap:wrap}.chip{padding:6px 10px;border-radius:999px;font-size:12px;border:1px solid rgba(255,255,255,.1)}.chip-cyan{color:var(--cyan);border-color:#0fc6}.chip-green{color:var(--green);border-color:#0fa6}.chip-magenta{color:var(--magenta);border-color:#f0f6}.spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--cyan);border-radius:50%;margin:12px auto 0;animation:spin 1s linear infinite}.neon-spin{box-shadow:0 0 18px #00ffcc59}@keyframes spin{to{transform:rotate(360deg)}}.preview{margin-top:14px}.pop-in{animation:pop .35s ease}@keyframes pop{0%{transform:scale(.98);opacity:.6}to{transform:scale(1);opacity:1}}.preview img{max-width:100%;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 2px,transparent 3px,transparent 6px);mix-blend-mode:overlay;animation:slide 1.8s linear infinite;border-radius:12px}@keyframes slide{0%{background-position-y:0}to{background-position-y:100%}}.grid{display:grid;grid-template-columns:1fr 1.4fr;gap:16px}.panel{background:var(--panel);border:1px solid rgba(255,255,255,.06);padding:16px;border-radius:14px;animation:fade-in .35s ease}.panel-title{margin:0 0 10px}.panel-subtitle{margin:8px 0;color:var(--muted);font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.kpi{background:#ffffff05;border:1px solid rgba(255,255,255,.06);padding:12px;border-radius:12px;text-align:center}.kpi-value{color:var(--cyan);font-weight:800}.kpi-label{color:var(--muted);font-size:12px}.rating-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}.rating-item{display:flex;justify-content:space-between;background:#ffffff05;border:1px solid rgba(255,255,255,.06);padding:10px;border-radius:10px}.json-block{background:#0b0d12;border:1px solid rgba(255,255,255,.06);padding:10px;border-radius:10px;overflow:auto;max-height:200px}.canvas-wrap{margin-top:10px;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.08);position:relative;box-shadow:0 10px 40px #00000059}canvas{width:100%;height:auto;display:block}.canvas-wrap{position:relative}.overlay-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;text-align:center;padding:20px}.overlay-center.card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(300px 200px at 50% 50%,rgba(0,0,0,.25),transparent);border-radius:16px}.overlay-center .overlay-title{font-size:22px;font-weight:800;letter-spacing:.4px;font-family:Orbitron,Inter,system-ui}.overlay-center .overlay-kpis{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;justify-content:center}.kpi-pill{pointer-events:none;background:#00000059;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;box-shadow:inset 0 0 12px #ffffff0a}.kpi-pill .label{color:var(--muted);font-size:12px;margin-right:6px}.kpi-pill .value{color:var(--text);font-weight:800}.overlay-center .overlay-sub{margin-top:6px;color:var(--muted);font-size:13px}.overlay-center.good .overlay-title{color:var(--cyan);text-shadow:0 0 16px rgba(0,255,204,.4)}.overlay-center.bad .overlay-title{color:#ff6b6b;text-shadow:0 0 16px rgba(255,0,0,.25)}.marquee{position:relative;overflow:hidden;max-width:90%}.marquee span{display:inline-block;padding:0 20px;animation:marquee 8s linear infinite}@keyframes marquee{0%{transform:translate(20%)}to{transform:translate(-20%)}}.scan-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.scan-glow{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(400px 200px at 50% 0%,rgba(0,255,204,.06),transparent);animation:float 6s ease-in-out infinite}.scan-line{position:absolute;left:0;right:0;top:-2px;height:2px;background:linear-gradient(90deg,transparent,rgba(0,255,204,.8),transparent);animation:scan 2.2s ease-in-out infinite}.scan-dots{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.03) 0px,rgba(255,255,255,.03) 2px,transparent 3px,transparent 6px);mix-blend-mode:overlay}@keyframes scan{0%{top:-2px}50%{top:calc(100% - 2px)}to{top:-2px}}.progress{position:relative;height:6px;border-radius:999px;background:#ffffff0f;margin:8px auto 0;width:240px;overflow:hidden}.progress .bar{position:absolute;top:0;right:0;bottom:0;left:0;width:40%;background:linear-gradient(90deg,#0fc3,#f0f3);animation:run 1.2s ease-in-out infinite;border-radius:999px}@keyframes run{0%{left:-40%}50%{left:60%}to{left:-40%}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fade-in .2s ease}.modal-card{position:relative;width:min(1100px,92vw);border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 40px #0006;background:#0b0d12}.modal-close{position:absolute;right:10px;top:10px;z-index:2;cursor:pointer;border:0;background:#0006;color:#fff;border-radius:8px;padding:6px 8px}.modal-canvas-wrap{position:relative}.modal-canvas{width:100%;height:auto;display:block;filter:blur(8px) saturate(1.1) brightness(.9)}.modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.modal-title{font-size:clamp(36px,8vw,92px);font-weight:800;letter-spacing:.6px;font-family:Orbitron,Inter,system-ui;line-height:1.08;color:var(--cyan);text-shadow:0 0 14px rgba(0,255,204,.55);-webkit-text-stroke:2px rgba(0,0,0,.55);text-stroke:2px rgba(0,0,0,.55)}.modal-overlay.tone-dark .modal-title{color:#e6f3ff;text-shadow:0 0 28px rgba(0,0,0,.7);-webkit-text-stroke:2px rgba(0,0,0,.6);text-stroke:2px rgba(0,0,0,.6)}.modal-overlay.tone-light .modal-title{color:#0b0d12;text-shadow:0 0 36px rgba(255,255,255,.75);-webkit-text-stroke:2px rgba(255,255,255,.85);text-stroke:2px rgba(255,255,255,.85)}.modal-overlay.good .modal-title{color:var(--cyan);filter:drop-shadow(0 0 14px rgba(0,255,204,.55))}.modal-overlay.bad .modal-title{color:#ff6b6b;text-shadow:0 0 36px rgba(0,0,0,.65);-webkit-text-stroke:2px rgba(0,0,0,.7);text-stroke:2px rgba(0,0,0,.7)}.modal-overlay.good{background:radial-gradient(60% 40% at 50% 60%,rgba(0,0,0,.35),transparent)}.modal-overlay.bad{background:radial-gradient(60% 40% at 50% 60%,rgba(0,0,0,.45),transparent)}.modal-kpis{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap;justify-content:center}.modal-pill{background:#0009;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:12px 16px;font-weight:800}.modal-kpis{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;justify-content:center}.modal-pill{background:#00000073;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:10px 14px;font-weight:700}.analyze-popup{position:fixed;right:18px;bottom:90px;z-index:90}.ap-card{background:#0e1016;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;width:240px;box-shadow:0 10px 30px #0000004d;animation:fade-in .2s ease}.ap-title{font-weight:700;margin-bottom:6px}.ap-scene{display:flex;align-items:center;justify-content:space-between;margin:8px 0}.ap-chip{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#00000059;border:1px solid rgba(255,255,255,.12);animation:wobble 3s ease-in-out infinite}.ap-link{flex:1;height:2px;margin:0 8px;background:linear-gradient(90deg,transparent,rgba(0,255,204,.8),transparent);animation:scan 2.2s ease-in-out infinite}.ap-progress{position:relative;height:6px;background:#ffffff0f;border-radius:999px;overflow:hidden;margin-top:8px}.ap-bar{position:absolute;top:0;right:0;bottom:0;left:0;width:40%;background:linear-gradient(90deg,#0fc3,#f0f3);animation:run 1.2s ease-in-out infinite}.ap-steps{margin-top:6px}.ap-step{font-size:12px;color:var(--muted);opacity:.6;animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.bg-decor{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.bg-wave{position:absolute;width:45vw;height:18vh;opacity:.12;filter:blur(2px)}.bg-wave.layer1{left:6%;top:12%;animation:wave-shift 14s ease-in-out infinite}.bg-wave.layer2{right:6%;top:24%;animation:wave-shift 18s ease-in-out infinite reverse}.bg-rings{position:absolute;right:12%;bottom:14%;width:240px;opacity:.08;animation:float 16s ease-in-out infinite}.bg-pulse{position:absolute;width:280px;height:280px;right:20%;bottom:22%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,255,204,.12),transparent);animation:pulse-ring 4s ease-in-out infinite}.bg-pulse.small{width:180px;height:180px;left:18%;top:26%;animation-duration:5.5s}@keyframes pulse-ring{0%,to{transform:scale(.9);opacity:.6}50%{transform:scale(1.1);opacity:1}}@keyframes wave-shift{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(20px) translateY(-6px)}}.footer{text-align:center;color:var(--muted);padding:30px 0 50px}.rating-header{display:flex;justify-content:space-between;align-items:center;margin:8px 0}.neon-btn.small{padding:6px 10px;font-size:12px;border-radius:8px}.rating-more{text-align:center;padding:8px;color:var(--muted);font-size:12px}.explain-panel{position:absolute;right:10px;bottom:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;display:grid;gap:8px;max-width:min(380px,42%)}.legend{display:grid;gap:6px}.legend-title{font-weight:700;font-size:12px;color:var(--muted)}.legend-items{display:grid;gap:6px}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.legend-item .swatch{width:10px;height:10px;border-radius:2px;box-shadow:0 0 10px #0006}.keywords{display:grid;gap:6px}.keyword-cloud{display:flex;gap:6px;flex-wrap:wrap}.chip.keyword{font-size:11px;padding:4px 8px;opacity:.9}.heat-pulse{position:absolute;transform:translate(-50%,-50%);pointer-events:none;z-index:2}.heat-pulse .ring{position:absolute;left:0;top:0;border-radius:999px;border:2px solid rgba(0,255,204,.5);box-shadow:0 0 18px #00ffcc59;animation:pulse-ring 1.8s ease-out infinite}.heat-pulse .ring.delay{animation-delay:.6s}.trend-ticker{margin-top:10px;overflow:hidden;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:linear-gradient(180deg,#111319e6,#11131999)}.trend-ticker .ticker-track{display:flex;gap:30px;white-space:nowrap;padding:8px 12px;animation:ticker 16s linear infinite;color:var(--muted);font-weight:600}.trend-ticker .ticker-track span{display:inline-block}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.rating-modal-list{max-height:400px;overflow-y:auto;padding:16px}.rating-modal-item{display:flex;justify-content:space-between;background:#ffffff05;border:1px solid rgba(255,255,255,.06);padding:12px;border-radius:10px;margin-bottom:8px}.rating-user{color:var(--text);font-weight:500}.rating-score{color:var(--cyan);font-weight:800}.no-ratings{text-align:center;color:var(--muted);padding:20px}.model-info{display:grid;gap:8px}.model-field{display:flex;justify-content:space-between;align-items:center}.model-label{color:var(--muted);font-weight:500}.model-value{color:var(--text);font-weight:600}.detector-value{color:var(--green);font-weight:700;text-shadow:0 0 8px rgba(0,255,170,.4)}.sponsor-window{margin:24px 0;background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px;text-align:center;animation:fade-in .35s ease}.sponsor-title{margin:0 0 16px;color:var(--cyan);font-size:18px;font-weight:700}.sponsor-gif-container{display:flex;justify-content:center;align-items:center}.sponsor-gif{max-width:100%;height:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0000004d}.toast{position:fixed;right:18px;bottom:18px;padding:12px 14px;border-radius:12px;background:#0e1016;border:1px solid rgba(255,255,255,.12);z-index:50;cursor:pointer;overflow:hidden}.toast .toast-glow{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;background:radial-gradient(300px 200px at 10% 40%,rgba(0,255,204,.15),transparent),radial-gradient(250px 200px at 80% 70%,rgba(255,0,255,.15),transparent);filter:blur(20px);animation:float 8s ease-in-out infinite}.toast .toast-content{position:relative}.toast.success{border-color:#00ffaa80;box-shadow:0 0 24px #0fa3}.toast.error{border-color:#f006;box-shadow:0 0 24px #ff000026}@media (max-width: 900px){.metrics,.grid{grid-template-columns:1fr}}.welcome-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:120;animation:fade-in .2s ease}.welcome-card{position:relative;width:min(980px,92vw);border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 40px #00000080;background:#0b0d12}.welcome-video{width:100%;height:auto;display:block;object-fit:cover;max-height:64vh}.welcome-watermark{position:absolute;top:8%;left:50%;transform:translate(-50%);font-family:Orbitron,Inter,system-ui;font-weight:800;font-size:clamp(24px,6vw,72px);color:#ffffffe6;letter-spacing:1px;text-transform:uppercase;pointer-events:none;mix-blend-mode:overlay;opacity:.85;text-shadow:0 0 18px rgba(0,0,0,.6)}.welcome-art-wrap{width:100%;display:grid;place-items:center}.welcome-art{width:min(900px,92%);height:auto;display:block}.welcome-text-block{padding:12px 16px 6px;text-align:center;color:var(--text);font-size:14px;background:#00000059;border-top:1px solid rgba(255,255,255,.08)}.welcome-controls{display:flex;gap:10px;justify-content:center;padding:10px 16px 16px;background:#00000059;border-top:1px solid rgba(255,255,255,.06)}.welcome-btn{padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#0e1016;color:var(--text);font-weight:800;cursor:pointer;box-shadow:0 0 16px #00ffcc2e}.welcome-btn:hover{border-color:var(--cyan);box-shadow:0 0 22px #00ffcc4d}
