.trainer{padding-block:var(--space-6) var(--space-9)}.trainer [hidden]{display:none!important}.t-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;border-bottom:1px solid var(--color-line);padding-bottom:var(--space-4);margin-bottom:var(--space-6)}.t-title{font-family:var(--font-display);font-weight:600;font-size:var(--text-2xl);letter-spacing:.01em;margin:0}.t-meta{color:var(--color-ink-soft);font-size:var(--text-sm);margin:0}.t-sync{font-size:var(--text-xs);color:var(--color-ink-faint)}.t-grid{display:grid;gap:var(--space-7);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}@media(max-width:860px){.t-grid{grid-template-columns:1fr}}.t-h{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);margin:0 0 var(--space-3);letter-spacing:.01em}.t-lead{font-size:var(--text-lg);color:var(--color-ink-soft);margin-bottom:var(--space-5)}.areas{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-line)}.areas li{display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;gap:var(--space-2) var(--space-4);align-items:center;padding:var(--space-4) 0;border-bottom:1px solid var(--color-line)}.area-num{font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);color:var(--color-chart-blue)}.area-name{font-weight:600}.area-sub{grid-column:2;font-size:var(--text-sm);color:var(--color-ink-soft)}.meter{grid-column:2;height:6px;background:var(--color-surface-2);border-radius:var(--radius-full);overflow:hidden}.meter>span{display:block;height:100%;background:var(--color-chart-blue);border-radius:inherit;transition:width var(--dur-slow) var(--ease)}.areas .t-btn{grid-row:1 / span 3;grid-column:3}.t-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font:600 var(--text-base) / 1 var(--font-body);padding:.85rem 1.25rem;border-radius:var(--radius);border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease)}.t-btn:hover{background:var(--color-accent-strong);color:var(--color-accent-ink)}.t-btn--quiet{background:transparent;color:var(--color-ink);border-color:var(--color-line)}.t-btn--quiet:hover{background:var(--color-surface);color:var(--color-ink)}.t-btn:disabled{opacity:.45;cursor:not-allowed}.t-btn:focus-visible,.choice:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.modes{display:grid;gap:var(--space-3)}.mode{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-1) var(--space-4);align-items:center;padding:var(--space-4) var(--space-5);background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-line)}.mode p{margin:0;font-size:var(--text-sm);color:var(--color-ink-soft)}.mode strong{font-size:var(--text-lg);font-family:var(--font-display);font-weight:600;letter-spacing:.01em}.mode .t-btn{grid-row:1 / span 2;grid-column:2}.readout{font-family:var(--font-display);font-weight:700;font-size:var(--text-4xl);line-height:1;color:var(--color-ink);margin:0}.readout small{font-size:var(--text-xl);color:var(--color-ink-soft);font-weight:500}.guarantee{margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--color-chart-blue-soft);border-radius:var(--radius);font-size:var(--text-sm)}.guarantee strong{color:var(--color-chart-blue)}.q-head{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-ink-soft);margin-bottom:var(--space-2);flex-wrap:wrap}.q-tag{font-weight:600;color:var(--color-chart-blue);letter-spacing:.04em;text-transform:uppercase;font-size:var(--text-xs)}.q-bar{height:4px;background:var(--color-surface-2);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-6)}.q-bar>span{display:block;height:100%;background:var(--color-accent);transition:width var(--dur-base) var(--ease)}.q-stem{font-family:var(--font-body);font-weight:500;font-size:var(--text-xl);line-height:var(--leading-snug);margin:0 0 var(--space-5);max-width:60ch}.fig{margin:0 0 var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-surface)}.fig-scroll{overflow:auto;max-height:70vh;-webkit-overflow-scrolling:touch}.fig img{border-radius:0;box-shadow:none;width:100%;max-width:none}.fig.zoomed img{width:260%}.fig figcaption{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--color-ink-soft);border-top:1px solid var(--color-line)}.fig button{font:600 var(--text-xs) / 1 var(--font-body);background:none;border:1px solid var(--color-line);border-radius:var(--radius);padding:.4rem .6rem;cursor:pointer;color:var(--color-ink)}.choices{display:grid;gap:var(--space-3);max-width:60ch}.choice{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:var(--space-3);align-items:start;text-align:left;font:400 var(--text-base) / 1.45 var(--font-body);color:var(--color-ink);padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.choice:hover:not(:disabled){border-color:var(--color-ink-soft)}.choice .letter{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);line-height:1.1;color:var(--color-ink-soft)}.choice[aria-pressed=true]{border-color:var(--color-chart-blue);background:var(--color-chart-blue-soft)}.choice.is-right{border-color:var(--color-pass);background:var(--color-pass-soft)}.choice.is-wrong{border-color:var(--color-fail);background:var(--color-fail-soft)}.choice:disabled{cursor:default}.feedback{margin-top:var(--space-5);padding:var(--space-5);border-radius:var(--radius);background:var(--color-surface);max-width:60ch}.feedback h3{font-family:var(--font-display);font-size:var(--text-xl);margin:0 0 var(--space-2);letter-spacing:.01em}.feedback.right h3{color:var(--color-pass)}.feedback.wrong h3{color:var(--color-fail)}.feedback .verdict{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;margin:0 0 var(--space-2);letter-spacing:.01em}.feedback.right .verdict{color:var(--color-pass)}.feedback.wrong .verdict{color:var(--color-fail)}.buy-form{margin:0;display:contents}.feedback p{margin-bottom:var(--space-3)}.cite{font-size:var(--text-sm);color:var(--color-ink-soft);margin:0}.cite a{color:var(--color-chart-blue)}.q-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;align-items:center}.timer{font-family:var(--font-display);font-weight:700;font-size:var(--text-2xl);font-variant-numeric:tabular-nums}.timer.low{color:var(--color-fail)}.qgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.4rem,1fr));gap:var(--space-1);margin-top:var(--space-6)}.qgrid button{font:600 var(--text-sm) / 1 var(--font-body);padding:.55rem 0;border:1px solid var(--color-line);background:var(--color-bg);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-ink)}.qgrid button.answered{background:var(--color-chart-blue-soft);border-color:var(--color-chart-blue)}.qgrid button.flagged{outline:2px solid var(--color-accent);outline-offset:-2px}.qgrid button.current{background:var(--color-ink);color:var(--color-bg);border-color:var(--color-ink)}.result-score{font-family:var(--font-display);font-weight:700;font-size:var(--text-4xl);line-height:1;margin:0 0 var(--space-2)}.result-score.pass{color:var(--color-pass)}.result-score.fail{color:var(--color-fail)}.review-list{list-style:none;padding:0;margin:var(--space-6) 0 0;border-top:1px solid var(--color-line)}.review-list li{padding:var(--space-5) 0;border-bottom:1px solid var(--color-line)}.review-list .yours{color:var(--color-fail)}.review-list .correct{color:var(--color-pass);font-weight:600}.capture{margin-top:var(--space-6);padding:var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-surface);max-width:60ch}.capture form{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-3)}.capture input{flex:1 1 14rem;font:inherit;padding:.8rem .9rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);color:var(--color-ink)}.capture .status{font-size:var(--text-sm);margin:var(--space-2) 0 0}
