.container.svelte-1uha8ag{max-width:1200px;margin:0 auto}.student-section.svelte-1uha8ag{border:3px solid var(--school-primary);box-shadow:0 4px 12px var(--school-shadow);background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;position:relative}.student-section.svelte-1uha8ag:before{content:"👨‍👩‍👧‍👦";background:#fff;padding:0 10px;font-size:1.5rem;position:absolute;top:-15px;left:20px}.current-student.svelte-1uha8ag{text-align:center}.current-student.svelte-1uha8ag h3:where(.svelte-1uha8ag){color:var(--school-secondary);margin-bottom:.5rem;font-size:1.4rem}.student-actions.svelte-1uha8ag{justify-content:center;gap:1rem;margin-top:1rem;display:flex}.filters-section.svelte-1uha8ag{background:var(--school-light);border:2px dashed var(--school-accent);border-radius:12px;margin-bottom:2rem;padding:2rem;position:relative}.filters-section.svelte-1uha8ag:before{content:"🔍";background:var(--school-light);padding:0 10px;font-size:1.5rem;position:absolute;top:-15px;left:20px}.filters-section.svelte-1uha8ag h3:where(.svelte-1uha8ag){color:var(--school-dark);margin-bottom:1rem;font-size:1.3rem}.filters-grid.svelte-1uha8ag{grid-template-columns:2fr 1fr 1fr auto;align-items:center;gap:1rem;display:grid}.filter-input.svelte-1uha8ag,.filter-select.svelte-1uha8ag{border:2px solid var(--school-border);background:#fff;border-radius:8px;margin-bottom:0;padding:.75rem;font-size:1rem;box-shadow:inset 0 1px 3px #0000001a}.filter-input.svelte-1uha8ag:focus,.filter-select.svelte-1uha8ag:focus{border-color:var(--school-primary);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #2563eb1a}@media (width<=768px){.filters-grid.svelte-1uha8ag{grid-template-columns:1fr}}.no-student.svelte-1uha8ag{text-align:center}.no-student.svelte-1uha8ag p:where(.svelte-1uha8ag){color:#6b7280;margin-bottom:1rem}.success-message.svelte-1uha8ag{color:#166534;text-align:center;background:#dcfce7;border:1px solid #86efac;border-radius:6px;margin-bottom:1rem;padding:1rem}.error-message.svelte-1uha8ag{color:#dc2626;text-align:center;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;margin-bottom:1rem;padding:1rem}.modal-overlay.svelte-1uha8ag{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal.svelte-1uha8ag{border:3px solid var(--school-primary);width:90%;max-width:600px;max-height:90vh;box-shadow:0 8px 24px var(--school-shadow);background:#fff;border-radius:12px;padding:2rem;overflow-y:auto}.modal.svelte-1uha8ag h2:where(.svelte-1uha8ag){color:var(--school-dark);text-align:center;margin-bottom:1.5rem;font-size:2rem;position:relative}.modal.svelte-1uha8ag h2:where(.svelte-1uha8ag):before{content:"📝";margin-right:.5rem}.school-form.svelte-1uha8ag{background:#fff}.form-section.svelte-1uha8ag{background:var(--school-light);border:2px dashed var(--school-accent);border-radius:8px;margin-bottom:2rem;padding:1.5rem;position:relative}.form-section.svelte-1uha8ag h3:where(.svelte-1uha8ag){color:var(--school-dark);text-align:center;margin-bottom:1.5rem;font-size:1.3rem;position:relative}.form-section.svelte-1uha8ag h3:where(.svelte-1uha8ag):after{content:"";background:var(--school-accent);border-radius:1px;width:60px;height:2px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.section-description.svelte-1uha8ag{color:#6b7280;text-align:center;margin-bottom:1.5rem;padding:0 1rem;font-size:.9rem;font-style:italic;line-height:1.4}.form-row.svelte-1uha8ag{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.form-field.svelte-1uha8ag{margin-bottom:1.5rem;position:relative}.form-field.svelte-1uha8ag label:where(.svelte-1uha8ag){color:var(--school-dark);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.form-field.svelte-1uha8ag input:where(.svelte-1uha8ag),.form-field.svelte-1uha8ag select:where(.svelte-1uha8ag){border:2px solid var(--school-border);background:#fff;border-radius:8px;width:100%;margin-bottom:0;padding:.75rem;font-size:1rem;transition:all .2s;box-shadow:inset 0 1px 3px #0000001a}.form-field.svelte-1uha8ag input:where(.svelte-1uha8ag):focus,.form-field.svelte-1uha8ag select:where(.svelte-1uha8ag):focus{border-color:var(--school-primary);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #2563eb1a}input.svelte-1uha8ag:not(.form-field:where(.svelte-1uha8ag) input:where(.svelte-1uha8ag)),select.svelte-1uha8ag:not(.form-field:where(.svelte-1uha8ag) select:where(.svelte-1uha8ag)){border:1px solid #d1d5db;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:1rem}input.svelte-1uha8ag:not(.form-field:where(.svelte-1uha8ag) input:where(.svelte-1uha8ag)):focus,select.svelte-1uha8ag:not(.form-field:where(.svelte-1uha8ag) select:where(.svelte-1uha8ag)):focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-actions.svelte-1uha8ag{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.btn-primary.svelte-1uha8ag{background:var(--school-primary);color:#fff;cursor:pointer;box-shadow:0 2px 4px var(--school-shadow);border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;position:relative;overflow:hidden}.btn-primary.svelte-1uha8ag:hover{box-shadow:0 4px 8px var(--school-shadow);background:#1d4ed8;transform:translateY(-2px)}.btn-primary.svelte-1uha8ag:active{transform:translateY(0)}.btn-secondary.svelte-1uha8ag{background:var(--school-accent);color:var(--school-dark);cursor:pointer;box-shadow:0 2px 4px var(--school-shadow);border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600}.btn-secondary.svelte-1uha8ag:hover{box-shadow:0 4px 8px var(--school-shadow);background:#d97706;transform:translateY(-2px)}.sessions-title.svelte-1uha8ag{color:var(--school-dark);text-align:center;text-shadow:2px 2px 4px var(--school-shadow);margin-bottom:2rem;font-size:2.5rem;position:relative}.sessions-title.svelte-1uha8ag:before{content:"📚";margin-right:.5rem}.sessions-title.svelte-1uha8ag:after{content:"";background:linear-gradient(90deg, var(--school-primary), var(--school-secondary), var(--school-accent));border-radius:2px;width:100px;height:4px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.loading.svelte-1uha8ag,.no-sessions.svelte-1uha8ag{text-align:center;color:#6b7280;padding:2rem}.sessions-grid.svelte-1uha8ag{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.session-card.svelte-1uha8ag{border:3px solid var(--subject-color,var(--school-border));box-shadow:0 4px 12px var(--school-shadow);background:#fff;border-radius:12px;flex-direction:column;min-height:500px;transition:all .3s;display:flex;position:relative;overflow:hidden}.session-card.svelte-1uha8ag:before{content:"";background:var(--subject-color,var(--school-primary));height:4px;position:absolute;top:0;left:0;right:0}.session-card.svelte-1uha8ag:hover{box-shadow:0 8px 20px var(--school-shadow);border-color:var(--subject-color,var(--school-primary));transform:translateY(-4px)}.session-card.enrolled.svelte-1uha8ag{border-color:var(--school-secondary);background:#f0f9ff;box-shadow:0 4px 12px #05966933}.session-card.enrolled.svelte-1uha8ag:before{background:var(--school-secondary)}.session-card.full.svelte-1uha8ag{opacity:.7;background:#f9fafb;border-color:#9ca3af}.session-card.full.svelte-1uha8ag:before{background:#9ca3af}.session-card.full.svelte-1uha8ag:hover{box-shadow:0 4px 12px var(--school-shadow);transform:none}.session-image.svelte-1uha8ag{border-radius:8px 8px 0 0;width:100%;height:150px;margin:-3px -3px 0;position:relative;overflow:hidden}.session-image.svelte-1uha8ag img:where(.svelte-1uha8ag){object-fit:cover;width:100%;height:100%;transition:filter .3s}.session-image.full.svelte-1uha8ag img:where(.svelte-1uha8ag){filter:grayscale(60%)brightness(.8)}.full-overlay.svelte-1uha8ag{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0006;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.full-text.svelte-1uha8ag{color:#fff;text-shadow:2px 2px 4px #000c;letter-spacing:2px;font-size:1.5rem;font-weight:700;transform:rotate(-15deg)}.session-content.svelte-1uha8ag{flex:1;padding:1.5rem 1.5rem 0}.session-actions.svelte-1uha8ag{margin-top:auto;padding:0 1.5rem 1.5rem}.enrolled-badge.svelte-1uha8ag{color:#fff;text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;right:1rem}.enrolled-badge.confirmed.svelte-1uha8ag{background:#059669}.enrolled-badge.pending.svelte-1uha8ag{background:#f59e0b}.session-card.svelte-1uha8ag h3:where(.svelte-1uha8ag){color:var(--school-dark);text-align:center;margin-bottom:.5rem;font-size:1.4rem;position:relative}.session-description.svelte-1uha8ag{color:#6b7280;margin-bottom:1rem;font-size:.9rem;font-style:italic;line-height:1.4}.session-details.svelte-1uha8ag p:where(.svelte-1uha8ag){color:#4b5563;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.session-details.svelte-1uha8ag p:where(.svelte-1uha8ag) strong:where(.svelte-1uha8ag){color:var(--school-dark);min-width:80px}.session-actions.svelte-1uha8ag .spots-left:where(.svelte-1uha8ag){text-align:center;background:#0596691a;border:2px solid #05966933;border-radius:8px;margin-bottom:1rem;padding:.5rem;font-weight:600;display:block;color:var(--school-secondary)!important}.session-actions.svelte-1uha8ag .spots-left.full:where(.svelte-1uha8ag){background:#dc26261a;border:2px solid #dc262633;color:var(--school-danger)!important}.enroll-btn.svelte-1uha8ag{background:linear-gradient(135deg, var(--subject-color,var(--school-primary)), color-mix(in srgb, var(--subject-color,var(--school-primary)) 80%, black));color:#fff;cursor:pointer;width:100%;box-shadow:0 4px 8px var(--school-shadow);border:none;border-radius:8px;padding:1rem;font-size:1.1rem;font-weight:600;position:relative;overflow:hidden}.enroll-btn.svelte-1uha8ag:before{content:"✏️ "}.enroll-btn.svelte-1uha8ag:hover:not(:disabled){box-shadow:0 6px 12px var(--school-shadow);transform:translateY(-2px)}.enroll-btn.svelte-1uha8ag:disabled{cursor:not-allowed;box-shadow:none;background:#9ca3af;transform:none}.enroll-btn.svelte-1uha8ag:disabled:before{content:"❌ "}.full-btn.svelte-1uha8ag{color:#6b7280;cursor:not-allowed;width:100%;box-shadow:none;background:#9ca3af;border:none;border-radius:8px;padding:1rem;font-size:1.1rem;font-weight:600}.unenroll-btn.svelte-1uha8ag{background:linear-gradient(135deg, var(--school-danger), #b91c1c);color:#fff;cursor:pointer;width:100%;box-shadow:0 4px 8px var(--school-shadow);border:none;border-radius:8px;padding:1rem;font-size:1.1rem;font-weight:600}.unenroll-btn.svelte-1uha8ag:before{content:"🚫 "}.unenroll-btn.svelte-1uha8ag:hover{box-shadow:0 6px 12px var(--school-shadow);transform:translateY(-2px)}
