#trainingPanel20{max-width:1100px;margin:0 auto;padding:20px;border:1px solid var(--line,#ccd3df);border-radius:22px;background:var(--panel,#fff);color:var(--text,#162440)}
#trainingPanel20[hidden]{display:none}.training-heading20{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.training-heading20 h1{margin:0;font-size:2rem}.training-options20{display:flex;gap:8px;flex-wrap:wrap}.training-options20 button{border-radius:14px;padding:12px 20px;text-align:left;line-height:1.4}.training-options20 button b,.training-options20 button span{display:block}.training-options20 button[aria-pressed=true]{background:var(--accent,#315cf4);color:#fff;border-color:transparent}.training-options20 span{font-size:.9rem}
.training-strip20{display:flex;align-items:center;gap:20px;padding:12px 16px;background:var(--soft,#e8eeff);border-radius:14px;margin-bottom:16px}.training-strip20 strong{font-size:1.5rem;font-variant-numeric:tabular-nums}.training-strip20 span{font-size:.95rem}.training-surface20{display:grid;gap:12px}.training-surface20 label,.training-source-label20{font-size:.9rem;font-weight:700;display:block;margin-bottom:6px}.training-source20{height:210px;overflow:auto;border:1px solid var(--line,#ccd3df);border-radius:14px;padding:16px;font-size:1.1rem;line-height:1.65;white-space:pre-wrap;user-select:none;scrollbar-gutter:stable;background:var(--soft,#f7f9fd)}
#trainingInput20{height:210px;min-height:150px;width:100%;box-sizing:border-box;border:2px solid var(--line,#ccd3df);border-radius:14px;padding:16px;font:1.1rem/1.65 inherit;resize:vertical;white-space:pre-wrap;background:var(--panel,#fff);color:inherit}#trainingInput20:focus{outline:3px solid var(--accent,#315cf4);outline-offset:2px}.training-actions20{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.training-actions20 button{min-height:44px}#trainingStatus20{min-height:24px;font-size:.95rem}#trainingResult20{margin-top:24px;border-top:1px solid var(--line,#ccd3df);padding-top:20px}.training-result-grid20{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.training-stat20{border-radius:16px;background:var(--soft,#e8eeff);padding:16px}.training-stat20 b{display:block;font-size:1.8rem;line-height:1.2}.training-stat20 span{font-size:.9rem}.training-coin20{font-size:1.2rem;font-weight:700;margin:16px 0}.training-receipt20{display:grid;gap:6px;font-size:.9rem}.training-receipt20 div{display:flex;justify-content:space-between;gap:12px}.training-rules20{margin-top:20px;font-size:.95rem;line-height:1.65}.training-rules20 summary{cursor:pointer;font-weight:700}.training-rules20 p{margin:10px 0}.training-grades20{display:flex;gap:8px;flex-wrap:wrap}.training-grades20 span{padding:8px;border:1px solid var(--line,#ccd3df);border-radius:10px}
#trainingProgress20{margin-top:28px;padding-top:24px;border-top:1px solid var(--line,#ccd3df)}#trainingProgress20 h2{margin:0 0 6px}.training-charts20{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.training-chart20{border:1px solid var(--line,#ccd3df);border-radius:16px;padding:14px;min-width:0}.training-chart20 h3{font-size:1rem;margin:0 0 3px}.training-chart20 small{font-size:.85rem}.training-chart20 svg{display:block;width:100%;height:auto;margin-top:10px;overflow:visible}.training-chart20 text{font:12px Arial,sans-serif;fill:currentColor}.training-empty20{padding:25px 12px;line-height:1.6;background:var(--soft,#e8eeff);border-radius:14px}.training-history20{max-height:360px;overflow:auto;margin-top:12px}.training-history20 table{width:100%;border-collapse:collapse}.training-history20 th,.training-history20 td{text-align:left;padding:10px 8px;font-size:.9rem;white-space:nowrap}.training-history20 th{position:sticky;top:0;background:var(--panel,#fff)}.training-history20 tr+tr{border-top:1px solid var(--line,#ccd3df)}#trainingProgressLink20{margin-bottom:14px}
@media(max-width:700px){#trainingPanel20{padding:14px}.training-heading20{align-items:flex-start;flex-direction:column}.training-heading20 h1{font-size:1.6rem}.training-result-grid20{grid-template-columns:repeat(2,1fr)}.training-charts20{grid-template-columns:1fr}.training-source20,#trainingInput20{height:185px}.training-strip20{gap:12px;flex-wrap:wrap}#nav8{flex-wrap:wrap}.training-history20{overflow-x:auto}}
