.tt-header{margin-bottom:24px;text-align:center}
.tt-title{font-size:32px;font-weight:800;background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px}
.tt-desc{font-size:15px;color:#6b7280;margin:0}
.tt-stats{display:flex;gap:16px;padding:20px;margin-bottom:20px;flex-wrap:wrap}
.tt-stat{flex:1;min-width:100px;text-align:center;padding:16px;background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border-radius:12px}
.tt-stat-label{display:block;font-size:12px;color:#92400e;margin-bottom:6px}
.tt-stat-value{display:block;font-size:24px;font-weight:800;color:#c2410c}
.tt-main{padding:28px}
.tt-difficulty{margin-bottom:20px}
.tt-difficulty label{display:block;font-size:14px;font-weight:500;margin-bottom:10px}
.tt-diff-tabs{display:flex;gap:8px;flex-wrap:wrap}
.tt-diff-btn{padding:10px 18px;border:2px solid #e5e7eb;border-radius:10px;background:white;font-size:14px;cursor:pointer;transition:all .2s}
.tt-diff-btn:hover,.tt-diff-btn.active{border-color:#f59e0b;background:#fffbeb;color:#d97706}
.tt-text-display{padding:24px;background:#f9fafb;border-radius:12px;margin-bottom:20px;font-size:18px;line-height:2;min-height:120px;letter-spacing:.5px}
.tt-text-display span{padding:2px 1px;border-radius:2px}
.tt-text-display span.correct{color:#059669;background:#d1fae5}
.tt-text-display span.wrong{color:#dc2626;background:#fecaca;text-decoration:line-through}
.tt-text-display span.current{background:#fbbf24;color:#fff}
.tt-input-wrap{margin-bottom:20px}
.tt-input-wrap textarea{width:100%;padding:16px;border:2px solid #e5e7eb;border-radius:12px;font-size:18px;line-height:1.8;resize:none;height:120px;transition:all .2s}
.tt-input-wrap textarea:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.1)}
.tt-input-wrap textarea:disabled{background:#f3f4f6;color:#9ca3af}
.tt-actions{display:flex;gap:12px}
.tt-btn{flex:1;padding:16px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}
.tt-start{background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%);color:white;box-shadow:0 4px 14px rgba(245,158,11,.35)}
.tt-start:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(245,158,11,.45)}
.tt-reset{background:#f3f4f6;color:#374151}
.tt-reset:hover{background:#e5e7eb}
.tt-result{padding:28px;display:none}
.tt-result.show{display:block}
.tt-result h3{margin:0 0 20px;font-size:18px}
.tt-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}
@media(max-width:640px){.tt-result-grid{grid-template-columns:repeat(2,1fr)}}
.tt-result-item{text-align:center;padding:16px;background:#f9fafb;border-radius:12px}
.tt-result-label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.tt-result-value{display:block;font-size:22px;font-weight:700;color:#111827}
.tt-result-value#resultRank{color:#f59e0b}
.tt-rank-bar{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}
.tt-rank-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#f97316);border-radius:6px;transition:width .5s ease}
.tt-history{padding:20px;display:none}
.tt-history.show{display:block}
.tt-history h3{margin:0 0 16px;font-size:16px}
.tt-history-item{display:flex;justify-content:space-between;padding:12px;border-bottom:1px solid #e5e7eb;font-size:14px}
.tt-history-item:last-child{border-bottom:none}
.tt-guide{padding:20px}
.tt-guide h3{margin:0 0 16px;font-size:16px}
.tt-guide-content{font-size:14px;line-height:1.8;color:#374151}
.tt-guide-content h4{font-size:14px;margin:16px 0 8px}
.tt-guide-content ul{padding-left:20px}
@media(prefers-color-scheme:dark){.tt-text-display{background:#1f2937}.tt-stat{background:#451a03}.tt-result-item{background:#374151}}
