@import"https://fonts.googleapis.com/css2?family=SF+Pro+Display:wght@300;400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--primary-gold: #FFD700;--accent-gold: #FFA500;--dark-gold: #DAA520;--rich-black: #0D0D0D;--soft-black: #1A1A1A;--card-black: #222222;--glass-bg: rgba(255, 215, 0, .1);--glass-border: rgba(255, 215, 0, .2);--text-primary: #FFFFFF;--text-secondary: #CCCCCC;--text-muted: #888888;--shadow-gold: 0 0 30px rgba(255, 215, 0, .3);--shadow-dark: 0 20px 40px rgba(0, 0, 0, .7);--ios-radius: 20px}body{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--rich-black);color:var(--text-primary);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.animated-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background:radial-gradient(circle at 20% 80%,rgba(255,215,0,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,165,0,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(218,165,32,.08) 0%,transparent 50%),linear-gradient(135deg,#0d0d0df2,#1a1a1afa);animation:bgFloat 20s ease-in-out infinite}@keyframes bgFloat{0%,to{transform:translateY(0) rotate(0);filter:blur(0px)}33%{transform:translateY(-20px) rotate(1deg);filter:blur(1px)}66%{transform:translateY(10px) rotate(-1deg);filter:blur(.5px)}}.particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.particle{position:absolute;width:3px;height:3px;background:var(--primary-gold);border-radius:50%;animation:float 15s linear infinite;opacity:0;box-shadow:0 0 10px #ffd70080}@keyframes float{0%{transform:translateY(100vh) rotate(0) scale(0);opacity:0}10%{opacity:.8;transform:translateY(90vh) rotate(36deg) scale(1)}90%{opacity:.8;transform:translateY(-10vh) rotate(324deg) scale(1)}to{transform:translateY(-20vh) rotate(360deg) scale(0);opacity:0}}.glass-container{background:#1a1a1ad9;backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);border:1px solid rgba(255,215,0,.15);border-radius:var(--ios-radius);box-shadow:0 25px 50px #0009,inset 0 1px #ffffff1a,0 0 40px #ffd70014;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.glass-container:hover{transform:translateY(-5px);border-color:#ffd70040;box-shadow:0 35px 70px #000000b3,inset 0 1px #ffffff26,0 0 60px #ffd7001f}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 20px;position:relative}.header{text-align:center;margin-bottom:60px;animation:slideInDown 1.2s cubic-bezier(.25,.46,.45,.94)}.header h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;background:linear-gradient(135deg,var(--primary-gold) 0%,var(--accent-gold) 50%,var(--dark-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:16px;animation:textGlow 3s ease-in-out infinite alternate;letter-spacing:-.5px}.header p{font-size:1.25rem;color:var(--text-secondary);font-weight:400;opacity:0;animation:fadeInUp 1s ease-out .6s forwards}@keyframes slideInDown{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes textGlow{0%{filter:drop-shadow(0 0 20px rgba(255,215,0,.3))}to{filter:drop-shadow(0 0 40px rgba(255,215,0,.6))}}.form-container{width:100%;max-width:800px;padding:40px;margin-bottom:40px;opacity:0;animation:scaleIn 1s ease-out .8s forwards}@keyframes scaleIn{0%{transform:scale(.95) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.tab-nav{display:flex;margin-bottom:32px;background:#222222b3;border-radius:16px;padding:6px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,215,0,.1)}.tab-button{flex:1;padding:16px 24px;background:transparent;border:none;color:var(--text-secondary);font-size:1rem;font-weight:500;border-radius:12px;cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden}.tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,215,0,.1),transparent);transition:left .6s cubic-bezier(.25,.46,.45,.94)}.tab-button:hover:before{left:100%}.tab-button.active{background:linear-gradient(135deg,var(--primary-gold),var(--accent-gold));color:var(--rich-black);font-weight:600;box-shadow:0 8px 20px #ffd70059,inset 0 1px #ffffff4d;transform:translateY(-2px) scale(1.02)}.tab-button:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 25px #ffd70040}.input-group{margin-bottom:24px;animation:slideInLeft .6s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes slideInLeft{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}.input-group label{display:block;color:var(--primary-gold);font-size:.9rem;font-weight:600;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px;opacity:.9}.input-field,.textarea-field{width:100%;padding:20px 24px;background:#222222e6;border:2px solid rgba(255,215,0,.2);border-radius:16px;color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);outline:none}.input-field:focus,.textarea-field:focus{border-color:var(--primary-gold);box-shadow:0 0 0 4px #ffd70026,0 8px 30px #ffd70033;transform:translateY(-2px);background:#222222f2}.input-field::placeholder,.textarea-field::placeholder{color:var(--text-muted);opacity:.7}.textarea-field{min-height:150px;resize:vertical;font-family:inherit}.analyze-btn{width:100%;padding:20px 32px;background:linear-gradient(135deg,var(--primary-gold) 0%,var(--accent-gold) 100%);border:none;border-radius:16px;color:var(--rich-black);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94);text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden;box-shadow:0 10px 30px #ffd70059,inset 0 1px #ffffff4d;outline:none}.analyze-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s cubic-bezier(.25,.46,.45,.94)}.analyze-btn:hover:before{left:100%}.analyze-btn:hover:not(:disabled){transform:translateY(-3px) scale(1.02);box-shadow:0 15px 40px #ffd70066,inset 0 1px #fff6}.analyze-btn:active:not(:disabled){transform:translateY(-1px) scale(1.01)}.analyze-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(13,13,13,.3);border-radius:50%;border-top-color:var(--rich-black);animation:spin 1s linear infinite;margin-right:12px}@keyframes spin{to{transform:rotate(360deg)}}.results-container{width:100%;max-width:1000px;animation:fadeInScale .8s cubic-bezier(.25,.46,.45,.94)}@keyframes fadeInScale{0%{transform:scale(.95) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.score-card{padding:40px;margin-bottom:32px;text-align:center;position:relative;overflow:hidden}.score-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary-gold),transparent)}.score-display{display:flex;align-items:center;justify-content:center;margin-bottom:24px;flex-wrap:wrap;gap:32px}.score-circle{width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;background:conic-gradient(var(--primary-gold) 0deg,var(--primary-gold) var(--score-angle, 0deg),rgba(255,215,0,.2) var(--score-angle, 0deg),rgba(255,215,0,.2) 360deg);animation:scoreRotate 2s cubic-bezier(.25,.46,.45,.94)}@keyframes scoreRotate{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}.score-circle:before{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:var(--soft-black)}.score-number{font-size:3rem;font-weight:700;color:var(--primary-gold);z-index:1}.score-assessment{font-size:1.5rem;font-weight:600;color:var(--text-primary);text-align:left}.summary-card,.techniques-card,.error-card{padding:32px;margin-bottom:24px}.card-title{font-size:1.4rem;font-weight:600;color:var(--primary-gold);margin-bottom:20px;display:flex;align-items:center}.card-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,var(--primary-gold),var(--accent-gold));border-radius:2px;margin-right:16px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.card-content{color:var(--text-secondary);line-height:1.7;font-size:1rem}.technique-item{background:#222222b3;border:1px solid rgba(255,215,0,.15);border-radius:12px;padding:24px;margin-bottom:16px;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.technique-item:hover{transform:translateY(-3px) scale(1.01);border-color:#ffd7004d;box-shadow:0 12px 30px #0006}.technique-name{font-size:1.1rem;font-weight:600;color:var(--primary-gold);margin-bottom:8px}.technique-explanation{color:var(--text-secondary);margin-bottom:12px;line-height:1.6}.technique-quote{background:#0d0d0dcc;border-left:4px solid var(--primary-gold);padding:16px 20px;border-radius:8px;font-style:italic;color:var(--text-primary);position:relative}.technique-quote:before{content:'"';position:absolute;top:-10px;left:10px;font-size:2rem;color:var(--primary-gold);opacity:.5}.error-card{border-color:#f44!important}.error-card .card-title{color:#f44}.error-card .card-title:before{background:#f44}@media (max-width: 768px){.header h1{font-size:2.5rem}.header p{font-size:1rem}.form-container{padding:24px}.score-circle{width:120px;height:120px}.score-number{font-size:2.5rem}.score-display{flex-direction:column;gap:16px}.score-assessment{text-align:center}}@media (max-width: 480px){.app{padding:20px 16px}.tab-nav{flex-direction:column}.tab-button{margin-bottom:8px}.header h1{font-size:2rem}.score-circle{width:100px;height:100px}.score-number{font-size:2rem}}.fade-enter-active,.fade-leave-active{transition:opacity .3s cubic-bezier(.25,.46,.45,.94)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.slide-up-enter-from,.slide-up-leave-to{transform:translateY(20px);opacity:0}.input-field.error,.textarea-field.error{border-color:#f44;box-shadow:0 0 0 4px #ff44441a}.input-field.success{border-color:#0f8;box-shadow:0 0 0 4px #00ff881a}.validation-message{margin-top:8px;font-size:.9rem;font-weight:500}.validation-message.success{color:#0f8}.validation-message.error{color:#f44}.char-counter{margin-top:8px;font-size:.85rem;color:var(--text-muted);text-align:right}.file-upload-area{position:relative;border:2px dashed rgba(255,215,0,.3);border-radius:16px;background:#22222280;transition:all .3s ease;overflow:hidden}.file-upload-area:hover{border-color:#ffd70080;background:#222222b3}.file-input{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.file-upload-content{padding:32px 24px;text-align:center}.file-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary)}.file-placeholder .file-icon{font-size:3rem;opacity:.6}.file-hint{font-size:.85rem;color:var(--text-muted)}.file-info{display:flex;align-items:center;gap:16px;padding:16px;background:#ffd7001a;border-radius:12px;text-align:left}.file-info .file-icon{font-size:2rem}.file-details{flex:1}.file-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.file-meta{font-size:.85rem;color:var(--text-muted)}.file-remove{background:#f443;border:1px solid rgba(255,68,68,.3);color:#f44;border-radius:50%;width:32px;height:32px;cursor:pointer;transition:all .3s ease}.file-remove:hover{background:#ff44444d;transform:scale(1.1)}.upload-progress{margin-top:16px}.progress-bar{width:100%;height:8px;background:#ffd70033;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(135deg,var(--primary-gold),var(--accent-gold));border-radius:4px;transition:width .3s ease;animation:progressGlow 2s infinite alternate}@keyframes progressGlow{0%{box-shadow:0 0 10px #ffd7004d}to{box-shadow:0 0 20px #ffd70099}}.progress-text{text-align:center;font-size:.9rem;color:var(--primary-gold);font-weight:500}.analysis-type{font-size:.9rem;color:var(--text-muted);margin-top:8px;padding:4px 12px;background:#ffd7001a;border-radius:12px;display:inline-block}.tab-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media (max-width: 768px){.tab-nav{grid-template-columns:1fr}.file-info{flex-direction:column;text-align:center}.file-remove{align-self:flex-end}}#root{max-width:1280px;margin:0 auto;text-align:center}
