:root{--sp-ink:#172033;--sp-muted:#5b6578;--sp-blue:#2d5bff;--sp-paper:#f7f4ef;--sp-lilac:#dcd8ff;--sp-lime:#dff3b4;--sp-line:#dde1e8}
.sp-student-dashboard,.sp-profile-page,.student-calendar{color:var(--sp-ink);font-family:inherit}
.sp-student-dashboard,.sp-profile-page{width:min(1180px,calc(100vw - 32px));margin:34px auto 80px!important}
.sp-student-dashboard .student-dashboard-card,.sp-profile-page>.student-dashboard-card{padding:30px!important;border:1px solid var(--sp-line)!important;border-radius:28px!important;background:#fff!important;box-shadow:none!important;margin-bottom:18px!important}
.sp-student-dashboard .sp-dashboard-overview{padding:38px!important;background:linear-gradient(145deg,#f7f4ef 0%,#fff 66%)!important}
.sp-student-dashboard h2,.sp-student-dashboard h3,.sp-profile-page h3{color:var(--sp-ink)!important;letter-spacing:-.025em}.sp-student-dashboard h3,.sp-profile-page>div>h3{font-size:clamp(25px,3vw,36px)!important}
.sp-dashboard-summary{gap:14px!important}.sp-dashboard-summary>div{padding:20px!important;border:0!important;border-radius:20px!important}.sp-dashboard-summary>div:nth-child(1){background:var(--sp-lilac)!important}.sp-dashboard-summary>div:nth-child(2){background:var(--sp-lime)!important}.sp-dashboard-summary>div:nth-child(3){background:#e8edf8!important}.sp-dashboard-summary strong{font-size:15px!important}.sp-dashboard-summary span{display:inline-block;margin-top:8px;color:var(--sp-ink)!important;font-size:18px!important}
.sp-dashboard-lesson{border:1px solid var(--sp-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important}.sp-dashboard-lesson:hover{border-color:var(--sp-blue)!important;transform:translateY(-2px)}
.sp-dashboard-navigation-grid>a,.sp-dashboard-navigation-grid>div,.sp-dashboard-learning-grid>a,.sp-dashboard-learning-grid>div{border:1px solid var(--sp-line)!important;border-radius:20px!important;background:#f7f8fb!important}.sp-dashboard-navigation-grid>a:hover,.sp-dashboard-learning-grid>a:hover{border-color:var(--sp-blue)!important;background:#fff!important}
.sp-dashboard-details{border:0!important}.sp-dashboard-details>summary{border-radius:18px!important;background:var(--sp-paper)!important}
.sp-profile-page>.student-dashboard-card{padding:clamp(24px,4vw,48px)!important;background:linear-gradient(145deg,#fff 0%,#f7f4ef 100%)!important}.sp-profile-page form:first-of-type{max-width:none!important}.sp-profile-page input,.sp-profile-page select,.sp-profile-page textarea{min-height:48px!important;border:1px solid #cbd2dd!important;border-radius:14px!important;background:#fff!important;padding:11px 14px!important}.sp-profile-page textarea{min-height:120px!important}.sp-profile-page button[type=submit],.sp-profile-page #sp-add-language,.sp-profile-page #sp-avatar-crop-apply{min-height:48px!important;padding:12px 22px!important;border:0!important;border-radius:999px!important;background:var(--sp-ink)!important;color:#fff!important;font-weight:800!important}.sp-profile-page button:hover{background:var(--sp-blue)!important}.sp-profile-page #sp-avatar-initials,.sp-profile-page #sp-avatar-preview{box-shadow:0 0 0 10px var(--sp-lilac)!important}
.student-calendar{width:min(1440px,calc(100vw - 30px));margin:30px auto 80px!important;padding:26px!important;border:1px solid var(--sp-line);border-radius:32px;background:#f7f8fb;box-shadow:none!important}.student-calendar-header{padding:8px 6px 24px!important;border-bottom:0!important}.student-calendar-title{color:var(--sp-ink)!important;font-size:clamp(28px,4vw,44px)!important;letter-spacing:-.04em!important}.student-calendar-week{color:var(--sp-muted)!important}.student-calendar-nav{gap:8px!important}.student-calendar-nav a{padding:10px 15px!important;border:1px solid #ccd2dc!important;border-radius:999px!important;background:#fff!important;color:var(--sp-ink)!important;text-decoration:none!important;font-weight:750!important}.student-calendar-nav a:hover{border-color:var(--sp-blue)!important;color:var(--sp-blue)!important}.student-calendar-grid-view{overflow:hidden;border:1px solid var(--sp-line)!important;border-radius:24px!important;background:#fff!important}.student-calendar-grid-day-header{background:var(--sp-paper)!important;color:var(--sp-ink)!important}.student-slot-free{border-color:#b9d982!important;background:var(--sp-lime)!important;color:#26351c!important}.student-slot-lesson{border-color:#b7b0f1!important;background:var(--sp-lilac)!important;color:#292742!important}.student-slot-google-event,.student-slot-manual-block{border-color:#cfd5df!important;background:#edf0f5!important;color:#3d4759!important}.sp-teacher-tools{margin-bottom:22px!important;border:1px solid var(--sp-line)!important;border-radius:22px!important;background:#fff!important}.sp-teacher-tools>summary{padding:18px 20px!important}.sp-book-modal>div,#sp-student-reschedule-modal>div,#sp-pending-reschedule-modal>div{border-radius:26px!important;box-shadow:0 24px 70px rgba(23,32,51,.2)!important}
@media(max-width:760px){.sp-student-dashboard,.sp-profile-page{width:calc(100vw - 20px)!important;margin-top:18px!important}.sp-student-dashboard .student-dashboard-card,.sp-profile-page>.student-dashboard-card{padding:20px!important;border-radius:22px!important}.student-calendar{width:calc(100vw - 12px)!important;padding:10px!important;border-radius:22px!important}.student-calendar-header{align-items:flex-start!important;gap:14px!important}.student-calendar-nav{width:100%;overflow-x:auto;padding-bottom:4px}.student-calendar-nav a{white-space:nowrap}.student-calendar-grid-view{border-radius:17px!important}}
.sp-faq-contact{display:grid!important;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr)!important;align-items:start!important;padding:clamp(24px,4vw,44px)!important;border-radius:30px!important}.sp-faq-question-form{display:grid;gap:14px;padding:22px;border-radius:22px;background:#fff;color:var(--sp-ink)}.sp-faq-question-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sp-faq-question-form label{display:grid;gap:7px;font-weight:750}.sp-faq-question-form input,.sp-faq-question-form textarea{width:100%;border:1px solid #cbd2dd;border-radius:14px;background:#f8f9fb;padding:12px 14px;color:var(--sp-ink)}.sp-faq-question-form textarea{resize:vertical}.sp-faq-question-form button{justify-self:start;min-height:48px;padding:12px 21px;border:0;border-radius:999px;background:var(--sp-blue);color:#fff;font-weight:850;cursor:pointer}.sp-faq-form-message{margin:0!important;padding:11px 13px;border-radius:12px;font-weight:750}.sp-faq-form-message.is-success{background:#dcfce7;color:#166534}.sp-faq-form-message.is-error{background:#fee2e2;color:#991b1b}@media(max-width:760px){.sp-faq-contact{grid-template-columns:1fr!important}.sp-faq-question-row{grid-template-columns:1fr}.sp-faq-question-form{padding:17px}}
.sp-trial-checkout{width:min(720px,calc(100vw - 30px));margin:54px auto 90px;padding:clamp(28px,6vw,58px);border-radius:34px;background:var(--sp-paper);color:var(--sp-ink)}.sp-trial-checkout>span{color:#3150ca;font-size:13px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.sp-trial-checkout h2{margin:12px 0 28px;font-size:clamp(34px,6vw,58px);line-height:1;letter-spacing:-.045em}.sp-trial-checkout-summary{padding:22px;border-radius:20px;background:var(--sp-lilac)}.sp-trial-checkout-summary strong{font-size:20px}.sp-trial-checkout-summary p{margin:8px 0 0}.sp-trial-checkout-notice{margin-top:18px;padding:20px;border:1px solid #cbd2dd;border-radius:18px;background:#fff}.sp-trial-checkout-notice p{margin:7px 0 0;color:var(--sp-muted)}.sp-trial-checkout-button,.sp-trial-checkout-back{display:inline-flex;margin-top:20px;text-decoration:none!important;font-weight:850}.sp-trial-checkout-button{padding:13px 21px;border-radius:999px;background:var(--sp-blue);color:#fff!important}.sp-trial-checkout-back{color:var(--sp-ink)!important}
.sp-trial-checkout-summary b{display:block;margin-top:12px;font-size:25px}.sp-trial-checkout-button{border:0;cursor:pointer}.sp-trial-checkout-notice.is-error{border-color:#fecaca;background:#fff1f2;color:#991b1b}.sp-trial-checkout-notice a{display:inline-block;margin-top:10px;color:inherit;font-weight:850}
.sp-privacy-policy{width:min(960px,calc(100vw - 32px));margin:20px auto 90px;padding:clamp(26px,5vw,54px);border-radius:34px;background:var(--sp-paper);color:var(--sp-ink)}.sp-privacy-lead{max-width:760px;margin:0 0 34px;color:var(--sp-muted);font-size:20px;line-height:1.65}.sp-privacy-policy section{padding:24px 0;border-top:1px solid #d8d2c8}.sp-privacy-policy section h2{margin:0 0 10px;color:var(--sp-ink);font-size:22px;letter-spacing:-.02em}.sp-privacy-policy section p{margin:0;color:var(--sp-muted);line-height:1.7}.sp-privacy-policy a{color:var(--sp-blue);font-weight:750}.sp-privacy-updated{margin:28px 0 0;color:#757d8b;font-size:14px}@media(max-width:600px){.sp-privacy-policy{width:calc(100vw - 20px);padding:24px 19px;border-radius:24px}.sp-privacy-lead{font-size:17px}.sp-privacy-policy section h2{font-size:19px}}
