*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#111;color:#e0e0e0;min-height:100vh}::selection{background:#4caf504d;color:#fff}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#111}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.header{background:#111111f2;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100}.header-inner{max-width:1100px;margin:0 auto;padding:14px 24px;display:flex;justify-content:space-between;align-items:center;position:relative}.header-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.header-logo-img{width:32px;height:32px;border-radius:6px}.header-logo h1{font-size:1.4rem;font-weight:700;color:#fff;letter-spacing:-.02em}.header-nav{display:flex;align-items:center;gap:8px;position:absolute;left:50%;transform:translate(-50%)}.header-nav-link{background:none;border:none;color:#888;font-size:.95rem;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:8px;transition:color .15s,background .15s}.header-nav-link:hover{color:#ddd;background:#ffffff0f}.header-nav-link.active{color:#fff;background:#ffffff1a}.header-actions{display:flex;align-items:center;gap:10px}.user-menu{position:relative}.username-display{color:#4caf50;font-weight:600;font-size:.95rem;cursor:pointer;display:flex;align-items:center;gap:4px;padding:8px 12px;border-radius:8px;transition:background .15s,border-radius .15s}.username-display:hover{background:#ffffff0f}.username-display.open{background:#ffffff0f;border-radius:8px 8px 0 0}.dropdown-arrow{transition:transform .15s}.dropdown-arrow.rotated{transform:rotate(180deg)}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.user-dropdown{position:absolute;top:100%;right:0;background:#161616fa;border:1px solid rgba(255,255,255,.1);border-top:none;border-radius:0 0 10px 10px;min-width:100%;box-shadow:0 8px 24px #00000080;z-index:200;overflow:hidden;animation:dropdownSlide .15s ease-out}.dropdown-item{display:block;width:100%;padding:12px 16px;background:none;border:none;color:#ccc;font-size:.9rem;text-align:left;cursor:pointer;transition:background .15s;white-space:nowrap}.dropdown-item:hover{background:#ffffff0f;color:#fff}.dropdown-logout{border-top:none;color:#f55}.dropdown-logout:hover{background:#ff55551a;color:#f55}.btn{padding:8px 18px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.btn-ghost{background:transparent;color:#aaa;border:1px solid rgba(255,255,255,.15)}.btn-ghost:hover{background:#ffffff14;color:#fff;border-color:#ffffff40}.btn-primary{background:#4caf50;color:#fff}.btn-primary:hover{background:#45a049;transform:translateY(-1px)}@media (max-width: 600px){.header-inner{padding:12px 16px}.header-logo h1{font-size:1.2rem}.header-nav{gap:4px}.header-nav-link{font-size:.85rem;padding:6px 10px}.btn{padding:7px 14px;font-size:.85rem}}.typing-test{padding:0}.typing-test-loading{text-align:center;padding:60px 0}.typing-test-loading .spinner{width:40px;height:40px;border:3px solid rgba(76,175,80,.15);border-top-color:#4caf50;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.text-display{padding:10px 32px;height:100px;overflow:hidden;cursor:text;margin-bottom:16px;font-size:1.55rem;line-height:1.85;letter-spacing:.01em;font-family:Inter,Segoe UI,system-ui,sans-serif;display:flex;flex-direction:column;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%;box-sizing:border-box;background:#1e1e1eb3;border-radius:10px}.text-lines-inner{max-width:100%;display:flex;flex-direction:column;align-items:flex-start}.text-lines-inner.sliding{animation:lineSlide .12s ease-out}@keyframes lineSlide{0%{transform:translateY(50%)}to{transform:translateY(0)}}.text-line{height:1.47em;display:flex;align-items:center;justify-content:flex-start}.char{color:#fff;white-space:pre}.char.correct{color:#4caf50}.char.incorrect{color:#f55}.char.cursor,.char.current-word{background:#78787899;padding:2px 0;border-radius:2px;color:#fff}.char.caret-cursor{border-left:2px solid #4CAF50;margin-left:-1px;padding-left:1px}.stats-bar{display:flex;align-items:center;gap:10px;width:100%}.input-display{background:#1e1e1eb3;border-radius:10px;padding:10px 16px;border:2px solid transparent;flex:1;min-width:0;height:48px;display:flex;align-items:center;cursor:text;overflow:hidden;transition:border-color .15s ease}.input-display.focused{border-color:#ffffff1f}.input-display.input-error{border-color:#f559!important}.input-text{font-size:1.4rem;color:#fff;font-family:JetBrains Mono,monospace;overflow:hidden;white-space:nowrap;min-width:0}.input-cursor{display:inline-block;width:2px;height:1.2em;background-color:#fff;margin-left:1px;animation:blink 1s infinite;flex-shrink:0}.input-cursor.hidden{background-color:transparent;animation:none}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.stat-box{background:#1e1e1eb3;border-radius:10px;padding:8px 14px;border:1px solid rgba(255,255,255,.05);height:48px;display:flex;align-items:center;justify-content:center}.wpm-box{width:100px;gap:5px}.timer-box{width:80px}.refresh-box{width:48px;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}.refresh-box:hover,.refresh-box.shift-r-active{background:#4caf50;border-color:transparent;box-shadow:0 0 10px #4caf504d}.refresh-icon{transform:scaleX(-1)}@keyframes refreshSpin{0%{transform:scaleX(-1) rotate(0)}to{transform:scaleX(-1) rotate(360deg)}}.refresh-box.spinning .refresh-icon{animation:refreshSpin .5s cubic-bezier(.4,0,.2,1)}.text-display.text-fading .text-lines-inner{animation:textFadeRefresh .17s ease}@keyframes textFadeRefresh{0%{opacity:1}35%{opacity:0}65%{opacity:0}to{opacity:1}}.stat-value{font-size:1.3rem;font-weight:700;color:#fff}.stat-value.warning{color:#f55}.stat-label{font-size:.7rem;font-weight:600;color:#fff6;text-transform:uppercase}.hidden-input-form{position:fixed;top:-200px;left:-200px;width:0;height:0;overflow:hidden;pointer-events:none}.hidden-input{position:fixed;top:-100px;left:-100px;opacity:0;width:0;height:0;border:none;outline:none;padding:0;margin:0;font-size:16px;pointer-events:none;caret-color:transparent;-webkit-text-security:none;-webkit-user-modify:read-write}@keyframes skeletonPulse{0%,to{opacity:.3}50%{opacity:.15}}.skeleton-display{justify-content:center;gap:10px;padding:24px 32px}.skeleton-line{height:16px;width:80%;background:#ffffff26;border-radius:4px;animation:skeletonPulse 1.5s ease-in-out infinite}.skeleton-line-short{width:55%}.skeleton-box{animation:skeletonPulse 1.5s ease-in-out infinite}@media (max-width: 700px){.typing-test{padding:0}.text-display{font-size:1.1rem;height:80px;margin-bottom:10px;padding:12px 16px;border-radius:8px}.text-line{height:1.5em}.stats-bar{flex-wrap:wrap;gap:8px}.input-display{width:100%;max-width:none;order:-1;height:44px}.input-text{font-size:1.1rem}.stat-box{height:44px;padding:6px 10px}.wpm-box{width:85px}.timer-box{width:70px}.refresh-box{width:44px}.stat-value{font-size:1.1rem}}.test-stats{min-width:260px;max-width:320px}.stats-wpm-hero{text-align:center;margin-bottom:14px;padding:6px 0}.stats-wpm-number{font-size:2.8rem;font-weight:800;color:#fff;letter-spacing:-.02em}.stats-wpm-number.dim{color:#333}.stats-wpm-label{font-size:.9rem;font-weight:500;color:#666;margin-left:3px;text-transform:uppercase}.stats-details{margin-bottom:12px}.stats-detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;border-radius:6px;font-size:.92rem}.stats-detail-row:nth-child(odd){background:#ffffff08}.stats-detail-label{color:#999;font-weight:400}.stats-detail-value{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}.stats-detail-value.dim{color:#444}.screenshot-btn{display:block;margin:12px auto 0;padding:10px 28px;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.screenshot-btn:hover{background:#45a049;transform:translateY(-1px)}.stats-empty{opacity:.6}@media (max-width: 700px){.test-stats{min-width:0;max-width:100%;width:100%}.stats-wpm-number{font-size:2rem}.stats-detail-row{padding:6px 10px;font-size:.82rem}.screenshot-btn{padding:8px 20px;font-size:.85rem}}.test-options{flex:1;display:flex;flex-direction:column;gap:8px}.option-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.option-label{color:#ccc;font-size:.92rem;font-weight:400;white-space:nowrap}.option-buttons{display:flex;gap:4px;flex-shrink:0}.opt-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#888;padding:6px 14px;border-radius:6px;font-size:.84rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.opt-btn:hover{background:#ffffff1a;color:#ccc}.opt-btn.active{background:#ffffff1f;border-color:#ffffff40;color:#fff}@media (max-width: 800px){.option-row{flex-direction:column;align-items:flex-start;gap:6px}.option-buttons{flex-wrap:wrap}}.performance-chart{margin:32px 0;background:#19191999;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:20px}.performance-chart svg{width:100%;height:auto;display:block}.leaderboard{margin-top:40px;max-width:1000px;margin-left:auto;margin-right:auto}.lb-title-wrap{text-align:center;margin-bottom:12px}.lb-title{display:inline-block;font-size:1.4rem;font-weight:600;color:#fff;padding:12px 40px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:transparent}.lb-reset{text-align:center;color:#666;font-size:.9rem;margin-bottom:16px}.lb-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:24px}.lb-tab{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#888;padding:8px 20px;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease}.lb-tab:hover{background:#ffffff1a;color:#ccc}.lb-tab.active{background:#4caf50;border-color:#4caf50;color:#fff}.lb-table-wrap{background:#19191966;border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:visible;position:relative}.lb-loading,.lb-empty{padding:48px;text-align:center;color:#555;font-size:1rem}.lb-table{width:100%;border-collapse:collapse;table-layout:fixed}.lb-table thead{background:#0003}.lb-table thead tr:first-child th:first-child{border-top-left-radius:12px}.lb-table thead tr:first-child th:last-child{border-top-right-radius:12px}.lb-table tbody tr:last-child td:first-child{border-bottom-left-radius:12px}.lb-table tbody tr:last-child td:last-child{border-bottom-right-radius:12px}.lb-table th{padding:16px;text-align:left;font-size:.85rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.lb-table td{padding:16px;border-bottom:1px solid rgba(255,255,255,.04);font-size:.95rem;color:#ccc;white-space:nowrap}.lb-table tbody tr:last-child td{border-bottom:none}.lb-table tbody tr:hover{background:#ffffff05}.col-rank{width:7%;text-align:center}.rank-medal{font-size:1.3rem}.rank-num{color:#666;font-weight:500}.user-link{color:#4caf50;font-weight:500;cursor:pointer}.user-link:hover{text-decoration:underline}.col-user{width:22%}.col-wpm{width:10%;font-weight:600;color:#fff}.col-accuracy{width:12%}.col-time{width:10%}.col-info{width:15%}.info-icons{display:flex;gap:8px;align-items:center}.info-icon-item{display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;line-height:1;transition:color .15s;cursor:default;position:relative}.info-icon-item.icon-active{color:#fff}.info-icon-item.icon-inactive{color:#444}.info-icon-item.info-chart-btn.clickable{cursor:pointer}.info-icon-item.info-chart-btn.clickable:hover,.info-icon-item.info-chart-btn.chart-open{color:#4caf50}.info-icon-item.has-tooltip{cursor:default}.icon-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#1e1e1e;border:1px solid rgba(255,255,255,.12);color:#e0e0e0;padding:5px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;box-shadow:0 4px 12px #00000080;z-index:600}.info-icon-item.has-tooltip:hover .icon-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.info-chart-wrapper{position:relative;display:inline-flex}.info-chart-popup{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);width:680px;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;box-shadow:0 12px 40px #0009;z-index:500;pointer-events:auto}.info-chart-popup .performance-chart{margin:0;background:transparent;border:none;padding:0}.chart-row td{padding:0!important;border-bottom:1px solid rgba(255,255,255,.04);white-space:normal}.lb-chart-container{padding:16px 24px;background:#00000026}.lb-chart-container .performance-chart{margin:0}.col-taken{width:24%;color:#888;font-size:.9rem}@media (max-width: 700px){.lb-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.lb-table{min-width:500px}.lb-table th,.lb-table td{padding:12px 10px;font-size:.85rem}.lb-tabs{flex-wrap:wrap}.lb-tab{padding:6px 14px;font-size:.82rem}.lb-title{font-size:1.1rem;padding:10px 24px}.info-chart-popup{width:420px}}.leaderboards-page{max-width:1000px;margin:0 auto;padding:40px 24px 60px}.lbp-title-wrap{text-align:center;margin-bottom:24px}.lbp-title{display:inline-block;font-size:1.6rem;font-weight:600;color:#fff;padding:12px 40px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:transparent}.lbp-time-filters{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:16px}.lbp-time-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#888;padding:10px 28px;border-radius:10px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .15s ease}.lbp-time-btn:hover{background:#ffffff1a;color:#ccc}.lbp-time-btn.active{background:#4caf50;border-color:#4caf50;color:#fff}.lbp-week-nav-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;position:relative}.lbp-week-arrow{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#888;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0}.lbp-week-arrow:hover:not(:disabled){background:#ffffff1a;color:#fff}.lbp-week-arrow:disabled{opacity:.3;cursor:default}.lbp-week-selector{position:relative;display:flex;flex-direction:column;align-items:center}.lbp-week-toggle{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#ccc;padding:9px 22px;border-radius:10px;font-size:.95rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .15s ease,color .15s ease,border-color .15s ease;white-space:nowrap;position:relative;z-index:301}.lbp-week-toggle:hover{background:#ffffff1a;color:#fff}.lbp-week-toggle.open{border-radius:12px 12px 0 0;background:#1a1a1a;border-color:#ffffff1a;border-bottom-color:transparent}.lbp-week-chevron{transition:transform .15s ease}.lbp-week-chevron.open{transform:rotate(180deg)}.lbp-week-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-top:none;border-radius:0 0 12px 12px;max-height:240px;overflow-y:auto;z-index:300;min-width:100%;box-shadow:0 8px 24px #00000080}.lbp-week-option{display:block;width:100%;padding:10px 16px;background:none;border:none;color:#aaa;font-size:.85rem;text-align:left;cursor:pointer;transition:background .15s;white-space:nowrap}.lbp-week-option:hover{background:#ffffff0f;color:#fff}.lbp-week-option.active{color:#4caf50;font-weight:600}.lbp-duration-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:24px}.leaderboards-page .lb-tab.active{background:#4caf50;border-color:#4caf50;color:#fff}.leaderboards-page .info-icon-item{position:relative}.leaderboards-page .icon-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#1e1e1e;border:1px solid rgba(255,255,255,.12);color:#e0e0e0;padding:5px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;box-shadow:0 4px 12px #00000080;z-index:600}.leaderboards-page .info-icon-item.has-tooltip:hover .icon-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.lbp-calendar-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-top:none;border-radius:0 0 12px 12px;z-index:300;padding:12px;box-shadow:0 8px 24px #00000080;min-width:260px}.lbp-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lbp-calendar-month-label{color:#ccc;font-size:.9rem;font-weight:600}.lbp-calendar-nav{background:none;border:none;color:#888;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.lbp-calendar-nav:hover:not(:disabled){color:#fff;background:#ffffff0f}.lbp-calendar-nav:disabled{opacity:.3;cursor:default}.lbp-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.lbp-calendar-day-header{text-align:center;color:#666;font-size:.7rem;font-weight:600;padding:4px 0;text-transform:uppercase}.lbp-calendar-cell{text-align:center;padding:6px 0;font-size:.8rem;color:#aaa;background:none;border:none;border-radius:6px;cursor:pointer;transition:background .15s,color .15s}.lbp-calendar-cell.empty{cursor:default}.lbp-calendar-cell:not(.empty):not(.disabled):hover{background:#ffffff0f;color:#fff}.lbp-calendar-cell.today{color:#4caf50;font-weight:600}.lbp-calendar-cell.selected{background:#4caf50;color:#fff;font-weight:600}.lbp-calendar-cell.disabled{color:#444;cursor:default}@media (max-width: 700px){.leaderboards-page{padding:24px 16px 40px}.lbp-title{font-size:1.3rem;padding:10px 24px}.lbp-time-filters{gap:6px}.lbp-time-btn{padding:8px 18px;font-size:.85rem}.lbp-duration-tabs{flex-wrap:wrap}.lbp-week-arrow{width:34px;height:34px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#1a1a1a;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:40px;max-width:420px;width:90%;position:relative;box-shadow:0 20px 60px #00000080}.modal-close{position:absolute;top:14px;right:18px;background:none;border:none;color:#666;font-size:1.8rem;cursor:pointer;line-height:1;transition:color .2s}.modal-close:hover{color:#fff}.modal-content h2{font-size:1.6rem;font-weight:700;color:#fff;margin-bottom:28px;text-align:center}.modal-content .form-group{margin-bottom:18px}.modal-content .form-group label{display:block;color:#999;font-size:.85rem;font-weight:500;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.modal-content .form-group input{width:100%;padding:12px 16px;font-size:1rem;background:#0000004d;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;outline:none;transition:border-color .2s}.modal-content .form-group input:focus{border-color:#4caf50}.modal-content .form-group input:disabled{opacity:.5}.auth-error{background:#ff55551a;border:1px solid rgba(255,85,85,.3);color:#f55;padding:10px 14px;border-radius:8px;font-size:.9rem;text-align:center;margin-bottom:16px}.auth-submit{width:100%;padding:14px;font-size:1rem;font-weight:600;color:#fff;background:#4caf50;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.auth-submit:hover:not(:disabled){background:#45a049;transform:translateY(-1px)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin-top:20px;text-align:center}.auth-switch p{color:#666;font-size:.9rem}.auth-switch button{background:none;border:none;color:#4caf50;font-size:.9rem;cursor:pointer;font-weight:600}.auth-switch button:hover{text-decoration:underline}.login-toast{position:fixed;top:20px;left:20px;background:#1e1e1ef2;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:10px;z-index:1000;animation:toast-slide-in .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-toast-icon{color:#4caf50;display:flex;align-items:center;flex-shrink:0}.login-toast-text{color:#fff;font-size:.9rem;font-weight:500;white-space:nowrap}.login-toast-close{background:none;border:none;color:#666;font-size:1.3rem;cursor:pointer;padding:0 2px;line-height:1;flex-shrink:0}.login-toast-close:hover{color:#999}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.profile{width:100%}.profile-header-section{margin-bottom:28px}.profile-header-section h2{font-size:1.8rem;font-weight:700;color:#fff;margin:0 0 4px}.profile-email{color:#888;font-size:.9rem;margin:0}.profile-tabs{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:32px}.profile-tab{background:none;border:none;color:#888;font-size:.95rem;font-weight:500;padding:14px 24px;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.profile-tab:hover{color:#ccc}.profile-tab.active{color:#4caf50;border-bottom-color:#4caf50}.stats-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stats-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:20px 16px;text-align:center}.stats-card.highlight{border-color:#4caf504d;background:#4caf5014}.stats-card-value{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:4px}.stats-card.highlight .stats-card-value{color:#4caf50}.stats-card-label{font-size:.75rem;color:#888;text-transform:uppercase;font-weight:500;letter-spacing:.05em}.stats-secondary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:32px}.stats-card-sm{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px}.stats-sm-label{color:#888;font-size:.8rem;font-weight:500}.stats-sm-value{color:#fff;font-size:.9rem;font-weight:600}.duration-stats-table{background:#ffffff05;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.05)}.duration-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;padding:12px 16px;font-size:.85rem;color:#ccc;border-bottom:1px solid rgba(255,255,255,.04)}.duration-row:last-child{border-bottom:none}.duration-header{color:#888;font-weight:600;text-transform:uppercase;font-size:.72rem;letter-spacing:.05em;background:#ffffff08}.wpm-highlight{color:#4caf50;font-weight:600}.wpm-progress-chart{display:flex;flex-direction:column;gap:6px}.progress-bar-item{display:grid;grid-template-columns:70px 1fr 90px;align-items:center;gap:10px}.progress-date{font-size:.75rem;color:#888;text-align:right}.progress-bar-track{height:20px;background:#ffffff0a;border-radius:4px;position:relative;overflow:hidden}.progress-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:4px}.progress-bar-fill.avg{background:#4caf5099;z-index:2}.progress-bar-fill.best{background:#4caf5033;z-index:1}.progress-values{display:flex;gap:8px;font-size:.75rem}.progress-avg{color:#4caf50;font-weight:600}.progress-best{color:#888}.progress-legend{display:flex;gap:16px;justify-content:center;margin-top:10px;font-size:.75rem}.legend-avg{color:#4caf50}.legend-avg:before{content:"";display:inline-block;width:10px;height:10px;background:#4caf5099;border-radius:2px;margin-right:4px;vertical-align:middle}.legend-best{color:#888}.legend-best:before{content:"";display:inline-block;width:10px;height:10px;background:#4caf5033;border-radius:2px;margin-right:4px;vertical-align:middle}.recent-tests-list{display:flex;flex-direction:column;gap:8px}.recent-test-item{background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;padding:12px 16px}.recent-test-main{display:flex;align-items:center;gap:12px;margin-bottom:6px}.recent-test-wpm{font-size:.9rem;font-weight:700;color:#fff;min-width:80px}.recent-test-bar{flex:1;height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden}.recent-test-bar-fill{height:100%;background:#4caf50;border-radius:3px;transition:width .3s ease}.recent-test-meta{display:flex;gap:16px;font-size:.75rem;color:#888}.see-more-btn{display:block;margin:20px auto 0;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#94a3b8;padding:10px 24px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.see-more-btn:hover{background:#4caf5014;color:#4caf50;border-color:#4caf5033}.profile-section{margin-bottom:32px}.profile-section h3{font-size:1rem;font-weight:600;color:#ccc;margin:0 0 16px}.settings-form{max-width:440px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.8rem;color:#888;margin-bottom:6px;font-weight:500}.form-group input{width:100%;padding:10px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.9rem;outline:none;transition:border-color .15s;box-sizing:border-box}.form-group input:focus{border-color:#4caf5080}.form-error{color:#f55;font-size:.8rem;margin-bottom:12px}.form-success{color:#4caf50;font-size:.8rem;margin-bottom:12px}.profile-save-btn{padding:10px 24px;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.profile-save-btn:hover{background:#43a047}.profile-save-btn:disabled{opacity:.6;cursor:not-allowed}.profile-loading,.profile-empty{text-align:center;color:#888;padding:60px 0;font-size:.95rem}@media (max-width: 700px){.stats-overview-grid{grid-template-columns:repeat(2,1fr)}.stats-secondary-grid{grid-template-columns:1fr}.progress-bar-item{grid-template-columns:50px 1fr 70px}}.app{min-height:100vh;display:flex;flex-direction:column}html{overflow-y:scroll}.main-content{max-width:950px;width:100%;margin:0 auto;padding:0 24px 60px;flex:1}.test-wrapper{padding-top:max(20px,calc(50vh - 178px));padding-bottom:0}.below-test-sections{transition:opacity .25s ease,max-height .25s ease,margin .25s ease;max-height:2000px;overflow:visible}.below-test-sections.sections-visible{opacity:1}.below-test-sections.sections-hidden{opacity:0;pointer-events:none;max-height:0;overflow:hidden;margin-top:0;margin-bottom:0}.stats-options-row{display:flex;gap:24px;align-items:flex-start;max-width:800px;margin:40px auto 8px}.leaderboards-content{max-width:1100px}.profile-page{padding:40px 0 60px;max-width:960px;width:100%;margin:0 auto}.profile-back-btn{background:none;border:none;color:#888;font-size:.9rem;cursor:pointer;padding:8px 0;margin-bottom:24px;display:flex;align-items:center;gap:6px;transition:color .15s}.profile-back-btn:hover{color:#fff}.site-footer{text-align:center;padding:40px 0 24px;color:#94a3b866;font-size:.85rem}@media (max-width: 800px){.stats-options-row{flex-direction:column;gap:24px;max-width:100%}.profile-page{padding:24px 20px 40px}}@media (max-width: 700px){.main-content{padding:0 16px 40px}.test-wrapper{padding-top:20px}.stats-options-row{margin-top:24px;gap:20px}.site-footer{padding:24px 0 16px}}
