/* Scoped fee comparison; other school guides retain their existing layout. */
.school-type-page .bf-fees{scroll-margin-top:100px;margin-bottom:36px;color:#19324f}
.school-type-page .bf-header>p{font-size:15px;line-height:1.6;color:#4c637e;margin:0 0 12px}
.school-type-page .bf-header .bf-check{font-size:12px;color:#536c87}
.school-type-page .bf-period-note{font-size:13px;line-height:1.6;padding:12px 14px;border:1px solid #d8e6f6;border-radius:8px;background:#f3f8ff;margin:12px 0 18px}
.school-type-page .bf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.school-type-page .bf-school{min-width:0;border:1px solid #d6e2ef;border-radius:10px;padding:20px;background:#fff;scroll-margin-top:100px}
main.school-type-page.site-magazine-page .bf-school>h3{font-size:18px;font-weight:700;line-height:1.35;letter-spacing:-.2px;margin:0 0 16px;color:#16365c}
.school-type-page .bf-source-check{font-size:11px;line-height:1.5;color:#61758b;margin:-7px 0 14px}
.school-type-page .bf-schedule+.bf-schedule{margin-top:24px;padding-top:20px;border-top:1px solid #dce7f2}
.school-type-page .bf-status{display:inline-block;margin:0 0 8px;padding:4px 8px;border-radius:5px;background:#e9f6ef;color:#23604a;font-size:11px;line-height:1.45;font-weight:600}
.school-type-page .bf-schedule:not([data-fee-status=current]) .bf-status{background:#fff4df;color:#805513}
.school-type-page .bf-schedule[data-fee-status=unverified] .bf-status{background:#edf2f8;color:#4c637c}
main.school-type-page.site-magazine-page .bf-schedule h4{font-size:14px;font-weight:600;line-height:1.5;margin:0 0 16px;color:#304d6e}
main.school-type-page.site-magazine-page .bf-schedule h5{font-size:12px;font-weight:600;line-height:1.5;margin:16px 0 5px;color:#4c637e}
.school-type-page .bf-amounts{margin:0}
.school-type-page .bf-amounts>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.85fr);gap:12px;padding:10px 0;border-bottom:1px solid #e8eef5;align-items:start}
.school-type-page .bf-amounts dt{font-size:13px;line-height:1.5;font-weight:400;color:#3f5875;overflow-wrap:anywhere}
.school-type-page .bf-amounts dd{font-size:13px;line-height:1.45;margin:0;text-align:right;min-width:0}
.school-type-page .bf-price{font-size:13.5px;line-height:1.5;font-weight:600;font-variant-numeric:tabular-nums;color:#183b62;overflow-wrap:anywhere}
.school-type-page .bf-amounts small{display:block;font-size:11px;line-height:1.5;font-weight:400;color:#61758b;margin-top:2px}
.school-type-page .bf-notes{margin:14px 0 8px;padding-left:17px;color:#536b85}
.school-type-page .bf-notes li{font-size:12px;line-height:1.65;margin:8px 0}
.school-type-page .bf-no-quote{font-size:13px;line-height:1.6;color:#536b85;margin:6px 0 12px}
.school-type-page .bf-source-links{display:grid;gap:2px}
.school-type-page .bf-source-links a,.school-type-page .bf-profile-link,.school-type-page .bf-detail-link{font-size:12px;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere;color:#0064db;text-decoration:underline;text-underline-offset:3px}
.school-type-page .bf-profile-link{margin-top:12px;padding-top:10px;border-top:1px solid #e5edf6;width:100%;text-decoration:none;font-weight:600}
.school-type-page .bf-budget{border:1px solid #d5e5f5;border-radius:10px;background:#f3f8fe;padding:20px;margin-top:18px}
main.school-type-page.site-magazine-page .bf-budget h3{font-size:18px;line-height:1.35;margin:0 0 12px}
.school-type-page .bf-budget ul{padding-left:18px;margin:0}
.school-type-page .bf-budget li{font-size:13px;line-height:1.65;color:#48627e;margin:9px 0}
.school-type-page .bf-fee-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 16px;border:1px solid #0067ed;border-radius:6px;background:#fff;color:#0064db;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none}
.school-type-page .bf-fees :is(a,summary):focus-visible,.school-type-page .bf-fee-action:focus-visible{outline:3px solid #f3ae29;outline-offset:3px}
@media(max-width:1100px){.school-type-page .bf-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.school-type-page .bf-school{padding:16px}.school-type-page .bf-budget{padding:16px}.school-type-page .bf-amounts>div{grid-template-columns:minmax(0,1fr) minmax(108px,.85fr);gap:10px}.school-type-page .bf-fee-action{width:100%}}
@media print{.school-type-page .bf-grid{display:block}.school-type-page .bf-school{break-inside:avoid;margin:0 0 16px}.school-type-page .bf-fee-action,.school-type-page .bf-profile-link{display:none}}
