/* TT WAV to MP3 — scoped to .ttwm so theme styles don't clash */
.ttwm{
	--ttwm-panel:#F2F4F3; --ttwm-ink:#1C2522; --ttwm-muted:#5E6B66; --ttwm-line:#DCE3E0;
	--ttwm-accent:#4A9B78; --ttwm-accent-ink:#FFFFFF; --ttwm-meter:#E0A526; --ttwm-err:#B3261E;
	max-width:760px; color:var(--ttwm-ink);
	font-family:inherit; font-size:16px; line-height:1.55;
	box-sizing:border-box;
}
.ttwm *, .ttwm *::before, .ttwm *::after{ box-sizing:border-box; }

.ttwm .ttwm-drop{
	position:relative; background:#FFFFFF; display:block; margin:0; padding:36px 20px; text-align:center; cursor:pointer;
	border:2px dashed var(--ttwm-line); border-radius:14px;
	transition:border-color .15s;
}
.ttwm .ttwm-drop:hover, .ttwm .ttwm-drop.is-over{ border-color:var(--ttwm-accent); }
.ttwm .ttwm-drop:focus-within{ outline:3px solid var(--ttwm-accent); outline-offset:3px; }
.ttwm .ttwm-drop strong{ display:block; font-size:1.15rem; font-weight:600; }
.ttwm .ttwm-drop span{ color:var(--ttwm-muted); font-size:.9rem; }
.ttwm .ttwm-file{ position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }

.ttwm .ttwm-controls{ display:flex; flex-wrap:wrap; gap:14px; align-items:flex-end; margin:20px 0; }
.ttwm .ttwm-controls label{ display:flex; flex-direction:column; gap:4px; margin:0; font-size:.85rem; font-weight:600; color:var(--ttwm-muted); }
.ttwm .ttwm-end{ justify-content:flex-end; }
.ttwm .ttwm-spacer{ flex:1; }
.ttwm select{
	font:inherit; color:var(--ttwm-ink); background:#FFFFFF; border:1px solid var(--ttwm-line);
	border-radius:8px; padding:8px 10px; min-width:170px; height:auto;
}

.ttwm .ttwm-btn{
	font:inherit; font-weight:600; line-height:1.2; border-radius:8px; padding:9px 16px; cursor:pointer;
	border:1px solid var(--ttwm-accent); background:var(--ttwm-accent); color:var(--ttwm-accent-ink);
	text-transform:none; letter-spacing:normal; box-shadow:none;
}
.ttwm .ttwm-btn.ttwm-ghost{ background:transparent; color:var(--ttwm-accent); }
.ttwm .ttwm-btn:disabled{ opacity:.45; cursor:not-allowed; }
.ttwm .ttwm-btn:focus-visible, .ttwm select:focus-visible{ outline:3px solid var(--ttwm-accent); outline-offset:2px; }

.ttwm .ttwm-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.ttwm .ttwm-list li{
	margin:0; background:var(--ttwm-panel); border:1px solid var(--ttwm-line); border-radius:10px; padding:14px 16px;
	display:grid; grid-template-columns:1fr auto; gap:6px 12px; align-items:center;
}
.ttwm .ttwm-list li::before{ content:none; }
.ttwm .ttwm-name{ font-weight:600; overflow-wrap:anywhere; }
.ttwm .ttwm-meta{ grid-column:1 / 2; color:var(--ttwm-muted); font-size:.85rem; }
.ttwm .ttwm-act{ grid-row:1 / 3; grid-column:2; }
.ttwm .ttwm-meter{ grid-column:1 / -1; height:6px; border-radius:3px; background:var(--ttwm-line); overflow:hidden; }
.ttwm .ttwm-meter i{ display:block; height:100%; width:0; background:var(--ttwm-meter); transition:width .1s linear; }
.ttwm .is-done .ttwm-meter i{ background:var(--ttwm-accent); }
.ttwm .is-err .ttwm-meta{ color:var(--ttwm-err); }

.ttwm .ttwm-empty{ color:var(--ttwm-muted); text-align:center; margin:12px 0; }
.ttwm .ttwm-note{ color:var(--ttwm-muted); font-size:.85rem; margin:24px 0 0; }

@media (max-width:540px){
	.ttwm .ttwm-controls label, .ttwm select{ width:100%; }
	.ttwm .ttwm-spacer{ display:none; }
}
@media (prefers-reduced-motion:reduce){ .ttwm *{ transition:none !important; } }

/* Plugin page template layout (matches the theme's centered container) */
.ttwm-page{ max-width:1100px; margin:0 auto; padding:40px 20px 64px; }
.ttwm-page-head{ margin:0 0 24px; }
.ttwm-page-title{ margin:0 0 8px; color:#2F6F57; font-size:clamp(1.8rem,4vw,2.4rem); line-height:1.15; }
.ttwm-page-lede{ margin:0; color:#5E6B66; max-width:62ch; }
.ttwm-page-content{ max-width:760px; margin-top:40px; }

/* Indeterminate bar while the file is being read/decoded */
.ttwm .is-busy .ttwm-meter i{ width:35% !important; animation:ttwm-slide 1.1s ease-in-out infinite; }
@keyframes ttwm-slide{ 0%{ transform:translateX(-100%); } 100%{ transform:translateX(300%); } }
@media (prefers-reduced-motion:reduce){ .ttwm .is-busy .ttwm-meter i{ animation:none; width:100% !important; opacity:.5; } }
