.profile-box { max-width: 560px; }
.profile-box h2 { font-size: 17px; margin: 28px 0 8px; }
.profile-list { display: grid; gap: 10px; margin: 25px 0; }
.profile-choice { width: 100%; display: flex; justify-content: space-between; align-items: center; text-align: left; gap: 14px; padding: 16px 19px; background: #f7f4fb; border: 1px solid var(--line); border-radius: 6px; }
.profile-choice:hover, .profile-choice:focus-visible { border-color: var(--primary); }
.profile-choice b { font-size: 17px; }
.profile-choice small { display: block; margin-top: 4px; font-size: 12px; color: var(--muted); }
.profile-choice > span:last-child { font-size: 22px; color: var(--primary); }
.auth-form select { border: 1px solid #b9adce; border-radius: 5px; padding: 12px; background: white; color: var(--ink); font-size: 16px; min-height: 48px; }
.trend-chart { display: flex; align-items: end; gap: 14px; min-height: 205px; overflow-x: auto; padding: 13px 3px; }
.trend-item { flex: 1; min-width: 72px; max-width: 112px; display: grid; gap: 5px; text-align: center; color: var(--depth); }
.trend-track { display: flex; align-items: end; height: 125px; background: #f2f0f7; border-radius: 4px; overflow: hidden; }
.trend-track span { display: block; width: 100%; background: linear-gradient(#b69aef, var(--primary)); border-radius: 4px 4px 0 0; }
.trend-item strong { font-size: 16px; }
.trend-item small { font-size: 10px; color: var(--muted); white-space: nowrap; }
.unit-progress { display: grid; gap: 18px; }
.unit-progress > div { display: grid; grid-template-columns: minmax(115px, 1fr) auto; gap: 8px 15px; align-items: center; font-size: 13px; }
.unit-progress span { color: var(--muted); }
.progress-track { grid-column: 1 / -1; height: 8px; border-radius: 9px; background: #eee9f4; overflow: hidden; }
.progress-track span { display: block; height: 100%; background: var(--primary); border-radius: 9px; }
.history-session { border-top: 1px solid var(--line); padding: 15px 0; }
.review-skills { display: grid; gap: 10px; }
.review-skills > div { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 12px 0; border-top: 1px solid var(--line); }
.review-skills b { font-size: 14px; }
.review-skills small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; }
.review-skills .outline { min-height: 40px; padding: 8px 14px; font-size: 12px; flex-shrink: 0; }
.history-session summary, .backup-box summary { cursor: pointer; font-size: 14px; font-weight: 600; line-height: 1.6; }
.history-session p { margin: 13px 0 0; padding: 11px 14px; background: #f7f4fb; font-size: 12px; line-height: 1.85; }
.backup-box { margin-top: 27px; }
.backup-box p { margin: 13px 0; line-height: 1.7; }
.backup-box input[type=file] { width: 100%; max-width: 100%; font-size: 12px; }
.insights>p{line-height:1.8}.insight-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.insight-columns>div{min-width:0}.insight-columns h3{font-size:15px;margin:0 0 9px}.insight-list{display:grid;gap:8px}.insight-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;background:#f7f4fb;border-radius:5px;font-size:13px}.insight-item b{overflow-wrap:anywhere}.insight-item span{color:var(--depth);white-space:nowrap}.insights>.review-skills,.insights>h3{margin-top:22px}.history-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--ink);font-size:19px;font-weight:600;list-style:none}.history-fold>summary::-webkit-details-marker{display:none}.history-fold>summary:after{content:'⌄';color:var(--primary);font-size:22px}.history-fold[open]>summary:after{content:'⌃'}.history-fold>summary small{margin-left:auto;color:var(--muted);font-size:12px;font-weight:400}.history-fold[open]>.trend-chart,.history-fold[open]>.unit-progress{margin-top:18px}
.training-history>p{line-height:1.8}.training-run-count{color:var(--depth);font-size:13px;font-weight:600;margin:18px 0 7px}.training-run-list{display:grid;gap:8px}.training-run{border:1px solid var(--line);border-radius:6px;background:#fff}.training-run>summary{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;cursor:pointer;padding:14px 16px;line-height:1.7;font-size:13px}.training-run>summary strong{color:var(--depth);font-weight:600}.training-run-details{border-top:1px solid var(--line);padding:15px 17px;font-size:13px;line-height:1.8}.training-run-details p+p{margin-top:8px}.training-run-details h3{margin:20px 0 8px}.training-run-details ol{margin:0;padding-left:23px}.training-run-details li{padding:8px 0;border-top:1px solid var(--line)}.training-run-details li span{display:block;color:var(--muted)}
@media (max-width: 600px) {
 .header-actions { width: 100%; justify-content: flex-end; padding-bottom: 9px; }
 .site-header { flex-wrap: wrap; padding-top: 13px; }
 .header-actions button { font-size: 12px; padding: 6px 7px; }
 .unit-progress > div { grid-template-columns: 1fr; }
 .trend-item { min-width: 67px; }
 .review-skills > div { align-items: flex-start; }
 .insight-columns { grid-template-columns: 1fr; }
 .insight-item { flex-wrap: wrap; }
}
