.tone-curve-button{background:transparent;border:0;padding:0;margin:0;display:block;width:100%;cursor:pointer;border-radius:var(--radius-sm)}.tone-curve-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tone-contour-path{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s ease,stroke-width .3s ease}.tone-contour-path[data-active=false]{stroke:var(--color-text-tertiary);stroke-width:1.6}.tone-contour-path[data-active=true]{stroke:var(--color-accent);stroke-width:2.4}@media (hover:hover){.tone-curve-button:hover .tone-contour-path[data-active=false]{stroke:var(--color-text-secondary);transition-duration:.14s}}.tone-panel-heading{transition:color .3s ease}.tone-panel-heading[data-active=false]{color:var(--color-text-primary)}.tone-panel-heading[data-active=true]{color:var(--color-accent)}.tone-room-stack{display:block;width:100%;max-width:1080px;margin:0 auto;padding:0 var(--space-6)}.tone-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5);width:100%}.tone-room-intro{max-width:none;margin:0;padding:var(--space-10) 0 var(--space-8) 0;text-align:left}.tone-room-cta{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:0 0 var(--space-8) 0;text-align:left;width:100%}.tone-room-cta-btn{display:inline-block;padding:var(--space-3) var(--space-6);background:var(--color-accent);color:var(--color-on-accent);border:1px solid var(--color-accent);border-radius:var(--radius-button);font-family:var(--font-english-serif);font-size:15px;letter-spacing:.02em;text-decoration:none;transition:background .14s ease,color .14s ease}.tone-room-cta-btn:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.tone-room-cta-btn--secondary{background:transparent;color:var(--color-accent-text);border:1px solid var(--color-accent)}.tone-room-cta-btn--secondary:hover{background:color-mix(in srgb,var(--color-accent) 8%,transparent);border-color:var(--color-accent);color:var(--color-accent)}.tone-room-cta-hint{font-family:var(--font-english-serif);font-style:italic;font-size:13px;color:var(--color-text-tertiary);max-width:240px;line-height:1.5}.tone-room-cta-row{gap:var(--space-5);width:100%}.tone-room-cta-item,.tone-room-cta-row{display:flex;flex-direction:column;align-items:flex-start}.tone-room-cta-item{gap:var(--space-2);text-align:left}@media (min-width:600px){.tone-room-cta-row{flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:var(--space-8)}}.td-shell{width:100%;max-width:640px;margin:0 auto;padding:var(--space-16) var(--space-4) var(--space-10);display:flex;flex-direction:column;gap:var(--space-5)}.td-rail{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:.5px solid var(--color-border)}.td-back{font-family:var(--font-english-serif);font-size:13px;color:var(--color-text-secondary);text-decoration:none}.td-back:hover{color:var(--color-text-primary)}.td-counter{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary)}.td-done-btn{font-family:var(--font-english-serif);font-size:13px;color:var(--color-text-secondary);background:transparent;border:0;padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm)}.td-done-btn:hover{color:var(--color-text-primary)}.td-done-btn:disabled{opacity:.4;cursor:default}.td-card{gap:var(--space-5);padding:var(--space-6) var(--space-4);background:var(--color-bg-raised);border:.5px solid var(--color-border);border-radius:var(--radius-card)}.td-card,.td-replay-row{display:flex;flex-direction:column}.td-replay-row{align-items:center;gap:var(--space-2)}.td-replay-btn{font-family:var(--font-english-serif);font-size:17px;color:var(--color-accent-text);background:transparent;border:1px solid var(--color-accent);padding:var(--space-3) var(--space-6);border-radius:var(--radius-button);cursor:pointer;letter-spacing:.02em;min-width:160px;transition:background .14s ease,color .14s ease}.td-replay-btn:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.td-replay-hint{font-style:italic;font-size:12px;color:var(--color-text-tertiary)}.td-prompt,.td-replay-hint{font-family:var(--font-english-serif)}.td-prompt{margin:0;text-align:center;font-size:16px;color:var(--color-text-secondary)}.td-options{display:grid;gap:var(--space-3)}.td-options--two{grid-template-columns:repeat(2,1fr)}.td-options--five{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.td-option-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-4) var(--space-3);background:transparent;border:1px solid var(--color-border-strong,#c8c7c1);border-radius:var(--radius-button);font-family:var(--font-english-serif);cursor:pointer;min-height:64px;transition:background .14s ease,border-color .14s ease,color .14s ease,opacity .2s ease}.td-option-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 6%,transparent);border-color:var(--color-accent)}.td-option-en{font-size:16px;font-weight:500;color:var(--color-text-primary)}.td-option-th{font-size:12px;color:var(--color-text-tertiary)}.td-option-mark{position:absolute;top:var(--space-2);right:var(--space-2);font-family:var(--font-mono);font-size:14px}.td-option-btn[data-variant=correct]{background:var(--color-accent);border-color:var(--color-accent)}.td-option-btn[data-variant=correct] .td-option-en{color:var(--color-on-accent);font-weight:600}.td-option-btn[data-variant=correct] .td-option-th{color:var(--color-on-accent);opacity:.8}.td-option-btn[data-variant=correct] .td-option-mark{color:var(--color-on-accent);font-size:16px;font-weight:700}.td-option-btn[data-variant=wrong]{border-color:var(--color-border);opacity:.55}.td-option-btn[data-variant=wrong] .td-option-en{text-decoration:line-through;color:var(--color-text-tertiary)}.td-option-btn[data-variant=wrong] .td-option-mark,.td-option-btn[data-variant=wrong] .td-option-th{color:var(--color-text-tertiary)}.td-option-btn[data-variant=muted]{opacity:.35}.td-option-btn[data-variant=muted] .td-option-en,.td-option-btn[data-variant=muted] .td-option-th{color:var(--color-text-tertiary)}.td-verdict{margin:0;text-align:center;font-family:var(--font-english-serif);font-size:26px;font-weight:500;letter-spacing:-.01em;line-height:1}.td-verdict--correct{color:var(--color-accent)}.td-verdict--wrong{color:var(--color-text-primary)}.tp-intro{align-items:center;text-align:center}.tp-summary{font-family:var(--font-english-serif);font-style:italic;font-size:16px;line-height:1.55;color:var(--color-text-secondary);text-align:center;max-width:520px}.tp-leaders,.tp-summary{margin:0;align-self:center}.tp-leaders{display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:480px;padding:0}.tp-leader-row{display:flex;align-items:baseline;gap:var(--space-3);font-family:var(--font-english-serif);font-size:15px}.tp-leader-label{color:var(--color-text-primary)}.tp-leader-dots{flex:1;min-width:12px;border-bottom:1px dotted var(--color-border);margin:0 2px;align-self:center;height:0}.tp-leader-value{font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;color:var(--color-text-primary);min-width:44px;text-align:right}.tp-leaders .tp-leader-row:first-child .tp-leader-label,.tp-leaders .tp-leader-row:first-child .tp-leader-value{color:var(--color-accent);font-weight:500}.tp-readout{align-items:center;text-align:center}.tp-readout-ctas{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}@media (min-width:480px){.tp-readout-ctas{flex-direction:row;gap:var(--space-5)}}.td-reveal{gap:var(--space-3);padding-top:var(--space-2);border-top:.5px dashed var(--color-border-soft,var(--color-border))}.td-reveal,.td-word{display:flex;flex-direction:column;align-items:center}.td-word{text-align:center;gap:4px}.td-word-thai{font-size:40px;line-height:1.1;color:var(--color-text-thai)}.td-word-roman{font-style:italic;font-size:16px}.td-word-gloss,.td-word-roman{font-family:var(--font-english-serif);color:var(--color-text-secondary)}.td-word-gloss{font-size:14px}.td-reveal-contour{width:100%;max-width:320px}.td-coaching{margin:0;font-style:italic;font-size:14px;line-height:1.5;color:var(--color-text-secondary);text-align:center;max-width:460px}.td-coaching,.td-next-btn{font-family:var(--font-english-serif)}.td-next-btn{align-self:center;font-size:15px;color:var(--color-on-accent);background:var(--color-accent);border:1px solid var(--color-accent);padding:var(--space-3) var(--space-6);border-radius:var(--radius-button);cursor:pointer;letter-spacing:.02em;transition:background .14s ease}.td-next-btn:hover{background:var(--color-accent-strong)}.td-empty{text-align:center;padding:var(--space-8) var(--space-4);align-items:center}.td-empty-eyebrow{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary)}.td-empty-title{font-size:22px;font-weight:500;color:var(--color-text-primary);letter-spacing:-.01em}.td-empty-body,.td-empty-title{margin:0;font-family:var(--font-english-serif)}.td-empty-body{max-width:420px;font-size:14px;line-height:1.55;color:var(--color-text-secondary)}.td-empty-link{font-family:var(--font-english-serif);font-size:13px;color:var(--color-accent-text);text-decoration:none;background:transparent;border:0;padding:0;cursor:pointer}.td-empty-link:hover{text-decoration:underline}