@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap";:root{--bg-color: #0b0f19;--surface-color: rgba(255, 255, 255, .05);--border-color: rgba(255, 255, 255, .1);--text-main: #f8fafc;--text-muted: #94a3b8;--accent-color: #3b82f6;--accent-glow: rgba(59, 130, 246, .5);--success-color: #10b981;--warning-color: #f59e0b}*{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--bg-color);--x: 50vw;--y: 50vh}body{font-family:Outfit,sans-serif;color:var(--text-main);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}html:before,html:after{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-2;pointer-events:none}html:before{background:radial-gradient(circle at 15% 50%,rgba(59,130,246,.2),transparent 35%);animation:float1 15s ease-in-out infinite alternate}html:after{background:radial-gradient(circle at 85% 30%,rgba(139,92,246,.2),transparent 35%);animation:float2 20s ease-in-out infinite alternate-reverse}@keyframes float1{0%{transform:translate(0) scale(1)}50%{transform:translate(10vw,-10vh) scale(1.2)}to{transform:translate(-10vw,10vh) scale(.8)}}@keyframes float2{0%{transform:translate(0) scale(1)}50%{transform:translate(-10vw,10vh) scale(1.2)}to{transform:translate(10vw,-10vh) scale(.8)}}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.4) 0%,transparent 3px);background-size:32px 32px;-webkit-mask-image:radial-gradient(circle 350px at var(--x) var(--y),black 0%,transparent 100%);mask-image:radial-gradient(circle 350px at var(--x) var(--y),black 0%,transparent 100%)}.container{width:100%;max-width:800px;padding:2rem;display:flex;flex-direction:column;gap:2rem}header{text-align:center}h1{font-size:3rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(to right,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}p.subtitle{color:var(--text-muted);font-size:1.1rem}.glass-panel{border-radius:1rem;padding:2rem;transition:all .5s ease;border:1px solid transparent}.glass-panel.with-results{background:var(--surface-color);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);box-shadow:0 4px 30px #0000001a}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed var(--border-color);border-radius:.75rem;padding:3rem 2rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--accent-color);background:#3b82f60d;box-shadow:0 0 20px var(--accent-glow)}.upload-zone input[type=file]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-icon{font-size:3rem;margin-bottom:1rem;color:var(--accent-color);transition:transform .3s ease}.upload-zone:hover .upload-icon{transform:translateY(-5px)}.selector-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.selector-group label{font-size:.9rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}select{appearance:none;background:var(--surface-color);border:1px solid var(--border-color);color:var(--text-main);padding:.75rem 1rem;border-radius:.5rem;font-family:inherit;font-size:1rem;cursor:pointer;outline:none;transition:border-color .2s ease}select:focus{border-color:var(--accent-color)}.results-grid{display:none;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem;opacity:0;transform:translateY(20px);transition:all .5s cubic-bezier(.4,0,.2,1)}.results-grid.visible{display:grid;opacity:1;transform:translateY(0)}.stat-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0003}.stat-card.full-width{grid-column:1 / -1}.stat-value{font-size:3.5rem;font-weight:700;margin:.5rem 0;white-space:nowrap}.stat-value.excellent{color:var(--success-color);text-shadow:0 0 10px rgba(16,185,129,.5)}.stat-value.warning{color:var(--warning-color);text-shadow:0 0 10px rgba(245,158,11,.5)}.stat-label{font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.loader{display:none;width:48px;height:48px;border:5px solid var(--surface-color);border-bottom-color:var(--accent-color);border-radius:50%;animation:rotation 1s linear infinite;margin:2rem auto}.loader.visible{display:block}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#statusMessage{text-align:center;margin-top:1rem;color:var(--text-muted);min-height:1.5rem}.progress-bar-container{width:100%;height:16px;background:var(--border-color);border-radius:8px;overflow:hidden;margin-top:1.5rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--success-color),var(--accent-color));width:0%;transition:width 1s cubic-bezier(.4,0,.2,1);border-radius:8px}.progress-bar-fill.warning{background:linear-gradient(90deg,var(--warning-color),#ef4444)}.help-link{text-align:center;font-size:.9rem;color:var(--text-muted);margin-top:10px}.help-link a{color:var(--accent-color);text-decoration:none;font-weight:600;transition:color .3s ease}.help-link a:hover{color:#60a5fa;text-decoration:underline}.tutorial-link{font-size:.9rem;color:var(--accent-color);text-decoration:underline;cursor:pointer;text-align:left;margin-top:-1rem;margin-bottom:15px;transition:color .3s ease}.tutorial-link:hover{color:#60a5fa}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.modal-overlay.show{opacity:1;visibility:visible}.modal-content{background:var(--surface-color);border:1px solid var(--border-color);border-radius:1rem;width:85%;height:85%;max-width:800px;max-height:600px;position:relative;display:flex;flex-direction:column;box-shadow:0 10px 40px #00000080;transform:scale(.95);transition:transform .3s ease;overflow:hidden}.modal-overlay.show .modal-content{transform:scale(1)}.close-btn{position:absolute;top:1rem;right:1.5rem;background:transparent;border:none;color:var(--text-muted);font-size:2rem;cursor:pointer;transition:color .2s;z-index:10}.close-btn:hover{color:var(--text-main)}.tabs{display:flex;border-bottom:1px solid var(--border-color);background:#0003}.tab-btn{flex:1;background:transparent;border:none;color:var(--text-muted);padding:1.25rem .5rem;font-size:.95rem;font-family:inherit;cursor:pointer;transition:all .2s;font-weight:600}.tab-btn:hover{color:var(--text-main);background:#ffffff0d}.tab-btn.active{color:var(--accent-color);border-bottom:2px solid var(--accent-color);background:#ffffff05}.tab-content{display:none;flex:1;padding:1.5rem;overflow-y:auto}.tab-content.active{display:flex;flex-direction:column;align-items:center;justify-content:center}.video-container{position:relative;width:100%;max-width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#000;border-radius:.5rem;overflow:hidden}.video-container video{max-width:100%;max-height:100%;object-fit:contain}.play-overlay{position:absolute;background:#3b82f6cc;color:#fff;border:none;border-radius:50%;width:60px;height:60px;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background .2s;padding-left:5px}.play-overlay:hover{transform:scale(1.1);background:#3b82f6}.play-overlay.hidden{display:none}.app-footer{text-align:center;margin-top:1rem;font-size:.85rem}.app-footer a{color:var(--text-muted);text-decoration:none;transition:color .3s ease}.app-footer a:hover{color:var(--accent-color);text-decoration:underline}
