/*! Pitch Accuracy Test 2.0.0 | pitchdetector.com | exam-report design */
.ppa{--ppa-blue:#2563eb;--ppa-blue2:#1d4ed8;--ppa-violet:#7c3aed;--ppa-ink:#0f172a;--ppa-muted:#475569;--ppa-line:#e2e8f0;--ppa-soft:#f8fafc;box-sizing:border-box;max-width:960px;margin:0 auto 1.75em;color:var(--ppa-ink);font-family:inherit;line-height:1.5}
.ppa *,.ppa *::before,.ppa *::after{box-sizing:border-box}.ppa [hidden]{display:none!important}
.ppa .ppa-title{margin:0 0 8px;padding:0;font-size:1.25rem;line-height:1.25;font-weight:700;color:var(--ppa-ink);letter-spacing:normal;text-transform:none}
.ppa-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 10px}
.ppa .ppa-tabs button{appearance:none;margin:0;padding:8px 8px;min-height:52px;border:1px solid var(--ppa-line);border-radius:12px;background:#fff;color:var(--ppa-ink);font-family:inherit;text-align:left;cursor:pointer;box-shadow:none;text-transform:none;display:flex;flex-direction:column;gap:1px}
.ppa .ppa-tabs b{font-size:.92rem;line-height:1.2}.ppa .ppa-tabs small{font-size:.72rem;line-height:1.25;color:var(--ppa-muted)}
.ppa .ppa-tabs button[aria-selected="true"]{border:2px solid var(--ppa-violet);background:#f5f3ff}
.ppa-panel{border:1px solid var(--ppa-line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06);padding:14px}
.ppa-setup{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}
.ppa-setup.is-locked{opacity:.55;pointer-events:none}
.ppa label{display:grid;gap:3px;margin:0;font-size:.8rem;font-weight:600;color:var(--ppa-muted)}
.ppa .ppa-check{grid-column:1/-1;display:flex;align-items:center;gap:8px;font-size:.88rem;min-height:32px}
.ppa .ppa-check input{width:20px;height:20px;margin:0;accent-color:var(--ppa-violet)}
.ppa select{width:100%;min-height:44px;margin:0;border:1px solid #cbd5e1;border-radius:10px;padding:0 10px;font:500 .95rem/1.2 inherit;font-family:inherit;background:#fff;color:var(--ppa-ink)}
.ppa-exam{border-radius:14px;background:var(--ppa-soft);padding:12px}
.ppa-examhead{display:flex;justify-content:space-between;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ppa-muted);margin:0 0 6px}
.ppa-examhead [data-ppa-phase]{color:var(--ppa-violet)}
.ppa-target{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ppa-target small{font-size:.8rem;font-weight:700;color:var(--ppa-muted);text-transform:uppercase;letter-spacing:.05em}
.ppa-target b{font:800 2.8rem/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.02em}
.ppa-gauge{position:relative;height:30px;margin:12px 0 2px;border-radius:999px;background:linear-gradient(90deg,#fecaca,#fde68a 30%,#bbf7d0 42%,#bbf7d0 58%,#fde68a 70%,#fecaca)}
.ppa-gauge .ppa-z{position:absolute;left:50%;top:-3px;bottom:-3px;width:2px;background:var(--ppa-ink)}
.ppa-gauge b{position:absolute;left:50%;top:-4px;width:10px;height:38px;margin-left:-5px;border-radius:5px;background:var(--ppa-ink);transition:left .12s}
.ppa-gauge b[data-state="in"]{background:#15803d}.ppa-gauge b[data-state="close"]{background:#b45309}.ppa-gauge b[data-state="off"]{background:#b91c1c}
.ppa-gauge span{position:absolute;top:34px;font-size:.72rem;color:var(--ppa-muted);transform:translateX(-50%)}
.ppa-gauge span:nth-of-type(1){left:4%}.ppa-gauge span:nth-of-type(2){left:50%}.ppa-gauge span:nth-of-type(3){left:95%}
.ppa .ppa-now{margin:22px 0 4px;text-align:center;font:700 1.1rem/1.2 ui-monospace,Consolas,monospace;min-height:1.2em}
.ppa-graph{display:block;width:100%;height:140px;background:#fff;border:1px solid var(--ppa-line);border-radius:10px;margin:0 0 10px}
.ppa-btns{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}
.ppa .ppa-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:46px;padding:0 16px;border:2px solid var(--ppa-blue);border-radius:12px;background:#fff;color:var(--ppa-blue2);font:700 .98rem/1.1 inherit;font-family:inherit;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:normal}
.ppa .ppa-btn:hover:not(:disabled){background:#eff6ff}.ppa .ppa-btn:disabled{opacity:.45;cursor:not-allowed}
.ppa .ppa-go{flex:1 1 160px;background:linear-gradient(135deg,var(--ppa-blue),var(--ppa-violet));border-color:transparent;color:#fff;font-size:1.05rem}
.ppa .ppa-go:hover:not(:disabled){background:linear-gradient(135deg,var(--ppa-blue2),var(--ppa-violet))}
.ppa .ppa-ghost{border-color:#cbd5e1;color:var(--ppa-muted)}
.ppa .ppa-sm{min-height:40px;padding:0 12px;font-size:.88rem}
.ppa .ppa-status{margin:4px 2px 0;font-size:.88rem;color:var(--ppa-muted)}.ppa .ppa-status[data-kind="error"]{color:#b91c1c;font-weight:600}
/* Report */
.ppa-report{margin:14px 0 0;padding:16px;border-radius:14px;border:2px solid #ddd6fe;background:linear-gradient(160deg,#fff,#f5f3ff);outline:0}
.ppa .ppa-kicker{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ppa-violet)}
.ppa-score{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:2px 0 10px}
.ppa-score b{font:800 3.6rem/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.03em}
.ppa-score span{font-weight:700;color:var(--ppa-muted)}
.ppa-score em{font-style:normal;font-weight:800;padding:3px 12px;border-radius:999px;background:#e2e8f0}
.ppa-score em[data-level="a"]{background:#dcfce7;color:#15803d}.ppa-score em[data-level="b"]{background:#dbeafe;color:#1d4ed8}.ppa-score em[data-level="c"]{background:#fef3c7;color:#b45309}.ppa-score em[data-level="d"]{background:#fee2e2;color:#b91c1c}
.ppa .ppa-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px}
.ppa .ppa-stats div{background:#fff;border:1px solid var(--ppa-line);border-radius:10px;padding:6px 10px;min-width:0}
.ppa .ppa-stats dt{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ppa-muted)}
.ppa .ppa-stats dd{margin:0;font:700 .98rem/1.35 ui-monospace,Consolas,monospace}
.ppa-scroll{overflow-x:auto}
.ppa .ppa-table{width:100%;margin:0 0 10px;border-collapse:collapse;background:#fff;font-size:.9rem;font-variant-numeric:tabular-nums}
.ppa .ppa-table th,.ppa .ppa-table td{border:0;border-bottom:1px solid var(--ppa-line);padding:5px 8px;text-align:left}.ppa .ppa-table th{font-size:.76rem;background:#f5f3ff}
.ppa .ppa-tip{margin:0 0 10px;font-size:.93rem}
.ppa .ppa-small{margin:0;font-size:.84rem;color:var(--ppa-muted)}
/* Ear test */
.ppa .ppa-lead{margin:0 0 12px;font-size:.95rem}
.ppa-ear{border-radius:14px;background:var(--ppa-soft);padding:12px}
.ppa-earcount{display:flex;justify-content:space-between;font-weight:700;font-size:.88rem;margin:0 0 8px}
.ppa-dots{display:flex;flex-wrap:wrap;gap:4px;min-height:14px;margin:0 0 10px}
.ppa-dots span{width:12px;height:12px;border-radius:50%}.ppa-dots .ok{background:#15803d}.ppa-dots .no{background:#b91c1c}
.ppa .ppa-ans{flex:1 1 120px;min-height:64px;font-size:1.15rem;border-color:var(--ppa-ink);color:var(--ppa-ink)}
/* Free check */
.ppa-free{display:grid;gap:8px}
.ppa-freebig{display:flex;align-items:baseline;justify-content:center;gap:12px;margin:6px 0 0}
.ppa-freebig b{font:800 3.2rem/1 system-ui,sans-serif}.ppa-freebig span{font:700 1.1rem/1 ui-monospace,Consolas,monospace;color:var(--ppa-muted)}
.ppa .ppa-stats3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px}
.ppa-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
.ppa :focus-visible{outline:3px solid var(--ppa-violet);outline-offset:2px}
@media (max-width:420px){.ppa .ppa-tabs small{display:none}.ppa .ppa-tabs button{min-height:44px;justify-content:center;text-align:center}}
@media (min-width:720px){.ppa-panel{padding:20px}.ppa-setup{grid-template-columns:1fr 1fr 1.3fr}.ppa .ppa-check{grid-column:auto;align-self:end}.ppa .ppa-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.ppa-target b{font-size:3.4rem}}
