:root { --blue: #0756b7; --blue2: #0067dc; --ink: #14191f; --muted: #7b8491; --line: #e9edf2; --bg: #f7f9fb; --danger: #e73535; --green: #19a566; --shadow: 0 2px 12px rgba(20,35,55,.05); font-family: Inter, "PingFang SC", "Microsoft YaHei", Arial, sans-serif; color: var(--ink); background: var(--bg); font-synthesis: none; }
* { box-sizing: border-box; }
body { margin: 0px; font-size: 14px; }
button, input { font: inherit; }
button { cursor: pointer; }




.brand { display: flex; align-items: center; gap: 9px; font-size: 22px; font-style: italic; font-weight: 900; letter-spacing: -1px; color: rgb(7, 84, 166); white-space: nowrap; }


































.btn { border: 0px; border-radius: 5px; padding: 10px 18px; background: var(--blue); color: rgb(255, 255, 255); font-weight: 600; }
.btn.ghost { background: rgb(255, 255, 255); color: rgb(32, 37, 43); border: 1px solid var(--line); }












.login-shell { min-height: 100vh; display: grid; grid-template-columns: 1.1fr 0.9fr; background: rgb(255, 255, 255); }
.login-art { background: linear-gradient(145deg, rgb(241, 247, 255), rgb(220, 236, 255)); display: flex; align-items: center; justify-content: center; overflow: hidden; position: relative; }

.login { width: min(420px, 100% - 48px); margin: auto; }
.login .brand { font-size: 28px; margin-bottom: 50px; }
.login h1 { font-size: 30px; margin: 0px 0px 10px; }
.login p { color: var(--muted); margin: 0px 0px 34px; }
.field { margin-bottom: 18px; }
.field label { display: block; margin-bottom: 8px; font-size: 13px; }
.field input { width: 100%; height: 46px; border: 1px solid rgb(223, 228, 234); border-radius: 6px; padding: 0px 13px; outline: 0px; }
.field input:focus { border-color: var(--blue); box-shadow: rgba(7, 86, 183, 0.1) 0px 0px 0px 3px; }
.login .btn { width: 100%; height: 46px; }
.login-links { display: flex; justify-content: space-between; margin-top: 18px; color: var(--blue); }
.alert { padding: 12px 14px; background: rgb(255, 241, 241); color: rgb(197, 45, 45); border-radius: 6px; margin-bottom: 18px; }






.loading { min-height: 60vh; display: grid; place-items: center; color: var(--muted); }
.toast { position: fixed; right: 24px; top: 92px; background: rgb(24, 34, 46); color: rgb(255, 255, 255); padding: 12px 18px; border-radius: 6px; z-index: 40; }

@media (max-width: 900px) {

.email, .lang { display: none; }


.login-shell { grid-template-columns: 1fr; }
.login-art { display: none; }
.login { padding: 60px 0px; }
}
@media (max-width: 560px) {










}
























































@media (max-width: 900px) {

}
@media (max-width: 560px) {

}

.field select { width: 100%; height: 46px; border: 1px solid rgb(223, 228, 234); border-radius: 6px; padding: 0px 12px; background: rgb(255, 255, 255); }
.inline-alert { margin: 0px 20px 12px; }
























































@media (max-width: 760px) {




}






















@media (max-width: 600px) {


}




























@media (max-width: 700px) {



}
















@media (max-width: 700px) {
}







@media (max-width: 700px) {
}










.loading-notice { opacity: 0.78; }
@media (max-width: 700px) {


}










@keyframes noticeReveal { 
  0% { opacity: 0.2; transform: translateY(4px); }
  100% { opacity: 1; transform: none; }
}




@media (max-width: 1024px) {




}
@media (max-width: 900px) {

.brand { height: 46px; }










}
@media (max-width: 640px) {

.brand { font-size: 19px; }



.profile .email, .profile > span:last-child { display: none; }
































.toast { inset: auto 12px 18px; text-align: center; }
}












.order-pager button:hover:not(:disabled), .order-pager button.active { border-color: rgb(7, 86, 183); background: rgb(7, 86, 183); color: rgb(255, 255, 255); }
























@media (max-width: 640px) {











}

































@keyframes subscription-stripes { 
  100% { background-position: 16px 0px; }
}




@media (max-width: 560px) {




}






@media (max-width: 640px) {


}
.brand { gap: 10px !important; color: rgb(28, 40, 56) !important; font-style: normal !important; font-weight: 700 !important; letter-spacing: -0.5px !important; }










.login .brand { font-size: inherit; }
.login .brand-mark { width: 42px; height: 42px; flex-basis: 42px; }
.login .brand-word { font-size: 28px; }
.public-footer .brand-mark { filter: none; }
@media (max-width: 640px) {


.public-header .brand-mark { width: 30px; height: 30px; flex-basis: 30px; }
.public-header .brand-word { font-size: 18px; }}
.brand { gap: 0px !important; }




.login .brand-word { font-size: 30px; }
.public-footer .brand-word { font-size: 22px; }
@media (max-width: 640px) {.top-in > .brand .brand-word, .public-header .brand-word { font-size: 19px !important; }}
.brand { flex: 0 0 auto; display: inline-flex !important; align-items: center !important; line-height: 1 !important; }
.brand-logo { display: block; width: 158px; height: auto; max-height: 38px; object-fit: contain; object-position: left center; }
.login .brand-logo { width: 210px; max-height: 52px; }
.public-footer .brand-logo { width: 174px; max-height: 42px; }
@media (max-width: 640px) {.top-in > .brand .brand-logo, .public-header .brand-logo { width: 132px; max-height: 32px; }
.public-footer .brand-logo { width: 150px; max-height: 36px; }}






















@media (max-width: 760px) {





}





























.article-body .v2k-alert { gap: 12px; background: rgb(237, 245, 255) !important; border-color: rgb(201, 223, 248) !important; }


.article-body .alert { padding: 18px 20px; border: 1px solid transparent; border-radius: 12px; }
.article-body .alert-warning { background: rgb(255, 248, 230); border-color: rgb(255, 224, 160); color: rgb(94, 75, 31); }
.article-body .alert-heading { margin-top: 0px; }




@media (max-width: 640px) {



.article-body .v2k-alert, .article-body .alert { padding: 15px; }


}

.traffic-list-loading { min-height: 450px; display: grid; place-items: center; color: rgb(138, 149, 166); }
















@media (max-width: 640px) {


}
.panel, .stat, .plan, .dashboard-notice-card, .reference-login-card { border-color: rgb(230, 233, 238); border-radius: 8px; box-shadow: rgba(31, 45, 61, 0.043) 0px 2px 10px; }













@keyframes menuReveal { 
  0% { opacity: 0; transform: translateY(-5px); }
  100% { opacity: 1; transform: none; }
}





button, a, [data-go], [data-kid], [data-record], [data-tutorial-id] { transition: color 0.16s, background-color 0.16s, border-color 0.16s, box-shadow 0.16s, transform 0.12s, opacity 0.16s; }
button:active, [data-go]:active, [data-kid]:active, [data-record]:active, [data-tutorial-id]:active { transform: scale(0.98); }
button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible, textarea:focus-visible, [tabindex]:focus-visible { outline: rgba(36, 107, 253, 0.65) solid 2px; outline-offset: 2px; }
button:disabled { cursor: not-allowed; opacity: 0.5; }






.profile .email { min-width: 0px; flex: 1 1 0%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: rgb(98, 108, 119); font-size: 12px; text-align: left; }







@media (max-width: 640px) {




.profile .email, .profile-chevron { display: none; }

}
@media (max-width: 360px) {
}

@media (max-width: 640px) {


















}
@media (max-width: 380px) {










}

























@media (max-width: 640px) {












}

.public-page { min-height: 100vh; background: rgb(255, 255, 255); color: rgb(23, 32, 42); }
.public-header { height: 72px; border-bottom: 1px solid rgb(240, 242, 245); background: rgb(255, 255, 255); }
.public-header-in { width: min(1120px, 100% - 40px); height: 100%; margin: auto; display: flex; align-items: center; gap: 56px; }
.public-header nav { display: flex; gap: 34px; }
.public-header nav button { border: 0px; background: none; color: rgb(28, 37, 46); }
.public-tools { margin-left: auto; display: flex; align-items: center; gap: 22px; font-size: 13px; }

.public-language-control { display: flex; align-items: center; gap: 8px; color: rgb(83, 97, 112); }
.public-language-control svg { width: 18px; height: 18px; fill: none; stroke: currentcolor; stroke-width: 1.7; }
.public-language-control select { height: 38px; padding: 0px 28px 0px 10px; border: 1px solid rgb(226, 231, 237); border-radius: 10px; background: rgb(255, 255, 255); color: rgb(38, 52, 66); font: inherit; cursor: pointer; outline: none; }
.public-language-control select:hover, .public-language-control select:focus { border-color: rgb(143, 181, 232); box-shadow: rgba(7, 86, 183, 0.08) 0px 0px 0px 3px; }
.reference-auth-card .auth-subtitle { margin: -8px 0px 24px; color: rgb(122, 133, 145); font-size: 14px; line-height: 1.6; text-align: center; }
.reference-auth-card .auth-code-row { display: grid; grid-template-columns: minmax(0px, 1fr) auto; gap: 10px; align-items: center; }
.reference-auth-card .auth-code-row .btn { height: 44px; margin: 0px; padding: 0px 18px; white-space: nowrap; }
.reference-auth-card .register-line button { border: 0px; background: none; color: rgb(7, 86, 183); cursor: pointer; }
.reference-auth-card .auth-email-composer { display: grid; grid-template-columns: minmax(90px, 1fr) auto minmax(130px, 1.15fr); align-items: center; border: 1px solid rgb(223, 229, 236); border-radius: 10px; background: rgb(255, 255, 255); overflow: hidden; }
.reference-auth-card .auth-email-composer:focus-within { border-color: rgb(143, 181, 232); box-shadow: rgba(7, 86, 183, 0.08) 0px 0px 0px 3px; }
.reference-auth-card .auth-email-composer input, .reference-auth-card .auth-email-composer select { height: 44px; background: rgb(255, 255, 255); min-width: 0px; border: 0px !important; border-radius: 0px !important; box-shadow: none !important; }
.reference-auth-card .auth-email-composer span { color: rgb(138, 150, 163); }
.reference-auth-card .auth-email-composer select { padding: 0px 28px 0px 10px; cursor: pointer; }
.reference-auth-card .allowed-email-hint { display: block; margin-top: 7px; color: rgb(138, 150, 163); font-size: 12px; }
.reference-auth-card .email-suffix-unavailable { padding: 12px 14px; border: 1px solid rgb(255, 214, 214); border-radius: 10px; background: rgb(255, 245, 245); color: rgb(192, 57, 43); font-size: 13px; line-height: 1.5; }
.public-login-main { min-height: 610px; display: grid; place-items: center; background: rgb(248, 250, 252); }
.reference-login-card { width: 490px; padding: 42px 34px 30px; border: 1px solid rgb(238, 241, 244); border-radius: 5px; background: rgb(255, 255, 255); box-shadow: rgba(33, 55, 82, 0.08) 0px 12px 34px; }
.reference-login-card h1 { margin: 0px 0px 34px; text-align: center; font-size: 24px; font-weight: 500; }
.reference-login-card .field { margin-bottom: 18px; }
.reference-login-card .field label { font-size: 13px; }
.reference-login-card .field input { height: 42px; border-radius: 4px; }
.password-field { position: relative; }
.password-field #togglePassword { position: absolute; right: 8px; bottom: 7px; width: 30px; height: 30px; border: 0px; background: none; color: rgb(154, 163, 173); }
.forgot-row { text-align: right; margin: -6px 0px 25px; }
.forgot-row button, .register-line button { padding: 0px; border: 0px; background: none; color: rgb(7, 86, 183); }
.login-submit { width: 100%; height: 48px; border-radius: 5px; background: rgb(7, 75, 159); }
.register-line { text-align: center; margin: 24px 0px 0px; color: rgb(138, 146, 156); }
.public-footer { width: min(1120px, 100% - 40px); margin: auto; padding: 48px 0px 36px; }
.public-footer-grid { display: grid; grid-template-columns: 1.3fr 0.7fr 0.7fr 1.1fr; gap: 70px; }
.public-footer .brand { margin-bottom: 24px; }
.public-footer h3 { margin: 0px 0px 25px; font-size: 16px; }
.public-footer p, .public-footer a { display: block; color: rgb(79, 89, 101); font-size: 12px; line-height: 1.8; margin: 0px 0px 13px; }
.cooperate-mail { height: 38px; display: flex; align-items: center; justify-content: space-between; padding-left: 12px; border: 1px solid rgb(232, 235, 239); border-radius: 4px; color: rgb(105, 117, 134); font-size: 12px; }
.cooperate-mail b { height: 100%; width: 38px; display: grid; place-items: center; background: rgb(7, 86, 183); color: rgb(255, 255, 255); border-radius: 0px 4px 4px 0px; }
.copyright { margin-top: 65px; font-size: 12px; color: rgb(56, 66, 77); }




























.main:has(> .reference-security-panel) > .alert { grid-column: 1 / -1; }



















@media (max-width: 480px) {
}







@media (max-width: 480px) {


}
@media (max-width: 640px) {















}



















.public-page > .theme-custom-footer, .login-shell > .theme-custom-footer { width: min(1180px, 100% - 32px); grid-column: 1 / -1; }































@media (max-width: 760px) {


.public-header { height: auto; }
.public-header-in { min-height: 64px; gap: 14px; }
.public-header nav { display: none; }
.public-tools > span { display: none; }
.public-language-control select { height: 36px; max-width: 130px; }
.reference-auth-card .auth-code-row { grid-template-columns: 1fr; }
.reference-auth-card .auth-code-row .btn { width: 100%; }
.reference-auth-card .auth-email-composer { grid-template-columns: minmax(72px, 1fr) auto minmax(112px, 1.2fr); }
.public-login-main { min-height: 520px; padding: 26px 14px; }
.reference-login-card { width: min(100%, 490px); padding: 30px 20px; }
.public-footer-grid { grid-template-columns: 1fr 1fr; gap: 30px; }

















}
@media (max-width: 480px) {.public-header-in, .public-footer { width: calc(100% - 24px); }
.public-footer-grid { grid-template-columns: 1fr; }
.public-footer { padding-top: 32px; }
.copyright { margin-top: 32px; }

.reference-login-card h1 { margin-bottom: 26px; }

}
@media (max-width: 360px) {


}
html, body { max-width: 100%; overflow-x: hidden; }




@media (max-width: 760px) {body { font-size: 13px; }













































.toast { left: 12px; right: 12px; top: 72px; width: auto; text-align: center; }





}
@media (max-width: 560px) {






























.public-language-control select { max-width: 105px; }}
@media (max-width: 360px) {



}










@media (max-width: 560px) {

}
@media (max-width: 640px) {














@keyframes mobileNavShade { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes mobileNavSheet { 
  0% { opacity: 0; transform: translateY(-10px) scale(0.985); }
  100% { opacity: 1; transform: translateY(0px) scale(1); }
}}
@media (max-width: 640px) {













@keyframes accountMenuMobile { 
  0% { opacity: 0; transform: translateY(-7px) scale(0.97); }
  100% { opacity: 1; transform: translateY(0px) scale(1); }
}}
@media (max-width: 360px) {
}
@media (max-width: 640px) {



























}
@media (max-width: 380px) {
}


@media (max-width: 640px) {






















}
@media (max-width: 640px) {.public-header-in { gap: 8px !important; }
.public-header-in > .brand { min-width: 0px; flex: 0 1 auto; }
.public-tools { flex: 0 0 auto; margin-left: auto !important; gap: 0px !important; }
.public-language-control { position: relative; display: flex; width: 96px; height: 36px; align-items: center; gap: 4px; padding: 0px 5px; border: 1px solid rgb(225, 231, 238); border-radius: 8px; background: rgb(247, 249, 252); color: rgb(83, 100, 119); }
.public-language-control svg { width: 14px; height: 14px; flex: 0 0 14px; }
.public-language-control select { color: rgb(52, 67, 83); font-weight: 550; width: 68px !important; min-width: 0px !important; max-width: 68px !important; height: 34px !important; padding: 0px 18px 0px 3px !important; border: 0px !important; background-color: transparent !important; font-size: 11px !important; box-shadow: none !important; outline: none !important; }
.public-language-control:focus-within { border-color: rgb(158, 187, 224); background: rgb(242, 247, 253); box-shadow: rgba(1, 52, 130, 0.07) 0px 0px 0px 2px; }}
@media (max-width: 380px) {.public-header-in .brand-logo { width: 120px !important; }
.public-language-control { width: 86px; }
.public-language-control select { width: 58px !important; max-width: 58px !important; padding-right: 14px !important; font-size: 10px !important; }}
@media (max-width: 640px) {.public-language-control { position: relative; border-color: rgb(225, 231, 238); background: rgb(245, 247, 250); width: 40px !important; height: 38px !important; padding: 0px !important; justify-content: center !important; }
.public-language-control svg { pointer-events: none; width: 19px !important; height: 19px !important; flex: 0 0 19px !important; }
.public-language-control select { cursor: pointer; appearance: auto; position: absolute !important; inset: 0px !important; width: 40px !important; max-width: 40px !important; height: 38px !important; padding: 0px !important; opacity: 0 !important; }
.public-language-control:hover { border-color: rgb(185, 200, 216); background: rgb(238, 243, 248); color: rgb(1, 52, 130); }}
@media (max-width: 380px) {.public-language-control { width: 38px !important; }
.public-language-control select { width: 38px !important; max-width: 38px !important; }}
@media (max-width: 640px) {.public-language-control { width: 82px !important; padding: 0px 5px !important; justify-content: flex-start !important; gap: 3px !important; }
.public-language-control svg { width: 14px !important; height: 14px !important; flex-basis: 14px !important; }
.public-language-control select { appearance: auto; color: rgb(52, 67, 83); position: static !important; inset: auto !important; width: 54px !important; max-width: 54px !important; height: 34px !important; padding: 0px 14px 0px 2px !important; opacity: 1 !important; background: transparent !important; font-size: 11px !important; }}
@media (max-width: 380px) {.public-language-control { width: 76px !important; }
.public-language-control select { width: 48px !important; max-width: 48px !important; padding-right: 10px !important; font-size: 10px !important; }}
@media (max-width: 640px) {.public-language-control { box-sizing: border-box; width: 102px !important; min-width: 102px !important; padding: 0px 6px !important; gap: 5px !important; }
.public-language-control select { box-sizing: border-box; white-space: nowrap; width: 70px !important; min-width: 70px !important; max-width: 70px !important; padding: 0px 20px 0px 3px !important; font-size: 12px !important; line-height: 34px !important; }}
@media (max-width: 380px) {.public-language-control { width: 96px !important; min-width: 96px !important; padding-inline: 5px !important; }
.public-language-control select { width: 66px !important; min-width: 66px !important; max-width: 66px !important; padding-right: 18px !important; font-size: 12px !important; }}
@media (max-width: 640px) {.public-language-control::after { content: ""; position: absolute; right: 7px; top: 50%; width: 6px; height: 6px; border-right: 1.5px solid rgb(96, 112, 128); border-bottom: 1.5px solid rgb(96, 112, 128); transform: translateY(-70%) rotate(45deg); pointer-events: none; }
.public-language-control select { appearance: none !important; padding-right: 13px !important; text-overflow: clip !important; }}
@media (max-width: 380px) {.public-language-control select { padding-right: 12px !important; }}
@media (max-width: 640px) {












}




@media (max-width: 640px) {












}





@media (max-width: 640px) {












}





@media (max-width: 640px) {.toast { line-height: 1.4; text-align: center; white-space: normal; transform: translateX(-50%); box-shadow: rgba(1, 52, 130, 0.2) 0px 8px 24px; inset: 76px auto auto 50% !important; width: max-content !important; max-width: calc(-32px + 100vw) !important; min-height: 0px !important; padding: 10px 16px !important; border-radius: 8px !important; }

.combined-promo [data-copy-link]:focus:not(:focus-visible) { outline: none; box-shadow: none; }}
@media (min-width: 641px) and (max-width: 1100px) {












.top-in > .tools .profile .email, .top-in > .tools .profile .profile-chevron { display: none !important; }









}




@media (max-width: 640px) {






}
@media (min-width: 641px) and (max-width: 1100px) {html { text-size-adjust: 100%; }



}

@media (min-width: 641px) and (max-width: 1100px) {html { overflow-y: scroll !important; }

}
.reference-auth-card { width: 490px; padding: 38px 34px 28px; border-radius: 10px; }
.reference-auth-card h1 { margin: 0px 0px 8px; font-size: 24px; font-weight: 600; letter-spacing: -0.2px; }
.reference-auth-card .auth-subtitle { margin: 0px 0px 28px; color: rgb(120, 132, 145); font-size: 13px; line-height: 1.55; }
.reference-auth-card .field { margin-bottom: 17px; }
.reference-auth-card .field > label { display: block; margin: 0px 0px 8px; color: rgb(52, 64, 76); font-size: 13px; font-weight: 500; line-height: 1.4; }
.reference-auth-card .field > input, .reference-auth-card .auth-code-row > input { width: 100%; height: 46px; padding: 0px 13px; border: 1px solid rgb(223, 229, 236); border-radius: 8px; background: rgb(255, 255, 255); color: rgb(31, 44, 56); font-size: 14px; outline: none; transition: border-color 0.18s, box-shadow 0.18s; }
.reference-auth-card .field > input:focus, .reference-auth-card .auth-code-row:focus-within, .reference-auth-card .auth-email-composer:focus-within { border-color: rgb(120, 168, 229); box-shadow: rgba(7, 86, 183, 0.08) 0px 0px 0px 3px; }
.reference-auth-card .auth-email-composer { height: 46px; grid-template-columns: minmax(90px, 1fr) 28px minmax(145px, 1.15fr); border-radius: 8px; }
.reference-auth-card .auth-email-composer input, .reference-auth-card .auth-email-composer select { height: 44px; padding: 0px 13px; font-size: 14px; }
.reference-auth-card .auth-email-composer span { display: grid; height: 24px; place-items: center; border-left: 1px solid rgb(237, 240, 244); border-right: 1px solid rgb(237, 240, 244); color: rgb(125, 137, 150); font-weight: 600; }
.reference-auth-card .auth-email-composer select { padding-right: 30px; color: rgb(38, 52, 66); }
.reference-auth-card .allowed-email-hint { margin: 7px 2px 0px; color: rgb(138, 150, 163); font-size: 11px; }
.reference-auth-card .auth-code-row { height: 46px; display: grid; grid-template-columns: minmax(0px, 1fr) 116px; gap: 0px; border: 1px solid rgb(223, 229, 236); border-radius: 8px; overflow: hidden; transition: border-color 0.18s, box-shadow 0.18s; }
.reference-auth-card .auth-code-row > input { height: 44px; border: 0px; border-radius: 0px; box-shadow: none !important; }
.reference-auth-card .auth-code-row .btn { height: 44px; width: auto; padding: 0px 12px; border-width: 0px 0px 0px 1px; border-style: none none none solid; border-color: currentcolor currentcolor currentcolor rgb(229, 234, 240); border-image: none; border-radius: 0px; background: rgb(247, 250, 255); color: rgb(7, 86, 183); font-size: 13px; font-weight: 500; }
.reference-auth-card .auth-code-row .btn:hover { background: rgb(237, 245, 255); }
.reference-auth-card .auth-code-row .btn.is-sending { color: rgb(94, 113, 134); background: rgb(244, 247, 250); }
.reference-auth-card .auth-code-row .btn.is-countdown { color: rgb(115, 128, 146); background: rgb(243, 245, 248); cursor: not-allowed; }
.reference-auth-card .login-submit { height: 46px; margin-top: 4px; border-radius: 8px; font-weight: 600; box-shadow: rgba(7, 75, 159, 0.16) 0px 7px 16px; }
.reference-auth-card .register-line { margin-top: 20px; }
.reference-auth-card .register-line button { font-size: 13px; }
@media (max-width: 760px) {.reference-auth-card { width: min(100%, 490px); padding: 30px 20px 24px; border-radius: 10px; }
.reference-auth-card .auth-email-composer { grid-template-columns: minmax(72px, 1fr) 26px minmax(118px, 1.15fr); }
.reference-auth-card .auth-code-row { grid-template-columns: minmax(0px, 1fr) 108px; }
.reference-auth-card .auth-code-row .btn { width: auto; font-size: 12px; }}
:root { --landing-blue: #013482; --landing-blue-light: #245197; --landing-text: rgba(0,0,0,.88); --landing-muted: #66717d; --landing-border: #e8ebef; --landing-surface: #fff; --landing-bg: #f7f9fc; --landing-radius: 6px; }
html, body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; color: var(--landing-text); }
body { background: var(--landing-bg); }



.top .brand-word, .public-header .brand-word, .public-footer .brand-word { color: var(--landing-blue); }
.top .brand-word b, .top .brand-word em, .public-header .brand-word b, .public-header .brand-word em, .public-footer .brand-word b, .public-footer .brand-word em { color: var(--landing-blue) !important; }















.language-control, .public-language-control select { border-color: rgb(227, 231, 235); border-radius: var(--landing-radius); box-shadow: none; }
.language-control:focus-within, .public-language-control select:focus { border-color: rgb(155, 183, 220); box-shadow: rgba(1, 52, 130, 0.07) 0px 0px 0px 2px; }










.btn, .login-submit, .renew-plan-btn, .period-card, .back-btn { border-radius: var(--landing-radius); }
.btn:not(.ghost), .login-submit, .renew-plan-btn { border-color: var(--landing-blue); background: var(--landing-blue); color: rgb(255, 255, 255); box-shadow: rgba(1, 52, 130, 0.06) 0px 2px 0px; }
.btn:not(.ghost):hover, .login-submit:hover, .renew-plan-btn:hover { border-color: rgb(36, 81, 151); background: rgb(36, 81, 151); transform: none; box-shadow: rgba(1, 52, 130, 0.14) 0px 3px 8px; }

.btn.ghost, .back-btn { border-color: rgb(217, 217, 217); background: rgb(255, 255, 255); color: var(--landing-text); box-shadow: rgba(0, 0, 0, 0.02) 0px 2px 0px; }
.btn.ghost:hover, .back-btn:hover { border-color: rgb(174, 189, 206); color: var(--landing-blue); background: rgb(255, 255, 255); }









.reference-login-card { border-color: rgb(236, 239, 242); border-radius: var(--landing-radius); box-shadow: rgba(1, 52, 130, 0.067) 0px 12px 34px; }
.public-login-main { background: rgb(248, 250, 252); }
.reference-login-card h1 { color: var(--landing-text); font-weight: 600; }
.reference-login-card .field input, .reference-auth-card .auth-email-composer, .reference-auth-card .auth-code-row { border-radius: var(--landing-radius); }
.public-header { height: 72px; border-color: rgb(240, 241, 243); box-shadow: none; }
.public-header-in, .public-footer { width: min(1120px, 100% - 40px); }
.public-footer { color: rgb(79, 89, 101); }

.toast { border-radius: var(--landing-radius); background: var(--landing-blue); }

@media (max-width: 760px) {



.panel, .stat, .plan, .course, .checkout-box, .reference-login-card { border-radius: var(--landing-radius); }


.public-header-in, .public-footer, .theme-custom-footer { width: calc(100% - 24px); }}
@media (min-width: 1001px) {.top-in, .sub-in, .main, .public-header-in, .public-footer, .theme-custom-footer { width: min(1440px, 80%); }}






@media (pointer: coarse) {button, .btn, .mini-btn, select { min-height: 40px; }
}
@media (prefers-reduced-motion: reduce) {*, ::before, ::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }}






@keyframes paymentWatchSpin { 
  100% { transform: rotate(360deg); }
}

@media (max-width: 760px) {
}

@media (min-width: 1101px) {




}





























@media (max-width: 640px) {







}





@media (max-width: 640px) {


}




.reference-login-card .auth-password-control { position: relative; }
.reference-login-card .auth-password-control input { padding-right: 54px; }
.reference-login-card .auth-password-toggle { position: absolute; right: 3px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0px; border: 0px; border-radius: 7px; background: transparent; color: rgb(123, 132, 145); box-shadow: none; cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.reference-login-card .auth-password-toggle:hover, .reference-login-card .auth-password-toggle:active, .reference-login-card .auth-password-toggle[aria-pressed="true"] { background: transparent; color: rgb(123, 132, 145); box-shadow: none; }
.reference-login-card .auth-password-toggle:focus-visible { outline: rgb(7, 86, 183) solid 2px; outline-offset: -3px; }
.reference-login-card .auth-password-toggle svg { width: 21px; height: 21px; fill: none; stroke: currentcolor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
.reference-auth-card .auth-email-composer select { width: 100%; touch-action: manipulation; pointer-events: auto; position: relative; z-index: 1; }
@media (max-width: 640px) {.reference-auth-card .auth-email-composer { height: 50px; grid-template-columns: minmax(0px, 1fr) 20px auto; overflow: hidden; }
.reference-auth-card .auth-email-composer input { height: 48px; min-width: 0px; font-size: 16px; padding: 0px 10px; }
.reference-auth-card .auth-email-composer span { height: 48px; border: 0px; pointer-events: none; }
.reference-auth-card .auth-email-composer select { height: 48px; min-height: 48px; font-size: 16px; padding: 0px 4px; appearance: menulist; }}
.reference-auth-card .auth-email-composer { grid-template-columns: minmax(0px, 1fr) 20px auto; }
.reference-auth-card .auth-email-composer select { width: auto; max-width: 160px; padding-left: 4px; padding-right: 4px; }
@media (max-width: 640px) {.reference-auth-card .auth-email-composer select { max-width: 140px; }}
.public-footer { box-sizing: border-box; width: min(1280px, 100%); margin: 0px auto; padding: 48px; color: rgb(51, 51, 51); }
.public-footer-grid { display: grid; grid-template-columns: 8fr 5fr 5fr 6fr; gap: 24px 0px; margin: 0px -16px; align-items: start; }
.public-footer-grid > div { min-width: 0px; padding: 0px 16px; }
.public-footer .brand { display: block; margin: 0px 0px 24px; }
.public-footer .brand-logo { width: 106px; max-height: 26px; height: auto; }
.public-footer h3 { font-size: 18px; line-height: 1.5714; font-weight: 500; margin: 0px 0px 24px; }
.public-footer p { font-size: 14px; line-height: 22px; margin: 0px 0px 24px; overflow-wrap: anywhere; }
.public-footer-grid > div:first-child p { font-size: 12px; line-height: 20px; max-width: 260px; margin-bottom: 0px; }
.public-footer-grid > div > a:not(.brand) { font-size: 14px; line-height: 22px; margin: 0px 0px 16px; }
.public-footer .cooperate-mail { max-width: 100%; min-width: 0px; font-size: 14px; overflow-wrap: anywhere; }
.public-footer .copyright { margin-top: 100px; padding: 0px; border: 0px; font-size: 14px; line-height: 22px; }
@media (max-width: 767px) {.public-footer { padding: 32px 24px; }
.public-footer h3 { font-size: 16px; margin-bottom: 20px; }
.public-footer .copyright { margin-top: 20px; font-size: 12px; line-height: 16px; }}
@media (max-width: 575px) {.public-footer-grid { grid-template-columns: minmax(0px, 1fr); row-gap: 24px; text-align: center; }
.public-footer-grid > div { grid-column: auto; }
.public-footer .brand { margin-bottom: 24px; }
.public-footer .brand-logo { margin: 0px auto; }
.public-footer-grid > div:first-child p { max-width: none; }
.public-footer-grid > div > a:not(.brand) { margin-bottom: 12px; }
.public-footer .copyright { text-align: center; }}
.public-footer { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-weight: 400; letter-spacing: normal; color: rgb(0, 0, 0); }
.public-footer h3, .public-footer p, .public-footer a:not(.brand), .public-footer .copyright { font-family: inherit; font-weight: 400; letter-spacing: normal; color: rgb(0, 0, 0); }
.public-footer .cooperate-mail { font-family: inherit; font-weight: 400; line-height: 22px; letter-spacing: normal; color: rgba(0, 0, 0, 0.88); }
.public-auth-actions { display: flex; align-items: center; gap: 8px; }
.public-auth-actions button { box-sizing: border-box; width: 94px; height: 32px; min-height: 32px; padding: 0px 15px; border: 1px solid rgb(217, 217, 217); border-radius: 6px; background: rgba(0, 0, 0, 0.1); color: rgba(0, 0, 0, 0.88); font: 400 14px / 22px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; white-space: nowrap; cursor: pointer; }
.public-auth-actions .public-signup { background: rgb(1, 52, 130); color: rgb(255, 255, 255); border-color: transparent; }
.public-auth-actions .public-signin:hover { color: rgb(1, 52, 130); border-color: rgb(1, 52, 130); }
.public-auth-actions .public-signup:hover { background: rgb(23, 75, 150); }
@media (max-width: 1199px) {.public-auth-actions { display: none; }}
@media (hover: none) and (pointer: coarse) {.public-auth-actions { display: none; }}
.public-footer .brand-logo { width: 158px; max-height: 38px; height: auto; object-fit: contain; }
@media (max-width: 640px) {.public-footer .brand-logo { width: 132px; max-height: 32px; }}
@media (max-width: 380px) {.public-footer .brand-logo { width: 120px; }}
.public-page { --public-gutter: 24px; background: rgb(250, 250, 250); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; }
.public-header { height: 59px; background: rgb(250, 250, 250); border-bottom: 1px solid rgba(0, 0, 0, 0.03); padding: 0 var(--public-gutter); }
.public-header-in { max-width: 1440px; height: 58px; min-height: 0px; margin: 0px auto; position: relative; width: 100% !important; gap: 0px !important; }
.public-page .public-header .brand-logo, .public-page .public-footer .brand-logo { object-fit: contain; width: 133px !important; height: 19px !important; max-height: 19px !important; }
.public-home-link { margin-left: 84px; color: rgb(0, 0, 0); text-decoration: none; font-size: 16px; font-weight: 600; }
.public-header .public-tools { gap: 0px !important; }
.public-header .public-language-control { display: flex; align-items: center; gap: 0px; width: 113px; height: 32px; padding: 0px; background: transparent; border: 0px; border-radius: 0px; box-shadow: none; }
.public-header .public-language-control svg { width: 19px; height: 19px; flex: 0 0 19px; }
.public-header .public-language-control select { min-height: 32px; font-weight: 400; color: rgb(34, 34, 34); position: static !important; width: 94px !important; min-width: 0px !important; max-width: 94px !important; height: 32px !important; padding: 0px 14px 0px 4px !important; font-size: 14px !important; background: transparent !important; border: 0px !important; opacity: 1 !important; }
.public-auth-actions { margin-left: 44px; position: relative; }
.public-auth-actions::before { content: ""; position: absolute; left: -27px; width: 1px; height: 24px; background: rgb(212, 212, 212); }
.public-mobile-menu { display: none; }
.public-login-main { background: rgb(250, 250, 250); min-height: 0px; padding: 100px var(--public-gutter); }
.reference-login-card { width: min(480px, 100%); margin: 0px; padding: 32px; border: 0px; border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.05) 0px 8px 30px; }
.public-footer { max-width: none; padding: 32px max(var(--public-gutter),calc((100% - 1440px)/2)); background: rgb(255, 255, 255); width: 100% !important; }
.public-footer .brand { margin-bottom: 0px; }
.public-footer-grid > div:first-child p { width: 220px; max-width: 100%; margin: 25px 0px 0px; font-size: 12px; line-height: 20px; }
.public-footer-grid > div > a:not(.brand) { opacity: 0.8; }
.public-footer-grid > div:last-child p { margin-bottom: 0px; }
.public-footer .cooperate-mail { height: 34px; margin-top: 40px; padding: 1px 1px 1px 12px; background: rgb(229, 229, 229); border: 1px solid rgb(217, 217, 217); border-radius: 6px; font-size: 14px; gap: 4px; }
.public-footer .cooperate-mail b { width: 30px; height: 30px; flex: 0 0 30px; border-radius: 6px; background: rgb(1, 52, 130); }
@media (min-width: 768px) {.public-page { --public-gutter: 48px; }
.public-footer { padding-top: 48px; padding-bottom: 48px; }}
@media (min-width: 1200px) {.public-page { --public-gutter: 124px; }}
@media (max-width: 991px) {.public-home-link { display: none; }
.public-mobile-menu { display: block; position: relative; z-index: 30; }
.public-mobile-menu summary { width: 32px; height: 32px; display: grid; place-items: center; list-style: none; cursor: pointer; }
.public-mobile-menu summary::-webkit-details-marker { display: none; }
.public-mobile-menu svg { width: 16px; height: 16px; fill: none; stroke: currentcolor; stroke-width: 1.8; }
.public-mobile-menu > div { position: absolute; top: 40px; left: 0px; min-width: 160px; padding: 12px; background: rgb(255, 255, 255); border: 1px solid rgb(238, 238, 238); border-radius: 6px; box-shadow: rgba(0, 0, 0, 0.07) 0px 4px 16px; }
.public-mobile-menu a { display: block; padding: 10px; color: rgb(34, 34, 34); text-decoration: none; }
.public-header-in > .brand { position: absolute; left: 50%; transform: translateX(-50%); }
.public-header .public-language-control { width: 48px; }
.public-header .public-language-control svg { display: none; }
.public-header .public-language-control select { width: 48px !important; max-width: 48px !important; font-size: 12px !important; padding-left: 0px !important; }}
@media (max-width: 768px) {.public-login-main { padding-top: 68px; padding-bottom: 68px; }
.public-footer-grid > div { text-align: center; margin-bottom: 32px; }
.public-footer h3 { font-size: 16px; margin-bottom: 20px; }
.public-footer-grid > div:first-child p { width: 100%; max-width: 300px; margin: 20px auto 0px; font-size: 14px; line-height: 22px; }
.public-footer .cooperate-mail { margin-top: 24px; }
.public-footer .copyright { margin-top: 20px; font-size: 12px; line-height: 18px; text-align: center; }}
@media (max-width: 576px) {.public-login-main { padding-top: 48px; padding-bottom: 48px; }
.reference-login-card { padding: 24px; }}
@media (max-width: 480px) {.public-footer-grid > div:first-child p { margin-top: 16px; font-size: 13px; line-height: 20px; }
.public-footer .copyright { font-size: 11px; line-height: 16px; }}
.public-header .public-language-control { height: 32px !important; min-width: 0px !important; padding: 0px !important; background: transparent !important; border: 0px !important; box-shadow: none !important; }
@media (min-width: 1200px) and (hover: hover) {.public-header .public-language-control { width: 113px !important; }}
@media (max-width: 991px) {.public-header .public-language-control { width: 48px !important; max-width: 48px !important; }
.public-header .public-language-control select { min-width: 0px !important; max-width: 48px !important; width: 48px !important; }}
.public-header .public-auth-actions { display: flex !important; }
.public-language-globe { display: block; width: 19px; height: 19px; flex: 0 0 19px; object-fit: contain; }
@media (max-width: 991px) {.public-header-in { gap: 12px !important; }
.public-header-in > .brand { position: static; transform: none; }
.public-header .public-language-control { width: 67px !important; max-width: 67px !important; }
.public-header .public-auth-actions { margin-left: 24px; }
.public-header .public-auth-actions::before { left: -13px; }}
@media (max-width: 640px) {.public-header { height: 108px; }
.public-header-in { height: 107px; display: grid; grid-template-columns: 32px minmax(0px, 1fr) 32px; grid-template-rows: 44px 51px; padding-top: 6px; gap: 0px !important; }
.public-header-in > .brand { grid-area: 1 / 2; justify-self: center; }
.public-mobile-menu { grid-area: 1 / 1; }
.public-header .public-tools { grid-area: 2 / 1 / auto / -1; justify-self: center; margin: 0px !important; }
.public-header .public-auth-actions { margin-left: 12px; gap: 8px; }
.public-header .public-auth-actions::before { display: none; }
.public-header .public-auth-actions button { width: 80px; height: 36px; min-height: 36px; padding: 0px 8px; font-size: 13px; }}
@media (max-width: 991px) {.public-header { height: 59px; }
.public-header-in { display: flex; height: 58px; padding-top: 0px; gap: 12px !important; }
.public-header-in > .brand { position: absolute; left: 50%; transform: translateX(-50%); }
.public-header .public-tools { margin-left: auto !important; }
.public-mobile-menu > div { min-width: 200px; padding: 8px; }
.public-header .public-mobile-menu .public-auth-actions { flex-direction: column; align-items: stretch; gap: 8px; margin: 0px; padding: 0px 4px 8px; display: flex !important; }
.public-mobile-menu .public-auth-actions::before { display: none; }
.public-header .public-mobile-menu .public-auth-actions button { width: 100%; height: 40px; min-height: 40px; font-size: 14px; }}
@media (max-width: 991px) {.public-header .public-mobile-menu .public-auth-actions { gap: 0px; padding: 0px; margin: 0px; }
.public-mobile-menu > div > a, .public-header .public-mobile-menu .public-auth-actions button { display: block; width: 100%; height: auto; min-height: 44px; padding: 10px; text-align: left; font-family: inherit; font-size: 14px; font-weight: 400; line-height: 24px; color: rgb(34, 34, 34); background: transparent; border: 0px; border-radius: 0px; box-shadow: none; letter-spacing: normal; }
.public-header .public-mobile-menu .public-auth-actions button { font-family: inherit; font-size: 14px; font-weight: 400; line-height: 24px; }
.public-mobile-menu > div > a:hover, .public-header .public-mobile-menu .public-auth-actions button:hover { background: rgb(245, 245, 245); color: rgb(34, 34, 34); }}
.public-header .public-language-control { min-height: 36px; position: relative !important; width: 113px !important; max-width: 113px !important; height: 36px !important; }
.public-header .public-language-control::before, .public-header .public-language-control::after { display: none !important; }
.public-header .public-language-globe { position: absolute; left: 0px; top: 50%; transform: translateY(-50%); pointer-events: none; z-index: 1; }
.public-header .public-language-control select { cursor: pointer; touch-action: manipulation; position: relative !important; inset: auto !important; width: 100% !important; max-width: 100% !important; min-width: 0px !important; height: 36px !important; min-height: 36px !important; padding: 0px 4px 0px 25px !important; appearance: menulist !important; background: none transparent !important; }
@media (max-width: 991px) {.public-header .public-language-control { width: 64px !important; max-width: 64px !important; }}
.public-page { font-size: 14px; line-height: 22px; color: rgba(0, 0, 0, 0.88); }
.public-header { position: relative; top: auto; height: 59px; }
.public-header-in { display: flex; height: 58px; min-height: 58px; padding: 13px 0px; gap: 0px !important; }
.public-header-in > .brand { position: static; transform: none; min-height: 0px !important; height: 22px !important; }
.public-home-link { line-height: 24px; font-size: 16px; font-weight: 600; }
.public-header .public-tools { margin-left: auto !important; align-items: center; }
.public-header .public-language-control { min-height: 32px; width: 113px !important; max-width: 113px !important; height: 32px !important; }
.public-header .public-language-control select { height: 32px !important; min-height: 32px !important; font-size: 14px !important; }
.public-header .public-auth-actions { margin-left: 44px; }
.public-header .public-auth-actions::before { display: block; left: -27px; }
.public-header .public-auth-actions button { width: 94px; height: 32px; min-height: 32px; font-size: 14px; }
.public-login-main { display: flex; align-items: center; justify-content: center; min-height: 0px; }
.public-footer .brand { height: 23px; min-height: 0px; margin: 0px; vertical-align: top; }
.public-footer-grid { align-items: stretch; }
.public-footer-grid > div:first-child p { margin-top: 25px; }
.public-footer-grid > div:last-child p { line-height: 22px; }
.public-footer-grid > div > a:not(.brand) { font-weight: 400; line-height: 22px; }
@media (min-width: 992px) {.public-mobile-menu { display: none !important; }
.public-home-link { display: block; }
.public-header-in > .brand { position: static !important; transform: none !important; }
.public-header .public-language-globe { display: block; }}
@media (max-width: 991px) {.public-header-in { gap: 0px !important; }
.public-header-in > .brand { position: absolute; left: 50%; transform: translateX(-50%); }
.public-home-link { display: none; }
.public-header .public-language-control { width: 48px !important; max-width: 48px !important; }
.public-header .public-language-globe { display: none; }
.public-header .public-language-control select { padding: 0px 4px !important; font-size: 12px !important; }
.public-header .public-mobile-menu .public-auth-actions { margin: 0px; }
.public-header .public-mobile-menu .public-auth-actions::before { display: none; }
.public-header .public-mobile-menu .public-auth-actions button { width: 100%; height: auto; min-height: 44px; font-size: 14px; }}
@media (max-width: 768px) {.public-footer-grid > div:first-child p { margin-top: 20px; }
.public-footer-grid > div:last-child p { line-height: 20px; }
.public-footer-grid > div > a:not(.brand) { margin-bottom: 12px; }}
@media (max-width: 480px) {.public-footer-grid > div:first-child p { margin-top: 16px; }}
.public-login-main { display: grid; grid-template-columns: minmax(0px, 1fr); padding: 0 var(--public-gutter); place-items: center; }
.landing-size-guide { grid-area: 1 / 1; width: 100%; max-width: 1440px; visibility: hidden; pointer-events: none; user-select: none; padding: 100px 0px 0px; text-align: center; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; line-height: 22px; }
.landing-size-title { font-size: 64px; font-weight: 600; line-height: 1.57143; }
.landing-size-description { max-width: 900px; margin: 4px auto 0px; font-size: 16px; font-weight: 400; line-height: 24px; }
.landing-size-action { height: 45px; margin-top: 38px; }
.landing-size-scene { width: min(588px, 100%); aspect-ratio: 1176 / 784; margin: 70px auto 5.333px; }
.public-login-main > .reference-login-card { grid-area: 1 / 1; place-self: center; margin: 24px 0px; }
@media (max-width: 768px) {.landing-size-guide { padding-top: 68px; }
.landing-size-title { font-size: 32px; }
.landing-size-action { height: 48px; margin-top: 30px; }
.landing-size-scene { width: min(350px, 100%); margin-top: 40px; }}
@media (max-width: 576px) {.landing-size-guide { padding-top: 48px; }}
@media (max-width: 480px) {.landing-size-scene { width: min(280px, 100%); margin-top: 30px; }}


@media (min-width: 761px) and (max-width: 1024px) {

}
@media (max-width: 760px) {
}
@media (max-width: 360px) {
}



.finance-pager button:hover:not(:disabled), .finance-pager button.active { border-color: rgb(1, 52, 130); background: rgb(1, 52, 130); color: rgb(255, 255, 255); }

@media (max-width: 1024px) {

}
@media (max-width: 560px) {
}
















@media (max-width: 600px) {


}



@media(max-width:768px){.public-page input,.public-page select{font-size:16px!important}}

/* Public subscription catalog */
.public-plans-link{margin-left:32px;color:#000;text-decoration:none;font-size:16px;font-weight:600;line-height:24px;white-space:nowrap}
.public-plans-link:hover,.public-plans-link[aria-current=page],.public-mobile-menu a[aria-current=page]{color:#013482}
.public-plans-main{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:64px 0 80px;min-height:55vh}
.public-plans-heading{text-align:center;margin-bottom:36px}.public-plans-heading h1{font-size:32px;margin:0 0 12px;color:#18253b}.public-plans-heading p{color:#718096;margin:0;line-height:1.7}
.public-plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.public-plan-card{display:flex;flex-direction:column;min-width:0;padding:28px;border:1px solid #e6ebf2;border-radius:16px;background:#fff;box-shadow:0 5px 24px #16376808;overflow-wrap:anywhere}
.public-plan-card h2{font-size:21px;line-height:1.5;margin:0 0 20px;color:#18253b}.public-plan-description{font-size:14px;line-height:1.85;color:#58677c;margin-bottom:20px}.public-plan-description img,.public-plan-description iframe{max-width:100%}.public-plan-description pre{white-space:pre-wrap}.public-plan-description ul{padding-left:20px}.public-plan-description table{display:block;overflow:auto;max-width:100%}
.public-plan-prices{margin:auto 0 24px;padding-top:16px;border-top:1px solid #edf0f5}.public-plan-prices>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-size:14px}.public-plan-prices dt{color:#718096}.public-plan-prices dd{margin:0;font-weight:600;color:#013482}.public-plan-card>.btn{width:100%;min-height:44px}.public-plans-empty{text-align:center;padding:48px 20px;border:1px solid #e6ebf2;border-radius:16px}.public-plans-empty p{margin-bottom:24px}
@media(max-width:1100px) and (min-width:992px){.public-home-link{margin-left:40px}.public-plans-link{margin-left:24px}}
@media(max-width:991px){.public-plans-link{display:none}.public-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-plans-main{padding:40px 0 56px}}
@media(max-width:600px){.public-plans-main{width:calc(100% - 32px);padding:32px 0 40px}.public-plans-grid{grid-template-columns:1fr;gap:16px}.public-plans-heading{margin-bottom:24px}.public-plans-heading h1{font-size:26px}.public-plan-card{padding:22px}}

/* Purchase feedback, stable media and accessible controls. */
.subscription-state-card dl>div:first-child dd{font-size:22px;line-height:1.4;font-variant-numeric:tabular-nums}
.subscription-state-card dd small{font-size:14px!important}
.coupon-row #couponMessage{display:block;min-height:24px;line-height:1.65;overflow-wrap:anywhere}
.payment-status-watch{flex-wrap:wrap;white-space:normal;max-width:min(680px,calc(100vw - 24px));width:max-content}
.payment-status-watch strong{min-width:0;overflow-wrap:anywhere;flex:1 1 200px}.payment-status-watch .btn{min-height:40px;flex-shrink:0}
.product-plan .btn:disabled,.public-plan-card .btn:disabled{cursor:not-allowed;opacity:.65;background:#e7ebf1;color:#566579;box-shadow:none}
.article-body img[width][height],.plan-content img[width][height],.public-plan-description img[width][height]{height:auto;max-width:100%}

button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #0756b7!important;outline-offset:3px!important}
@media(pointer:coarse){.order-pager button,.order-panel .mini-btn,.article-return button,.public-plan-card>.btn,.product-plan>.btn{min-height:44px;min-width:44px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

[data-tutorial-id]:focus-visible,[data-kid]:focus-visible{outline:2px solid #0756b7!important;outline-offset:3px}
