@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600;700&family=Montserrat:wght@300;400;500;600;700&display=swap";.home{display:flex;flex-direction:column;gap:40px;padding-bottom:32px}.hero-banner{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;margin-top:-32px;min-height:100vh;display:flex;align-items:center;justify-content:center;background-image:url(/assets/homepage-banner-CgXaqiWz.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;text-align:center;overflow:hidden}.hero-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0000004d,#0006,#00000080);pointer-events:none}.hero-banner-content{max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:1;display:flex;flex-direction:column;gap:24px}.hero-banner-company{font-size:18px;font-weight:600;color:#fff;margin:0;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.3);opacity:.95}.hero-banner-text{font-size:64px;font-weight:400;color:#fff;margin:0;letter-spacing:.01em;text-shadow:0 4px 16px rgba(0,0,0,.4);line-height:1.3;font-family:Georgia,Times New Roman,serif}.hero{margin-top:16px;padding:40px 32px;background:#fefce8;border-radius:16px;border:1px solid #fef3c7}.hero-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#92400e;margin-bottom:6px;font-weight:500}.hero-title{font-size:32px;line-height:1.2;font-weight:700;margin:0 0 10px;color:#111827}.hero-subtitle{font-size:14px;color:#4b5563;max-width:560px;line-height:1.5;margin-bottom:24px}.hero-actions{display:flex;flex-direction:column;gap:14px;max-width:640px}.hero-search{display:flex;flex-wrap:nowrap;border-radius:999px;border:1px solid #e5e7eb;background:#fff;padding:4px;box-shadow:0 4px 12px #00000008}.hero-search-input{flex:1;border:none;padding:10px 14px;border-radius:999px;font-size:14px;outline:none;color:#111827}.hero-search-input::placeholder{color:#9ca3af}.hero-search-button{border-radius:999px;border:none;padding:10px 18px;font-size:14px;font-weight:500;background:#111827;color:#fff;cursor:pointer;transition:background .2s ease;white-space:nowrap}.hero-cta-buttons{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-block;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .15s ease;border:1px solid transparent;text-align:center}.btn-outline-sm{border-radius:999px;border:1px solid #d1d5db;padding:6px 12px;font-size:12px;background:#fff;cursor:pointer;font-weight:500}.section{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:28px 24px}.section-title{font-size:22px;font-weight:600;margin:0 0 8px;color:#111827}.section-subtitle{font-size:13px;color:#6b7280;font-weight:500}.section-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.section-text{font-size:14px;color:#4b5563;max-width:680px;line-height:1.6;margin-bottom:6px}.section-intro-text{font-size:13px;color:#6b7280;margin-bottom:16px}.section-cta{display:flex;justify-content:center;margin-top:20px}.section-how-it-works{background:#f9fafb}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.step-card{background:#fff;border-radius:12px;padding:24px 20px;text-align:center;border:1px solid #e5e7eb;transition:all .2s ease}.step-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.step-icon{font-size:40px;margin-bottom:12px}.step-number{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#16a34a;font-weight:600;margin-bottom:8px}.step-title{font-size:16px;font-weight:600;margin:0 0 10px;color:#111827}.step-description{font-size:13px;color:#6b7280;line-height:1.5;margin:0}.tutor-list{display:flex;flex-direction:column;gap:14px;margin-top:16px}.tutor-card{border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb;padding:16px 18px;transition:all .2s ease}.tutor-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.avatar-large{width:52px;height:52px;border-radius:12px;background:#e5e7eb;flex-shrink:0}.tutor-info{flex:1;display:flex;flex-direction:column;gap:8px}.tutor-header{display:flex;align-items:flex-start;justify-content:space-between}.tutor-header h3{margin:0 0 4px;font-size:17px;font-weight:600;color:#111827}.tutor-meta{display:flex;align-items:center;gap:10px;font-size:13px}.stars{color:#f59e0b;font-size:13px}.tutor-sessions{color:#6b7280;font-size:12px}.tutor-subjects{display:flex;gap:6px;flex-wrap:wrap}.subject-tag{background:#fef3c7;color:#92400e;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid #fde68a}.tutor-summary{font-size:13px;color:#374151;margin:0;line-height:1.5;font-weight:500}.tutor-detail{font-size:13px;color:#6b7280;margin:0;line-height:1.5}.section-testimonials{background:#f9fafb}.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.testimonial-card{border-radius:12px;border:1px solid #e5e7eb;background:#fff;padding:18px;display:flex;flex-direction:column;gap:10px;transition:all .2s ease}.testimonial-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.testimonial-card h3{font-size:15px;font-weight:600;margin:0;color:#111827}.testimonial-text{font-size:13px;color:#4b5563;line-height:1.6;flex:1}.testimonial-metric{background:#dcfce7;color:#166534;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:600;text-align:center;border:1px solid #86efac}.testimonial-footer{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px;border-top:1px solid #f3f4f6}.avatar-placeholder{width:32px;height:32px;border-radius:999px;background:#e5e7eb;flex-shrink:0}.testimonial-name{font-size:13px;font-weight:600;color:#111827}.section-ai{background:#f9fafb}.ai-content{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start}.ai-text-content{display:flex;flex-direction:column;gap:14px}.ai-features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.ai-features-list li{display:flex;align-items:center;gap:10px;font-size:13px;color:#374151}.ai-feature-icon{width:20px;height:20px;border-radius:50%;background:#9333ea;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.ai-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:24px 20px;text-align:center}.ai-icon{font-size:48px;margin-bottom:12px}.ai-card h3{font-size:18px;font-weight:600;margin:0 0 10px;color:#111827}.ai-card p{font-size:13px;color:#6b7280;line-height:1.6;margin:0 0 16px}.section-final-cta{background:#fff;border:1px solid #e5e7eb;text-align:center;padding:48px 32px}.final-cta-content{max-width:800px;margin:0 auto}.final-cta-subtitle{font-size:16px;color:#6b7280;line-height:1.6;margin:0 0 32px;font-weight:400}.final-cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:40px}.cta-button{padding:14px 36px;border-radius:8px;font-size:15px;font-weight:600;text-decoration:none;transition:all .2s ease;display:inline-block;cursor:pointer;border:2px solid}.cta-button-primary{background:#16a34a;color:#fff;border-color:#16a34a;box-shadow:0 2px 8px #16a34a33}.cta-button-primary:hover{background:#15803d;border-color:#15803d;transform:translateY(-2px);box-shadow:0 4px 12px #16a34a4d}.cta-button-secondary{background:#f3f4f6;color:#374151;border-color:#e5e7eb}.cta-button-secondary:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.final-cta-divider{width:80px;height:1px;background:#d1d5db;margin:0 auto 32px}.final-cta-quote{font-size:15px;color:#9ca3af;line-height:1.7;font-style:italic;max-width:700px;margin:0 auto 12px}.final-cta-author{font-size:14px;color:#9ca3af;font-style:italic;margin:0}@media(max-width:1024px){.steps-grid,.ai-content{grid-template-columns:1fr}}@media(max-width:768px){.home{gap:32px}.hero-banner{min-height:70vh}.hero-banner-content{padding:0 20px;gap:20px}.hero-banner-company{font-size:14px;letter-spacing:.12em}.hero-banner-text{font-size:42px}.hero{padding:28px 20px}.hero-title{font-size:26px}.hero-subtitle{font-size:13px}.hero-cta-buttons{flex-direction:column}.btn{width:100%;text-align:center}.section{padding:20px 18px}.section-title{font-size:20px}.testimonials-grid{grid-template-columns:1fr;gap:14px}.tutor-card-main{flex-direction:column;gap:14px}.final-cta-subtitle{font-size:15px}.final-cta-buttons{flex-direction:column;margin-bottom:32px}.cta-button{width:100%}.final-cta-quote{font-size:14px}}@media(max-width:480px){.hero-banner{min-height:60vh}.hero-banner-content{padding:0 16px;gap:16px}.hero-banner-company{font-size:12px;letter-spacing:.1em}.hero-banner-text{font-size:32px;line-height:1.4}.hero-search{flex-direction:column;border-radius:12px;padding:6px}.hero-search-input{border-radius:8px;padding:10px 14px}.hero-search-button{border-radius:8px;width:100%}.tutor-subjects{flex-direction:column}.subject-tag{text-align:center}}.about-page{display:flex;flex-direction:column;gap:24px}.about-hero{margin-top:8px;padding:40px 24px;border-radius:16px;background:#fef3c7;border:1px solid #fde68a;text-align:center}.about-hero h1{margin:0;font-size:28px;font-weight:600;letter-spacing:.04em}.about-section{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:24px 24px 28px;line-height:1.6}.about-section h2{margin-top:0;font-size:22px;margin-bottom:8px}.about-section h3{margin-top:20px;font-size:18px;margin-bottom:6px}.about-paragraph{font-size:14px;color:#374151;margin:4px 0 12px;text-align:left}.about-list{margin:8px 0 12px 18px;padding:0;font-size:14px;color:#374151}.about-list li{margin-bottom:6px}.about-note{color:#b91c1c;font-weight:500}.about-cta-button{margin-top:14px;padding:8px 18px;border-radius:999px;border:1px solid #f59e0b;background:#fbbf24;color:#111827;font-size:13px;cursor:pointer;text-decoration:none}.about-cta-button:hover{background:#f59e0b}@media(max-width:640px){.about-hero{padding:28px 16px}.about-section{padding:18px 16px 22px}}.subjects-page{display:flex;flex-direction:column;gap:24px}.subjects-hero{margin-top:8px;padding:40px 24px;border-radius:16px;background:#fef3c7;border:1px solid #fde68a;text-align:center}.subjects-hero h1{margin:0;font-size:28px;font-weight:600;letter-spacing:.04em}.subjects-content{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:32px 24px 40px}.subjects-intro{text-align:center;margin-bottom:32px}.subjects-intro h2{margin:0 0 8px;font-size:24px;font-weight:600}.subjects-intro p{margin:0;font-size:15px;color:#6b7280}.subjects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1200px;margin:0 auto}.subject-card{background:#fff;border-radius:12px;border:2px solid #e5e7eb;padding:24px;display:flex;flex-direction:column;gap:12px;transition:all .3s ease;cursor:pointer;text-decoration:none;color:inherit;position:relative;overflow:hidden;aspect-ratio:1;min-height:280px;max-height:280px}.subject-card:hover{border-color:#f97316;box-shadow:0 8px 24px #f9731626;transform:translateY(-4px)}.subject-card-disabled{cursor:default;opacity:.7}.subject-card-disabled:hover{border-color:#e5e7eb;box-shadow:none;transform:none}.subject-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:32px;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-radius:12px;margin-bottom:4px;flex-shrink:0}.subject-title{font-size:17px;font-weight:600;margin:0;color:#111827;flex-shrink:0}.subject-description{font-size:13px;color:#6b7280;margin:0;line-height:1.5;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}.subject-link-arrow{font-size:20px;color:#f97316;font-weight:700;margin-top:8px;opacity:0;transform:translate(-10px);transition:all .3s ease}.subject-card:hover .subject-link-arrow{opacity:1;transform:translate(0)}@media(max-width:1024px){.subjects-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media(max-width:640px){.subjects-hero{padding:28px 16px}.subjects-content{padding:24px 16px 32px}.subjects-grid{grid-template-columns:1fr;gap:16px}.subject-icon{width:56px;height:56px;font-size:32px}.subject-title{font-size:16px}.subject-description{font-size:13px}}.verification-badge-wrapper{position:relative;display:inline-block}.verification-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:10px;font-weight:700;cursor:help;transition:transform .2s ease,box-shadow .2s ease}.verification-badge:hover{transform:scale(1.1);box-shadow:0 4px 12px #00000026}.verification-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);margin-bottom:4px;padding:10px 14px;background-color:#1f2937;color:#fff;border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;box-shadow:0 4px 12px #0000004d;z-index:1000}.verification-badge-wrapper:hover .verification-tooltip{opacity:1;visibility:visible}.verification-tooltip-title{font-weight:600;margin-bottom:4px}.verification-tooltip-description{font-size:11px;opacity:.9}.verification-tooltip-arrow{position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1f2937}.tutors-hero{margin-top:8px;padding:40px 24px;border-radius:16px;background:#fef3c7;border:1px solid #fde68a;text-align:center}.tutors-hero h1{margin:0;font-size:32px;font-weight:700}.tutors-content{max-width:1400px;margin:0 auto;padding:24px 16px 48px;min-height:600px}.page-btn{padding:8px 14px;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;color:#374151;transition:all .2s ease}.page-btn:hover:not(:disabled){background:#f3f4f6;border-color:#f97316}.page-btn.active{background-color:#f97316;color:#fff;border-color:#f97316}.page-btn:disabled{opacity:.35;cursor:default}.tutors-empty-message{text-align:center;margin:40px 0;font-size:18px;color:#374151}.tutors-empty-wrapper{display:flex;justify-content:center;align-items:center;min-height:200px;min-width:763px;flex:1}.tutors-empty-text{font-size:18px;color:#111827;text-align:center}.tutors-layout{display:flex;gap:24px;position:relative}.tutors-sidebar{width:280px;flex-shrink:0;border-right:1px solid #e5e7eb;padding-right:20px}.tutors-sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tutors-sidebar-title{margin:0;font-size:16px;font-weight:600}.clear-filters-btn{background:none;border:none;color:#f97316;font-size:12px;cursor:pointer;text-decoration:underline;padding:0}.clear-filters-btn:hover{color:#ea580c}.tutors-sidebar-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.tutors-sidebar-section:last-child{border-bottom:none}.tutors-sidebar-section h3{margin:0;font-size:14px;font-weight:600;color:#111827}.tutors-sidebar-section.muted h3{color:#6b7280}.tutors-sidebar-section.muted p{margin:0;font-size:12px;color:#9ca3af}.tutors-sort-chip{width:100%;text-align:left;padding:8px 12px;margin-bottom:8px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;font-size:13px;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.tutors-sort-chip:hover{border-color:#fb923c;background:#fff7ed}.tutors-sort-chip.active{border-color:#f97316;background:#ffedd5;font-weight:500}.filter-chevron{font-size:18px;color:#9ca3af;margin-left:auto}.expansion-panel{position:absolute;left:304px;top:0;width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 4px 12px #00000026;z-index:10;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.panel-content{display:flex;flex-direction:column;gap:16px}.panel-title{font-size:14px;font-weight:600;margin:0 0 8px;color:#111827}.price-range-display{font-size:14px;font-weight:600;color:#111827;margin-bottom:12px;text-align:center;padding:8px;background:#f9fafb;border-radius:6px}.price-slider-container{position:relative;height:40px;margin-bottom:16px}.price-slider{position:absolute;width:100%;height:4px;-webkit-appearance:none;appearance:none;background:transparent;outline:none;pointer-events:none}.price-slider:first-child{z-index:1}.price-slider::-webkit-slider-track{width:100%;height:4px;background:#e5e7eb;border-radius:4px}.price-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#f97316;border:2px solid #ffffff;border-radius:50%;cursor:pointer;pointer-events:all;box-shadow:0 1px 3px #0003}.price-slider::-moz-range-track{width:100%;height:4px;background:#e5e7eb;border-radius:4px}.price-slider::-moz-range-thumb{width:18px;height:18px;background:#f97316;border:2px solid #ffffff;border-radius:50%;cursor:pointer;pointer-events:all;box-shadow:0 1px 3px #0003}.price-inputs{display:flex;gap:12px}.price-input-group{flex:1;display:flex;flex-direction:column;gap:4px}.price-input-group label{font-size:12px;color:#6b7280;font-weight:500}.price-input{width:100%;padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;outline:none}.price-input:focus{border-color:#f97316;box-shadow:0 0 0 2px #f973161a}.subject-filter-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.subject-checkbox-label{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;transition:background-color .2s ease}.subject-checkbox-label:hover{background:#f9fafb}.subject-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#f97316}.subject-checkbox-label span{flex:1;color:#374151}.apply-button{padding:8px 16px;background:#f97316;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.apply-button:hover{background:#ea580c}.tutors-main{flex:1;display:flex;flex-direction:column}.tutors-search-header{margin-bottom:20px}.tutors-search-header h2{margin:0 0 12px;font-size:20px;font-weight:600}.tutors-search-row{display:flex;gap:12px}.tutors-search-input{flex:1;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none}.tutors-search-input:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.tutors-results-count{margin-bottom:16px;font-size:14px;color:#6b7280}.tutors-list{display:flex;flex-direction:column;gap:16px;min-height:400px}.tutors-error{color:#dc2626;padding:12px;background:#fee2e2;border-radius:6px}.tutor-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;transition:all .2s ease}.tutor-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db}.tutor-card-left{display:flex;align-items:flex-start}.tutor-profile-pic{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid #e5e7eb}.tutor-profile-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fb923c,#f97316);color:#fff;font-size:32px;font-weight:600}.tutor-card-main{display:flex;flex-direction:column;gap:8px}.tutor-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tutor-name{margin:0;font-size:18px;font-weight:600;color:#111827}.tutor-rating-row{display:flex;align-items:center;gap:8px}.tutor-rating{color:#fbbf24;font-size:16px}.tutor-rating-count{font-size:13px;color:#6b7280;display:flex;align-items:center;gap:4px}.rating-number{font-weight:600;color:#111827}.tutor-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#6b7280}.tutor-meta span{white-space:nowrap}.tutor-meta strong{color:#374151}.tutor-summary{font-size:14px;color:#374151;line-height:1.5;margin:4px 0}.tutor-card-actions{margin-top:8px;opacity:1;visibility:visible}.tutor-learn-more{display:inline-block;padding:6px 12px;background:#fc8a39;color:#fff;text-decoration:none;border-radius:6px;font-size:12px;font-weight:500;transition:background .2s ease;opacity:1;visibility:visible}.tutor-learn-more:hover{background:#ea580c}.tutor-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.tutor-rate{display:flex;align-items:baseline;gap:2px}.tutor-rate-amount{font-size:24px;font-weight:700;color:#111827}.tutor-rate-unit{font-size:14px;color:#6b7280}.tutor-chat-button{padding:6px 10px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s ease}.tutor-chat-button:hover{background:#e5e7eb;border-color:#9ca3af}.tutors-pagination{display:flex;justify-content:center;gap:8px;margin-top:32px}@media(max-width:900px){.tutor-card{grid-template-columns:minmax(0,1fr)}.tutor-card-left{order:1}.tutor-card-main{order:2}.tutor-card-right{order:3;flex-direction:row;align-items:center;justify-content:space-between}}@media(max-width:1200px){.tutors-hero{padding:28px 16px}.tutors-content{padding:18px 16px 24px;min-width:auto}.tutor-meta{flex-direction:column;align-items:flex-start}.tutor-meta span{white-space:normal}}@media(max-width:900px){.tutors-layout{flex-direction:column}.tutors-sidebar{width:100%;border-right:none;border-bottom:1px solid #e5e7eb;padding-right:0;padding-bottom:16px}.expansion-panel{position:relative;left:auto;top:auto;width:100%;margin-top:16px}}.verification-badge{white-space:nowrap;transition:transform .15s ease}.verification-badge:hover{transform:translateY(-1px)}.schedule-display{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-top:24px}.schedule-display h3{margin:0 0 20px;color:#1a1a1a;font-size:1.5rem;display:flex;align-items:center;gap:8px}.no-schedule{text-align:center;padding:32px;color:#9ca3af;font-style:italic;margin:0}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.schedule-day{border:2px solid #e5e7eb;border-radius:10px;overflow:hidden;transition:all .2s}.schedule-day:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a}.schedule-day.unavailable{opacity:.6}.schedule-day.unavailable:hover{border-color:#e5e7eb;box-shadow:none}.schedule-day-header{background:linear-gradient(135deg,#3b82f6,#2563eb);padding:12px 16px;text-align:center}.day-name{color:#fff;font-weight:600;font-size:1rem;text-transform:capitalize}.schedule-day-slots{padding:12px;display:flex;flex-direction:column;gap:8px;min-height:80px}.schedule-time-slot{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#047857;padding:10px 12px;border-radius:6px;font-size:.9rem;font-weight:500;text-align:center;border:1px solid #6ee7b7;transition:transform .2s}.schedule-time-slot:hover{transform:translateY(-2px)}.schedule-unavailable{color:#9ca3af;text-align:center;padding:20px 12px;font-style:italic;font-size:.9rem}@media(max-width:768px){.schedule-display{padding:16px}.schedule-display h3{font-size:1.25rem}.schedule-grid{grid-template-columns:1fr;gap:12px}.schedule-day-slots{min-height:60px}}@media(min-width:769px)and (max-width:1024px){.schedule-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1025px){.schedule-grid{grid-template-columns:repeat(4,1fr)}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s}.modal-content.enhanced{background:#fff;border-radius:16px;max-width:1030px;width:100%;max-height:92vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s;padding:28px}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:1.8rem;color:#9ca3af;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-title{margin:0 0 20px;font-size:1.5rem;color:#1f2937;font-weight:700;padding-right:40px}.form-section{margin-bottom:24px;padding-bottom:24px;border-bottom:2px solid #f3f4f6}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0 0 16px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 4px}.month-nav{background:#f3f4f6;border:none;padding:6px 14px;border-radius:6px;font-size:1.1rem;cursor:pointer;transition:all .2s;color:#374151}.month-nav:hover{background:#e5e7eb}.month-title{margin:0;font-size:1rem;font-weight:600;color:#1f2937}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:12px}.calendar-day-header{text-align:center;font-weight:600;font-size:.7rem;color:#6b7280;padding:4px 2px;text-transform:uppercase;letter-spacing:.3px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;position:relative;background:#f9fafb;transition:all .15s;min-height:42px;padding:3px;border:2px solid transparent}.calendar-day.other-month{opacity:.25;cursor:default;pointer-events:none}.calendar-day.available{background:#ecfdf5;border-color:#10b981}.calendar-day.unavailable{background:#fef2f2;border-color:#fecaca;cursor:not-allowed}.calendar-day.selectable:hover{transform:scale(1.08);box-shadow:0 3px 10px #10b9814d;z-index:5}.calendar-day.today{border-color:#3b82f6;font-weight:700;box-shadow:0 0 0 1px #3b82f6 inset}.calendar-day.selected{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#1d4ed8;color:#fff;font-weight:700;transform:scale(1.05)}.day-number{font-size:.85rem;font-weight:600;line-height:1}.availability-dot{width:5px;height:5px;background:#10b981;border-radius:50%;margin-top:2px}.calendar-day.selected .availability-dot{background:#fff}.calendar-legend{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:10px;background:#f9fafb;border-radius:6px;margin-top:8px}.legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#6b7280}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-dot.available{background:#10b981}.legend-dot.unavailable{background:#ef4444}.legend-dot.selected{background:#3b82f6}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;margin-bottom:16px}.time-slot{padding:12px 8px;background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.time-slot:hover{background:#e5e7eb;border-color:#3b82f6;transform:translateY(-2px)}.time-slot.start-selected{background:linear-gradient(135deg,#10b981,#059669);border-color:#047857;color:#fff}.time-slot.end-selected{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#b91c1c;color:#fff}.time-slot.in-range{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.selected-time-summary{padding:14px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:8px;border-left:4px solid #3b82f6;color:#1e40af;font-size:.95rem;margin-bottom:12px}.time-hint{font-size:.82rem;color:#6b7280;margin:8px 0 0;text-align:center}.no-times{padding:28px;text-align:center;background:#fef2f2;border-radius:8px;color:#991b1b;font-size:.95rem}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:6px;font-weight:600;color:#374151;font-size:.9rem}.form-group input,.form-group textarea{width:100%;padding:10px;border:2px solid #e5e7eb;border-radius:8px;font-size:.95rem;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:90px}.btn-submit{width:100%;padding:13px 24px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #3b82f64d;margin-top:16px}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{padding:12px;background:#fee2e2;color:#991b1b;border-radius:8px;margin-bottom:18px;border-left:4px solid #ef4444;font-size:.9rem}.loading-message{text-align:center;padding:50px 20px;font-size:1rem;color:#6b7280}@media(max-width:768px){.modal-content.enhanced{padding:20px;max-height:95vh}.modal-title{font-size:1.3rem}.section-title{font-size:1rem}.calendar-grid{gap:3px}.calendar-day{min-height:38px}.day-number{font-size:.8rem}.time-grid{grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:6px}.time-slot{padding:10px 6px;font-size:.85rem}}@media(max-width:480px){.modal-overlay{padding:10px}.modal-content.enhanced{padding:18px;border-radius:12px}.modal-title{font-size:1.15rem;margin-bottom:16px}.calendar-day-header{font-size:.65rem;padding:4px 1px}.calendar-day{min-height:35px}.day-number{font-size:.75rem}.availability-dot{width:4px;height:4px}.time-grid{grid-template-columns:repeat(2,1fr)}.calendar-legend{gap:10px;padding:8px}.legend-item{font-size:.75rem}}.tutor-profile-page{width:100%;max-width:900px;margin:0 auto;padding:32px 20px 60px}.tutor-profile-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 4px 24px #0000000f;border:1px solid #e5e7eb}.tutor-profile-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:48px 40px 32px;position:relative;overflow:hidden}.tutor-profile-header:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120"><path d="M0,0V46.29c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113-14.29,1200,52.47V0Z" opacity=".1" fill="%23fff"/></svg>') no-repeat bottom;background-size:200% 80px;opacity:.15;animation:wave 8s ease-in-out infinite}@keyframes wave{0%,to{transform:translate(0)}50%{transform:translate(-50%)}}.tutor-profile-header-content{position:relative;display:flex;align-items:center;gap:32px}.tutor-profile-photo-wrapper{flex-shrink:0}.tutor-profile-photo{width:140px;height:140px;border-radius:24px;object-fit:cover;border:5px solid rgba(255,255,255,.3);box-shadow:0 12px 40px #0003,0 0 0 1px #ffffff1a;transition:transform .3s ease}.tutor-profile-photo:hover{transform:scale(1.05)}.tutor-profile-photo.placeholder{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:48px;font-weight:700}.tutor-profile-info{flex:1;color:#fff}.tutor-profile-name-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.tutor-profile-name{margin:0;font-size:36px;font-weight:700;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.15);letter-spacing:-.5px}.tutor-profile-rating-row{display:flex;align-items:center;gap:10px;margin-bottom:16px}.tutor-profile-rating{color:#fbbf24;font-size:18px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.tutor-profile-rating-number{font-size:16px;font-weight:600;color:#fffffff2}.tutor-profile-subjects{display:flex;flex-wrap:wrap;gap:8px}.tutor-profile-subject-tag{padding:6px 14px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;font-size:13px;font-weight:500;color:#fff;border:1px solid rgba(255,255,255,.3);transition:all .2s ease}.tutor-profile-subject-tag:hover{background:#ffffff40;transform:translateY(-1px)}.tutor-profile-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.tutor-profile-rate{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.2);text-align:center}.tutor-profile-rate .amount{font-size:32px;font-weight:800;color:#fff;display:block;line-height:1}.tutor-profile-rate .unit{font-size:14px;color:#ffffffd9;font-weight:500}.tutor-profile-cta{padding:12px 28px;border-radius:999px;border:none;background:#fff;color:#667eea;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:all .2s ease}.tutor-profile-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.tutor-profile-cta:active{transform:translateY(0)}.tutor-profile-secondary-cta{padding:10px 24px;border-radius:999px;border:2px solid white;background:transparent;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.tutor-profile-secondary-cta:hover{background:#ffffff26;transform:translateY(-1px)}.tutor-profile-secondary-cta:disabled{opacity:.5;cursor:not-allowed}.tutor-profile-content{padding:40px}.tutor-profile-section-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;margin-bottom:40px}.tutor-profile-section h2{margin:0 0 16px;font-size:20px;font-weight:700;color:#111827}.tutor-profile-list{list-style:none;padding:0;margin:0}.tutor-profile-list li{padding:10px 0;border-bottom:1px solid #f3f4f6;font-size:15px;color:#6b7280;display:flex;justify-content:space-between}.tutor-profile-list li:last-child{border-bottom:none}.tutor-profile-list strong{color:#374151;font-weight:600;margin-right:8px}.tutor-profile-bio{font-size:15px;line-height:1.7;color:#4b5563;background:#f9fafb;padding:20px;border-radius:12px;border-left:4px solid #667eea}.tutor-profile-reviews{margin-top:40px}.reviews-hint{font-size:14px;color:#9ca3af;margin-bottom:20px}.review-form{background:#f9fafb;padding:24px;border-radius:16px;margin-bottom:32px;border:1px solid #e5e7eb}.review-form-row{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.review-form-row label{font-size:14px;font-weight:600;color:#374151}.review-form-row select,.review-form-row textarea{border-radius:10px;border:1px solid #d1d5db;padding:12px 14px;font-size:14px;font-family:inherit;transition:border-color .2s ease}.review-form-row select:focus,.review-form-row textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.review-form-row textarea{min-height:100px;resize:vertical}.review-submit{border:none;border-radius:10px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;background:#667eea;color:#fff;transition:all .2s ease}.review-submit:hover{background:#5568d3;transform:translateY(-1px)}.reviews-list{display:flex;flex-direction:column;gap:16px}.review-card{padding:20px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;transition:box-shadow .2s ease;position:relative}.review-card:hover{box-shadow:0 4px 12px #0000000d}.review-card-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:12px;gap:12px}.review-card-reviewer{font-size:15px;font-weight:600;color:#111827;flex:1}.review-card-rating{color:#fbbf24;font-size:16px}.review-card-comment{font-size:14px;line-height:1.6;color:#4b5563}.review-card-date{font-size:12px;color:#9ca3af;margin-top:8px}.review-menu-wrapper{position:relative}.review-kebab{background:transparent;border:none;font-size:20px;color:#9ca3af;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s ease;line-height:1}.review-kebab:hover{background:#f3f4f6;color:#667eea}.review-kebab:active{transform:scale(.95)}.review-menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 12px #0000001a;min-width:160px;z-index:10;overflow:hidden;animation:menuFadeIn .15s ease}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.review-menu button{display:block;width:100%;padding:12px 16px;border:none;background:#fff;text-align:left;font-size:14px;color:#374151;cursor:pointer;transition:background .15s ease}.review-menu button:hover{background:#f9fafb}.review-menu button:first-child{color:#667eea;font-weight:500}.review-menu button:last-child{color:#ef4444;font-weight:500;border-top:1px solid #f3f4f6}.review-menu button:last-child:hover{background:#fef2f2}.reviews-success,.reviews-error{padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:16px}.reviews-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.reviews-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.tutor-profile-footer{padding:0 40px 32px}.tutor-profile-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#667eea;text-decoration:none;font-weight:600;transition:gap .2s ease}.tutor-profile-back:hover{gap:10px}@media(max-width:768px){.tutor-profile-page{padding:20px 12px 40px}.tutor-profile-header{padding:32px 24px 24px}.tutor-profile-header-content{flex-direction:column;text-align:center}.tutor-profile-photo{width:120px;height:120px}.tutor-profile-name{font-size:28px}.tutor-profile-name-row,.tutor-profile-subjects{justify-content:center}.tutor-profile-actions{width:100%;align-items:stretch}.tutor-profile-rate{margin:0 auto}.tutor-profile-content{padding:24px}.tutor-profile-section-grid{grid-template-columns:1fr;gap:28px}.tutor-profile-footer{padding:0 24px 24px}}.tutor-profile-loading{text-align:center;padding:60px 20px;color:#6b7280}.tutor-profile-card{animation:fadeIn .4s ease}.book-now-container{margin-top:24px;padding:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;text-align:center}.btn-book-now{padding:14px 32px;font-size:1.1rem;font-weight:600;background:#fff;color:#667eea;border:none;border-radius:8px;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #00000026;display:inline-flex;align-items:center;gap:8px}.btn-book-now:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003;background:#f8f9ff}.btn-book-now:active{transform:translateY(0)}.book-now-hint{margin:12px 0 0;color:#fff;font-size:.9rem;opacity:.95}@media(max-width:640px){.btn-book-now{width:100%;padding:12px 24px;font-size:1rem}.book-now-container{padding:20px}}.contact-page{display:flex;flex-direction:column;gap:24px}.contact-hero{margin-top:8px;padding:40px 24px;border-radius:16px;background:#fef3c7;border:1px solid #fde68a;text-align:center}.contact-hero h1{margin:0;font-size:28px;font-weight:600;letter-spacing:.04em}.contact-row{display:flex;gap:40px;padding:36px 24px;background:#fff;border-radius:16px;border:1px solid #e5e7eb}.contact-left{flex:2}.contact-right{flex:2;text-align:center}.contact-ai-title{font-size:20px;margin-bottom:8px;font-weight:600}.contact-ai-desc{font-size:14px;color:#4b5563;margin-bottom:20px}.contact-ai-card{margin:18px auto 0;max-width:360px;border-radius:16px;border:1px solid #e5e7eb;padding:20px 18px;background:#f9fafb}.contact-ai-icon{width:40px;height:40px;border-radius:999px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;margin:0 auto 10px}.contact-note{color:#4b5563;margin-bottom:20px}@media(max-width:900px){.contact-row{flex-direction:column;text-align:left}.contact-right{text-align:center}}.contact-feedback{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:32px 24px 36px;text-align:center}.contact-feedback h2{margin:0 0 18px;font-size:18px}.contact-form{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.contact-input{width:100%;border-radius:12px;border:1px solid #d1d5db;padding:10px 12px;font-size:14px;font-family:inherit}.contact-input:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33}.contact-textarea{width:100%;border-radius:12px;border:1px solid #d1d5db;padding:10px 12px;resize:vertical;font-size:14px;font-family:inherit}.contact-textarea:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33}.contact-submit{align-self:center;margin-top:4px;padding:8px 32px;border-radius:999px;border:none;background:#f59e0b;color:#fff;font-size:13px;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background .2s ease}.contact-submit:hover:not(:disabled){background:#d97706}.contact-submit:disabled{opacity:.6;cursor:not-allowed}.feedback-message{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px;text-align:center}.feedback-error{background-color:#fee;color:#c00;border:1px solid #fcc}.feedback-success{background-color:#efe;color:#060;border:1px solid #cfc}.recaptcha-container{display:flex;justify-content:center;margin:8px 0}.file-attachment-section{margin:12px 0}.file-input-label{display:inline-block;cursor:pointer}.file-input-hidden{display:none}.file-input-button{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;border:2px dashed #d1d5db;background:#f9fafb;color:#374151;font-size:14px;font-weight:500;transition:all .2s ease}.file-input-button:hover{border-color:#9ca3af;background:#f3f4f6}.file-input-hint{margin:6px 0 0;font-size:12px;color:#6b7280}.file-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.file-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;background:#f9fafb;border:1px solid #e5e7eb}.file-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.file-name{font-size:14px;color:#111827;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:12px;color:#6b7280}.file-remove{flex-shrink:0;width:24px;height:24px;border-radius:50%;border:none;background:#ef4444;color:#fff;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.file-remove:hover{background:#dc2626}@media(max-width:900px){.contact-main{flex-direction:column;gap:24px}.contact-ai{align-items:flex-start}}@media(max-width:640px){.contact-hero{padding:28px 16px}.contact-main,.contact-feedback{padding:20px 16px 24px}.contact-ai-placeholder{width:180px;height:220px}}.contact-main,.contact-row{position:relative}.contact-main:before,.contact-row:before{content:"";position:absolute;top:40px;bottom:40px;left:50%;width:1px;background:#e5e7eb}.auth-page{min-height:calc(100vh - 80px);padding:64px 16px 88px;background:#faf6eb;display:flex;justify-content:center;align-items:flex-start;box-sizing:border-box}.auth-card{width:100%;max-width:960px;background:#fff;border-radius:24px;border:1px solid #ece5d8;box-shadow:0 18px 45px #0f172a0d;padding:40px 48px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:40px;row-gap:32px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media(max-width:860px){.auth-card{grid-template-columns:minmax(0,1fr);padding:28px 22px 32px}}.auth-left{display:flex;flex-direction:column;justify-content:center}.auth-eyebrow{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:#9a7f4a;margin-bottom:8px}.auth-title{font-size:1.9rem;font-weight:700;color:#111827;margin-bottom:10px}.auth-subtitle{font-size:.95rem;line-height:1.6;color:#6b7280;margin-bottom:20px}.auth-bullet-list{list-style:none;padding:0;margin:0 0 20px}.auth-bullet-list li{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#4b5563;margin-bottom:6px}.auth-bullet-dot{width:7px;height:7px;border-radius:999px;background:#22c55e}.auth-secondary-link{font-size:.9rem;color:#4b5563}.auth-secondary-link a{color:#16a34a;font-weight:600;text-decoration:none}.auth-secondary-link a:hover{text-decoration:underline}.auth-right{border-left:1px solid #f1ebe0;padding-left:32px}@media(max-width:860px){.auth-right{border-left:none;border-top:1px solid #f1ebe0;padding-left:0;padding-top:24px}}.auth-form-title{font-size:1.3rem;font-weight:600;color:#111827;margin-bottom:6px}.auth-form-caption{font-size:.85rem;color:#6b7280;margin-bottom:20px}.auth-form{margin-top:10px}.auth-row{display:flex;gap:16px}.auth-row>.auth-field{flex:1}.auth-field{margin-bottom:16px}.auth-field label{display:block;font-size:.85rem;font-weight:600;color:#4b5563;margin-bottom:6px}.auth-field input,.auth-field select,.auth-field textarea{width:100%;border-radius:999px;border:1px solid #d1d5db;padding:11px 16px;font-size:.95rem;color:#111827;background:#f9fafb;outline:none;box-sizing:border-box}.auth-field textarea{border-radius:16px;min-height:88px;resize:vertical}.auth-field input::placeholder,.auth-field textarea::placeholder{color:#9ca3af}.auth-field input:focus,.auth-field select:focus,.auth-field textarea:focus{border-color:#a855f7;box-shadow:0 0 0 1px #a855f738;background:#fff}.auth-toggle{display:inline-flex;padding:4px;border-radius:999px;background:#f3f4ff;border:1px solid #e0e7ff;margin-bottom:18px}.auth-toggle button{border:none;background:transparent;padding:7px 14px;border-radius:999px;font-size:.85rem;font-weight:500;color:#4b5563;cursor:pointer}.auth-toggle button.is-active{background:#fff;box-shadow:0 1px 4px #94a3b873;color:#7c3aed}.subjects-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.subject-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #e5e7eb;background:#f9fafb;font-size:.8rem;color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none}.subject-pill input[type=checkbox]{display:none}.subject-pill.is-selected{border-color:#a855f7;background:#faf5ff;color:#6d28d9}.auth-helper{font-size:.8rem;color:#9ca3af;margin-top:4px}.auth-error,.auth-success{font-size:.85rem;margin:6px 0 2px}.auth-error{color:#b91c1c}.auth-success{color:#15803d}.auth-inline{display:flex;justify-content:space-between;align-items:center;margin:10px 0 16px;font-size:.83rem;color:#6b7280}.auth-inline-left{display:flex;align-items:center;gap:6px}.auth-inline input[type=checkbox]{width:15px;height:15px}.auth-card button[type=submit],.auth-submit{width:100%;margin-top:10px;border:none;border-radius:999px;padding:11px 18px;font-size:.95rem;font-weight:600;cursor:pointer;background:#22c55e;color:#fff;box-shadow:0 4px 14px #22c55e59;transition:transform .04s ease,box-shadow .08s ease,background .12s ease}.auth-card button[type=submit]:hover,.auth-submit:hover{background:#16a34a;box-shadow:0 6px 18px #16a34a66;transform:translateY(-1px)}.auth-card button[type=submit]:active,.auth-submit:active{transform:translateY(0);box-shadow:0 3px 10px #16a34a4d}.auth-card button[type=submit][disabled],.auth-submit[disabled]{opacity:.65;cursor:default;box-shadow:none}.auth-footer-text{margin-top:14px;font-size:.86rem;color:#6b7280;text-align:center}.auth-footer-text a{color:#7c3aed;font-weight:600;text-decoration:none}.auth-footer-text a:hover{text-decoration:underline}.signup-choice-page{padding:48px 16px 64px;display:flex;flex-direction:column;align-items:center;background:#fff;min-height:auto}.signup-choice-page h1{font-size:2.2rem;font-weight:700;color:#111827;margin-bottom:8px;text-align:center}.signup-choice-subtitle{font-size:.98rem;color:#6b7280;margin-bottom:28px;text-align:center}.signup-choice-grid{width:100%;max-width:720px;display:flex;flex-direction:column;gap:12px}.signup-choice-card{border-radius:18px;border:1px solid #e5e7eb;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;cursor:pointer;background:#fff;transition:box-shadow .12s ease,transform .06s ease,border-color .12s ease,background .12s ease}.signup-choice-card h2{font-size:1.2rem;font-weight:700;color:#111827;margin:0 0 4px}.signup-choice-card p{margin:0;font-size:.92rem;color:#4b5563}@media(max-width:640px){.signup-choice-card{flex-direction:column;align-items:flex-start}}.signup-choice-card.tutor-card{background:#fef3c7;border-color:#facc15}.signup-choice-card.tutor-card:hover{box-shadow:0 10px 28px #facc1559;transform:translateY(-1px)}.signup-choice-card.student-card{background:#eef2ff;border-color:#c7d2fe}.signup-choice-card.student-card:hover{box-shadow:0 10px 28px #818cf859;transform:translateY(-1px)}:root{--luxury-navy: #0f172a;--luxury-slate: #1e293b;--luxury-charcoal: #334155;--luxury-gold: #d4af37;--luxury-gold-light: #f4e4bc;--luxury-gold-dark: #a88734;--luxury-cream: #fdfbf7;--luxury-pearl: #f8f7f4;--luxury-silver: #e8e8e8;--luxury-text: #0a0a0a;--luxury-text-muted: #64748b;--luxury-success: #10b981;--luxury-error: #dc2626;--luxury-shadow-sm: 0 2px 8px rgba(15, 23, 42, .04);--luxury-shadow-md: 0 8px 32px rgba(15, 23, 42, .08);--luxury-shadow-lg: 0 20px 60px rgba(15, 23, 42, .12);--luxury-shadow-xl: 0 30px 80px rgba(15, 23, 42, .16)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.my-profile-page{min-height:calc(100vh - 80px);background:radial-gradient(circle at 20% 30%,rgba(212,175,55,.03) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(15,23,42,.03) 0%,transparent 50%),linear-gradient(135deg,var(--luxury-pearl) 0%,var(--luxury-cream) 100%);padding:4rem 2rem;font-family:Montserrat,-apple-system,BlinkMacSystemFont,sans-serif}.profile-container{max-width:1200px;margin:0 auto}.loading-state,.empty-state,.error-state{background:#fffffff2;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-radius:32px;padding:6rem 4rem;text-align:center;box-shadow:var(--luxury-shadow-lg),inset 0 1px #fffc;border:1px solid rgba(212,175,55,.1);position:relative;overflow:hidden}.loading-state:before,.empty-state:before,.error-state:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--luxury-gold) 30%,var(--luxury-gold) 70%,transparent)}.loading-state p,.empty-state p,.error-state p{color:var(--luxury-text-muted);margin-top:2rem;font-size:1.125rem;font-weight:400;letter-spacing:.02em;line-height:1.8}.empty-state h2,.error-state h2{color:var(--luxury-text);font-size:2.25rem;margin-top:2rem;font-weight:500;letter-spacing:-.03em;font-family:Cormorant Garamond,serif}.spinner{width:56px;height:56px;border:3px solid var(--luxury-silver);border-top-color:var(--luxury-gold);border-radius:50%;animation:luxurySpin 1.2s cubic-bezier(.68,-.55,.265,1.55) infinite;margin:0 auto;box-shadow:0 4px 12px #d4af3726}@keyframes luxurySpin{to{transform:rotate(360deg)}}.empty-icon,.error-icon{font-size:4.5rem;line-height:1;opacity:.4;filter:grayscale(20%)}.profile-header{background:linear-gradient(135deg,#0f172a05,#1e293b08),linear-gradient(135deg,var(--luxury-navy) 0%,var(--luxury-slate) 50%,var(--luxury-charcoal) 100%);border-radius:32px 32px 0 0;padding:4.5rem 4rem;margin-bottom:-1px;box-shadow:var(--luxury-shadow-xl),inset 0 1px #ffffff0d;position:relative;overflow:hidden}.profile-header:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 50%,rgba(212,175,55,.12) 0%,transparent 60%),radial-gradient(circle at 85% 50%,rgba(212,175,55,.08) 0%,transparent 60%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 100%);pointer-events:none}.profile-header:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--luxury-gold) 20%,var(--luxury-gold-light) 50%,var(--luxury-gold) 80%,transparent 100%);box-shadow:0 0 20px var(--luxury-gold)}.profile-header-content{position:relative;z-index:1}.profile-avatar-section{display:flex;align-items:center;gap:2.5rem}.profile-avatar-large{width:140px;height:140px;border-radius:50%;border:5px solid rgba(255,255,255,.95);box-shadow:0 12px 48px #0000004d,0 0 0 1px #d4af374d,inset 0 1px #ffffff80;object-fit:cover;background:var(--luxury-pearl);transition:all .5s cubic-bezier(.34,1.56,.64,1);position:relative}.profile-avatar-large:after{content:"";position:absolute;inset:-5px;border-radius:50%;background:linear-gradient(135deg,var(--luxury-gold),var(--luxury-gold-light));opacity:0;z-index:-1;transition:opacity .5s ease}.profile-avatar-large:hover{transform:scale(1.08) rotate(2deg);box-shadow:0 20px 64px #0006,0 0 0 1px var(--luxury-gold),inset 0 1px #fff9}.profile-avatar-large:hover:after{opacity:.3}.profile-header-text{flex:1;color:#fff}.profile-name{font-size:3rem;font-weight:500;margin:0;color:#fff;letter-spacing:-.04em;text-shadow:0 2px 12px rgba(0,0,0,.3),0 4px 24px rgba(212,175,55,.2);font-family:Cormorant Garamond,serif;line-height:1.2}.profile-role{font-size:1.25rem;margin:1rem 0 0;color:var(--luxury-gold-light);font-weight:400;letter-spacing:.15em;text-transform:uppercase;font-size:.875rem;font-family:Montserrat,sans-serif}.profile-form{background:#fffffffa;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-radius:0 0 32px 32px;box-shadow:var(--luxury-shadow-xl),inset 0 1px #ffffffe6;overflow:hidden;border:1px solid rgba(212,175,55,.08);border-top:none}.profile-section{padding:4rem;border-bottom:1px solid rgba(212,175,55,.12);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.profile-section:before{content:"";position:absolute;left:4rem;right:4rem;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.3) 50%,transparent)}.profile-section:last-of-type{border-bottom:none}.profile-section:last-of-type:before{display:none}.tutor-section{background:radial-gradient(circle at 50% 0%,rgba(212,175,55,.04) 0%,transparent 70%),linear-gradient(to bottom,rgba(253,251,247,.5) 0%,transparent 100%);position:relative}.tutor-section:after{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:120px;height:3px;background:linear-gradient(90deg,transparent,var(--luxury-gold),transparent);box-shadow:0 0 16px var(--luxury-gold)}.readonly-section{background:linear-gradient(135deg,#f8f7f499,#fdfbf74d)}.section-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid rgba(212,175,55,.15);position:relative}.section-header:after{content:"";position:absolute;bottom:-1px;left:0;width:80px;height:3px;background:linear-gradient(90deg,var(--luxury-gold),var(--luxury-gold-light));box-shadow:0 0 12px var(--luxury-gold),0 2px 8px #d4af374d}.section-title{font-size:2rem;font-weight:500;color:var(--luxury-text);margin:0 0 .75rem;letter-spacing:-.03em;font-family:Cormorant Garamond,serif}.section-subtitle{color:var(--luxury-text-muted);font-size:.95rem;display:block;font-weight:400;letter-spacing:.03em}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem}.form-field{display:flex;flex-direction:column;gap:1rem}.form-field.full-width{grid-column:1 / -1}.field-label{display:flex;align-items:center;justify-content:space-between;font-weight:500;color:var(--luxury-charcoal);font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;font-family:Montserrat,sans-serif}.edit-btn{background:linear-gradient(135deg,#ffffffe6,#f8f7f4cc);border:1.5px solid rgba(212,175,55,.25);color:var(--luxury-gold-dark);padding:.5rem 1.25rem;border-radius:10px;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);text-transform:uppercase;letter-spacing:.1em;box-shadow:0 2px 8px #d4af3714,inset 0 1px #fffc;position:relative;overflow:hidden}.edit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,var(--luxury-gold-light),var(--luxury-gold));transform:translate(-50%,-50%);transition:width .5s ease,height .5s ease;opacity:.3}.edit-btn:hover{color:var(--luxury-text);border-color:var(--luxury-gold);transform:translateY(-2px);box-shadow:0 6px 20px #d4af3740,inset 0 1px #fff}.edit-btn:hover:before{width:300px;height:300px}.edit-btn:active{transform:translateY(-1px)}.form-input,.form-select,.form-textarea{width:100%;padding:1rem 1.5rem;border:2px solid rgba(212,175,55,.15);border-radius:16px;font-size:1.0625rem;color:var(--luxury-text);background:linear-gradient(135deg,#fffffff2,#f8f7f4e6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .4s cubic-bezier(.4,0,.2,1);font-family:Montserrat,sans-serif;font-weight:400;letter-spacing:.01em;box-shadow:var(--luxury-shadow-sm),inset 0 1px #ffffff80}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:#d4af3759;box-shadow:0 4px 16px #d4af3714,inset 0 1px #fff9;transform:translateY(-1px)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--luxury-gold);box-shadow:0 0 0 4px #d4af371f,0 8px 24px #d4af3726,inset 0 1px #fffc;background:#fff;transform:translateY(-2px)}.form-input::placeholder,.form-textarea::placeholder{color:var(--luxury-text-muted);opacity:.5;font-weight:300}.form-textarea{resize:vertical;min-height:160px;line-height:1.8}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.5rem center;padding-right:3.5rem}.input-with-prefix{display:flex;align-items:center;gap:1rem}.input-prefix,.input-suffix{font-weight:600;color:var(--luxury-gold-dark);font-size:1.125rem;font-family:Cormorant Garamond,serif}.form-input.with-prefix{flex:1}.field-value{padding:1rem 1.5rem;background:linear-gradient(135deg,#f8f7f480,#fdfbf7cc);border:2px solid transparent;border-radius:16px;color:var(--luxury-text);font-size:1.0625rem;min-height:56px;display:flex;align-items:center;transition:all .3s ease;font-weight:400;letter-spacing:.01em;box-shadow:inset 0 1px #ffffff80}.field-value:hover{background:linear-gradient(135deg,#f8f7f4cc,#fdfbf7);border-color:#d4af3726;box-shadow:0 2px 8px #d4af370d,inset 0 1px #fff9}.field-value.readonly{background:linear-gradient(135deg,#f1f3f599,#eceef066);color:var(--luxury-text-muted);border-color:#e2e8f066;justify-content:space-between}.field-value.price{font-weight:600;color:var(--luxury-success);font-size:1.5rem;letter-spacing:-.02em;font-family:Cormorant Garamond,serif}.field-value.bio-text{align-items:flex-start;line-height:1.8;white-space:pre-wrap}.text-muted{color:var(--luxury-text-muted);font-style:italic;opacity:.6;font-weight:300}.readonly-badge{background:linear-gradient(135deg,var(--luxury-gold-light),var(--luxury-gold));color:var(--luxury-navy);padding:.5rem 1.25rem;border-radius:10px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 4px 12px #d4af3740,inset 0 1px #fff6}.status-badge{padding:.625rem 1.5rem;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;box-shadow:var(--luxury-shadow-md),inset 0 1px #ffffff4d}.status-badge.active{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.status-badge.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.status-badge.suspended{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.subject-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.subject-tag{padding:1.25rem 1.5rem;border:2px solid rgba(212,175,55,.2);border-radius:16px;background:linear-gradient(135deg,#fffffff2,#f8f7f4e6);color:var(--luxury-text);cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);font-size:.95rem;font-weight:500;text-align:center;position:relative;overflow:hidden;letter-spacing:.02em;box-shadow:var(--luxury-shadow-sm),inset 0 1px #fff9}.subject-tag:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,var(--luxury-gold-light),var(--luxury-gold));opacity:0;transition:opacity .4s ease}.subject-tag:after{content:"";position:absolute;inset:-2px;border-radius:16px;padding:2px;background:linear-gradient(135deg,var(--luxury-gold),var(--luxury-gold-light));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease}.subject-tag:hover{border-color:var(--luxury-gold);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #d4af3733,inset 0 1px #fffc}.subject-tag:hover:before{opacity:.15}.subject-tag:hover:after{opacity:1}.subject-tag.selected{background:linear-gradient(135deg,var(--luxury-gold),var(--luxury-gold-dark));color:#fff;border-color:transparent;box-shadow:0 12px 40px #d4af3766,inset 0 1px #ffffff40,0 0 20px #d4af374d;transform:translateY(-3px) scale(1.02)}.subject-tag.selected:before{opacity:0}.subject-tag.selected:after{opacity:0}.subject-tag.selected:hover{box-shadow:0 16px 48px #d4af3780,inset 0 1px #ffffff4d,0 0 24px #d4af3766;transform:translateY(-5px) scale(1.03)}.subject-badges{display:flex;flex-wrap:wrap;gap:1rem}.subject-badge{background:linear-gradient(135deg,#f4e4bc66,#e8d4b84d);color:var(--luxury-gold-dark);padding:.75rem 1.5rem;border-radius:12px;font-size:.95rem;font-weight:600;border:1.5px solid rgba(212,175,55,.3);box-shadow:0 4px 12px #d4af371f,inset 0 1px #ffffff80;letter-spacing:.02em}.field-hint{display:block;margin-top:.75rem;color:var(--luxury-text-muted);font-size:.9rem;line-height:1.7;font-weight:400;letter-spacing:.01em}.field-hint a{color:var(--luxury-gold-dark);text-decoration:none;font-weight:500;transition:all .3s ease;border-bottom:1px solid transparent}.field-hint a:hover{color:var(--luxury-gold);border-bottom-color:var(--luxury-gold)}.alert{display:flex;align-items:center;gap:1.25rem;padding:1.5rem 2rem;border-radius:16px;margin:2.5rem 4rem;font-size:1rem;font-weight:500;border:2px solid;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);letter-spacing:.01em;box-shadow:var(--luxury-shadow-md)}.alert-icon{font-size:1.75rem;flex-shrink:0}.alert-message{flex:1}.alert-error{background:linear-gradient(135deg,#fef2f2f2,#fee2e2e6);color:#991b1b;border-color:#dc26264d}.alert-success{background:linear-gradient(135deg,#f0fdf4f2,#d1fae5e6);color:#166534;border-color:#10b9814d}.form-actions{padding:3rem 4rem;background:linear-gradient(to top,rgba(248,247,244,.5),transparent);border-top:1px solid rgba(212,175,55,.12);display:flex;justify-content:flex-end}.submit-btn{background:linear-gradient(135deg,var(--luxury-navy),var(--luxury-slate),var(--luxury-charcoal));color:#fff;border:none;padding:1.25rem 4rem;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 8px 32px #0f172a4d,inset 0 1px #ffffff1a,0 0 0 1px #d4af3733;display:flex;align-items:center;gap:1rem;text-transform:uppercase;letter-spacing:.1em;position:relative;overflow:hidden;font-family:Montserrat,sans-serif}.submit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.4),transparent);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.submit-btn:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 16px 48px #0f172a66,inset 0 1px #ffffff26,0 0 0 2px var(--luxury-gold),0 0 32px #d4af374d}.submit-btn:hover:not(:disabled):before{width:500px;height:500px}.submit-btn:active:not(:disabled){transform:translateY(-2px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn span{position:relative;z-index:1}.btn-spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:luxurySpin .8s linear infinite}@media(max-width:768px){.my-profile-page{padding:2rem 1rem}.profile-header{padding:3rem 2.5rem;border-radius:28px 28px 0 0}.profile-avatar-section{flex-direction:column;text-align:center;gap:2rem}.profile-avatar-large{width:120px;height:120px}.profile-name{font-size:2.25rem}.profile-section{padding:3rem 2.5rem}.profile-section:before{left:2.5rem;right:2.5rem}.section-header{margin-bottom:2.5rem}.form-grid{grid-template-columns:1fr;gap:2rem}.subject-grid{grid-template-columns:1fr}.form-actions{padding:2.5rem}.submit-btn{width:100%;justify-content:center;padding:1.25rem 2rem}.alert{margin:2rem 2.5rem}}@media(max-width:480px){.profile-header{padding:2.5rem 2rem}.profile-name{font-size:2rem}.profile-section{padding:2.5rem 2rem}.section-title{font-size:1.75rem}.field-label{flex-direction:column;align-items:flex-start;gap:.75rem}.edit-btn{align-self:flex-start}}@keyframes luxuryFadeIn{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-section{animation:luxuryFadeIn .8s cubic-bezier(.34,1.56,.64,1)}.profile-section:nth-child(2){animation-delay:.15s}.profile-section:nth-child(3){animation-delay:.3s}.profile-section:nth-child(4){animation-delay:.45s}.form-field{transition:transform .3s ease}.form-field:focus-within{transform:translate(6px)}@media print{.my-profile-page{background:#fff}.edit-btn,.submit-btn{display:none}.profile-header{background:var(--luxury-navy);box-shadow:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.clickable-avatar-wrapper{position:relative;display:inline-block}.clickable-avatar{width:140px;height:140px;border-radius:50%;position:relative;cursor:pointer;overflow:hidden;border:5px solid rgba(255,255,255,.95);box-shadow:0 12px 48px #0000004d,0 0 0 1px #d4af374d,inset 0 1px #ffffff80;transition:all .4s cubic-bezier(.34,1.56,.64,1)}.clickable-avatar:hover{transform:scale(1.08);box-shadow:0 20px 64px #0006,0 0 0 2px var(--luxury-gold, #d4af37),inset 0 1px #fff9,0 0 32px #d4af374d}.clickable-avatar.uploading{cursor:wait;pointer-events:none}.avatar-image{width:100%;height:100%;object-fit:cover;display:block;transition:all .3s ease}.clickable-avatar:hover .avatar-image{filter:brightness(.7)}.avatar-overlay{position:absolute;inset:0;background:#0f172ad9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;opacity:0;transition:opacity .3s ease;color:#fff}.clickable-avatar:hover .avatar-overlay,.clickable-avatar.uploading .avatar-overlay{opacity:1}.camera-icon{font-size:2.5rem;line-height:1;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.overlay-text{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--luxury-gold-light, #f4e4bc)}.upload-spinner-small{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--luxury-gold, #d4af37);border-radius:50%;animation:spin .8s linear infinite}.hidden-file-input{display:none}.avatar-upload-error{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:1rem;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,#fef2f2f2,#fee2e2e6);color:#991b1b;border:2px solid rgba(220,38,38,.2);border-radius:12px;font-size:.875rem;font-weight:500;box-shadow:0 4px 12px #dc262626;white-space:nowrap;z-index:10;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.error-icon{font-size:1.125rem;flex-shrink:0}@media(max-width:768px){.clickable-avatar{width:120px;height:120px}.camera-icon{font-size:2rem}}@media(max-width:480px){.clickable-avatar{width:100px;height:100px}.camera-icon{font-size:1.75rem}.overlay-text{font-size:.75rem}.avatar-upload-error{font-size:.75rem;padding:.625rem .875rem;max-width:280px;white-space:normal;text-align:center}}.schedule-editor{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;margin-top:24px}.schedule-header{margin-bottom:24px}.schedule-header h3{margin:0 0 8px;color:#1a1a1a;font-size:1.5rem}.schedule-subtitle{margin:0;color:#666;font-size:.95rem}.day-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e5e7eb;padding-bottom:4px;overflow-x:auto}.day-tab{padding:10px 16px;border:none;background:transparent;cursor:pointer;font-weight:500;color:#666;border-radius:8px 8px 0 0;transition:all .2s;position:relative;display:flex;align-items:center;gap:6px;white-space:nowrap}.day-tab:hover{background:#f3f4f6;color:#1a1a1a}.day-tab.active{background:#3b82f6;color:#fff}.day-tab.has-slots{font-weight:600}.slot-count{background:#ffffffe6;color:#3b82f6;padding:2px 6px;border-radius:10px;font-size:.75rem;font-weight:600}.day-tab.active .slot-count{background:#ffffffe6;color:#3b82f6}.day-schedule{background:#f9fafb;border-radius:8px;padding:20px;margin-bottom:24px}.day-schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.day-schedule-header h4{margin:0;color:#1a1a1a;font-size:1.125rem}.day-actions{display:flex;gap:8px}.btn-copy-all,.btn-clear-day{padding:6px 12px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.btn-copy-all:hover{background:#f3f4f6;border-color:#9ca3af}.btn-clear-day:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.time-slots-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.no-slots{text-align:center;padding:32px;color:#9ca3af}.no-slots p{margin:0}.time-slot-row{display:flex;align-items:center;gap:12px;background:#fff;padding:12px;border-radius:8px;border:1px solid #e5e7eb}.time-inputs{display:flex;align-items:center;gap:12px;flex:1}.time-input-group{display:flex;flex-direction:column;gap:4px}.time-input-group label{font-size:.75rem;color:#6b7280;font-weight:500}.time-input-group input[type=time]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.time-input-group input[type=time]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.time-separator{color:#9ca3af;font-size:1.25rem;margin-top:20px}.btn-remove-slot{padding:8px 12px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;cursor:pointer;color:#ef4444;font-size:1.125rem;transition:all .2s;flex-shrink:0}.btn-remove-slot:hover{background:#fee2e2;border-color:#fca5a5}.btn-add-slot{width:100%;padding:12px;border:2px dashed #d1d5db;background:#fff;border-radius:8px;cursor:pointer;color:#3b82f6;font-weight:500;transition:all .2s}.btn-add-slot:hover{border-color:#3b82f6;background:#eff6ff}.schedule-overview{border-top:2px solid #e5e7eb;padding-top:24px}.schedule-overview h4{margin:0 0 16px;color:#1a1a1a;font-size:1.125rem}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.overview-day{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.overview-day-name{font-weight:600;color:#1a1a1a;margin-bottom:8px;font-size:.875rem}.overview-slots{display:flex;flex-direction:column;gap:4px}.overview-slot{font-size:.8rem;color:#059669;background:#d1fae5;padding:4px 8px;border-radius:4px;text-align:center}.overview-empty{font-size:.8rem;color:#9ca3af;font-style:italic;text-align:center}@media(max-width:768px){.schedule-editor{padding:16px}.day-tabs{gap:4px}.day-tab{padding:8px 12px;font-size:.875rem}.time-inputs{flex-direction:column;align-items:stretch}.time-separator{display:none}.day-actions{flex-direction:column}.overview-grid{grid-template-columns:1fr}}.session-requests-list{padding:20px}.loading-state,.error-state,.empty-state{text-align:center;padding:60px 20px}.loading-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 20px}.error-icon,.empty-icon{font-size:3rem;margin-bottom:16px}.error-state h3,.empty-state h3{margin:0 0 12px;font-size:1.5rem;color:#1f2937}.error-state p,.empty-state p{margin:0 0 20px;color:#6b7280}.retry-button{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem}.retry-button:hover{background:#2563eb}.requests-section{margin-bottom:40px}.section-title{font-size:1.5rem;margin:0 0 20px;color:#1f2937;font-weight:600;font-family:sans-serif}.section-empty{padding:40px;text-align:center;background:#f9fafb;border-radius:8px;color:#6b7280}.requests-grid{display:grid;gap:20px}.request-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;border-left:4px solid #e5e7eb}.request-card.pending{border-left-color:#f59e0b;background:#fffbeb}.request-card.accepted{border-left-color:#10b981;background:#f0fdf4}.request-card.declined{border-left-color:#ef4444;background:#fef2f2}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.student-info{display:flex;gap:12px;align-items:center}.student-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600;flex-shrink:0}.student-details{flex:1}.student-name{margin:0 0 4px;font-size:1.1rem;font-weight:600;color:#1f2937}.student-email{margin:0;font-size:.9rem;color:#6b7280}.status-badge{padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.card-body{margin-bottom:20px}.request-info{display:flex;flex-direction:column;gap:12px}.info-row{display:flex;gap:8px}.info-label{font-weight:600;color:#6b7280;min-width:120px;flex-shrink:0}.info-value{color:#1f2937}.message-row{flex-direction:column}.message-text{margin:4px 0 0;padding:12px;background:#fff;border-radius:6px;color:#374151;line-height:1.5;white-space:pre-wrap}.card-actions{display:flex;gap:12px;justify-content:flex-end}.btn-decline,.btn-accept{padding:10px 24px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-decline{background:#fee2e2;color:#991b1b}.btn-decline:hover:not(:disabled){background:#fecaca}.btn-accept{background:#d1fae5;color:#065f46}.btn-accept:hover:not(:disabled){background:#a7f3d0}.btn-decline:disabled,.btn-accept:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.session-requests-list{padding:16px}.section-title{font-size:1.3rem}.request-card{padding:20px}.card-header{flex-direction:column;gap:12px}.status-badge{align-self:flex-start}.info-row{flex-direction:column;gap:4px}.info-label{min-width:auto}.card-actions{flex-direction:column}.btn-decline,.btn-accept{width:100%}}@media(max-width:480px){.session-requests-list{padding:12px}.request-card{padding:16px}.student-avatar{width:40px;height:40px;font-size:1rem}.student-name{font-size:1rem}.student-email{font-size:.85rem}}.session-calendar{width:100%;max-width:1400px;margin:0 auto}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.calendar-nav{display:flex;gap:8px}.nav-btn,.today-btn{padding:8px 16px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s}.nav-btn:hover,.today-btn:hover{background:#f9fafb;border-color:#3b82f6}.today-btn{font-weight:600;color:#3b82f6}.calendar-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.calendar-legend{display:flex;gap:16px}.legend-item{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#6b7280}.legend-dot{width:12px;height:12px;border-radius:50%}.legend-dot.booked{background:#3b82f6}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.calendar-day-header{background:#f9fafb;padding:12px;text-align:center;font-weight:600;font-size:.85rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.calendar-day{background:#fff;min-height:120px;padding:8px;position:relative;transition:all .2s}.calendar-day.other-month{background:#f9fafb;opacity:.5}.calendar-day.today{background:#eff6ff;border:2px solid #3b82f6}.calendar-day.has-events{background:#f0f9ff}.calendar-day:hover{background:#fef3c7;transform:scale(1.02);box-shadow:0 4px 12px #0000001a;z-index:10}.day-number{font-size:.9rem;font-weight:600;color:#374151;margin-bottom:8px}.calendar-day.today .day-number{color:#3b82f6;font-size:1.1rem}.day-sessions{display:flex;flex-direction:column;gap:4px}.session-indicator{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:6px 8px;border-radius:6px;font-size:.75rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #3b82f633}.session-indicator:hover{transform:translateY(-2px);box-shadow:0 4px 8px #3b82f64d}.session-time{font-weight:600;margin-bottom:2px}.session-student{font-size:.7rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.more-sessions{font-size:.7rem;color:#6b7280;text-align:center;padding:4px;background:#f3f4f6;border-radius:4px;font-weight:500}.session-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.session-modal{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.session-modal h3{margin:0 0 24px;font-size:1.5rem;color:#1f2937}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:2rem;color:#9ca3af;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-content{display:flex;flex-direction:column;gap:20px}.modal-section{display:flex;flex-direction:column;gap:8px}.modal-label{font-size:.85rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.modal-value{font-size:1rem;color:#1f2937;line-height:1.5}.student-info{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px}.student-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600}.student-name{font-weight:600;font-size:1.1rem;color:#1f2937}.student-email{font-size:.85rem;color:#6b7280}.message-box{padding:12px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6;white-space:pre-wrap}.status-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;text-transform:uppercase}.status-badge.status-accepted{background:#d1fae5;color:#065f46}.status-badge.status-pending{background:#fef3c7;color:#92400e}.status-badge.status-declined{background:#fee2e2;color:#991b1b}.calendar-loading{text-align:center;padding:60px 20px;color:#6b7280;font-size:1.1rem}@media(max-width:1024px){.calendar-header{flex-direction:column;gap:16px;text-align:center}.calendar-nav{order:2}.calendar-title{order:1}.calendar-legend{order:3}}@media(max-width:768px){.calendar-day{min-height:80px;padding:4px}.day-number{font-size:.8rem}.session-indicator{padding:4px 6px;font-size:.65rem}.session-time{font-size:.65rem}.session-student{font-size:.6rem}.calendar-day-header{padding:8px 4px;font-size:.7rem}.session-modal{padding:24px}.session-modal h3{font-size:1.2rem}}@media(max-width:480px){.calendar-header{padding:12px}.calendar-title{font-size:1.2rem}.nav-btn,.today-btn{padding:6px 12px;font-size:.8rem}.calendar-day{min-height:60px}.session-indicator{font-size:.6rem}.session-time,.session-student{display:none}.session-indicator:after{content:"•";font-size:1.5rem}}.schedule-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:40px 20px;min-width:1100px}.schedule-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;overflow:hidden}.schedule-page-header{padding:32px 40px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-align:center}.schedule-page-header h1{margin:0 0 8px;font-size:2rem;font-weight:700}.schedule-page-header p{margin:0;font-size:1.1rem;opacity:.95}.admin-tabs{display:flex;background:#fff;border-bottom:2px solid #e5e7eb;padding:0 24px;gap:4px}.admin-tab{padding:16px 28px;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;position:relative;display:flex;align-items:center;gap:8px;white-space:nowrap}.admin-tab:hover{color:#3b82f6;background:#f0f9ff}.admin-tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#eff6ff}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#ef4444;color:#fff;border-radius:10px;font-size:.75rem;font-weight:700;line-height:1}.tab-content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.availability-tab{padding:32px 40px}.success-message{padding:14px 20px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-radius:8px;margin-bottom:20px;font-weight:500;border-left:4px solid #10b981;animation:slideDown .3s ease-out}.error-message{padding:14px 20px;background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border-radius:8px;margin-bottom:20px;font-weight:500;border-left:4px solid #ef4444;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.schedule-actions{margin-top:32px;padding-top:24px;border-top:2px solid #e5e7eb;display:flex;justify-content:center}.btn-save-schedule{padding:14px 40px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #3b82f64d;display:flex;align-items:center;gap:8px}.btn-save-schedule:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.btn-save-schedule:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.schedule-help{margin-top:32px;padding:24px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;border-left:4px solid #f59e0b}.schedule-help h3{margin:0 0 16px;font-size:1.2rem;color:#92400e}.schedule-help ul{margin:0;padding-left:24px;color:#78350f;line-height:1.8}.schedule-help li{margin-bottom:12px}.schedule-help li:last-child{margin-bottom:0}.schedule-help strong{color:#92400e;font-weight:600}.requests-tab{padding:32px 40px}.calendar-tab{padding:32px 40px;background:#f9fafb;min-height:600px}.calendar-intro{margin-bottom:32px;text-align:center}.calendar-intro h2{margin:0 0 8px;font-size:1.8rem;color:#1f2937}.calendar-intro p{font-size:1rem;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.6}.empty-state{padding:80px 40px;text-align:center}.empty-icon{font-size:4rem;margin-bottom:20px}.empty-state h2{margin:0 0 12px;font-size:1.8rem;color:#1f2937}.empty-state p{margin:0;font-size:1.1rem;color:#6b7280}@media(max-width:1024px){.schedule-page{padding:30px 15px}.schedule-container{border-radius:12px}.schedule-page-header{padding:24px 32px}.schedule-page-header h1{font-size:1.75rem}.availability-tab,.requests-tab,.calendar-tab{padding:24px 32px}}@media(max-width:768px){.schedule-page{padding:20px 10px}.schedule-page-header{padding:20px 24px}.schedule-page-header h1{font-size:1.5rem}.schedule-page-header p{font-size:1rem}.admin-tabs{padding:0 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{padding:14px 20px;font-size:.9rem}.availability-tab,.requests-tab,.calendar-tab{padding:20px 24px}.btn-save-schedule{width:100%;justify-content:center}.schedule-help{padding:20px}.schedule-help h3{font-size:1.1rem}.schedule-help ul{padding-left:20px;font-size:.95rem}.calendar-intro h2{font-size:1.5rem}.calendar-intro p{font-size:.95rem}}@media(max-width:480px){.schedule-page{padding:15px 5px}.schedule-page-header{padding:16px 20px}.schedule-page-header h1{font-size:1.3rem}.schedule-page-header p{font-size:.9rem}.admin-tabs{padding:0 8px}.admin-tab{padding:12px 16px;font-size:.85rem;flex-direction:column;gap:4px}.admin-tab .tab-badge{position:absolute;top:6px;right:6px}.availability-tab,.requests-tab,.calendar-tab{padding:16px 20px}.btn-save-schedule{padding:12px 32px;font-size:1rem}.schedule-help{padding:16px}.schedule-help h3{font-size:1rem}.schedule-help ul{font-size:.9rem}.empty-icon{font-size:3rem}.empty-state h2{font-size:1.5rem}.empty-state p{font-size:1rem}.calendar-intro{margin-bottom:24px}.calendar-intro h2{font-size:1.3rem}.calendar-intro p{font-size:.9rem}}.admin-tab:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.btn-save-schedule:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}@media(prefers-reduced-motion:reduce){.tab-content,.success-message,.error-message,.btn-save-schedule,.admin-tab{animation:none;transition:none}}.coming-soon-page{display:flex;justify-content:center;align-items:center;min-height:60vh}.coming-soon-card{max-width:560px;width:100%;padding:32px 28px;border-radius:16px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 10px 30px #0f172a14;text-align:left}.coming-soon-card h1{margin:0 0 16px;font-size:26px;font-weight:700}.coming-soon-card p{font-size:14px;color:#4b5563;margin:6px 0 12px}.coming-soon-card ul{margin:0 0 18px 18px;padding:0;font-size:14px;color:#374151}.coming-soon-card li{margin-bottom:4px}.coming-soon-button{margin-top:8px;display:inline-block}.coming-soon-contact{font-size:14px;color:#4b5563;margin-top:12px}.contact-link{color:#16a34a;font-weight:600;text-decoration:none}.contact-link:hover{text-decoration:underline}.how-it-works-page{display:flex;flex-direction:column}.how-hero-section{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;min-height:600px;background:linear-gradient(135deg,#1e293b,#0f172a);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 20px}.how-hero-students{background-image:linear-gradient(#000000a6,#000000a6),url(../assets/how-it-works-students.png)}.how-hero-tutors{background-image:linear-gradient(#000000a6,#000000a6),url(../assets/how-it-works-tutors.png)}.how-hero-cip{background-image:linear-gradient(#000000a6,#000000a6),url(../assets/how-it-works-cip.png)}.how-hero-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(22,163,74,.08) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(249,115,22,.08) 0%,transparent 50%);pointer-events:none;animation:heroGlow 8s ease-in-out infinite}@keyframes heroGlow{0%,to{opacity:.5}50%{opacity:1}}.how-hero-overlay{position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.how-hero-title{font-size:72px;font-weight:800;color:#fff;margin:0;line-height:1.2;letter-spacing:.02em;text-shadow:0 4px 20px rgba(0,0,0,.3)}.how-hero-highlight{color:#16a34a;display:inline-block;position:relative}.how-hero-highlight:after{content:"";position:absolute;bottom:8px;left:0;right:0;height:12px;background:#16a34a33;z-index:-1}.how-content-section{background:#fafaf9;padding:80px 20px}.how-content-container{max-width:900px;margin:0 auto}.how-subtitle{font-size:40px;font-weight:600;color:#f97316;text-align:center;margin:0 0 20px}.how-description{font-size:17px;color:#4b5563;text-align:center;line-height:1.7;max-width:800px;margin:0 auto 60px}.how-step-section{background:#fff;border-radius:12px;padding:40px;margin-bottom:40px;box-shadow:0 2px 8px #0000000d}.how-step-number-large{width:70px;height:70px;background:linear-gradient(135deg,#f97316,#fb923c);color:#fff;font-size:36px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.how-step-title-large{font-size:28px;font-weight:600;color:#f97316;margin:0 0 16px;text-align:center}.how-step-description-large{font-size:16px;color:#4b5563;line-height:1.7;margin:0 0 16px;text-align:center}.how-tutor-showcase{display:flex;gap:20px;justify-content:center;margin-top:32px;flex-wrap:wrap}.how-tutor-sample-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px;width:200px;transition:all .3s ease}.how-tutor-sample-card:hover{border-color:#f97316;transform:translateY(-4px);box-shadow:0 4px 12px #f9731626}.how-tutor-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#fb923c,#f97316);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:600}.how-tutor-info{text-align:center}.how-tutor-name{font-size:16px;font-weight:600;color:#111827;margin-bottom:4px}.how-tutor-rating{font-size:14px;color:#fbbf24;margin-bottom:4px}.how-tutor-price{font-size:15px;font-weight:600;color:#16a34a}.how-chat-mockup{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;margin-top:32px;max-width:600px;margin-left:auto;margin-right:auto}.how-chat-message{display:flex;gap:12px;margin-bottom:20px;align-items:flex-start}.how-chat-message.sent{flex-direction:row-reverse}.how-chat-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#fb923c,#f97316);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;flex-shrink:0}.how-chat-bubble{background:#f3f4f6;border-radius:16px;padding:12px 16px;max-width:400px}.how-chat-message.sent .how-chat-bubble{background:#ffedd5}.how-chat-bubble p{margin:0 0 6px;font-size:14px;color:#111827;line-height:1.5}.how-chat-time{font-size:11px;color:#6b7280}.how-notification-mockup{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-top:32px;max-width:600px;margin-left:auto;margin-right:auto}.how-notification{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:12px;display:flex;gap:16px;align-items:flex-start}.how-notification:last-child{margin-bottom:0}.how-notification-icon{font-size:28px;flex-shrink:0}.how-notification-content strong{display:block;font-size:15px;color:#111827;margin-bottom:4px}.how-notification-content p{margin:0;font-size:14px;color:#6b7280}.how-profile-preview{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:24px;margin-top:32px}.how-profile-header{display:flex;gap:20px;align-items:center;margin-bottom:20px}.how-profile-avatar-large{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#fb923c,#f97316);color:#fff;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:600;flex-shrink:0}.how-profile-details h4{margin:0 0 8px;font-size:24px;color:#111827}.how-profile-subjects{font-size:14px;color:#6b7280;margin-bottom:8px}.how-profile-rate{font-size:20px;font-weight:600;color:#16a34a}.how-profile-bio{font-size:15px;color:#4b5563;line-height:1.6;font-style:italic;padding:16px;background:#fff;border-radius:8px}.how-checklist{background:#f9fafb;border-radius:12px;padding:24px;margin-top:32px;max-width:500px;margin-left:auto;margin-right:auto}.how-checklist-item{display:flex;gap:16px;align-items:center;padding:12px 0}.how-checklist-icon{width:32px;height:32px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.how-checklist-text{font-size:15px;color:#111827}.how-approval-mockup{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac;border-radius:12px;padding:32px;margin-top:32px;text-align:center}.how-approval-header{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px}.how-approval-icon{font-size:48px}.how-approval-header h4{margin:0;font-size:24px;color:#166534}.how-approval-mockup p{margin:0 0 16px;font-size:16px;color:#166534}.how-approval-next{background:#fff;border-radius:8px;padding:16px;font-size:14px;color:#166534}.how-approval-next strong{display:block;margin-bottom:8px}.how-learning-options{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:24px;margin:40px 0;text-align:center}.how-learning-text{margin:0;font-size:16px;color:#9a3412;line-height:1.7}.how-benefits-section{margin:60px 0}.how-benefits-title{font-size:32px;font-weight:600;color:#111827;text-align:center;margin:0 0 40px}.how-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.how-benefit-card{text-align:center;padding:24px}.how-benefit-icon{font-size:48px;margin-bottom:16px}.how-benefit-title{font-size:16px;font-weight:600;color:#111827;margin:0 0 8px;letter-spacing:.5px}.how-benefit-text{font-size:14px;color:#6b7280;margin:0;line-height:1.6}.how-eligibility-section{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:32px;margin:40px 0}.how-eligibility-title{font-size:24px;font-weight:600;color:#9a3412;margin:0 0 16px;text-align:center}.how-eligibility-text{margin:0;font-size:15px;color:#78350f;line-height:1.7;text-align:center}.how-guarantee-section{text-align:center;padding:50px 20px;margin:40px 0}.how-guarantee-badge{width:100px;height:100px;border-radius:50%;border:4px solid #16a34a;margin:0 auto 24px;display:flex;align-items:center;justify-content:center}.how-guarantee-icon{font-size:48px;color:#16a34a}.how-guarantee-title{font-size:28px;font-weight:600;color:#111827;margin:0 0 12px}.how-guarantee-text{font-size:16px;color:#6b7280;max-width:600px;margin:0 auto;line-height:1.7}.how-cta-section{text-align:center;padding:40px 0 0}.how-cta-button{display:inline-block;padding:18px 48px;background:#16a34a;color:#fff;font-size:18px;font-weight:600;border-radius:999px;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 12px #16a34a4d}.how-cta-button:hover{background:#15803d;transform:translateY(-2px);box-shadow:0 6px 16px #16a34a66}@media(max-width:1024px){.how-hero-title{font-size:56px}.how-hero-section{min-height:500px;padding:80px 20px}.how-subtitle{font-size:32px}.how-benefits-grid{grid-template-columns:1fr;gap:24px}}@media(max-width:768px){.how-hero-section{min-height:450px;padding:60px 20px}.how-hero-title{font-size:44px}.how-hero-highlight:after{height:8px;bottom:4px}.how-content-section{padding:50px 20px}.how-subtitle{font-size:28px}.how-description{font-size:16px}.how-step-section{padding:30px 24px}.how-step-number-large{width:60px;height:60px;font-size:32px}.how-step-title-large{font-size:24px}.how-tutor-showcase{flex-direction:column;align-items:center}.how-chat-bubble{max-width:280px}.how-profile-header{flex-direction:column;text-align:center}.how-cta-button{padding:14px 36px;font-size:16px}}@media(max-width:480px){.how-hero-section{min-height:400px;padding:50px 16px}.how-hero-title{font-size:36px}.how-subtitle{font-size:24px}.how-step-section{padding:24px 16px}.how-step-title-large{font-size:20px}.how-step-description-large{font-size:15px}.how-tutor-sample-card{width:100%}}.chat-list-page{width:900px;margin:40px auto 64px;padding:0 16px}.chat-list-page h1{font-size:2.2rem;font-weight:700;margin-bottom:24px}.chat-list-empty{font-size:.95rem;color:#6b7280;margin-top:8px}.chat-list-error{font-size:.95rem;color:#b91c1c;margin-top:8px}.chat-list-section{margin-top:8px}.chat-list{display:flex;flex-direction:column;gap:14px}.chat-card{width:100%;border:none;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:18px;padding:14px 18px;box-shadow:0 4px 14px #0f172a14;text-align:left;transition:transform .12s ease-out,box-shadow .12s ease-out,background-color .12s ease-out}.chat-card:hover,.chat-card:focus-visible{transform:translateY(-1px);box-shadow:0 8px 22px #0f172a1f;background-color:#f8fafc;outline:none}.chat-card-content{display:flex;align-items:center;gap:12px}.chat-card-avatar{flex-shrink:0;width:46px;height:46px;border-radius:999px;background:linear-gradient(135deg,#f97316,#fb923c);display:flex;align-items:center;justify-content:center;overflow:hidden}.chat-card-avatar-fallback{font-weight:600;font-size:1.1rem;color:#fff}.chat-card-main{flex:1;display:flex;flex-direction:column;justify-content:center}.chat-card-top{display:flex;align-items:center;gap:6px}.chat-card-name{font-size:1.05rem;font-weight:600;color:#0f172a;white-space:nowrap}.chat-card-time{margin-left:4px;font-size:.8rem;color:#9ca3af;white-space:nowrap}.chat-card-subtitle{margin-top:4px;font-size:.85rem;color:#6b7280;white-space:normal}.chat-card-unread{flex-shrink:0;min-width:22px;padding:2px 7px;border-radius:999px;font-size:.75rem;font-weight:600;background:#4f46e5;color:#fff;text-align:center}@media(max-width:640px){.chat-list-page{margin:24px auto 40px}.chat-card{padding:12px 14px}.chat-card-avatar{width:40px;height:40px}.chat-card-name{font-size:1rem}.chat-card-subtitle{font-size:.8rem}}.chat-page{width:900px;margin:40px auto 64px;padding:0 16px}.chat-page h1{font-size:2rem;font-weight:700;margin-bottom:20px}.chat-section{border-radius:24px;background:#fff;box-shadow:0 18px 50px #0f172a1f;padding:18px 20px;display:flex;flex-direction:column;max-height:calc(100vh - 200px)}.chat-input-row{display:flex;gap:10px;margin-top:8px}.chat-messages{flex:1;overflow-y:auto;padding:6px 4px 10px}.chat-day-divider{display:flex;align-items:center;justify-content:center;margin:12px 0;font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.chat-day-divider span{background:#e5e7eb;padding:3px 10px;border-radius:999px}.chat-message-row{display:flex;align-items:flex-end;margin-bottom:6px}.chat-message-row.theirs{justify-content:flex-start;margin-bottom:16px}.chat-message-row.mine{justify-content:flex-end}.chat-avatar{width:38px;height:38px;border-radius:999px;overflow:hidden;background:linear-gradient(135deg,#fb923c,#f97316);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0 8px}.chat-avatar img{width:100%;height:100%;object-fit:cover}.chat-avatar-fallback{font-size:.95rem;font-weight:600;color:#fff}.mine-avatar{margin-left:8px;margin-right:0}.chat-bubble-wrapper{max-width:70%;display:flex;flex-direction:column}.chat-sender-name{font-size:.75rem;color:#6b7280;margin-bottom:2px;margin-left:4px}.chat-bubble{position:relative;padding:8px 10px 4px;border-radius:18px;font-size:.95rem;line-height:1.4;box-shadow:0 3px 8px #0f172a1f}.chat-message-row.theirs .chat-bubble{background:#fff;color:#111827;border-bottom-left-radius:4px}.chat-message-row.mine .chat-bubble{background:linear-gradient(135deg,#fb923c,#f97316);color:#fff;border-bottom-right-radius:4px}.chat-bubble-text{white-space:pre-wrap;word-wrap:break-word}.chat-meta{display:flex;justify-content:flex-end;margin-top:2px}.chat-time{font-size:.7rem;opacity:.8}.chat-input-row{display:flex;gap:8px;border-top:1px solid #e5e7eb;padding-top:8px;margin-top:6px}.chat-input{flex:1;resize:none;padding:8px 10px;border-radius:12px;border:1px solid #d1d5db;font-size:.95rem;outline:none;background:#fff}.chat-input:focus{border-color:#fb923c;box-shadow:0 0 0 1px #fb923c59}.chat-send-btn{align-self:flex-end;white-space:nowrap;padding:8px 14px;border-radius:999px}@media(max-width:640px){.chat-page{margin:24px auto;padding:16px 10px}.chat-section{height:70vh;padding:10px 10px 8px}.chat-bubble-wrapper{max-width:78%}.chat-avatar{width:34px;height:34px}}.chat-message-row.theirs .chat-bubble{background:#fff;color:#1f2937;border-bottom-left-radius:6px}.chat-message-row.mine .chat-bubble{background:linear-gradient(135deg,#a7e8b3,#7cd68b);color:#0f172a;border-bottom-right-radius:6px}.mine-avatar{background:linear-gradient(135deg,#7cd68b,#4caf50)}.chat-avatar.clickable:hover{transform:scale(1.05);transition:transform .2s ease}.chat-sender-name.clickable{transition:color .2s ease}.chat-sender-name.clickable:hover{color:#2563eb;text-decoration:underline}.chat-page-title-clickable:hover{color:#2563eb;transition:color .2s ease}.chat-avatar{transition:transform .2s ease,opacity .2s ease}.chat-avatar:hover{transform:scale(1.08);opacity:.85}.chat-sender-name{transition:color .2s ease}.chat-sender-name:hover{color:#2563eb;text-decoration:underline}.admin-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid #e5e7eb}.admin-tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.admin-tab:hover{color:#111827;background-color:#f9fafb}.admin-tab.active{color:#2563eb;border-bottom-color:#2563eb}.admin-users-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-users-table thead{background-color:#f9fafb}.admin-users-table th,.admin-users-table td{padding:16px;text-align:left;border-bottom:1px solid #e5e7eb}.admin-users-table th{font-weight:600;color:#374151;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.admin-users-table td{color:#1f2937}.admin-users-table tbody tr:hover{background-color:#f9fafb}.admin-users-table tbody tr:last-child td{border-bottom:none}.admin-users-table .btn{margin-right:8px;padding:6px 12px;font-size:14px}.tutors-verification-section{animation:fadeIn .3s ease-in}.section-description{color:#6b7280;margin-bottom:24px;font-size:15px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-active{background-color:#d1fae5;color:#065f46}.status-pending{background-color:#fef3c7;color:#92400e}.status-suspended{background-color:#fee2e2;color:#991b1b}.tier-badge{display:inline-block;padding:6px 14px;border-radius:16px;font-size:13px;font-weight:600;text-transform:capitalize}.tier-tier_1{background-color:#dbeafe;color:#1e40af;border:2px solid #93c5fd}.tier-tier_2{background-color:#d1fae5;color:#065f46;border:2px solid #6ee7b7}.tier-tier_3{background-color:#ede9fe;color:#5b21b6;border:2px solid #c4b5fd}.tier-buttons{display:flex;gap:8px;flex-wrap:wrap}.btn-tier{padding:8px 16px;border:2px solid #e5e7eb;background:#fff;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;color:#374151}.btn-tier:hover:not(:disabled){border-color:#2563eb;color:#2563eb;background-color:#eff6ff}.btn-tier.active{background-color:#2563eb;color:#fff;border-color:#2563eb}.btn-tier:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.admin-users-table{font-size:14px}.admin-users-table th,.admin-users-table td{padding:12px 8px}.tier-buttons{flex-direction:column}.btn-tier{width:100%}.admin-tab{padding:10px 16px;font-size:14px}}.feedback-management-section{animation:fadeIn .3s ease-in}.feedback-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.feedback-stat-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:20px;text-align:center}.feedback-stat-value{font-size:32px;font-weight:700;color:#111827;margin-bottom:4px}.feedback-stat-label{font-size:14px;color:#6b7280;font-weight:500}.feedback-filters-row{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.feedback-filter-input,.feedback-filter-select{padding:10px 14px;border-radius:8px;border:1px solid #d1d5db;font-size:14px;background:#fff}.feedback-filter-input{flex:1;min-width:250px}.feedback-filter-select{min-width:150px}.feedback-filter-input:focus,.feedback-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.feedback-items-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.feedback-list-item{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:20px;cursor:pointer;transition:all .2s ease}.feedback-list-item:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.feedback-item-unread{border-left:4px solid #3b82f6;background:#f0f9ff}.feedback-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.feedback-list-user{display:flex;flex-direction:column;gap:4px}.feedback-list-user strong{font-size:16px;color:#111827}.feedback-list-email{font-size:14px;color:#6b7280}.feedback-list-meta{display:flex;align-items:center;gap:8px}.feedback-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.feedback-status-new{background:#dbeafe;color:#1e40af}.feedback-status-in-progress{background:#fef3c7;color:#92400e}.feedback-status-resolved{background:#d1fae5;color:#065f46}.feedback-status-archived{background:#f3f4f6;color:#4b5563}.feedback-unread-dot{color:#3b82f6;font-size:20px;line-height:1}.feedback-list-comment{color:#374151;font-size:14px;line-height:1.6;margin-bottom:12px}.feedback-list-footer{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#6b7280}.feedback-list-date{font-weight:500}.feedback-list-attachments{display:flex;align-items:center;gap:4px}.feedback-pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:20px 0}.feedback-page-btn{padding:8px 16px;border-radius:8px;border:1px solid #d1d5db;background:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.feedback-page-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.feedback-page-btn:disabled{opacity:.5;cursor:not-allowed}.feedback-page-info{font-size:14px;color:#6b7280}.feedback-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.feedback-modal-box{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.feedback-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.feedback-modal-header h2{font-size:20px;font-weight:600;margin:0}.feedback-modal-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;font-size:18px;cursor:pointer;transition:background .2s ease}.feedback-modal-close:hover{background:#e5e7eb}.feedback-modal-body{padding:24px}.feedback-modal-section{margin-bottom:20px}.feedback-modal-section label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.feedback-modal-section a{color:#3b82f6;text-decoration:none}.feedback-modal-section a:hover{text-decoration:underline}.feedback-status-dropdown{width:100%;padding:8px 12px;border-radius:8px;border:1px solid #d1d5db;font-size:14px;background:#fff}.feedback-status-dropdown:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.feedback-modal-comment{color:#111827;font-size:15px;line-height:1.7;white-space:pre-wrap;background:#f9fafb;padding:16px;border-radius:8px;border:1px solid #e5e7eb}.feedback-modal-attachments{display:flex;flex-direction:column;gap:8px}.feedback-modal-attachment{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.feedback-attachment-size{font-size:13px;color:#6b7280}.feedback-notes-textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #d1d5db;font-size:14px;font-family:inherit;resize:vertical}.feedback-notes-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.feedback-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e5e7eb}.feedback-modal-actions{display:flex;gap:8px}.feedback-btn-save,.feedback-btn-cancel,.feedback-btn-delete{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.feedback-btn-save{background:#3b82f6;color:#fff}.feedback-btn-save:hover{background:#2563eb}.feedback-btn-cancel{background:#f3f4f6;color:#374151}.feedback-btn-cancel:hover{background:#e5e7eb}.feedback-btn-delete{background:#fee;color:#dc2626;border:1px solid #fca5a5}.feedback-btn-delete:hover{background:#fecaca}.feedback-loading,.feedback-empty,.feedback-error-msg{text-align:center;padding:60px 20px;color:#6b7280;font-size:16px}.feedback-error-msg{color:#dc2626;background:#fee;border-radius:12px;border:1px solid #fca5a5}@media(max-width:768px){.feedback-filters-row{flex-direction:column}.feedback-filter-input,.feedback-filter-select{width:100%}.feedback-stats-grid{grid-template-columns:repeat(2,1fr)}.feedback-list-header{flex-direction:column;gap:12px}.feedback-modal-box{border-radius:0;max-height:100vh;height:100vh}.feedback-modal-footer{flex-direction:column;gap:12px}.feedback-modal-actions{width:100%;flex-direction:column}.feedback-btn-save,.feedback-btn-cancel,.feedback-btn-delete{width:100%}}.profile-card .btn.btn-primary{padding:6px 14px;font-size:13px;border-radius:999px;white-space:nowrap}.btn.btn-outline-sm{font-size:13px;border-radius:999px}.profile-card-main>div:last-child{display:flex;gap:8px}@media(max-width:640px){.my-profile-page{padding:20px 0 32px}.profile-card-main{flex-direction:column;align-items:flex-start}.profile-card-main>div:last-child{width:100%;justify-content:flex-start;flex-wrap:wrap}.profile-card .btn.btn-primary,.btn.btn-outline-sm{padding-inline:14px}}.my-profile-page{width:900px;margin:0 auto;padding:24px 4px 40px}.my-profile-page h1{font-size:24px;font-weight:700;margin-bottom:12px}.auth-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;padding:8px 10px;border-radius:8px;font-size:13px;margin-bottom:12px}.profile-value{font-size:14px;color:#4b5563;margin:4px 0}.profile-section{background:#fff;border-radius:14px;border:1px solid #e5e7eb;padding:18px 18px 20px;margin-top:16px}.profile-section-title{font-size:16px;font-weight:600;margin-bottom:8px}.profile-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.profile-card{border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb;padding:12px 14px;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.profile-card:hover{box-shadow:0 6px 18px #0f172a0f;border-color:#d1d5db;transform:translateY(-1px)}.profile-card-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-card-title{font-size:15px;font-weight:600;color:#111827}.profile-card-subtitle{font-size:13px;color:#6b7280;margin-top:2px}.profile-card-line{font-size:13px;color:#6b7280;line-height:1.35}.profile-card-actions{display:flex;gap:8px;align-items:center}.profile-card .btn.btn-primary,.profile-card .btn.btn-outline{padding:6px 14px;font-size:13px;border-radius:999px;white-space:nowrap}.my-profile-page p{margin:4px 0}@media(max-width:640px){.my-profile-page{padding:20px 0 32px}.profile-card-main{flex-direction:column;align-items:flex-start}.profile-card-actions{width:100%;flex-direction:column}.profile-card .btn.btn-primary,.profile-card .btn.btn-outline{width:100%;text-align:center;justify-content:center}}.profile-card-details-row{display:flex;justify-content:space-between;align-items:center}.profile-card-details-left{display:flex;gap:16px}.pending-note{font-size:.8rem;white-space:nowrap;margin-left:24px}.app-root{min-height:100vh;display:flex;flex-direction:column;background-color:#fafaf9;color:#111827}.app-main{flex:1;max-width:1120px;margin:0 auto;padding:32px 16px 64px;align-items:stretch}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 32px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb}.header-left{display:flex;align-items:center;gap:10px}.header-left-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.logo-image{width:72px;height:72px;object-fit:contain;flex-shrink:0}.logo-text{display:flex;flex-direction:column}.logo-name{font-weight:700;font-size:16px}.logo-tagline{font-size:11px;color:#6b7280}.header-nav{display:flex;align-items:center;gap:18px;font-size:14px}.nav-link{color:#4b5563;text-decoration:none}.nav-link:hover{color:#111827}.header-right{display:flex;gap:8px;align-items:center}.btn{border-radius:999px;padding:8px 14px;font-size:13px;border:1px solid transparent;cursor:pointer;background:none;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;text-decoration:none}.btn-primary{background:#16a34a;color:#fff;border-color:#16a34a;box-shadow:0 1px 3px #10b98159}.btn-primary:hover{background:#15803d;border-color:#15803d}.btn-ghost{color:#374151}.btn-ghost:hover{background:#f3f4f6}.btn-outline{border-color:#d1d5db;color:#111827;background:#fff}.btn-outline:hover{background:#f9fafb}.btn-outline-sm{border-radius:999px;border:1px solid #d1d5db;padding:6px 12px;font-size:12px;background:#fff;cursor:pointer}.btn-outline-sm:hover{background:#f9fafb}.home{display:flex;flex-direction:column;gap:40px}.hero{margin-top:16px;padding:32px 24px;background:#fefce8;border-radius:16px;border:1px solid #fef3c7}.hero-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#92400e;margin-bottom:4px}.hero-title{font-size:32px;line-height:1.2;font-weight:700;margin:0 0 8px}.hero-subtitle{font-size:14px;color:#4b5563;max-width:520px}.hero-search{display:flex;flex-wrap:nowrap;margin-top:20px;max-width:640px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;padding:4px;box-shadow:0 4px 12px #00000008}.hero-search-input{flex:1;border:none;padding:10px 14px;border-radius:999px;font-size:14px;outline:none}.hero-search-button{border-radius:999px;border:none;padding:10px 18px;font-size:14px;background:#111827;color:#fff;cursor:pointer}.hero-search-button:hover{background:#020617}.hero-quote{margin-top:20px;font-size:13px;color:#6b7280;max-width:700px}.hero-quote-author{font-weight:500;color:#374151}.section{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:24px 24px 28px}.section-title{font-size:20px;font-weight:600;margin:0 0 8px}.section-title.center{text-align:center}.section-subtitle{font-size:13px;color:#6b7280}.section-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.section-text{font-size:14px;color:#4b5563;max-width:720px;margin-top:6px}.section-text.center{text-align:center;margin-left:auto;margin-right:auto}.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.testimonial-card{border-radius:12px;border:1px solid #e5e7eb;background:#fff;padding:16px;display:flex;flex-direction:column;gap:8px}.stars{color:#f59e0b;font-size:14px}.testimonial-text{font-size:13px;color:#4b5563}.testimonial-footer{display:flex;align-items:center;gap:10px;margin-top:auto}.avatar-placeholder{width:32px;height:32px;border-radius:999px;background:#e5e7eb}.testimonial-name{font-size:13px;font-weight:500}.testimonial-role{font-size:12px;color:#6b7280}.tutor-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.tutor-card{border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb;padding:16px 18px}.tutor-card-main{display:flex;gap:16px}.avatar-large{width:52px;height:52px;border-radius:12px;background:#e5e7eb}.tutor-info{flex:1;display:flex;flex-direction:column;gap:6px}.tutor-header{display:flex;align-items:center;justify-content:space-between}.tutor-summary{font-size:13px;font-weight:500;color:#374151}.tutor-detail{font-size:13px;color:#4b5563}.section-ai{text-align:center}.ai-card{margin:18px auto 0;max-width:360px;border-radius:16px;border:1px solid #e5e7eb;padding:20px 18px;background:#f9fafb}.ai-icon{width:40px;height:40px;border-radius:999px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;margin:0 auto 10px}.site-footer{margin-top:40px;padding:28px 40px 20px;background:#fff;border-top:1px solid #e5e7eb;font-size:13px;color:#111827}.footer-top{display:flex;gap:40px;align-items:flex-start;justify-content:space-between}.footer-brand{flex:1.2}.footer-logo-row{display:flex;flex-direction:column;gap:16px}.footer-logo{width:72px;height:72px;object-fit:contain;flex-shrink:0}.footer-socials{display:flex;align-items:center;gap:12px;font-size:16px}.footer-socials a{text-decoration:none;color:#111827}.footer-links-grid{flex:3;display:grid;grid-template-columns:repeat(3,minmax(0,170px));gap:40px}.footer-column h4{margin:0 0 10px;font-size:13px;font-weight:600}.footer-column a{display:block;margin-bottom:6px;text-decoration:none;color:#4b5563}.footer-column a:hover{color:#111827}.footer-bottom{margin-top:24px;border-top:1px solid #e5e7eb;padding-top:10px;font-size:12px;color:#6b7280}.subject-toggle-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.subject-toggle{padding:6px 12px;border-radius:999px;border:1px solid #d0d5dd;background-color:#fff;font-size:13px;cursor:pointer;color:#667085;transition:all .15s ease-in-out}.subject-toggle:hover{background-color:#f3f4ff;border-color:#c7d2fe;color:#4f46e5}.subject-toggle.selected{background-color:#4f46e5;border-color:#4f46e5;color:#fff}.field-hint{font-size:12px;color:#98a2b3;margin-top:4px}.logout-button{padding:8px 18px;background-color:#fff;border:1px solid #d0d5dd;border-radius:20px;font-size:14px;font-weight:500;color:#667085;cursor:pointer;transition:all .15s ease-in-out}.logout-button:hover{background-color:#f9fafb;border-color:#98a2b3;color:#344054}.header-user-section{position:relative;display:flex;align-items:center}.user-menu-toggle{display:flex;align-items:center;gap:.4rem;padding:.15rem .5rem;border-radius:999px;border:none;background:transparent;cursor:pointer}.user-avatar,.user-menu-avatar-lg{border-radius:50%;object-fit:cover}.user-avatar{width:32px;height:32px}.user-menu-avatar-lg{width:56px;height:56px}.user-avatar-fallback{display:flex;align-items:center;justify-content:center;background:#dde4ff;color:#2b2b4f;font-weight:600}.user-menu-label{font-size:.9rem;font-weight:500}.user-menu-caret{font-size:.7rem;transition:transform .15s ease}.user-menu-caret.open{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;right:0;top:110%;width:280px;background:#fff;border-radius:14px;box-shadow:0 18px 45px #0f172a26;padding:.75rem 0;z-index:200}.user-menu-top{padding:.75rem 1rem .9rem;border-bottom:1px solid #eef1f7}.user-menu-top-main{display:flex;gap:.7rem;margin-bottom:.6rem}.user-menu-name{font-weight:600}.user-menu-role{font-size:.8rem;color:#6b7280}.user-menu-view-profile{width:100%;border-radius:999px;border:1px solid #2563eb;background:#fff;color:#2563eb;font-size:.85rem;padding:.35rem .5rem;cursor:pointer}.user-menu-section{padding:.6rem 1rem}.user-menu-section-title{font-size:.78rem;color:#9ca3af;text-transform:uppercase;margin-bottom:.3rem}.user-menu-link{width:100%;padding:.3rem 0;background:none;border:none;text-align:left;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:.4rem}.user-menu-link:hover{color:#2563eb}.user-menu-section-border{border-top:1px solid #eef1f7;margin-top:.2rem}.user-menu-signout{width:100%;background:none;border:none;text-align:left;font-size:.9rem;padding:.3rem 0;cursor:pointer;color:#ef4444}.user-menu-signout:hover{color:#b91c1c}.user-link-badge{display:inline-flex;align-items:center;gap:.4rem}.notif-badge,.user-menu-link .notif-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:0 6px;border-radius:999px;font-size:11px;background:#ff4d4f;color:#fff}@media(max-width:900px){.app-header{flex-wrap:wrap;align-items:flex-start}.header-nav{flex-wrap:wrap;justify-content:center}.header-right{flex-wrap:wrap;justify-content:flex-end}.testimonials-grid{grid-template-columns:1fr}.site-footer{padding:24px 20px 16px}.footer-top{flex-direction:column;gap:24px}.footer-links-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}@media(max-width:640px){.app-main{padding:20px 12px 48px}.hero-title{font-size:24px}.hero{padding:20px 16px}.hero-search{flex-direction:column}.hero-search-button{width:100%;margin-top:6px}.footer-links-grid{grid-template-columns:1fr}.footer-bottom{text-align:center}}.primary-button{padding:8px 16px;border-radius:20px;font-size:14px;cursor:pointer;background:#facc15;border:none;color:#111;font-weight:500;transition:.15s ease;margin-right:12px}.primary-button:hover{background:#eab308}.secondary-button{padding:8px 16px;border-radius:20px;font-size:14px;cursor:pointer;background:#faf9f6;border:none;color:#ef4444;transition:.15s ease}.secondary-button:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.nav-dropdown{position:relative;display:inline-block}.nav-dropdown-trigger{display:flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:0}.nav-dropdown-caret{font-size:12px;transition:transform .2s ease;display:inline-block}.nav-dropdown-caret.open{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:8px 0;z-index:100;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-item{display:block;padding:10px 16px;color:#4b5563;text-decoration:none;font-size:14px;transition:background .15s ease}.nav-dropdown-item:hover{background:#f9fafb;color:#111827}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh;background-color:#fafaf9;color:#111827}#root{min-height:100vh}
