/* Cabinet components are scoped so the original landing remains unchanged. */
:root{--line:#eadde4;--plum:#a65072;--muted:#7d6974}
.public-page .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.module-lesson-titles{padding:0 24px 20px 48px;line-height:1.8;color:#6f5d67}
@media(max-width:900px){.public-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.public-page .stat-card{padding:20px 10px}.public-page .stat-number{font-size:2.2rem}.public-page .stats-grid{gap:12px}}
@media(max-width:600px){
 .public-page .testimonial-grid{grid-template-columns:minmax(0,1fr)}
 .public-page .testimonial-card{padding:24px;min-width:0}.public-page .testimonial-author{gap:14px}
 .public-page .pricing-card{padding:30px 22px}.public-page .pricing-card h3{font-size:1.35rem}
 .public-page .pricing-price{font-size:2.35rem;white-space:nowrap}.public-page .pricing-old-price{font-size:1.15rem;white-space:nowrap;margin-left:8px}
 .public-page .pricing-cta{font-size:1rem;padding:14px 16px}.public-page .pricing-badge{font-size:.75rem;padding:8px 16px;right:18px}
}
.cabinet-page{padding-top:36px;padding-bottom:64px;max-width:1120px}
.cabinet-page .section{padding:24px 0;margin:0}
.cabinet-page .page-hero{padding:28px 0;border-bottom:1px solid var(--line);margin-bottom:12px}
.cabinet-page h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;margin:10px 0}
.cabinet-page .eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--plum);font-weight:700}
.cabinet-page .muted,.cabinet-page .course-card p{color:var(--muted);line-height:1.65}
.cabinet-page .button,.learning-page .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:0;border-radius:12px;background:linear-gradient(135deg,#ee6899,#ad5876);color:#fff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}
.cabinet-page button:disabled{opacity:.65;cursor:not-allowed}
.cabinet-page .text-button{border:0;background:none;color:var(--plum);font:inherit;cursor:pointer;padding:10px 0}
.cabinet-page .push-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff2f7;border:1px solid #f4d7e3;border-radius:18px;padding:24px;margin-bottom:28px}
.cabinet-page .push-card p{margin:7px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}
.cabinet-page .course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cabinet-page .course-card{overflow:hidden;display:block;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 8px 30px #50203809}
.cabinet-page .course-cover{aspect-ratio:16/9;overflow:hidden;background:#f7e8ee;display:grid;place-items:center}
.cabinet-page .course-cover img{width:100%;height:100%;object-fit:cover}
.cabinet-page .course-card-body{padding:24px}.cabinet-page .card-link{color:var(--plum);font-weight:700}
.cabinet-page .cabinet-empty{grid-column:1/-1;background:#fff;border:1px dashed #dab5c5;border-radius:18px;padding:32px;line-height:1.7}
.cabinet-page .my-bookings{margin-top:24px}.cabinet-page .section-heading{margin-bottom:24px}.cabinet-page .section-heading h2{font-size:clamp(1.5rem,4vw,2rem)}
.cabinet-page .notice{padding:16px 20px;border-radius:12px;margin:16px 0}.cabinet-page .notice.error{color:#9d2145;background:#fff0f2}.cabinet-page .notice.success{color:#256744;background:#eaf7ef}
.cabinet-page :is(input,select,textarea):focus{outline:2px solid #c46a8c;outline-offset:2px}.cabinet-page input,.cabinet-page select,.cabinet-page textarea{min-width:0;font-size:16px!important}
.cabinet-page .survey-options input{accent-color:#b8547c}
@media(max-width:640px){.cabinet-page{padding-top:16px}.cabinet-page .push-card{align-items:stretch;flex-direction:column;padding:20px;gap:16px}.cabinet-page .course-grid{grid-template-columns:1fr}.cabinet-page .survey-card,.cabinet-page .activity-card,.cabinet-page .my-bookings{padding:20px}.cabinet-page .survey-actions{flex-wrap:wrap}.cabinet-page .button{width:100%}}
