@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Comic+Neue:wght@400;700&display=swap";#checkout::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}#checkout::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}#checkout::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.upgrade-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px;overflow-y:auto}.upgrade-modal-container{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;width:100%;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.stripe-checkout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:flex-start;z-index:1000;padding:50px 10px;overflow-y:auto}.stripe-checkout-container{background:#fff;border-radius:12px;max-width:550px;width:100%;box-shadow:0 20px 60px #0000004d}.stripe-checkout-header{padding:15px 20px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;flex-shrink:0}.stripe-checkout-content{padding:20px}@media (max-width: 768px){.upgrade-modal-overlay,.stripe-checkout-overlay{padding:5px}.upgrade-modal-container,.stripe-checkout-container{max-width:95vw;max-height:95vh}.stripe-checkout-header{padding:12px 15px}.stripe-checkout-header h3{font-size:1rem!important}}@media (max-width: 1024px){.upgrade-modal-container,.stripe-checkout-container{max-width:90vw;max-height:90vh}}.stripe-checkout-content::-webkit-scrollbar{width:6px}.stripe-checkout-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.stripe-checkout-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.stripe-checkout-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.lesson-detail-container{display:flex;flex-direction:column;height:calc(100vh - 60px);overflow:hidden}.lesson-main{display:flex;flex-grow:1;overflow:hidden}.tab-content{flex-grow:1;overflow-y:auto;padding:0 15px 15px;background-color:#f4f7f9;display:flex;flex-direction:column}.practice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;background-color:#fff;padding:8px 16px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.lesson-progress-info{display:flex;align-items:center;gap:15px}.lesson-main-title{font-size:1.2rem;font-weight:600;margin:0;color:#333}.challenge-subtitle{font-size:.9rem;color:#666;margin:4px 0 0}.lesson-number-badge{background-color:#4a90e2;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.practice-actions{display:flex;gap:10px}.action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:8px;border:none;cursor:pointer;font-weight:500;transition:background-color .2s ease}.save-btn{background-color:#f0f0f0;color:#333}.run-btn{background-color:#22b573;color:#fff}.action-btn:disabled{opacity:.6;cursor:not-allowed}.btn-icon{font-size:1.1rem}.practice-container{display:flex;flex-direction:column;gap:16px;padding:20px}.current-challenge-header{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,#e3f2fd,#f0f5fa);padding:24px;border-radius:16px;border:1px solid #bbdefb;box-shadow:0 4px 12px #00000014}.challenge-number-badge{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#1976d2,#2196f3);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;flex-shrink:0;box-shadow:0 4px 10px #1976d266}.challenge-header-main{flex-grow:1}.current-challenge-title{margin:0 0 8px;font-size:1.3rem;font-weight:600;color:#1a237e}.challenge-progress{display:flex;flex-direction:column;gap:8px}.progress-text{font-size:.9rem;color:#1565c0;font-weight:500}.progress-bar{width:100%;height:8px;background:#bbdefb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#1976d2,#2196f3);border-radius:4px;transition:width .3s ease}.challenge-prompt{background:#fff;padding:16px;border-radius:12px;border:1px solid #bbdefb;font-size:1.1rem;color:#333;font-weight:500;line-height:1.4;box-shadow:0 2px 8px #0000000d}@media (max-width: 1024px){.current-challenge-header{padding:16px;gap:12px}.challenge-number-badge{width:50px;height:50px;font-size:1.3rem}.current-challenge-title{font-size:1.1rem}.challenge-prompt{padding:12px;font-size:1rem}}.lesson-ide-container{display:flex;flex-direction:column;height:100vh;background-color:#f4f7f9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden}.lesson-ide-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background-color:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0;box-shadow:0 1px 3px #0000001a}.lesson-ide-header h1{font-size:1.25rem;font-weight:600;color:#333;margin:0}.lesson-ide-tabs{display:flex;gap:8px}.tab-btn{padding:12px 20px;border:none;background:#f8f9fa;font-size:1rem;font-weight:500;color:#555;cursor:pointer;border-radius:8px;transition:all .2s;display:flex;align-items:center;gap:8px}.tab-btn:hover{background:#e9ecef;transform:translateY(-1px)}.tab-btn.active{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;font-weight:600;box-shadow:0 2px 8px #4caf504d}.lesson-ide-main{flex-grow:1;overflow:hidden;display:flex;flex-direction:column}.practice-grid{display:grid;grid-template-columns:.7fr 2fr .8fr;gap:10px;padding:20px;height:calc(100vh - 80px);overflow:hidden;max-height:calc(100vh - 80px)}.practice-column{display:flex;flex-direction:column;gap:16px;overflow:hidden}.practice-column.left{overflow-y:auto}.ide-panel{background-color:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 4px #0000000d}.hints-panel{flex-grow:1;min-height:200px;max-height:400px}.hints-content{overflow-y:auto;max-height:300px}.workspace-panel{flex-grow:1;min-height:400px}.panel-header{padding:12px 16px;font-weight:600;font-size:.95rem;border-bottom:1px solid #e0e0e0;background-color:#fafafa;display:flex;justify-content:space-between;align-items:center}.panel-content{padding:16px;flex-grow:1;overflow-y:auto;min-height:0}.workspace-content{padding:0;height:100%}.output-example{background-color:#e8f5e9;color:#2e7d32;font-family:Courier New,monospace;font-size:.9rem;border-radius:4px;padding:8px}.code-output{background-color:#282c34;color:#abb2bf;font-family:Courier New,monospace;font-size:.9rem;padding:0;height:100%;overflow-y:auto}.code-output pre{margin:0;padding:16px;height:100%;overflow-y:auto}.live-update-badge{background-color:#4caf50;color:#fff;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.practice-mode-toggle{display:flex;gap:8px}.mode-btn{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.mode-btn.active{background:#4caf50;color:#fff;border-color:#4caf50}.error-message{color:#ff6b6b;font-weight:700;margin-top:8px}.success-message{color:#51cf66;font-weight:700;margin-top:8px}.run-code-btn:disabled{background:#bbb;cursor:not-allowed;transform:none;box-shadow:none}.expected-output-panel{flex:0 0 80px;max-height:100px}.generated-code-panel{flex:1;min-height:200px;max-height:300px}.actual-output-panel{flex:1;min-height:150px;max-height:400px}.run-code-btn-inline{padding:6px 12px;border:none;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.run-code-btn-inline:hover{transform:translateY(-1px);box-shadow:0 2px 8px #4caf504d}.run-code-btn-inline:disabled{background:#bbb;cursor:not-allowed;transform:none;box-shadow:none}.console-content{background-color:#282c34;color:#fff;font-family:Courier New,monospace;font-size:.9rem;padding:12px;height:100%;overflow-y:auto}.console-content pre{margin:0;white-space:pre-wrap;word-wrap:break-word}.run-code-btn-header{padding:8px 16px;border:none;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 6px #4caf504d}.run-code-btn-header:hover{transform:translateY(-1px);box-shadow:0 4px 10px #4caf5066}.run-code-btn-header:disabled{background:#bbb;cursor:not-allowed;transform:none;box-shadow:none}.actual-output-panel.expanded{flex:2}.header-actions{display:flex;gap:8px;align-items:center}.save-btn-header{padding:6px 12px;border:none;background:linear-gradient(135deg,#22b573,#1da063);color:#fff;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px}.save-btn-header:hover{transform:translateY(-1px);box-shadow:0 2px 6px #22b5734d}.save-btn-header:disabled{background:#bbb;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 1440px),(max-height: 850px){.practice-grid{gap:12px;padding:12px}.panel-header{padding:8px 12px;font-size:.9rem}.panel-content{padding:12px}.workspace-panel{min-height:300px}.hints-panel{max-height:300px}.actual-output-panel{min-height:100px}.lesson-ide-header h1{font-size:1.1rem}.tab-btn{padding:10px 16px;font-size:.95rem}}@media (max-width: 1024px){.practice-grid{display:flex;flex-direction:column;gap:8px;height:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px}.practice-column{display:flex;flex-direction:column;gap:8px;overflow:visible}.practice-column.left{order:1;flex:0 0 25vh;max-height:25vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.hints-panel{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}.practice-column.middle{order:2;flex:0 0 50vh;max-height:50vh}.workspace-panel{height:100%;flex-shrink:0}.practice-column.right{order:3;flex:0 0 25vh;max-height:25vh;display:flex;flex-direction:column;gap:4px;overflow-y:auto;-webkit-overflow-scrolling:touch}.expected-output-panel{flex:0 0 auto;min-height:60px;max-height:80px}.generated-code-panel{flex:1;min-height:80px;overflow:hidden}.generated-code-panel .panel-content{overflow-y:auto;-webkit-overflow-scrolling:touch;height:100%}.actual-output-panel{flex:1;min-height:80px;overflow:hidden}.actual-output-panel .panel-content{overflow-y:auto;-webkit-overflow-scrolling:touch;height:100%}.lesson-ide-header{flex-direction:column;gap:8px;padding:8px}.lesson-ide-header h1{font-size:1rem;text-align:center}.lesson-ide-tabs{width:100%;justify-content:center}.tab-btn{flex:1;justify-content:center;padding:6px 4px;font-size:.75rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-mode-toggle{flex-direction:row;gap:6px}.header-actions{display:flex;align-items:center;gap:6px}.run-code-btn-header{width:auto;margin-top:0;font-size:.8rem;padding:6px 12px}.ide-panel{margin-bottom:8px}.panel-header{padding:8px 12px;font-size:.85rem}.panel-content{padding:8px}.mode-btn,.save-btn-header,.run-code-btn-header{padding:8px;font-size:.8rem;min-width:auto}.mode-btn span:not(.btn-icon),.save-btn-header span:not(.btn-icon),.run-code-btn-header span:not(.btn-icon){display:none}.mode-btn .btn-icon,.save-btn-header .btn-icon,.run-code-btn-header .btn-icon{font-size:1.2rem;margin:0}.header-actions{gap:4px}}@media (max-width: 768px){.hero-stats div div:first-child{font-size:1.5rem!important}.lesson-ide-tabs{gap:4px}.tab-btn{padding:6px 4px!important;font-size:.75rem!important}.mode-btn{padding:8px;font-size:.8rem;min-width:auto}.mode-btn span:not(.btn-icon){display:none}.mode-btn .btn-icon{font-size:1.2rem;margin:0}.save-btn-header{padding:6px 8px;font-size:.75rem;min-width:auto}.save-btn-header span:not(.btn-icon){display:none}.save-btn-header .btn-icon{font-size:1.1rem;margin:0}.run-code-btn-header{padding:6px 8px;font-size:.75rem;min-width:auto}.run-code-btn-header span:not(.btn-icon){display:none}.run-code-btn-header .btn-icon{font-size:1.1rem;margin:0}.header-actions{gap:4px}.mark-complete-btn-mobile{position:absolute;top:0;right:0;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px #00000026}.mark-complete-btn-mobile:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003}}@keyframes pulseHighlight{0%{box-shadow:0 0 #1976d266}70%{box-shadow:0 0 0 10px #1976d200}to{box-shadow:0 0 #1976d200}}#theory-content,#quiz-content{max-width:100%;box-sizing:border-box}.current-challenge-display{background-color:#e3f2fd;border-radius:8px;padding:16px;border:1px solid #bbdefb;margin-bottom:8px}.current-challenge-title{font-size:1rem;font-weight:600;color:#0d47a1;margin:0 0 8px}.current-challenge-prompt{font-size:.9rem;color:#1565c0;margin:0;line-height:1.4}.challenge-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex-grow:1}.challenge-list-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;background-color:#f8f9fa;border:1px solid #e9ecef;cursor:pointer;transition:all .2s ease}.challenge-list-item:hover{background-color:#e9ecef;border-color:#dee2e6}.challenge-list-item.active{background-color:#e3f2fd;border-color:#42a5f5;box-shadow:0 2px 8px #42a5f533}.challenge-list-item.completed .challenge-indicator{background-color:#e8f5e9}.challenge-list-item.completed .completed-icon{color:#4caf50}.challenge-list-item.completed .challenge-title{color:#555;text-decoration:line-through}.challenge-indicator{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#e9ecef;font-weight:600;font-size:1rem;color:#495057;transition:all .2s ease}.active .challenge-indicator{background-color:#1976d2}.active .play-icon{color:#fff;fill:#fff}.challenge-info{flex-grow:1;overflow:hidden}.challenge-title{font-size:.95rem;font-weight:600;color:#343a40;margin:0 0 4px}.challenge-meta{font-size:.8rem;color:#6c757d;margin:0;white-space:nowrap;overflow-x:auto;padding-bottom:8px}.current-challenge-prompt{white-space:nowrap;overflow-x:auto;padding-bottom:8px}.current-challenge-prompt::-webkit-scrollbar{height:6px}.current-challenge-prompt::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.current-challenge-prompt::-webkit-scrollbar-thumb{background:#b0b0b0;border-radius:3px}.current-challenge-prompt::-webkit-scrollbar-thumb:hover{background:#888}.challenge-meta::-webkit-scrollbar{height:6px}.challenge-meta::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.challenge-meta::-webkit-scrollbar-thumb{background:#b0b0b0;border-radius:3px}.challenge-meta::-webkit-scrollbar-thumb:hover{background:#888}.challenge-divider{border:none;border-top:1px solid #e9ecef;margin:4px 0}.panel-header-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#6c757d}.panel-header-btn:hover{background-color:#e9ecef;color:#212529}.challenges-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.challenges-modal{background-color:#fff;border-radius:12px;width:90%;max-width:600px;height:80%;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #0003}.challenges-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e9ecef;flex-shrink:0}.challenges-modal-header h3{margin:0;font-size:1.2rem;color:#343a40}.challenges-modal-content{padding:16px;overflow-y:auto;flex-grow:1;display:flex;flex-direction:column;gap:8px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;padding:40px;box-sizing:border-box;background:radial-gradient(circle at center,rgba(76,175,80,.05) 0%,transparent 70%)}.loading-message{font-size:1.2rem;font-weight:600;margin-top:30px;color:#2c3e50;text-align:center;max-width:350px;line-height:1.5;opacity:0;animation:fade-in .8s ease-in-out .5s forwards}.rocket-container{position:relative;width:120px;height:180px;animation:rocket-launch 2s infinite ease-in-out;filter:drop-shadow(0 10px 20px rgba(0,0,0,.15))}.rocket-body{position:absolute;bottom:0;width:70px;height:140px;left:25px;background:linear-gradient(180deg,#ecf0f1,#bdc3c7);border-radius:50% 50% 0 0;border:3px solid #95a5a6;box-shadow:inset 0 -20px 40px #0000001a}.rocket-body:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);width:0;height:0;border-left:35px solid transparent;border-right:35px solid transparent;border-bottom:35px solid #f39c12;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.rocket-window{position:absolute;top:30px;left:50%;transform:translate(-50%);width:24px;height:24px;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:50%;border:3px solid #ecf0f1;box-shadow:inset 0 2px 4px #0003}.rocket-fin{position:absolute;bottom:15px;width:0;height:0;border-top:35px solid transparent;border-bottom:25px solid transparent}.fin-left{left:-25px;border-right:25px solid #e74c3c;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.fin-right{right:-25px;border-left:25px solid #e74c3c;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.rocket-exhaust-flame{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);width:28px;height:50px;background:linear-gradient(180deg,#f39c12,#e67e22,#e74c3c 60%,#c0392b);border-radius:0 0 50% 50%;animation:flame-flicker .2s infinite alternate;filter:blur(1px)}.exhaust-trail span{position:absolute;bottom:-70px;left:50%;width:12px;height:12px;background:radial-gradient(circle,#f39c12,#e67e22);border-radius:50%;animation:trail-rise 1.5s infinite;opacity:0;filter:blur(2px)}.exhaust-trail span:nth-child(1){animation-delay:.3s;transform:translate(-10px)}.exhaust-trail span:nth-child(2){animation-delay:.6s;transform:translate(10px)}.exhaust-trail span:nth-child(3){animation-delay:.9s;transform:translate(0)}@keyframes rocket-launch{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(-15px) rotate(-1deg)}50%{transform:translateY(-30px) rotate(0)}75%{transform:translateY(-15px) rotate(1deg)}to{transform:translateY(0) rotate(0)}}@keyframes flame-flicker{0%{height:45px;opacity:1;transform:translate(-50%) scaleX(1)}to{height:55px;opacity:.9;transform:translate(-50%) scaleX(1.1)}}@keyframes trail-rise{0%{transform:translateY(0) scale(1);opacity:.8}50%{opacity:.6;transform:translateY(-60px) scale(.8)}to{transform:translateY(-120px) scale(.3);opacity:0}}@keyframes fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.subscription-card{border-radius:12px;padding:20px;margin:16px 0;box-shadow:0 4px 12px #00000014;border:2px solid}.subscription-card.trial{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-color:#ffc107}.subscription-card.active{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#28a745}.subscription-card.pending-cancellation{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-color:#ffc107}.subscription-card.none{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-color:#dc3545}.subscription-card.loading{text-align:center;color:#666;background:#f8f9fa;border-color:#e9ecef}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.card-header .card-icon{font-size:2rem}.card-header h3{margin:0 0 4px;font-size:1.2rem;font-weight:700}.card-header p{margin:0;font-size:.9rem}.trial .card-header h3,.trial .card-header p,.pending-cancellation .card-header h3,.pending-cancellation .card-header p{color:#856404}.active .card-header h3,.active .card-header p{color:#155724}.none .card-header h3,.none .card-header p{color:#721c24}.card-body h4{margin:0 0 12px;font-size:1rem;font-weight:700;color:#333}.card-body ul{list-style:none;padding:0;margin:0}.billing-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:.9rem;background:#ffffff80;padding:12px;border-radius:8px}.billing-details span{color:#555}.cancellation-notice{margin-top:12px;padding:10px;border-radius:8px;background:#fffbe6;color:#856404;font-size:.85rem;font-weight:500}.card-footer{margin-top:16px;text-align:right}.upgrade-button,.cancel-button{border:none;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.upgrade-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;box-shadow:0 2px 8px #28a7454d}.upgrade-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #28a74566}.cancel-button{background:#dc3545;color:#fff;box-shadow:0 2px 8px #dc35454d}.cancel-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc354566;background:#c82333}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-bottom-2{bottom:-.5rem}.-left-2{left:-.5rem}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.right-4{right:1rem}.top-4{top:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-3{height:.75rem}.h-32{height:8rem}.min-h-\[100px\]{min-height:100px}.w-3{width:.75rem}.w-32{width:8rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-green-300{--tw-gradient-from: #86efac var(--tw-gradient-from-position);--tw-gradient-to: rgb(134 239 172 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-300{--tw-gradient-from: #fde047 var(--tw-gradient-from-position);--tw-gradient-to: rgb(253 224 71 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-orange-300{--tw-gradient-to: rgb(253 186 116 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fdba74 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-blue-300{--tw-gradient-to: #93c5fd var(--tw-gradient-to-position)}.to-pink-600{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.to-red-300{--tw-gradient-to: #fca5a5 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-3{padding-left:.75rem}.pr-10{padding-right:2.5rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-\[\#1976d2\]{--tw-text-opacity: 1;color:rgb(25 118 210 / var(--tw-text-opacity, 1))}.text-\[\#4caf50\]{--tw-text-opacity: 1;color:rgb(76 175 80 / var(--tw-text-opacity, 1))}.text-\[\#ff9800\]{--tw-text-opacity: 1;color:rgb(255 152 0 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}html{font-size:16px}html,body,#root{height:100%;min-height:100%}body{margin:0;padding:0;width:100%;overflow-x:hidden;font-family:Comic Neue,Comic Sans MS,Arial Rounded MT Bold,Helvetica Rounded,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f5fa}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f3f5;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#4caf50,#45a049);border-radius:4px;opacity:.7}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#45a049,#3d8b40);opacity:1}*{scrollbar-width:thin;scrollbar-color:#4CAF50 #f1f3f5}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide{0%{background-position:0 0}to{background-position:100% 100%}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.float{animation:float 6s ease-in-out infinite}.pulse{animation:pulse 2s ease-in-out infinite}.bounce{animation:bounce 2s ease infinite}.fade-in{animation:fadeIn .5s ease-out}.rotate{animation:rotate 10s linear infinite}.kid-button{background-color:#2196f3;color:#fff;border:none;border-radius:50px;padding:10px 20px;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .3s,box-shadow .3s,background-color .3s;box-shadow:0 4px 8px #0000001a}.kid-button:hover{transform:scale(1.05);box-shadow:0 6px 12px #00000026;background-color:#1976d2}.kid-button.yellow{background-color:#ffcf0d;color:#333}.kid-button.yellow:hover{background-color:#ffc107}.kid-button.green{background-color:#4caf50}.kid-button.green:hover{background-color:#388e3c}.kid-input{padding:10px 12px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:border .3s,box-shadow .3s;outline:none;font-family:Comic Neue,Comic Sans MS,sans-serif;display:flex;align-items:center}.kid-input:focus{border:2px solid #2196f3;box-shadow:0 0 8px #2196f34d}.gradient-blue{background:linear-gradient(135deg,#c2e9fb,#a1c4fd)}.gradient-yellow{background:linear-gradient(45deg,#ffcf0d,#ffe03c)}.gradient-green{background:linear-gradient(135deg,#a8ff78,#78ffd6)}.kid-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 10px 20px #0000001a;transition:transform .3s,box-shadow .3s}.kid-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.kid-footer{background:#333;color:#fff;padding:30px 20px;text-align:center}.kid-header{background-color:#1cc8ff;padding:15px 20px;display:flex;align-items:center}.blocklyTreeLabel{font-size:1.1rem!important;font-family:inherit!important}.blocklyFlyoutLabelText{font-size:1rem!important;font-family:inherit!important}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#333;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#555}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 640px){.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:py-12{padding-top:3rem;padding-bottom:3rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{box-sizing:border-box;height:100%;display:flex;flex-direction:column;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width: 767px){.rbc-toolbar{flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;box-sizing:border-box;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:flex;flex-direction:column;flex:1 0 0;width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;position:relative;flex-direction:column;flex:1 0 0;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:flex;flex-direction:row;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex-direction:column;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:flex;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;position:absolute;right:0;margin-right:10px;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:flex;max-height:100%;min-height:20px;flex-flow:column wrap;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;flex:1 0 0;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;flex:1 1 0;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:flex;flex-direction:column;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{flex:1;display:flex;min-width:0;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{display:flex;flex:1 0 0%;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.shake{animation:shake .82s cubic-bezier(.36,.07,.19,.97) both;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.availability-calendar .rbc-slot-selecting .rbc-event,.availability-calendar .rbc-slot-selecting .rbc-day-slot .rbc-background-event,.availability-calendar .rbc-day-slot .rbc-slot-selecting .rbc-background-event{pointer-events:auto!important}.availability-calendar .rbc-time-content{cursor:crosshair}.availability-calendar .rbc-event,.availability-calendar .rbc-day-slot .rbc-background-event,.availability-calendar .rbc-day-bg,.availability-calendar .rbc-time-slot{pointer-events:auto}.tutor-list-container{padding:20px;background-color:#f8f9fa;width:100%;margin:0 auto;max-width:1200px}.tutor-list-page{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.page-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;color:#333;width:100%}.back-btn{background:#fff;border:1px solid #e0e0e0;color:#333;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.page-title{font-size:24px;font-weight:700;flex-grow:1}.search-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 4px 15px #0000000d}.search-bar{display:flex;gap:10px}.search-input{flex:1;padding:12px 18px;border:1px solid #ccc;border-radius:8px;font-size:16px;outline:none;transition:all .3s ease}.search-input:focus{border-color:#ffc107;box-shadow:0 0 8px #ffc1074d}.search-btn{background:#28a745;color:#fff;border:none;padding:12px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.search-btn:hover{background:#218838}.teachers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.teacher-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #00000014;transition:all .3s ease;border-left:5px solid transparent}.teacher-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a;border-left-color:#ffc107}.teacher-header{display:flex;align-items:center;gap:15px;margin-bottom:15px}.teacher-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#ffeb3b,#ffc107);display:flex;align-items:center;justify-content:center;font-size:22px;color:#333;font-weight:700}.teacher-info{flex:1}.teacher-name{font-size:18px;font-weight:700;color:#333;margin-bottom:2px}.teacher-title{color:#28a745;font-size:14px;font-weight:600}.teacher-specialties{margin-bottom:15px}.specialties-title{font-size:14px;font-weight:600;color:#555;margin-bottom:8px}.specialty-tags{display:flex;flex-wrap:wrap;gap:8px}.specialty-tag{background-color:#e8f5e9;color:#2e7d32;padding:5px 10px;border-radius:15px;font-size:12px;font-weight:600}.teacher-bio{color:#666;font-size:14px;line-height:1.5;margin-bottom:20px}.teacher-actions{display:flex}.view-profile-btn{flex:1;background:#ffc107;color:#333;border:none;padding:12px 20px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;text-align:center;text-decoration:none;font-size:16px}.view-profile-btn:hover{background:#ffca28;box-shadow:0 4px 10px #0000001a}.no-results{text-align:center;padding:40px 20px;color:#555;background-color:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d}.no-results-icon{font-size:48px;margin-bottom:15px}.no-results-title{font-size:22px;font-weight:600;margin-bottom:10px}.no-results-text{font-size:16px;opacity:.8}.premium-lock-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.premium-lock-card{background:linear-gradient(135deg,#fff,#f7f9fc);border-radius:16px;padding:32px 40px;text-align:center;max-width:500px;box-shadow:0 10px 30px #0000001a;border:1px solid #e0e7ff}.premium-lock-icon{color:#4f46e5;margin-bottom:16px;animation:bounce 2s infinite}.premium-lock-title{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:12px}.premium-lock-text{font-size:16px;color:#4b5563;line-height:1.6;margin-bottom:24px}.premium-lock-btn{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:block;width:100%;margin-bottom:12px}.premium-lock-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4f46e54d}.back-btn-lock{background:transparent;border:none;color:#4f46e5;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px;margin:0 auto}@media (max-width: 768px){.tutor-list-page{padding:15px}.page-header{margin-bottom:15px}.page-title{font-size:22px}.search-bar{flex-direction:column;gap:15px}.search-btn{justify-content:center}.teachers-grid{grid-template-columns:1fr}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}@media (max-width: 480px){.tutor-list-page{padding:10px}.search-section{padding:15px}}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#333}.tutor-detail-page-scoped{padding:30px}.tutor-detail-page-scoped .header{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.3)}.tutor-detail-page-scoped .tutor-info{display:flex;align-items:center;gap:20px}.tutor-detail-page-scoped .avatar{width:80px;height:80px;border-radius:20px;background:linear-gradient(135deg,gold,#4caf50);display:flex;align-items:center;justify-content:center;color:#333;font-size:32px;font-weight:700;box-shadow:0 10px 25px #ffd7004d}.tutor-detail-page-scoped .tutor-details h1{font-size:2.5em;font-weight:700;background:linear-gradient(135deg,gold,#4caf50);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px}.tutor-detail-page-scoped .tutor-meta{display:flex;gap:30px;margin-top:15px;flex-wrap:wrap}.tutor-detail-page-scoped .meta-item{display:flex;align-items:center;gap:8px;padding:8px 15px;background:#ffd70033;border-radius:25px;font-weight:500}.tutor-detail-page-scoped .meta-icon{width:20px;height:20px;background:linear-gradient(135deg,gold,#4caf50);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#333;font-size:12px}.tutor-detail-page-scoped .calendar-section{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:30px;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.3)}.tutor-detail-page-scoped .section-title{font-size:1.5em;font-weight:600;margin-bottom:10px;color:#333}.tutor-detail-page-scoped .section-subtitle{color:#666;margin-bottom:25px}.tutor-detail-page-scoped .rbc-calendar{border:none;border-radius:15px;overflow:hidden;background:#ffd7000d}.tutor-detail-page-scoped .rbc-toolbar{background:#fff;padding:15px 20px;border-bottom:1px solid rgba(255,215,0,.2)}.tutor-detail-page-scoped .rbc-toolbar .rbc-toolbar-label{font-size:1.3em;font-weight:600;color:#333}.tutor-detail-page-scoped .rbc-btn-group button{padding:8px 16px!important;border:none!important;border-radius:10px!important;background:#ffd70033!important;color:#b8860b!important;font-weight:500!important;cursor:pointer!important;transition:all .3s ease!important}.tutor-detail-page-scoped .rbc-btn-group button:hover{background:#ffd70066!important;transform:translateY(-2px)!important}.tutor-detail-page-scoped .rbc-btn-group .rbc-active{background:linear-gradient(135deg,gold,#4caf50)!important;color:#333!important;box-shadow:0 4px 10px #0000001a!important}.tutor-detail-page-scoped .rbc-header{background:linear-gradient(135deg,gold,#4caf50)!important;color:#333!important;padding:15px!important;text-align:center!important;font-weight:600!important;font-size:.9em!important;border:none!important}.tutor-detail-page-scoped .rbc-month-view,.rbc-month-row{border:none!important}.tutor-detail-page-scoped .rbc-day-bg{background:#fff!important;border:1px solid rgba(255,215,0,.2)!important}.tutor-detail-page-scoped .rbc-day-bg.rbc-off-range-bg{background:#fffef7!important}.tutor-detail-page-scoped .rbc-date-cell{text-align:right;padding:8px}.tutor-detail-page-scoped .rbc-time-gutter .rbc-timeslot-group{border-bottom:1px solid rgba(255,215,0,.2)}.tutor-detail-page-scoped .rbc-time-header-content{border-left:1px solid rgba(255,215,0,.2)}.tutor-detail-page-scoped .rbc-time-slot,.tutor-detail-page-scoped .rbc-day-slot .rbc-time-slot{border-top:none!important}.tutor-detail-page-scoped .rbc-event-label{color:#333}.tutor-detail-page-scoped .rbc-time-gutter .rbc-time-slot .rbc-label{color:#333!important;font-weight:500}.tutor-detail-page-scoped .rbc-day-slot .rbc-event,.tutor-detail-page-scoped .rbc-row-segment .rbc-event{background-color:transparent!important;padding:0!important;text-align:center;border:none}.tutor-detail-page-scoped .availability-badge{background:#e8f5e9;color:#388e3c;padding:5px 10px;border-radius:15px;font-size:.8em;font-weight:600;display:inline-block;cursor:pointer;margin-top:5px;border:1px solid #a5d6a7;transition:all .2s ease-in-out}.tutor-detail-page-scoped .availability-badge:hover{background:#4caf50;color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.my-bookings-page{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding:30px;background-color:#f0f5fa}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;color:#333}.page-title-section{display:flex;align-items:center;gap:15px}.back-btn{background:#fff;border:1px solid #e0e0e0;color:#555;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:18px}.back-btn:hover{background:#f1f3f5;transform:scale(1.1)}.page-title{font-size:28px;font-weight:700}.book-new-btn{background:linear-gradient(135deg,gold,#4caf50);color:#333;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;text-decoration:none}.book-new-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #4caf5066}.tab-navigation{background:#fff;border-radius:15px;padding:8px;margin-bottom:25px;display:flex;gap:5px;box-shadow:0 5px 20px #0000000d}.tab-btn{flex:1;padding:12px 20px;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;background:transparent;color:#666}.tab-btn.active{background:linear-gradient(135deg,gold,#4caf50);color:#333;box-shadow:0 4px 15px #ffd70066}.empty-state{background:#fff;border-radius:20px;padding:60px 40px;text-align:center;box-shadow:0 10px 30px #00000014}.empty-icon{font-size:80px;margin-bottom:25px;opacity:.5}.empty-title{font-size:24px;font-weight:600;color:#333;margin-bottom:12px}.empty-description{color:#666;font-size:16px;margin-bottom:30px;line-height:1.5}.cta-button{background:linear-gradient(135deg,gold,#4caf50);color:#333;border:none;padding:15px 30px;border-radius:25px;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px;text-decoration:none}.cta-button:hover{transform:translateY(-3px);box-shadow:0 10px 25px #ffd70080}.bookings-grid{display:grid;gap:20px}.booking-card{background:#fff;border-radius:20px;padding:25px;box-shadow:0 10px 30px #00000014;transition:all .3s ease;border-left:5px solid}.booking-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #0000001a}.booking-card.upcoming{border-left-color:#4caf50}.booking-card.completed{border-left-color:#2196f3;opacity:.9}.booking-card.cancelled{border-left-color:#f44336;opacity:.7}.booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.booking-info{flex:1}.lesson-title{font-size:18px;font-weight:600;color:#333;margin-bottom:8px}.teacher-info{display:flex;align-items:center;gap:12px;margin-bottom:15px}.teacher-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#4caf50,#8bc34a);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.teacher-details{flex:1}.teacher-name{font-weight:600;color:#333;font-size:14px}.teacher-subject{color:#666;font-size:12px}.booking-status{padding:6px 12px;border-radius:15px;font-size:12px;font-weight:600;text-transform:uppercase}.status-upcoming{background:#e8f5e8;color:#4caf50}.status-completed{background:#e3f2fd;color:#2196f3}.status-cancelled{background:#ffebee;color:#f44336}.booking-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:20px}.detail-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#666}.detail-icon{color:#4caf50}.booking-actions{display:flex;gap:10px;flex-wrap:wrap}.action-btn{padding:8px 16px;border:none;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#4caf50,#8bc34a);color:#fff}.btn-secondary{background:#f5f5f5;color:#666}.btn-danger{background:#ffebee;color:#f44336}.action-btn:hover{transform:translateY(-1px)}.pay-now-btn{background:linear-gradient(135deg,#ffc107,#ff9800);color:#333;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.pay-now-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #ffc1074d}@media (max-width: 768px){.my-bookings-page{padding:15px}.page-header{flex-direction:column;gap:15px;align-items:flex-start;margin-bottom:20px}.page-title-section{width:100%}.page-title{font-size:24px}.book-new-btn{width:100%;justify-content:center;padding:15px}.tab-navigation{flex-direction:row;overflow-x:auto;padding:6px;margin-bottom:20px}.tab-btn{flex:none;min-width:120px;padding:10px 16px;font-size:14px;white-space:nowrap}.booking-card{padding:20px 15px;border-radius:15px}.booking-header{flex-direction:column;gap:10px;align-items:flex-start}.lesson-title{font-size:16px}.teacher-info{margin-bottom:10px}.teacher-avatar{width:35px;height:35px}.booking-details{grid-template-columns:1fr;gap:10px;margin-bottom:15px}.detail-item{font-size:13px}.booking-actions{flex-direction:column;gap:8px}.action-btn{width:100%;padding:12px;font-size:14px;text-align:center}.empty-state{padding:40px 20px;border-radius:15px}.empty-icon{font-size:60px;margin-bottom:20px}.empty-title{font-size:20px}.empty-description{font-size:14px;margin-bottom:25px}.cta-button{width:100%;justify-content:center;padding:15px}}.sidebar-nav{width:280px;background:#fffffff2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:2px 0 20px #0000001a;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;z-index:1000;border-right:1px solid rgba(255,255,255,.2);transition:width .3s ease}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.logo-section{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.logo{background:linear-gradient(45deg,#ff6b6b,#ee5a24);color:#fff;width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;box-shadow:0 4px 15px #ff6b6b4d}.logo-text{font-size:1.5rem;font-weight:700;color:#333}.user-card{background:linear-gradient(135deg,gold,#4caf50);color:#333;padding:1.5rem;border-radius:15px;box-shadow:0 8px 25px #ffd7004d}.user-name{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.user-stats{display:flex;justify-content:space-between;align-items:center}.level-badge{background:#fff3;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;border:1px solid rgba(255,255,255,.3)}.xp-display{font-size:.9rem;opacity:.9}.nav-menu{flex:1;padding:1.5rem 1rem .5rem;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.nav-section{margin-bottom:2rem}.nav-section-title{font-size:.8rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem;padding:0 .5rem}.nav-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;margin-bottom:.5rem;border-radius:15px;text-decoration:none;color:#555;font-weight:500;transition:all .3s ease;position:relative;border:2px solid transparent}.nav-item:hover{background:#ffd7001a;border-color:#ffd70033;transform:translate(5px)}.nav-item.active{background:linear-gradient(135deg,gold,#4caf50);color:#333;box-shadow:0 8px 25px #ffd7004d}.nav-icon{font-size:1.25rem;width:24px;text-align:center}.sidebar-footer{padding:.75rem 1rem 1rem;border-top:1px solid rgba(0,0,0,.1);flex-shrink:0;margin-top:auto}.quick-action-mini{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffd7001a;border-radius:12px;text-decoration:none;color:#555;font-size:.9rem;font-weight:500;transition:all .3s ease;margin-bottom:.5rem;border:none;cursor:pointer}.quick-action-mini:hover{background:#4caf5033;transform:translate(3px)}.nav-menu::-webkit-scrollbar{width:8px}.nav-menu::-webkit-scrollbar-track{background:#0000000d}.nav-menu::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.nav-menu::-webkit-scrollbar-thumb:hover{background:#555}.sidebar-toggle{position:absolute;top:20px;right:-15px;z-index:100;background:#fff;border:1px solid #ddd;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;cursor:pointer;color:#333;transition:all .3s ease}.collapsed .sidebar-toggle{right:-15px}.sidebar-toggle:hover{transform:scale(1.1);box-shadow:0 4px 12px #0003}.sidebar-nav.collapsed{width:90px}.sidebar-nav.collapsed .logo-text,.sidebar-nav.collapsed .user-name,.sidebar-nav.collapsed .user-stats,.sidebar-nav.collapsed .nav-section-title{display:none}.sidebar-nav.collapsed .nav-item span:not(.nav-icon){display:none}.sidebar-nav.collapsed .quick-action-mini{justify-content:center}.sidebar-nav.collapsed .sidebar-header{padding:1rem;justify-content:center}.sidebar-nav.collapsed .nav-item{padding:1rem;justify-content:center;display:flex;align-items:center}.sidebar-nav.collapsed .nav-icon{margin-right:0;font-size:1.5rem}.sidebar-nav.collapsed .logo-section{justify-content:center}.sidebar-overlay{display:none}@media (max-width: 768px){.sidebar-nav.mobile-sidebar{position:fixed;left:-280px;top:0;height:100vh;z-index:1200;transition:left .3s ease-in-out;box-shadow:0 0 20px #0003}.sidebar-nav.mobile-sidebar:not(.collapsed){left:0}.sidebar-overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1199}.sidebar-nav.mobile-sidebar .sidebar-footer{display:block!important;position:sticky;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);margin-top:auto;padding:.75rem 1rem 1.25rem;border-top:2px solid rgba(0,0,0,.1)}.sidebar-nav.mobile-sidebar .nav-menu{max-height:calc(100vh - 180px);padding-bottom:.25rem}}.sidebar-header.logged-out .logo-section{grid-column:1 / -1;justify-content:center;padding-bottom:20px}.upgrade-section{padding:0 1rem 1rem;margin-top:auto}.upgrade-button-sidebar{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;width:100%;border-radius:15px;border:2px solid #ffc107;background:linear-gradient(135deg,#fff9c4,#fffde7);color:#333;font-weight:600;cursor:pointer;transition:all .3s ease}.upgrade-button-sidebar:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ffc1074d}.sidebar-nav.collapsed .upgrade-button-sidebar{justify-content:center;padding:1rem}.sidebar-nav.collapsed .upgrade-button-sidebar .nav-icon{margin:0}
