/*!
 * Bee's Home Academy � App Styles
 * P2-BEESHOME-PREMIUM-WEBSITE-10000 � Gate 2 Applications
 *
 * Load AFTER main.css. Does NOT override any Gate 1 component.
 * Sections:
 *   A1 � Shared app utilities
 *   A2 � /chon-chuong-trinh/ Selector
 *   A3 � /dat-lich/ Booking
 *   A4 � /qua-tang/ Gifts
 *   A5 � /goc-phu-huynh/ Parent Corner
 */
.app-wrap{max-width:720px;margin:0 auto}.app-wrap-sm{max-width:560px;margin:0 auto}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.values-grid .value-item{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:28px 24px;background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);transition:border-color var(--t-base),box-shadow var(--t-base)}.values-grid .value-item:hover{border-color:var(--gold-border);box-shadow:0 4px 20px rgba(0,0,0,.06)}.value-icon{width:48px;height:48px;border-radius:50%;background:var(--gold-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.value-icon svg{width:24px;height:24px;color:var(--gold)}.values-grid .value-item h4{font-size:.9375rem;font-weight:700;color:var(--dark);margin:0}.values-grid .value-item p{font-size:.84rem;color:var(--text-sec);line-height:1.65;margin:0}@media (max-width:900px){.values-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.values-grid{grid-template-columns:1fr}}.selector-progress{margin-bottom:48px;text-align:center}.selector-steps{display:flex;justify-content:center;position:relative;margin-bottom:0}.selector-steps::before{content:"";position:absolute;top:20px;left:calc(16.66% + 20px);right:calc(16.66% + 20px);height:2px;background:var(--border);z-index:0}.selector-step{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;position:relative;z-index:1;max-width:120px}.selector-page .step-num{width:40px;height:40px;border-radius:50%;border:2px solid var(--border);background:var(--cream);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;color:var(--text-ter);transition:border-color .25s,background .25s,color .25s}.selector-page .selector-step.active .step-num{border-color:var(--gold);background:var(--gold);color:var(--white)}.selector-page .selector-step.done .step-num{border-color:var(--gold);background:var(--gold-light);color:var(--gold-deep)}.selector-page .step-label{font-size:.75rem;color:var(--text-ter);font-weight:500;white-space:nowrap}.selector-page .selector-step.active .step-label{color:var(--dark);font-weight:600}.selector-panel{display:block}.selector-panel.hidden{display:none}.selector-question{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:700;text-align:center;margin-bottom:32px;line-height:1.3;color:var(--dark)}.selector-hint{text-align:center;font-size:.875rem;color:var(--text-sec);margin-top:-20px;margin-bottom:28px}.selector-options{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.selector-options.cols-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.selector-option{display:flex;align-items:center;gap:16px;padding:18px 22px;background:var(--white);border:2px solid var(--border);border-radius:var(--r-lg);cursor:pointer;text-align:left;transition:border-color .18s,box-shadow .18s,background .18s;font-family:var(--font-main);position:relative}.selector-option:hover{border-color:var(--gold-border);box-shadow:0 4px 16px var(--brand-gold-light)}.selector-option.selected{border-color:var(--gold);background:var(--gold-light);box-shadow:0 4px 16px var(--brand-gold-light)}.selector-option.option-card{flex-direction:column;align-items:flex-start;gap:6px;padding:22px 24px}.selector-page .option-grade{font-size:1.2rem;font-weight:700;color:var(--dark);display:block}.selector-page .option-hint{font-size:.8125rem;color:var(--text-sec);display:block}.selector-page .option-title{font-size:.9375rem;font-weight:700;color:var(--dark);display:block}.selector-page .option-desc{font-size:.8125rem;color:var(--text-sec);line-height:1.55;margin:4px 0 0}.option-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;margin-left:auto;display:flex;align-items:center;justify-content:center;transition:border-color .18s,background .18s}.selector-option.selected .option-radio{border-color:var(--gold);background:var(--gold)}.selector-option.selected .option-radio::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--white)}.selector-nav{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:20px;border-top:1px solid var(--border)}.selector-back-btn{background:0 0;border:0;color:var(--text-sec);font-size:.875rem;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 0;font-family:var(--font-main);transition:color .15s}.selector-back-btn:hover{color:var(--dark)}.selector-back-btn svg{width:16px;height:16px}.selector-result-card{background:var(--dark);color:var(--white);border-radius:var(--r-xl);padding:44px 40px;text-align:center}.selector-result-tag{display:inline-block;background:var(--gold);color:var(--dark);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 14px;border-radius:100px;margin-bottom:20px}.selector-result-name{font-size:clamp(1.375rem,3vw,1.875rem);font-weight:800;color:var(--white);margin-bottom:14px;display:block;line-height:1.2}.selector-result-desc{color:rgba(255,255,255,.62);font-size:1rem;line-height:1.68;max-width:480px;margin:0 auto 28px}.selector-result-features{list-style:none;padding:0;margin:0 auto 28px;display:flex;flex-direction:column;gap:10px;text-align:left;max-width:360px}.selector-result-features li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.8);font-size:.9375rem}.selector-result-features li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0}.selector-result-price{display:inline-block;background:var(--brand-gold-tint);color:var(--gold);font-size:.875rem;font-weight:700;padding:6px 16px;border-radius:100px;border:1px solid var(--brand-gold-border-mid);margin-bottom:28px}.selector-result-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}.selector-restart{background:0 0;border:0;color:rgba(255,255,255,.38);font-size:.8rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-family:var(--font-main);transition:color .15s}.selector-restart:hover{color:rgba(255,255,255,.7)}.also-consider{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:24px 28px;margin-top:20px;text-align:left}.also-consider h4{font-size:.78rem;color:var(--text-ter);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.also-consider-links{display:flex;flex-wrap:wrap;gap:8px}.also-consider-links a{padding:6px 16px;background:var(--cream);border-radius:100px;font-size:.8125rem;font-weight:500;color:var(--dark);border:1px solid var(--border);text-decoration:none;transition:background .15s,border-color .15s}.also-consider-links a:hover{background:var(--gold-light);border-color:var(--gold-border)}@media (max-width:640px){.selector-options.cols-2{grid-template-columns:1fr}.selector-question{margin-bottom:24px}.selector-result-card{padding:28px 20px}.selector-result-desc{font-size:.9375rem}.selector-steps::before{display:none}}.booking-progress{display:flex;justify-content:center;gap:8px;margin-bottom:40px}.booking-dot{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background .25s,width .25s,border-radius .25s}.booking-dot.active{background:var(--gold);width:28px;border-radius:4px}.booking-dot.done{background:var(--gold);opacity:.45}.booking-panel{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:40px}.booking-panel.hidden{display:none}.booking-panel-title{font-size:1.125rem;font-weight:700;color:var(--dark);margin-bottom:4px}.booking-panel-sub{font-size:.875rem;color:var(--text-sec);margin-bottom:28px;line-height:1.6}.booking-program-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:28px}.booking-program-btn{padding:16px;background:var(--cream);border:2px solid var(--border);border-radius:var(--r-md);cursor:pointer;text-align:left;font-family:var(--font-main);transition:border-color .18s,background .18s}.booking-program-btn:hover{border-color:var(--gold-border);background:var(--gold-light)}.booking-program-btn.selected{border-color:var(--gold);background:var(--gold-light)}.booking-prog-name{font-size:.875rem;font-weight:700;color:var(--dark);display:block;margin-bottom:2px}.booking-prog-grade{font-size:.75rem;color:var(--text-ter);display:block}.booking-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:20px;border-top:1px solid var(--border);gap:12px}.booking-back{background:0 0;border:0;color:var(--text-sec);font-size:.875rem;cursor:pointer;font-family:var(--font-main);display:flex;align-items:center;gap:6px;transition:color .15s}.booking-back:hover{color:var(--dark)}.booking-back svg{width:16px;height:16px}.booking-success{background:var(--dark);color:var(--white);border-radius:var(--r-xl);padding:56px 40px;text-align:center}.booking-success-icon{width:68px;height:68px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.booking-success-icon svg{width:34px;height:34px;color:var(--dark)}.booking-success h2{color:var(--white);font-size:1.5rem;margin-bottom:12px}.booking-success p{color:rgba(255,255,255,.62);line-height:1.68}.booking-success-hotline{margin-top:32px;padding:20px 24px;background:rgba(255,255,255,.06);border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.1)}.booking-success-hotline p{font-size:.875rem;margin-bottom:6px}.booking-success-hotline a{font-size:1.5rem;font-weight:800;color:var(--gold);text-decoration:none}@media (max-width:600px){.booking-panel{padding:24px 20px}.booking-program-grid{grid-template-columns:1fr}.booking-success{padding:36px 20px}.booking-actions{flex-direction:column-reverse;align-items:stretch}.booking-actions .btn{text-align:center}}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px}.reward-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:32px;text-align:center;position:relative;overflow:hidden}.reward-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--border)}.reward-card.featured::before{background:var(--gold)}.reward-card.featured{border-color:var(--gold-border);background:var(--gold-light)}.reward-icon{width:56px;height:56px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.reward-card.featured .reward-icon{background:var(--brand-gold-tint)}.reward-icon svg{width:28px;height:28px;color:var(--gold)}.reward-name{font-size:1.05rem;font-weight:700;color:var(--dark);margin-bottom:10px}.reward-desc{font-size:.875rem;color:var(--text-sec);line-height:1.65;margin:0}.reward-timing{display:inline-block;margin-top:14px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);background:var(--brand-gold-light);padding:3px 10px;border-radius:100px}.gift-page .how-it-works-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}.gift-page .how-it-works-steps::before{content:"";position:absolute;top:28px;left:calc(16.67% + 24px);right:calc(16.67% + 24px);height:2px;background:var(--border)}.gift-page .how-step{text-align:center;position:relative;z-index:1}.gift-page .how-step-num{width:56px;height:56px;border-radius:50%;background:var(--dark);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:800;margin:0 auto 16px}.gift-page .how-step h4{font-size:1rem;margin-bottom:8px}.gift-page .how-step p{font-size:.875rem;color:var(--text-sec);line-height:1.6}@media (max-width:768px){.reward-grid{grid-template-columns:1fr}.gift-page .how-it-works-steps{grid-template-columns:1fr;gap:32px}.gift-page .how-it-works-steps::before{display:none}}.parent-tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:48px}.parent-tip-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:28px;display:flex;gap:18px;align-items:flex-start}.parent-corner-page .tip-icon{width:46px;height:46px;border-radius:50%;background:var(--gold-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.parent-corner-page .tip-icon svg{width:22px;height:22px;color:var(--gold)}.parent-corner-page .tip-content h4{font-size:.9375rem;font-weight:700;margin-bottom:6px}.parent-corner-page .tip-content p{font-size:.84rem;color:var(--text-sec);line-height:1.65;margin:0}.report-guide{background:var(--dark);border-radius:var(--r-xl);padding:44px;color:var(--white)}.report-guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:32px}.report-guide-item{padding:24px;background:rgba(255,255,255,.05);border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.08)}.report-guide-item h4{font-size:.9375rem;color:var(--white);margin-bottom:8px}.report-guide-item p{font-size:.84rem;color:rgba(255,255,255,.6);line-height:1.65;margin:0}.parent-contacts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.parent-contact-card{background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:28px;text-align:center}.parent-corner-page .contact-icon{width:48px;height:48px;border-radius:50%;background:var(--brand-gold-light);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.parent-corner-page .contact-icon svg{width:24px;height:24px;color:var(--gold)}.parent-contact-card h4{font-size:.8rem;color:var(--text-ter);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.parent-contact-card a{font-size:1.125rem;font-weight:700;color:var(--dark);text-decoration:none;display:block;margin-bottom:4px}.parent-contact-card a:hover{color:var(--gold)}.parent-contact-card p{font-size:.8rem;color:var(--text-sec);margin-top:4px;line-height:1.5}.parent-corner-page .report-item-label{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);background:var(--brand-gold-light);padding:3px 10px;border-radius:100px;border:1px solid var(--brand-gold-border);margin-bottom:12px}@media (max-width:768px){.parent-tips-grid{grid-template-columns:1fr}.report-guide{padding:28px 20px}.report-guide-grid{grid-template-columns:1fr;gap:16px}.parent-contacts{grid-template-columns:1fr}}.gift-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.gift-tab{padding:8px 18px;background:var(--white);border:1.5px solid var(--border);border-radius:100px;font-size:.8125rem;font-weight:600;color:var(--text-sec);cursor:pointer;font-family:var(--font-main);transition:border-color .18s,background .18s,color .18s}.gift-tab:hover{border-color:var(--gold-border);color:var(--dark)}.gift-tab.active{background:var(--dark);border-color:var(--dark);color:var(--white)}.gift-page .gift-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.gift-page .gift-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:28px;display:flex;flex-direction:column;gap:12px;position:relative;transition:border-color .2s,box-shadow .2s}.gift-page .gift-card:hover{border-color:var(--gold-border);box-shadow:0 6px 24px rgba(0,0,0,.06)}.gift-page .gift-card.featured{border-color:var(--gold-border);background:linear-gradient(145deg,var(--gold-light) 0%,var(--white) 100%)}.gift-page .gift-card.locked{background:var(--cream)}.gift-badge-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gift-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:100px}.gift-badge.badge-public{background:rgba(34,139,34,.1);color:#1a6b1a;border:1px solid rgba(34,139,34,.2)}.gift-badge.badge-enrolled{background:var(--brand-gold-light);color:var(--gold-deep);border:1px solid var(--brand-gold-border)}.gift-badge.badge-campaign{background:rgba(180,60,30,.08);color:#8b2500;border:1px solid rgba(180,60,30,.18)}.gift-page .gift-card-icon{width:48px;height:48px;border-radius:var(--r-md);background:var(--gold-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.gift-page .gift-card.locked .gift-card-icon{background:var(--cream)}.gift-page .gift-card-icon svg{width:26px;height:26px;color:var(--gold)}.gift-page .gift-card.locked .gift-card-icon svg{color:var(--text-ter)}.gift-page .gift-card-title{font-size:1rem;font-weight:700;color:var(--dark);line-height:1.3}.gift-page .gift-card.locked .gift-card-title{color:var(--text-sec)}.gift-page .gift-card-desc{font-size:.84rem;color:var(--text-sec);line-height:1.65;margin:0;flex:1}.gift-page .gift-card-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem;color:var(--text-ter)}.gift-page .gift-card-meta span{display:flex;align-items:center;gap:4px}.gift-page .gift-card-meta svg{width:13px;height:13px;flex-shrink:0}.gift-page .gift-card-cta{margin-top:4px}.gift-page .gift-lock-notice{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(0,0,0,.04);border-radius:var(--r-md);font-size:.8125rem;color:var(--text-sec);border:1px dashed var(--border)}.gift-page .gift-lock-notice svg{width:16px;height:16px;flex-shrink:0;color:var(--text-ter)}.gift-page .gift-lock-notice a{color:var(--gold-deep);font-weight:600;text-decoration:none}.gift-page .gift-lock-notice a:hover{text-decoration:underline}.gift-vault-banner{background:var(--dark);border-radius:var(--r-xl);padding:32px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:8px}.gift-vault-banner h4{font-size:1.05rem;color:var(--white);margin-bottom:6px}.gift-vault-banner p{font-size:.875rem;color:rgba(255,255,255,.55);margin:0}.gift-vault-banner .btn{flex-shrink:0}.gift-code-box{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:36px;max-width:520px;margin:0 auto;text-align:center}.gift-code-box h3{font-size:1.25rem;margin-bottom:8px}.gift-code-box p{font-size:.9rem;color:var(--text-sec);margin-bottom:24px}.gift-code-input-row{display:flex;gap:8px}.gift-code-input-row .form-input{flex:1;min-width:0;font-size:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:center;background:#fff;color:var(--dark, #1a1a1a);border:1.5px solid var(--border, #E4E0D6);border-radius:12px;padding:12px 14px}.gift-code-input-row .form-input::placeholder{color:#9a9a9a;-webkit-text-fill-color:#9a9a9a;opacity:1}.gift-code-input-row .form-input:focus{border-color:var(--gold, #FFC020);outline:2px solid rgba(255,192,32,.28);outline-offset:1px}.gift-code-success{padding:24px;background:var(--gold-light);border-radius:var(--r-lg);border:1.5px solid var(--gold-border)}.gift-code-success svg{width:32px;height:32px;color:var(--gold-deep);margin-bottom:10px}.gift-code-success h4{font-size:1rem;color:var(--dark);margin-bottom:6px}.gift-code-success p{font-size:.875rem;color:var(--text-sec);margin:0}.parent-corner-page .article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.parent-corner-page .article-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}.parent-corner-page .article-card:hover{border-color:var(--gold-border);box-shadow:0 6px 24px rgba(0,0,0,.06)}.parent-corner-page .article-card-body{padding:28px;flex:1;display:flex;flex-direction:column;gap:10px}.parent-corner-page .article-card-eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-deep)}.parent-corner-page .article-card-title{font-size:1.05rem;font-weight:700;color:var(--dark);line-height:1.35}.parent-corner-page .article-card-desc{font-size:.84rem;color:var(--text-sec);line-height:1.65;flex:1}.parent-corner-page .article-card-meta{font-size:.78rem;color:var(--text-ter)}.parent-corner-page .article-card-footer{padding:16px 28px;border-top:1px solid var(--border)}.parent-corner-page .article-demo-badge{display:inline-block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:4px;background:rgba(0,0,0,.06);color:var(--text-ter);border:1px solid var(--border);margin-right:8px}.selector-result-intro{text-align:center;font-size:.875rem;color:var(--text-sec);margin-bottom:16px;padding:10px 16px;background:var(--white);border-radius:var(--r-md);border:1px solid var(--border)}.consult-page-wrap{max-width:640px;margin:0 auto}.consult-page-wrap .form-group{margin-bottom:20px}.consult-note{font-size:.84rem;color:var(--text-sec);margin-top:8px;line-height:1.6;padding:14px 18px;background:var(--cream);border-radius:var(--r-md);border:1px solid var(--border)}@media (max-width:768px){.gift-page .gift-grid{grid-template-columns:1fr}.gift-vault-banner{padding:24px 20px}.parent-corner-page .article-grid{grid-template-columns:1fr}.gift-code-input-row{flex-direction:column}}