:root{--path-ink:#142033;--path-blue:#155eef;--path-line:#dbe5f0;--path-soft:#f4f8fc;--path-green:#0f9f6e;--path-amber:#d97706;--path-red:#dc2626}*{box-sizing:border-box}body{background:linear-gradient(#eef5fb 0,#f8fafc 260px);color:var(--path-ink)}.curriculum-shell{max-width:980px;margin:0 auto;padding:26px 18px 60px}.curriculum-loading,.curriculum-error{padding:80px 20px;text-align:center;color:#64748b}.curriculum-error button{margin-top:14px;padding:9px 15px;border:0;background:var(--path-blue);color:#fff}.curriculum-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:28px;border-radius:24px;background:radial-gradient(circle at 85% 20%,rgba(56,189,248,.3),transparent 30%),linear-gradient(135deg,#102a56,#164787);color:#fff;box-shadow:0 18px 38px rgba(15,42,79,.2)}.curriculum-hero>div{max-width:680px}.curriculum-hero span,.next-step small,.path-phase header small{color:#7dd3fc;font-size:9px;font-weight:800;letter-spacing:.16em}.curriculum-hero h1{margin:7px 0;font-size:28px}.curriculum-hero p{margin:0;color:#dbeafe;font-size:13px;line-height:1.7}.curriculum-hero>a{padding:10px 13px;border:1px solid #60a5fa;border-radius:10px;color:#fff;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.curriculum-subjects{display:flex;gap:7px;margin:14px 0;overflow-x:auto;scrollbar-width:none}.curriculum-subjects::-webkit-scrollbar{display:none}.curriculum-subjects a{padding:9px 12px;border:1px solid var(--path-line);border-radius:999px;background:#fff;color:#475569;font-size:11px;text-decoration:none;white-space:nowrap}.curriculum-subjects a.active{border-color:var(--path-blue);background:var(--path-blue);color:#fff}.path-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.path-summary div{padding:14px;border:1px solid var(--path-line);border-radius:14px;background:#fff;text-align:center}.path-summary strong,.path-summary span{display:block}.path-summary strong{color:#102a56;font-size:24px}.path-summary span{color:#64748b;font-size:10px}.next-step{display:flex;align-items:center;gap:18px;margin:14px 0;padding:17px 19px;border:1px solid #bae6fd;border-radius:16px;background:linear-gradient(135deg,#ecfeff,#fff)}.next-step>div{flex:1}.next-step small{color:#0284c7}.next-step h2{margin:3px 0;font-size:18px}.next-step p{margin:0;color:#64748b;font-size:11px}.next-step>a{padding:10px 13px;border-radius:10px;background:var(--path-blue);color:#fff;font-size:11px;font-weight:700;text-decoration:none}.path-legend{display:flex;justify-content:flex-end;gap:13px;margin:18px 3px 8px;color:#64748b;font-size:9px}.path-legend span{display:flex;align-items:center;gap:4px}.path-legend i{width:16px;height:5px;border-radius:9px}.easy{background:#22c55e}.medium{background:#f59e0b}.hard{background:#ef4444}.path-timeline{max-width:860px;margin:0 auto}.path-phase{display:grid;grid-template-columns:46px 1fr}.phase-marker{display:flex;align-items:center;flex-direction:column}.phase-marker>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#102a56;color:#fff;font-size:12px;font-style:normal;font-weight:800}.phase-marker>span{width:2px;flex:1;background:#cbd5e1}.path-phase:last-child .phase-marker>span{display:none}.phase-content{padding:0 0 25px 8px}.path-phase header{margin-bottom:10px}.path-phase header small{color:#2563eb}.path-phase header h2{margin:3px 0 0;font-size:19px}.path-phase header p{margin:0;color:#64748b;font-size:11px}.chapter-path{display:flex;flex-direction:column;gap:8px}.chapter-step{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--path-line);border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(15,42,79,.04)}.chapter-step.mastered{border-left:4px solid var(--path-green)}.chapter-step.developing{border-left:4px solid var(--path-amber)}.chapter-step.weak{border-left:4px solid var(--path-red)}.step-order{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eff6ff;color:#2563eb;font-size:11px;font-weight:800}.step-title{display:flex;align-items:center;gap:8px}.step-title h3{margin:0;font-size:14px}.step-title .status{padding:2px 6px;border-radius:99px;background:#f1f5f9;color:#64748b;font-size:8px}.mastered .status{background:#dcfce7;color:#15803d}.developing .status{background:#fef3c7;color:#b45309}.weak .status{background:#fee2e2;color:#b91c1c}.step-meta{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0;color:#64748b;font-size:9px}.difficulty{display:flex;gap:2px;width:min(260px,100%);height:5px;border-radius:9px;overflow:hidden;background:#e2e8f0}.difficulty i{min-width:0}.chapter-step>a{color:#155eef;font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}.curriculum-footer{display:flex;justify-content:center;gap:10px;margin-top:18px}.curriculum-footer a{padding:10px 13px;border:1px solid #bfdbfe;border-radius:10px;background:#fff;color:#155eef;font-size:11px;font-weight:700;text-decoration:none}.account-dialog{border:0;border-radius:18px;padding:24px;width:min(420px,calc(100vw - 30px))}.account-dialog label{display:block;margin:12px 0}.account-dialog input{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #cbd5e1}.account-close{float:right;border:0;background:none;font-size:22px}.account-actions{display:flex;gap:8px}.account-actions button,.account-logout{flex:1;padding:10px;border:0;background:#2563eb;color:#fff}.account-error{color:#dc2626}.account-button{border:0;background:transparent;color:inherit}.account-dialog::backdrop{background:#0f172a88}@media(max-width:620px){.curriculum-shell{padding:16px 12px 44px}.curriculum-hero{align-items:flex-start;flex-direction:column;padding:22px 18px}.curriculum-hero h1{font-size:22px}.path-summary{grid-template-columns:1fr 1fr}.next-step{align-items:flex-start;flex-direction:column}.chapter-step{grid-template-columns:30px 1fr}.chapter-step>a{grid-column:2}.path-phase{grid-template-columns:36px 1fr}.phase-marker>i{width:30px;height:30px}.phase-content{padding-left:5px}.step-title{align-items:flex-start;flex-direction:column;gap:3px}.curriculum-footer{flex-direction:column}.curriculum-footer a{text-align:center}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
