body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.phone-input-container{position:relative;width:100%}.phone-input-wrapper{background:#fff;border:1px solid #ddd;border-radius:8px;display:flex;overflow:hidden;position:relative}.phone-input-wrapper:focus-within{border-color:#8b3fd9;box-shadow:0 0 0 2px #8b3fd940}.country-selector{align-items:center;background:#f8f9fa;border-right:1px solid #ddd;cursor:pointer;display:flex;gap:4px;min-width:80px;padding:12px;pointer-events:auto;-webkit-user-select:none;user-select:none}.country-selector:hover{background:#e9ecef}.flag{font-size:16px}.dial-code{color:#495057;font-size:14px;font-weight:500}.dropdown-arrow{color:#6c757d;font-size:10px;margin-left:4px}.phone-number-input{background:#0000;border:none;flex:1 1;font-size:14px;outline:none;padding:12px}.phone-number-input::placeholder{color:#6c757d}.country-dropdown{background:#fff;border:1px solid #ddd;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:250px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:9999}.country-option{align-items:center;cursor:pointer;display:flex;gap:8px;padding:10px 12px}.country-option:hover{background:#f8f9fa}.country-option.selected{background:#f0ebff;color:#8b3fd9}.country-name{flex:1 1;font-size:14px}.dropdown-overlay{background:#0000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9998}.country-dropdown-portal{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:250px;min-width:200px;overflow-y:auto}.phone-input-wrapper.form-input{border:1px solid #ddd;border-radius:8px;height:44px;padding:0}.phone-input-wrapper.input{border:1px solid #ddd;border-radius:6px;height:50px;padding:0}.phone-input-container.modal-input{flex:1 1;width:auto}.phone-input-wrapper.modal-input{border:1px solid #ddd;border-radius:8px;height:auto;min-height:44px;padding:0}.phone-input-wrapper.modal-input .country-selector{min-width:65px;padding:10px 8px}.phone-input-wrapper.modal-input .phone-number-input{font-size:14px;padding:10px 12px}@media (max-width:480px){.country-name{display:none}.country-selector{min-width:70px}.country-dropdown{max-height:150px}}.address-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.address-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.address-modal-header{border-bottom:1px solid #e9ecef;padding:24px 24px 16px;text-align:center}.address-modal-header h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 8px}.address-modal-header p{color:#6c757d;font-size:16px;line-height:1.5;margin:0}.address-modal-content{padding:24px}.address-modal-content .form-group{margin-bottom:20px}.address-modal-content .form-group label{color:#343a40;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.address-modal-content .form-input{background:#fff;border:2px solid #e9ecef;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s;width:100%}.address-modal-content .form-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.address-modal-content .form-input:required{border-left:4px solid #8b3fd9}.address-modal-content .address-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr}.address-modal-note{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:20px;padding:16px}.address-modal-note p{color:#6c757d;font-size:14px;line-height:1.5;margin:0}.address-modal-actions{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px 24px}.skip-btn{background:none;border:2px solid #6c757d;border-radius:8px;color:#6c757d;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s}.skip-btn:hover{background:#6c757d;color:#fff}.skip-btn:disabled{cursor:not-allowed;opacity:.6}.save-btn{background:linear-gradient(135deg,#8b3fd9,#7a35c4);min-width:120px;transition:transform .2s}.save-btn:hover:not(:disabled){transform:translateY(-1px)}.save-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.address-modal-overlay{padding:16px}.address-modal{max-width:100%}.address-modal-header{padding:20px 20px 16px}.address-modal-header h2{font-size:20px}.address-modal-header p{font-size:14px}.address-modal-content{padding:20px}.address-modal-content .address-row{gap:20px;grid-template-columns:1fr}.address-modal-actions{flex-direction:column-reverse;padding:16px 20px 20px}.save-btn,.skip-btn{width:100%}}.login-container{align-items:center;background:#f8f9fa;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:0 40px 20px;width:100%}.logo-container{margin-bottom:16px;padding-top:16px;text-align:center}.app-logo{height:60px}.app-logo,.app-logo-large{max-width:100%;object-fit:contain;width:auto}.app-logo-large{height:120px}.app-logo-extra-large{height:auto;max-height:173px;object-fit:contain;width:100%}@media (max-width:768px){.app-logo-large{height:100px}.app-logo-extra-large{max-height:115px}}.form,.form h2{margin-bottom:16px}.form h2{color:#343a40;font-size:24px;font-weight:700;text-align:center}.input{border:1px solid #ced4da;border-radius:8px;box-sizing:border-box;font-size:16px;margin-bottom:12px;padding:10px;width:100%}.input:focus{border-color:#8b3fd9;box-shadow:0 0 0 2px #8b3fd940;outline:none}.button{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:12px;padding:12px;transition:background-color .2s;width:100%}.button:hover{background:#7a35c4}.button-disabled{cursor:not-allowed}.button-disabled,.button-disabled:hover{background:#6c757d}.link-button{background:none;border:none;color:#8b3fd9;cursor:pointer;font-size:14px;padding:8px;text-align:center;text-decoration:underline;width:100%}.link-button:hover{color:#7a35c4}.demo-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-top:20px}.demo-toggle{background:none;border:none;border-radius:12px;color:#8b3fd9;cursor:pointer;font-size:16px;font-weight:600;padding:16px;width:100%}.demo-toggle:hover{background:#f8f9fa}.demo-accounts{padding:0 16px 16px}.demo-accounts h3{color:#333;font-size:20px;font-weight:700;margin-bottom:8px;text-align:center}.demo-accounts>p{color:#666;font-size:14px;margin-bottom:16px;text-align:center}.demo-account{background:#f8f9fa;border-left:4px solid;border-radius:8px;cursor:pointer;margin-bottom:12px;padding:12px;transition:transform .2s}.demo-account:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.demo-header{align-items:center;display:flex;margin-bottom:8px}.demo-icon{font-size:24px;margin-right:12px}.demo-info{flex:1 1}.demo-type{color:#333;font-size:16px;font-weight:700}.demo-email{color:#666;font-size:14px;margin-top:2px}.demo-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:700;padding:4px 8px}.demo-description{color:#555;font-size:13px;line-height:1.4;margin:0}.demo-note{background:#f3e8ff;border-radius:8px;color:#8b3fd9;font-size:14px;font-style:italic;margin-top:8px;padding:12px;text-align:center}.name-input{margin-bottom:0}.password-field{margin-bottom:16px}.password-input{margin-bottom:0;padding-right:45px}.password-toggle{color:#6c757d;height:24px;padding:0;width:24px}.password-toggle:hover{color:#8b3fd9}.login-type-toggle{display:flex;gap:8px;margin-bottom:16px}.toggle-button{background:#fff;border:2px solid #ced4da;border-radius:8px;color:#6c757d;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s}.toggle-button:hover{border-color:#8b3fd9;color:#8b3fd9}.toggle-button.active{background:#8b3fd9;border-color:#8b3fd9;color:#fff}@media (max-width:768px){.login-container{background:#fff;padding:12px}.login-card{border-radius:0;box-shadow:none;max-width:100%;padding:20px}.demo-container{border-radius:0;margin:12px -12px;max-width:calc(100vw - 24px)}.demo-account{margin-left:0;margin-right:0;padding:12px}.demo-header{flex-wrap:wrap}.demo-info{min-width:0}.demo-description,.demo-email,.demo-type{overflow-wrap:break-word;word-break:break-word}}.children-screen{margin:0 auto;max-width:1000px;padding:0 20px}.children-header{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:24px}.children-header h2{color:#333;font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0}.add-btn{padding:14px 28px}.empty-state{box-shadow:0 2px 4px #0000001a}.empty-state h3{color:#343a40;font-size:24px;font-weight:700;margin-bottom:16px}.empty-state p{line-height:1.5;margin-bottom:32px}.add-first-btn{background:#8b3fd9;border-radius:12px;font-weight:600;padding:16px 32px}.add-first-btn:hover{background:#0056b3}.children-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.child-card{background:#fff;border:1px solid #667eea1a;border-radius:20px;box-shadow:0 8px 30px #0000001a;cursor:pointer;padding:24px;position:relative;transition:all .3s ease}.child-card:hover{border-color:#667eea4d;box-shadow:0 20px 40px #667eea33;transform:translateY(-8px)}.skeleton-child-card{background:linear-gradient(135deg,#fff5f5,#fef0f0);border:2px dashed #f56565;cursor:default}.skeleton-child-card:hover{border-color:#f56565;box-shadow:0 8px 30px #0000001a;transform:none}.skeleton-child-content{align-items:center;display:flex;flex-direction:column;gap:16px;text-align:center}.skeleton-child-content .child-name{color:#2d3748;margin-bottom:0}.complete-profile-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.complete-profile-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.child-info{flex:1 1}.child-name{font-size:24px;font-weight:700;letter-spacing:-.3px;margin:0 0 12px}.child-details{color:#495057;font-size:14px;margin-bottom:8px}.child-school{color:#6c757d;font-size:13px;margin-bottom:4px}.child-interests{color:#6c757d;font-size:13px;margin-bottom:8px}.child-activity-count{background:linear-gradient(135deg,#8b3fd9,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 15px #667eea4d;color:#fff;display:inline-block;font-size:14px;font-weight:600;margin:12px 0;padding:8px 16px}.child-date{color:#adb5bd;font-size:12px}.child-actions{gap:16px;top:16px}.child-actions .delete-btn,.child-actions .edit-btn{border-radius:0!important;font-weight:400!important;min-width:32px;padding:0!important;transition:none!important}.child-actions .delete-btn:hover,.child-actions .edit-btn:hover{background:none!important;color:#333!important}.modal{box-sizing:border-box;max-width:360px;padding:12px}.modal h3{font-size:16px;margin:0 0 8px}.modal-label{color:#6c757d;display:block;font-size:11px;margin-bottom:2px;margin-top:0}.modal-input{border:1px solid #ced4da;border-radius:8px;box-sizing:border-box;font-size:14px;margin-bottom:12px;max-width:100%;min-width:0;padding:10px;width:100%}.modal-input[type=date]{-webkit-appearance:none;-moz-appearance:textfield;box-sizing:border-box;flex-shrink:1;max-width:200px;min-width:150px;padding:8px 10px;width:auto}.name-fields{gap:8px;margin-bottom:4px}.name-fields .modal-input{flex:1 1;margin-bottom:0;min-width:0}.modal-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 2px #007bff40;outline:none}.modal-actions{gap:8px;margin-top:16px}.cancel-btn,.confirm-btn{font-size:15px;padding:10px}.confirm-btn{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;transition:background-color .2s}.confirm-btn:hover{background:#0056b3}.confirm-btn.disabled{background:#adb5bd;cursor:not-allowed}.confirm-btn.disabled:hover{background:#adb5bd}.child-invitations{border-top:1px solid #fff3;margin-top:12px;padding-top:12px}.invitations-header{align-items:center;color:#fd7e14;display:flex;font-size:13px;font-weight:600;gap:4px;margin-bottom:8px}.invitation-item{background:#fd7e1414;border:1px solid #fd7e1440;border-radius:6px;margin-bottom:6px;padding:8px;transition:all .2s}.invitation-item:hover{background:#fd7e141f;border-color:#fd7e1466}.invitation-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:6px}.invitation-activity{flex:1 1;min-width:0}.invitation-activity strong{color:#fd7e14;display:block;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invitation-from{color:#666;font-size:11px;margin-top:1px}.invitation-meta{color:#555;display:flex;flex-wrap:wrap;font-size:11px;gap:8px;margin-bottom:6px}.invitation-meta-item{align-items:center;display:flex;gap:2px;white-space:nowrap}.invitation-message{-webkit-line-clamp:3;-webkit-box-orient:vertical;word-wrap:break-word;display:-webkit-box;font-size:11px;line-height:1.4;margin-bottom:6px;max-height:3.6em;overflow:hidden;text-overflow:ellipsis}.invitation-actions{display:flex;flex-wrap:wrap;gap:4px}.invitation-accept-btn,.invitation-calendar-btn,.invitation-dismiss-btn,.invitation-reject-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:10px;font-weight:600;min-height:28px;padding:6px 8px;transition:all .2s;white-space:nowrap}.invitation-accept-btn{background:#28a745;color:#fff}.invitation-accept-btn:hover:not(:disabled){background:#1e7e34}.invitation-reject-btn{background:#dc3545;color:#fff}.invitation-reject-btn:hover:not(:disabled){background:#c82333}.invitation-calendar-btn{background:#8b3fd9;color:#fff}.invitation-calendar-btn:hover:not(:disabled){background:#0056b3}.invitation-dismiss-btn{background:#6c757d;color:#fff}.invitation-dismiss-btn:hover:not(:disabled){background:#5a6268}.invitation-accept-btn:disabled,.invitation-calendar-btn:disabled,.invitation-dismiss-btn:disabled,.invitation-reject-btn:disabled{cursor:not-allowed;opacity:.6}.invitations-toggle{background:none;border:none;border-radius:3px;color:#fd7e14;cursor:pointer;font-size:11px;padding:2px 4px;transition:background-color .2s}.invitations-toggle:hover{background:#fd7e141a}@media (max-width:768px){.children-screen{margin:0;max-width:100%;padding:0}.children-header{align-items:stretch;background:#fff;border-bottom:1px solid #e5e7eb;flex-direction:column;gap:16px;margin-bottom:0;padding:12px}.children-header h2{color:#1f2937;font-size:18px}.children-grid{gap:12px;grid-template-columns:1fr;padding:12px}.child-card{border-radius:8px;box-shadow:0 2px 8px #00000014;padding:16px}.modal{margin:10px;max-height:95vh;padding:16px;width:calc(100% - 20px)}.invitation-actions{flex-direction:row;gap:4px}.invitation-accept-btn,.invitation-calendar-btn,.invitation-reject-btn{flex:1 1;font-size:9px;min-height:28px;padding:6px 4px}.empty-state{border-radius:8px;margin:12px;padding:20px 12px}.loading{background:#fff;padding:20px 12px}}.child-notifications{display:flex;flex-direction:column;gap:4px;margin:8px 0}.notification-badge{align-items:center;border-radius:12px;display:flex;font-size:12px;font-weight:500;gap:6px;padding:4px 8px}.badge-count{background:#fff;border-radius:10px;color:inherit;font-weight:600;min-width:18px;padding:2px 6px;text-align:center}.badge-label{font-size:11px;opacity:.9}.invitation-badge{background:#fd7e141a;border:1px solid #fd7e144d;color:#fd7e14}.connection-badge{background:#22c55e1a;border:1px solid #22c55e4d;color:#22c55e}.system-badge{background:#3b82f61a;border:1px solid #3b82f64d;color:#3b82f6}.edit-child-modal-overlay{z-index:10000!important}.time-picker-dropdown{display:inline-block;width:100%}.time-selectors{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:8px;display:flex;gap:8px;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.time-selectors:focus-within{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a}.time-select{background:none;border:none;border-radius:4px;color:#495057;cursor:pointer;font-family:inherit;font-size:14px;padding:4px 6px;transition:background-color .2s}.time-select:focus{background:#f8f9fa;outline:none}.time-select:hover{background:#f8f9fa}.hour-select,.minute-select{overflow:hidden;text-align:center;white-space:nowrap;width:100%}.period-select{font-weight:500;text-align:center;width:60px}.time-separator{color:#6c757d;flex-shrink:0;font-weight:700;margin:0 4px;-webkit-user-select:none;user-select:none}.time-display{background:#e8f5e8;border:1px solid #c3e6c3;border-radius:6px;color:#2d5a2d;font-size:14px;font-weight:500;margin-top:8px;padding:6px 12px;text-align:center}.hour-dropdown-container,.minute-dropdown-container{display:inline-block;flex:1 1;position:relative}.hour-select,.minute-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 4px center;background-repeat:no-repeat;background-size:12px;padding-right:20px}.dropdown-arrow{display:none}.hour-dropdown-list,.minute-dropdown-list{background:#3a3a3a;border:1px solid #666;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 12px #0000004d;left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.hour-option-placeholder,.minute-option-placeholder{background:#2a2a2a;color:#ccc;font-weight:500}.hour-option,.hour-option-placeholder,.minute-option,.minute-option-placeholder{align-items:center;border-bottom:1px solid #555;display:flex;font-size:14px;height:32px;justify-content:center;padding:8px 12px}.hour-option,.minute-option{background:#3a3a3a;color:#fff;cursor:pointer;transition:background-color .2s}.hour-option:hover,.minute-option:hover{background:#4a4a4a}.hour-option.selected,.minute-option.selected{background:#8b3fd9;color:#fff}.hour-option:last-child,.minute-option:last-child{border-bottom:none}.time-select option{padding:4px 8px}@media (prefers-color-scheme:dark){.time-selectors{background:#2d3748;border-color:#4a5568}.hour-select,.time-select{color:#e2e8f0}.hour-select:focus,.hour-select:hover,.time-select:focus,.time-select:hover{background:#4a5568}.time-separator{color:#a0aec0}.hour-dropdown-list{background:#2d3748;border-color:#4a5568}.hour-option{color:#e2e8f0}.hour-option:hover{background:#4a5568}.hour-option.selected{background:#3182ce;color:#fff}.hour-option-placeholder{background:#4a5568;border-bottom-color:#4a5568;color:#a0aec0}}@media (max-width:768px){.time-selectors{padding:10px 12px}.time-select{font-size:16px;padding:6px 8px}.hour-select,.minute-select{overflow:hidden;white-space:nowrap;width:100%}.hour-dropdown-list,.minute-dropdown-list{background:#3a3a3a;border:1px solid #666;border-radius:8px;box-shadow:0 4px 15px #0006;max-height:350px}.hour-option,.minute-option{align-items:center;background:#3a3a3a;border-bottom:1px solid #555;color:#fff;display:flex;font-size:16px;height:auto;justify-content:center;min-height:44px;padding:12px 16px}.hour-option:last-child,.minute-option:last-child{border-bottom:none}.hour-option:hover,.minute-option:hover{background:#4a4a4a}.hour-option.selected,.minute-option.selected{background:#8b3fd9;color:#fff}.hour-option-placeholder,.minute-option-placeholder{align-items:center;background:#2a2a2a;border-bottom:2px solid #555;color:#ccc;display:flex;font-size:16px;font-weight:600;height:auto;justify-content:center;min-height:44px;padding:12px 16px}.period-select{width:65px}}.calendar-date-picker{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px #0000000d;margin:0 auto;max-width:100%;overflow:hidden}.calendar-date-picker .calendar-header{align-items:center!important;background:#fff!important;border-bottom:1px solid #e2e8f0!important;box-sizing:border-box!important;color:#333!important;display:flex!important;flex-direction:row!important;justify-content:space-between!important;padding:12px 16px!important;width:100%!important}.calendar-date-picker .header-left{flex:0 0 auto!important;order:1!important}.calendar-date-picker .header-center{flex:1 1 auto!important;order:2!important;text-align:center!important}.calendar-date-picker .header-right{flex:0 0 auto!important;order:3!important}.calendar-date-picker .calendar-nav-btn{background:none!important;border:none!important;color:#333!important;cursor:pointer!important;font-size:24px!important;height:auto!important;line-height:1!important;margin:0!important;min-width:40px!important;padding:8px!important;width:auto!important}.calendar-date-picker .calendar-nav-btn:hover{opacity:.8!important}.month-year{font-size:14px;font-weight:600;text-align:center;white-space:nowrap}.calendar-controls{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 20px}.clear-btn,.today-btn{background:none;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.today-btn:hover{background:#e2e8f0;border-color:#a0aec0}.clear-btn{border-color:#feb2b2;color:#e53e3e}.clear-btn:hover{background:#fed7d7;border-color:#fc8181}.calendar-grid{padding:16px}.day-headers{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.day-header{color:#4a5568;font-size:12px;font-weight:600;padding:8px 4px;text-align:center}.days-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.day-cell{align-items:center;aspect-ratio:1;background:none;border:none;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;min-height:44px;transition:all .2s}.day-cell:hover:not(.disabled):not(.selected){background:#edf2f7}.day-cell.other-month{color:#a0aec0}.day-cell.today{background:#f0fff4;border:1px solid #38a169;color:#2d3748;font-weight:600;position:relative}.day-cell.today:after{background:#38a169;border-radius:50%;bottom:2px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}.day-cell.selected{background:linear-gradient(135deg,#8b3fd9,#764ba2)!important;box-shadow:0 2px 4px #667eea4d;color:#fff!important;font-weight:700;transform:scale(1.05)}.day-cell.selected:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)!important;box-shadow:0 4px 8px #667eea66;transform:scale(1.08)}.day-cell.selected.today{background:linear-gradient(135deg,#38b2ac,#319795)!important;border-color:#2c7a7b;color:#fff!important}.day-cell.disabled{background:#f7fafc;color:#cbd5e0;cursor:not-allowed}.selected-dates-summary{background:#f0fff4;border-top:1px solid #c6f6d5;padding:16px 20px}.selected-dates-summary strong{color:#276749;display:block;font-size:14px;margin-bottom:8px}.date-tags{display:flex;flex-wrap:wrap;gap:6px}.date-tag{background:#38a169;border-radius:12px;font-size:12px;font-weight:500;gap:6px;padding:4px 8px}.remove-date{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;justify-content:center;line-height:1;margin-left:4px;min-height:32px;min-width:32px;padding:8px;transition:background-color .2s}.remove-date:hover{background:#fff3}@media (max-width:480px){.calendar-date-picker{margin:0;max-width:100%}.calendar-header{padding:10px 12px}.month-year{font-size:16px}.nav-btn{font-size:20px;padding:6px 8px}.calendar-controls{padding:10px 16px}.calendar-grid{padding:12px}.day-cell{font-size:13px;min-height:32px}.day-header{font-size:11px;padding:6px 2px}.selected-dates-summary{padding:12px 16px}.date-tag{font-size:11px;padding:3px 6px}}.add-club-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:2000}.add-club-modal{animation:modal-slide-in .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:95%}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.add-club-modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:24px 24px 16px}.add-club-modal-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8b3fd9,#667eea);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:24px;font-weight:700;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:24px;line-height:1;padding:4px 8px;transition:all .2s}.close-btn:hover{background:#f8f9fa;color:#2d3748}.add-club-modal-content{flex:1 1;overflow-y:auto;padding:24px}.form-group label{font-size:14px}.form-input{background:#fff;border:2px solid #e9ecef;transition:all .2s}.form-input.error{border-color:#dc3545}.error-message{color:#dc3545;display:block;font-size:13px;font-weight:500;margin-top:6px}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-label{align-items:center;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.checkbox-label:hover{background:#e9ecef}.checkbox-input{accent-color:#8b3fd9;cursor:pointer;height:20px;width:20px}.checkbox-text{color:#2d3748;font-size:14px;font-weight:500}.help-text{color:#6c757d;font-size:13px;line-height:1.4;margin:8px 0 0 32px}.add-club-modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.cancel-btn{background:#f8f9fa;border:1px solid #dee2e6;color:#495057;padding:12px 24px;transition:all .2s}.cancel-btn:hover{background:#e9ecef;border-color:#adb5bd}.save-btn{background:linear-gradient(135deg,#8b3fd9,#764ba2);box-shadow:0 4px 15px #8b3fd94d;padding:12px 24px;transition:all .2s}.save-btn:hover{box-shadow:0 6px 20px #8b3fd966;transform:translateY(-2px)}.save-btn:active{transform:translateY(0)}@media (max-width:768px){.add-club-modal{border-radius:0;max-height:100vh;max-width:100%;width:100%}.add-club-modal-header{padding:20px 16px 12px}.add-club-modal-header h2{font-size:20px}.add-club-modal-content{padding:16px}.add-club-modal-footer{flex-direction:column;padding:12px 16px}.cancel-btn,.save-btn{width:100%}.form-input{font-size:16px}}.clubs-screen{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.clubs-header{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;margin-bottom:32px;padding:24px;text-align:center}.clubs-header h2{color:#2c3e50;font-size:32px;font-weight:700;margin:0 0 8px}.clubs-header p{color:#6c757d;font-size:18px;margin:0}.selection-header{align-items:center;display:flex;justify-content:space-between;width:100%}.close-selection-btn{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;transition:all .2s;width:40px}.close-selection-btn:hover{background:#e9ecef;border-color:#adb5bd;color:#495057}.clubs-filters{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr;margin-bottom:24px}.search-input{background:#fff;border:2px solid #e9ecef;padding:12px 16px;transition:border-color .2s;width:100%}.search-input:focus{box-shadow:0 0 0 3px #8b3fd91a}.type-select{background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#333;cursor:pointer;font-size:16px;padding:12px 16px;transition:border-color .2s;width:100%}.type-select:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.location-input{background:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .2s;width:100%}.location-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.filter-tag{background:#f3e8ff;border-radius:12px;font-weight:500}.clear-filters-btn,.filter-tag{color:#8b3fd9;font-size:12px;padding:4px 8px}.clear-filters-btn{background:none;border:1px solid #8b3fd9;border-radius:12px;cursor:pointer;transition:all .2s}.clear-filters-btn:hover{background:#8b3fd9;color:#fff}.clubs-stats{color:#6c757d;font-size:14px;margin-bottom:24px}.clubs-stats p{margin:0}.clubs-grid{display:flex;flex-direction:column;gap:16px}.club-card{align-items:flex-start;background:#fff;border:1px solid #e8eaed;border-radius:8px;display:flex;gap:16px;padding:16px;position:relative;transition:box-shadow .2s}.club-card:hover{box-shadow:0 1px 6px #20212447}.club-favicon{flex-shrink:0;height:32px;position:relative;width:32px}.favicon-img{object-fit:contain;padding:4px}.favicon-fallback,.favicon-img{background:#f8f9fa;border-radius:4px;height:32px;width:32px}.favicon-fallback{border:1px solid #e0e0e0;font-size:18px;line-height:28px;text-align:center}.club-content{flex:1 1;min-width:0}.club-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.club-title{word-wrap:break-word;color:#202124;flex:1 1;font-size:20px;font-weight:500;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;margin:0;overflow-wrap:break-word}.club-type{background:#e3f2fd;border:1px solid #bbdefb;border-radius:12px;color:#1565c0;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.club-url{margin-bottom:12px}.club-url-link{border-radius:4px;color:#1a73e8;font-size:14px;padding:2px 0;text-decoration:none;transition:color .2s;word-break:break-all}.club-url-link:hover{color:#174ea6;text-decoration:underline}.club-actions{display:flex;gap:8px;position:absolute;right:16px;top:16px}.club-actions-bottom{border-top:1px solid #e8eaed;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px;padding-top:16px}.select-club-btn{background:linear-gradient(135deg,#8b3fd9,#7a35c4);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;flex-shrink:0;font-size:15px;font-weight:600;max-width:200px;padding:10px 24px;transition:all .2s;width:100%}.select-club-btn:hover{background:linear-gradient(135deg,#7a35c4,#6b2fb8);box-shadow:0 4px 12px #8b3fd94d;transform:translateY(-1px)}.edit-club-btn{background:linear-gradient(135deg,#8b3fd9,#7a35c4);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;flex-shrink:0;font-size:15px;font-weight:600;max-width:200px;padding:10px 24px;transition:all .2s;width:100%}.edit-club-btn:hover{background:linear-gradient(135deg,#7a35c4,#6b2fb8);box-shadow:0 4px 12px #8b3fd94d;transform:translateY(-1px)}.club-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#545454;display:-webkit-box;font-size:14px;line-height:1.4;margin-bottom:8px;overflow:hidden}.club-details{color:#545454;display:flex;flex-wrap:wrap;font-size:13px;gap:16px}.club-detail{align-items:center;display:inline-flex;gap:4px}.no-clubs{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;grid-column:1/-1;padding:64px 32px;text-align:center}.no-clubs-icon{font-size:64px;margin-bottom:16px;opacity:.5}.no-clubs h3{color:#2c3e50;font-size:24px;margin:0 0 12px}.no-clubs p{color:#6c757d;font-size:16px;line-height:1.5;margin:0}@media (max-width:768px){.clubs-screen{padding:16px}.clubs-header{margin-bottom:24px;padding:20px 16px}.clubs-header h2{font-size:24px}.clubs-header p{font-size:16px}.clubs-filters{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.clubs-grid{gap:16px;grid-template-columns:1fr}.club-card{padding:20px}.club-header{align-items:flex-start;flex-direction:column;gap:8px}.club-type{align-self:flex-start}.club-details{margin-bottom:16px}.no-clubs{padding:48px 24px}.no-clubs-icon{font-size:48px}.no-clubs h3{font-size:20px}}.selection-mode-indicator{background:linear-gradient(135deg,#8b3fd9,#764ba2);border-radius:20px;box-shadow:0 4px 15px #8b3fd94d;color:#fff;font-size:14px;font-weight:600;margin-top:12px;padding:8px 16px;text-align:center}.clubs-screen[data-selection-mode=true] .club-card{border:2px solid #0000}.connections-screen{margin:0 auto;max-width:1000px}.connections-header{border-bottom:2px solid #e9ecef;margin-bottom:24px;padding-bottom:16px}.connections-header h2{color:#333;font-size:28px;font-weight:700;margin:0}.search-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.search-section h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 16px}.search-form{display:flex;gap:12px}.search-input{border:1px solid #ced4da;border-radius:8px;flex:1 1;font-size:16px;padding:12px}.search-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 2px #007bff40;outline:none}.search-btn{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 20px;transition:background-color .2s}.search-btn:hover:not(.disabled){background:#0056b3}.search-btn.disabled{background:#adb5bd;cursor:not-allowed}.search-results{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.search-results h4{color:#343a40;font-size:18px;font-weight:700;margin:0 0 16px}.parent-card{margin-bottom:12px;padding:16px;transition:box-shadow .2s}.parent-card:hover{box-shadow:0 4px 8px #0000001a}.parent-card:last-child{margin-bottom:0}.parent-info h5{color:#343a40;font-size:16px;font-weight:600;margin:0 0 4px}.parent-contact{color:#6c757d;font-size:14px;margin-bottom:4px}.children-count{color:#6c757d;font-size:12px}.connect-btn{background:#28a745;font-size:14px;padding:8px 16px;transition:background-color .2s}.connect-btn:hover{background:#1e7e34}.requests-section{margin-bottom:24px}.connections-section,.requests-section,.sent-requests-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:20px}.connections-section h3,.requests-section h3,.sent-requests-section h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 16px}.empty-state{padding:40px}.requests-list{display:flex;flex-direction:column;gap:12px}.request-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px}.request-card.compact{border-radius:6px;padding:12px}.request-content{align-items:center;display:flex;gap:12px;justify-content:space-between}.request-card.sent-request{border-left:4px solid #8b3fd9}.request-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.request-header h4{color:#343a40;font-size:16px;font-weight:600;margin:0}.request-date{color:#6c757d;font-size:12px}.request-message{background:#f8f9fa;border-left:4px solid #8b3fd9;border-radius:8px;margin-bottom:16px;padding:16px}.request-card.compact .request-message{background:none;border:none;flex:1 1;font-size:14px;margin:0;padding:0}.request-message p{color:#343a40;font-size:16px;line-height:1.5;margin:0}.request-card.compact .request-message p{font-size:14px}.request-message strong{color:#343a40;font-weight:600}.request-actions{display:flex;gap:8px}.request-card.compact .request-actions{gap:6px}.reject-btn{background:#dc3545;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:8px 16px;transition:background-color .2s}.request-card.compact .reject-btn{border-radius:4px;flex:none;font-size:12px;padding:6px 12px}.reject-btn:hover{background:#c82333}.accept-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:8px 16px;transition:background-color .2s}.request-card.compact .accept-btn{border-radius:4px;flex:none;font-size:12px;padding:6px 12px}.accept-btn:hover{background:#1e7e34}.request-status{justify-content:flex-end;margin-top:12px}.status-badge{border-radius:16px;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.pending{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.modal{box-shadow:0 8px 32px #0000004d;max-height:80vh;max-width:500px;width:90%}.modal h3{color:#343a40;font-size:20px;margin:0 0 20px}.form-section{margin-bottom:20px}.form-section label{color:#343a40;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.child-selector{display:flex;flex-wrap:wrap;gap:8px}.child-option{background:#e9ecef;border:none;border-radius:16px;color:#6c757d;cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s}.child-option:hover{background:#ced4da}.child-option.selected{background:#8b3fd9;color:#fff}.message-input{border:1px solid #ced4da;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;min-height:80px;padding:12px;resize:vertical;width:100%}.message-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 2px #007bff40;outline:none}.modal-actions{margin-top:20px}.send-btn{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px;transition:background-color .2s}.send-btn:hover{background:#0056b3}.request-status{align-items:center;display:flex;gap:12px;justify-content:space-between}.remove-connection-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s;white-space:nowrap}.request-card.compact .remove-connection-btn{border-radius:3px;font-size:16px;padding:4px 8px}.connections-grouped,.requests-grouped{display:flex;flex-direction:column;gap:20px}.child-connections-group{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px}.child-group-header{border-bottom:2px solid #8b3fd9;color:#495057;font-size:16px;font-weight:600;margin:0 0 12px;padding-bottom:8px}.child-connections-list{display:flex;flex-direction:column;gap:8px}.connection-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.connected-to{color:#495057;font-size:14px}.connected-to strong{color:#343a40}.connection-item .remove-connection-btn{font-size:14px;padding:4px 6px}.remove-connection-btn:hover{background:#c82333;box-shadow:0 2px 4px #dc35454d;transform:translateY(-1px)}@media (max-width:768px){.connections-screen{margin:0;max-width:100%;padding:0}.connections-header{background:#fff;border-bottom:1px solid #e5e7eb;margin-bottom:0;padding:12px}.connections-header h2{color:#1f2937;font-size:18px}.search-section{border-bottom:1px solid #e5e7eb;border-radius:0;box-shadow:none;margin-bottom:0;padding:16px 12px}.parent-card,.request-actions,.search-form{flex-direction:column}.parent-card{align-items:flex-start;border-radius:8px;box-shadow:0 2px 8px #00000014;gap:12px}.modal{margin:20px;width:calc(100% - 40px)}.connections-list{padding:12px}.child-selector{justify-content:flex-start}.request-details{flex-direction:column;gap:12px}.child-info{min-width:0;min-width:auto}}.child-activity-screen{margin:0 auto;max-width:1200px;padding:20px}.activity-header{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 30px #0000001a;margin-bottom:32px;padding:24px}.header-actions{align-items:center;display:flex;gap:16px}.view-toggle{background:#f8f9fa;border:1px solid #dee2e6}.toggle-btn{background:#0000;border:none;border-radius:6px;color:#6c757d;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.toggle-btn:hover{background:#8b3fd91a;color:#8b3fd9}.toggle-btn.active{background:linear-gradient(135deg,#8b3fd9,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff}.back-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .2s}.back-btn:hover{background:#e9ecef;border-color:#adb5bd}.child-info h2{color:#2d3748;font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.child-info p{color:#718096;font-size:16px;font-weight:500;margin:0}.add-btn{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);border-radius:25px;box-shadow:0 4px 15px #ff6b6b4d;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s}.add-btn:hover{box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-2px)}.activities-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.activity-card{border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.activity-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.activity-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.activity-name{color:#fff;flex:1 1;font-size:18px;text-shadow:0 1px 3px #00000080}.activity-status{margin-left:10px}.status-icon{font-size:16px}.activity-description{color:#ffffffe6;line-height:1.5;margin:0 0 15px;text-shadow:0 1px 2px #0000004d}.activity-details{margin:15px 0}.activity-details>div{color:#ffffffd9;font-size:14px;margin:8px 0;text-shadow:0 1px 2px #0000004d}.activity-date-added{border-top:1px solid #e9ecef;color:#adb5bd;font-size:12px;margin-top:15px;padding-top:15px}.activity-website a{color:#8b3fd9;text-decoration:none}.activity-website a:hover{text-decoration:underline}.empty-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px}.empty-state h3{color:#2c3e50;font-size:20px;margin:0 0 10px}.empty-state p{color:#6c757d;font-size:16px;margin:0 0 30px}.add-first-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s}.add-first-btn:hover{background:#1e7e34}.loading{font-size:16px}.modal input,.modal select,.modal textarea,input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{font-size:16px!important}.modal-overlay{-webkit-overflow-scrolling:touch;box-sizing:border-box;overflow-y:auto}.modal{margin:auto;max-height:100%;max-width:100%}.activity-modal{max-height:90vh;max-width:600px;width:95vw}.activity-modal,.modal-form{display:flex;flex-direction:column}.modal-form{flex:1 1;gap:15px;margin:20px 0;min-height:0;overflow-y:auto}.modal-textarea{border:1px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:16px;min-height:80px;padding:12px;resize:vertical}.modal-textarea:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.date-row,.number-row,.time-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.time-field{display:flex;flex-direction:column;gap:5px}.time-field label{color:#495057;font-size:12px;margin-bottom:2px}.week-calendar-container{border:1px solid #667eea1a;border-radius:20px;box-shadow:0 8px 30px #0000001a;margin-bottom:32px;padding:32px}.calendar-nav{margin-bottom:24px;padding-bottom:16px}.nav-btn{background:linear-gradient(135deg,#8b3fd9,#764ba2);box-shadow:0 4px 15px #667eea4d;font-size:18px;height:45px;transition:all .2s;width:45px}.nav-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.week-range{color:#2d3748;flex:1 1;font-size:24px;font-weight:700;letter-spacing:-.3px;margin:0;text-align:center}.week-calendar-grid{display:flex;flex-direction:column}.week-headers{grid-gap:1px;background:#e9ecef;border-radius:8px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);grid-template-columns:repeat(var(--days-count,7),1fr);margin-bottom:12px;overflow:hidden}.week-calendar-container[data-view="5day"] .week-headers{--days-count:5}.week-header{background:#f8f9fa;padding:12px 8px;text-align:center}.day-name{color:#6c757d;font-size:14px;font-weight:600;margin-bottom:4px}.date-number{color:#2c3e50;font-size:18px;font-weight:700}.date-number.today{align-items:center;background:#f3e8ff;border-radius:50%;color:#8b3fd9;display:flex;height:32px;justify-content:center;margin:0 auto;width:32px}.week-days{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr);grid-template-columns:repeat(var(--days-count,7),1fr);min-height:400px}.week-calendar-container[data-view="5day"] .week-days{--days-count:5}.week-calendar-container[data-view="7day"] .activity-time{font-size:8px;padding:1px 4px}.week-calendar-container[data-view="7day"] .activity-name{font-size:11px;line-height:1.1}.week-day{background:#f8f9fa;border-radius:8px;min-height:350px;padding:12px;position:relative;transition:all .2s}.week-day.today{background:#f3e8ff;border:2px solid #8b3fd9}.week-day.has-activities{background:#fff;border:1px solid #dee2e6}.day-activities{gap:8px;height:100%}.activity-block{border-radius:12px;box-shadow:0 4px 15px #0003;color:#fff!important;cursor:pointer;display:flex;flex-direction:column;height:auto;margin-bottom:6px;min-height:fit-content;overflow:hidden;transition:all .2s}.activity-content{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:10px 12px}.activity-footer{align-items:center;background:#0003;border-top:1px solid #ffffff1a;display:flex;justify-content:center;padding:6px 12px}.notification-icon{opacity:.9}.activity-block:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.activity-time{align-self:flex-start;background:#0009;border-radius:4px;display:inline-block;font-size:9px;font-weight:600;max-width:100%;padding:2px 6px;text-shadow:0 1px 3px #000c}.activity-name,.activity-time{word-wrap:break-word;color:#fff!important;overflow-wrap:break-word}.activity-name{flex-grow:1;font-size:14px;font-weight:700;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;text-shadow:0 1px 4px #000000e6}.activity-location{word-wrap:break-word;color:#fff!important;font-size:10px;font-weight:500;line-height:1.2;overflow-wrap:break-word;text-shadow:0 1px 3px #000c}.no-activities{align-items:center;color:#adb5bd;display:flex;font-size:12px;height:100%;justify-content:center}.activity-detail-modal{display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:95vw}.activity-detail-content{flex:1 1;margin:20px 0;min-height:0;overflow-y:auto;padding-right:8px}.detail-item a{color:#8b3fd9}.delete-btn{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);box-shadow:0 4px 15px #ff6b6b4d;font-size:16px;font-weight:600;transition:all .2s}.delete-btn:hover{box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-2px)}.activity-duplicate-modal{display:flex;flex-direction:column;max-height:85vh;max-width:500px;width:95vw}.duplicate-content{flex:1 1;margin:20px 0;min-height:0;overflow-y:auto}.duplicate-content p{color:#4a5568;margin-bottom:16px}.input-group{margin-bottom:16px}.input-group label{color:#2d3748;display:block;font-weight:600;margin-bottom:4px}.activity-preview{background:#f7fafc;border-left:4px solid #8b3fd9;border-radius:8px;margin-top:16px;padding:16px}.activity-preview strong{color:#2d3748;display:block;margin-bottom:8px}.activity-preview p{color:#4a5568;font-size:14px;margin:4px 0}.add-activity-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 30px #0000001a;margin:32px 0;padding:24px;text-align:center}.add-activity-section .add-btn{font-size:18px;font-weight:600;min-width:200px;padding:16px 32px}.color-legend{border-radius:16px;box-shadow:0 4px 20px #0000001a;margin:24px 0;padding:20px}.color-legend h4{font-size:16px;margin:0 0 16px}.legend-items{gap:12px;justify-content:space-around}.legend-item{font-size:12px}.legend-color{border:1px solid #0000001a;border-radius:4px;height:16px;width:16px}.week-activities-list{margin-top:32px}.week-activities-list h3{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 30px #0000001a;color:#2d3748;font-size:24px;font-weight:700;margin:0 0 24px;padding:20px;text-align:center}.connected-families-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.family-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:12px}.family-info{display:flex;flex-direction:column;gap:4px}.family-email{color:#718096;font-size:12px}.child-item{color:#4a5568;font-size:11px;margin-left:8px}@media (max-width:768px){.child-activity-screen{padding:10px}.activity-header{flex-direction:column;gap:15px;text-align:center}.activities-grid{gap:16px}.activities-grid,.date-row,.number-row,.time-row{grid-template-columns:1fr}.header-actions{justify-content:space-between}.day{min-height:80px;padding:4px}.mini-activity{font-size:9px;padding:1px 3px}.activity-time-short{font-size:8px}}.date-selection-section,.privacy-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:16px}.section-label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.section-description{color:#666;font-size:14px;line-height:1.4;margin-bottom:16px}.date-options,.privacy-options{display:flex;gap:20px;margin-bottom:16px}.radio-option{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;gap:8px}.radio-option input[type=radio]{cursor:pointer;margin:0}.multi-date-section{margin-top:16px}.selected-dates{margin-bottom:12px}.selected-dates label{color:#333;display:block;font-weight:500;margin-bottom:8px}.date-tag{background:#8b3fd9;border-radius:16px;display:inline-flex;font-size:13px;gap:8px;margin:2px 4px;padding:4px 12px}.date-tag,.remove-date-btn{align-items:center;color:#fff}.remove-date-btn{background:none;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:16px;height:18px;justify-content:center;line-height:1;padding:0;width:18px}.remove-date-btn:hover{background:#fff3}.connected-children-section{border-top:1px solid #dee2e6;margin-top:16px;padding-top:16px}.children-selection-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.children-selection-header label{color:#333;font-weight:500;margin:0}.selection-controls{display:flex;gap:8px}.select-all-btn{background:linear-gradient(135deg,#8b3fd9,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;min-width:80px;padding:6px 12px;transition:all .2s ease}.select-all-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 2px 8px #667eea4d;transform:translateY(-1px)}.auto-notify-section{border-top:1px solid #e9ecef;margin-top:16px;padding-top:16px}.auto-notify-checkbox{align-items:flex-start;color:#495057;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:8px}.auto-notify-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;margin:2px 0 0}.auto-notify-description{color:#6c757d;font-size:12px;font-style:italic;line-height:1.4;margin:0;padding-left:24px}.no-connections{color:#6c757d;font-style:italic;margin:8px 0}.children-list{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;flex-direction:column;gap:4px;max-height:none;padding:4px}.child-checkbox{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:6px 8px;transition:background-color .2s}.child-checkbox:hover{background:#f8f9fa}.child-checkbox input[type=checkbox]{cursor:pointer;margin:0}.host-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin:8px 0;padding:12px}.participants-list .host-info{border-color:#38b2ac}.declined-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin:8px 0;padding:12px}.uninvited-children-section{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:20px}.uninvited-children-list{margin-top:12px}.uninvited-child-item{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px;padding:12px}.uninvited-child-item:hover{background:#edf2f7}.child-name{font-weight:500}.parent-name{color:#4a5568;font-style:italic}.invite-child-btn{background:linear-gradient(135deg,#8b3fd9,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;min-height:32px;min-width:60px;padding:6px 12px;transition:all .2s ease}.invite-child-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.activity-details-form{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin:16px 0;padding:20px}.form-row{display:flex;flex-direction:column;margin-bottom:16px}.form-row-group{grid-gap:16px;display:grid;grid-template-columns:1fr 1fr;margin-bottom:16px}.form-row label{color:#495057;font-size:14px;font-weight:600}.inline-edit-input{background:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.inline-edit-input[type=date]{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #8b3fd9;color:#2d3748;cursor:pointer;font-weight:500}.inline-edit-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.inline-edit-input[type=date]:focus{background:linear-gradient(135deg,#fff,#f7fafc);border-color:#4c51bf;box-shadow:0 0 0 3px #667eea33}.inline-edit-textarea{background:#fff;border:2px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.inline-edit-textarea:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.readonly-value{color:#495057;font-size:14px;min-height:20px;padding:10px 0}.readonly-value a{color:#8b3fd9;text-decoration:none}.readonly-value a:hover{text-decoration:underline}.modal-actions{border-top:1px solid #e9ecef;flex-shrink:0;margin-top:auto;padding:20px 0 0}@media (max-width:1024px) and (min-width:769px){.activities-grid{gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.week-calendar-container{padding:20px}}@media (max-width:768px){.form-row-group{gap:12px;grid-template-columns:1fr}.activity-detail-modal,.activity-duplicate-modal,.activity-modal{margin:10px;max-height:calc(100vh - 20px);max-width:none;width:95vw}.activities-grid{gap:16px;grid-template-columns:1fr}.modal-actions{flex-direction:column;gap:8px}.modal-actions button{width:100%}.inline-edit-input,.inline-edit-textarea,.modal-actions button{font-size:16px;padding:12px}.week-calendar-container{margin-bottom:16px;padding:16px}.week-day{min-height:200px}.activity-content,.week-day{padding:8px}.activity-footer{padding:4px 8px}.activity-block{margin-bottom:4px}.activity-name{font-size:12px}.activity-time{font-size:10px}}.page-form{gap:20px}.page-actions{border-top:1px solid #e9ecef;margin-top:20px}@media (max-width:768px){.page-content{background:#fff!important;border-radius:0!important;box-shadow:none!important;margin:0!important;max-width:none!important;padding:12px!important;width:100%!important}.page-actions{flex-direction:column;gap:8px}.page-actions button{font-size:16px;padding:12px;width:100%}.child-activity-screen{background:#fff!important;margin:0!important;max-width:100%!important;padding:0!important}.activity-header{background:#fff;border-bottom:1px solid #e5e7eb;border-radius:0;box-shadow:none;margin:0;padding:12px}.activity-header h2{font-size:18px;margin:0}.activity-header p{color:#6b7280;font-size:14px;margin:0}.page-form{gap:16px}.modal-input,.modal-textarea{font-size:16px}.time-row{flex-direction:column;gap:12px}.time-field{width:100%}.form-row-group,.number-row{flex-direction:column;gap:12px}.activity-detail-content,.activity-details-form{width:100%}.participants-section{margin-top:16px;width:100%}.uninvited-children-section{width:100%}}@media (max-width:480px){.modal-overlay{align-items:flex-start;padding:20px 10px 10px}.activity-detail-modal,.activity-duplicate-modal,.activity-modal{border-radius:0;margin:0;max-height:calc(100vh - 20px);max-width:100vw;min-height:300px;width:100vw}.modal h3{font-size:18px;margin-bottom:15px;text-align:left}.form-row label{font-size:13px;margin-bottom:6px}.inline-edit-input,.inline-edit-textarea,.modal-input{border-radius:8px;font-size:16px;padding:14px}.children-list{max-height:none;padding:4px}.child-checkbox{font-size:14px;padding:12px 8px}.recurring-options{padding:16px}@media (max-width:480px){.recurring-options>div:first-of-type{gap:20px!important}.recurring-options>div:first-of-type>div{margin-bottom:20px}}.modal-actions{gap:10px;padding-top:15px}.modal-actions button{border-radius:8px;font-size:16px;padding:14px}.week-calendar-container{border-radius:0;box-shadow:none;margin:0;padding:8px}.week-days{gap:2px;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-columns:repeat(var(--days-count,7),minmax(0,1fr));overflow:hidden}.week-day{min-height:120px;min-width:0;overflow:hidden;padding:4px}.activity-content{gap:2px;padding:6px 8px}.activity-footer{padding:3px 8px}.activity-block{border-radius:6px;margin-bottom:4px}.activity-name{color:#fff!important;font-size:12px;font-weight:700;line-height:1.2;text-shadow:0 1px 3px #000000e6}.activity-time{background:#0009;font-size:8px;padding:1px 3px}.activity-location,.activity-time{color:#fff!important;text-shadow:0 1px 3px #000c}.activity-location{font-size:9px;line-height:1.1}.day-header{padding:2px 4px;word-break:break-word}.day-header,.week-header{font-size:12px;text-align:center}.week-header{padding:4px 2px}.color-legend{margin:0}.add-activity-section,.color-legend{background:#fff;border-bottom:1px solid #e5e7eb;padding:12px}.week-activities-list{background:#fff;padding:12px}}.page-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:20px auto 0;max-width:800px;padding:20px}.page-form{display:flex;flex-direction:column;gap:16px}.page-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.time-row{display:flex;gap:16px}.time-field{flex:1 1}.time-field label{color:#374151;display:block;font-weight:500;margin-bottom:8px}.number-row{display:flex;gap:16px}.number-row input{flex:1 1}.form-row-group{display:flex;gap:16px}.form-row{flex:1 1}.form-row label{color:#374151;display:block;font-weight:500;margin-bottom:8px}.readonly-value{color:#4a5568;line-height:1.5}.inline-edit-input,.inline-edit-textarea{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.inline-edit-textarea{min-height:60px;resize:vertical}.club-split-input{position:relative;width:100%}.split-input-container{align-items:stretch;display:flex;gap:8px}.split-text-input{flex:1 1;min-width:0}.browse-clubs-btn{align-items:center;background:linear-gradient(135deg,#8b3fd9,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;height:40px;justify-content:center;min-width:80px;padding:0 12px;transition:all .2s ease;white-space:nowrap}.browse-clubs-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 4px 12px #8b3fd94d;transform:translateY(-1px)}.browse-clubs-btn:active{transform:translateY(0)}.activity-name-template-row{align-items:flex-start;display:flex;gap:12px;margin-bottom:16px}.activity-name-input-wrapper{flex:1 1}.template-select-wrapper{width:200px}@media (max-width:768px){.activity-name-template-row{flex-direction:column;gap:16px}.template-select-wrapper{width:100%}}.calendar-screen{margin:0 auto;max-width:1000px}.calendar-header{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;margin-bottom:16px;padding:12px 16px}.calendar-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px;width:100%}.calendar-header h2{color:#000;font-size:24px;font-weight:700;letter-spacing:-.5px;margin:0}.calendar-options{align-items:center;display:flex;gap:24px}.filter-controls-group{align-items:center;display:flex;gap:8px}.activity-type-filter{background:#f8f9fa;border-radius:8px;padding:8px;width:100%}.activity-type-filter h4{color:#333;font-size:12px;font-weight:600;margin:0 0 6px}.filter-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.filter-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:6px;padding:6px 8px;transition:all .2s}.filter-item:hover{background:#f7fafc;transform:translateY(-1px)}.filter-color{border-radius:4px;flex-shrink:0;height:16px;width:16px}.filter-item span{color:#4a5568;font-size:12px;font-weight:500}.invited-toggle{align-items:center;color:#000;display:flex;font-size:14px;font-weight:500;gap:8px}.invited-toggle input[type=checkbox]{margin:0}.pending-toggle{align-items:center;color:#000;display:flex;font-size:14px;font-weight:500;gap:8px}.pending-toggle input[type=checkbox]{margin:0}.activity-title-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.activity-type{background:#0000000d;border-radius:12px;font-size:12px;font-weight:600;padding:2px 8px;white-space:nowrap}.invitation-message{background:#fd7e141a;border-left:3px solid #fd7e14;border-radius:8px;color:#666;font-size:14px;font-style:italic;margin-top:8px;padding:8px 12px}.connected-toggle{align-items:center;color:#000;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px}.connected-toggle input[type=checkbox]{appearance:none;background:#ffffff1a;border:2px solid #ffffffb3;border-radius:4px;cursor:pointer;height:18px;position:relative;transition:all .2s;width:18px}.connected-toggle input[type=checkbox]:checked{background:#ffffffe6;border-color:#ffffffe6}.connected-toggle input[type=checkbox]:checked:after{color:#8b3fd9;content:"✓";font-size:12px;font-weight:700;left:2px;position:absolute;top:-2px}.calendar-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;overflow:hidden;position:relative;z-index:1}.calendar-nav{background:#f8f9fa;border-bottom:1px solid #e9ecef;justify-content:space-between;padding:20px}.calendar-nav,.nav-btn{align-items:center;display:flex}.nav-btn{background:#6c757d;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;font-weight:700;height:44px;justify-content:center;transition:background-color .2s;width:44px}.nav-btn:hover{background:#495057}.month-year{color:#343a40;font-size:24px;font-weight:700;margin:0}.calendar-grid{padding:20px}.weekdays{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:1px}.weekday{background:#f8f9fa;color:#6c757d;font-size:14px;font-weight:600;padding:12px;text-align:center}.days{grid-gap:1px;background:#e9ecef;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.day{align-items:stretch;background:#fff;cursor:pointer;display:flex;flex-direction:column;min-height:80px;padding:0;position:relative;transition:all .2s}.day.other-month,.day:hover{background:#f8f9fa}.day.other-month{color:#adb5bd}.day.today{background:#f3e8ff;color:#8b3fd9;font-weight:700}.day.selected{background:#8b3fd9;color:#000}.day.has-activities{border-left:4px solid #28a745}.day-number{background:#00000005;border-bottom:1px solid #e9ecef;flex-shrink:0;font-size:16px;font-weight:600;padding:6px 4px;text-align:center}.day-indicators{align-content:flex-start;align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:6px;justify-content:center;padding:8px}.notification-icon{font-size:16px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.activity-count{align-items:center;border-radius:50%;box-shadow:0 1px 3px #0003;display:flex;font-size:11px;font-weight:700;height:18px;justify-content:center;width:18px}.day.has-content{border-radius:4px;transition:all .3s ease}.day.has-content:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.selected-date-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.selected-date-section h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 20px}.activities-list{display:flex;flex-direction:column;gap:16px}.activity-card{background:#f8f9fa;border-left:4px solid #8b3fd9;border-radius:8px;min-height:80px;padding:16px}.activity-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.activity-name{color:#343a40;font-size:16px;font-weight:600;margin:0}.activity-time{color:#8b3fd9;font-size:14px;font-weight:500}.activity-description{color:#495057;font-size:14px;line-height:1.4;margin:0 0 8px}.activity-location{color:#6c757d;font-size:13px;margin-bottom:4px}.activity-cost{color:#28a745;font-size:13px;font-weight:600;margin-bottom:4px}.activity-url{font-size:12px}.activity-url a{color:#8b3fd9;font-weight:500;text-decoration:none}.activity-url a:hover{color:#0056b3;text-decoration:underline}.no-activities{padding:40px 20px;text-align:center}.no-activities p{color:#6c757d;font-size:16px;margin-bottom:20px}.add-activity-btn{background:#8b3fd9;border:none;border-radius:8px;color:#000;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:background-color .2s}.add-activity-btn:hover:not(:disabled){background:#0056b3}.add-activity-btn:disabled{background:#adb5bd;cursor:not-allowed}.instructions{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:40px 20px;text-align:center}.instructions p{color:#6c757d;font-size:16px;margin:0}.loading-overlay{align-items:center;background:#ffffffe6;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:100}.activity-time-location{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:4px}.activity-location-main{color:#666;font-size:14px;font-weight:500}.who-is-going{border-left:2px solid #0000001a}.activity-extra-details>div{font-size:13px;margin:4px 0}.activity-action-button:hover{box-shadow:0 2px 8px #00000026}.clickable-card{border:2px solid #0000;position:relative}.clickable-card:hover{border-color:#007bff4d;box-shadow:0 6px 16px #00000026}.click-to-view-hint{transition:all .2s ease}.clickable-card:hover .click-to-view-hint{font-weight:900;transform:scale(1.02)}@media (max-width:768px){.calendar-screen{margin:0;max-width:100%;padding:0}.calendar-header{background:#fff;border-bottom:1px solid #e5e7eb;border-radius:0;box-shadow:none;margin-bottom:8px;padding:8px}.calendar-title-row{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:6px}.calendar-header h2{color:#1f2937;font-size:16px}.filter-controls-group{display:flex;flex-direction:column;gap:8px;width:100%}.view-toggle{flex-shrink:0;justify-content:center;width:100%}.view-toggle .view-btn{flex:1 1;font-size:12px;padding:8px 12px}.filter-controls-group select{font-size:12px;width:100%}.activity-type-filter{padding:6px}.activity-type-filter h4{font-size:11px;margin-bottom:4px}.filter-grid{gap:4px}.filter-item{padding:4px 6px}.filter-color{height:14px;width:14px}.filter-item span{font-size:10px}.calendar-container{border-radius:0;margin-bottom:0}.calendar-nav{padding:12px}.month-year,.nav-btn{font-size:18px}.nav-btn{height:44px;width:44px}.calendar-grid{padding:8px}.day{height:auto;min-height:60px;padding:0}.day-number{font-size:12px;font-weight:700;padding:3px 2px}.day-indicators{gap:3px;padding:3px 2px}.activity-indicator{font-size:7px!important;font-size:8px;height:14px!important;height:16px;width:14px!important;width:16px}.weekday{font-size:12px;padding:6px}.activity-header{align-items:flex-start;flex-direction:column;gap:4px}.selected-date-section{margin-bottom:0}.instructions,.selected-date-section{border-radius:0;padding:12px}.invitation-info{border-radius:4px;margin-bottom:16px;padding:12px}.detail-item{margin-bottom:12px}}.modal{border-radius:12px;box-shadow:0 10px 40px #0003}.activity-detail-modal{padding:24px}.activity-detail-modal h3{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 20px}.activity-detail-content{margin-bottom:24px}.invitation-info{background:#e6fffa;border:1px solid #38b2ac;border-radius:8px;margin-bottom:20px;padding:16px}.detail-item{margin-bottom:16px}.detail-item strong{color:#2d3748;display:block;font-weight:600;margin-bottom:4px}.detail-item p{color:#4a5568;line-height:1.5;margin:0}.detail-item a{color:#3182ce;text-decoration:none}.detail-item a:hover{text-decoration:underline}.modal-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;padding-top:20px}.modal-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.cancel-btn{background:#e2e8f0;color:#4a5568}.cancel-btn:hover{background:#cbd5e0}.confirm-btn{background:#3182ce;color:#000}.confirm-btn:hover{background:#2c5282}.delete-btn{background:#e53e3e;border-radius:8px;color:#000;min-width:120px;padding:12px 20px}.delete-btn:hover{background:#c53030}.clickable-card{cursor:pointer;transition:all .2s ease}.clickable-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.participants-section{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:20px}.participants-list{margin-top:12px}.participants-list .host-info{background:#e6fffa;border:1px solid #38b2ac;border-radius:6px;margin-bottom:16px;padding:12px}.participants-list .host-info p{color:#2d3748;margin:0}.invited-participants h4{color:#2d3748;font-size:14px;font-weight:600;margin:16px 0 12px}.participant-item{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px;padding:12px}.participant-info{align-items:center;display:flex;gap:4px}.participant-name{color:#2d3748;font-weight:500}.participant-child{color:#4a5568;font-style:italic}.participant-status{align-items:center;display:flex;font-weight:500}.view-toggle{background:#ffffff1a;border-radius:8px;display:flex;gap:4px;justify-content:center;margin:16px auto;padding:4px;width:fit-content}.view-btn{background:#e5e7eb!important;color:#6b7280!important;font-weight:500;transition:all .2s ease}.view-btn:hover{background:#d1d5db!important}.view-btn.active{background:#8b3fd9!important;box-shadow:0 1px 3px #0000001a;color:#fff!important;font-weight:600}.days.week-view{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.days.week-view .day{align-items:flex-start;display:flex;flex-direction:column;height:120px;justify-content:flex-start;padding:8px}.days.week-view .day-number{font-size:18px;font-weight:600;margin-bottom:4px}.days.week-view .day-indicators{display:flex;flex-direction:column;gap:4px;width:100%}.days.week-view .activity-count{align-self:flex-start;border-radius:4px;font-size:12px;padding:2px 6px}@media (max-width:768px){.view-toggle{margin:8px}.view-btn{font-size:12px;padding:6px 12px}.days.week-view .day{height:80px;padding:4px}.days.week-view .day-number{font-size:14px}}.activity-indicators,.multi-child-indicators{align-items:center;display:flex;flex-direction:column}.multi-child-indicators{gap:1px}.child-indicator{align-items:center;border-radius:2px;display:flex;font-size:10px;font-weight:700;height:14px;justify-content:center;min-width:16px;text-align:center}.activity-meta-row{align-items:center;display:flex;justify-content:space-between;margin-top:4px}.child-name-badge{display:inline-block;white-space:nowrap}.color-key-section{border-top:1px solid #0000001a;margin-top:12px;padding-top:12px}.color-key-items{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.color-key-item{align-items:center;display:flex;gap:6px}.filter-dropdown{display:flex;flex-direction:column;gap:4px}.filter-dropdown label{color:#333;font-size:12px;font-weight:600;margin:0}.multi-select{background:#fff;border:2px solid #ddd;border-radius:8px;color:#333;cursor:pointer;font-size:13px;max-height:120px;min-width:160px;padding:6px 8px;transition:all .2s ease}.multi-select:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.multi-select option{cursor:pointer;font-size:13px;padding:4px 8px}.multi-select option:checked{background:#8b3fd9;color:#fff}.multi-select option:hover{background:#f8f9fa}.single-select{background:#fff;border:2px solid #ddd;border-radius:8px;color:#333;cursor:pointer;font-size:14px;font-weight:500;max-width:180px;min-width:120px;padding:8px 12px;transition:all .2s ease}.single-select:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.single-select option{font-size:14px;font-weight:500;padding:8px 12px}.week-calendar-grid{grid-gap:2px;background:#e9ecef;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);min-height:400px;width:100%}.week-calendar-day{background:#fff;border-radius:4px;display:flex;flex-direction:column;height:auto;min-height:150px;padding:8px;position:relative;transition:all .2s ease}.week-calendar-day:hover{background:#f8f9fa;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.week-calendar-day.selected,.week-calendar-day.today{background:#f3e8ff;border:2px solid #8b3fd9}.week-calendar-day.selected .week-day-name,.week-calendar-day.selected .week-day-number{color:#8b3fd9}.week-calendar-day.has-activities{background:#fdfdfd}.week-day-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;flex-direction:column;margin-bottom:8px;padding-bottom:6px}.week-day-number{color:#2d3748;font-size:20px;font-weight:700;line-height:1;margin-bottom:2px}.week-day-name{color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.week-calendar-day.today .week-day-name,.week-calendar-day.today .week-day-number{color:#8b3fd9}.notification-indicator{position:absolute;right:6px;top:6px;z-index:1}.notification-icon{animation:pulse 2s infinite;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));font-size:14px}.day-activities{display:flex;flex:1 1;flex-direction:column;gap:3px}.week-calendar-grid .activity-block{border-radius:12px;box-shadow:0 4px 15px #0003;color:#fff!important;cursor:pointer;display:flex;flex-direction:column;height:auto;margin-bottom:6px;min-height:fit-content;overflow:hidden;transition:all .2s}.week-calendar-grid .activity-block:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.week-calendar-grid .activity-content{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:10px 12px}.week-calendar-grid .activity-time{align-self:flex-start;background:#0009;border-radius:4px;display:inline-block;font-size:9px;font-weight:600;padding:2px 6px;text-shadow:0 1px 3px #000c}.week-calendar-grid .activity-name,.week-calendar-grid .activity-time{word-wrap:break-word;color:#fff!important;max-width:100%;overflow-wrap:break-word}.week-calendar-grid .activity-name{font-size:12px;font-weight:700;line-height:1.2;text-shadow:0 1px 3px #000000e6}.week-calendar-grid .activity-location{color:#fff!important;font-size:10px;opacity:.9;text-shadow:0 1px 2px #000000b3}.week-calendar-grid .activity-footer{align-items:center;background:#0000004d;display:flex;gap:6px;justify-content:flex-end;padding:4px 8px}.week-calendar-grid .notification-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));font-size:14px}@media (max-width:768px){.week-calendar-grid{gap:1px}.week-calendar-day{min-height:120px;padding:6px}.week-day-header{margin-bottom:6px;padding-bottom:4px}.week-day-number{font-size:16px}.week-day-name{font-size:10px}.week-day-activities{gap:2px;max-height:80px}.week-activity-block{font-size:9px;min-height:35px;padding:4px 6px}.child-initials{font-size:8px;height:14px;width:14px}.activity-name{font-size:9px}.activity-time{font-size:8px}.activity-location{font-size:7px}}.color-legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:20px 0;padding:15px}.color-legend h4{color:#2d3748;font-size:14px;font-weight:600;margin:0 0 12px;text-align:center}.legend-items{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.legend-item{align-items:center;color:#4a5568;display:flex;font-size:13px;font-weight:500;gap:8px}.legend-color{border-radius:6px;box-shadow:0 2px 4px #0003;flex-shrink:0;height:20px;width:20px}.week-calendar-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;overflow:hidden}@media (max-width:768px){.week-calendar-container{overflow-x:visible;overflow-y:visible}.week-calendar-grid{gap:1px;width:100%}.week-calendar-day{min-height:100px;overflow:hidden;padding:4px}.week-calendar-grid .activity-block{word-wrap:break-word;margin-bottom:4px;min-height:auto;overflow-wrap:break-word;padding:0;width:100%}.week-calendar-grid .activity-content{gap:2px;padding:6px 4px}.week-calendar-grid .activity-name{font-size:10px;hyphens:none;-webkit-hyphens:none;-ms-hyphens:none;line-height:1.3;max-width:100%;overflow-wrap:break-word;white-space:normal;width:100%;word-break:normal}.week-calendar-grid .activity-time{font-size:8px;max-width:100%;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.week-calendar-grid .child-initials-badge{font-size:8px;height:18px;right:4px;top:4px;width:18px}.legend-items{align-items:flex-start;flex-direction:column;gap:12px}.legend-item{font-size:12px}.legend-color{height:16px;width:16px}}.socs-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.socs-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}.socs-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.socs-modal-header h2{color:#333;font-size:20px;margin:0}.socs-modal-close{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;width:30px}.socs-modal-close:hover{color:#333}.socs-modal-content{flex:1 1;overflow-y:auto;padding:20px}.socs-modal-footer{border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;padding:20px}.socs-steps{display:flex;gap:10px;justify-content:center;margin-bottom:30px}.socs-step{background:#f0f0f0;border-radius:4px;color:#666;font-size:14px;font-weight:500;padding:8px 16px}.socs-step.active{background:#8b3fd9;color:#fff}.socs-step.completed{background:#28a745;color:#fff}.socs-error{background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;font-family:monospace;font-size:13px;line-height:1.6;margin-bottom:20px;padding:12px;white-space:pre-wrap}.socs-step-content{min-height:200px}.socs-step-content p{color:#666;margin-bottom:15px}.socs-hint{color:#999;font-size:14px;font-style:italic}.socs-child-input{margin-bottom:20px}.socs-child-input label{color:#333;display:block;font-weight:600;margin-bottom:8px}.socs-child-input input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;width:100%}.socs-child-input input:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.socs-child-section{border-bottom:1px solid #e0e0e0;margin-bottom:30px;padding-bottom:20px}.socs-child-section:last-child{border-bottom:none}.socs-child-section h3{border-radius:4px;color:#333;font-size:18px;margin:0 0 15px;padding:8px;transition:background-color .2s}.socs-child-section h3:hover{background-color:#f0f0f0}.socs-child-section h4{border-radius:4px;color:#666;font-size:16px;margin:15px 0 10px;padding:6px;transition:background-color .2s}.socs-child-section h4:hover{background-color:#f5f5f5}.socs-options{display:flex;flex-direction:column;gap:10px}.socs-checkbox-label{align-items:center;background:#f9f9f9;border-radius:4px;cursor:pointer;display:flex;gap:10px;padding:10px;transition:background .2s}.socs-checkbox-label:hover{background:#f0f0f0}.socs-checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.socs-sport-teams{border-radius:6px;margin-bottom:20px;padding:15px;transition:background .2s}.socs-sport-even{background:#fff}.socs-sport-odd{background:#f5f5f5}.socs-teams-grouped{margin-top:10px}.socs-team-gender-group{margin-bottom:15px}.socs-team-gender-group:last-child{margin-bottom:0}.socs-team-gender-group h5{border-radius:4px;color:#8b3fd9;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 10px;padding:4px;text-transform:uppercase;transition:background-color .2s}.socs-team-gender-group h5:hover{background-color:#f9f0ff}.socs-results{margin:20px 0}.socs-result-item{background:#f9f9f9;border-radius:4px;margin-bottom:10px;padding:15px}.socs-result-item strong{color:#333;display:block;margin-bottom:5px}.socs-result-item p{color:#666;font-size:14px;margin:0}.socs-success-message{background:#e8f5e9;border:1px solid #c8e6c9;border-radius:4px;color:#2e7d32;margin-top:20px;padding:15px}.socs-btn{border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:600;padding:10px 20px;transition:all .2s}.socs-btn:disabled{cursor:not-allowed;opacity:.5}.socs-btn-primary{background:#8b3fd9;color:#fff}.socs-btn-primary:hover:not(:disabled){background:#7a35c0}.socs-btn-secondary{background:#f0f0f0;color:#333}.socs-btn-secondary:hover:not(:disabled){background:#e0e0e0}@media (max-width:768px){.socs-modal{margin:10px;max-height:95vh;max-width:100%;width:95%}.socs-modal-header{padding:12px 15px}.socs-modal-header h2{font-size:16px}.socs-modal-content{padding:15px}.socs-modal-footer{flex-wrap:wrap;padding:12px 15px}.socs-steps{flex-wrap:wrap;gap:6px;margin-bottom:20px}.socs-step{font-size:11px;padding:5px 10px}.socs-child-section{margin-bottom:20px;padding-bottom:15px}.socs-child-section h3{font-size:16px}.socs-btn,.socs-child-section h4{font-size:14px}.socs-btn{flex:1 1;min-width:120px;padding:10px 16px}.socs-checkbox-label,.socs-child-input input{font-size:14px;padding:8px}.socs-sport-teams{padding:12px}.socs-step-content{min-height:150px}}.profile-screen{margin:0 auto;max-width:600px}.modal-header{border-bottom:1px solid #e1e5e9;margin-bottom:20px;padding-bottom:15px}.modal-header h3{color:#2d3748;margin:0}.modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#718096;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.modal-close-btn:hover{background-color:#f7fafc;color:#2d3748}.modal-close-btn:focus{box-shadow:0 0 0 3px #8b3fd91a;outline:none}.profile-header{border-bottom:2px solid #e9ecef;margin-bottom:24px;padding-bottom:16px}.profile-header h2{color:#333;font-size:28px;font-weight:700;margin:0}.loading{color:#6c757d;font-size:18px;padding:40px;text-align:center}.profile-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.profile-avatar{border-bottom:1px solid #e9ecef;gap:16px;margin-bottom:24px;padding-bottom:20px}.avatar-circle,.profile-avatar{align-items:center;display:flex}.avatar-circle{background:#8b3fd9;border-radius:50%;color:#fff;font-size:32px;font-weight:700;height:80px;justify-content:center;width:80px}.profile-details h3{color:#343a40;font-size:24px;font-weight:700;margin:0 0 4px}.profile-details p{color:#6c757d;font-size:14px;margin:0}.info-sections{margin-bottom:24px}.info-section{margin-bottom:16px}.info-section:last-child{margin-bottom:0}.info-section label{color:#6c757d;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.info-value{color:#343a40;font-size:16px}.role-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:700;padding:4px 8px;text-transform:uppercase}.role-badge.user{background:#d1ecf1;color:#0c5460}.role-badge.admin{background:#fff3cd;color:#856404}.role-badge.super_admin{background:#f8d7da;color:#721c24}.edit-btn{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:background-color .2s;width:100%}.edit-btn:hover{background:#0056b3}.child-actions{align-items:center;display:flex;flex-shrink:0;gap:12px;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.child-actions .delete-btn,.child-actions .edit-btn{background:none!important;border:none!important;border-radius:4px!important;box-shadow:none!important;color:#000!important;cursor:pointer;font-size:14px!important;font-weight:500!important;min-width:auto;padding:6px 12px!important;text-align:center;text-decoration:none!important;transform:none!important;transition:background-color .2s!important;white-space:nowrap;width:auto!important}.child-actions .delete-btn:hover,.child-actions .edit-btn:hover{background:#0000000d!important;box-shadow:none!important;color:#000!important;transform:none!important}.edit-form h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 24px;text-align:center}.form-group{margin-bottom:6px}.form-group label{color:#343a40;font-size:12px;margin-bottom:3px}.form-input{border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:7px}.form-input[type=date]{-webkit-appearance:none;-moz-appearance:textfield;box-sizing:border-box;flex-shrink:1;max-width:200px;min-width:150px;padding:7px 10px;width:auto}.form-input:focus{box-shadow:0 0 0 2px #007bff40}.address-section{border-top:1px solid #e9ecef;margin-top:24px;padding-top:20px}.address-section h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 16px}.address-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr}.address-info{border-top:1px solid #e9ecef;margin-top:20px;padding-top:20px}.address-info h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 16px}@media (max-width:768px){.address-row{gap:16px;grid-template-columns:1fr}}.form-actions{display:flex;gap:12px;margin-top:24px}.cancel-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px;transition:background-color .2s}.cancel-btn:hover{background:#545b62}.save-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px;transition:background-color .2s}.save-btn:hover:not(.disabled){background:#1e7e34}.save-btn.disabled{background:#adb5bd;cursor:not-allowed}.actions-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;overflow:hidden}.action-item{align-items:center;background:none;border:none;border-bottom:1px solid #e9ecef;color:#343a40;cursor:pointer;display:flex;font-size:16px;justify-content:space-between;padding:16px 20px;text-align:left;transition:background-color .2s;width:100%}.action-item:hover{background:#f8f9fa}.action-item:last-child{border-bottom:none}.logout-action{color:#dc3545}.arrow{color:#6c757d;font-size:16px}.app-info{padding:20px;text-align:center}.app-info p{color:#6c757d;font-size:12px;margin:0}.parents-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.parents-header h3{color:#343a40;font-size:20px;font-weight:600;margin:0}.add-btn{background:#8b3fd9;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.add-btn:hover{background:#0056b3}.parents-list{display:flex;flex-direction:column;gap:12px}.parent-card{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:16px 100px 16px 16px;position:relative;transition:border-color .2s ease}.parent-card:hover{border-color:#8b3fd9}.parent-info{flex:1 1;gap:12px;min-width:0}.parent-avatar,.parent-info{align-items:center;display:flex}.parent-avatar{background:#28a745;border-radius:50%;color:#fff;flex-shrink:0;font-size:20px;font-weight:700;height:48px;justify-content:center;width:48px}.parent-details{flex:1 1;min-width:0;overflow:hidden}.parent-details h4{color:#343a40;font-size:16px;font-weight:600;margin:0 0 4px}.parent-details h4,.parent-details p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-details p{color:#6c757d;font-size:14px;margin:2px 0}.delete-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:28px;justify-content:center;line-height:1;min-height:28px;min-width:28px;padding:0;transition:background-color .2s ease;width:28px}.delete-btn:hover{background:#c82333}.empty-state{color:#6c757d;padding:24px}.empty-state p{font-size:14px;margin:8px 0}.name-fields{display:flex;gap:12px;margin-bottom:16px}.name-fields .form-group{flex:1 1;margin-bottom:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:10px 14px 6px}.modal-header h2{color:#1a1a1a;font-size:16px;font-weight:600;margin:0}.modal-header .close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:22px;height:26px;justify-content:center;padding:0;transition:background-color .2s;width:26px}.modal-header .close-btn:hover{background-color:#f8f9fa;color:#1a1a1a}.modal-body{padding:8px 14px}.modal-footer{border-top:1px solid #e9ecef;display:flex;gap:8px;justify-content:flex-end;padding:6px 14px 10px}.modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;padding:24px;position:relative;width:100%}.modal h3{color:#1a1a1a;font-size:24px;font-weight:700;margin:0 0 24px;text-align:center}.modal-actions{display:flex;gap:12px;margin-top:24px}@media (max-width:768px){.modal-overlay{padding:10px}.modal{max-height:95vh;padding:20px}.modal h3{font-size:20px}}.password-field{position:relative}.password-input{padding-right:50px!important}.password-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:opacity .2s ease}.password-toggle:hover{opacity:.7}@media (max-width:768px){.profile-avatar{gap:12px;text-align:center}.form-actions,.profile-avatar{flex-direction:column}.profile-card{padding:20px}.parent-card{padding:12px 90px 12px 12px}.parent-info{gap:8px}.parent-avatar{font-size:16px;height:40px;width:40px}.parent-details h4{font-size:14px}.parent-details p{font-size:12px}.child-actions{gap:8px;right:8px}.child-actions .delete-btn,.child-actions .edit-btn{font-size:12px!important;padding:4px 8px!important}}.edit-child-profile-modal-overlay{z-index:10000!important}.integrations-list{display:flex;flex-direction:column;gap:16px}.integration-summary-card{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:16px;padding:16px;transition:all .2s}.integration-summary-card:hover{background:#f0fdf4;border-color:#4caf50}.integration-summary-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.integration-letter{font-size:24px}.integration-summary-details{flex:1 1}.integration-summary-details h4{color:#1a1a1a;font-size:16px;font-weight:600;margin:0 0 8px}.integration-summary-stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.stat-item{color:#666;font-size:13px}.stat-label{color:#888}.integration-summary-status{margin-top:4px}.status-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.status-badge.active{background:#dcfce7;color:#16a34a}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.view-btn{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.view-btn:hover{background:#45a049}.integration-actions .view-btn{background:#4caf50!important;color:#fff!important}.integration-actions .view-btn:hover{background:#45a049!important}.integration-actions .disconnect-btn{background:#dc3545!important;border-color:#dc3545!important}.integration-actions .disconnect-btn:hover{background:#c82333!important;border-color:#bd2130!important}@media (max-width:600px){.integration-summary-card{align-items:flex-start;flex-direction:column}.integration-summary-stats{flex-direction:column;gap:6px}.view-btn{width:100%}}.admin-screen{margin:0 auto;max-width:1200px}.admin-header{border-bottom:2px solid #e9ecef;margin-bottom:24px;padding-bottom:16px}.admin-header h2{align-items:center;color:#343a40;display:flex;font-size:28px;font-weight:700;gap:12px;margin:0}.admin-badge{border-radius:12px;font-size:12px;padding:4px 8px;text-transform:uppercase}.admin-badge.admin{background:#fff3cd;color:#856404}.admin-badge.super_admin{background:#f8d7da;color:#721c24}.access-denied{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.access-denied h3{color:#dc3545;font-size:24px;font-weight:700;margin-bottom:16px}.access-denied p{color:#6c757d;font-size:16px;margin:0}.admin-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:32px}.admin-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:24px;text-align:center;transition:transform .2s,box-shadow .2s}.admin-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.card-icon{font-size:48px;margin-bottom:16px}.admin-card h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 12px}.admin-card p{color:#6c757d;font-size:14px;line-height:1.5;margin:0 0 20px}.card-button{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.card-button:hover{background:#0056b3}.admin-stats{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:24px}.admin-stats h3{color:#343a40;font-size:20px;font-weight:700;margin:0 0 20px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:16px}.stat-item{background:#f8f9fa;border-radius:8px;padding:16px;text-align:center}.stat-number{color:#8b3fd9;font-size:32px;font-weight:700;margin-bottom:4px}.stat-label{color:#6c757d;font-size:14px}.stats-note{color:#adb5bd;font-size:12px;font-style:italic;margin:0;text-align:center}@media (max-width:768px){.admin-grid{gap:16px;grid-template-columns:1fr}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.admin-header h2{flex-direction:column;gap:8px;text-align:center}.admin-card{padding:20px}.card-icon{font-size:40px}}.integrations-screen{margin:0 auto;max-width:1200px;padding:20px}.integrations-header{margin-bottom:30px}.integrations-header h2{color:#1a1a1a;font-size:28px;font-weight:600;margin-bottom:10px}.integrations-header p{color:#666;font-size:16px}.loading-state{color:#666;padding:40px;text-align:center}.integrations-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:40px}.integration-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:24px;transition:all .3s ease}.integration-card:hover{border-color:#4caf50;box-shadow:0 4px 12px #0000001a}.integration-card.connected{background:linear-gradient(180deg,#f0fdf4 0,#fff);border-color:#4caf50}.integration-card.disabled{cursor:not-allowed;opacity:.6}.integration-card.disabled:hover{border-color:#e0e0e0;box-shadow:none}.integration-header{align-items:center;display:flex;gap:16px;margin-bottom:16px}.integration-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.integration-icon img{border-radius:12px;height:100%;object-fit:contain;width:100%}.integration-letter{color:#fff;font-size:28px;font-weight:700}.integration-title{flex:1 1}.integration-title h3{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 4px}.coming-soon-badge{background:#fbbf24}.coming-soon-badge,.connected-badge{border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.connected-badge{background:#4caf50}.integration-description{color:#666;font-size:14px;line-height:1.5;margin-bottom:20px}.integration-stats{grid-gap:8px;background:#f9fafb;border-radius:8px;display:grid;gap:8px;margin-bottom:20px;padding:16px}.stat{align-items:center;display:flex;font-size:14px;justify-content:space-between}.stat-label{color:#666;font-weight:500}.stat-value{color:#1a1a1a;font-weight:600}.integration-actions{display:flex;flex-direction:column;gap:10px}.connect-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.connect-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.connect-btn:disabled{cursor:not-allowed;opacity:.5}.sync-btn{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.sync-btn:hover:not(:disabled){background:#45a049}.sync-btn:disabled{cursor:not-allowed;opacity:.5}.history-btn{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.history-btn:hover{background:#1976d2}.toggle-sync-btn{background:#f3f4f6;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.toggle-sync-btn.active{background:#dcfce7;border-color:#86efac;color:#16a34a}.toggle-sync-btn:hover{border-color:#4caf50}.disconnect-btn{background:#0000;border:2px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.disconnect-btn:hover{background:#ef4444;color:#fff}.password-input-group{align-items:center;display:flex;position:relative}.password-input-group .form-input{flex:1 1;padding-right:48px}.toggle-password-btn{background:#0000;border:none;cursor:pointer;font-size:20px;opacity:.6;padding:4px 8px;position:absolute;right:12px;transition:opacity .2s}.toggle-password-btn:hover{opacity:1}.security-notice{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0369a1;font-size:13px;margin-top:16px;padding:12px}.modal-large{max-height:80vh;max-width:700px;overflow-y:auto}.sync-history-list{display:flex;flex-direction:column;gap:16px;margin:20px 0}.sync-history-item{background:#f9fafb;border-left:4px solid #e0e0e0;border-radius:8px;padding:16px}.sync-history-item.success{border-left-color:#4caf50}.sync-history-item.failed{border-left-color:#ef4444}.sync-history-item.in_progress{border-left-color:#fbbf24}.sync-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.sync-status{font-size:14px;font-weight:600}.sync-date,.sync-details{color:#666;font-size:13px}.sync-details{display:flex;flex-wrap:wrap;gap:12px}.sync-details span{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:4px 10px}.sync-error{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:13px;margin-top:12px;padding:8px 12px}.empty-state{color:#666;padding:40px 20px;text-align:center}.empty-state p{font-size:15px;margin:0}@media (max-width:768px){.integrations-grid{grid-template-columns:1fr}.integrations-header h2{font-size:24px}.integration-card{padding:20px}.integration-icon{height:48px;width:48px}.integration-letter{font-size:24px}}.onboarding-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.onboarding-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;display:flex;flex-direction:column;max-height:85vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.progress-bar{background:linear-gradient(135deg,#8b3fd9,#7a35c4);border-radius:16px 16px 0 0;flex-shrink:0;padding:16px 20px;position:relative}.progress-header{align-items:center;display:flex;justify-content:center;position:relative;z-index:2}.progress-logo{flex-shrink:0}.progress-brand-logo{height:70px;width:auto}.skeleton-children-list{display:flex;flex-direction:column;gap:12px;margin:20px 0}.skeleton-child-card{background:#f8f9fa;border:1px solid #e1e5e9;padding:16px}.child-info{display:flex;flex-direction:column;gap:4px}.child-name{color:#2d3748;font-weight:600}.child-status{color:#718096;font-size:14px}.step-actions{border-top:1px solid #e1e5e9;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.form-group label{color:#2d3748;font-weight:500;margin-bottom:8px}.form-input{border:1px solid #e1e5e9;border-radius:8px;box-sizing:border-box;font-size:16px;max-width:100%;padding:12px;transition:border-color .2s;width:100%}.form-input:focus{border-color:#8b3fd9;box-shadow:0 0 0 3px #8b3fd91a;outline:none}.form-help{color:#718096;display:block;font-size:14px;margin-top:6px}.option-button.primary:disabled,.option-button.secondary:disabled{cursor:not-allowed;opacity:.6}.progress-step{flex:1 1;flex-direction:column}.progress-step,.step-number{align-items:center;display:flex}.step-number{background:#fff3;border-radius:50%;color:#fff;font-weight:700;height:40px;justify-content:center;margin-bottom:8px;transition:all .3s ease;width:40px}.progress-step.active .step-number{background:#fff;color:#8b3fd9}.progress-step.completed .step-number{background:#4caf50;color:#fff}.step-label{color:#fffc;font-size:12px;text-align:center}.progress-step.active .step-label{color:#fff;font-weight:600}.progress-fill{background:#fff;height:2px;left:0;margin-top:-1px;position:absolute;top:50%;transition:width .5s ease;z-index:1}.onboarding-content{overflow-y:auto;padding:20px}.onboarding-content,.onboarding-step{display:flex;flex:1 1;flex-direction:column}.onboarding-step{text-align:center}.step-header{flex-shrink:0;margin-bottom:12px}.step-header h2{color:#1a1a1a;font-size:22px;margin:0 0 6px}.step-header.success h2{color:#4caf50}.step-header p{color:#666;font-size:15px;margin:0}.step-content{margin-bottom:16px}.family-setup-card h3{color:#1a1a1a;font-size:18px;margin:0 0 10px}.family-setup-card,.step-content{display:flex;flex:1 1;flex-direction:column}.family-setup-card{text-align:left}.family-setup-card>p{color:#666;font-size:14px;line-height:1.3;margin-bottom:10px}.setup-options{display:flex;flex:1 1;flex-direction:column;gap:12px}@media (min-width:768px){.setup-options{flex-direction:row}}.option-card{border:2px solid #e5e5e5;border-radius:12px;display:flex;flex:1 1;flex-direction:column;padding:12px;transition:all .3s ease}.option-card:hover{border-color:#8b3fd9;box-shadow:0 4px 12px #667eea26}.option-card.recommended{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#8b3fd9}.option-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.option-icon{font-size:22px}.option-title{color:#1a1a1a;font-size:15px;font-weight:600}.recommended-badge{background:#8b3fd9;border-radius:12px;color:#fff;font-size:11px;font-weight:600;margin-left:auto;padding:3px 6px}.option-card p{color:#666;font-size:13px;line-height:1.3;margin-bottom:6px}.option-card ul{color:#666;font-size:12px;margin:6px 0;padding-left:14px}.option-card li{margin-bottom:2px}.option-button{border-radius:8px;font-size:14px;margin-top:auto;padding:8px 14px;transition:all .2s ease;width:100%}.option-button.primary{background:#8b3fd9;color:#fff}.option-button.primary:hover{background:#7a35c4}.option-button.secondary{background:#f5f5f5;color:#666}.option-button.secondary:hover{background:#e5e5e5}.skip-section{border-top:2px solid #e5e5e5;margin-top:16px;padding-top:16px;text-align:center}.skip-button{background:#d0d0d0;border:2px solid #b0b0b0;border-radius:8px;box-shadow:0 2px 8px #00000026;color:#2d2d2d;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px;transition:all .3s ease}.skip-button:hover{background:#8b3fd9;border-color:#8b3fd9;box-shadow:0 4px 12px #8b3fd94d;color:#fff;transform:translateY(-2px)}.invite-form{margin:0 auto;max-width:400px;text-align:left}.form-group{margin-bottom:20px}.form-group label{color:#1a1a1a;display:block;font-weight:600;margin-bottom:6px}.onboarding-input{border:2px solid #e5e5e5;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s ease;width:100%}.onboarding-input:focus{border-color:#8b3fd9;outline:none}.invitation-preview{background:#f8f9ff;border:1px solid #e5e8ff;border-radius:8px;margin-top:24px;padding:16px}.invitation-preview h4{color:#1a1a1a;margin:0 0 8px}.invitation-preview p{color:#666;font-size:14px;margin:0 0 12px}.invitation-preview ul{color:#666;font-size:14px;margin:0;padding-left:16px}.invitation-preview li{margin-bottom:4px}.success-message{margin:0 auto;max-width:400px;text-align:center}.success-icon{font-size:48px;margin-bottom:16px}.success-message h3{color:#1a1a1a;font-size:20px;margin:0 0 16px}.success-message>p{color:#666;font-size:16px;line-height:1.5;margin-bottom:24px}.next-steps{background:#f8f9fa;border-radius:8px;padding:20px;text-align:left}.next-steps h4{color:#1a1a1a;margin:0 0 12px}.next-steps ul{color:#666;font-size:14px;margin:0;padding-left:16px}.next-steps li{line-height:1.4;margin-bottom:8px}.step-actions{align-items:center;border-top:1px solid #e5e5e5;display:flex;justify-content:space-between;margin-top:32px;padding-top:24px}.back-button{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:8px;transition:color .2s ease}.back-button:hover{color:#1a1a1a}.primary-actions{align-items:center;display:flex;gap:12px}.primary-button{background:#8b3fd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:background .2s ease}.primary-button:hover{background:#7a35c4}.primary-button:disabled{cursor:not-allowed;opacity:.6}.primary-button.full-width{font-size:16px;padding:16px 24px;width:100%}@media (max-width:768px){.onboarding-overlay{padding:10px}.onboarding-container{max-height:95vh}.onboarding-content{padding:24px}.step-header h2{font-size:24px}.setup-options,.step-actions{flex-direction:column}.step-actions{gap:16px}.primary-actions{justify-content:space-between;width:100%}.progress-bar{padding:16px}.progress-brand-logo{height:60px}}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper .form-input{flex:1 1;padding-right:48px}.toggle-password-visibility{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-size:20px;justify-content:center;opacity:.6;padding:4px 8px;position:absolute;right:12px;transition:opacity .2s}.toggle-password-visibility:hover:not(:disabled){opacity:1}.toggle-password-visibility:disabled{cursor:not-allowed;opacity:.3}.dashboard{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#8b3fd9,#764ba2);border-bottom:1px solid #ffffff1a;box-shadow:0 4px 20px #667eea4d;color:#fff}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 24px;width:100%}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:16px}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:18px;justify-content:space-between;padding:0;width:24px}.burger-line{background-color:#fff;border-radius:2px;height:3px;transition:all .3s ease;width:100%}.mobile-nav{background:#fff;box-shadow:2px 0 20px #0000001a;display:flex;flex-direction:column;padding-top:80px;transform:translateX(0);transition:transform .3s ease;width:280px;z-index:1000}.mobile-menu-overlay,.mobile-nav{height:100vh;left:0;position:fixed;top:0}.mobile-menu-overlay{background:#00000080;width:100vw;z-index:999}.header-content h1{font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0}.dashboard-logo{height:48px;margin:0;width:auto}.header-user{align-items:center;display:flex;gap:16px}.logout-btn{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);border:none;border-radius:20px;box-shadow:0 4px 10px #ff6b6b4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.logout-btn:hover{box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-2px)}.dashboard-body{display:flex;flex:1 1;width:100%}.dashboard-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-right:1px solid #fff3;box-shadow:2px 0 20px #0000001a;display:flex;flex-direction:column;padding:24px 0;width:200px}.nav-item{align-items:center;background:none;border:none;color:#495057;cursor:pointer;display:flex;font-size:16px;gap:12px;padding:12px 24px;position:relative;text-align:left;transition:background-color .2s}.nav-item:hover{background:#f8f9fa}.nav-item.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-right:4px solid #8b3fd9;color:#8b3fd9;font-weight:600}.nav-icon{font-size:20px}.nav-label{flex:1 1}.admin-badge{background:#ff9500;border-radius:10px;color:#fff;font-size:10px;font-weight:700;min-width:20px;padding:2px 6px;text-align:center}.dashboard-content{flex:1 1;margin:0 auto;max-width:1200px;overflow-y:auto;padding:24px}@media (max-width:768px){.dashboard{background:#fff}.dashboard-body{flex-direction:column;margin:0;max-width:100%}.desktop-nav{display:none}.mobile-menu-btn{display:flex}.mobile-nav .nav-item{border-bottom:1px solid #f0f0f0;font-size:16px;padding:16px 24px}.mobile-nav .nav-item.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-right:4px solid #8b3fd9;color:#8b3fd9;font-weight:600}.header-content{padding:8px 12px}.header-content h1{font-size:16px}.welcome-text{display:none}.dashboard-content{background:#fff;padding:0}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.skeleton-modal-overlay{z-index:10000!important}.welcome-popup{animation:popupSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.welcome-popup-header{align-items:center;border-bottom:none;display:flex;justify-content:space-between;padding:24px 24px 0}.welcome-popup-header h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0}.welcome-popup-header .close-btn{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.welcome-popup-header .close-btn:hover{background:#f8f9fa;color:#495057}.welcome-popup-content{padding:20px 24px 24px}.welcome-popup-content p{color:#6c757d;font-size:16px;line-height:1.5;margin:0 0 16px}.welcome-popup-content p:last-of-type{margin-bottom:24px}.welcome-popup-actions{display:flex;flex-wrap:wrap;gap:12px}.welcome-popup-actions .btn-primary{background:linear-gradient(135deg,#8b3fd9,#7a35c4);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-width:140px;padding:12px 24px;transition:all .2s}.welcome-popup-actions .btn-primary:hover{background:linear-gradient(135deg,#7a35c4,#6b2fb8);box-shadow:0 4px 12px #8b3fd94d;transform:translateY(-1px)}.welcome-popup-actions .btn-secondary{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;color:#6c757d;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;min-width:120px;padding:12px 24px;transition:all .2s}.welcome-popup-actions .btn-secondary:hover{background:#e9ecef;border-color:#adb5bd;color:#495057}.welcome-popup.unified-welcome{max-width:600px}.add-parent-section,.skeleton-children-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin:24px 0;padding:20px}.add-parent-section h3,.skeleton-children-section h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 12px}.add-parent-section p,.skeleton-children-section p{color:#6c757d;font-size:14px;margin:0 0 16px}.skeleton-child-card{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:16px;justify-content:space-between;margin:8px 0;padding:12px 16px}.skeleton-child-info{display:flex;flex:2 1;flex-direction:column;gap:4px;min-width:200px}.skeleton-child-name{word-wrap:break-word;color:#2c3e50;font-size:16px;font-weight:600;overflow-wrap:break-word}.skeleton-child-age{color:#6c757d;font-size:14px}.option-button{background:linear-gradient(135deg,#8b3fd9,#7a35c4);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;min-width:auto;padding:6px 12px;transition:all .2s;white-space:nowrap}.option-button:hover{background:linear-gradient(135deg,#7a35c4,#6b2fb8);box-shadow:0 4px 12px #8b3fd94d;transform:translateY(-1px)}.option-button.secondary{background:#adb5bd;color:#495057}.option-button.secondary:hover{background:#9ca3af;color:#374151}@media (max-width:768px){.welcome-popup{margin:20px}.welcome-popup-actions{flex-direction:column}.welcome-popup-actions .btn-primary,.welcome-popup-actions .btn-secondary{flex:none;width:100%}.skeleton-child-card{align-items:stretch;flex-direction:column;gap:12px}.skeleton-child-info{text-align:center}}.cookie-consent-overlay{align-items:flex-end;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;z-index:99999}.cookie-consent-banner{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:80vh;max-width:600px;overflow-y:auto;width:100%}.cookie-consent-content{padding:24px}.cookie-consent-content h2{color:#333;font-size:20px;margin-bottom:16px;margin-top:0}.cookie-consent-content p{color:#666;line-height:1.5;margin-bottom:16px}.cookie-consent-small{font-size:14px;margin-top:12px}.cookie-consent-link{background:none;border:none;color:#007bff;cursor:pointer;font-size:14px;padding:0;text-decoration:underline}.cookie-consent-link:hover{color:#0056b3}.cookie-consent-details{margin-bottom:20px;margin-top:16px}.cookie-category{background:#f8f9fa;border-radius:4px;margin-bottom:20px;padding:12px}.cookie-category-header{margin-bottom:8px}.cookie-category-header label{align-items:center;cursor:pointer;display:flex;font-size:16px}.cookie-category-header input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;width:18px}.cookie-category-header input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.cookie-category-description{color:#666;font-size:14px;line-height:1.4;margin:8px 0 0 28px}.cookie-consent-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.cookie-consent-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s,transform .1s}.cookie-consent-btn:active{transform:scale(.98)}.cookie-consent-btn-primary{background:#007bff;color:#fff}.cookie-consent-btn-primary:hover{background:#0056b3}.cookie-consent-btn-secondary{background:#6c757d;color:#fff}.cookie-consent-btn-secondary:hover{background:#545b62}@media (max-width:768px){.cookie-consent-overlay{padding:0}.cookie-consent-banner{border-radius:8px 8px 0 0;max-height:90vh;max-width:100%}.cookie-consent-content{padding:20px 16px}.cookie-consent-content h2{font-size:18px}.cookie-consent-actions{flex-direction:column}.cookie-consent-btn{width:100%}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App,.app-loading{min-height:100vh}.app-loading{align-items:center;background:#f8f9fa;display:flex;flex-direction:column;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e9ecef;border-radius:50%;border-top-color:#8b3fd9;height:40px;margin-bottom:16px;width:40px}.app-loading p{color:#6c757d;font-size:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){body{background:#fff}.App,body{overflow-x:hidden}.App{width:100vw}.app-loading{background:#fff}}
/*# sourceMappingURL=main.a94dea4b.css.map*/