.typing-test-page-container{max-width:1200px;margin:0 auto;padding:1rem;min-height:calc(100vh - 135px)}@media(max-width:768px){.typing-test-page-container{padding:.75rem}}.typing-test-page-container .page-header{text-align:center;margin-bottom:1.5rem}.typing-test-page-container .page-header .page-title{font-size:1.75rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem;letter-spacing:-.5px;transition:color .3s ease}html.dark .typing-test-page-container .page-header .page-title{color:#f8f8f2}@media(min-width:640px){.typing-test-page-container .page-header .page-title{font-size:2.5rem}}@media(min-width:1024px){.typing-test-page-container .page-header .page-title{font-size:3.5rem}}.typing-test-page-container .page-header .page-subtitle{font-size:.85rem;color:#666;max-width:500px;margin:0 auto 1rem;transition:color .3s ease}html.dark .typing-test-page-container .page-header .page-subtitle{color:#bd93f9}@media(min-width:640px){.typing-test-page-container .page-header .page-subtitle{font-size:1.1rem}}.typing-test-page-container .tool-section{background:#fff;padding:1rem;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;gap:1rem}html.dark .typing-test-page-container .tool-section{background:#282a36;border-color:#44475a;box-shadow:0 4px 12px rgba(0,0,0,.4)}.typing-test-page-container .text-display-area{min-height:120px;padding:1rem;border:1px solid #d1d5db;border-radius:4px;background-color:#fff;font-size:1.25rem;line-height:1.6;margin-bottom:1rem;overflow-y:auto;cursor:text;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .2s ease,background-color .2s ease}html.dark .typing-test-page-container .text-display-area{background-color:rgb(37.829787234,39.7212765957,51.070212766);border-color:#44475a}.typing-test-page-container .text-display-area .word{display:inline-block;margin-right:.2em;white-space:pre-wrap}.typing-test-page-container .text-display-area .word .char{display:inline-block;color:#1a1a1a}html.dark .typing-test-page-container .text-display-area .word .char{color:#f8f8f2}.typing-test-page-container .text-display-area .word .correct{color:#22c55e}.typing-test-page-container .text-display-area .word .incorrect{background-color:#dc2626;color:#fff}.typing-test-page-container .text-display-area .word .current{border-bottom:2px solid #666}html.dark .typing-test-page-container .text-display-area .word .current{border-color:#bd93f9}.typing-test-page-container .text-input{width:100%;height:120px;padding:.75rem;border:1px solid #d1d5db;border-radius:4px;background-color:#fff;color:#1a1a1a;font-size:1.25rem;box-sizing:border-box;resize:none;overflow:hidden;transition:border-color .2s ease,background-color .2s ease}.typing-test-page-container .text-input::placeholder{color:#9ca3af}.typing-test-page-container .text-input:focus{outline:none;border-color:#666;box-shadow:0 0 0 3px hsla(0,0%,40%,.2)}.typing-test-page-container .text-input:disabled{cursor:not-allowed;opacity:.7}html.dark .typing-test-page-container .text-input{background-color:rgb(37.829787234,39.7212765957,51.070212766);border-color:#44475a;color:#f8f8f2}html.dark .typing-test-page-container .text-input::placeholder{color:#6272a4}html.dark .typing-test-page-container .text-input:focus{border-color:#bd93f9;box-shadow:0 0 0 3px rgba(189,147,249,.2)}.typing-test-page-container .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:.75rem;gap:.75rem;margin-top:1rem;margin-bottom:1rem}.typing-test-page-container .stats-grid .stat-item{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.75rem;text-align:center;transition:background-color .2s ease,border-color .2s ease}html.dark .typing-test-page-container .stats-grid .stat-item{background-color:rgb(37.829787234,39.7212765957,51.070212766);border-color:#44475a}.typing-test-page-container .stats-grid .stat-item .label{font-size:.85rem;color:#666;margin-bottom:.25rem}html.dark .typing-test-page-container .stats-grid .stat-item .label{color:#bd93f9}.typing-test-page-container .stats-grid .stat-item .value{font-size:1.5rem;font-weight:700;color:#1a1a1a}html.dark .typing-test-page-container .stats-grid .stat-item .value{color:#f8f8f2}.typing-test-page-container .action-buttons{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.5rem}.typing-test-page-container .primary-button,.typing-test-page-container .secondary-button{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:4px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.typing-test-page-container .primary-button:disabled,.typing-test-page-container .secondary-button:disabled{cursor:not-allowed;opacity:.5}.typing-test-page-container .primary-button{background-color:#1a1a1a;color:#fff;border:1px solid #1a1a1a}.typing-test-page-container .primary-button:hover:not(:disabled){background-color:#333;border-color:#333}html.dark .typing-test-page-container .primary-button{background-color:#f8f8f2;color:#282a36;border-color:#f8f8f2}html.dark .typing-test-page-container .primary-button:hover:not(:disabled){background-color:#44475a;border-color:#44475a}.typing-test-page-container .secondary-button{background-color:#fff;color:#1a1a1a;border:1px solid #d1d5db}.typing-test-page-container .secondary-button:hover:not(:disabled){background-color:#fff;border-color:#1a1a1a}html.dark .typing-test-page-container .secondary-button{background-color:rgb(33.4893617021,35.1638297872,45.2106382979);color:#f8f8f2;border-color:#44475a}html.dark .typing-test-page-container .secondary-button:hover:not(:disabled){background-color:rgb(29.1489361702,30.6063829787,39.3510638298);border-color:#f8f8f2}.typing-test-page-container .results-section{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:1rem;margin-top:1rem;text-align:center;transition:background .3s ease,border-color .3s ease}html.dark .typing-test-page-container .results-section{background:rgb(37.829787234,39.7212765957,51.070212766);border-color:#44475a}.typing-test-page-container .results-section h2{font-size:1.5rem;color:#1a1a1a;margin-bottom:1rem}html.dark .typing-test-page-container .results-section h2{color:#f8f8f2}.typing-test-page-container .results-section p{font-size:1rem;color:#1a1a1a;margin-bottom:.5rem}html.dark .typing-test-page-container .results-section p{color:#f8f8f2}.typing-test-page-container .results-section p strong{color:#666}html.dark .typing-test-page-container .results-section p strong{color:#bd93f9}.typing-test-page-container .tips-section{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:1rem;margin-top:1rem;transition:background .3s ease,border-color .3s ease}html.dark .typing-test-page-container .tips-section{background:rgb(37.829787234,39.7212765957,51.070212766);border-color:#44475a}.typing-test-page-container .tips-section h2{font-size:1.25rem;color:#1a1a1a;margin-bottom:.75rem;text-align:center}html.dark .typing-test-page-container .tips-section h2{color:#f8f8f2}.typing-test-page-container .tips-section ul{list-style-type:disc;padding-left:1.5rem;color:#1a1a1a}html.dark .typing-test-page-container .tips-section ul{color:#f8f8f2}.typing-test-page-container .tips-section li{margin-bottom:.5rem;line-height:1.5;font-size:.95rem}.typing-test-page-container .error-message{color:#dc2626;font-size:.9rem;margin-top:.5rem;text-align:center}html.dark .typing-test-page-container .error-message{color:#dc2626}.typing-test-page-container .ad-placeholder{background-color:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:1rem;text-align:center;font-size:.8rem;color:#64748b;margin-top:1rem;transition:background .3s ease,border-color .3s ease,color .3s ease}html.dark .typing-test-page-container .ad-placeholder{background-color:#1a1c24;border-color:#44475a;color:#8be9fd}