:root{--background: #080a10;--foreground: #f8fafc;--accent: #22c55e;--accent-rgb: 34, 197, 94;--accent-glow: rgba(34, 197, 94, .15);--secondary: #eab308;--secondary-rgb: 234, 179, 8;--secondary-glow: rgba(234, 179, 8, .15);--accent-blue: #3b82f6;--accent-blue-rgb: 59, 130, 246;--success: #22c55e;--danger: #ef4444;--glass-surface: rgba(17, 22, 38, .7);--glass-border: rgba(255, 255, 255, .06);--glass-hover-border: rgba(255, 255, 255, .12);--header-bg: rgba(8, 10, 16, .75);--footer-bg: rgba(5, 6, 10, .85);--text-title: #ffffff;--text-muted: #94a3b8;--input-bg: rgba(8, 10, 16, .6);--card-shadow: 0 12px 30px rgba(0, 0, 0, .4), 0 0 20px rgba(var(--accent-rgb), .05);--card-shadow-hover: 0 20px 40px rgba(0, 0, 0, .6), 0 0 35px rgba(var(--accent-rgb), .15);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius: 16px;--transition-smooth: all .3s cubic-bezier(.16, 1, .3, 1)}@media(prefers-color-scheme:light){:root{--background: #f8fafc;--foreground: #0f172a;--accent: #15803d;--accent-glow: rgba(21, 128, 61, .08);--secondary-glow: rgba(234, 179, 8, .08);--success: #15803d;--danger: #b91c1c;--glass-surface: rgba(255, 255, 255, .75);--glass-border: rgba(15, 23, 42, .08);--glass-hover-border: rgba(15, 23, 42, .16);--header-bg: rgba(248, 250, 252, .8);--footer-bg: rgba(241, 245, 249, .9);--text-title: #0f172a;--text-muted: #64748b;--input-bg: rgba(15, 23, 42, .04);--card-shadow: 0 12px 30px rgba(15, 23, 42, .06), 0 0 20px rgba(var(--accent-rgb), .03);--card-shadow-hover: 0 20px 40px rgba(15, 23, 42, .12), 0 0 35px rgba(var(--accent-rgb), .08)}}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-sans);overflow-x:hidden;-webkit-font-smoothing:antialiased;position:relative;min-height:100vh}body:before{content:"";position:absolute;top:-10%;left:20%;width:60%;height:50%;background:radial-gradient(circle,var(--accent-glow) 0%,transparent 60%);z-index:-2;filter:blur(120px);pointer-events:none}body:after{content:"";position:absolute;bottom:0%;right:10%;width:50%;height:50%;background:radial-gradient(circle,rgba(59,130,246,.08) 0%,transparent 60%);z-index:-2;filter:blur(140px);pointer-events:none}.main-container{min-height:100vh;display:flex;flex-direction:column}.glass-header{position:sticky;top:0;z-index:100;background-color:var(--header-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border)}.nav-content{max-width:1200px;margin:0 auto;padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.75rem;font-size:1.35rem;font-weight:800;color:var(--text-title);text-decoration:none;letter-spacing:-.02em;white-space:nowrap}.logo-icon{color:var(--accent)}.logo-sub{color:var(--secondary);font-size:.75rem;vertical-align:super;font-weight:900;text-transform:uppercase;border:1px solid var(--secondary);padding:1px 4px;border-radius:4px;margin-left:2px}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{color:var(--text-muted);text-decoration:none;font-size:.95rem;font-weight:500;transition:var(--transition-smooth)}.nav-link:hover,.nav-link.active{color:var(--text-title)}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,#15803d 100%);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-weight:600;text-decoration:none;cursor:pointer;box-shadow:0 4px 12px #22c55e40;display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 18px #22c55e66}.btn-secondary{background:var(--glass-surface);color:var(--text-title);border:1px solid var(--glass-border);padding:.65rem 1.25rem;border-radius:8px;font-weight:600;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem}.btn-secondary:hover{background:#ffffff0d;border-color:var(--glass-hover-border)}.hero-section{max-width:1200px;margin:0 auto;padding:6rem 2rem;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;position:relative}.hero-section:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(80vw,800px);height:min(80vw,800px);background:radial-gradient(circle,var(--accent-glow) 0%,transparent 65%);z-index:-1;pointer-events:none;filter:blur(40px)}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;background:rgba(var(--accent-rgb),.08);border:1px solid rgba(var(--accent-rgb),.15);border-radius:99px;font-size:.75rem;font-weight:600;color:var(--accent);margin-bottom:1.5rem;letter-spacing:.05em;text-transform:uppercase}@media(max-width:800px){.hero-section{grid-template-columns:1fr;text-align:center;padding:3rem 1.5rem}.hero-actions{justify-content:center}}.hero-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--text-title);margin-bottom:1.5rem;text-wrap:balance}.hero-title-line{display:block}.text-gradient{background:linear-gradient(135deg,var(--accent) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.2rem;color:var(--text-muted);line-height:1.6;margin-bottom:2.5rem;text-wrap:balance}.hero-actions{display:flex;gap:1rem}.elo-showcase{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius);padding:2rem;box-shadow:var(--card-shadow);position:relative;overflow:hidden;text-align:left}.elo-showcase:hover{border-color:var(--glass-hover-border);box-shadow:var(--card-shadow-hover)}.rating-badge-container{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.rating-title{font-size:.85rem;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em}.rating-value{font-size:2.5rem;font-weight:800;color:var(--text-title);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.rating-delta{font-size:1rem;color:var(--accent);background:#22c55e1a;padding:2px 8px;border-radius:4px;font-weight:700;flex-shrink:0;white-space:nowrap}.rating-labels-row{display:flex;justify-content:space-between;margin-top:.75rem;font-size:.75rem;color:var(--text-muted);gap:.5rem}.rating-labels-progress{display:flex;align-items:center;gap:.25rem}.rating-chart-mock{height:160px;display:flex;align-items:flex-end;gap:10px;padding-bottom:.5rem;border-bottom:1px solid var(--glass-border);position:relative;background-image:linear-gradient(var(--glass-border) 1px,transparent 1px);background-size:100% 40px}.chart-bar{flex:1;background:linear-gradient(to top,#22c55e0d,#22c55e73);border:1px solid rgba(34,197,94,.12);border-radius:6px 6px 0 0;position:relative;cursor:pointer;transform-origin:bottom;transition:var(--transition-smooth)}.chart-bar:hover,.chart-bar.active{background:linear-gradient(to top,rgba(234,179,8,.1),var(--secondary));border-color:#eab30866;transform:scaleY(1.04)}.dashboard-grid{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:2fr 1fr;gap:2rem}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}}.panel{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius);padding:2rem;box-shadow:0 10px 30px #0000004d}.panel-title{font-size:1.5rem;color:var(--text-title);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.lang-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;margin-bottom:2rem}.lang-button{background:#ffffff08;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-muted);padding:.75rem;cursor:pointer;font-weight:600;text-align:center}.lang-button:hover,.lang-button.active{background:#ffffff14;color:var(--text-title);border-color:var(--accent)}.text-area-container{position:relative;margin-bottom:1.5rem}.learning-textarea{width:100%;min-height:180px;background:var(--input-bg);border:1px solid var(--glass-border);border-radius:8px;padding:1rem;color:var(--foreground);font-family:inherit;font-size:1rem;resize:vertical;outline:none}.learning-textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 15px #3b82f626}.leaderboard-list{display:flex;flex-direction:column;gap:.75rem}.leaderboard-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ffffff05;border:1px solid var(--glass-border);border-radius:8px}.leaderboard-row:hover{background:#ffffff0a;border-color:var(--glass-hover-border)}.user-info{display:flex;align-items:center;gap:.75rem}.rank-badge{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:800;font-size:.8rem;background:#ffffff14;color:var(--text-muted)}.rank-badge.rank-1{background:#f59e0b;color:#000}.rank-badge.rank-2{background:#cbd5e1;color:#000}.rank-badge.rank-3{background:#b45309;color:#fff}.user-name{font-weight:600;color:var(--text-title)}.user-elo{font-family:monospace;font-weight:700;color:var(--accent)}footer{margin-top:auto;border-top:1px solid var(--glass-border);background-color:var(--footer-bg)}.footer-content{max-width:1200px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.footer-text{font-size:.85rem;color:var(--text-muted)}.footer-links{display:flex;align-items:center;gap:1.5rem}.locale-selector{display:flex;align-items:center;gap:.5rem;background:var(--glass-surface);border:1px solid var(--glass-border);padding:.4rem .75rem;border-radius:8px;color:var(--text-muted);transition:var(--transition-smooth)}.locale-selector:hover{border-color:var(--glass-hover-border);color:var(--text-title)}.locale-icon{flex-shrink:0;opacity:.7}.locale-select{background:transparent;border:none;color:inherit;font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;outline:none;padding-right:.25rem}.locale-select option{background-color:var(--background);color:var(--foreground)}.modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .25s cubic-bezier(.16,1,.3,1) forwards;overflow-y:auto;padding:1.5rem 1rem}.modal-overlay.closing{animation:fadeOut .2s cubic-bezier(.16,1,.3,1) forwards}.modal-card{background:#141a2e;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:2.5rem 2rem;width:90%;max-width:420px;margin:auto;box-shadow:0 25px 50px -12px #00000080,0 0 40px rgba(var(--accent-rgb),.05);position:relative;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center;animation:zoomIn .3s cubic-bezier(.34,1.56,.64,1) forwards;transition:height .3s cubic-bezier(.16,1,.3,1)}.modal-card.closing{animation:zoomOut .2s cubic-bezier(.16,1,.3,1) forwards}@media(prefers-color-scheme:light){.modal-card{background:#fff;border:1px solid rgba(15,23,42,.12)}.btn-google{background:#0f172a08;border-color:#0f172a1a}.btn-google:hover:not(:disabled),.google-btn-wrapper:hover .btn-google{background:#0f172a0f;border-color:#0f172a2e}}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.modal-close-btn:hover{background:#ffffff0d;color:var(--text-title)}.modal-title{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;color:var(--text-title);margin-top:1rem;margin-bottom:.5rem}.modal-description{font-size:.95rem;color:var(--text-muted);line-height:1.5;margin-bottom:2rem}.btn-google{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;background:#ffffff08;border:1px solid var(--glass-border);color:var(--text-title);padding:.85rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;box-shadow:0 4px 12px #0000001a;transition:var(--transition-smooth)}.btn-google:hover:not(:disabled){background:#ffffff14;border-color:var(--glass-hover-border);transform:translateY(-1px);box-shadow:0 6px 16px #0003}.btn-google:active:not(:disabled){transform:translateY(0)}.btn-google:disabled{opacity:.6;cursor:not-allowed}.google-btn-wrapper{position:relative;width:100%}.google-signin-overlay{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;z-index:10;cursor:pointer;overflow:hidden}.google-signin-overlay iframe{width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important}.google-btn-wrapper:hover .btn-google{background:#ffffff14;border-color:var(--glass-hover-border);transform:translateY(-1px);box-shadow:0 6px 16px #0003}.google-btn-wrapper:active .btn-google{transform:translateY(0)}.google-icon-svg{width:18px;height:18px}.spinner-icon{animation:spin 1s linear infinite}.auth-tabs{display:flex;width:100%;border-bottom:1px solid var(--glass-border);margin-bottom:1.5rem}.auth-tab{flex:1;background:transparent;border:none;color:var(--text-muted);font-weight:600;font-size:.95rem;padding:.75rem 0;cursor:pointer;position:relative;transition:var(--transition-smooth)}.auth-tab:hover{color:var(--text-title)}.auth-tab.active{color:var(--accent)}.auth-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.auth-form{width:100%;display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.form-label{font-size:.85rem;font-weight:600;color:var(--text-muted)}.form-input{width:100%;background:var(--input-bg);border:1px solid var(--glass-border);color:var(--text-title);padding:.75rem 1rem;border-radius:8px;font-size:.95rem;outline:none;transition:var(--transition-smooth);box-sizing:border-box}.form-input::placeholder,.learning-textarea::placeholder{color:var(--text-muted);opacity:.65}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.15)}.auth-form .btn-primary{width:100%;background:linear-gradient(135deg,var(--accent) 0%,var(--secondary) 100%);color:#fff;border:none;padding:.85rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px rgba(var(--accent-rgb),.2);transition:var(--transition-smooth)}.auth-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px rgba(var(--accent-rgb),.35)}.auth-form .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-form .btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-error{width:100%;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--danger);padding:.75rem 1rem;border-radius:8px;font-size:.875rem;text-align:left;line-height:1.4;margin-bottom:1rem;box-sizing:border-box}.auth-divider{display:flex;align-items:center;width:100%;margin:1.25rem 0;color:var(--text-muted);font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--glass-border)}.auth-divider span{padding:0 .75rem}.user-menu-container{position:relative}.user-profile-trigger{display:flex;align-items:center;gap:.5rem;background:var(--glass-surface);border:1px solid var(--glass-border);padding:.4rem .75rem;border-radius:8px;cursor:pointer;color:var(--text-title);font-size:.9rem;font-weight:600;transition:var(--transition-smooth)}.user-profile-trigger:hover{border-color:var(--glass-hover-border);background:#ffffff0d}.user-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid rgba(var(--accent-rgb),.3)}.user-rating-pill{background:rgba(var(--accent-rgb),.15);color:var(--accent);padding:1px 6px;border-radius:4px;font-size:.75rem;font-family:monospace;font-weight:700}.user-profile-name{white-space:nowrap}@media(max-width:600px){.user-profile-name,.user-profile-trigger .user-rating-pill,.user-profile-trigger svg{display:none}.user-profile-trigger{padding:.25rem;border-radius:50%}}.dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;width:220px;background:var(--glass-surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:12px;box-shadow:0 10px 25px -5px #0006;padding:.5rem;display:flex;flex-direction:column;gap:.25rem;z-index:200;transform-origin:top right;animation:scaleFadeIn .2s cubic-bezier(.16,1,.3,1) forwards}.dropdown-header{padding:.75rem;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:.25rem}.dropdown-name{font-weight:600;color:var(--text-title);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.1rem}.dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;border-radius:6px;color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;background:transparent;border:none;cursor:pointer;width:100%;text-align:left;transition:var(--transition-smooth)}.dropdown-item:hover{background:#ffffff0d;color:var(--text-title)}.dropdown-item.danger:hover{background:#ef44441a;color:var(--danger)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes zoomIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes zoomOut{0%{transform:scale(1);opacity:1}to{transform:scale(.95);opacity:0}}@keyframes scaleFadeIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.features-section{max-width:1200px;margin:0 auto;padding:0 2rem;width:100%}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.report-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}.report-stat-card{padding:.75rem;background:#ffffff05;border-radius:8px;text-align:center}@media(max-width:600px){.nav-content{padding:1rem}.dashboard-grid{padding:1rem;gap:1.5rem}.elo-showcase{padding:1.25rem}.rating-chart-mock{gap:4px;height:120px}.features-section{padding:0 1rem}.features-grid{grid-template-columns:1fr;gap:1.25rem}.report-stats-grid{grid-template-columns:1fr;gap:.75rem}}@media(max-width:480px){.hero-actions{flex-direction:column;gap:.75rem;align-items:stretch}.hero-actions a,.hero-actions button{width:100%;justify-content:center}.footer-links{flex-direction:column;gap:1rem;align-items:center}.modal-card{padding:1.75rem 1.25rem;margin:1rem auto}.modal-title{font-size:1.4rem;margin-top:.5rem;margin-bottom:.25rem}.modal-description{font-size:.85rem;margin-bottom:1.25rem}.auth-tabs{margin-bottom:1rem}.auth-form{gap:.85rem;margin-bottom:1rem}.form-group{gap:.35rem}.form-input{padding:.65rem .85rem;font-size:.9rem}.btn-primary,.btn-google{padding:.75rem 1.25rem;font-size:.95rem}.auth-divider{margin:1rem 0}.rating-labels-row{font-size:.65rem}}@media(max-width:1024px){.rating-badge-container{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem}.rating-value{font-size:2rem}}@media(min-width:801px)and (max-width:960px){.rating-labels-progress .progress-text{display:none}}@media(max-width:400px){.rating-labels-progress .progress-text{display:none}}@media(max-height:720px){.modal-card{padding:1.5rem 1.25rem}.modal-title{font-size:1.35rem;margin-top:.25rem}.modal-description{display:none}.auth-tabs{margin-bottom:.75rem}.auth-form{gap:.75rem;margin-bottom:.75rem}.form-group{gap:.25rem}.form-input{padding:.6rem .75rem;font-size:.9rem}.auth-divider{margin:.75rem 0}}
