/* VRT AI Voice Analysis 2.0.0 | vocalrangetester.com | every selector is scoped to .vrtava-tool (UI system shared with VRT Deep Voice Test 2.0.0).
   Sizes in px (themes shrink rem). Help text >= 15px, labels >= 13px, touch targets >= 44px, text contrast >= 4.5:1. */
.vrtava-tool{--av-pri:#4338ca;--av-pri2:#3730a3;--av-onpri:#fff;--av-ink:#0f172a;--av-text:#334155;--av-mut:#475569;--av-bg:#fff;--av-soft:#f4f5ff;--av-line:#d9dcf3;--av-edge:#94a3b8;--av-chip:#e8eaff;--av-ok:#15803d;--av-okbg:#bbf7d0;--av-warn:#b45309;--av-err:#b91c1c;--av-page:transparent;
	color:var(--av-text);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;box-sizing:border-box;text-align:left}
@media (prefers-color-scheme:dark){
	.vrtava-tool[data-scheme=auto]{--av-pri:#a5b4fc;--av-pri2:#c7d2fe;--av-onpri:#0f172a;--av-ink:#f1f5f9;--av-text:#e2e8f0;--av-mut:#cbd5e1;--av-bg:#111827;--av-soft:#1a2135;--av-line:#334155;--av-edge:#64748b;--av-chip:#272f52;--av-ok:#4ade80;--av-okbg:#166534;--av-warn:#fcd34d;--av-err:#fca5a5;--av-page:#0b1120}
	.vrtava-tool[data-scheme=auto]{padding:14px;border-radius:18px}
}
.vrtava-tool{max-width:1040px;margin:0 auto 1.75em;background:var(--av-page)}
.vrtava-tool *,.vrtava-tool *::before,.vrtava-tool *::after{box-sizing:border-box}
.vrtava-tool [hidden]{display:none!important}
.vrtava-tool p,.vrtava-tool dl,.vrtava-tool dd,.vrtava-tool dt,.vrtava-tool h2,.vrtava-tool h3,.vrtava-tool ol,.vrtava-tool ul,.vrtava-tool li,.vrtava-tool blockquote{margin:0;padding:0}
.vrtava-tool h2,.vrtava-tool h3{font-family:inherit;text-transform:none;letter-spacing:normal}
.vrtava-tool button{font:inherit;letter-spacing:normal;text-transform:none;box-shadow:none;margin:0;cursor:pointer;line-height:1.2;text-shadow:none}
.vrtava-tool button:disabled{cursor:not-allowed}
.vrtava-tool :focus-visible{outline:3px solid var(--av-pri);outline-offset:2px}
.vrtava-tool svg{display:block;flex:none}

/* head: H2 = Tool Name, lead, progress */
.vrtava-head{margin:0 0 12px}
.vrtava-tool .vrtava-title{margin:0;font-size:25px;line-height:1.25;font-weight:800;color:var(--av-ink);letter-spacing:-.01em}
.vrtava-lead{margin-top:4px!important;font-size:16px;color:var(--av-mut)}
.vrtava-tool .vrtava-steps{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;list-style:none}
.vrtava-steps li{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:3px 12px 3px 4px;border-radius:99px;background:var(--av-soft);color:var(--av-mut);font-size:14px;font-weight:700;list-style:none}
.vrtava-steps li span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:99px;background:var(--av-bg);color:var(--av-mut);font-size:13px;box-shadow:inset 0 0 0 1px var(--av-edge)}
.vrtava-steps li[aria-current=step]{background:var(--av-pri);color:var(--av-onpri)}
.vrtava-steps li[aria-current=step] span{background:var(--av-onpri);color:var(--av-pri);box-shadow:none}
.vrtava-steps li[data-done] span{background:var(--av-ok);color:#fff;box-shadow:none}

.vrtava-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.vrtava-card{border:1px solid var(--av-line);border-radius:16px;background:var(--av-bg);padding:14px;min-width:0}
.vrtava-tool .vrtava-h3{margin:0 0 10px;font-size:18px;line-height:1.3;font-weight:800;color:var(--av-ink)}
.vrtava-stepno{display:inline-block;margin-right:6px;padding:2px 9px;border-radius:99px;background:var(--av-ink);color:var(--av-bg);font-size:13px;font-weight:800;vertical-align:2px}
.vrtava-label{display:block;font-size:15px;font-weight:700;color:var(--av-ink)}
.vrtava-hint{margin-top:6px!important;font-size:15px;line-height:1.45;color:var(--av-mut)}

/* Step 1: mode (radio group) + task */
.vrtava-seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border-radius:12px;background:var(--av-chip)}
.vrtava-tool .vrtava-seg button{min-height:44px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--av-ink);font-weight:700;font-size:15px}
.vrtava-tool .vrtava-seg button:hover{background:var(--av-bg);color:var(--av-ink)}
.vrtava-tool .vrtava-seg button[aria-checked=true]{background:var(--av-pri);color:var(--av-onpri)}
.vrtava-seg button[aria-checked=true]::before{content:"● ";font-size:.8em}
.vrtava-setup .vrtava-label{margin-top:14px}
.vrtava-tool .vrtava-passage{margin:6px 0 0;padding:12px 14px;border:0;border-left:4px solid var(--av-pri);border-radius:10px;background:var(--av-soft);font-style:normal;quotes:none;box-shadow:none}
.vrtava-tool .vrtava-passage::before,.vrtava-tool .vrtava-passage::after{content:none;display:none}
.vrtava-tool .vrtava-passage p{font-size:17px;line-height:1.6;color:var(--av-ink);font-style:normal}
.vrtava-tool[data-state=rec] .vrtava-passage,.vrtava-tool[data-state=rec] .vrtava-task{border-left-color:#dc2626;box-shadow:0 0 0 2px rgba(220,38,38,.25)}

/* Step 2: recorder panel (dark in both schemes) */
.vrtava-rec{border-radius:16px;background:#0f172a;color:#e2e8f0;padding:14px;min-width:0}
.vrtava-rec .vrtava-h3{color:#fff}
.vrtava-rec .vrtava-stepno{background:#fff;color:#0f172a}
.vrtava-rec :focus-visible{outline-color:#22d3ee}
.vrtava-mainrow{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.vrtava-tool .vrtava-main{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:1 1 220px;min-height:56px;padding:0 22px 0 18px;border:0;border-radius:99px;background:#4f46e5;color:#fff;font-weight:800;font-size:18px}
.vrtava-tool .vrtava-main:hover,.vrtava-tool .vrtava-main:focus{background:#4338ca;color:#fff}
.vrtava-main svg{width:24px;height:24px}
.vrtava-tool[data-state=calib] .vrtava-main,.vrtava-tool[data-state=rec] .vrtava-main,.vrtava-tool[data-state=starting] .vrtava-main{background:#dc2626}
.vrtava-tool[data-state=calib] .vrtava-main:hover,.vrtava-tool[data-state=rec] .vrtava-main:hover{background:#b91c1c}
.vrtava-tool[data-state=rec] .vrtava-main svg{animation:vrtava-pulse 1.2s ease-in-out infinite}
@keyframes vrtava-pulse{50%{opacity:.35}}
.vrtava-tool .vrtava-main:disabled{background:#334155;color:#cbd5e1}
.vrtava-clock{display:flex;flex-direction:column;align-items:flex-end;margin-left:auto!important;line-height:1.15}
.vrtava-clock span{font-size:13px;font-weight:700;color:#cbd5e1}
.vrtava-clock output{font-size:28px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.vrtava-private{display:flex;align-items:flex-start;gap:6px;margin-top:10px!important;font-size:15px;color:#cbd5e1}
.vrtava-private svg{width:16px;height:16px;margin-top:3px;color:#4ade80}
.vrtava-notice{margin-top:12px;padding:10px 12px;border-radius:12px;border-left:5px solid #dc2626;background:#fef2f2;color:#7f1d1d;font-size:15px}
.vrtava-notice[data-kind=info]{border-left-color:#2563eb;background:#eff6ff;color:#1e3a8a}
.vrtava-ntitle{font-size:17px;font-weight:800;margin-bottom:2px!important}
.vrtava-live{margin-top:12px}
.vrtava-readout{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.vrtava-rlabel{font-size:13px;font-weight:700;color:#cbd5e1;min-width:4.6em}
.vrtava-rhz{font-size:17px;color:#e2e8f0;font-variant-numeric:tabular-nums}
.vrtava-rhz b{font-size:32px;font-weight:800;color:#fff}
.vrtava-rhz b:empty::before{content:"–";color:#64748b;font-weight:600}
.vrtava-rnote{font-size:18px;font-weight:800;color:#22d3ee}
.vrtava-level{display:flex;align-items:center;gap:10px;margin-top:6px}
.vrtava-meter{position:relative;flex:1 1 auto;height:12px;border-radius:99px;background:#1e293b;box-shadow:inset 0 0 0 1px #475569;overflow:hidden}
.vrtava-meter i{position:absolute;inset:0;transform:scaleX(0);transform-origin:left center;background:#475569;transition:transform .08s linear}
.vrtava-meter[data-level=good] i{background:#4ade80}
.vrtava-meter[data-level=quiet] i{background:#94a3b8}
.vrtava-meter[data-level=loud] i{background:#f87171}
.vrtava-leveltxt{min-width:6.6em;font-size:15px;font-weight:700;color:#e2e8f0}
.vrtava-trace{position:relative;height:150px;margin-top:10px;border-radius:10px;background:#0b1224;overflow:hidden;box-shadow:inset 0 0 0 1px #334155}
.vrtava-trace canvas{display:block;width:100%;height:100%}
.vrtava-traceempty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 12px;text-align:center;color:#e2e8f0;font-size:15px;background:rgba(11,18,36,.82)}
.vrtava-progrow{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:15px;color:#e2e8f0}
.vrtava-prog{position:relative;flex:1 1 auto;height:6px;border-radius:99px;background:#1e293b;overflow:hidden}
.vrtava-prog i{position:absolute;inset:0;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,#6366f1,#22d3ee)}
.vrtava-status{margin-top:10px!important;min-height:2.9em;font-size:15px;color:#fff}
.vrtava-status[data-kind=ok]{color:#86efac;font-weight:700}
.vrtava-status[data-kind=ok]::before{content:"✓ "}
.vrtava-status[data-kind=error]{color:#fca5a5;font-weight:700}
.vrtava-status[data-kind=error]::before{content:"⚠ "}
.vrtava-status[data-kind=busy]{font-weight:700}
.vrtava-tool[data-state=error] .vrtava-status,.vrtava-status.is-sr{position:absolute;width:1px;height:1px;min-height:0;margin:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vrtava-rec{position:relative}
.vrtava-keys{margin-top:4px!important;font-size:13px;color:#cbd5e1}
.vrtava-tool noscript .vrtava-status,.vrtava-tool>noscript p{color:var(--av-err);font-weight:700}

/* Result */
.vrtava-tool .vrtava-result .vrtava-h3:focus{outline:none}
.vrtava-tool .vrtava-result .vrtava-h3:focus-visible{outline:2px solid var(--av-pri);outline-offset:4px;border-radius:6px}
.vrtava-empty{padding:4px 0 2px;font-size:15px;color:var(--av-mut)}
.vrtava-emptybig{font-size:20px;font-weight:800;color:var(--av-mut)}
.vrtava-body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.vrtava-hero{display:flex;flex-direction:column}
.vrtava-big{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;line-height:1}
.vrtava-big output{font-size:52px;font-weight:800;color:var(--av-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.vrtava-unit{font-size:22px;font-weight:800;color:var(--av-ink)}
.vrtava-notechip{align-self:center;margin-left:6px;padding:4px 10px;border-radius:99px;background:var(--av-chip);color:var(--av-pri2);font-size:18px;font-weight:800}
.vrtava-notechip:empty{display:none}
.vrtava-biglabel{margin-top:6px!important;font-size:15px;font-weight:700;color:var(--av-mut)}
.vrtava-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.vrtava-facts div{padding:8px 10px;border-radius:10px;background:var(--av-soft);min-width:0}
.vrtava-facts dt{font-size:13px;font-weight:700;color:var(--av-mut)}
.vrtava-facts dd{font-size:18px;font-weight:800;color:var(--av-ink);overflow-wrap:anywhere}
.vrtava-facts dd.is-empty{font-size:15px;font-weight:700;color:var(--av-mut)}
.vrtava-facts dd small{display:block;font-size:14px;font-weight:600;color:var(--av-mut)}
.vrtava-conf{padding:10px 12px;border:1px solid var(--av-line);border-radius:12px}
.vrtava-confrow{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}
.vrtava-confrow .vrtava-label{display:inline}
.vrtava-pips{display:inline-flex;gap:3px}
.vrtava-pips i{width:22px;height:8px;border-radius:99px;background:var(--av-line)}
.vrtava-conf[data-level=low] .vrtava-pips i:nth-child(1){background:var(--av-err)}
.vrtava-conf[data-level=medium] .vrtava-pips i:nth-child(-n+2){background:var(--av-warn)}
.vrtava-conf[data-level=high] .vrtava-pips i{background:var(--av-ok)}
.vrtava-confrow strong{font-size:17px;color:var(--av-ink)}
.vrtava-confdet{margin-top:4px!important;font-size:15px;color:var(--av-text)}
.vrtava-tool .vrtava-advice{margin:8px 0 0 20px;list-style:disc;font-size:15px;color:var(--av-text)}
.vrtava-advice li{margin:3px 0;list-style:disc}
.vrtava-cmp{padding:10px 12px;border-radius:12px;background:var(--av-soft)}
.vrtava-cmptext{margin-top:2px!important;font-size:17px;font-weight:700;color:var(--av-ink)}
.vrtava-tool .vrtava-hist{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;list-style:none}
.vrtava-hist li{padding:3px 10px;border-radius:99px;background:var(--av-bg);border:1px solid var(--av-line);font-size:14px;font-weight:700;color:var(--av-ink);list-style:none}
.vrtava-hist li.is-now{border-color:var(--av-pri);color:var(--av-pri2)}
.vrtava-actions{display:flex;flex-wrap:wrap;gap:8px}
.vrtava-tool .vrtava-btn{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:44px;padding:0 16px;border:1px solid var(--av-edge);border-radius:10px;background:var(--av-bg);color:var(--av-ink);font-weight:700;font-size:15px}
.vrtava-tool .vrtava-btn:hover{background:var(--av-soft);color:var(--av-ink)}
.vrtava-tool .vrtava-btn-pri,.vrtava-tool .vrtava-btn-pri:hover{background:var(--av-pri);border-color:var(--av-pri);color:var(--av-onpri)}
.vrtava-tool .vrtava-btn-pri:hover{background:var(--av-pri2)}
.vrtava-out{min-height:1.5em;font-size:15px;font-weight:700;color:var(--av-ok)}
.vrtava-foot{margin-top:14px!important;padding-top:10px;border-top:1px solid var(--av-line);font-size:15px;line-height:1.45;color:var(--av-mut)}
.vrtava-tool[data-state=done] .vrtava-result{border-color:var(--av-pri);box-shadow:0 0 0 1px var(--av-pri)}


/* wider screens */
@media (min-width:480px){.vrtava-seg{display:inline-flex;flex-wrap:wrap}.vrtava-tool .vrtava-seg button{padding:0 20px}}
@media (min-width:600px){.vrtava-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.vrtava-tool .vrtava-btn{flex:0 1 auto}}
@media (min-width:880px){
	.vrtava-tool .vrtava-title{font-size:29px}
	.vrtava-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"setup rec" "result result";gap:14px}
	.vrtava-setup{grid-area:setup}
	.vrtava-rec{grid-area:rec}
	.vrtava-result{grid-area:result}
	.vrtava-card,.vrtava-rec{padding:18px}
	.vrtava-trace{height:176px}
	.vrtava-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px 28px;align-items:start}
	.vrtava-col1,.vrtava-col2{display:grid;gap:14px;min-width:0}
	.vrtava-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
	.vrtava-big output{font-size:64px}
}
.vrtava-col1,.vrtava-col2{display:grid;gap:14px;min-width:0}
@media (prefers-reduced-motion:reduce){.vrtava-tool *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* AI Voice Analysis additions */
.vrtava-tool .vrtava-task{margin:6px 0 0!important;padding:12px 14px;border-left:4px solid var(--av-pri);border-radius:10px;background:var(--av-soft);font-size:17px;line-height:1.55;color:var(--av-ink)}
.vrtava-setup [data-ava-for] .vrtava-hint{margin-top:8px!important}
.vrtava-rcents{font-size:15px;font-weight:700;color:#fde68a;font-variant-numeric:tabular-nums}
.vrtava-kind{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--av-mut);margin-bottom:6px!important}
.vrtava-summary{font-size:17px;line-height:1.45;color:var(--av-ink)}
.vrtava-tool .vrtava-obs ul{margin:6px 0 0 20px;list-style:disc;font-size:15px;line-height:1.45;color:var(--av-text)}
.vrtava-obs li{margin:4px 0;list-style:disc}
.vrtava-tool .vrtava-notes ol{display:grid;gap:6px;margin:6px 0 0;list-style:none}
.vrtava-notes li{display:grid;grid-template-columns:3.2em minmax(70px,1fr);align-items:center;gap:4px 10px;padding:6px 10px;border-radius:10px;background:var(--av-soft);list-style:none}
.vrtava-notes li b{font-size:17px;font-weight:800;color:var(--av-ink)}
.vrtava-ntext{grid-column:1/-1;font-size:14px;font-weight:600;color:var(--av-mut)}
.vrtava-cbar{position:relative;height:14px;border-radius:99px;background:linear-gradient(90deg,var(--av-line) 0,var(--av-line) 25%,var(--av-okbg) 25%,var(--av-okbg) 75%,var(--av-line) 75%);box-shadow:inset 0 0 0 1px var(--av-edge)}
.vrtava-cbar::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;border-left:2px solid var(--av-mut)}
.vrtava-cbar i{position:absolute;top:-4px;bottom:-4px;width:6px;margin-left:-3px;border-radius:3px;background:var(--av-ink);box-shadow:0 0 0 2px var(--av-bg);z-index:1}
.vrtava-notes li.is-in .vrtava-ntext::before{content:"In tune · ";color:var(--av-ok);font-weight:800}
.vrtava-notes li.is-out .vrtava-ntext::before{content:"Out of tune · ";color:var(--av-warn);font-weight:800}
@media (min-width:600px){.vrtava-notes li{grid-template-columns:3.2em minmax(90px,160px) minmax(0,1fr)}.vrtava-ntext{grid-column:auto}}
.vrtava-notes li.is-more{display:block;background:none;padding:2px 0;font-size:14px;color:var(--av-mut)}
