*{box-sizing:border-box}body{margin:0;padding:0;background:#edf2f9}.welcome{font:16px/1.5 Inter,Arial,sans-serif}.welcome-hero{display:block;border:0}.welcome-language a{text-decoration:none;display:block}.welcome-action{text-decoration:none;text-align:center;border:1px solid #1a73e8;background:#1a73e8;color:white}.welcome-action.secondary{background:white;color:#0869e8}.welcome-course h2{font:700 14px/1.35 Inter,sans-serif;letter-spacing:-.35px;margin:0;color:#09224c}.welcome-course p{font:400 11.5px/1.5 Inter,sans-serif;margin:5px 0 0;color:#425b78}.welcome-course{text-decoration:none}a:focus-visible{outline:3px solid #183b66;outline-offset:3px}:root{font-family:'Nunito',sans-serif;background:#F5F6FA;color:#4A4A4A}
body{background:#F5F6FA;color:#4A4A4A;font-family:'Nunito',sans-serif}
.brand img{display:block;width:156px;height:auto;max-width:100%}
h1,h2,h3{font-family:'Inter',sans-serif;color:#183b66;font-weight:700;letter-spacing:-.03em}
p{color:#4A4A4A}.tag{font-family:'Inter',sans-serif;color:#536e8b;font-size:10px}
button{font-family:'Nunito',sans-serif;background:#1A73E8;border-color:#1A73E8;font-weight:700}
button:hover:not(:disabled){background:#155fc0}.secondary{background:#fff;color:#155fc0;border-color:#bfd5f2}
a{color:#155fc0}progress{accent-color:#1A73E8}
.notice,article{border-color:#dfe6ef;box-shadow:0 4px 18px #183b6608}
.course-pagination{background:#F5F6FA}.course-pagination span{font-family:'Nunito',sans-serif;color:#536e8b}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #00B8D9;outline-offset:3px}
header{border-bottom:1px solid #dae4f1}


[hidden]{display:none!important}body:has(.welcome:not([hidden])){padding:0;background:#edf2f9}.welcome{margin:0 auto;max-width:430px;background:#0869e8;min-height:100dvh;overflow:hidden;box-shadow:0 0 40px #183b6610}.welcome-hero{position:relative;isolation:isolate;overflow:hidden;padding:calc(17px + env(safe-area-inset-top)) 22px 30px;text-align:center;color:#fff;background:linear-gradient(135deg,#0067ee,#167bf2)}.welcome-hero:before,.welcome-hero:after{content:"";position:absolute;z-index:-1;pointer-events:none;width:155%;height:160px;border-radius:50%;left:-30%;bottom:-105px;background:#ffffff0b;transform:rotate(16deg)}.welcome-hero:after{left:20%;bottom:-112px;background:#004cb622;transform:rotate(-16deg)}.welcome-language{display:flex;justify-content:flex-end;gap:0;margin:0 0 25px auto;width:max-content;border:1px solid #b6d8ff;border-radius:25px;padding:2px}.welcome-language a{font:600 12px/1.2 Nunito,sans-serif;min-height:36px;padding:8px 13px;border:0;background:transparent;border-radius:22px;color:white}.welcome-language a[aria-current=true]{background:#fff;color:#0865da}.welcome-language a:hover{background:#ffffff20}.welcome-language a[aria-current=true]:hover{background:white}.welcome-hero img{display:block;width:106px;height:74px;margin:0 auto -2px}.welcome-name{font:700 28px/1.15 Inter,sans-serif;letter-spacing:-1px}.welcome-hero p{color:#fff;font:400 11px/1.4 Nunito,sans-serif;letter-spacing:.2px;margin:3px 0 0}.welcome-sheet{position:relative;border-radius:30px 30px 0 0;background:#fff;padding:19px 17px calc(21px + env(safe-area-inset-bottom));min-height:calc(100dvh - 239px)}.welcome-sheet h1{font:700 29px/1.07 Inter,sans-serif;letter-spacing:-1.1px;text-align:center;margin:0 auto 10px;max-width:290px;color:#102c54}.welcome-intro{text-align:center;font:400 14px/1.5 Nunito,sans-serif;max-width:280px;margin:0 auto 19px;color:#526780}.welcome-course{display:grid;grid-template-columns:48px minmax(0,1fr) 12px;align-items:center;gap:12px;text-align:left;width:100%;background:#fff;color:#183b66;border:1px solid #dfeaff;padding:14px 12px;margin:0 0 11px;border-radius:14px;min-height:92px;box-shadow:0 3px 8px #1a73e809}.welcome-course:hover:not(:disabled){background:#f7faff}.welcome-course[aria-current=true]{border-color:#bed6fa;background:#fff}.welcome-course strong{display:block;font:700 14px/1.35 Inter,sans-serif;letter-spacing:-.35px}.welcome-course small{display:block;font:400 12px/1.45 Nunito,sans-serif;margin-top:5px;color:#425b78}.welcome-course>span:last-child{font:400 27px/1 Nunito,sans-serif;color:#526e90}.course-symbol{display:grid;place-items:center;width:48px;height:58px;background:#edf4ff;color:#0874f9;border-radius:11px}.course-symbol svg{width:29px;height:32px;overflow:visible}.welcome-sheet>.welcome-action{display:block;width:100%;margin-top:12px;min-height:48px;padding:10px 14px;font:700 15px/1.4 Nunito,sans-serif;border-radius:9px}.welcome-sheet>.welcome-action.secondary{border-color:#1A73E8;color:#0869e8}.welcome-foot{text-align:center;font:400 11px/1.5 Nunito,sans-serif;margin:17px 0 5px}.welcome-preview{display:block;text-align:center;color:#718096;font:400 9px/1.4 Nunito,sans-serif}#welcome-status:empty{display:none}#welcome-status{font-size:13px;color:#183b66}button:focus-visible{outline:3px solid #183b66;outline-offset:3px}.welcome-language a:focus-visible{outline-color:white}@media(min-width:600px){.welcome{margin:24px auto;border-radius:30px;min-height:0}.welcome-sheet{min-height:0;padding-bottom:24px}.welcome-hero{padding-top:18px}}@media(max-width:360px){.welcome-sheet{padding-left:13px;padding-right:13px}.welcome-course{gap:9px;padding:12px 9px}.welcome-course strong{font-size:13px}.welcome-sheet h1{font-size:27px}}

/* C1 close-up matching: blue selected segment, pale-blue track, deeper wave layers. */
.welcome-hero{background:linear-gradient(125deg,#0065ed 0%,#086cf0 65%,#0060e3 100%);padding-bottom:27px}
.welcome-language{background:#b8dbff;border:1px solid #a5d1ff;padding:2px;gap:0;margin-bottom:27px;box-shadow:inset 0 0 0 1px #ffffff30}
.welcome-language a{font:600 11px/1.2 Nunito,sans-serif;min-height:30px;padding:6px 12px;color:#193b63;background:transparent}
.welcome-language a[aria-current=true],.welcome-language a[aria-current=true]:hover{background:#0875f5;color:#fff;box-shadow:0 1px 3px #005bd42b}
.welcome-language a:hover{background:#d3e8ff}
.welcome-hero img{width:111px;height:70px;margin:0 auto 0}
.welcome-name{font-size:28px;line-height:1.05;letter-spacing:-1px}
.welcome-hero p{font-size:10px;letter-spacing:.3px;margin-top:3px}
.welcome-hero:before{width:150%;height:165px;left:-42%;bottom:-112px;background:#2491ff70;transform:rotate(30deg)}
.welcome-hero:after{width:155%;height:165px;left:23%;bottom:-113px;background:#005edb75;transform:rotate(-29deg)}
.welcome-sheet h1{max-width:265px;font-size:29px;line-height:1.05;letter-spacing:-1.1px}
.welcome-intro{max-width:290px;font-size:15px;line-height:1.4;margin-bottom:19px}

.welcome-hero:before{inset:0;width:100%;height:100%;border-radius:0;background:url("assets/c1-waves.svg") center bottom/100% 100% no-repeat;transform:none}.welcome-hero:after{display:none}

/* Owner refinement: stronger C1 expression and deeper dark-blue base. */
.welcome{background:#0053d4}.welcome-hero{background:linear-gradient(125deg,#0054d9 0%,#0768ed 58%,#0052d5 100%)}
.welcome-name{font-family:Inter,sans-serif;font-size:30px;font-weight:700;letter-spacing:-1.25px}
.welcome-sheet h1{font-family:Nunito,sans-serif;font-weight:700;font-size:31px;line-height:1.02;letter-spacing:-1.15px;color:#09224c;max-width:280px}
.welcome-intro{font-family:Nunito,sans-serif;color:#4b6384;font-size:15.5px;line-height:1.35}
.welcome-course strong{color:#09224c;font-family:Inter,sans-serif;font-weight:700}
.welcome-language a{font-family:Nunito,sans-serif;font-weight:700}
.welcome-sheet h1{max-width:250px}

/* Soft tonal shading from selected C1, with a visibly stronger headline. */
.welcome-hero{background:radial-gradient(ellipse at 48% 12%,#0875f4 0%,#005cde 65%,#004fc9 100%)}
.welcome-sheet h1{-webkit-text-stroke:.4px currentColor;paint-order:stroke fill;letter-spacing:-.9px}
/* Welcome-only type exploration and subtle dark fade from the C1 reference. */
.welcome{font-family:Inter,sans-serif}
.welcome-hero{background:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,8,30,.22) 100%),radial-gradient(ellipse at 48% 12%,#0875f4 0%,#005cde 65%,#004fc9 100%)}
.welcome-sheet h1{font-family:Inter,sans-serif;font-weight:700;font-size:29px;line-height:1.04;letter-spacing:-1.15px;-webkit-text-stroke:.35px currentColor;max-width:270px}
.welcome-intro{font-family:Inter,sans-serif;font-size:14px;line-height:1.5;font-weight:400}
.welcome-language a,.welcome-course small,.welcome-sheet>.welcome-action,.welcome-foot,.welcome-preview,.welcome-hero p{font-family:Inter,sans-serif}
.welcome-course small{font-size:11.5px;line-height:1.5}.welcome-sheet>.welcome-action{font-weight:600}.welcome-foot{font-size:10px}.welcome-preview{font-size:9px}
.welcome-sheet h1{max-width:240px}

/* Bilingual welcome tagline: quiet, readable and clear of the sheet. */
.welcome-hero .welcome-tagline{display:block;position:relative;max-width:100%;margin:13px auto 0;padding:0;color:#FFFFFF;font:500 14px/1.5 Inter,Arial,sans-serif;letter-spacing:0;text-align:center;text-wrap:balance}
@media print{.welcome-hero .welcome-tagline{color:#183b66}}

@media(max-width:430px){.welcome-hero .welcome-tagline{font-size:15px}}
.welcome :is(button,a):focus:not(:focus-visible){outline:none}
.welcome :is(button,a):focus-visible{outline:3px solid #008b9f;outline-offset:3px}
.welcome-language :is(button,a):focus-visible{outline-color:#FFFFFF}
