.student-tools{background:#f5f7fb;color:#172033;font-family:Arial,sans-serif}
.st-wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.st-hero,.st-detail-hero{background:#0a365f;color:#fff;padding:44px 0 34px}
.st-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.st-kicker{margin:0 0 10px;color:#9ee7d7;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.08em}
.st-hero h1,.st-detail-hero h1{margin:0 0 14px;font-size:40px;line-height:1.12;color:#fff}
.st-lead{font-size:18px;line-height:1.65;color:#e8f3fb;max-width:820px;margin:0 0 18px}
.st-search input{width:100%;min-height:48px;border:0;border-radius:8px;padding:0 14px;font-size:16px}
.st-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.st-chips button{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer}
.st-hero-panel,.st-tool-panel,.st-side,.st-card{background:#fff;border:1px solid #dfe8f3;border-radius:8px;box-shadow:0 2px 12px rgba(15,23,42,.06)}
.st-hero-panel{padding:18px;color:#172033}
.st-hero-panel h2,.st-section h2,.st-tool-panel h2,.st-side h2{margin:0 0 14px;color:#10243f;font-size:22px}
.st-hero-panel ul,.st-side ul{list-style:none;margin:0;padding:0}
.st-hero-panel li,.st-side li{border-bottom:1px solid #edf2f7;padding:10px 0}
.st-hero-panel li:last-child,.st-side li:last-child{border-bottom:0}
.st-hero-panel a,.st-side a{color:#1769aa;text-decoration:none;font-weight:800}
.st-hero-panel span{display:block;color:#64748b;font-size:13px;margin-top:3px}
.st-section{padding:28px 0}
.st-class-row,.st-path{display:flex;gap:10px;flex-wrap:wrap}
.st-class-row a,.st-path a,.st-primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #d9e5f2;border-radius:8px;padding:0 13px;background:#fff;color:#15324f;text-decoration:none;font-weight:800}
.st-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.st-card{padding:18px;min-height:190px;display:flex;flex-direction:column}
.st-card[hidden]{display:none}
.st-card h3{font-size:19px;line-height:1.3;margin:8px 0}
.st-card h3 a{color:#10243f;text-decoration:none}
.st-card p{color:#52657c;line-height:1.6;margin:0}
.st-card-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.st-card-meta span{display:inline-flex;align-items:center;border:1px solid #d4ddea;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:800;color:#42526a;background:#fff}
.st-status-live{border-color:#bbf7d0!important;background:#f0fdf4!important;color:#166534!important}
.st-status-beta{border-color:#bfdbfe!important;background:#eff6ff!important;color:#1d4ed8!important}
.st-status-data-prep,.st-status-planned{border-color:#fde68a!important;background:#fffbeb!important;color:#92400e!important}
.st-flow{padding-bottom:46px}
.st-breadcrumb{font-size:14px;color:#cfe6fa;margin-bottom:18px}
.st-breadcrumb a{color:#fff;text-decoration:none;font-weight:800}
.st-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}
.st-tool-panel,.st-side{padding:22px}
.st-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.st-form label{display:flex;flex-direction:column;gap:6px;color:#405269;font-weight:800}
.st-form input{min-height:42px;border:1px solid #ccd8e6;border-radius:8px;padding:0 10px;font-size:16px}
.st-form select{min-height:42px;border:1px solid #ccd8e6;border-radius:8px;padding:0 10px;font-size:16px;background:#fff}
.st-form button{align-self:end;min-height:42px;border:0;border-radius:8px;background:#0b63ce;color:#fff;font-weight:900;padding:0 14px;cursor:pointer}
.st-form output{grid-column:1/-1;display:block;border:1px solid #bae6fd;background:#f0f9ff;color:#0c4a6e;border-radius:8px;padding:14px;font-weight:900;line-height:1.5}
.st-note{color:#53657a;line-height:1.7;margin:14px 0 0}
.st-result-block{margin-top:18px;border-top:1px solid #e4edf7;padding-top:18px}
.st-result-block h3{margin:0 0 10px;color:#10243f}
.st-chapter-list{margin:12px 0 0;padding-left:22px}
.st-chapter-list li{margin:8px 0;line-height:1.5}
.st-chapter-list a,.st-chapter-list span{margin-left:8px;font-size:13px}
.st-progress-summary{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0;padding:12px;border:1px solid #d9e5f2;border-radius:8px;background:#f8fbff}
.st-progress-summary span,.st-progress-summary strong{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:#fff;padding:4px 9px;font-size:13px}
.st-assessment-summary{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:12px;border:1px solid #d9e5f2;border-radius:8px;background:#fff}
.st-assessment-summary span,.st-assessment-summary strong{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:#f8fbff;padding:4px 9px;font-size:13px;color:#15324f}
.st-reset-progress{border:1px solid #d9e5f2;border-radius:8px;background:#fff;color:#15324f;font-weight:800;min-height:40px;padding:0 12px;cursor:pointer}
.st-chapter-cards{display:grid;gap:14px;margin-top:16px}
.st-revision-card{border:1px solid #dfe8f3;border-radius:8px;background:#fff;padding:16px}
.st-revision-card h4{margin:4px 0 8px;color:#10243f;font-size:18px;line-height:1.35;overflow-wrap:anywhere}
.st-revision-card p{margin:5px 0;color:#53657a;line-height:1.45}
.st-card-kicker{font-size:12px;font-weight:900;text-transform:uppercase;color:#0b63ce!important;letter-spacing:.04em}
.st-practice-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.st-practice-evidence>div{border:1px solid #e2eaf4;border-radius:8px;background:#f8fbff;padding:10px;min-width:0}
.st-practice-evidence strong,.st-practice-evidence small{display:block;line-height:1.45;overflow-wrap:anywhere}
.st-practice-evidence strong{color:#10243f;font-size:14px;margin-top:2px}
.st-practice-evidence small{color:#617086;margin-top:3px}
.st-evidence-label{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;background:#fff;border:1px solid #d9e5f2;padding:2px 7px;color:#405269;font-size:12px;font-weight:900}
.st-recommendation-review{color:#92400e!important}
.st-recommendation-practice{color:#1d4ed8!important}
.st-recommendation-on_track{color:#166534!important}
.st-recommendation-insufficient,.st-recommendation-unavailable{color:#53657a!important}
.st-resource-row,.st-progress-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.st-resource-row a{display:inline-flex;align-items:center;min-height:36px;border:1px solid #cfe2ff;border-radius:8px;background:#f0f7ff;color:#0b63ce;text-decoration:none;font-weight:800;padding:0 10px}
.st-progress-actions button{min-height:38px;border:1px solid #d9e5f2;border-radius:8px;background:#fff;color:#15324f;font-weight:800;padding:0 10px;cursor:pointer}
.st-progress-actions button[data-revision-action="revised"]{background:#ecfdf3;border-color:#bbf7d0;color:#166534}
.st-progress-actions button[data-revision-action="needs_revision"]{background:#fff8e6;border-color:#fde68a;color:#92400e}
.st-revision-card[data-progress-status="studying"]{border-left:4px solid #0b63ce}
.st-revision-card[data-progress-status="revised"]{border-left:4px solid #16a34a}
.st-revision-card[data-progress-status="needs_revision"]{border-left:4px solid #f59e0b}
.student-tools a:focus-visible,.student-tools button:focus-visible,.student-tools input:focus-visible,.student-tools select:focus-visible{outline:3px solid #f9b233;outline-offset:2px}
.st-primary-link{width:100%;background:#f9b233;color:#10243f;margin-bottom:18px;border-color:#f9b233}
@media(max-width:980px){.st-hero-grid,.st-detail-layout{grid-template-columns:1fr}.st-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.st-hero h1,.st-detail-hero h1{font-size:32px}}
@media(max-width:640px){.st-grid,.st-form,.st-practice-evidence{grid-template-columns:1fr}.st-hero,.st-detail-hero{padding:32px 0 26px}.st-hero h1,.st-detail-hero h1{font-size:28px}.st-lead{font-size:16px}.st-card{min-height:0}.st-resource-row a,.st-progress-actions button,.st-reset-progress{width:100%;justify-content:center}}

.st-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.st-section-heading>p{max-width:520px;margin:0;color:#64748b;line-height:1.6}
.st-section-kicker{margin:0 0 6px;color:#0d5ea8;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.st-goal-section{padding-top:28px}
.st-goal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.st-goal-card{display:flex;min-height:170px;flex-direction:column;gap:8px;padding:20px;border:1px solid #dbe6f0;border-radius:14px;background:#fff;color:#172033;text-decoration:none;box-shadow:0 6px 24px rgba(15,23,42,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.st-goal-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,23,42,.09);border-color:#a9c6df;text-decoration:none}
.st-goal-card strong{font-size:20px}
.st-goal-card>span:last-child{color:#64748b;line-height:1.5}
.st-goal-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#eef6ff;color:#0d5ea8;font-weight:900}
.st-search-feedback{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:9px;color:#d9e8f5;font-size:13px}
.st-search-feedback button{border:0;background:transparent;color:#fff;text-decoration:underline;cursor:pointer;font-weight:700}
.st-empty-state{display:none;margin:18px 0 0;padding:16px;border:1px dashed #cbd5e1;border-radius:10px;background:#fff;color:#64748b}
.st-empty-state.is-visible{display:block}
[data-tool-group][hidden]{display:none}
@media(max-width:980px){.st-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.st-section-heading{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:640px){.st-goal-grid{grid-template-columns:1fr}.st-goal-card{min-height:0}.st-search-feedback{align-items:flex-start;flex-direction:column}}
