@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}.modulix-class-info{background:var(--mlx-bg);border:1px solid var(--mlx-border);border-radius:8px;padding:20px;margin:20px 0}.modulix-class-info h3{margin-top:0;margin-bottom:15px;color:var(--mlx-text);border-bottom:2px solid var(--mlx-primary);padding-bottom:10px}.class-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-bottom:15px}.info-item{display:flex;flex-direction:column}.info-item strong{color:var(--mlx-text);margin-bottom:5px}.info-item span{color:var(--mlx-text-muted)}.availability.available{color:#28a745;font-weight:700}.availability.full{color:var(--mlx-danger);font-weight:700}.additional-info{margin-top:15px;padding-top:15px;border-top:1px solid var(--mlx-border)}.modulix-class-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:20px 0}.class-card{background:#fff;border:1px solid var(--mlx-border);border-radius:8px;overflow:hidden;transition:box-shadow .3s ease}.class-card:hover{box-shadow:0 4px 15px rgba(0,0,0,.1)}.class-image{position:relative;overflow:hidden}.class-image img{width:100%;height:200px;object-fit:cover}.class-content{padding:20px}.class-title{margin:0 0 10px}.class-title a{color:var(--mlx-text);text-decoration:none}.class-title a:hover{color:var(--mlx-primary)}.class-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px}.class-schedule{color:var(--mlx-text-muted)}.class-price{font-weight:700;color:var(--mlx-primary)}.class-availability{margin-bottom:15px;font-size:14px}.class-availability .available{color:#28a745;font-weight:700}.class-availability .full{color:var(--mlx-danger);font-weight:700}.class-actions{text-align:center}.class-actions .button{background:var(--mlx-primary);color:#fff;padding:10px 20px;border-radius:4px;text-decoration:none;display:inline-block;transition:background-color .3s ease}.class-actions .button:hover{background:var(--mlx-primary-dark);color:#fff}.modulix-children-management{margin:20px 0}.children-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.children-header h3{margin:0}.children-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.student-card{background:#fff;border:1px solid var(--mlx-border);border-radius:8px;padding:20px;position:relative}.student-info h4{margin:0 0 10px}.student-age{color:var(--mlx-text-muted);margin-bottom:10px}.student-allergies{margin-bottom:10px;font-size:14px}.student-allergies strong,.student-info h4{color:var(--mlx-text)}.epipen-required{color:var(--mlx-danger);font-weight:700}.student-enrollments{margin-bottom:15px;font-size:14px}.student-enrollments ul{margin:5px 0 0;padding-left:20px}.student-actions{display:flex;gap:10px;justify-content:flex-end}.student-actions .button{padding:5px 15px;font-size:12px}.no-children{text-align:center;padding:40px;background:var(--mlx-bg);border-radius:8px}.modulix-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.5)}.modal-content{background-color:#fff;margin:5%auto;padding:0;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{padding:20px;border-bottom:1px solid var(--mlx-border);display:flex;justify-content:space-between;align-items:center}.modal-header h4{margin:0}.close{color:#aaa;font-size:28px;font-weight:700;cursor:pointer}.close:focus,.close:hover{color:#000;text-decoration:none}.modal-body{padding:20px}.modulix-student-selection{background:var(--mlx-bg);border:1px solid var(--mlx-border);border-radius:8px;padding:20px;margin:20px 0}.modulix-student-selection h3{margin-top:0;margin-bottom:15px;color:var(--mlx-text)}.class-child-selection{margin-bottom:15px}.class-child-selection h4{margin:0 0 10px;color:var(--mlx-text);font-size:16px}.class-child-selection select,.modulix-child-form input,.modulix-child-form select,.modulix-child-form textarea{width:100%;padding:10px;border:1px solid var(--mlx-border);border-radius:4px;font-size:14px}.no-children-notice{text-align:center;padding:20px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404}.no-children-notice .button{margin-top:10px}@media (max-width:768px){.children-list,.class-info-grid,.modulix-class-list{grid-template-columns:1fr}.children-header{flex-direction:column;gap:15px;align-items:stretch}.modal-content{margin:10%auto;width:95%}.class-meta{flex-direction:column;align-items:flex-start;gap:5px}}.modulix-loading{position:relative;opacity:.6;pointer-events:none}.modulix-loading::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0-10px;border:2px solid var(--mlx-primary);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite;z-index:10}.modulix-child-form .form-row{display:flex;gap:15px;margin-bottom:15px}.modulix-child-form .form-group{margin-bottom:15px}.modulix-child-form .form-group.half{flex:1}.modulix-child-form label{display:block;margin-bottom:5px;font-weight:700;color:var(--mlx-text)}.modulix-child-form input:focus,.modulix-child-form select:focus,.modulix-child-form textarea:focus{outline:0;border-color:var(--mlx-primary);box-shadow:0 0 0 2px rgba(0,115,170,.2)}.modulix-child-form .required{color:var(--mlx-danger)}.modulix-child-form .form-actions{margin-top:20px;text-align:right}.modulix-child-form .form-actions button{margin-left:10px}