.header-content,.nav-links{align-items:center;display:flex}.logo h1,.timer-display{font-family:'Space Grotesk',sans-serif}.live-stat-label,.logo h1,.results-title,.stat-label{text-transform:uppercase}.graph-title,.overlay-option,.results-title,.stat-card,.typing-hint{text-align:center}*{margin:0;padding:0;box-sizing:border-box}body{background:#fcfdfe;color:#1a1a1a;font-family:Inter,sans-serif;overflow-x:hidden;transition:background .3s,color .3s;min-height:100vh}.digital-grid-bg{position:fixed;inset:0;background-image:radial-gradient(circle,rgba(53,134,253,.15) 1px,transparent 1px),radial-gradient(circle,rgba(53,134,253,.08) 1px,transparent 1px);background-size:40px 40px,20px 20px;background-position:0 0,10px 10px;pointer-events:none;z-index:0;transition:background-image .3s}.header{position:fixed;top:0;left:0;right:0;z-index:40;background:rgba(255,255,255,.7);backdrop-filter:blur(10px);border-bottom:1px solid rgba(53,134,253,.1);transition:.3s}.char,.char-current,.main-wrapper,.typing-container{position:relative}.header-content{max-width:1400px;margin:0 auto;padding:16px 32px;justify-content:space-between}.logo{cursor:pointer}.logo h1{font-size:20px;font-weight:900;letter-spacing:-.5px}.glow-text{color:#3586fd;text-shadow:0 0 20px rgba(53,134,253,.5)}.nav-links{gap:20px}.nav-link{font-size:14px;font-weight:500;color:#666;text-decoration:none;transition:color .2s;letter-spacing:.5px}.nav-link:hover,.settings-btn,.shortcuts-info strong{color:#3586fd}.settings-btn{width:36px;height:36px;border-radius:8px;background:rgba(53,134,253,.08);border:1px solid rgba(53,134,253,.2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s}.settings-btn:hover{background:rgba(53,134,253,.15);transform:rotate(90deg)}.main-wrapper{z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 32px 32px}.timer-display{font-size:48px;font-weight:900;color:#fbbf24;margin-bottom:48px;text-shadow:0 0 30px rgba(251,191,36,.4);letter-spacing:4px}.typing-area{width:100%;max-width:1000px;margin:0 auto}.typing-container{background:rgba(255,255,255,.7);backdrop-filter:blur(30px);border:2px solid rgba(53,134,253,.15);border-radius:12px;padding:48px 0;min-height:180px;overflow:hidden;display:flex;align-items:center;box-shadow:0 4px 24px rgba(0,0,0,.05);transition:.3s;margin-bottom:40px}.typing-hint{font-size:14px;color:#999;font-weight:500;letter-spacing:.5px;margin-top:16px}.typing-hint span{display:inline-block;padding:8px 16px;background:rgba(53,134,253,.05);border-radius:6px;border:1px solid rgba(53,134,253,.1)}.live-stats{display:flex;justify-content:center;gap:32px;margin-top:24px;padding:16px}.live-stat{display:flex;flex-direction:column;align-items:center;gap:8px}.live-stat-label{font-size:10px;font-weight:700;letter-spacing:1.5px;color:#999}.live-stat-value,.results-title{font-weight:900;font-family:'Space Grotesk',sans-serif}.live-stat-value{font-size:28px;color:#3586fd;line-height:1}#typingText{font-family:'Roboto Mono',monospace;font-size:28px;line-height:1.6;letter-spacing:1px;font-weight:500;white-space:nowrap;user-select:none;padding:0 60px;transition:transform .1s ease-out;display:flex;align-items:center}.char{display:inline;transition:.1s}.char-upcoming{color:#999;opacity:.6}.char-current{color:#999}.char-current::before{content:'';position:absolute;left:-2px;top:0;bottom:0;width:3px;background:#3586fd;animation:1s infinite blink;box-shadow:0 0 10px #3586fd}@keyframes blink{0%,49%{opacity:1}100%,50%{opacity:0}}.char-correct{color:#10b981;opacity:1}.char-incorrect{color:#ef4444;background:rgba(239,68,68,.15);border-radius:4px}.results-container,.stat-card{border:2px solid rgba(53,134,253,.15)}.results-screen{display:none;width:100%;max-width:1100px;margin:0 auto}.results-screen.active{display:block}.results-container{background:rgba(255,255,255,.7);backdrop-filter:blur(30px);border-radius:12px;padding:32px;box-shadow:0 8px 32px rgba(0,0,0,.08)}.graph-container,.stat-card{background:rgba(255,255,255,.5)}.results-title{font-size:24px;letter-spacing:2px;color:#3586fd;margin-bottom:20px;text-shadow:0 0 30px rgba(53,134,253,.3)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.stat-card{border-radius:10px;padding:16px 12px;transition:.3s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(53,134,253,.15)}.stat-card.primary{border-color:#3586fd;background:rgba(53,134,253,.08)}.stat-label{font-size:10px;font-weight:700;letter-spacing:1.2px;color:#666;margin-bottom:8px}.stat-value{font-family:'Space Grotesk',sans-serif;font-size:36px;font-weight:900;color:#3586fd;line-height:1}.graph-title,.play-again-btn,.setting-label{font-weight:700;text-transform:uppercase}.stat-card:not(.primary) .stat-value{font-size:28px;color:#10b981}.graph-container{border:2px solid rgba(53,134,253,.15);border-radius:12px;padding:24px;margin-bottom:24px}.graph-title{font-size:11px;letter-spacing:1.5px;color:#666;margin-bottom:16px}#wpmChart{width:100%!important;height:250px!important}.action-buttons{display:flex;justify-content:center;gap:16px}.play-again-btn{display:flex;align-items:center;gap:12px;padding:16px 32px;border-radius:10px;background:linear-gradient(135deg,#3586fd 0,#9f55ff 100%);color:#fff;font-size:16px;border:none;cursor:pointer;transition:.3s;letter-spacing:1px;font-family:'Space Grotesk',sans-serif}.close-btn:hover,.play-again-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(53,134,253,.4)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-overlay.active{display:flex}.modal-content{background:rgba(252,253,254,.98);border:2px solid rgba(53,134,253,.2);border-radius:16px;padding:32px;width:100%;max-width:800px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.2)}.modal-title{font-family:'Space Grotesk',sans-serif;font-size:24px;font-weight:900;text-transform:uppercase;letter-spacing:2px;color:#3586fd;margin-bottom:32px}.setting-group{margin-bottom:24px}.setting-label{font-family:'Space Grotesk',sans-serif;font-size:11px;color:#666;margin-bottom:12px;letter-spacing:1.5px}.size-btn,.size-display{color:#3586fd;font-weight:700}.color-picker-wrapper,.font-size-control,.slider-wrapper{display:flex;align-items:center;gap:16px}.size-btn{width:40px;height:40px;border-radius:8px;background:rgba(53,134,253,.08);border:1px solid rgba(53,134,253,.2);font-size:20px;cursor:pointer;transition:.2s}.size-btn:hover{background:rgba(53,134,253,.15);transform:scale(1.05)}.size-display{font-size:24px}.color-options,.font-options,.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.color-option,.font-option,.theme-option{padding:16px;border-radius:10px;border:2px solid rgba(53,134,253,.15);text-align:center;background:rgba(255,255,255,.5);font-weight:700;cursor:pointer;transition:.2s}.color-option:hover,.font-option:hover,.overlay-option:hover,.theme-option:hover{border-color:rgba(53,134,253,.4);transform:scale(1.02);background:rgba(53,134,253,.05)}.color-option.active,.font-option.active,.overlay-option.active,.theme-option.active{border-color:#3586fd;background:rgba(53,134,253,.15);box-shadow:0 0 20px rgba(53,134,253,.2)}.color-picker-wrapper input[type=color]{width:60px;height:60px;border:none;border-radius:10px;cursor:pointer;background:0 0}.color-picker-wrapper span{font-size:14px;color:#666}.bg-upload-wrapper{display:flex;flex-direction:column;gap:12px}.upload-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:10px;background:rgba(53,134,253,.08);border:2px solid rgba(53,134,253,.2);color:#3586fd;font-weight:700;cursor:pointer;transition:.2s}.upload-btn:hover{background:rgba(53,134,253,.15);transform:translateY(-2px)}.bg-url-wrapper{display:flex;gap:8px;align-items:center}.bg-url-wrapper input{flex:1;padding:12px;border:2px solid rgba(53,134,253,.2);border-radius:8px;background:rgba(255,255,255,.5);font-size:14px}.remove-btn{padding:12px;border-radius:8px;background:rgba(239,68,68,.08);border:2px solid rgba(239,68,68,.2);color:#ef4444;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background:rgba(239,68,68,.15);transform:scale(1.05)}.slider-wrapper input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:8px;border-radius:5px;background:rgba(53,134,253,.15);outline:0}.slider-wrapper input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3586fd;cursor:pointer;box-shadow:0 0 10px rgba(53,134,253,.5)}.slider-wrapper input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3586fd;cursor:pointer;border:none;box-shadow:0 0 10px rgba(53,134,253,.5)}.close-btn,.overlay-option{border-radius:10px;font-weight:700;cursor:pointer}.slider-wrapper span{min-width:50px;text-align:right;font-weight:700;color:#3586fd}.overlay-options{display:flex;gap:12px}.overlay-option{flex:1;padding:16px;border:2px solid rgba(53,134,253,.15);background:rgba(255,255,255,.5);transition:.2s}.close-btn{padding:16px 24px;background:linear-gradient(135deg,#3586fd 0,#9f55ff 100%);color:#fff;border:none;width:100%;margin-top:20px;transition:.3s;text-transform:uppercase;letter-spacing:1px;font-family:'Space Grotesk',sans-serif}.shortcuts-info{margin-top:16px;padding:16px;background:rgba(53,134,253,.05);border-radius:10px;font-size:13px;color:#666}.shortcuts-info span{display:inline-block;margin-top:8px}@media (max-width:768px){.header-content{padding:12px 20px}.logo h1{font-size:18px}.nav-link{font-size:12px}.main-wrapper{padding:80px 20px 20px}.timer-display{font-size:36px;margin-bottom:32px}.typing-container{padding:32px 0;min-height:150px;margin-bottom:24px}#typingText{font-size:22px;padding:0 30px}.live-stats{gap:24px;margin-top:16px;padding:12px}.live-stat-value{font-size:24px}.results-container{padding:24px 20px}.results-title{font-size:20px;margin-bottom:16px}.stats-grid{grid-template-columns:1fr;gap:10px;margin-bottom:20px}.stat-card{padding:12px}.stat-value{font-size:28px!important}.stat-card:not(.primary) .stat-value{font-size:24px!important}#wpmChart{height:200px!important}.color-options,.font-options,.theme-options{grid-template-columns:repeat(2,1fr)}.modal-content{padding:24px}}.loading{opacity:.5}