.pc{--pc-good:#16a34a;--pc-avg:#d97706;--pc-low:var(--brand,#b00020);--pc-wrong:#dc2626;--pc-skip:#cbd5e1;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);padding:20px;box-shadow:0 1px 3px #0f172a0a}.pc[hidden]{display:none}.pc-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.pc-title{font-family:var(--font-body);color:var(--ink);margin:0;font-size:1.05rem;font-weight:800}.pc-sub{color:var(--ink-muted);margin:2px 0 0;font-size:.8rem}.pc-kpis{grid-template-columns:repeat(3,minmax(0,auto));gap:8px;display:grid}.pc-kpi{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:1px;min-width:110px;padding:8px 14px;display:flex}.pc-kpi-l{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.66rem;font-weight:700}.pc-kpi-v{font-family:var(--font-display);color:var(--ink);white-space:nowrap;font-size:1.3rem;font-weight:700;line-height:1.15}.pc-kpi-u{font-family:var(--font-body);color:var(--ink-muted);margin-left:3px;font-size:.62em;font-weight:700}.pc-kpi-n{color:var(--ink-muted);font-size:.7rem}.pc-kpi-n.is-up{color:var(--pc-good);font-weight:600}.pc-kpi-n.is-down{color:var(--pc-low);font-weight:600}.pc-body{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;display:grid}.pc-panel{border:1px solid var(--rule);border-radius:var(--radius-sm);min-width:0;padding:14px 14px 8px;position:relative}.pc-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.pc-panel-title{color:var(--ink-soft);font-size:.8rem;font-weight:700}.pc-legend-inline{color:var(--ink-muted);align-items:center;gap:6px;font-size:.7rem;display:flex}.pc-key{border-radius:50%;width:8px;height:8px;margin-left:4px;display:inline-block}.pc-key-good{background:var(--pc-good)}.pc-key-avg{background:var(--pc-avg)}.pc-key-low{background:var(--pc-low)}.pc-trend{touch-action:pan-y;width:100%}.pc-svg{width:100%;height:auto;display:block;overflow:visible}.pc-grid{stroke:var(--rule);stroke-width:1px}.pc-axis{fill:var(--ink-muted);font-size:11px;font-family:var(--font-body)}.pc-avg{stroke:var(--ink-muted);stroke-width:1px;stroke-dasharray:4 4}.pc-avg-label{fill:var(--ink-soft);font-size:10.5px;font-weight:700;font-family:var(--font-body);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}.pc-grad-top{stop-color:var(--brand,#b00020);stop-opacity:.18}.pc-grad-bottom{stop-color:var(--brand,#b00020);stop-opacity:0}.pc-line{fill:none;stroke:var(--brand,#b00020);stroke-width:2.25px;stroke-linejoin:round;stroke-linecap:round}.pc-guide{stroke:var(--ink-muted);stroke-width:1px;stroke-dasharray:2 3;opacity:0}.pc-guide.is-on{opacity:1}.pc-dot{stroke:var(--surface);stroke-width:2px;cursor:pointer;transition:r .15s}.pc-dot-good{fill:var(--pc-good)}.pc-dot-avg{fill:var(--pc-avg)}.pc-dot-low{fill:var(--pc-low)}.pc-dot.is-active{r:7}.pc-tip{z-index:2;background:var(--ink);color:#fff;border-radius:var(--radius-sm);pointer-events:none;min-width:170px;padding:10px 12px;font-size:.75rem;position:absolute;box-shadow:0 10px 24px #0f172a38}.pc-tip[hidden]{display:none}.pc-tip-head{opacity:.75;font-size:.7rem}.pc-tip-score{font-family:var(--font-display);font-size:1.35rem;font-weight:700;line-height:1.2}.pc-band-good{color:#4ade80}.pc-band-avg{color:#fbbf24}.pc-band-low{color:#fb7185}.pc-tip-row{gap:10px;margin:2px 0;display:flex}.pc-tip-row .c{color:#4ade80}.pc-tip-row .w{color:#fb7185}.pc-tip-row .s{color:#cbd5e1}.pc-tip-time{opacity:.75;font-size:.7rem}.pc-donut-wrap{flex-direction:column;align-items:center;gap:12px;padding:6px 0 8px;display:flex}.pc-donut{width:150px;max-width:100%}.pc-donut-svg{width:100%;height:auto;display:block}.pc-donut-track{fill:none;stroke:var(--surface-2);stroke-width:16px}.pc-donut-seg{fill:none;stroke-width:16px}.pc-seg-correct{stroke:var(--pc-good)}.pc-seg-wrong{stroke:var(--pc-wrong)}.pc-seg-skipped{stroke:var(--pc-skip)}.pc-donut-v{font-family:var(--font-display);fill:var(--ink);font-size:24px;font-weight:700}.pc-donut-l{fill:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600}.pc-legend{flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none;display:flex}.pc-leg{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.pc-leg span:before{content:"";vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:8px;display:inline-block}.pc-leg b{color:var(--ink);font-weight:700}.pc-leg-correct span:before{background:var(--pc-good)}.pc-leg-wrong span:before{background:var(--pc-wrong)}.pc-leg-skipped span:before{background:var(--pc-skip)}@media (width<=900px){.pc-body{grid-template-columns:1fr}.pc-donut-wrap{flex-direction:row;justify-content:center;gap:24px}.pc-donut{flex-shrink:0;width:130px}.pc-legend{width:auto;min-width:170px}}@media (width<=640px){.pc{padding:14px}.pc-kpis{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.pc-kpi{min-width:0;padding:8px 10px}.pc-kpi-v{font-size:1.1rem}.pc-kpi-n,.pc-legend-inline{display:none}.pc-panel{padding:12px 10px 6px}}@media (width<=420px){.pc-donut-wrap{flex-direction:column}.pc-legend{width:100%}}.results-hero{background:var(--surface);border-bottom:1px solid var(--rule);padding:40px 0 32px}.rh-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.rh-text{flex:1;min-width:260px}.rh-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--brand);margin:0 0 8px;font-size:.72rem;font-weight:700}.rh-inner h1{font-family:var(--font-body);letter-spacing:-.02em;color:var(--ink);margin:0 0 6px;font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:900;line-height:1.15}.rh-sub{color:var(--ink-soft);margin:0;font-size:.92rem}.rh-stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius-md);text-align:center;flex-direction:column;align-items:center;min-width:90px;padding:14px 16px;display:flex}.stat-n{font-family:var(--font-display);color:var(--ink);margin-bottom:4px;font-size:1.5rem;font-weight:700;line-height:1}.stat-l{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);font-size:.7rem;font-weight:600}.wrap.rt-switch-wrap{padding-top:20px}.rt-switch{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius-pill);gap:4px;padding:4px;display:inline-flex}.rt-tab{color:var(--ink-soft);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 18px;font-size:.88rem;font-weight:700;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.rt-tab:hover{color:var(--ink)}.rt-tab.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px #0f172a1f}.tr-loading{color:var(--ink-soft);flex-direction:column;align-items:center;gap:12px;padding:48px 0;display:flex}.tr-loading[hidden]{display:none}.tr-avg{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--rule);flex-direction:column;justify-content:center;align-items:center;min-width:72px;padding:8px 10px;display:flex}.tr-avg-v{font-family:var(--font-display);color:var(--ink);font-size:1.4rem;font-weight:700;line-height:1}.tr-avg-l{text-transform:uppercase;color:var(--ink-muted);margin-top:2px;font-size:.62rem;font-weight:700}.tr-passages{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.tr-passage{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.tr-passage.is-empty{opacity:.7}.tr-p-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.tr-p-name{color:var(--ink);font-size:.82rem;font-weight:700}.tr-p-wpm{border-radius:var(--radius-pill);padding:2px 8px;font-size:.78rem;font-weight:800}.tr-p-status{color:var(--ink-muted);font-size:.74rem}.tr-rank-none{background:var(--surface-2);color:var(--ink-muted)}.tr-p-meta{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.72rem;display:flex}.wrap.perf-wrap{padding-top:24px}.wrap.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px 0;display:flex}.filter-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:center;gap:8px;max-width:100%;padding-bottom:4px;display:flex;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.ft{border-radius:var(--radius-pill);border:1.5px solid var(--rule);background:var(--surface);color:var(--ink-soft);cursor:pointer;white-space:nowrap;flex-shrink:0;padding:6px 14px;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.ft:hover{border-color:var(--brand);color:var(--brand)}.ft.active{background:var(--ink);color:#fff;border-color:var(--ink)}.sort-wrap{color:var(--ink-soft);flex-shrink:0;align-items:center;gap:8px;font-size:.84rem;display:flex}select{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--font-body);cursor:pointer;padding:6px 10px;font-size:.84rem}.wrap.results-body{padding:24px 24px 64px}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:64px 20px;display:flex}.empty-icon-wrap{background:var(--brand-light);width:64px;height:64px;color:var(--brand);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex;box-shadow:0 8px 24px #b0002014}.empty-state h2{font-family:var(--font-body);color:var(--ink);margin:0;font-size:1.25rem;font-weight:700}.empty-state p{color:var(--ink-soft);max-width:38ch;margin:0;font-size:.9rem;line-height:1.5}.btn-browse{background:var(--brand);color:#fff;border-radius:var(--radius-pill);margin-top:6px;padding:10px 24px;font-size:.92rem;font-weight:700;transition:background .15s,transform .1s;display:inline-block}.btn-browse:hover{background:var(--brand-dark);transform:translateY(-1px)}.results-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.result-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);flex-direction:column;gap:14px;padding:18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.result-card:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 6px 20px #b0002014}.rc-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.rc-left{flex:1;min-width:0}.rc-exam-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--brand);background:var(--brand-light);border-radius:var(--radius-pill);border:1px solid var(--brand-mid);margin-bottom:6px;padding:2px 8px;font-size:.65rem;font-weight:800;display:inline-block}.rc-title{font-size:.94rem;font-family:var(--font-body);color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 8px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.rc-meta{color:var(--ink-muted);flex-wrap:wrap;gap:12px;font-size:.76rem;display:flex}.rc-date,.rc-time{align-items:center;gap:4px;display:flex}.rc-score-ring{flex-shrink:0;width:64px;height:64px;position:relative}.rc-score-ring svg{width:100%;height:100%;position:absolute;inset:0}.rc-score-pct{font-size:.84rem;font-weight:800;font-family:var(--font-display);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.rc-breakdown{background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--rule);grid-template-columns:repeat(4,1fr);gap:6px;padding:10px 8px;display:grid}.bd-item{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.bd-n{font-size:1.05rem;font-weight:800}.bd-l{text-transform:uppercase;letter-spacing:.02em;color:var(--ink-muted);font-size:.62rem;font-weight:600}.bd-correct .bd-n{color:#166534}.bd-wrong .bd-n{color:#991b1b}.bd-skip .bd-n{color:var(--ink-muted)}.bd-total .bd-n{color:var(--ink)}.rc-sections{flex-direction:column;gap:6px;display:flex}.sec-bar-row{grid-template-columns:85px 1fr 34px;align-items:center;gap:8px;display:grid}.sec-bar-label{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:500;overflow:hidden}.sec-bar-track{background:var(--rule);border-radius:3px;height:6px;overflow:hidden}.sec-bar-fill{border-radius:3px;height:100%;transition:width .6s}.sec-bar-pct{text-align:right;font-size:.74rem;font-weight:700}.rc-footer{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.rc-rank{border-radius:var(--radius-pill);padding:4px 10px;font-size:.78rem;font-weight:700}.rank-good{color:#166534;background:#dcfce7}.rank-avg{background:var(--gold-light);color:var(--gold)}.rank-low{background:var(--brand-light);color:var(--brand)}.rc-actions{align-items:center;gap:8px;display:flex}.rc-btn-details{color:var(--ink);border-radius:var(--radius-pill);border:1.5px solid var(--rule);background:var(--surface-2);cursor:pointer;padding:5px 14px;font-size:.82rem;font-weight:700;transition:background .15s,border-color .15s}.rc-btn-details:hover{background:var(--rule);border-color:var(--ink-muted)}.rc-retake{color:var(--brand);border-radius:var(--radius-pill);border:1.5px solid var(--brand-mid);background:var(--brand-light);padding:5px 14px;font-size:.82rem;font-weight:700;transition:background .15s}.rc-retake:hover{background:var(--brand-mid)}.am-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.am-modal{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--rule);flex-direction:column;width:100%;max-width:820px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000040}.am-header{border-bottom:1px solid var(--rule);background:var(--surface-2);justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.am-header-left{flex:1}.am-title{color:var(--ink);margin:4px 0 2px;font-size:1.2rem;font-weight:700}.am-meta{color:var(--ink-soft);margin:0;font-size:.78rem}.am-close-btn{cursor:pointer;color:var(--ink-muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 10px;font-size:1.3rem}.am-close-btn:hover{background:var(--rule);color:var(--ink)}.am-stats-strip{background:var(--surface);border-bottom:1px solid var(--rule);grid-template-columns:repeat(5,1fr);gap:8px;padding:12px 24px;display:grid}.am-stat-box{text-align:center;flex-direction:column;align-items:center;display:flex}.am-sb-val{font-family:var(--font-display);color:var(--ink);font-size:1.15rem;font-weight:800}.am-sb-lbl{text-transform:uppercase;color:var(--ink-muted);font-size:.65rem;font-weight:600}.text-green{color:#166534}.text-red{color:#991b1b}.text-muted{color:var(--ink-muted)}.am-q-filters{border-bottom:1px solid var(--rule);background:var(--surface-2);align-items:center;gap:8px;padding:12px 24px;display:flex;overflow-x:auto}.am-qf-btn{border-radius:var(--radius-pill);border:1px solid var(--rule);background:var(--surface);color:var(--ink-soft);cursor:pointer;white-space:nowrap;padding:5px 12px;font-size:.78rem;font-weight:600}.am-qf-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.am-body{flex:1;padding:20px 24px;overflow-y:auto}.am-loading{color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 0;display:flex}.am-spinner{border:3px solid var(--rule);border-top-color:var(--brand);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.am-questions{flex-direction:column;gap:16px;display:flex}.am-q-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);flex-direction:column;gap:12px;padding:16px;display:flex}.am-q-top{justify-content:space-between;align-items:center;display:flex}.am-q-meta{align-items:center;gap:8px;display:flex}.am-q-num{color:var(--ink);font-size:.82rem;font-weight:800}.am-q-sec{color:var(--ink-muted);background:var(--surface-2);border-radius:var(--radius-pill);padding:2px 8px;font-size:.72rem;font-weight:600}.am-q-badge{border-radius:var(--radius-pill);padding:3px 10px;font-size:.72rem;font-weight:700}.q-status-correct{color:#166534;background:#dcfce7}.q-status-wrong{color:#b00020;background:#fff0f2}.q-status-skipped{background:var(--surface-2);color:var(--ink-muted)}.am-q-text{color:var(--ink);font-size:.92rem;font-weight:600;line-height:1.45}.am-q-options{flex-direction:column;gap:8px;display:flex}.am-opt{border-radius:var(--radius-sm);border:1px solid var(--rule);background:var(--surface-2);color:var(--ink);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:.86rem;display:flex}.opt-correct{color:#166534;background:#e8f5ee;border-color:#166534;font-weight:600}.opt-wrong{color:#b00020;background:#fff0f2;border-color:#b00020;font-weight:600}.opt-badge{border-radius:var(--radius-pill);flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:700}.badge-correct{color:#fff;background:#166534}.badge-wrong{color:#fff;background:#b00020}.am-empty-q,.am-error{text-align:center;color:var(--ink-soft);padding:40px 0;font-size:.9rem}@media (width<=900px){.results-hero{padding:28px 0 24px}.rh-inner{flex-direction:column;align-items:stretch;gap:20px}.rh-stats{grid-template-columns:repeat(4,1fr);width:100%}.results-grid{grid-template-columns:1fr;gap:16px}}@media (width<=640px){.results-hero{padding:20px 0 16px}.rh-stats{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{min-width:0;padding:12px 10px}.stat-n{font-size:1.3rem}.stat-l{font-size:.65rem}.wrap.perf-wrap{padding-top:16px}.wrap.rt-switch-wrap{padding-top:14px}.rt-switch{display:flex}.rt-tab{flex:1;justify-content:center;padding:8px 10px}.wrap.filter-bar{flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px 0}.filter-tabs{width:100%}.sort-wrap{justify-content:space-between;width:100%}.wrap.results-body{padding:16px 16px 48px}.result-card{gap:12px;padding:14px}.rc-score-ring{width:56px;height:56px}.rc-score-pct{font-size:.78rem}.sec-bar-row{grid-template-columns:75px 1fr 32px;gap:6px}.sec-bar-label{font-size:.72rem}.am-stats-strip{grid-template-columns:repeat(3,1fr)}.am-overlay{background:var(--surface);padding:0}.am-modal{width:100vw;height:100dvh;max-height:100dvh;box-shadow:none;border:none;border-radius:0}.am-header{padding:16px;padding-top:max(16px, env(safe-area-inset-top))}.am-q-filters{padding:10px 16px}.am-body{padding:16px;padding-bottom:max(16px, env(safe-area-inset-bottom))}.rc-footer{flex-direction:column;align-items:stretch;gap:10px}.rc-actions{justify-content:space-between;width:100%}.rc-btn-details,.rc-retake{text-align:center;flex:1}}@media (width<=380px){.rc-top{flex-direction:column;align-items:flex-start}.rc-score-ring{align-self:flex-start}.rc-breakdown{gap:2px;padding:8px 4px}.bd-n{font-size:.9rem}.bd-l{letter-spacing:0;font-size:.58rem}.rc-footer{flex-direction:column;align-items:stretch;gap:8px}.rc-rank{text-align:center}}
