@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--bg-color:#000;--text-primary:#fff;--text-secondary:#fff9;--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--glass-blur:blur(20px);--accent-blue:#007aff;--accent-purple:#af52de;--accent-glow:#007aff4d;--card-shadow:0 8px 32px 0 #000c;--btn-bg:#ffffff1a;--btn-hover:#fff3;--gold:gold;--danger:#ff3b30;--success:#34c759}[data-theme=light]{--bg-color:#f5f5f7;--text-primary:#1d1d1f;--text-secondary:#0009;--glass-bg:#ffffffb3;--glass-border:#0000001a;--accent-glow:#007aff1a;--card-shadow:0 8px 32px 0 #0000001a;--btn-bg:#0000000d;--btn-hover:#0000001a;--gold:#c69c00;--danger:#d70015;--success:#248a3d}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s}html,body,#root{background-color:var(--bg-color);min-height:100%}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}.App{z-index:1;min-height:100vh;position:relative}.container{width:min(1200px,100% - 3rem);margin:0 auto}.glass,.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--card-shadow)}.glass-card{border-radius:28px;padding:2rem}.theme-toggle{z-index:1000;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);cursor:pointer;width:44px;height:44px;color:var(--text-primary);border-radius:12px;justify-content:center;align-items:center;display:flex;position:fixed;top:1.5rem;left:1.5rem}.theme-toggle-icon-container{justify-content:center;align-items:center;display:flex}.particles-container{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}h1{letter-spacing:-.02em;margin-bottom:2rem;font-size:clamp(2.5rem,8vw,4.5rem);font-weight:800;line-height:1.1}.gradient-text{background:linear-gradient(135deg,#007aff,#af52de);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-copy{color:var(--text-secondary);max-width:600px;margin:0 auto 3rem;font-size:clamp(1.1rem,2vw,1.3rem)}.btn{cursor:pointer;border:1px solid #0000;border-radius:980px;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:var(--accent-blue);color:#fff}.btn-primary:hover{background:#0062cc;transform:scale(1.02)}.btn-secondary{background:var(--btn-bg);color:var(--text-primary);border:1px solid var(--glass-border)}.btn-secondary:hover{background:var(--btn-hover);transform:scale(1.02)}.footer-actions{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:4rem;display:flex}.action-card{cursor:pointer;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;width:140px;height:140px;transition:all .4s cubic-bezier(.23,1,.32,1);display:flex;position:relative;overflow:hidden}.action-card i{font-size:2rem}.action-card span{font-size:.95rem;font-weight:600}.action-card:before{content:"";background:radial-gradient(circle, var(--hover-color) 0%, transparent 70%);z-index:0;opacity:0;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.action-card:hover{box-shadow:0 10px 30px var(--hover-shadow);border-color:var(--hover-border);transform:scale(1.05)translateY(-5px)}.action-card:hover:before{opacity:.4;width:200%;height:200%}.action-card *{z-index:1;position:relative}.card-telegram{--hover-color:#08c;--hover-shadow:#0088cc4d;--hover-border:#0088cc80}.card-instagram{--hover-color:#e1306c;--hover-shadow:#e1306c4d;--hover-border:#e1306c80}.card-location{--hover-color:#34c759;--hover-shadow:#34c7594d;--hover-border:#34c75980}.home-shell{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:4rem 1rem;display:flex}.hero-panel{width:100%;max-width:1000px}.hero-actions{justify-content:center;gap:1rem;margin-bottom:4rem;display:flex}.feature-card{text-align:left;border-radius:20px;align-items:flex-start;gap:1rem;padding:1.5rem;display:flex}.hero-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.spinner{border:3px solid var(--glass-border);border-top-color:var(--accent-blue);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{border:1px solid var(--danger);color:var(--danger);background:#ff3b301a;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.fade-in{animation:.8s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}textarea,input[type=text],input[type=password],select{background:var(--glass-bg);border:1px solid var(--glass-border);width:100%;color:var(--text-primary);border-radius:12px;padding:1rem;font-family:inherit;font-size:1rem}textarea:focus,input:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 4px #007aff1a}.page-wrap{padding:6rem 0}.writing-layout,.speaking-layout{grid-template-columns:1fr 1fr;gap:2rem;display:grid}@media (width<=900px){.writing-layout,.speaking-layout{grid-template-columns:1fr}h1{font-size:2.5rem}}.score-orb{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:200px;height:200px;display:flex;box-shadow:0 20px 40px #0003}.score-value{color:var(--accent-blue);font-size:4rem;font-weight:800}.score-caption{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-size:.8rem;font-weight:600}.ad-banner{border-radius:20px;margin:2rem 0;overflow:hidden}.result-sections{gap:1.5rem;display:grid}.score-box{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem}.score-box-value{color:var(--accent-purple);font-size:1.5rem;font-weight:700}.score-box-label{color:var(--text-secondary);font-size:.9rem}
