.year.svelte-116mpfl{display:flex;flex-direction:column;gap:.875rem}.year-head.svelte-116mpfl{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.year-title.svelte-116mpfl{margin:0;font-size:1.125rem;font-weight:800}.year-sy.svelte-116mpfl{margin:.125rem 0 0;font-size:.8125rem;color:var(--color-neutral-mid)}.year-stats.svelte-116mpfl{display:flex;gap:.375rem;margin:0;padding:.3rem .65rem;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font-family:var(--font-heading);font-weight:700;font-size:.8125rem;white-space:nowrap}.dot.svelte-116mpfl{opacity:.6}.courses.svelte-116mpfl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.course.svelte-116mpfl{padding:.75rem;border-radius:.875rem;background:var(--color-neutral-light);border:1px solid color-mix(in srgb,var(--color-neutral-mid) 14%,transparent)}.course-top.svelte-116mpfl{display:flex;gap:.5rem;align-items:center}.course-fields.svelte-116mpfl{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:.5rem;margin-top:.5rem}.mini.svelte-116mpfl{display:flex;flex-direction:column;gap:.2rem;min-width:0}.mini.svelte-116mpfl>span:where(.svelte-116mpfl){font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-neutral-mid)}.field.svelte-116mpfl{width:100%;min-width:0;min-height:44px;padding:.5rem .75rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--color-neutral-mid) 30%,transparent);background:var(--color-card);color:var(--color-neutral-dark);font-size:16px;transition:all .2s ease}select.field.svelte-116mpfl{padding-right:.25rem}.field.svelte-116mpfl:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent)}.name-field.svelte-116mpfl{flex:1;font-weight:600}.grade-field.svelte-116mpfl{text-transform:uppercase;font-weight:700}.grade-field.svelte-116mpfl::placeholder{text-transform:none;font-weight:400}.field.invalid.svelte-116mpfl{border-color:var(--color-error);background:var(--color-error-light)}.err.svelte-116mpfl{margin:.4rem 0 0;font-size:.8125rem;color:var(--color-error)}.remove.svelte-116mpfl{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:.75rem;border:none;background:transparent;color:var(--color-neutral-mid);cursor:pointer;transition:all .2s ease}.remove.svelte-116mpfl:hover{background:var(--color-error-light);color:var(--color-error)}.remove.svelte-116mpfl svg:where(.svelte-116mpfl),.add-btn.svelte-116mpfl svg:where(.svelte-116mpfl){width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.empty.svelte-116mpfl{margin:0;font-size:.9375rem;color:var(--color-neutral-mid)}.add-row.svelte-116mpfl{display:flex;flex-wrap:wrap;gap:.5rem}.add-btn.svelte-116mpfl{display:inline-flex;align-items:center;gap:.375rem;min-height:44px}.presets-label.svelte-116mpfl{margin:0 0 .4rem;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-neutral-mid)}.chips.svelte-116mpfl{display:flex;flex-wrap:wrap;gap:.4rem}.chip.svelte-116mpfl{min-height:36px;padding:.35rem .75rem;border-radius:999px;border:1px dashed color-mix(in srgb,var(--color-primary) 45%,transparent);background:var(--color-card);color:var(--color-primary-dark);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.chip.svelte-116mpfl:hover{background:var(--color-primary-light);border-style:solid}.sr-only.svelte-116mpfl{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:none)and (pointer:coarse){.chip.svelte-116mpfl{min-height:44px}}.stat.svelte-1bwhck0{display:flex;flex-direction:column;align-items:center;padding:.6rem .4rem;border-radius:.875rem;background:var(--color-card);box-shadow:var(--shadow-warm)}.stat.svelte-1bwhck0 dt:where(.svelte-1bwhck0){font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-neutral-mid)}.stat.svelte-1bwhck0 dd:where(.svelte-1bwhck0){margin:0;font-family:var(--font-heading);font-size:1.375rem;font-weight:800;color:var(--color-primary);line-height:1.2}.mobile-bar.svelte-1bwhck0{position:fixed;left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:.25rem;padding:.5rem .5rem .5rem .875rem;border-radius:1rem;background:var(--color-card);box-shadow:var(--shadow-warm-lg),0 0 0 1px color-mix(in srgb,var(--color-primary) 18%,transparent)}.mb-stat.svelte-1bwhck0{flex:1;display:flex;flex-direction:column;min-width:0}.mb-stat.svelte-1bwhck0 span:where(.svelte-1bwhck0){font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-neutral-mid)}.mb-stat.svelte-1bwhck0 strong:where(.svelte-1bwhck0){font-family:var(--font-heading);font-size:1.05rem;font-weight:800;color:var(--color-primary);line-height:1.15}@media(min-width:1024px){.mobile-bar.svelte-1bwhck0{display:none}}.mb-btn.svelte-1bwhck0{flex:none;min-height:44px;display:inline-flex;align-items:center;font-size:.875rem;white-space:nowrap}.pill.svelte-1su7e0l{padding:.3rem .75rem;border-radius:999px;background:var(--color-primary-light)}.guide.svelte-1su7e0l h2:where(.svelte-1su7e0l){font-size:1.6rem;font-weight:800;line-height:1.25;margin:0 0 .75rem}.guide.svelte-1su7e0l h3:where(.svelte-1su7e0l){font-size:1.2rem;font-weight:800;margin:2rem 0 .5rem}.guide.svelte-1su7e0l p:where(.svelte-1su7e0l),.guide.svelte-1su7e0l li:where(.svelte-1su7e0l){color:var(--color-neutral-dark);line-height:1.7;font-size:1rem}.guide.svelte-1su7e0l p:where(.svelte-1su7e0l){margin:0 0 .85rem}.guide.svelte-1su7e0l ul:where(.svelte-1su7e0l){margin:0 0 .85rem;padding-left:1.2rem;list-style:disc}.guide.svelte-1su7e0l li:where(.svelte-1su7e0l){margin-bottom:.4rem}.faq.svelte-1su7e0l summary:where(.svelte-1su7e0l){cursor:pointer;font-family:var(--font-heading);font-weight:700;color:var(--color-neutral-dark);list-style:none;display:flex;justify-content:space-between;gap:1rem;min-height:28px}.faq.svelte-1su7e0l summary:where(.svelte-1su7e0l)::-webkit-details-marker{display:none}.faq.svelte-1su7e0l summary:where(.svelte-1su7e0l):after{content:"+";flex:none;font-size:1.25rem;line-height:1;color:var(--color-primary)}.faq[open].svelte-1su7e0l summary:where(.svelte-1su7e0l):after{content:"−"}.faq.svelte-1su7e0l p:where(.svelte-1su7e0l){margin:.6rem 0 0;font-size:.9375rem;line-height:1.65;color:var(--color-neutral-mid)}.print-notice.svelte-1su7e0l{display:none}@media print{.no-print,.screen-only.svelte-1su7e0l{display:none!important}.print-notice.svelte-1su7e0l{display:block!important;max-width:520px;margin:0 auto;padding:120px 32px;text-align:center;font-family:Nunito,Segoe UI,Arial,sans-serif;color:#1f2937}.pn-title.svelte-1su7e0l{font-size:22px;font-weight:800;color:#2d6a4f;margin:0 0 12px}.pn-url.svelte-1su7e0l{margin-top:18px;font-weight:700}}
