.sprite{width:0;height:0;position:absolute;overflow:hidden}.dot{vertical-align:1px;border-radius:50%;flex:none;width:8px;height:8px;margin-right:8px;display:inline-block}.dot--sky{background:var(--sky)}.dot--sun{background:var(--sunbeam)}.dot--good{background:var(--good)}.ui-btn--ghost{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong);height:30px;padding:0 10px}.ui-btn--wide{justify-content:center;width:100%;height:40px}.phone__compose{background:var(--grey);color:var(--ink-soft);border-radius:999px;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding:10px 12px;font-size:.71875rem;font-weight:600;display:flex}.phone__compose svg{width:15px;height:15px;color:var(--sky)}.course__tabs{white-space:nowrap;color:var(--ink-soft);align-items:center;gap:2px;padding:4px 6px 16px;font-size:.8125rem;font-weight:600;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 82%,#0000);mask-image:linear-gradient(90deg,#000 82%,#0000)}.course__tabs>span{border-radius:999px;padding:7px 12px}.course__tabs .course__name{background:var(--grey);color:var(--ink);align-items:center;margin-right:8px;font-weight:700;display:inline-flex}.points{gap:14px;margin:4px 0 0;padding:0;list-style:none;display:grid}.points li{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px;font-weight:500;line-height:1.45;display:grid}.points__tick{background:var(--white);width:28px;height:28px;box-shadow:inset 0 0 0 1.5px var(--sunbeam);border-radius:50%;place-items:center;display:grid}.points__tick svg{stroke-width:2.6px;width:15px;height:15px;color:var(--midnight)}.thread__msg{align-items:flex-end;gap:10px;display:flex}.thread__msg--reply{justify-content:flex-end}.thread__bubble{background:var(--grey);border-radius:18px 18px 18px 6px;max-width:84%;padding:10px 14px 8px;line-height:1.45}.thread__msg--reply .thread__bubble{background:var(--ice);border-radius:18px 18px 6px}.thread__name{color:var(--ink-soft);margin-bottom:2px;font-size:.71875rem;font-weight:700}.thread__bubble u{color:var(--sky);text-underline-offset:3px;text-decoration-color:currentColor;text-decoration-thickness:1.5px}.thread__bubble b{letter-spacing:.03em;font-variant-numeric:tabular-nums;white-space:nowrap}.thread__bubble time{text-align:right;color:var(--ink-soft);margin-top:2px;font-size:.6875rem;display:block}.journey{grid-template-columns:repeat(3,minmax(0,1fr));margin:clamp(40px,4.5vw,60px) 0 0;padding:0;list-style:none;display:grid;position:relative}.journey:before{content:"";background:var(--line);height:2px;position:absolute;top:22px;left:22px;right:calc(33.3333% - 22px)}.journey__step{align-content:start;justify-items:start;gap:10px;padding-right:32px;display:grid;position:relative}.journey__n{z-index:1;background:var(--sunbeam);width:44px;height:44px;color:var(--midnight);font-family:var(--font-display);box-shadow:0 0 0 8px var(--white);border-radius:50%;place-items:center;font-size:1.125rem;font-weight:700;display:grid;position:relative}.journey__title{font-family:var(--font-display);letter-spacing:-.02em;margin:10px 0 0;font-size:1.375rem;font-weight:700;line-height:1.2}.journey__text{color:var(--ink-muted);max-width:32ch}.journey__ui{background:var(--grey);height:26px;color:var(--ink-soft);border-radius:8px;align-items:center;gap:6px;margin-top:2px;padding:0 10px;font-size:.71875rem;font-weight:600;display:inline-flex}.joincard{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow-window);border-radius:20px;gap:12px;padding:16px;font-size:.8125rem;display:grid}.joincard__app{align-items:center;gap:8px;font-size:.875rem;font-weight:700;display:flex}.joincard__app img{width:16px;height:16px}.joincard__field{border:1.5px solid var(--midnight);border-radius:12px;gap:3px;padding:10px 12px;display:grid}.joincard__field .field__value{letter-spacing:.04em;font-variant-numeric:tabular-nums}.brain{background:var(--cream);border-radius:12px;align-content:center;gap:12px;min-height:13.5rem;padding:20px 22px;display:grid}.brain__label{color:var(--sunbeam-ink);align-items:center;gap:8px;font-size:.75rem;font-weight:700;display:flex}.brain__label svg{width:18px;height:18px}.brain__q{font-family:var(--font-display);letter-spacing:-.015em;font-size:1.25rem;font-weight:700;line-height:1.25}.brain__meter{background:var(--white);border-radius:6px;height:8px;overflow:hidden}.brain__meter span{background:var(--sunbeam);border-radius:6px;height:100%;display:block}.brain__count{color:var(--ink-muted);font-weight:600}@media (max-width:900px){.course__tabs{scrollbar-width:none;overflow-x:auto}.course__tabs::-webkit-scrollbar{display:none}.journey{grid-template-columns:1fr;gap:28px}.journey:before{width:2px;height:auto;inset:22px auto 22px 21px}.journey__step{grid-template-columns:44px minmax(0,1fr);gap:6px 20px;padding-right:0}.journey__n{grid-row:1/span 3}.journey__title{margin-top:8px}}.signin__body{justify-items:start;padding:28px;display:grid}.signin__mark{width:32px;height:32px}.signin__title{font-family:var(--font-display);letter-spacing:-.02em;margin-top:14px;font-size:1.5rem;font-weight:700}.signin__label{color:var(--ink-soft);margin-top:16px;font-size:.75rem;font-weight:600}.signin__roles{background:var(--grey);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;margin-top:8px;padding:4px;display:grid}.signin__roles span{text-align:center;color:var(--ink-soft);border-radius:9px;padding:9px 0;font-weight:600}.signin__roles .is-on{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--sky), 0 1px 2px #141a3d14}.signin__field{width:100%;margin-top:14px}.signin__caret{background:var(--sky);border-radius:1px;width:2px;height:18px}.signin .ui-btn{margin-top:16px}.otp__body{gap:14px;padding:22px;display:grid}.otp__title{font-size:.875rem;font-weight:700}.otp__boxes{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.otp__boxes span{aspect-ratio:1/1.15;border:1px solid var(--line);font-family:var(--font-display);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;font-size:1.25rem;font-weight:700;display:grid}.otp__boxes .is-next{border:2px solid var(--sky)}.otp__resend{color:var(--ink-soft);font-size:.71875rem}.otp__resend u{color:var(--sky);text-underline-offset:2px}@media (max-width:560px){.signin__body{padding:22px 20px}.otp__body{padding:18px}}
