.not-found.svelte-1qe21va{flex-direction:column;align-items:center;gap:1rem;padding:4rem 0;display:flex}.back-link.svelte-1qe21va{margin-bottom:.25rem;display:block}.owner-line.svelte-1qe21va{margin-top:.25rem}.owner-link.svelte-1qe21va{color:inherit;text-underline-offset:2px}.list-meta.svelte-1qe21va{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.list-type-badge.svelte-1qe21va{background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border);font-size:.72rem}.list-visibility-badge.svelte-1qe21va{border:1px solid var(--color-border);font-size:.72rem}.list-tracking-badge.svelte-1qe21va{background:color-mix(in oklch, var(--color-primary) 12%, white);color:color-mix(in oklch, var(--color-primary) 72%, black);border:1px solid color-mix(in oklch, var(--color-primary) 40%, var(--color-border));font-size:.72rem}.visibility-public.svelte-1qe21va{background:color-mix(in oklch, var(--color-primary) 18%, white);color:color-mix(in oklch, var(--color-primary) 65%, black);border-color:color-mix(in oklch, var(--color-primary) 45%, var(--color-border))}.visibility-private.svelte-1qe21va{background:var(--color-surface-2);color:var(--color-text-muted)}.goal-checklist.svelte-1qe21va{border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;list-style:none;display:flex;overflow:hidden}.checklist-row.svelte-1qe21va{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template:"tick body open reorder"/52px 1fr 36px auto;transition:background .12s;display:grid}.checklist-row.svelte-1qe21va:last-child{border-bottom:none}.checklist-row.is-expanded.svelte-1qe21va{background:var(--color-surface-2)}.checklist-row.is-done.svelte-1qe21va{background:color-mix(in oklch, var(--color-surface) 60%, var(--color-surface-2))}.tick-btn.svelte-1qe21va{cursor:pointer;width:52px;min-height:56px;color:var(--color-border);background:0 0;border:none;grid-area:tick;justify-content:center;align-self:center;align-items:center;padding:0;transition:color .2s,transform .15s;display:flex}.tick-btn.svelte-1qe21va svg:where(.svelte-1qe21va){width:22px;height:22px;overflow:visible}.tick-btn.svelte-1qe21va:hover{color:var(--color-primary);transform:scale(1.1)}.tick-btn.ticked.svelte-1qe21va{color:var(--color-primary);animation:.25s cubic-bezier(.34,1.56,.64,1) svelte-1qe21va-tick-pop}.tick-btn.svelte-1qe21va:not(.ticked){animation:.18s ease-out svelte-1qe21va-tick-unpop}@keyframes svelte-1qe21va-tick-pop{0%{transform:scale(.8)}60%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes svelte-1qe21va-tick-unpop{0%{transform:scale(1.1)}to{transform:scale(1)}}.item-num.svelte-1qe21va{width:52px;min-height:56px;color:var(--color-text-muted);grid-area:tick;justify-content:center;align-self:center;align-items:center;font-size:.78rem;font-weight:700;display:flex}.checklist-body.svelte-1qe21va{text-align:left;cursor:pointer;min-height:56px;font:inherit;color:inherit;background:0 0;border:none;flex-direction:row;grid-area:body;align-items:center;gap:.6rem;width:100%;padding:.75rem .5rem .75rem 0;display:flex}.checklist-body--static.svelte-1qe21va{cursor:default}.checklist-thumb.svelte-1qe21va{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:40px;height:40px;transition:width .2s,height .2s,border-radius .2s}.is-expanded.svelte-1qe21va .checklist-thumb:where(.svelte-1qe21va){border-radius:var(--radius-md);width:80px;height:80px}.checklist-text.svelte-1qe21va{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.checklist-body.svelte-1qe21va:hover .checklist-goal-title:where(.svelte-1qe21va){color:var(--color-primary)}.checklist-body--static.svelte-1qe21va:hover .checklist-goal-title:where(.svelte-1qe21va){color:inherit}.checklist-top-row.svelte-1qe21va{align-items:center;gap:.4rem;display:flex}.checklist-goal-title.svelte-1qe21va{flex:1;font-size:.95rem;font-weight:500;line-height:1.3;transition:color .12s}.checklist-chevron.svelte-1qe21va{color:var(--color-text-muted);font-size:1rem;line-height:1;transition:transform .18s;display:inline-block}.checklist-chevron.open.svelte-1qe21va{transform:rotate(90deg)}.checklist-row.is-done.svelte-1qe21va .checklist-goal-title:where(.svelte-1qe21va){color:var(--color-text-muted);text-decoration:line-through}.checklist-goal-meta.svelte-1qe21va{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.difficulty-stars.svelte-1qe21va{color:var(--color-accent,oklch(72% .18 55));letter-spacing:-.05em;font-size:.7rem}.open-link.svelte-1qe21va{color:var(--color-text-muted);grid-area:open;justify-content:center;align-self:center;align-items:center;text-decoration:none;transition:color .15s;display:flex}.open-link.svelte-1qe21va:hover{color:var(--color-primary);text-decoration:none}.remove-btn.svelte-1qe21va{display:none}.drag-handle.svelte-1qe21va{color:var(--color-text-muted);cursor:grab;opacity:.5;touch-action:none;-webkit-user-select:none;user-select:none;grid-area:reorder;justify-content:center;align-self:center;align-items:center;padding:0 8px;transition:opacity .15s,color .15s;display:flex}.drag-handle.svelte-1qe21va:hover{opacity:1;color:var(--color-primary)}.drag-handle.svelte-1qe21va:active{cursor:grabbing}.checklist-row.is-dragging.svelte-1qe21va{opacity:.4}.checklist-row.is-drag-over.svelte-1qe21va{box-shadow:0 -2px 0 0 var(--color-primary) inset}.detail-remove-row.svelte-1qe21va{border-top:1px solid var(--color-border);justify-content:flex-end;margin-top:.5rem;padding-top:.5rem;display:flex}.btn-remove-from-list.svelte-1qe21va{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:flex}.btn-remove-from-list.svelte-1qe21va:hover:not(:disabled){color:var(--color-danger,#e53e3e);border-color:color-mix(in oklch, var(--color-danger,#e53e3e) 40%, var(--color-border));background:color-mix(in oklch, var(--color-danger,#e53e3e) 8%, transparent)}.btn-remove-from-list.svelte-1qe21va:disabled{opacity:.4;cursor:default}.checklist-details.svelte-1qe21va{flex-direction:column;grid-column:1/-1;gap:.5rem;padding:0 1rem 1rem 52px;display:flex}.detail-description.svelte-1qe21va{color:var(--color-text-muted);max-width:60ch;font-size:.88rem;line-height:1.55}.detail-row.svelte-1qe21va{align-items:baseline;gap:.5rem;font-size:.83rem;display:flex}.detail-label.svelte-1qe21va{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;font-size:.7rem;font-weight:600}.detail-value.svelte-1qe21va{color:var(--color-text)}.detail-link.svelte-1qe21va{color:var(--color-primary);word-break:break-all;text-decoration:none}.detail-link.svelte-1qe21va:hover{text-decoration:underline}.detail-row--links.svelte-1qe21va .detail-links:where(.svelte-1qe21va){flex-wrap:wrap;gap:.4rem;display:flex}.enroll-panel.svelte-1qe21va{margin:1rem 0 1.2rem;padding:1rem}.enroll-header.svelte-1qe21va{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.3rem;display:flex}.enroll-title.svelte-1qe21va{font-family:var(--font-display);font-size:1.15rem}.enroll-all-btn.svelte-1qe21va{min-height:34px;font-size:.82rem}.enroll-help.svelte-1qe21va{margin-bottom:.7rem}.enroll-grid.svelte-1qe21va{gap:.45rem;display:grid}.enroll-row.svelte-1qe21va{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);justify-content:space-between;align-items:center;gap:.65rem;padding:.5rem .65rem;display:flex}.enroll-student.svelte-1qe21va{flex-direction:column;gap:.1rem;display:flex}.enroll-btn.svelte-1qe21va{min-width:84px;min-height:34px;font-size:.82rem}.enroll-notice.svelte-1qe21va{color:color-mix(in oklch, var(--color-primary) 70%, black);margin-top:.65rem;font-weight:600}.progress-panel.svelte-1qe21va{margin:1rem 0 1.5rem;padding:1rem}.progress-header.svelte-1qe21va{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.progress-title.svelte-1qe21va{font-family:var(--font-display);font-size:1.1rem}.progress-percent-wrap.svelte-1qe21va{line-height:1}.progress-percent.svelte-1qe21va{font-family:var(--font-display);color:var(--color-primary);letter-spacing:-.02em;font-size:clamp(2.1rem,6vw,3rem);font-weight:800}.progress-bar.svelte-1qe21va{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px;height:10px;margin-bottom:.85rem;overflow:hidden}.progress-bar-fill.svelte-1qe21va{background:linear-gradient(90deg, color-mix(in oklch, var(--color-primary) 65%, black), var(--color-primary));transform-origin:0;height:100%;transition:transform .2s;transform:scaleX(0)}.edit-panel.svelte-1qe21va{margin-bottom:1.5rem;padding:1.25rem}.edit-title.svelte-1qe21va{font-family:var(--font-display);margin-bottom:1rem;font-size:1.2rem}.edit-row.svelte-1qe21va{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.edit-error.svelte-1qe21va{color:var(--color-danger);margin-bottom:.75rem;font-size:.875rem}.edit-actions.svelte-1qe21va{flex-wrap:wrap;gap:.5rem;display:flex}.list-add-bar.svelte-1qe21va{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.list-add-btn.svelte-1qe21va{font-size:.88rem}.list-edit-mode-btn.svelte-1qe21va{align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.list-edit-mode-btn.is-active.svelte-1qe21va{color:var(--color-primary);border-color:color-mix(in oklch, var(--color-primary) 60%, var(--color-border));background:color-mix(in oklch, var(--color-primary) 8%, transparent)}@media (width<=640px){.edit-row.svelte-1qe21va{grid-template-columns:1fr}}.btn-icon.svelte-1qe21va{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn-icon.svelte-1qe21va:hover{background:var(--color-surface);border-color:var(--color-primary)}.btn-icon.svelte-1qe21va img:where(.svelte-1qe21va){filter:var(--icon-filter,none)}.btn-icon-danger.svelte-1qe21va{border-color:color-mix(in oklch, var(--color-danger,#e53e3e) 40%, var(--color-border))}.btn-icon-danger.svelte-1qe21va:hover{background:color-mix(in oklch, var(--color-danger,#e53e3e) 10%, transparent);border-color:var(--color-danger,#e53e3e)}@media (prefers-color-scheme:dark){.btn-icon.svelte-1qe21va img:where(.svelte-1qe21va){filter:invert()brightness(.85)}}
