@layer components{.tf-voice-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.tf-voice-status{overflow-wrap:anywhere;max-width:100%;min-height:40px;padding:8px 16px;font-size:15px}.tf-voice-record-again{margin-left:auto}.tf-voice-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.tf-voice-recorder{border-radius:28px;flex-direction:column;gap:24px;padding:30px 32px 32px;display:flex}.tf-voice-languages{background:var(--sage-50);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.tf-voice-language{min-height:44px;color:var(--muted);transition:background-color var(--m-quick) var(--e-out), box-shadow var(--m-quick) var(--e-out);border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:15px;font-weight:800;display:inline-flex}.tf-voice-language[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:var(--shadow-card)}.tf-voice-language:hover:not(:disabled){background:var(--card)}.tf-voice-language .th{color:var(--brand-text);font-size:18px}.tf-voice-language:disabled{cursor:not-allowed}.tf-voice-transcript{isolation:isolate;background:var(--paper);text-align:center;border-radius:24px;justify-content:center;align-items:center;min-height:300px;padding:24px;display:flex;position:relative;overflow:hidden}.tf-voice-glyph{z-index:-1;color:var(--sage-50);pointer-events:none;font-size:300px;font-weight:800;line-height:1;position:absolute;bottom:-110px;right:-20px}.tf-voice-ruby{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:8px 14px;min-width:0;display:flex}.tf-voice-ruby-word{overflow-wrap:anywhere;border-radius:14px;flex-direction:column;align-items:center;gap:6px;min-width:0;max-width:100%;padding:4px 8px 8px;display:inline-flex}.tf-voice-transliteration{color:var(--brand-text);font-size:15px;line-height:1.3}.tf-voice-thai{color:var(--ink);overflow-wrap:anywhere;font-size:clamp(40px,5vw,60px);font-weight:700;line-height:1.5}.tf-voice-interim{color:var(--muted);border-bottom:2px dashed var(--field-border)}.tf-voice-plain-transcript{max-width:100%}.tf-voice-empty{max-width:440px;color:var(--muted);font-size:18px;font-weight:600;line-height:1.7}.tf-voice-controls{flex-direction:column;align-items:center;gap:10px;padding-top:8px;display:flex}.tf-voice .tf-voice-mic{isolation:isolate;border-radius:50%;width:112px;min-width:112px;height:112px;position:relative}.tf-voice .tf-voice-mic--listening{--button-bg:var(--wrong-ink);--button-ink:var(--wrong-bg);--button-press:var(--button-bg);--button-press-wash:linear-gradient(#0000001f, #0000001f);--button-hover:var(--wrong-ink)}.tf-voice-mic--listening:before,.tf-voice-mic--listening:after{content:"";z-index:-1;pointer-events:none;border:6px solid color-mix(in srgb, var(--wrong-ink) 12%, transparent);border-radius:50%;position:absolute}.tf-voice-mic--listening:before{inset:-16px}.tf-voice-mic--listening:after{inset:-8px}.tf-voice-control-status{color:var(--muted);text-align:center;margin-top:10px;font-size:15px;font-weight:800}.tf-voice-privacy{color:var(--muted);text-align:center;font-size:13px;font-weight:600}.tf-voice-waveform{background:var(--wrong-bg);border-radius:999px;align-items:center;gap:5px;padding:8px 18px;display:flex}.tf-voice-waveform-bar{background:var(--wrong-ink);width:6px;animation:tf-voice-wave var(--m-loader) var(--e-in-out) infinite alternate;transform-origin:50%;border-radius:999px}.tf-voice-words{border-radius:28px;padding:24px 24px 26px}.tf-capture-panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tf-capture-label{color:var(--brand-text);letter-spacing:1.4px;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:800;display:inline-flex}.tf-voice-lookup-label{color:var(--muted);margin-block:14px;font-size:14px;font-weight:600;line-height:1.5}.tf-voice-word-list{gap:10px;display:grid}.tf-voice-word-row{background:var(--sage-50);border-radius:16px;min-width:0;padding:10px 16px 12px}.tf-voice-word-heading{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.tf-voice-word-thai{color:var(--ink);overflow-wrap:anywhere;font-size:24px;font-weight:700;line-height:1.5}.tf-voice-word-transliteration{color:var(--brand-text);overflow-wrap:anywhere;font-size:14px}.tf-voice-word-meaning{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:14px;line-height:1.5}.tf-voice-search-actions{gap:8px;margin-top:20px;display:grid}.tf-capture-empty{background:var(--paper);color:var(--muted);overflow-wrap:anywhere;border-radius:16px;margin-top:16px;padding:16px;font-size:14px;font-weight:600;line-height:1.6}.tf-capture-empty--error{background:var(--wrong-bg);color:var(--wrong-ink)}.tf-capture-definition-number{background:var(--sage-50);width:26px;height:26px;color:var(--brand-text);border-radius:9px;place-items:center;font-size:13px;font-weight:800;display:grid}.tf-capture-definition-title{color:var(--ink);overflow-wrap:anywhere;font-size:19px;font-weight:800;line-height:1.4}.tf-capture-meaning-card{border-radius:28px;padding:24px 26px 26px}.tf-capture-ocr-note{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;font-size:12px;line-height:1.5;display:inline-flex}.tf-capture-ocr-note .th{font-size:14px;line-height:1.5}.tf-ocr{color:var(--ink);scroll-margin-top:96px;overflow:hidden}.tf-ocr-loading{background:var(--paper);justify-content:center;align-items:center;min-height:128px;display:flex}.tf-ocr-inner{flex-direction:column;gap:20px;width:min(1136px,100% - 40px);margin-inline:auto;padding-block:28px;display:flex;position:relative}.tf-ocr-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tf-ocr-title{align-items:center;gap:8px;font-size:16px;font-weight:800;display:inline-flex}.tf-ocr-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.tf-ocr-preview{background:var(--foot);border-radius:28px;padding:0;position:relative;overflow:hidden}.tf-ocr-image-viewport{aspect-ratio:4/3;width:100%;position:relative}.tf-ocr-image-canvas{background:var(--foot);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tf-page .tf-ocr-box,.tf-ocr .tf-ocr-box{border:1px solid var(--field-border);min-width:0;min-height:0;transition:border-color var(--m-quick) var(--e-out), background-color var(--m-quick) var(--e-out);background:0 0;border-radius:8px;padding:0;position:absolute}.tf-ocr .tf-ocr-box:hover{border-color:var(--sage);background:color-mix(in srgb, var(--brand) 12%, transparent)}.tf-ocr .tf-ocr-box[aria-pressed=true]{border:2px solid var(--sage);background:color-mix(in srgb, var(--brand) 12%, transparent);outline:3px solid color-mix(in srgb, var(--sage) 50%, transparent);outline-offset:1px}.tf-ocr-box-number{background:var(--brand);width:22px;height:22px;color:var(--on-brand);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;top:-10px;left:-6px}.tf-ocr-upload{border:2px dashed var(--field-border);background:var(--card);max-width:440px;min-height:44px;color:var(--ink);text-align:center;transition:border-color var(--m-quick) var(--e-out);border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin-inline:20px;padding:36px 40px;display:flex;position:relative}.tf-ocr-upload:hover{border-color:var(--brand)}.tf-ocr-upload-icon{background:var(--sage-50);width:76px;height:76px;color:var(--brand-text);border-radius:50%;place-items:center;display:grid}.tf-ocr-upload-title{font-family:var(--font-display-stack);margin-top:6px;font-size:24px;font-weight:900;line-height:1.2}.tf-ocr-upload-help{color:var(--muted);font-size:15px;font-weight:700}.tf-ocr-processing{pointer-events:none;position:absolute;inset:0}.tf-ocr-scan-line{background:var(--sage);height:3px;animation:tf-ocr-scan var(--m-loader) var(--e-in-out) infinite alternate;border-radius:999px;position:absolute;inset:8% 4% auto}.tf-ocr-processing-label{background:var(--hdr-pill);max-width:calc(100% - 32px);color:var(--hdr-ink);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:800;display:inline-flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.tf-ocr-word-chip{--surface-outline:1px solid var(--field-border);min-height:44px;transition:background-color var(--m-quick) var(--e-out), border-color var(--m-quick) var(--e-out);border-radius:999px;align-items:baseline;gap:8px;padding:4px 16px;display:inline-flex}.tf-ocr-word-chip[aria-pressed=true]{border-color:var(--brand);background:var(--sage-50)}.tf-ocr-word-chip:hover{background:var(--sage-50)}.tf-ocr-word-chip-text{font-size:22px;font-weight:700;line-height:1.5}.tf-ocr-meaning{min-width:0;position:sticky;top:96px}.tf-ocr .tf-ocr-word-navigation{background:var(--paper);border:1px solid var(--field-border)}.tf-ocr-word-count{min-width:44px;color:var(--muted);text-align:center;font-size:13px;font-weight:800}.tf-ocr :where(.th,.font-thai),.tf-ocr-word-meaning :where(.th,.font-thai){line-height:1.5}.tf-ocr .tr,.tf-ocr-word-meaning .tr{font-size:max(14px,1em)}@keyframes tf-voice-wave{to{transform:scaleY(.6)}}@keyframes tf-ocr-scan{to{opacity:.6;transform:translateY(16px)}}@media (max-width:960px){.tf-voice-layout,.tf-ocr-layout{grid-template-columns:minmax(0,1fr)}.tf-ocr-meaning{position:static}}@media (max-width:600px){.tf-voice .tf-page-inner{width:calc(100% - 32px);padding-block:16px 28px}.tf-voice-toolbar{gap:8px;margin-bottom:18px}.tf-voice-toolbar .tf-button{padding-inline:12px;font-size:13px}.tf-voice-status{min-height:36px;padding:6px 12px;font-size:14px}.tf-voice .tf-page-header{margin-bottom:18px}.tf-voice .tf-page-header h1{font-size:28px}.tf-voice-recorder{border-radius:24px;gap:18px;padding:16px}.tf-voice-transcript{border-radius:20px;min-height:220px;padding:18px 12px}.tf-voice-glyph{font-size:200px;bottom:-70px}.tf-voice-ruby{gap:4px 10px}.tf-voice-ruby-word{gap:4px;padding:4px 4px 6px}.tf-voice-thai{font-size:40px}.tf-voice .tf-voice-mic{width:96px;min-width:96px;height:96px}.tf-voice-words{border-radius:24px;padding:18px 16px}.tf-capture-meaning-card{border-radius:24px;padding:18px 16px 16px}.tf-ocr-inner{width:calc(100% - 32px)}.tf-ocr-toolbar{gap:8px}.tf-ocr-toolbar .tf-button{padding-inline:12px}.tf-ocr-preview{border-radius:24px}.tf-ocr-upload{border-radius:20px;gap:8px;margin-inline:16px;padding:18px}.tf-ocr-upload-icon{width:52px;height:52px}.tf-ocr-upload-icon svg{width:28px;height:28px}.tf-ocr-upload-title{font-size:20px}.tf-ocr-word-chip{padding-inline:14px}.tf-ocr-word-chip-text{font-size:21px}}@media (prefers-reduced-motion:reduce){.tf-voice-waveform-bar,.tf-ocr-scan-line{animation:none}}}
