:root{--tracker-bg: #fff;--tracker-border: rgba(15, 23, 42, .08);--tracker-text: #0f172a;--tracker-text-muted: #64748b;--tracker-primary: #2563eb;--tracker-primary-glow: rgba(37, 99, 235, .04);--tracker-success: #10b981;--tracker-success-bg: rgba(16, 185, 129, .1);--tracker-warning: #d97706;--tracker-warning-bg: rgba(245, 158, 11, .1);--tracker-danger: #dc2626;--tracker-danger-bg: rgba(239, 68, 68, .1);--tracker-radius-md: 8px;--tracker-white: #fff}.theme-dark :root,.theme-dark .curriculum-progress-tracker,.theme-dark:root{--tracker-bg: #090d16;--tracker-border: rgba(255, 255, 255, .06);--tracker-text: #f8fafc;--tracker-text-muted: #64748b;--tracker-primary: #3b82f6;--tracker-primary-glow: rgba(59, 130, 246, .06);--tracker-success: #34d399;--tracker-success-bg: rgba(52, 211, 153, .15);--tracker-warning: #fbbf24;--tracker-warning-bg: rgba(251, 191, 36, .15);--tracker-danger: #f87171;--tracker-danger-bg: rgba(248, 113, 113, .15)}.curriculum-progress-tracker{background-color:var(--tracker-bg);color:var(--tracker-text);padding:1.5rem 1rem;display:flex;flex-direction:column;gap:3.5rem;width:100%;box-sizing:border-box}@media(min-width:768px){.curriculum-progress-tracker{padding:3rem 2.5rem}}.tracker-status-banner{color:var(--tracker-danger);font-size:.8125rem;padding:.75rem 1rem;border-bottom:1px solid var(--tracker-danger)}.tracker-header{display:flex;flex-direction:column;gap:2rem;padding-top:1rem;padding-bottom:2.5rem;border-bottom:1px solid var(--tracker-border)}@media(min-width:1024px){.tracker-header{flex-direction:row;justify-content:space-between;align-items:flex-end}}.tracker-header-title-section{flex-grow:1}.tracker-header-controls{display:flex;gap:2rem;align-items:flex-end}.tracker-input-group{display:flex;flex-direction:column;gap:.5rem}.tracker-input-group label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--tracker-text-muted)}.tracker-title-input{font-size:2rem;font-weight:800;background:transparent;border:none;border-bottom:1px solid transparent;color:var(--tracker-text);outline:none;padding:.25rem 0;width:100%;max-width:350px;transition:border-color .2s}.tracker-title-input:focus{border-color:var(--tracker-primary)}.tracker-number-input{font-size:1.125rem;font-weight:600;background:transparent;border:none;border-bottom:1px solid var(--tracker-border);color:var(--tracker-text);padding:.25rem 0;outline:none;width:90px;transition:border-color .2s}.tracker-number-input:focus{border-color:var(--tracker-primary)}.tracker-header-actions{display:flex;gap:1rem}.tracker-btn{font-size:.8125rem;font-weight:600;padding:.625rem 1.25rem;border-radius:var(--tracker-radius-md);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);border:none}.tracker-btn-primary{background-color:var(--tracker-primary);color:var(--tracker-white)}.tracker-btn-primary:hover{opacity:.9;transform:translateY(-.5px)}.tracker-btn-ghost{background-color:transparent;border:1px solid var(--tracker-border);color:var(--tracker-text)}.tracker-btn-ghost:hover{background-color:var(--tracker-primary-glow);border-color:var(--tracker-primary)}.tracker-btn-sm{padding:.5rem 1rem;font-size:.75rem}.tracker-precision-dashboard{display:flex;flex-direction:column;gap:1.5rem}.tracker-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2rem}.tracker-kpi{display:flex;flex-direction:column}.tracker-kpi-label{font-size:.6875rem;font-weight:700;color:var(--tracker-text-muted);text-transform:uppercase;letter-spacing:.1em}.tracker-kpi-value{font-size:3.5rem;font-weight:400;letter-spacing:-.04em;color:var(--tracker-text);margin-top:.25rem;line-height:1}.tracker-progress-section{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem}.tracker-progress-info{display:flex;justify-content:space-between;align-items:baseline}.tracker-progress-info-label{font-size:.6875rem;font-weight:700;color:var(--tracker-text-muted);text-transform:uppercase;letter-spacing:.1em}.tracker-progress-info-value{font-size:.875rem;color:var(--tracker-text)}.tracker-dynamic-progress{width:100%}.tracker-progress-svg{width:100%;height:2px;display:block}.tracker-progress-svg-track{stroke:var(--tracker-border);stroke-width:2}.tracker-progress-svg-fill{stroke:var(--tracker-primary);stroke-width:2;transition:x2 .5s cubic-bezier(.16,1,.3,1)}.tracker-advisor-banner{font-size:.8125rem;padding:.5rem 1rem;border-left:2px solid transparent;display:inline-block;width:fit-content}.advisor-success{border-color:var(--tracker-success);color:var(--tracker-success)}.advisor-warning{border-color:var(--tracker-warning);color:var(--tracker-warning)}.advisor-impossible{border-color:var(--tracker-danger);color:var(--tracker-danger)}.tracker-workspace,.tracker-semesters-container{display:flex;flex-direction:column;gap:3.5rem}.tracker-semester-card{background:transparent;border:none;padding:0;display:flex;flex-direction:column;gap:1.5rem}.tracker-semester-card:hover .tracker-btn-delete{opacity:1}.tracker-semester-card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--tracker-border);padding-bottom:.75rem}.tracker-semester-title-input{font-size:1.25rem;font-weight:700;background:transparent;border:none;color:var(--tracker-text);outline:none;flex-grow:1;padding:.25rem 0}.tracker-btn-delete{background:none;border:none;font-size:1.25rem;color:var(--tracker-text-muted);cursor:pointer;opacity:0;transition:opacity .2s ease,color .2s ease;padding:0 .5rem}.tracker-btn-delete:hover{color:var(--tracker-danger)}.tracker-courses-list{display:flex;flex-direction:column}.tracker-course-row{border-bottom:1px solid var(--tracker-border);padding:.75rem 1rem;border-radius:var(--tracker-radius-md);transition:background-color .2s}.tracker-course-row:hover{background-color:var(--tracker-primary-glow)}.tracker-course-row:hover .tracker-btn-delete-course{opacity:1}.tracker-course-row-grid{display:grid;grid-template-columns:3.5fr 1fr 1.5fr 1fr auto;gap:1rem;align-items:center}.tracker-course-name{font-size:.875rem;font-weight:500;background:transparent;border:none;color:var(--tracker-text);outline:none;width:100%}.tracker-course-credits{font-size:.875rem;background:transparent;border:none;border-bottom:1px solid transparent;color:var(--tracker-text);outline:none;text-align:center;width:100%;padding-bottom:2px}.tracker-course-credits:focus{border-color:var(--tracker-primary)}.tracker-course-status{font-size:.75rem;font-weight:700;background:transparent;border:none;outline:none;width:100%;cursor:pointer;padding:.25rem 0}.tracker-course-status.status-completed{color:var(--tracker-success)}.tracker-course-status.status-in-progress{color:var(--tracker-warning)}.tracker-course-status.status-planned{color:var(--tracker-text-muted)}.tracker-course-grade{font-size:.875rem;background:transparent;border:none;border-bottom:1px solid transparent;color:var(--tracker-text);outline:none;text-align:center;width:100%;padding-bottom:2px}.tracker-course-grade:focus{border-color:var(--tracker-primary)}.tracker-btn-delete-course{background:none;border:none;font-size:1.125rem;color:var(--tracker-text-muted);cursor:pointer;opacity:0;transition:opacity .2s ease,color .2s ease;padding:0 .5rem}.tracker-btn-delete-course:hover{color:var(--tracker-danger)}.tracker-semester-card-footer{display:flex;justify-content:flex-start;padding-top:1rem}.tracker-workspace-actions{display:flex;justify-content:center;padding-top:2rem}.tracker-security-hint{font-size:.75rem;color:var(--tracker-text-muted);text-align:center}
