:root{
--purple-dark:#32105f;--purple:#5511a6;--purple-top:#6519b9;--purple-bottom:#4b1398;--purple-link:#4a1f9c;
--ink:#24124f;--text:#292441;--page-bg:#f7f7f7;--panel-bg:#f0d5d8;--white:#fff;--red:#cc2437;--footer:#480094;
--font:Arial,Helvetica,sans-serif;--page-max:1170px;--content-max:970px;
}
*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font);color:var(--text);background:var(--page-bg)}
.topbar{height:59px;padding:0 54px;display:flex;align-items:center;justify-content:space-between;background:#fafafa;border-top:3px solid #fff;border-bottom:2px solid #ddd;color:var(--ink);font-size:18px}
.language{border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.language span{margin-left:9px;font-size:23px;font-weight:700}.hello strong{font-weight:800}
.main-nav{min-height:123px;padding:0 28px;display:flex;align-items:center;gap:30px;background:linear-gradient(90deg,#5a00c6,#6900d7 55%,#5d00c9);color:#fff}
.brand{display:flex;align-items:center;gap:27px;flex:none}.brand img{display:block;object-fit:contain}.bc-logo{width:126px;height:58px}.ielts-logo{width:120px;height:58px}
.nav-links{flex:1;display:flex;align-items:center;gap:38px}.nav-links a{color:#fff;text-decoration:none;white-space:nowrap;font-size:22px;font-weight:700}.nav-links a.active{text-decoration:underline;text-underline-offset:5px}
.logout{min-width:141px;height:61px;padding:0 17px;border:0;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,rgba(132,78,225,.88),rgba(111,57,207,.78));box-shadow:0 5px 13px rgba(23,0,65,.25);color:#fff;font-size:21px;font-weight:700;cursor:pointer}
.logout-icon{width:32px;height:32px;display:inline-flex}.logout-icon svg{width:100%;height:100%}

.preparation-page{width:min(var(--page-max),calc(100% - 48px));margin:auto;padding:58px 0 40px}.preparation-page h1{margin:0 0 58px;color:var(--ink);font-size:66px;line-height:1;font-weight:900;letter-spacing:-1px}
.preparation-panel{background:var(--panel-bg);padding:54px 104px 72px}.preparation-panel>h2,.service-card,.access-heading,.website-copy{width:min(100%,var(--content-max));margin-left:auto;margin-right:auto}
.preparation-panel>h2{margin-top:0;margin-bottom:34px;color:var(--ink);font-size:38px;line-height:1.1;font-weight:900}
.service-card{padding:34px 28px 40px;background:#fff;border-radius:5px;box-shadow:0 2px 7px rgba(28,20,50,.22)}
.service-card h3{margin:0 0 24px;color:var(--red);font-size:38px;line-height:1.05;font-style:italic;font-weight:900}.service-card p{margin:0 0 20px;font-size:25px;line-height:1.3}.service-card em{color:var(--red)}
.primary-button{min-width:240px;min-height:68px;padding:16px 28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(180deg,var(--purple-top),var(--purple-bottom));color:#fff;text-decoration:none;font-size:24px;font-weight:800}.primary-button:hover{filter:brightness(1.08)}
.access-heading{margin-top:30px;margin-bottom:13px;font-size:25px;line-height:1.35}.card-title-row{display:flex;align-items:center;gap:42px;margin-bottom:24px}.card-title-row h3{margin:0}
.free-badge{min-width:212px;padding:9px 27px 10px;display:inline-flex;justify-content:center;border-radius:999px;background:linear-gradient(180deg,#fff16b,#f6db28);color:#2d2446;font-size:20px;font-weight:800}
.website-copy{margin-top:29px;margin-bottom:0;font-size:25px;line-height:1.35}.website-copy a{color:var(--purple-link);font-weight:700}
.site-footer{margin-top:40px;padding:58px 0 54px;background:linear-gradient(90deg,#5a00c6,#6900d7 55%,#5d00c9);color:#fff}.footer-inner{width:min(1650px,calc(100% - 110px));margin:auto}.footer-links{display:flex;align-items:center;gap:18px;margin-bottom:58px;font-size:18px;font-weight:700}.footer-links a{color:#fff;text-decoration:none}.footer-links span{width:2px;height:29px;background:rgba(255,255,255,.9)}.site-footer p{margin:0 0 34px;font-size:18px;line-height:1.45;font-weight:700}.footer-description{margin-bottom:0!important;font-weight:400!important}
.logout-loading{
  position:fixed;
  inset:0;
  background:rgba(35, 10, 70, 0.55);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:9999;
  transition:opacity .2s ease;
}

.logout-loading.show{
  opacity:1;
  visibility:visible;
  pointer-events:all;
}

.logout-loading-box{
  width:360px;
  background:#fff;
  border-radius:12px;
  padding:30px 32px;
  text-align:center;
  box-shadow:0 12px 40px rgba(0,0,0,.25);
}

.loading-bar{
  width:100%;
  height:8px;
  background:#e5d9f2;
  border-radius:20px;
  overflow:hidden;
  margin-bottom:18px;
}

.loading-progress{
  width:0;
  height:100%;
  background:#5b00c8;
  border-radius:20px;
  animation:logoutProgress 3s linear forwards;
}

.loading-text{
  color:#35105f;
  font-size:18px;
  font-weight:700;
}

@keyframes logoutProgress{
  from{
    width:0%;
  }
  to{
    width:100%;
  }
}
@media(max-width:1250px){.main-nav{gap:22px}.brand{gap:18px}.bc-logo{width:108px}.ielts-logo{width:104px}.nav-links{gap:20px}.nav-links a{font-size:18px}}
@media(max-width:900px){.topbar{padding:0 22px}.main-nav{padding:18px 22px;flex-wrap:wrap}.nav-links{order:3;width:100%;overflow-x:auto}.logout{margin-left:auto}.preparation-panel{padding:42px 34px}.footer-inner{width:min(100% - 44px,1650px)}.preparation-page h1{font-size:50px}.preparation-panel>h2{font-size:32px}.service-card h3{font-size:31px}.service-card p,.access-heading,.website-copy{font-size:21px}}
@media(max-width:600px){.topbar{height:52px;padding:0 14px;font-size:15px}.main-nav{padding:14px}.brand{gap:14px}.bc-logo{width:96px;height:42px}.ielts-logo{width:82px;height:42px}.logout{min-width:112px;min-height:50px;font-size:16px}.preparation-page{width:min(100% - 28px,var(--page-max));padding-top:38px}.preparation-page h1{font-size:42px;margin-bottom:36px}.preparation-panel{padding:32px 20px 38px}.preparation-panel>h2{font-size:29px}.service-card{padding:28px 20px 30px}.service-card h3{font-size:28px}.service-card p,.access-heading,.website-copy{font-size:18px}.card-title-row{align-items:flex-start;flex-direction:column;gap:14px}.primary-button{width:100%}.footer-links{flex-wrap:wrap;gap:12px;margin-bottom:38px}.footer-links span{height:22px}}