/* φQ Physics — practice-question pages (rendered by shared/practice.js) */
.pq{max-width:900px;margin:0 auto}
.pq-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}
.pq-head h1{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:.35rem}
.pq-meta{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;font-size:.82rem;color:var(--text-muted)}
.pq-code{font-family:var(--font-mono);font-weight:700;color:var(--accent);background:var(--accent-dim);padding:.15rem .55rem;border-radius:6px}
.pq-btn{font:inherit;font-size:.82rem;font-weight:600;padding:.55rem 1rem;border-radius:100px;border:1px solid var(--border-2);background:var(--surface);color:var(--text);cursor:pointer;transition:var(--t)}
.pq-btn:hover{border-color:var(--border-3);box-shadow:var(--glow-sm)}
.pq-btn:focus-visible,.pq-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pq-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.pq-nav{position:sticky;top:var(--nav-h);z-index:20;display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;padding:.6rem .75rem;margin-bottom:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.pq-nav a{font-size:.82rem;font-weight:600;color:var(--text-muted);padding:.35rem .75rem;border-radius:100px}
.pq-nav a:hover{background:var(--accent-dim);color:var(--accent);opacity:1}
.pq-score{margin-left:auto;display:flex;gap:.9rem;font-size:.82rem;color:var(--text-muted)}
.pq-score strong{color:var(--text);font-family:var(--font-mono)}
.pq-sec{margin-bottom:2.5rem;scroll-margin-top:calc(var(--nav-h) + 4.5rem)}
.pq-sec>h2{font-size:clamp(1.3rem,2.4vw,1.8rem);margin-bottom:.4rem}
.pq-sec>.pq-intro{margin-bottom:1rem;font-size:.92rem}
.pq-level{display:flex;align-items:center;gap:.6rem;margin:1.6rem 0 .8rem;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.pq-level::after{content:"";flex:1;height:1px;background:var(--border-2)}
.pq-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.4rem;margin-bottom:1rem;break-inside:avoid}
.pq-card h3{font-size:1.1rem;margin-bottom:.6rem}
.pq-card p,.pq-card li{color:var(--text-2);font-size:.94rem;line-height:1.7}
.pq-card ul{padding-left:1.2rem;display:grid;gap:.3rem}
.pq-qnum{font-family:var(--font-mono);font-weight:700;color:var(--accent);margin-right:.35rem}
.pq-tag{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}
.pq-stem{color:var(--text);font-size:.96rem;line-height:1.7;text-wrap:pretty}
.pq-stem+.pq-stem{margin-top:.5rem}
.pq-fig{margin:.9rem 0;text-align:center}
.pq-fig img{max-width:100%;width:620px;border-radius:10px;background:#fff;border:1px solid var(--border)}
.pq-fig figcaption{font-size:.78rem;color:var(--text-muted);margin-top:.35rem}
.pq-opts{display:grid;gap:.45rem;margin-top:.8rem}
.pq-opt{display:flex;gap:.7rem;align-items:flex-start;width:100%;text-align:left;font:inherit;font-size:.93rem;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .8rem;cursor:pointer;transition:var(--t)}
.pq-opt:hover:not(:disabled){border-color:var(--border-3)}
.pq-opt:disabled{cursor:default}
.pq-opt .l{flex-shrink:0;font-weight:700;font-family:var(--font-mono);color:var(--accent);min-width:1.1rem}
.pq-opt .mk{margin-left:auto;font-weight:700}
.pq-opt.wrong{border-color:var(--red);background:var(--red-dim);opacity:.85}
.pq-opt.wrong .l,.pq-opt.wrong .mk{color:var(--red)}
.pq-opt.right{border-color:var(--green);background:var(--green-dim)}
.pq-opt.right .l,.pq-opt.right .mk{color:var(--green)}
.pq-hint{margin-top:.7rem;padding:.6rem .85rem;border-radius:var(--radius);background:var(--gold-dim);color:var(--text);font-size:.88rem}
.pq-expl{margin-top:.7rem;padding:.7rem .9rem;border-radius:var(--radius);background:var(--green-dim);color:var(--text);font-size:.9rem;line-height:1.65}
.pq-tries{font-size:.78rem;color:var(--text-muted);margin-top:.4rem}
.pq-eq{text-align:center;font-size:1.15rem;color:var(--text);font-family:var(--font-serif);margin:.6rem 0;letter-spacing:.01em}
.pq-part{border-top:1px solid var(--border);padding-top:.9rem;margin-top:.9rem}
.pq-part-q{display:flex;gap:.6rem;color:var(--text);font-size:.94rem;line-height:1.7}
.pq-part-q .lab{flex-shrink:0;font-weight:700;font-family:var(--font-mono);color:var(--accent)}
.pq-part-q .m{margin-left:auto;flex-shrink:0;font-weight:700}
.pq-lead{color:var(--text);font-size:.94rem;margin-top:.9rem}
.pq-ta{width:100%;min-height:4.5rem;margin-top:.6rem;resize:vertical;overflow:hidden;font:inherit;font-size:.9rem;color:var(--text);background:var(--surface2);border:1px solid var(--border-2);border-radius:var(--radius);padding:.6rem .75rem}
.pq-ta:focus{outline:none;border-color:var(--accent)}
.pq-typed{display:none}
.pq-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-top:.55rem}
.pq-model{display:none;margin-top:.6rem;padding:.75rem .95rem;border-radius:var(--radius);background:var(--accent-dim);border:1px solid var(--border-2);color:var(--text);font-size:.9rem;line-height:1.7}
.pq-model.open{display:block}
.pq-self{display:none;font-size:.82rem;color:var(--text-muted);gap:.4rem;align-items:center}
.pq-self.open{display:flex}
.pq-self select{font:inherit;font-size:.82rem;background:var(--surface2);color:var(--text);border:1px solid var(--border-2);border-radius:6px;padding:.15rem .3rem}
.pq-qhead{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}
.pq-qhead h3{margin:0}
.pq-you{font-size:.82rem;color:var(--text-muted)}
.pq-you strong{color:var(--text);font-family:var(--font-mono)}
.pq-table{width:100%;border-collapse:collapse;font-size:.86rem;margin-top:.5rem}
.pq-table th,.pq-table td{border:1px solid var(--border-2);padding:.45rem .6rem;text-align:left;vertical-align:top;color:var(--text-2)}
.pq-table th{background:var(--surface2);color:var(--text);font-weight:600}
.pq-print{display:none}
.pq-foot{margin-top:2rem}
@media print{
 :root,[data-theme]{--bg:#fff;--bg2:#fff;--surface:#fff;--surface2:#fff;--text:#000;--text-2:#111;--text-muted:#333;--border:#999;--border-2:#999;--accent:#000;--accent-dim:transparent;--green-dim:transparent;--red-dim:transparent}
 body{padding-top:0;background:#fff;color:#000}
 .site-nav,#mode-nav-root,.breadcrumb,.search-overlay,.pq-nav,.pq-btn,.pq-opt .mk,.pq-hint,.pq-expl,.pq-tries,.pq-model,.pq-self,.pq-row,.pq-you,.pq-ta,.pq-screen-only{display:none!important}
 .pq-print{display:block}
 .pq-typed{display:block;white-space:pre-wrap;min-height:3.5rem;border:1px solid #999;border-radius:6px;padding:.4rem .6rem;margin-top:.4rem;font-size:.85rem}
 .pq-opt{border:none;background:none;padding:.15rem 0}
 .pq-card{border:1px solid #bbb;box-shadow:none;break-inside:avoid}
 .pq-sec{break-before:page}
 .pq-sec:first-of-type{break-before:auto}
 .pq-fig img{border:none}
 a{color:#000}
}

.pq-vx{margin-top:10px;display:inline-flex;gap:8px;align-items:center}
