:root{font-family:Space Mono,system-ui,-apple-system,Segoe UI,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-bg: #ffffff;--color-text: #1a1a1a;--color-brand: #B60000;--color-brand-hover: #9a0000;--color-card-border-hover: #bdbdbd;--color-sidebar-bg: #F9F9F9;--color-sidebar-text: #1a1a1a;--color-sidebar-active-bg: rgba(76, 175, 80, .25);--color-sidebar-active-text: #2e7d32;--color-progress-bg: #e0e0e0;--color-card-shadow: rgba(0, 0, 0, .08);--Accent-Brick: #D33F16;--Color-Blue-Default: #1E60A8;--Color-Red-Default: #B60000;--space-card: 1.5rem;--space-section: 1.5rem;--radius-card: 8px;--radius-btn: 8px;--shadow-btn: 0 2px 3.84px rgba(0, 0, 0, .25);--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--heading-h1-size: 1.5rem;--heading-h1-line-height: 1.25;--color-heading: #101010;--Surface-Disabled: #E3E3E3}.back-arrow-icon{display:block;width:22px;height:22px;object-fit:contain;flex-shrink:0;pointer-events:none;-webkit-user-select:none;user-select:none}a:has(.back-arrow-icon),button:has(.back-arrow-icon){-webkit-tap-highlight-color:transparent;outline:none;border:none!important;border-color:transparent!important;box-shadow:none}a:has(.back-arrow-icon):focus,a:has(.back-arrow-icon):focus-visible,a:has(.back-arrow-icon):active,button:has(.back-arrow-icon):focus,button:has(.back-arrow-icon):focus-visible,button:has(.back-arrow-icon):active{outline:none!important;box-shadow:none!important;border:none!important;border-color:transparent!important}a:has(.back-arrow-icon):hover,button:has(.back-arrow-icon):hover{background:transparent!important;background-color:transparent!important;border:none!important;border-color:transparent!important;box-shadow:none!important}body{margin:0;min-width:320px;min-height:100vh;background:var(--color-bg);color:var(--color-text);-webkit-tap-highlight-color:transparent}a{font-weight:500;color:var(--color-brand);text-decoration:none}a:hover{color:var(--color-brand-hover);text-decoration:underline}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:none}[role=button]:focus,[role=button]:focus-visible,[role=link]:focus,[role=link]:focus-visible,[role=tab]:focus,[role=tab]:focus-visible,[role=menuitem]:focus,[role=menuitem]:focus-visible,[tabindex="0"]:focus,[tabindex="0"]:focus-visible{outline:none}a:focus,a:focus-visible{outline:none}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{outline:none}.app-shell{display:flex;height:100vh;overflow:hidden}.app-shell__main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;height:100vh;background:var(--color-bg)}.app-shell__content{flex:1;display:flex;align-items:flex-start;justify-content:center;min-height:0;padding:.5rem 1.5rem 1.5rem;overflow-y:auto;scrollbar-gutter:stable}.app-shell__auth-narrow-inner{width:50%;max-width:100%;min-width:0;flex-shrink:0;box-sizing:border-box}.app-shell__auth-narrow-inner .work-on-screen__mascot-row,.app-shell__auth-narrow-inner .goals-screen__mascot-row,.app-shell__auth-narrow-inner .daily-practice-screen__mascot-row{flex-wrap:wrap;justify-content:center}.app-shell__auth-narrow-inner .work-on-screen__question-card,.app-shell__auth-narrow-inner .goals-screen__question-card,.app-shell__auth-narrow-inner .daily-practice-screen__title-card{flex:1 1 220px;min-width:0}@media(max-width:600px){.create-account-screen__row{grid-template-columns:1fr}}@media(max-width:520px){.work-on-screen__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}}.app-shell__content:has(.profile-lesson-reviews){padding-left:.75rem;padding-right:.75rem}.app-shell__content:has(.badges-page){padding-left:.5rem;padding-right:.5rem;justify-content:flex-start}.app-shell__content:has(.leaderboard-page){padding-left:.5rem;padding-right:.5rem;justify-content:flex-start}.app-shell__content:has(.leaderboard-user-page){padding-left:1rem;padding-right:1rem;justify-content:flex-start}.sidebar{width:220px;min-width:220px;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;padding:1.25rem 0}.sidebar__logo{display:flex;align-items:center;gap:.625rem;padding:0 1.25rem .95rem;margin-bottom:1rem}.sidebar__logo-img-wrap{max-width:150px;overflow:hidden;line-height:0}.sidebar__logo-img{height:40px;width:auto;object-fit:contain;display:block}.sidebar__logo-icon{font-size:1.75rem;flex-shrink:0}.sidebar__logo-text{font-family:Space Mono,monospace;font-weight:700;font-size:1.125rem;color:#1a1a1a;letter-spacing:-.02em}.sidebar__nav{display:flex;flex-direction:column;gap:2px}.sidebar__link{display:flex;align-items:center;gap:.85rem;padding:.85rem 1.25rem;color:var(--color-sidebar-text);font-weight:600;text-decoration:none;font-family:var(--font-primary);font-weight:500;transition:background .15s,color .15s}.sidebar__link:hover{background:#0000000f;color:#1a1a1a;text-decoration:none}.sidebar__link--active,.sidebar__link--active:hover{text-decoration:none}.sidebar__link--lobby,.sidebar__link--lobby:hover{background:#c6282824;color:#c62828}.sidebar__link--teamhub,.sidebar__link--teamhub:hover{background:#ffe0cc;color:#e65100}.sidebar__link--leaderboard,.sidebar__link--leaderboard:hover{background:#e6a8002e;color:#c89200}.sidebar__link--profile,.sidebar__link--profile:hover{background:#4caf5040;color:#2e7d32}.sidebar__link--badges,.sidebar__link--badges:hover{background:#1e88e524;color:#1565c0}.sidebar__link--allstar,.sidebar__link--allstar:hover{background:#c6282824;color:#c62828}.sidebar__link--marketplace,.sidebar__link--marketplace:hover{background:#1f293714;color:#374151}.sidebar__link-icon{width:1.5rem;height:1.5rem;object-fit:contain;display:block;flex-shrink:0}.sidebar__teamhub-icon-wrap{width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar__teamhub-icon{width:1.5rem;height:1.5rem;color:#e65100;display:block}.app-header{display:flex;flex-direction:column;gap:0;padding:1.25rem 1.5rem .25rem}.auth-flow-header .app-header__profile-row{display:none}.auth-flow-header .app-header{padding:.75rem 1.5rem .25rem}.auth-flow-header .app-header__progress-wrap{margin-top:.5rem}.app-header__profile-row{position:relative;display:flex;align-items:center;gap:1rem;padding-bottom:1.25rem;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem}.app-header__profile-row:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--color-progress-bg)}.app-header__user{display:flex;align-items:center;gap:.5rem}.app-header__user-link,.app-header__user-link:hover,.app-header__user-link:visited,.app-header__user-link:active{text-decoration:none;color:inherit;font-weight:inherit}.app-header__user-link{cursor:pointer;border-radius:8px}.app-header__user-link:focus-visible{outline:2px solid rgba(30,96,168,.55);outline-offset:3px}.app-header__avatar{width:36px;height:36px;border-radius:50%;background:var(--color-progress-bg);display:flex;align-items:center;justify-content:center;font-size:1.25rem}.app-header__avatar-img{width:36px;height:36px;border-radius:50%;object-fit:cover;display:block}.app-header__name{font-family:var(--font-primary);font-weight:600}.app-header__stats{display:flex;gap:1rem;margin-left:auto;font-family:var(--font-primary)}.app-header__stat{display:flex;align-items:center;gap:.35rem;font-weight:600}.app-header__stat-button{border:0;background:transparent;padding:0;color:inherit;cursor:pointer;font:inherit}.app-header__stat-button:focus{outline:none}.app-header__stat-button:focus-visible{outline:2px solid rgba(30,96,168,.55);outline-offset:3px;border-radius:8px}.app-header__stat-icon{width:1.1rem;height:1.1rem;object-fit:contain;display:block}.app-header__stat-value{font-size:.875rem}.app-header__stat--streak .app-header__stat-value{color:var(--Accent-Brick, #D33F16)}.app-header__stat--points .app-header__stat-value{color:var(--Color-Blue-Default, #1E60A8)}.app-header__stat--hearts .app-header__stat-value{color:var(--Color-Red-Default, #B60000)}.app-header__progress-wrap{width:100%;height:6px;background:var(--color-progress-bg);border-radius:3px;overflow:hidden;margin-top:1.75rem}.app-header__progress-bar{height:100%;background:var(--color-brand);border-radius:3px;transition:width .2s}.streak-modal__overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px 16px}.streak-modal{width:min(420px,92vw);height:min(620px,86vh);background:#fff;border-radius:18px;box-shadow:0 20px 60px #00000059;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:52px 24px 24px;box-sizing:border-box}.streak-modal__close{position:absolute;top:14px;left:14px;width:40px;height:40px;border-radius:12px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.streak-modal__close-img{width:20px;height:20px;object-fit:contain;display:block}.streak-modal__close:focus,.streak-modal__close:focus-visible{outline:none}.streak-modal__bubble{width:min(320px,100%);border:2px solid rgba(0,0,0,.18);border-radius:10px;padding:14px;font-family:var(--font-primary);font-weight:700;text-align:center;color:#111;margin-bottom:20px;background:#fff;box-shadow:0 2px #0000000f}.streak-modal__art{width:100%;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.streak-modal__mascot{width:min(340px,88%);height:auto;object-fit:contain;z-index:2;position:relative;left:18px}.streak-modal__flame{width:min(200px,54%);height:auto;object-fit:contain;position:absolute;z-index:1;left:calc(50% - 155px);top:0;opacity:.95}.streak-modal__days{margin-top:16px;font-family:var(--font-primary);font-weight:800;font-size:34px;letter-spacing:.2px;color:#f39a1b;text-align:center}.streak-modal__days-number{font-variant-numeric:tabular-nums}.streak-modal__days-label{font-weight:800}.xp-modal__overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px 16px}.xp-modal{width:min(420px,92vw);height:min(620px,86vh);background:#fff;border-radius:18px;box-shadow:0 20px 60px #00000059;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:52px 24px 28px;box-sizing:border-box}.xp-modal__close{position:absolute;top:14px;left:14px;width:40px;height:40px;border-radius:12px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.xp-modal__close:focus,.xp-modal__close:focus-visible{outline:none}.xp-modal__close-img{width:20px;height:20px;object-fit:contain;display:block}.xp-modal__bubble{width:min(320px,100%);border:2px solid rgba(0,0,0,.18);border-radius:10px;padding:14px;font-family:var(--font-primary);font-weight:700;text-align:center;color:#111;margin-bottom:18px;background:#fff;box-shadow:0 2px #0000000f}.xp-modal__art{width:100%;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.xp-modal__mascot{width:min(280px,78%);height:auto;object-fit:contain;z-index:2;position:relative;left:18px}.xp-modal__bolt{width:min(140px,41%);height:auto;object-fit:contain;position:absolute;z-index:1;left:calc(50% - 145px);top:8px;opacity:.95}.xp-modal__card{width:min(180px,68%);border-radius:14px;border:3px solid #FFD700;overflow:hidden;box-shadow:0 6px 18px #0000002e}.xp-modal__card-header{background:#fcde00;font-family:var(--font-primary);font-weight:700;text-align:center;padding:8px 10px 10px;color:#fff}.xp-modal__card-body{background:#fff;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px}.xp-modal__card-icon{width:18px;height:18px;object-fit:contain;filter:saturate(1.2)}.xp-modal__card-value{font-family:var(--font-primary);font-weight:800;font-size:28px;color:#ffc802;font-variant-numeric:tabular-nums}.hearts-modal__overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:90px 16px 24px}.hearts-modal{width:min(640px,96vw);background:#fff;border-radius:18px;box-shadow:0 18px 55px #0000004d;position:relative;box-sizing:border-box;padding:26px 22px 18px;display:flex;flex-direction:column;align-items:center;gap:14px}.hearts-modal__close{position:absolute;top:12px;left:12px;width:40px;height:40px;border-radius:12px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.hearts-modal__close:focus,.hearts-modal__close:focus-visible{outline:none}.hearts-modal__close-img{width:20px;height:20px;object-fit:contain;display:block}.hearts-modal__allstar{width:120px;height:auto;object-fit:contain;margin-top:4px}.hearts-modal__hearts{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.hearts-modal__heart{width:44px;height:44px;object-fit:contain;display:block}.hearts-modal__heart--empty{filter:grayscale(1) saturate(0);opacity:.55}.hearts-modal__message{font-family:var(--font-primary);font-weight:800;font-size:30px;line-height:1.2;text-align:center;color:#111;padding:2px 6px}.hearts-modal__upgrade{width:min(640px,96vw);max-width:390px;border:0;background:transparent;padding:0;cursor:pointer}.hearts-modal__upgrade:focus{outline:none}.hearts-modal__upgrade:focus-visible{outline:2px solid rgba(182,0,0,.55);outline-offset:4px;border-radius:14px}.hearts-modal__upgrade-img{width:100%;height:auto;object-fit:contain;display:block}.welcome-screen{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center}.welcome-screen__card{background:var(--color-bg);border-radius:var(--radius-card);padding:var(--space-card) 2rem;margin-bottom:.75rem;box-shadow:0 3px 2px var(--color-card-shadow);border:1px solid var(--color-progress-bg);width:100%;box-sizing:border-box}.welcome-screen__title{margin:0;font-family:var(--font-primary);font-weight:700;font-style:normal;font-size:var(--heading-h1-size);line-height:var(--heading-h1-line-height);letter-spacing:0;text-align:center;color:var(--color-heading);white-space:nowrap;overflow:visible}.app-shell__auth-narrow-inner .welcome-screen__title{white-space:normal}.welcome-screen__center-column{width:100%;max-width:326px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.welcome-screen__mascot{width:100%;margin-bottom:var(--space-section);min-height:180px;display:flex;align-items:center;justify-content:center}.welcome-screen__mascot-wrap{position:relative;display:flex;flex-direction:column;align-items:center}.welcome-screen__mascot-ellipse{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:120px;height:50px;background:var(--Surface-Disabled, #E3E3E3);border-radius:50%;z-index:0}.welcome-screen__lottie{width:220px;height:220px;margin:0 auto;margin-right:.75rem;display:block;transform:translate(55px,12px);position:relative;z-index:1}.welcome-screen__mascot-placeholder{width:160px;height:180px;margin:0 auto;margin-right:.75rem;transform:translate(55px,12px);position:relative;z-index:1;background:linear-gradient(145deg,#ff6b6b 0%,var(--color-brand) 100%);border-radius:50% 50% 45% 45%;box-shadow:0 8px 24px var(--color-card-shadow)}.welcome-screen__login-prompt{margin:0 0 .25rem;font-family:var(--font-primary);font-size:1rem;color:#534e4e}.welcome-screen__login-link{display:inline-block;margin-bottom:1.5rem;font-family:var(--font-primary);font-weight:700;text-decoration:none;color:#b60000}.welcome-screen__login-link:hover{text-decoration:none;color:var(--color-brand-hover)}.welcome-screen__continue-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;max-width:326px;height:60px;padding-bottom:4px;box-sizing:border-box;background:var(--color-brand);color:#fff;font-family:var(--font-primary);font-weight:700;font-size:1rem;line-height:1.25;letter-spacing:.04em;text-transform:uppercase;border-radius:12px;text-decoration:none;transition:background .2s,box-shadow .2s;border:none;cursor:pointer;box-shadow:var(--shadow-btn)}.welcome-screen__continue-btn:hover{background:var(--color-brand-hover);color:#fff;text-decoration:none;box-shadow:0 2px 6px #0003}.learn-more-screen__card{margin-bottom:1.5rem}.learn-more-screen__message{margin:0;font-family:var(--font-primary);font-weight:700;font-size:var(--heading-h1-size);line-height:var(--heading-h1-line-height);text-align:center;color:var(--color-heading);overflow-wrap:break-word;word-wrap:break-word}.learn-more-screen__line{display:block}.learn-more-screen__center{margin-top:.25rem}.learn-more-screen__continue{margin-top:1.75rem}.learn-more-screen .welcome-screen__lottie{width:200px;height:200px;transform:translate(10px,-4px)}.learn-more-screen .welcome-screen__mascot-placeholder{width:146px;height:164px;transform:translate(10px,-4px)}.questions-intro-screen .welcome-screen__lottie{width:200px;height:200px;transform:translate(30px,-12px)}.questions-intro-screen .welcome-screen__mascot-placeholder{width:146px;height:164px;transform:translate(30px,-12px)}.get-started-screen .welcome-screen__mascot-wrap{min-height:220px}.get-started-screen .welcome-screen__lottie{width:160px;height:160px;transform:translate(12px,42px)}.get-started-screen .welcome-screen__mascot-placeholder{transform:translate(12px,42px)}.sign-up-birth-year-screen{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center;padding:0 0 2rem}.sign-up-birth-year-screen__center{width:100%;max-width:326px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.sign-up-birth-year-screen__logo-wrap{margin-bottom:1.25rem;line-height:0;text-align:center}.sign-up-birth-year-screen__logo{height:48px;width:auto;object-fit:contain;display:inline-block}.sign-up-birth-year-screen__heading{margin:0 0 1.25rem;font-family:var(--font-primary);font-weight:700;font-size:1.25rem;line-height:1.3;color:var(--color-heading);text-align:center}.sign-up-birth-year-screen__field{position:relative;text-align:left;margin-bottom:1.5rem}.sign-up-birth-year-screen__label{display:block;margin-bottom:.35rem;font-family:var(--font-primary);font-size:.875rem;font-weight:500;color:#534e4e}.sign-up-birth-year-screen__select{position:relative;width:100%;height:48px;padding:0 2.75rem 0 1rem;display:flex;align-items:center;justify-content:flex-start;font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;box-sizing:border-box;outline:none;transition:border-color .2s;cursor:pointer;text-align:left}.sign-up-birth-year-screen__select--open{padding-right:1rem}.sign-up-birth-year-screen__value{flex:1;min-width:0;text-align:left}.sign-up-birth-year-screen__select:hover,.sign-up-birth-year-screen__select:focus{border-color:var(--color-card-border-hover, #bdbdbd)}.sign-up-birth-year-screen__placeholder{color:#999}.sign-up-birth-year-screen__chevron-img{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:20px;height:20px;object-fit:contain;flex-shrink:0;pointer-events:none;opacity:.55;filter:grayscale(1)}.sign-up-birth-year-screen__list{position:absolute;top:100%;left:0;right:0;margin-top:2px;max-height:240px;overflow-y:auto;background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;box-shadow:0 4px 12px #0000001f;z-index:10}.sign-up-birth-year-screen__option{display:block;width:100%;padding:.6rem 1rem;font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background:none;border:none;cursor:pointer;text-align:left;transition:background .15s}.sign-up-birth-year-screen__option:hover,.sign-up-birth-year-screen__option[aria-selected=true]{background:#0000000f}.sign-up-birth-year-screen__continue{margin-top:.5rem;width:100%;text-align:center;display:inline-flex;align-items:center;justify-content:center}.sign-up-birth-year-screen__age-message{margin-top:.5rem;width:100%;padding:1rem 1.25rem;font-family:var(--font-primary);font-weight:700;font-size:1rem;line-height:1.25;text-align:center;color:#000;background:#ff9494;border-radius:12px;border:none;box-sizing:border-box}.work-on-screen{width:100%;display:flex;flex-direction:column;gap:1.75rem}.work-on-screen__mascot-row{display:flex;align-items:center;gap:1.25rem}.work-on-screen__mascot-wrap{width:150px;height:120px;overflow:hidden;border-radius:0;background:transparent;display:flex;align-items:flex-end;justify-content:center;box-shadow:none;border:none}.work-on-screen__mascot-img{width:170px;height:auto;transform:translateY(50px)}.work-on-screen__question-card{flex:1;background:#fff;border-radius:24px;padding:1.25rem 2rem;box-shadow:0 3px 2px var(--color-card-shadow);border:1px solid var(--color-progress-bg)}.work-on-screen__question{margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.25rem;line-height:1.3;text-align:center;color:var(--color-heading)}.work-on-screen__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem}.work-on-screen__sport{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:.75rem .5rem .9rem;background:#fff;border-radius:18px;border:none;cursor:pointer;box-shadow:0 0 0 1px var(--color-progress-bg),0 4px #e3e3e3;outline:none;transition:border-color .15s,box-shadow .15s,background-color .15s,transform .1s}.work-on-screen__sport:hover{box-shadow:0 0 0 1px var(--color-card-border-hover, #bdbdbd),0 4px #d0d0d0}.work-on-screen__sport--selected{background:#ffcbcb;box-shadow:0 0 0 2px #b60000,0 4px #b60000}.work-on-screen__sport--selected:hover{box-shadow:0 0 0 2px #b60000,0 4px #b60000}.work-on-screen__sport:focus-visible{outline:2px solid var(--color-card-border-hover, #bdbdbd);outline-offset:2px}.work-on-screen__sport--selected:focus-visible{outline:2px solid #B60000}.work-on-screen__sport-img-wrap{width:64px;height:64px;display:flex;align-items:center;justify-content:center}.work-on-screen__sport-img{max-width:64px;max-height:64px;object-fit:contain}.work-on-screen__sport-label{font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#000}.work-on-screen__continue-wrap{display:flex;justify-content:center;margin-top:.75rem}.work-on-screen__continue-btn{width:260px}.work-on-screen__continue-btn--disabled{background:#e3e3e3;color:#999;box-shadow:none;cursor:default}.work-on-screen__continue-btn--disabled:hover{background:#e3e3e3;color:#999}.goals-screen{width:100%;display:flex;flex-direction:column;gap:1.75rem}.goals-screen__mascot-row{display:flex;align-items:center;gap:1.25rem}.goals-screen__mascot-wrap{width:150px;height:120px;overflow:hidden;border-radius:0;background:transparent;display:flex;align-items:flex-end;justify-content:center;box-shadow:none;border:none}.goals-screen__mascot-img{width:170px;height:auto;transform:translateY(50px)}.goals-screen__question-card{flex:1;background:#fff;border-radius:24px;padding:1.25rem 2rem;box-shadow:0 3px 2px var(--color-card-shadow);border:1px solid var(--color-progress-bg)}.goals-screen__question{margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.25rem;line-height:1.3;text-align:center;color:var(--color-heading)}.goals-screen__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.goals-screen__goal{display:flex;align-items:center;justify-content:flex-start;padding:1rem 1.25rem;background:#fff;border-radius:18px;border:1px solid var(--color-progress-bg);cursor:pointer;outline:none;box-shadow:3px 3px #e3e3e3;transition:border-color .15s,background-color .15s,box-shadow .15s}.goals-screen__goal:hover{border-color:var(--color-card-border-hover, #bdbdbd);box-shadow:3px 3px #d0d0d0}.goals-screen__goal--selected{background:#ffcbcb;border:2px solid #B60000;box-shadow:4px 4px #b60000}.goals-screen__goal--selected:hover{border-color:#b60000;box-shadow:4px 4px #b60000}.goals-screen__goal:focus-visible{outline:2px solid var(--color-card-border-hover, #bdbdbd);outline-offset:2px}.goals-screen__goal--selected:focus-visible{outline:2px solid #B60000}.goals-screen__goal-label{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:var(--color-text);text-align:left}.goals-screen__continue-wrap{display:flex;justify-content:center;margin-top:.75rem}.goals-screen__continue-btn{width:50%}.goals-screen__continue-btn--disabled{background:#e3e3e3;color:#999;box-shadow:none;cursor:default}.goals-screen__continue-btn--disabled:hover{background:#e3e3e3;color:#999}.daily-practice-screen{width:100%;display:flex;flex-direction:column;gap:1.75rem}.daily-practice-screen__mascot-row{display:flex;align-items:center;gap:1.25rem}.daily-practice-screen__mascot-wrap{width:150px;height:120px;overflow:hidden;border-radius:0;background:transparent;display:flex;align-items:flex-end;justify-content:center;box-shadow:none;border:none}.daily-practice-screen__mascot-img{width:170px;height:auto;transform:translateY(50px)}.daily-practice-screen__title-card{flex:1;background:#fff;border-radius:24px;padding:1.25rem 2rem;box-shadow:0 3px 2px var(--color-card-shadow);border:1px solid var(--color-progress-bg)}.daily-practice-screen__title{margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.25rem;line-height:1.3;text-align:center;color:var(--color-heading)}.daily-practice-screen__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.daily-practice-screen__option{display:flex;align-items:center;justify-content:flex-start;padding:1rem 1.25rem;background:#fff;border-radius:18px;border:1px solid var(--color-progress-bg);cursor:pointer;outline:none;box-shadow:3px 3px #e3e3e3;transition:border-color .15s,background-color .15s,color .15s,box-shadow .15s}.daily-practice-screen__option:hover{border-color:var(--color-card-border-hover, #bdbdbd);box-shadow:3px 3px #d0d0d0}.daily-practice-screen__option--selected{background:#ffcbcb;color:var(--color-text);border:2px solid #B60000;box-shadow:4px 4px #b60000}.daily-practice-screen__option--selected:hover{border-color:#b60000;box-shadow:4px 4px #b60000}.daily-practice-screen__option--selected .daily-practice-screen__option-label{color:var(--color-text)}.daily-practice-screen__option:focus-visible{outline:2px solid var(--color-card-border-hover, #bdbdbd);outline-offset:2px}.daily-practice-screen__option--selected:focus-visible{outline:2px solid #B60000}.daily-practice-screen__option-label{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:var(--color-text);text-align:left}.daily-practice-screen__continue-wrap{display:flex;justify-content:center;margin-top:.75rem}.daily-practice-screen__continue-btn{width:50%}.daily-practice-screen__continue-btn--disabled{background:#e3e3e3;color:#999;box-shadow:none;cursor:default}.daily-practice-screen__continue-btn--disabled:hover{background:#e3e3e3;color:#999}.sign-up-username-screen{width:100%;display:flex;flex-direction:column;align-items:center;padding:.75rem 0 2rem}.sign-up-username-screen__center{width:100%;max-width:360px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.sign-up-username-screen__logo-row{display:flex;justify-content:center;margin-bottom:.75rem}.sign-up-username-screen__logo{height:48px;width:auto;object-fit:contain}.sign-up-username-screen__heading{margin:0 0 1.5rem;font-family:var(--font-primary);font-weight:700;font-size:1.35rem;line-height:1.3;text-align:center;color:var(--color-heading)}.sign-up-username-screen__form{width:100%;margin-bottom:1.25rem}.sign-up-username-screen__field{text-align:left}.sign-up-username-screen__label{display:block;margin-bottom:.35rem;font-family:var(--font-primary);font-size:.875rem;font-weight:500}.sign-up-username-screen__label--default{color:#534e4e}.sign-up-username-screen__label--error{color:#b60000}.sign-up-username-screen__input-wrap{position:relative;display:flex;align-items:center}.sign-up-username-screen__input{width:100%;height:48px;padding:0 2.5rem 0 1rem;font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;box-sizing:border-box;outline:none;transition:border-color .2s}.sign-up-username-screen__input::placeholder{color:#999}.sign-up-username-screen__input:focus{border-color:var(--color-card-border-hover, #bdbdbd)}.sign-up-username-screen__input--error:focus{border-color:#b60000}.sign-up-username-screen__input--error{border-color:#b60000}.sign-up-username-screen__clear{position:absolute;right:.75rem;width:24px;height:24px;min-width:24px;min-height:24px;padding:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;color:#666;background:var(--color-progress-bg);border:none;border-radius:50%;flex-shrink:0;cursor:pointer;transition:background .2s,color .2s}.sign-up-username-screen__clear:hover{background:#ccc;color:#1a1a1a}.sign-up-username-screen__login-text{margin:0 0 .25rem;text-align:center;font-family:var(--font-primary);font-size:.9rem;color:#534e4e}.sign-up-username-screen__login-link-row{text-align:center;margin:0 0 1.5rem}.sign-up-username-screen__login-link{font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#b60000;text-decoration:none}.sign-up-username-screen__login-link:hover{text-decoration:underline;color:var(--color-brand-hover)}.sign-up-username-screen__continue-wrap{display:flex;justify-content:center}.sign-up-username-screen__continue-btn{width:100%}.sign-up-username-screen__continue-btn--disabled{background:#e3e3e3;color:#999;box-shadow:none;cursor:default}.sign-up-username-screen__continue-btn--disabled:hover{background:#e3e3e3;color:#999}.create-account-screen{width:100%;display:flex;flex-direction:column;align-items:center;padding:.75rem 0 2rem}.create-account-screen__center{width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.create-account-screen__logo-row{display:flex;justify-content:center;margin-bottom:.75rem}.create-account-screen__logo{height:48px;width:auto;object-fit:contain}.create-account-screen__heading{margin:0 0 1.25rem;font-family:var(--font-primary);font-weight:700;font-size:1.35rem;line-height:1.3;text-align:center;color:var(--color-heading)}.create-account-screen__form{width:100%;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}.create-account-screen__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.create-account-screen__field{text-align:left}.create-account-screen__label{display:block;margin-bottom:.35rem;font-family:var(--font-primary);font-size:.875rem;font-weight:500;color:#534e4e}.create-account-screen__input-wrap{position:relative;display:flex;align-items:center}.create-account-screen__input{width:100%;height:48px;padding:0 2.5rem 0 1rem;font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;box-sizing:border-box;outline:none;transition:border-color .2s}.create-account-screen__input::placeholder{color:#999}.create-account-screen__input:focus{border-color:var(--color-card-border-hover, #bdbdbd)}.create-account-screen__input--error:focus{border-color:#b60000}.create-account-screen__input--readonly{background:#f5f5f5;cursor:default;color:var(--color-text)}.create-account-screen__label--error{color:#b60000}.create-account-screen__input--error{border-color:#b60000}.create-account-screen__continue-btn--disabled,.create-account-screen__continue-btn--disabled:hover{background:#e3e3e3;color:#999}.create-account-screen__error{margin:.5rem 0 0;font-family:var(--font-primary);font-size:.875rem;color:var(--color-brand)}.create-account-screen__clear{position:absolute;right:.75rem;width:24px;height:24px;min-width:24px;min-height:24px;padding:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;color:#666;background:var(--color-progress-bg);border:none;border-radius:50%;flex-shrink:0;cursor:pointer;transition:background .2s,color .2s}.create-account-screen__clear:hover{background:#ccc;color:#1a1a1a}.create-account-screen__or{margin:0 0 1rem;text-align:center;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:#534e4e}.create-account-screen__social{display:flex;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.create-account-screen__btn{width:100%;height:52px;padding:0 1.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;font-family:var(--font-primary);font-size:1rem;font-weight:600;border-radius:12px;border:1px solid #1a1a1a;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.create-account-screen__btn--google{width:min(100%,320px);background:#fff;color:var(--color-text)}.create-account-screen__btn--google:hover{background:#f5f5f5;border-color:#333}.create-account-screen__btn--apple{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.create-account-screen__btn--apple:hover{background:#333;border-color:#333}.create-account-screen__social-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.create-account-screen__btn--apple .create-account-screen__social-icon{color:#fff}.create-account-screen__continue-wrap{display:flex;justify-content:center}.create-account-screen__continue-btn{width:100%}.xp-heart-info-screen{width:100%;display:flex;flex-direction:column;align-items:center;padding:1rem 0 2rem;margin-top:0}.xp-heart-info-screen__center{width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.xp-heart-info-screen__cards{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}.xp-heart-info-screen__card{background:#fff;border:1px solid var(--color-progress-bg);border-radius:12px;padding:1.25rem;box-shadow:0 4px 12px #0000001f;text-align:center}.xp-heart-info-screen__card-header{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem}.xp-heart-info-screen__card-icon{width:28px;height:28px;object-fit:contain}.xp-heart-info-screen__card-icon--xp,.xp-heart-info-screen__card-icon--hearts{filter:none}.xp-heart-info-screen__card-title{margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.25rem;line-height:1.3}.xp-heart-info-screen__card-title--xp{color:#e6a800}.xp-heart-info-screen__card-title--hearts{color:var(--color-brand)}.xp-heart-info-screen__card-desc{margin:0;font-family:var(--font-primary);font-size:.875rem;line-height:1.4;font-weight:700;color:var(--color-text);text-align:center}.xp-heart-info-screen__card-desc-accent--xp{color:#e6a800;font-weight:600}.xp-heart-info-screen__card-desc-accent--hearts{color:var(--color-brand);font-weight:600}.xp-heart-info-screen__continue-wrap{display:flex;justify-content:center}.xp-heart-info-screen__continue-btn{width:50%}.sign-in-screen{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center;padding:1rem 0 2rem}.sign-in-screen__graphic{display:none}.sign-in-screen__center{width:100%;max-width:326px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.sign-in-screen__logo-wrap{margin-bottom:1.25rem;line-height:0}.sign-in-screen__logo{height:48px;width:auto;object-fit:contain;display:block}.sign-in-screen__heading{margin:0 0 1.5rem;font-family:var(--font-primary);font-weight:700;font-size:1.5rem;line-height:1.25;color:var(--color-heading)}.sign-in-screen__form{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.25rem}.sign-in-screen__field{text-align:left}.sign-in-screen__label{display:block;margin-bottom:.35rem;font-family:var(--font-primary);font-size:.875rem;font-weight:500;color:#534e4e}.sign-in-screen__input-wrap{position:relative;display:flex;align-items:center}.sign-in-screen__input{width:100%;height:48px;padding:0 2.5rem 0 1rem;font-family:var(--font-primary);font-size:1rem;color:var(--color-text);background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;box-sizing:border-box;outline:none;transition:border-color .2s}.sign-in-screen__input::placeholder{color:#999}.sign-in-screen__input:focus,.sign-in-screen__input:focus-visible{border-color:#9ca3af}.sign-in-screen__clear{position:absolute;right:.75rem;width:24px;height:24px;min-width:24px;min-height:24px;padding:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;color:#666;background:var(--color-progress-bg);border:none;border-radius:50%;flex-shrink:0;cursor:pointer;transition:background .2s,color .2s}.sign-in-screen__clear:hover{background:#ccc;color:#1a1a1a}.sign-in-screen__continue-btn{width:100%;height:60px;margin-top:.25rem;padding-bottom:4px;box-sizing:border-box;background:var(--color-brand);color:#fff;font-family:var(--font-primary);font-weight:700;font-size:1rem;line-height:1.25;letter-spacing:.04em;text-transform:uppercase;border-radius:12px;border:none;cursor:pointer;box-shadow:var(--shadow-btn);transition:background .2s,box-shadow .2s}.sign-in-screen__continue-btn:hover{background:var(--color-brand-hover);box-shadow:0 2px 6px #0003}.sign-in-screen__error{margin:.5rem 0 0;font-family:var(--font-primary);font-size:.875rem;color:var(--color-brand)}.sign-in-screen__or{margin:0 0 1.25rem;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:#534e4e}.sign-in-screen__social{width:100%;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.sign-in-screen__btn{width:100%;height:52px;padding:0 1.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;font-family:var(--font-primary);font-size:1rem;font-weight:600;border-radius:12px;border:1px solid #1a1a1a;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.sign-in-screen__btn--google{background:#fff;color:var(--color-text)}.sign-in-screen__btn--google:hover{background:#f5f5f5;border-color:#333}.sign-in-screen__btn--apple{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.sign-in-screen__btn--apple:hover{background:#333;border-color:#333}.sign-in-screen__social-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.sign-in-screen__btn--apple .sign-in-screen__social-icon{color:#fff}.sign-in-screen__back{margin:0;font-size:.9375rem}.sign-in-screen__back-link{font-family:var(--font-primary);font-weight:500;color:var(--color-brand);text-decoration:none}.sign-in-screen__back-link:hover{text-decoration:underline;color:var(--color-brand-hover)}@media(min-width:900px){.app-shell__content:has(.sign-in-screen){align-items:stretch;padding:0}.sign-in-screen{flex-direction:row;align-items:stretch;min-height:100%;padding:0;justify-content:center}.sign-in-screen__graphic{display:block;position:relative;flex:1 1 50%;min-width:0;overflow:hidden;padding:2.75rem 2rem;text-align:left}.sign-in-screen__graphic-bg{position:absolute;inset:0;background:linear-gradient(135deg,#c62828,#a61b1b 55%,#7f1d1d);z-index:0}.sign-in-screen__graphic-logo{position:absolute;z-index:2;left:50%;top:56%;transform:translate(-50%,-50%);width:250px;height:250px;object-fit:contain}.sign-in-screen__graphic-title{position:absolute;z-index:1;top:8%;left:0;right:0;margin-top:0;padding:0 1.25rem;box-sizing:border-box;font-family:var(--font-primary);font-weight:900;font-synthesis:none;color:#fff;letter-spacing:-.02em;font-size:clamp(1.35rem,2.4vw + .9rem,3.1rem);line-height:1.15;text-align:center;white-space:nowrap}.sign-in-screen__graphic-icon{position:absolute;z-index:1;object-fit:contain;opacity:.98;width:72px;height:72px}.sign-in-screen__graphic-icon--tennis{left:22%;top:41%;transform:translate(-50%,-50%) rotate(-10deg)}.sign-in-screen__graphic-icon--basketball{left:80%;top:45%;transform:translate(-50%,-50%) rotate(12deg);width:72px;height:72px}.sign-in-screen__graphic-icon--soccer{left:34%;top:31%;transform:translate(-50%,-50%) rotate(-8deg);width:72px;height:72px}.sign-in-screen__graphic-icon--baseball{left:20%;top:58%;transform:translate(-50%,-50%) rotate(10deg);width:72px;height:72px}.sign-in-screen__graphic-icon--football{left:64%;top:31%;transform:translate(-50%,-50%) rotate(8deg);width:72px;height:72px}.sign-in-screen__graphic-icon--pickleball{left:84%;top:60%;transform:translate(-50%,-50%) rotate(-6deg);width:72px;height:72px}.sign-in-screen__graphic-character{position:absolute;z-index:1;object-fit:contain;width:240px;height:auto;bottom:-30px;right:-30px}.sign-in-screen__graphic-character--tennis-umpire{bottom:-40px;left:12%;right:auto;width:280px}.sign-in-screen__graphic-character--basketball-ref{bottom:-35px;left:auto;right:-20px;width:220px}.sign-in-screen__center{margin:0;padding:1rem 3rem 2rem;max-width:none;flex:1 1 50%}}.sign-up-step{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center;padding:1rem 0 2rem}.sign-up-step__center{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch}.sign-up-step__card{background:var(--color-bg);border-radius:var(--radius-card);padding:var(--space-card) 2rem;margin-bottom:1.5rem;box-shadow:0 3px 2px var(--color-card-shadow);border:1px solid var(--color-progress-bg)}.sign-up-step__title{margin:0 0 .5rem;font-family:var(--font-primary);font-weight:700;font-size:1.5rem;line-height:1.25;color:var(--color-heading)}.sign-up-step__body{margin:0;font-family:var(--font-primary);font-size:.975rem;color:#534e4e}.sign-up-step__actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.sign-up-step__secondary{font-family:var(--font-primary);font-size:.9375rem;font-weight:500;color:var(--color-text);text-decoration:none}.sign-up-step__secondary:hover{color:var(--color-brand);text-decoration:underline}.sign-up-step__primary{width:100%;max-width:220px}.placeholder-page{text-align:center;padding:2rem}.placeholder-page h1{margin:0 0 .5rem;font-size:1.5rem}.placeholder-page p{margin:0;color:#666}.placeholder-page__sign-out{margin-top:1.5rem;padding:.5rem 1rem;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:var(--color-brand);background:transparent;border:1px solid var(--color-brand);border-radius:var(--radius-btn);cursor:pointer;transition:background .2s,color .2s}.placeholder-page__sign-out:hover{background:var(--color-brand);color:#fff}.profile-page__loading{text-align:center;padding:2rem;font-family:var(--font-primary);color:var(--color-text)}.profile-shell{width:100%;max-width:420px;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px #0000000f}.profile-shell__titlebar{background:var(--color-brand);color:#fff;display:flex;align-items:center;justify-content:center;padding:.95rem 1rem;font-family:var(--font-primary);font-weight:800}.profile-shell__title{margin:0;text-align:center;font-size:1.05rem}.profile-shell__titlebar-spacer{width:1.5rem;flex-shrink:0}.profile-shell__close-btn{background:transparent;border:none;color:#fff;font-size:1.35rem;line-height:1;padding:.1rem .25rem;cursor:pointer}.profile-shell__close-btn:hover{opacity:.95}.profile-shell__body{padding:1rem 1rem 1.25rem;background:#fff}.profile-avatar-card{--profile-avatar-card-max-w: 300px;--profile-avatar-card-min-h: calc(300px * 948 / 1396);--profile-avatar-surface: #e7e3da;background:var(--profile-avatar-surface);border-radius:16px;padding:.85rem .85rem 1rem;border:1px solid rgba(0,0,0,.05)}.profile-avatar-card--has-avatar{--profile-avatar-surface: #bfe2f2;background:var(--profile-avatar-surface);box-sizing:border-box;width:100%;max-width:var(--profile-avatar-card-max-w);min-height:var(--profile-avatar-card-min-h);margin-left:auto;margin-right:auto;padding:.45rem .5rem .5rem;display:flex;flex-direction:column;align-items:center}.profile-avatar-card--has-avatar .profile-avatar-card__top{width:100%;margin-bottom:.15rem}.profile-avatar-card--has-avatar .profile-avatar-card__edit-avatar-icon{height:28px}.profile-avatar-card--has-avatar .profile-avatar-card__avatar-wrap{width:148px;height:148px;margin:.15rem auto 0}.profile-avatar-card--empty{box-sizing:border-box;width:100%;max-width:var(--profile-avatar-card-max-w);min-height:var(--profile-avatar-card-min-h);margin-left:auto;margin-right:auto;padding:0;overflow:visible;background:transparent;border:none;box-shadow:none}.profile-avatar-card__empty-hit{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:var(--profile-avatar-card-min-h);margin:0;padding:0;border:none;border-radius:15px;overflow:hidden;cursor:pointer;background:transparent;line-height:0;font:inherit;box-sizing:border-box}.profile-avatar-card__empty-hit:focus{outline:none}.profile-avatar-card__empty-hit:focus-visible{outline:2px solid #9ca3af;outline-offset:3px}.profile-avatar-card__empty-img{display:block;width:100%;height:auto;margin:0;vertical-align:bottom;pointer-events:none}.profile-avatar-card--profile-loading{box-sizing:border-box;width:100%;max-width:var(--profile-avatar-card-max-w);min-height:var(--profile-avatar-card-min-h);margin-left:auto;margin-right:auto;border-radius:16px;background:#ececec}.profile-avatar-card__top{display:flex;align-items:flex-start;justify-content:space-between}.profile-avatar-card__edit-avatar{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:.25rem;cursor:pointer}.profile-avatar-card__edit-avatar-icon{display:block;width:auto;height:36px;max-width:200px;object-fit:contain}.profile-avatar-card__avatar-wrap{position:relative;display:block;width:138px;height:138px;margin:.35rem auto .2rem;padding:0;border:none;border-radius:14px;overflow:hidden;background:var(--profile-avatar-surface, #e7e3da);cursor:pointer;font:inherit}.profile-avatar-card__avatar-wrap:focus{outline:none}.profile-avatar-card__avatar-wrap:focus-visible{outline:2px solid #9ca3af;outline-offset:3px}.profile-avatar-card__avatar{position:absolute;inset:0;width:100%;height:100%;border-radius:14px;object-fit:cover;object-position:center center;background:var(--profile-avatar-surface, #e7e3da);transform:scale(1.08);transform-origin:center center}.profile-rows{margin-top:.85rem;background:transparent;border-radius:14px;overflow:hidden}.profile-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem .25rem;border-bottom:1px solid rgba(0,0,0,.06);font-family:var(--font-primary)}.profile-row:last-child{border-bottom:none}.profile-row__label{font-size:.95rem;font-weight:700;color:#1a1a1a}.profile-row__right{display:flex;align-items:center;gap:.55rem}.profile-row__value{font-size:.95rem;font-weight:600;color:#6b7280}.profile-row__chevron{font-size:1rem;color:#6b7280}.profile-row--button{appearance:none;background:transparent;border:none;text-align:left;cursor:pointer;padding:.95rem .25rem}.profile-row--button:hover{background:#00000008}.settings-page{width:100%;max-width:860px}.settings-page__header{display:flex;align-items:center;margin-bottom:.65rem}.settings-page__close{display:inline-flex;align-items:center;gap:.45rem;border:none;background:transparent;font-size:1.7rem;line-height:1;color:#101010;cursor:pointer;padding:.2rem .35rem}.settings-page__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010}.settings-section{margin-bottom:1.5rem}.settings-section__title{margin:0 0 .65rem;font-family:var(--font-primary);font-size:1.5rem;font-weight:800;color:#5f6368}.settings-card{border:1px solid #e2e5e9;border-radius:10px;overflow:hidden;background:#fff}.settings-row{width:100%;border:none;border-bottom:1px solid #eceff2;background:#f6f7f8;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.15rem;font-family:var(--font-primary);font-size:1.02rem;line-height:1.4;color:#2f3338;cursor:pointer}.settings-row:last-child{border-bottom:none}.settings-row:hover:not(:disabled){background:#eef1f4;border-bottom-color:#eceff2}.settings-row:focus-visible:not(:disabled){border-bottom-color:#eceff2}.settings-row:disabled{color:#7c838b;cursor:default}.settings-row__left{display:inline-flex;align-items:center;gap:.85rem;text-align:left;min-width:0}.settings-row__icon{width:20px;height:20px;object-fit:contain;flex-shrink:0}.settings-row__chevron{color:#7c838b;font-size:1.05rem;flex-shrink:0}.settings-page__logout-wrap{display:flex;justify-content:center;margin-top:.25rem;padding-bottom:1rem}.settings-page__logout{width:150px;border:none;border-radius:10px;background:#7b7b7b;color:#fff;font-family:var(--font-primary);font-size:1.15rem;font-weight:700;padding:.58rem 1rem;cursor:pointer}.settings-page__logout:disabled{opacity:.7;cursor:not-allowed}.settings-page__toast{position:fixed;bottom:1.35rem;left:50%;transform:translate(-50%);z-index:2000;padding:.4rem .85rem;border-radius:999px;background:#1e1f23eb;color:#fff;font-family:var(--font-primary);font-size:.8125rem;font-weight:600;letter-spacing:.01em;box-shadow:0 4px 16px #0000002e;pointer-events:none;animation:settings-page-toast-in .2s ease-out}@keyframes settings-page-toast-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.team-code-screen{width:100%;max-width:420px;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px #0000000f;min-height:min(520px,calc(100vh - 120px));display:flex;flex-direction:column}.team-code-screen__header{background:var(--color-brand);color:#fff;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.95rem 1rem;font-family:var(--font-primary);font-weight:800;flex-shrink:0}.team-code-screen__back{justify-self:start;border:none;background:transparent;font-size:1.7rem;line-height:1;cursor:pointer;color:#fff;padding:.1rem .25rem}.team-code-screen__back .back-arrow-icon{filter:brightness(0) invert(1)}.team-code-screen__back:hover{opacity:.95}.team-code-screen__back:focus-visible{outline:2px solid #fff!important;outline-offset:2px}.team-code-screen__title{grid-column:2;margin:0;font-family:var(--font-primary);font-size:1.05rem;font-weight:800;color:#fff;text-align:center;line-height:1.25}.team-code-screen__content{flex:1;padding:1rem 1rem .6rem;overflow:hidden;background:#fff}.team-code-screen__copy{margin:0 0 1rem;font-family:var(--font-primary);font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:700;line-height:1.35;color:#1e1f23}.team-code-screen__input-wrap{border:1px solid rgba(0,0,0,.12);background:#fff;border-radius:14px;padding:0 1rem;min-height:58px;display:flex;align-items:center;box-sizing:border-box}.team-code-screen__input{width:100%;box-sizing:border-box;border:none;outline:none;background:transparent;font-family:var(--font-primary);font-size:clamp(1rem,1.45vw,1.4rem);color:#1e1f23;padding:.65rem 0}.team-code-screen__input::placeholder{color:#7a828a}.team-code-screen__input:disabled{opacity:.65}.team-code-screen__status{margin:.5rem 0 0;font-family:var(--font-primary);font-size:.9rem;font-weight:600}.team-code-screen__status--error{color:#b42318}.team-code-screen__status--success{color:#137333}.team-code-screen__footer{display:flex;justify-content:center;padding:.45rem 1rem .9rem;background:#fff}.team-code-screen__unlock{width:min(100%,380px);border:none;border-radius:12px;background:var(--color-brand);color:#fff;font-family:var(--font-primary);font-size:clamp(1.2rem,1.7vw,1.75rem);font-weight:800;letter-spacing:.01em;padding:.62rem 1rem;cursor:pointer}.team-code-screen__unlock:disabled{opacity:.65;cursor:not-allowed}.my-children-screen{width:100%;max-width:480px;margin:0 auto;min-height:min(640px,calc(100vh - 140px));display:flex;flex-direction:column;background:#f5f7fa;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px #0000000f}.my-children-screen__header{display:grid;grid-template-columns:72px 1fr 72px;align-items:center;padding:.9rem 1rem;border-bottom:1px solid #e5e7eb;background:#fff}.my-children-screen__header-spacer{width:72px}.my-children-screen__back{justify-self:start;border:none;background:transparent;cursor:pointer;padding:.15rem .25rem;line-height:0}.my-children-screen__back:focus-visible{outline:2px solid rgba(30,96,168,.55);outline-offset:2px;border-radius:6px}.my-children-screen__title{margin:0;text-align:center;font-family:var(--font-primary);font-size:1.05rem;font-weight:600;color:#1a1a2e}.my-children-screen__skip{justify-self:end;border:none;background:transparent;color:#4d93e0;font-family:var(--font-primary);font-size:.95rem;font-weight:500;cursor:pointer;padding:.25rem 0}.my-children-screen__skip:hover{opacity:.85}.my-children-screen__subtitle{margin:0;padding:1rem 1.25rem .5rem;text-align:center;font-family:var(--font-primary);font-size:.875rem;line-height:1.45;color:#6b7280;background:#f5f7fa}.my-children-screen__body{flex:1;overflow:auto;padding:.5rem 1rem .75rem;background:#f5f7fa}.my-children-screen__centered{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:220px;padding:1.5rem}.my-children-screen__empty-text{margin:0;text-align:center;font-family:var(--font-primary);font-size:.95rem;line-height:1.45;color:#6b7280}.my-children-screen__retry{border:none;background:#4d93e0;color:#fff;font-family:var(--font-primary);font-weight:600;padding:.5rem 1rem;border-radius:10px;cursor:pointer}.my-children-screen__spinner{width:36px;height:36px;border:3px solid #e5e7eb;border-top-color:#4d93e0;border-radius:50%;animation:my-children-spin .8s linear infinite}@keyframes my-children-spin{to{transform:rotate(360deg)}}.my-children-screen__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.my-children-screen__player-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-radius:12px;border-style:solid;background:#fff;cursor:pointer;text-align:left;box-shadow:0 1px 4px #0000000f;font:inherit}.my-children-screen__player-row:disabled{cursor:default}.my-children-screen__player-row:not(:disabled):hover{box-shadow:0 2px 8px #00000014}.my-children-screen__player-info{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.my-children-screen__avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:700;font-size:1rem;background:#e5e7eb;color:#6b7280}.my-children-screen__avatar[data-selected=true]{background:#4d93e0;color:#fff}.my-children-screen__name-block{display:flex;flex-direction:column;gap:.2rem;min-width:0}.my-children-screen__player-name{font-family:var(--font-primary);font-size:1rem;font-weight:500;color:#1a1a2e}.my-children-screen__status{font-family:var(--font-primary);font-size:.75rem;font-weight:500}.my-children-screen__checkbox{width:24px;height:24px;border-radius:6px;border:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.my-children-screen__checkbox[data-checked=true]{background:#4d93e0;border-color:#4d93e0}.my-children-screen__checkbox--linked{border-radius:50%;background:#22c55e;border-color:#22c55e}.my-children-screen__locked-icon{font-size:1.15rem;flex-shrink:0}.my-children-screen__info-card{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem;margin-top:.35rem;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-family:var(--font-primary);font-size:.8125rem;line-height:1.45}.my-children-screen__info-card p{margin:0;flex:1}.my-children-screen__info-icon{flex-shrink:0;color:#1d4ed8}.my-children-screen__footer{padding:.75rem 1rem 1rem;border-top:1px solid #e5e7eb;background:#f5f7fa;display:flex;flex-direction:column;gap:.5rem}.my-children-screen__selection-count{margin:0;text-align:center;font-family:var(--font-primary);font-size:.8125rem;color:#6b7280}.my-children-screen__submit-error{margin:0;text-align:center;font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#b42318}.my-children-screen__submit{width:100%;border:none;border-radius:14px;padding:.9rem 1rem;font-family:var(--font-primary);font-size:1rem;font-weight:700;cursor:pointer;background:#e5e7eb;color:#6b7280}.my-children-screen__submit[data-active=true]{background:#4d93e0;color:#fff}.my-children-screen__submit:disabled{opacity:.75;cursor:wait}.my-children-screen__dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:1000}.my-children-screen__dialog{width:min(100%,360px);background:#fff;border-radius:14px;padding:1.25rem 1.25rem 1rem;box-shadow:0 8px 32px #0000002e}.my-children-screen__dialog-title{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1.1rem;font-weight:700;color:#1a1a2e}.my-children-screen__dialog-body{margin:0 0 1rem;font-family:var(--font-primary);font-size:.9rem;line-height:1.45;color:#4b5563}.my-children-screen__dialog-btn{width:100%;border:none;border-radius:10px;background:#4d93e0;color:#fff;font-family:var(--font-primary);font-size:1rem;font-weight:700;padding:.65rem;cursor:pointer}.profile-shell--avatar-picker{display:flex;flex-direction:column;max-height:min(760px,calc(100vh - 120px))}.profile-shell--avatar-picker .profile-shell__titlebar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-content:stretch}.profile-shell--avatar-picker .profile-shell__close-btn{justify-self:start}.profile-shell--avatar-picker .profile-shell__title{grid-column:2;margin:0}.profile-avatar-picker{flex:1;overflow-y:auto;padding:1rem 1rem .5rem}.profile-avatar-picker__heading{margin:0 0 .9rem;text-align:center;font-family:var(--font-primary);font-size:1.95rem;font-weight:700;color:#1a1a1a}.profile-avatar-picker__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem .6rem}.profile-avatar-picker__item{position:relative;border:2px solid transparent;background:transparent;border-radius:12px;cursor:pointer;padding:.45rem;min-height:96px}.profile-avatar-picker__item:hover{background:#3b82f60d}.profile-avatar-picker__item--selected{border-color:#3b82f6;background:#3b82f61f}.profile-avatar-picker__item-image{width:100%;aspect-ratio:1 / 1;object-fit:contain;display:block}.profile-avatar-picker__item-check{position:absolute;top:.15rem;right:.15rem;width:22px;height:22px;border-radius:999px;background:#3b82f6;color:#fff;font-size:.85rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.profile-avatar-picker__footer{border-top:1px solid rgba(0,0,0,.1);padding:.9rem 1rem 1rem;background:#fdf1ea}.profile-avatar-picker__save-btn{width:100%;padding:.9rem 1rem;border-radius:12px;border:1px solid #3B82F6;background:#3b82f6;color:#fff;font-family:var(--font-primary);font-size:1rem;font-weight:700;cursor:pointer}.profile-avatar-picker__save-btn:disabled{opacity:.6;cursor:not-allowed}.profile-edit-screen{width:100%;max-width:420px;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px #0000000f;height:min(760px,calc(100vh - 120px));display:flex;flex-direction:column}.profile-edit-screen__header{background:var(--color-brand);color:#fff;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.95rem 1rem;font-family:var(--font-primary);font-weight:800}.profile-edit-screen__back{position:static;transform:none;justify-self:start;border:none;background:transparent;font-size:1.7rem;line-height:1;cursor:pointer;color:#fff;padding:.1rem .25rem}.profile-edit-screen__back .back-arrow-icon{filter:brightness(0) invert(1)}.profile-edit-screen__back:hover{opacity:.95}.profile-edit-screen__back:focus-visible{outline:2px solid #fff!important;outline-offset:2px}.profile-edit-screen__title{grid-column:2;margin:0;font-family:var(--font-primary);font-size:1.05rem;font-weight:800;color:#fff;text-align:center}.profile-edit-screen__form{flex:1;padding:1rem 1rem .6rem;overflow:hidden;background:#fff}.profile-edit-screen__label{display:block;margin:.95rem 0 .45rem;font-family:var(--font-primary);font-size:clamp(1.05rem,1.6vw,1.75rem);font-weight:700;color:#1e1f23}.profile-edit-screen__input-wrap{border:1px solid rgba(0,0,0,.12);background:#fff;border-radius:14px;padding:0 1rem;min-height:58px;display:flex;align-items:center}.profile-edit-screen__input{width:100%;border:none;outline:none;background:transparent;font-family:var(--font-primary);font-size:clamp(1rem,1.45vw,1.4rem);color:#1e1f23}.profile-edit-screen__input::placeholder{color:#7a828a}.profile-edit-screen__input[readonly]:not(:focus){color:#6d757d}.profile-edit-screen__input--readonly{cursor:default;color:#4a5563}.profile-email-screen__label{color:#6d757d;font-weight:600}.profile-email-screen__field-wrap{background:#fff}.profile-edit-screen__error{margin:.4rem 0 0;font-family:var(--font-primary);font-size:.9rem;color:#b42318;font-weight:600}.profile-edit-screen__footer{display:flex;justify-content:center;padding:.45rem 1rem .9rem;background:#fff}.profile-edit-screen__confirm{width:min(100%,380px);border:none;border-radius:12px;background:var(--color-brand);color:#fff;font-family:var(--font-primary);font-size:clamp(1.2rem,1.7vw,1.75rem);font-weight:800;letter-spacing:.01em;padding:.62rem 1rem;cursor:pointer}.profile-edit-screen__confirm:disabled{opacity:.65;cursor:not-allowed}.profile-lesson-reviews{flex:1 1 auto;width:100%;max-width:100%;min-width:0;background:#efefef;border-radius:10px;height:min(760px,calc(100vh - 120px));display:flex;flex-direction:column;overflow:hidden;position:relative}.profile-lesson-reviews__header{position:relative;display:flex;align-items:center;justify-content:center;padding:.95rem 1.15rem;background:#fff;flex-shrink:0}.profile-lesson-reviews__back{position:absolute;left:1rem;top:50%;transform:translateY(-50%);border:none;background:transparent;font-size:1.7rem;line-height:1;cursor:pointer;color:#1d2129;padding:0}.profile-lesson-reviews__title{margin:0;font-family:var(--font-primary);font-size:clamp(1.15rem,2.2vw,1.35rem);font-weight:800;color:#161a22;text-align:center}.profile-lesson-reviews__divider{height:1px;background:#e0e0e0;flex-shrink:0}.profile-lesson-reviews__body{flex:1;overflow:auto;background:#f5f5f5;min-height:0}.profile-lesson-reviews__center{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 1.25rem;text-align:center}.profile-lesson-reviews__center--empty{background:#fff}.profile-lesson-reviews__empty{margin:0;max-width:280px;font-family:var(--font-primary);font-size:clamp(1rem,1.5vw,1.05rem);font-weight:600;color:#1e1f23;line-height:1.45}.profile-lesson-reviews__loading-text,.profile-lesson-reviews__error-text{font-family:var(--font-primary);font-size:1rem;color:#444}.profile-lesson-reviews__error-text{color:#b42318;margin-bottom:.75rem}.profile-lesson-reviews__retry{border:2px solid #b60000;background:#fff;color:#b60000;font-family:var(--font-primary);font-weight:700;border-radius:999px;padding:.5rem 1.25rem;cursor:pointer}.profile-lesson-reviews__list{list-style:none;margin:0;padding:1.35rem 1.25rem 1.5rem}.profile-lesson-reviews__card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.25rem 1.35rem 1.2rem;margin-bottom:1.35rem}.profile-lesson-reviews__card:last-child{margin-bottom:0}.profile-lesson-reviews__meta{margin:0;font-family:var(--font-primary);font-size:.875rem;font-weight:600;line-height:1.35}.profile-lesson-reviews__pack{color:#b60000}.profile-lesson-reviews__meta-sep,.profile-lesson-reviews__lesson-num{color:#999;font-weight:400}.profile-lesson-reviews__card-top{margin-bottom:.15rem}.profile-lesson-reviews__lesson-title{margin:.5rem 0 0;font-family:var(--font-primary);font-size:1.125rem;font-weight:800;color:#161a22}h2.profile-lesson-reviews__lesson-title{font-size:1.125rem}.profile-lesson-reviews__coach{margin:.35rem 0 0;font-family:var(--font-primary);font-size:.875rem;color:#666}.profile-lesson-reviews__rating-row{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;gap:.65rem}.profile-lesson-reviews__stars{display:flex;flex-direction:row;gap:2px;align-items:center}.profile-lesson-reviews__stars--interactive{justify-content:center;margin:.25rem 0 1.25rem;gap:.35rem}.profile-lesson-reviews__star{line-height:1;-webkit-user-select:none;user-select:none}.profile-lesson-reviews__star-btn{border:none;background:transparent;padding:.2rem;cursor:pointer;line-height:1}.profile-lesson-reviews__star--btn-inner{font-size:clamp(1.65rem,10vw,2.4rem);color:#e0e0e0;display:block;line-height:1}.profile-lesson-reviews__star--btn-inner.is-filled{color:#ffb431}.profile-lesson-reviews__date{font-family:var(--font-primary);font-size:.875rem;color:#999;flex-shrink:0}.profile-lesson-reviews__comment{margin:.85rem 0 0;font-family:var(--font-primary);font-size:.9rem;line-height:1.5;color:#1e1f23}.profile-lesson-reviews__comment--clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.profile-lesson-reviews__actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:.9rem}.profile-lesson-reviews__icon-btn{border:none;background:transparent;padding:.35rem;cursor:pointer;border-radius:8px}.profile-lesson-reviews__icon-btn:hover{background:#b600000f}.profile-lesson-reviews__overlay{position:absolute;inset:0;z-index:50;display:flex;align-items:stretch;justify-content:center;background:#fff}.profile-lesson-reviews__overlay--edit{justify-content:stretch}.profile-lesson-reviews__overlay--edit .profile-lesson-reviews__modal{width:100%;max-width:100%;flex:1 1 auto;min-width:0;min-height:0}.profile-lesson-reviews__overlay--dim{background:#00000080;align-items:flex-end;justify-content:center;padding:0}.profile-lesson-reviews__modal{width:100%;max-width:100%;background:#fff;display:flex;flex-direction:column;overflow:hidden;max-height:100%}.profile-lesson-reviews__modal-header{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:.85rem .65rem .75rem;flex-shrink:0}.profile-lesson-reviews__modal-close{grid-column:1;border:none;background:transparent;padding:.35rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.profile-lesson-reviews__modal-title{grid-column:2;margin:0;text-align:center;font-family:var(--font-primary);font-size:clamp(1.1rem,2vw,1.25rem);font-weight:800;color:#161a22}.profile-lesson-reviews__modal-body{flex:1;overflow:auto;padding:1.35rem 1.35rem 1.65rem;min-height:0}.profile-lesson-reviews__modal-body .profile-lesson-reviews__lesson-box{padding:1.25rem 1.35rem;margin-bottom:1.5rem}.profile-lesson-reviews__modal-field-group+.profile-lesson-reviews__modal-field-group{margin-top:1.5rem}.profile-lesson-reviews__modal-field-group .profile-lesson-reviews__section-label{margin-bottom:.75rem}.profile-lesson-reviews__modal-field-group .profile-lesson-reviews__stars--interactive{justify-content:flex-start;margin:.15rem 0 0;gap:.45rem}.profile-lesson-reviews__modal-field-group .profile-lesson-reviews__star--btn-inner{font-size:clamp(1.85rem,4.5vw,2.55rem)}.profile-lesson-reviews__lesson-box{border:1px solid #e0e0e0;border-radius:12px;padding:1rem;margin-bottom:1.25rem;background:#fafafa}.profile-lesson-reviews__lesson-box--compact{margin-bottom:1rem}.profile-lesson-reviews__section-label{display:block;font-family:var(--font-primary);font-size:1.05rem;font-weight:800;color:#161a22;margin-bottom:.5rem}.profile-lesson-reviews__modal-field-group .profile-lesson-reviews__textarea{margin-bottom:0}.profile-lesson-reviews__textarea{width:100%;box-sizing:border-box;border:1px solid #e0e0e0;border-radius:12px;padding:1rem 1.05rem;font-family:var(--font-primary);font-size:1rem;line-height:1.45;min-height:150px;resize:vertical;background:#f5f5f5;color:#1e1f23;margin-bottom:1rem}.profile-lesson-reviews__textarea:focus{outline:2px solid rgba(182,0,0,.35);outline-offset:1px}.profile-lesson-reviews__modal-actions{display:flex;gap:.85rem;margin-top:1.35rem;padding-top:.25rem}.profile-lesson-reviews__btn{flex:1;border-radius:999px;padding:.95rem 1.15rem;font-family:var(--font-primary);font-size:1rem;font-weight:800;cursor:pointer;border:3px solid transparent}.profile-lesson-reviews__btn--outline{background:#fff;border-color:#b60000;color:#b60000}.profile-lesson-reviews__btn--primary{background:#b60000;border-color:#b60000;color:#fff}.profile-lesson-reviews__btn--primary:disabled,.profile-lesson-reviews__btn:disabled{opacity:.6;cursor:not-allowed}.profile-lesson-reviews__action-error{margin:.85rem 0 0;font-family:var(--font-primary);font-size:.9rem;color:#b42318;font-weight:600}.profile-lesson-reviews__delete-sheet{width:100%;max-width:100%;background:#fff;border-radius:20px 20px 0 0;padding:.85rem 1.35rem 1.5rem;animation:profile-lesson-reviews-sheet-up .2s ease-out}@keyframes profile-lesson-reviews-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.profile-lesson-reviews__delete-handle{width:40px;height:4px;background:#ccc;border-radius:2px;margin:0 auto .75rem}.profile-lesson-reviews__delete-title{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1.25rem;font-weight:800;color:#b60000}.profile-lesson-reviews__delete-msg{margin:0 0 1rem;font-family:var(--font-primary);font-size:1rem;color:#1e1f23;line-height:1.4}.profile-leaderboard-visibility{width:100%;max-width:min(520px,100%);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-height:min(520px,calc(100vh - 120px));box-shadow:0 2px 12px #0000000f}.profile-leaderboard-visibility__header{position:relative;display:flex;align-items:center;justify-content:center;padding:1rem 3.5rem 1.15rem;background:#b60000;flex-shrink:0}.profile-leaderboard-visibility__back{position:absolute;left:1rem;top:50%;transform:translateY(-50%);border:none;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:#fff;padding:.25rem}.profile-leaderboard-visibility__back .back-arrow-icon{filter:brightness(0) invert(1)}.profile-leaderboard-visibility__back:hover{opacity:.95}.profile-leaderboard-visibility__back:focus-visible{outline:2px solid #fff!important;outline-offset:2px}.profile-leaderboard-visibility__title{margin:0;font-family:var(--font-primary);font-size:clamp(1.05rem,2vw,1.2rem);font-weight:800;color:#fff;text-align:center}.profile-leaderboard-visibility__body{flex:1;background:#fff;padding:1.5rem 1.25rem 1.75rem}.profile-leaderboard-visibility__section-title{margin:0 0 1.15rem;font-family:var(--font-primary);font-size:1rem;font-weight:800;color:#161a22;line-height:1.35}.profile-leaderboard-visibility__error{margin:0 0 .85rem;font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#b42318}.profile-leaderboard-visibility__cards{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;width:100%;align-items:stretch}.profile-leaderboard-visibility__card{flex:1 1 140px;min-width:140px;max-width:100%;display:flex;flex-direction:column;align-items:center;padding:1.75rem 1rem 1.5rem;border-radius:20px;border:1px solid #eeeeee;background:#fff;box-shadow:0 2px 8px #00000014;cursor:pointer;font:inherit;text-align:center;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.profile-leaderboard-visibility__card:hover:not(:disabled){box-shadow:0 4px 14px #0000001a}.profile-leaderboard-visibility__card--selected{background:#99c7f94d;border-width:2px;border-color:#71adef;box-shadow:0 2px 10px #71adef40}.profile-leaderboard-visibility__card--disabled{opacity:.55;cursor:not-allowed}.profile-leaderboard-visibility__icon-wrap{width:72px;height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:.85rem;flex-shrink:0;overflow:hidden}.profile-leaderboard-visibility__icon{width:80px;height:80px;object-fit:contain;display:block;pointer-events:none}.profile-leaderboard-visibility__icon--globe{margin-top:6px;margin-left:4px}.profile-leaderboard-visibility__icon--lock{margin-top:6px;margin-left:-4px}.profile-leaderboard-visibility__card-text{display:flex;flex-direction:column;align-items:center;gap:.65rem;width:100%;padding:0 .25rem}.profile-leaderboard-visibility__card-title{font-family:var(--font-primary);font-size:1rem;font-weight:800;color:#161a22}.profile-leaderboard-visibility__card-desc{font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#747474;line-height:1.35;max-width:11rem}.profile-leaderboard-visibility__saving{margin:1rem 0 0;font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#6d757d;text-align:center}.all-star-page{width:100%;max-width:min(100%,max(50vw,430px));margin:0 auto;padding:.65rem 1.25rem .9rem;box-sizing:border-box;display:flex;justify-content:center;min-height:0}.all-star-page__card{width:100%;max-width:none;max-height:calc(100vh - 128px);min-height:0;background:#fff;border-radius:26px;padding:1rem 1rem .95rem;position:relative;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;box-shadow:0 2px 12px #0000000f}.all-star-page__pill{position:absolute;top:.75rem;right:.9rem;width:94px;height:30px;display:inline-flex;align-items:center;justify-content:center}.all-star-page__pill-image{width:100%;height:100%;object-fit:contain}.all-star-page__title{flex-shrink:0;margin:1.85rem 0 .45rem;padding:0 .25rem;color:#111827;font-family:var(--font-primary);font-size:clamp(1.45rem,2.8vh,1.95rem);font-weight:800;line-height:1.08;letter-spacing:-.015em}.all-star-page__comparison{flex:1 1 auto;min-height:0;width:100%;margin-top:.3rem;border-radius:10px;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.all-star-page__comparison-header,.all-star-page__comparison-row{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.82fr) minmax(0,.82fr);align-items:stretch;column-gap:0}.all-star-page__comparison-header{min-height:34px}.all-star-page__header-spacer{display:block}.all-star-page__free-label{display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-size:clamp(.75rem,1.8vw,.88rem);font-weight:800;color:#111827;padding:.28rem .15rem;box-sizing:border-box}.all-star-page__allstar-label{display:flex;align-items:center;justify-content:center;background:#ff5252;padding:.35rem .3rem;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.17);border-radius:10px 10px 0 0}.all-star-page__column-image{width:100%;max-width:76px;height:auto;max-height:22px;object-fit:contain;display:block}.all-star-page__comparison-row{min-height:40px}.all-star-page__feature-name{display:flex;align-items:center;font-family:var(--font-primary);font-size:clamp(.78rem,2vw,.92rem);font-weight:600;color:#1f2937;padding:.32rem .28rem .32rem .15rem;box-sizing:border-box;line-height:1.2}.all-star-page__feature-free{display:flex;align-items:center;justify-content:center;padding:.28rem .12rem;box-sizing:border-box;background:transparent}.all-star-page__feature-allstar{display:flex;align-items:center;justify-content:center;background:#ff5252;padding:.28rem .15rem;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.17)}.all-star-page__comparison-row:last-child .all-star-page__feature-allstar{border-bottom:none;border-radius:0 0 10px 10px}.all-star-page__cell-icon{width:20px;height:20px;object-fit:contain;flex-shrink:0;display:block}.all-star-page__cta{flex-shrink:0;width:100%;margin-top:.5rem;border:2px solid #d31f1f;border-radius:12px;background:#fff;color:#d31f1f;height:clamp(44px,5vh,52px);font-family:var(--font-primary);font-size:clamp(.95rem,2.4vh,1.35rem);font-weight:800;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 3px #8d0b0bb3;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}@media(max-width:920px){.all-star-page{padding:1rem 1.25rem 1.25rem}.all-star-page__title{font-size:1.35rem}.all-star-page__feature-name{font-size:.85rem}.all-star-page__cta{height:48px;font-size:1.05rem}}.all-star-member{width:100%;max-width:min(100%,max(50vw,430px));margin:0 auto;padding:.2rem 1.25rem .5rem;box-sizing:border-box;display:flex;flex-direction:column}.all-star-member__hero{position:relative;border-radius:18px;overflow:hidden}.all-star-member__hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.all-star-member__hero-content{position:relative;z-index:1;min-height:160px;padding:.85rem .95rem .62rem;display:flex;justify-content:space-between;align-items:stretch;gap:.55rem}.all-star-member__hero-text{color:#fff;max-width:66%;flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.all-star-member__hero-text .all-star-member__start--button{margin-top:.7rem}.all-star-member__hero-title{margin:0 0 .35rem;font-family:var(--font-primary);font-size:2.45rem;font-weight:800;line-height:1.05}.all-star-member__hero-subtitle{margin:0;font-family:var(--font-primary);font-size:1.2rem;font-weight:600;line-height:1.25;color:#ffe5e5}.all-star-member__start{width:102px;height:40px;border-radius:10px;border:2px solid rgba(183,28,28,.9);background:#fff;color:#7b1010;font-family:var(--font-primary);font-size:1.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 3px #7a1010bf}.all-star-member__start--button{border:2px solid rgba(183,28,28,.9);cursor:pointer}.all-star-member__start--button:hover{border-color:#d31f1f}.all-star-member__hero-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;min-height:148px}.all-star-member__hero-badge{width:104px;height:auto;object-fit:contain}.all-star-member__hero-mascot{width:128px;height:auto;object-fit:contain}.all-star-member__heading{margin:.55rem 0 .45rem;font-family:var(--font-primary);font-size:1.95rem;font-weight:800;color:#1f2937;letter-spacing:-.01em}.all-star-member__chips{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.all-star-member__chip{background:#f5dfdf;border-radius:10px;height:40px;padding:0 .65rem;display:flex;align-items:center;justify-content:center;gap:.38rem;font-family:var(--font-primary);font-size:.82rem;font-weight:700;color:#b71c1c}.all-star-member__chip img{width:18px;height:18px;object-fit:contain}.all-star-member__actions{margin-top:.55rem;display:flex;flex-direction:column;gap:.5rem}.all-star-member__action-row{background:#fff;border-radius:18px;border:2px solid #d1d5db;min-height:56px;padding:0 .95rem;display:flex;align-items:center;gap:.75rem;box-shadow:0 2px #c4c4c4}.all-star-member__action-row img{width:30px;height:30px;object-fit:contain}.all-star-member__action-row span{font-family:var(--font-primary);font-size:1.35rem;font-weight:700;color:#1f2937}.all-star-member__action-row--button{width:100%;text-align:left;border:2px solid #d1d5db;background:#fff;cursor:pointer}.all-star-member__action-row--button:hover{background:#fafafa;border-color:#9ca3af}.all-star-member__action-row--button:focus,.all-star-member__action-row--button:focus-visible{outline:none;border-color:#9ca3af;box-shadow:0 0 0 2px #6b728038}.all-star-subpage-shell{position:relative;width:100%;min-height:calc(100vh - 120px)}.all-star-subpage-back-link{position:absolute;left:0;top:.35rem;z-index:2;display:inline-flex;align-items:center;gap:.4rem;border:none;background:transparent;padding:.2rem 0;cursor:pointer;font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#000;line-height:1.2;text-align:left}.all-star-subpage-back-link:focus-visible{outline:2px solid #d31f1f;outline-offset:2px;border-radius:6px}.all-star-subpage-back-link__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:2rem;line-height:1;color:#000}@media(max-width:960px){.all-star-subpage-shell .all-star-review-lab,.all-star-subpage-shell .all-star-training-zone{padding-top:2.85rem}}@media(max-width:560px){.all-star-subpage-back-link{left:.15rem;top:.25rem;align-items:flex-start;max-width:calc(100% - 1rem)}}.all-star-review-lab,.all-star-training-zone{width:100%;max-width:min(100%,max(50vw,430px));margin:0 auto;min-height:calc(100vh - 120px);padding:.35rem 1.25rem 1rem;box-sizing:border-box;display:flex;flex-direction:column}.all-star-review-lab__title{margin:0;color:#d31f1f;font-family:var(--font-primary);font-size:2.1rem;font-weight:800}.all-star-review-lab__intro{margin-top:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.75rem}.all-star-review-lab__intro--training-zone{margin-top:.9rem}.all-star-review-lab__intro-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.65rem}.all-star-review-lab__intro-text .all-star-review-lab__title{margin:0}.all-star-review-lab__message{margin:0;font-family:var(--font-primary);color:#111827;font-size:1.05rem;line-height:1.15;font-weight:700}.all-star-review-lab__icon{width:76px;height:76px;object-fit:contain;flex-shrink:0}.all-star-review-lab__cta{margin-top:.95rem;align-self:center;width:min(100%,320px);height:56px;border:none;border-radius:16px;background:linear-gradient(180deg,#ff5a5a,#c60000);color:#fff;font-family:var(--font-primary);font-size:1.05rem;font-weight:800;cursor:pointer;box-shadow:0 4px #7a1010bf}.all-star-review-lab__mascot{margin-top:auto;align-self:center;width:min(88%,270px);height:auto;object-fit:contain}.all-star-training-zone__title{margin:0}.all-star-training-zone__empty{margin:auto;text-align:center;font-family:var(--font-primary);font-size:1.05rem;font-weight:500;color:#1f2937}@media(max-width:1200px){.all-star-member{max-height:none;overflow:visible;padding:.3rem 1rem .85rem}.all-star-member__hero-content{min-height:168px;padding:.8rem .8rem .68rem}.all-star-member__hero-title{font-size:2.1rem}.all-star-member__hero-subtitle{margin:0;font-size:1.02rem;line-height:1.2}.all-star-member__start{width:96px;height:38px;font-size:1.45rem}.all-star-member__hero-right{min-height:150px}.all-star-member__hero-badge{width:96px}.all-star-member__hero-mascot{width:124px}.all-star-member__heading{margin:.78rem 0 .58rem;font-size:1.9rem}.all-star-member__chip{height:40px;font-size:.8rem}.all-star-member__actions{margin-top:.62rem;gap:.55rem}.all-star-member__action-row{min-height:56px}.all-star-member__action-row img{width:30px;height:30px}.all-star-member__action-row span{font-size:1.35rem}}@media(max-width:920px){.all-star-member{max-height:none;overflow:visible;padding:.35rem .9rem .9rem}.all-star-member__hero-content{min-height:162px;padding:.78rem .72rem .64rem}.all-star-member__hero-title{font-size:1.95rem}.all-star-member__hero-subtitle{margin:0;font-size:.95rem;line-height:1.2}.all-star-member__start{width:90px;height:36px;font-size:1.32rem}.all-star-member__hero-right{min-height:146px}.all-star-member__hero-badge{width:92px}.all-star-member__hero-mascot{width:116px}.all-star-member__heading{margin:.72rem 0 .5rem;font-size:1.82rem}.all-star-member__chip{height:38px;font-size:.76rem}.all-star-member__actions{margin-top:.55rem;gap:.48rem}.all-star-member__action-row{min-height:54px}.all-star-member__action-row img{width:28px;height:28px}.all-star-member__action-row span{font-size:1.22rem}}.lobby{width:100%;padding:0;display:flex;flex-direction:column;gap:1.25rem}.lobby__top-row{display:flex;gap:1.25rem;align-items:stretch}.lobby__top-row .ask-wingman{flex:1;min-width:0}.team-code-card{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem;border-radius:16px;background:linear-gradient(135deg,#5b8cc5,#2c5f9e 60%,#1e4a80);padding:1.25rem 1.5rem 1.25rem .75rem;box-shadow:0 4px 14px #0000002e;overflow:hidden}.team-code-card__mascot{width:90px;height:90px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.team-code-card__content{flex:1;display:flex;flex-direction:column;gap:.65rem;min-width:0}.team-code-card__title{margin:0;font-family:var(--font-primary);font-weight:800;font-size:1.15rem;color:#fff;line-height:1.25}.team-code-card__input-row{display:flex;align-items:center;gap:.5rem}.team-code-card__input{flex:1;height:40px;padding:0 .85rem;font-family:var(--font-primary);font-size:.9rem;color:#333;background:#fff;border:none;border-radius:10px;outline:none;min-width:0}.team-code-card__input::placeholder{color:#aaa}.team-code-card__submit{width:40px;height:40px;border-radius:10px;background:var(--color-brand);border:none;color:#fff;font-size:1.2rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.team-code-card__submit:hover{background:var(--color-brand-hover)}.team-code-card__submit:disabled{opacity:.5;cursor:default}.team-code-card__message{margin:0;font-family:var(--font-primary);font-size:.82rem;font-weight:600;line-height:1.3}.team-code-card__message--error{color:#ffcdd2}.team-code-card__message--success{color:#c8e6c9}.lobby-hub-preview{margin-top:.75rem;padding:1.25rem 1rem 1.35rem;background:linear-gradient(180deg,#f5c9a8,#ffe0cc);border-radius:0}.lobby-hub-preview__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;padding:0 .25rem}.lobby-hub-preview__title{margin:0;font-family:var(--font-primary);font-size:1.375rem;font-weight:700;color:#111827}.lobby-hub-preview__open{font-family:var(--font-primary);font-size:.875rem;font-weight:500;color:#747474;text-decoration:underline}.lobby-hub-preview__open:hover{color:#374151}.lobby-hub-preview__cards{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:stretch}.lobby-hub-preview__cards--split{grid-template-columns:1fr 1fr}@media(max-width:900px){.lobby-hub-preview__cards--split{grid-template-columns:1fr}}.lobby-hub-preview__card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1rem 1.1rem;text-decoration:none;color:inherit;min-height:10rem;box-sizing:border-box}.lobby-hub-preview__card--messages{min-height:10rem}.lobby-hub-preview__cards--split .lobby-hub-preview__card{min-height:11.5rem}.lobby-hub-preview__card:hover,.lobby-hub-preview__card:focus-visible,a.lobby-hub-preview__card-head:hover,a.lobby-hub-preview__card-head:focus-visible{text-decoration:none;color:inherit}.lobby-hub-preview__card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-decoration:none;color:inherit}a.lobby-hub-preview__card-head{display:flex}.lobby-hub-preview__card-title-row{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.lobby-hub-preview__card-heading{font-family:var(--font-primary);font-size:1.05rem;font-weight:700;color:#111827}.lobby-hub-preview__chevron{flex-shrink:0;color:#6b7280}.lobby-hub-preview__card-body{flex:1;margin-top:.85rem;display:flex;flex-direction:column;min-height:0}.lobby-hub-preview__cards--split .lobby-hub-preview__calendar-cta,.lobby-hub-preview__cards--split .lobby-hub-preview__messages-cta{margin-top:auto}.lobby-hub-preview__event-list{list-style:none;margin:0;padding:0}.lobby-hub-preview__event-row{display:flex;align-items:center;gap:.5rem;padding:.65rem 0;text-decoration:none;color:inherit}.lobby-hub-preview__event-row--bordered{border-bottom:1px solid #e5e7eb}.lobby-hub-preview__event-row:hover,.lobby-hub-preview__event-row:focus-visible{text-decoration:none;color:inherit;background:#f9fafb}.lobby-hub-preview__event-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.lobby-hub-preview__event-title{font-family:var(--font-primary);font-size:.9375rem;font-weight:700;color:#111827;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-hub-preview__event-meta{display:flex;align-items:center;gap:.4rem;font-family:var(--font-primary);font-size:.8125rem;color:#374151;min-width:0}.lobby-hub-preview__event-meta>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-hub-preview__cards--split .lobby-hub-preview__event-title{font-size:.875rem}.lobby-hub-preview__cards--split .lobby-hub-preview__event-meta{font-size:.75rem}.lobby-hub-preview__cards--split .lobby-hub-preview__event-row .lobby-hub-preview__chevron{display:none}.lobby-hub-preview__calendar-cta{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-family:var(--font-primary);font-size:.8125rem;font-weight:500;color:#6b7280;text-decoration:none}.lobby-hub-preview__calendar-cta:hover{color:#374151}.lobby-hub-preview__calendar-cta .lobby-hub-preview__chevron{width:14px;height:14px}.lobby-hub-preview__meta-icon{flex-shrink:0;color:#6b7280}.lobby-hub-preview__empty{margin-top:.85rem}.lobby-hub-preview__empty--inset{padding:0 .15rem}.lobby-hub-preview__empty-title{margin:0 0 .35rem;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:#111827}.lobby-hub-preview__empty-sub{margin:0;font-family:var(--font-primary);font-size:.8125rem;line-height:1.4;color:#6b7280}.lobby-hub-preview__thread-list{list-style:none;margin:0;padding:0}.lobby-hub-preview__cards--split .lobby-hub-preview__thread-preview{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lobby-hub-preview__cards--split .lobby-hub-preview__thread .lobby-hub-preview__chevron{display:none}.lobby-hub-preview__thread{display:flex;align-items:center;gap:.65rem;padding:.65rem 0;text-decoration:none;color:inherit}.lobby-hub-preview__thread--bordered{border-bottom:1px solid #e5e7eb}.lobby-hub-preview__thread:hover,.lobby-hub-preview__thread:focus-visible{text-decoration:none;color:inherit;background:#f9fafb}.lobby-hub-preview__avatar{flex-shrink:0;width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.lobby-hub-preview__avatar--team{background:#3b82f6}.lobby-hub-preview__avatar--dm{background:#6b7280}.lobby-hub-preview__thread-content{flex:1;min-width:0}.lobby-hub-preview__thread-top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.lobby-hub-preview__thread-name{font-family:var(--font-primary);font-size:.9375rem;font-weight:700;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-hub-preview__thread-date{flex-shrink:0;font-family:var(--font-primary);font-size:.75rem;color:#6b7280}.lobby-hub-preview__thread-preview{display:block;margin-top:.15rem;font-family:var(--font-primary);font-size:.8125rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-hub-preview__messages-cta{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#374151;text-decoration:none}.lobby-hub-preview__messages-cta:hover{color:#111827}.lobby-hub-preview__messages-cta .lobby-hub-preview__chevron{width:14px;height:14px}button.lobby-hub-preview__card,button.lobby-hub-preview__thread{border:none;background:transparent}.lobby-assignments{margin-top:1.5rem;padding:0 1rem}.lobby-assignments__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.lobby-assignments__title{font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a;margin:0}.lobby-assignments__view-all{font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#888;text-decoration:underline;cursor:pointer;padding:0}.lobby-assignments__view-all:hover{color:#1a1a1a}.lobby-assignments__row{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.25rem}.lobby-assignments__empty{min-width:200px;border-radius:14px;background:#f5f5f5;border:1px solid #e0e0e0;padding:1rem;display:flex;align-items:center;justify-content:center}.lobby-assignments__empty-text{font-family:var(--font-primary);font-size:.9rem;color:#888}.lobby-assignment-card{min-width:220px;max-width:240px;background:#fff;border-radius:16px;border:1px solid var(--color-progress-bg);box-shadow:0 4px 10px #0000000a;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.lobby-assignment-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1rem .5rem;flex:1;min-width:0}.lobby-assignment-card__tags{display:flex;flex-wrap:wrap;gap:.35rem}.lobby-assignment-card__tag{padding:.2rem .6rem;border-radius:999px;font-family:var(--font-primary);font-size:.7rem;font-weight:600}.lobby-assignment-card__tag--stage{text-transform:uppercase;letter-spacing:.04em}.lobby-assignment-card__tag--stage-todo{background:#ffcdd2;color:#b71c1c}.lobby-assignment-card__tag--stage-in_progress{background:#ffe0b2;color:#e65100}.lobby-assignment-card__tag--stage-completed{background:#c8e6c9;color:#2e7d32}.lobby-assignment-card__tag--kind{background:#f0f0f0;color:#555}.lobby-assignment-card__title{font-family:var(--font-primary);font-size:1rem;font-weight:700;color:#1a1a1a;margin:.25rem 0 0}.lobby-assignment-card__meta{display:flex;flex-wrap:wrap;gap:.5rem;font-family:var(--font-primary);font-size:.8rem;color:#666}.lobby-assignment-card__meta-item{display:flex;align-items:center;gap:.25rem}.lobby-assignment-card__btn{display:block;margin:0 1rem 1rem;width:calc(100% - 2rem);max-width:100%;box-sizing:border-box;border:none;border-radius:999px;background:#e53935;color:#fff;font-family:var(--font-primary);font-weight:700;font-size:.9rem;padding:.55rem 1rem;cursor:pointer;text-align:center;text-decoration:none}.lobby-assignment-card__btn:hover,.lobby-assignment-card__btn:focus,.lobby-assignment-card__btn:focus-visible{background:#d32f2f;color:#fff;text-decoration:none}.lobby-calendar{margin-top:1.15rem;padding:0 1rem}.lobby-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.lobby-calendar__title{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a}.lobby-calendar__view-all{font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#888;text-decoration:underline}.lobby-calendar__view-all:hover{color:#1a1a1a}.lobby-calendar__row{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.25rem}.lobby-calendar-card{min-width:240px;max-width:280px;background:#fff;border:1px solid #e8ebef;border-radius:16px;box-shadow:0 4px 10px #0000000a;padding:.95rem;display:flex;flex-direction:column;gap:.5rem}.lobby-calendar-card__tag{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:8px;padding:.22rem .6rem;background:#f1f6ff;color:#6791ff;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-primary);font-size:.72rem;font-weight:700}.lobby-calendar-card__title{margin:0;font-family:var(--font-primary);font-size:1.05rem;font-weight:700;color:#1a1a1a}.lobby-calendar-card__meta{display:flex;flex-direction:column;gap:.25rem;font-family:var(--font-primary);font-size:.9rem;color:#666}.lobby-calendar-card__meta-item{display:inline-flex;align-items:center;gap:.35rem}.lobby-calendar-card__btn{margin-top:.35rem;border:none;border-radius:10px;background:#b60000;color:#fff;font-family:var(--font-primary);font-size:.92rem;font-weight:700;height:42px;cursor:pointer}.lobby-calendar-card__btn:hover{background:#930000}.team-hub-page{width:100%;display:flex;flex-direction:column;gap:1rem}.team-hub-page .lobby-calendar,.team-hub-page .lobby-assignments{margin-top:0}.team-hub-calendar{background:#f8fafc;border-radius:12px;padding:1rem!important}.team-hub-calendar__empty{margin:0;font-family:var(--font-primary);font-size:.875rem;color:#6b7280}.team-hub-event-card{flex:0 0 220px;width:220px;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:12px 12px 16px;box-sizing:border-box}.team-hub-event-card__badge{align-self:flex-start;background:#eff6ff;padding:4px 10px;border-radius:6px;margin-bottom:12px;font-family:var(--font-primary);font-size:11px;font-weight:600;color:#3b82f6;text-transform:uppercase;letter-spacing:.5px}.team-hub-event-card__title{margin:0 0 12px;font-family:var(--font-primary);font-size:18px;font-weight:700;line-height:1.22;color:#1a1a1a}.team-hub-event-card__meta{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.team-hub-event-card__when{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--font-primary);font-size:13px;font-weight:500;color:#6b7280}.team-hub-event-card__when svg{flex-shrink:0;color:#6b7280}.team-hub-event-card__coach{margin:0;font-family:var(--font-primary);font-size:13px;font-weight:500;color:#6b7280}.team-hub-event-card__btn{display:flex;align-items:center;justify-content:center;width:100%;height:40px;margin-top:auto;border-radius:10px;background:#b60000;color:#fff!important;font-family:var(--font-primary);font-size:14px;font-weight:700;text-decoration:none!important}.team-hub-event-card__btn:hover,.team-hub-event-card__btn:focus-visible{background:#930000;color:#fff!important;text-decoration:none!important}.team-hub-assignments__header{align-items:center}.team-hub-assignments__title-row{display:flex;align-items:center;gap:.5rem}.team-hub-assignments__icon-wrap{width:28px;height:28px;border-radius:8px;background:#fff7ed;color:#f97316;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.team-hub-assignments__empty{margin:0;font-family:var(--font-primary);font-size:.875rem;color:#6b7280}.team-hub-assignments__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.5rem}.team-hub-assignment{display:flex;align-items:center;gap:.65rem;padding:.75rem;border-radius:10px;background:#f9fafb;text-decoration:none;color:inherit;transition:background .15s}.team-hub-assignment:hover{background:#f3f4f6;text-decoration:none;color:inherit}.team-hub-assignment__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.team-hub-assignment__dot--progress{background:#3b82f6}.team-hub-assignment__dot--todo{background:#f97316}.team-hub-assignment__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.team-hub-assignment__title{font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-hub-assignment__subtitle{font-family:var(--font-primary);font-size:.75rem;font-weight:500}.team-hub-assignment__subtitle--muted{color:#6b7280}.team-hub-assignment__subtitle--progress{color:#3b82f6}.team-hub-assignment__subtitle--todo{color:#f97316}.team-hub-assignment__chevron{flex-shrink:0;color:#9ca3af}.team-hub-page__empty{border-radius:14px;background:#f5f5f5;border:1px solid #e0e0e0;padding:1rem;font-family:var(--font-primary);font-size:.92rem;color:#707887}.team-hub-page__no-team{border-radius:14px;background:#fff;border:1px solid #e7ebf0;padding:1rem 1.1rem}.team-hub-page__no-team-title{margin:0 0 .45rem;font-family:var(--font-primary);font-size:1.15rem;font-weight:700;color:#111827}.team-hub-page__no-team-text{margin:0;font-family:var(--font-primary);font-size:.95rem;color:#64748b;line-height:1.45}.team-hub-team-select{padding:.625rem 0;margin-bottom:.35rem;border-bottom:1px solid #f1f5f9}.team-hub-team-select__wrap{position:relative}.team-hub-team-select__trigger{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;background:transparent;cursor:pointer;font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#111827;line-height:1.25}.team-hub-team-select__trigger:hover,.team-hub-team-select__trigger:focus,.team-hub-team-select__trigger:focus-visible{border:none;border-color:transparent;outline:none;box-shadow:none;background:transparent;color:#111827}.team-hub-team-select__trigger--static{cursor:default;padding-left:0}.team-hub-team-select__icon{display:block;flex-shrink:0;color:#6b7280}.team-hub-team-select__label{max-width:12.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-hub-team-select__label--muted{color:#6b7280}.team-hub-team-select__chevron{display:block;flex-shrink:0;color:#6b7280}.team-hub-team-select__panel{position:absolute;top:calc(100% + .5rem);left:0;min-width:min(100%,20rem);width:max-content;max-width:min(24rem,100vw);background:#fff;border-radius:.75rem;box-shadow:0 12px 30px #0f172a1f;overflow:hidden;z-index:30}.team-hub-team-select__panel-title{margin:0;padding:.875rem 1.25rem;font-family:var(--font-primary);font-size:1rem;font-weight:700;color:#111827}.team-hub-team-select__option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:1rem 1.25rem;border:none;border-bottom:1px solid #f1f5f9;background:#fff;color:#111827;text-align:left;font-family:var(--font-primary);font-size:1rem;font-weight:500;cursor:pointer}.team-hub-team-select__option:last-child{border-bottom:none}.team-hub-team-select__option:hover,.team-hub-team-select__option:focus,.team-hub-team-select__option:focus-visible{background:#f8fafc;color:#111827;outline:none;box-shadow:none;border:none;border-color:transparent;border-bottom:1px solid #e5e7eb}.team-hub-team-select__option:last-child:hover,.team-hub-team-select__option:last-child:focus,.team-hub-team-select__option:last-child:focus-visible{border-bottom:none}.team-hub-team-select__check{display:block;flex-shrink:0;color:#2563eb}.team-hub-messages{margin-top:.35rem;padding:0 1rem}.team-hub-messages__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.team-hub-messages__title{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a}.team-hub-messages__view-all{font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#888;text-decoration:underline}.team-hub-messages__view-all:hover{color:#1a1a1a;text-decoration:underline}.team-hub-messages__list{margin:0;padding:0;list-style:none;border-radius:12px;background:#fff;border:1px solid #f1f5f9;overflow:hidden}.team-hub-messages__row{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;color:inherit;transition:background .15s}.team-hub-messages__row:hover{background:#f8fafc;text-decoration:none;color:inherit}.team-hub-messages__row--bordered{border-bottom:1px solid #f1f5f9}.team-hub-messages__avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff}.team-hub-messages__avatar--dm{background:#6b7280}.team-hub-messages__avatar--team{background:#3b82f6}.team-hub-messages__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.team-hub-messages__name{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-hub-messages__preview{font-family:var(--font-primary);font-size:.875rem;font-weight:400;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-hub-messages__chevron{flex-shrink:0;color:#9ca3af}.team-hub-messages__cta{display:inline-flex;align-items:center;justify-content:center;min-width:200px;height:44px;padding:0 1.25rem;border-radius:10px;border:none;background:#374151;color:#fff;font-family:var(--font-primary);font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:none}.team-hub-messages__cta:hover{background:#1f2937;color:#fff;text-decoration:none}.team-hub-media{margin-top:.35rem;padding:0 1rem}.team-hub-media__title{margin:0 0 .75rem;font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a}.team-hub-media__helper{margin:0;border-radius:14px;background:#f5f5f5;border:1px solid #e0e0e0;padding:1rem;font-family:var(--font-primary);font-size:.92rem;color:#707887}.app-shell__content:has(>.imsg-shell){padding:0;overflow:hidden;align-items:stretch;display:flex;flex-direction:column;min-height:0}.imsg-shell{display:flex;width:100%;flex:1;min-height:0;height:100%;max-height:100%;overflow:hidden;background:#f5f5f6}.imsg-shell button.imsg-inbox__new,.imsg-shell button.imsg-composer__tool,.imsg-shell button.imsg-composer__send,.imsg-shell button.imsg-composer__preview-remove,.imsg-shell button.imsg-new-msg__back,.imsg-shell button.imsg-new-msg__row,.imsg-shell button.imsg-msg__image-btn,.imsg-shell button.imsg-lightbox__close,.imsg-shell button.imsg-thread__back{font-family:var(--font-primary);line-height:1;min-height:unset;box-sizing:border-box}.imsg-shell button.imsg-inbox__new:hover,.imsg-shell button.imsg-composer__tool:hover,.imsg-shell button.imsg-composer__send:hover:not(:disabled),.imsg-shell button.imsg-new-msg__row:hover,.imsg-shell button.imsg-new-msg__row:focus,.imsg-shell button.imsg-new-msg__row:focus-visible,.imsg-shell button.imsg-new-msg__row:active{border-top-color:transparent;border-left-color:transparent;border-right-color:transparent;border-bottom-color:#f3f4f6;outline:none;box-shadow:none}.imsg-shell__list{width:100%;max-width:380px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;background:#fff;border-right:1px solid #e5e7eb}.imsg-shell__detail{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:#e8e8ed}.imsg-shell__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.imsg-shell__empty-title{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#6b7280}.imsg-shell__empty-hint{margin:0;font-family:var(--font-primary);font-size:.875rem;color:#9ca3af;max-width:20rem;line-height:1.45}.imsg-inbox{display:flex;flex-direction:column;min-height:0;flex:1}.imsg-inbox--solo{padding:1.5rem}.imsg-inbox__gate{margin:0 0 1rem;color:#6b7280;font-family:var(--font-primary)}.imsg-inbox__hub-link{display:inline-flex;align-items:center;gap:.45rem;color:#111827;font-weight:600;font-family:var(--font-primary);text-decoration:none}.imsg-inbox__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;background:#f8f8f8f2}.imsg-inbox__hub{display:inline-flex;align-items:center;gap:.45rem;padding:.2rem .35rem;border-radius:6px;font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;text-decoration:none}.imsg-inbox__hub:hover,.imsg-inbox__hub:focus,.imsg-inbox__hub:focus-visible{background:#f0f0f0;color:#111827;text-decoration:none}.imsg-inbox__hub-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;line-height:1.1}.imsg-inbox__new{width:40px;height:40px;padding:0;border-radius:50%;border:none;background:#2563eb;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.imsg-inbox__new svg{display:block;flex-shrink:0}.imsg-inbox__new:hover{background:#1d4ed8;color:#fff}.imsg-inbox__search-wrap{display:flex;align-items:center;gap:.5rem;margin:.75rem 1rem;padding:0 .85rem;height:42px;border-radius:.75rem;background:#f3f4f6}.imsg-inbox__search-icon{color:#9ca3af;flex-shrink:0}.imsg-inbox__search{flex:1;border:none;background:transparent;font-family:var(--font-primary);font-size:.9375rem;outline:none}.imsg-inbox__list{flex:1;min-height:0;overflow-y:auto}.imsg-inbox__empty{padding:1.25rem 1rem;color:#6b7280;font-size:.9rem;font-family:var(--font-primary);text-align:center}.imsg-conv-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;border-bottom:1px solid #f3f4f6;color:inherit}.imsg-conv-row:hover{background:#f9fafb;text-decoration:none}.imsg-conv-row--active{background:#eff6ffcc}.imsg-conv-row__body{flex:1;min-width:0}.imsg-conv-row__top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.imsg-conv-row__name{font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imsg-conv-row__time{font-size:.75rem;color:#6b7280;flex-shrink:0;font-family:var(--font-primary)}.imsg-conv-row__team{display:block;font-size:.75rem;color:#6b7280;font-family:var(--font-primary);margin-bottom:.15rem}.imsg-conv-row__preview{margin:0;font-size:.75rem;color:#6b7280;font-family:var(--font-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imsg-conv-row__badge{min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:999px;background:#b60000;color:#fff;font-size:.6875rem;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary)}.imsg-avatar{border-radius:50%;background:linear-gradient(145deg,#374151,#111827);color:#fff;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-primary)}.imsg-thread{display:flex;flex-direction:column;min-height:0;flex:1;height:100%;max-height:100%;overflow:hidden}.imsg-thread__header{display:flex;align-items:center;gap:.65rem;padding:.65rem 1rem;background:#f8f8f8f2;border-bottom:1px solid #e5e7eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-shrink:0}.imsg-thread__back{display:inline-flex;align-items:center;justify-content:center;color:#111827;text-decoration:none;padding:.25rem;margin-right:.15rem;border-radius:6px}.imsg-thread__back:hover,.imsg-thread__back:focus,.imsg-thread__back:focus-visible{background:#f0f0f0;text-decoration:none}.imsg-thread__head-text{min-width:0}.imsg-thread__title{margin:0;font-size:1rem;font-weight:600;color:#111827;font-family:var(--font-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imsg-thread__subtitle{margin:.1rem 0 0;font-size:.75rem;color:#6b7280;font-family:var(--font-primary)}.imsg-thread__messages{flex:1;min-height:0;overflow-y:auto;padding:.75rem 1rem}.imsg-thread__messages-inner{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:100%}.imsg-thread__messages-inner--empty{justify-content:center;align-items:center}.imsg-thread__status{text-align:center;color:#6b7280;font-size:.875rem;font-family:var(--font-primary);padding:1rem 0}.imsg-thread__status--top{width:100%;max-width:16rem;text-align:center;padding:0 1rem}.imsg-thread__sep{text-align:center;font-size:.6875rem;color:#9ca3af;padding:.35rem 0;font-family:var(--font-primary)}.imsg-msg{display:flex;flex-direction:column;max-width:min(88%,720px);margin-bottom:2px;position:relative}.imsg-msg--mine{align-self:flex-end;align-items:flex-end}.imsg-msg--theirs{align-self:flex-start;align-items:flex-start}.imsg-msg__sender{font-size:.6875rem;font-weight:600;color:#2563eb;margin:0 0 .2rem .35rem;font-family:var(--font-primary)}.imsg-bubble{position:relative;width:fit-content;max-width:100%;padding:10px 14px;font-size:15px;line-height:1.35;border-radius:20px;box-shadow:0 1px 2px #00000014;font-family:var(--font-primary)}.imsg-bubble__text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.imsg-bubble--sent{background:#0b74f9;color:#fff;border-bottom-right-radius:6px}.imsg-bubble--sent:after{content:"";position:absolute;right:-5px;bottom:0;width:0;height:0;border:6px solid transparent;border-left-color:#0b74f9;border-bottom:0;border-right:0}.imsg-bubble--received{background:#fff;color:#111827;border-bottom-left-radius:6px}.imsg-bubble--received:after{content:"";position:absolute;left:-5px;bottom:0;width:0;height:0;border:6px solid transparent;border-right-color:#fff;border-bottom:0;border-left:0}.imsg-msg__time{font-size:11px;color:#6b7280;margin-top:.2rem;font-family:var(--font-primary)}.imsg-msg__image-card{max-width:240px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;border:1px solid rgba(0,0,0,.06)}.imsg-msg__image-btn{display:block;border:none;padding:0;background:none;cursor:pointer;width:100%}.imsg-msg__image{display:block;max-height:240px;width:100%;object-fit:contain}.imsg-msg__image-caption{margin:0;padding:.5rem .65rem;font-size:15px;color:#111827;font-family:var(--font-primary)}.imsg-lightbox{position:fixed;inset:0;z-index:100;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1rem}.imsg-lightbox__close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;border:none;background:#ffffffe6;font-size:1.5rem;cursor:pointer;line-height:1}.imsg-lightbox__img{max-width:min(90vw,900px);max-height:85vh;object-fit:contain}.imsg-composer{flex-shrink:0;border-top:1px solid #e5e7eb;background:#f8f8f8f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.75rem 1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom,0px))}.imsg-composer__inner{max-width:48rem;margin:0 auto}.imsg-composer__preview{position:relative;display:inline-block;margin:0 0 .5rem .15rem;line-height:0}.imsg-composer__preview-img{display:block;max-height:72px;max-width:120px;width:auto;height:auto;border-radius:10px;object-fit:cover;border:1px solid rgba(0,0,0,.08)}.imsg-composer__preview-remove{position:absolute;top:-5px;right:-5px;width:20px;height:20px;padding:0;border-radius:50%;border:2px solid #fff;background:#4b5563;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #0000002e}.imsg-composer__preview-remove:hover{background:#374151}.imsg-composer__row{display:flex;align-items:flex-end;gap:.5rem}.imsg-composer__file{display:none}.imsg-composer__tool{width:40px;height:40px;padding:0;border-radius:50%;border:1px solid #e5e7eb;background:#fff;color:#374151;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.imsg-composer__tool svg{display:block;flex-shrink:0}.imsg-composer__tool:hover:not(:disabled){background:#f9fafb;color:#111827}.imsg-composer__tool:disabled{opacity:.45;cursor:not-allowed}.imsg-composer__input{flex:1;min-height:40px;max-height:120px;resize:none;border:none;border-radius:20px;padding:.55rem 1rem;font-size:15px;font-family:var(--font-primary);background:#fff;box-shadow:0 1px 3px #00000014;outline:none}.imsg-composer__send{width:40px;height:40px;padding:0;border-radius:50%;border:none;background:#2563eb;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.imsg-composer__send svg{display:block;flex-shrink:0}.imsg-composer__send--disabled{opacity:.45;cursor:not-allowed}.imsg-new-msg{display:flex;flex-direction:column;min-height:0;flex:1;background:#fff}.imsg-new-msg__header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9}.imsg-new-msg__back{border:none;background:transparent;padding:.25rem;cursor:pointer;color:#111827;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.imsg-new-msg__back:hover{background:#f0f0f0}.imsg-new-msg__title{margin:0;font-size:1.0625rem;font-weight:700;font-family:var(--font-primary)}.imsg-new-msg__body{flex:1;overflow-y:auto;padding:.5rem 0}.imsg-new-msg__section{margin:.75rem 1rem .35rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6b7280;font-family:var(--font-primary)}.imsg-new-msg__row{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;border-bottom:1px solid #f3f4f6;background:#fff;text-align:left;cursor:pointer;font-family:var(--font-primary)}.imsg-new-msg__row:hover,.imsg-new-msg__row:focus,.imsg-new-msg__row:focus-visible,.imsg-new-msg__row:active{background:#f9fafb;border-top:none;border-left:none;border-right:none;border-bottom:1px solid #f3f4f6;outline:none;box-shadow:none}.imsg-new-msg__row-text{min-width:0}.imsg-new-msg__name{display:block;font-weight:600;color:#111827;font-size:.9375rem}.imsg-new-msg__sub{display:block;font-size:.75rem;color:#6b7280}.imsg-new-msg__empty,.imsg-new-msg__error{padding:1rem;font-family:var(--font-primary);color:#6b7280}.imsg-new-msg__error{color:#b60000}@media(max-width:768px){.imsg-shell__list--hidden-mobile,.imsg-shell__detail{display:none}.imsg-shell--has-thread .imsg-shell__detail--visible-mobile{display:flex}.imsg-shell--has-thread .imsg-shell__list{display:none}.imsg-shell:not(.imsg-shell--has-thread) .imsg-shell__detail{display:none}.imsg-shell:not(.imsg-shell--has-thread) .imsg-shell__list{display:flex;max-width:none;width:100%;border-right:none}.imsg-msg{max-width:88%}}@media(min-width:769px){.imsg-thread__back{display:none}.imsg-msg{max-width:min(85%,720px)}}.messages-page{width:100%;max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:.9rem}.messages-page__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem}.messages-page__title{grid-column:2;margin:0;font-family:var(--font-primary);font-size:1.35rem;font-weight:700;text-align:center}.messages-page__back{justify-self:start;display:inline-flex;align-items:center;gap:.45rem;color:#111827;text-decoration:none;font-family:var(--font-primary);padding:.25rem;border-radius:6px}.messages-page__back:hover,.messages-page__back:focus,.messages-page__back:focus-visible{color:#111827;text-decoration:none;background:#f5f5f5}.messages-page__back-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;line-height:1.1}.messages-page__search-wrap{display:flex;gap:.65rem;align-items:center}.messages-page__search{flex:1;height:42px;border-radius:10px;border:1px solid #e2e8f0;padding:0 .85rem;font-size:.96rem;font-family:var(--font-primary)}.messages-page__new-btn{height:42px;border:none;border-radius:10px;background:#3b82f6;color:#fff;padding:0 .95rem;font-weight:700;cursor:pointer;font-family:var(--font-primary)}.messages-page__list{border:1px solid #e7ebf0;border-radius:14px;background:#fff;overflow:hidden}.messages-page__row{display:block;padding:.85rem 1rem;border-bottom:1px solid #edf1f5;text-decoration:none}.messages-page__row:last-child{border-bottom:none}.messages-page__row:hover{background:#f9fbff;text-decoration:none}.messages-page__row-title{color:#111827;font-weight:700;font-size:.98rem;margin-bottom:.2rem;font-family:var(--font-primary)}.messages-page__row-sub{color:#64748b;font-size:.9rem;font-family:var(--font-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages-page__empty{padding:1rem;color:#64748b;font-size:.94rem;font-family:var(--font-primary)}.messages-page__picker-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:40}.messages-page__picker{width:min(520px,calc(100vw - 2rem));max-height:min(70vh,620px);overflow:auto;border-radius:14px;background:#fff;border:1px solid #e7ebf0;padding:1rem}.messages-page__picker-title{margin:0 0 .7rem;font-size:1.08rem;font-weight:700;font-family:var(--font-primary)}.messages-page__picker-empty{margin:.45rem 0;color:#64748b;font-family:var(--font-primary)}.messages-page__picker-row{width:100%;text-align:left;border:1px solid #e7ebf0;border-radius:10px;background:#fff;padding:.65rem .8rem;margin-bottom:.45rem;cursor:pointer;font-family:var(--font-primary)}.messages-page__picker-row:hover{background:#f8fbff}.messages-thread{width:100%;max-width:980px;margin:0 auto;border:1px solid #e7ebf0;border-radius:14px;background:#fff;display:flex;flex-direction:column;min-height:68vh}.messages-thread__header{padding:.75rem 1rem;border-bottom:1px solid #eef2f6}.messages-thread__back{display:inline-flex;align-items:center;gap:.45rem;color:#111827;text-decoration:none;font-family:var(--font-primary);padding:.25rem;border-radius:6px}.messages-thread__back:hover,.messages-thread__back:focus,.messages-thread__back:focus-visible{color:#111827;text-decoration:none;background:#f5f5f5}.messages-thread__back-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;line-height:1.1}.messages-thread__body{flex:1;padding:.8rem 1rem;overflow:auto;display:flex;flex-direction:column;gap:.42rem}.messages-thread__sep{text-align:center;color:#7f8aa1;font-size:.8rem;margin:.45rem 0;font-family:var(--font-primary)}.messages-thread__bubble-wrap{align-self:flex-start;max-width:min(70%,620px)}.messages-thread__bubble-wrap--mine{align-self:flex-end}.messages-thread__bubble{background:#f1f5f9;color:#0f172a;border-radius:12px;padding:.52rem .72rem;line-height:1.35;white-space:pre-wrap;font-family:var(--font-primary);font-size:.95rem}.messages-thread__bubble-wrap--mine .messages-thread__bubble{background:#dbeafe}.messages-thread__time{margin-top:.16rem;font-size:.74rem;color:#8a94a8;font-family:var(--font-primary)}.messages-thread__composer{border-top:1px solid #eef2f6;padding:.65rem .8rem;display:flex;gap:.5rem}.messages-thread__composer input{flex:1;height:40px;border:1px solid #e2e8f0;border-radius:10px;padding:0 .75rem;font-family:var(--font-primary);font-size:.95rem}.messages-thread__composer button{border:none;border-radius:10px;padding:0 .9rem;background:#3b82f6;color:#fff;font-weight:700;cursor:pointer;font-family:var(--font-primary)}.assignments-view{width:100%;max-width:100%;min-height:100vh;background:#fff;padding-bottom:2rem;box-sizing:border-box;scrollbar-gutter:stable}.assignments-view__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1rem 1rem 1.25rem;border-bottom:1px solid #eee}.assignments-view__back{justify-self:start;display:inline-flex;align-items:center;gap:.45rem;border:none;background:transparent;font-size:1.25rem;cursor:pointer;color:#101010;border-radius:8px;padding:.35rem .45rem;font-family:inherit}.assignments-view__back .back-arrow-icon{flex-shrink:0}.assignments-view__back:hover{background:#f5f5f5}.assignments-view__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010}.assignments-view__title{grid-column:2;font-family:var(--font-primary);font-size:1.35rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center}.assignments-view__loading,.assignments-view__error{padding:2rem;text-align:center;font-family:var(--font-primary);color:#666}.assignments-view__retry{margin-top:1rem;padding:.5rem 1.25rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.assignments-view__empty{padding:3rem 1.5rem;text-align:center}.assignments-view__empty-text{font-family:var(--font-primary);font-size:1.1rem;font-weight:600;color:#555;margin:0}.assignments-view__sections{--assignments-gap: 1.5rem;display:grid;grid-template-columns:repeat(3,calc((100% - 2 * var(--assignments-gap)) / 3));align-items:start;justify-items:stretch;gap:var(--assignments-gap);padding:1.5rem 2rem 2rem;max-width:1400px;margin:0 auto;width:100%;box-sizing:border-box;min-width:0}.assignments-view__section{min-width:0;max-width:100%;width:100%;border-radius:12px;padding:1rem;box-sizing:border-box;overflow-x:hidden}@media(max-width:700px){.assignments-view__sections{grid-template-columns:1fr;padding:1rem}}.assignments-view__section--todo{background:#fee2e2}.assignments-view__section--in-progress{background:#fef3c7}.assignments-view__section--completed{background:#d1fae5}.assignments-view__section-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;background:transparent;border:none;width:100%;min-width:0;text-align:left}.assignments-view__section-header--clickable{cursor:pointer;padding:.25rem 0;min-width:0;max-width:100%;box-sizing:border-box}.assignments-view__section-header--clickable:hover{opacity:.9}.assignments-view__section-title-wrap{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.assignments-view__section-title{font-family:var(--font-primary);font-size:1.125rem;font-weight:700;color:#1a1a1a;margin:0;overflow-wrap:anywhere}.assignments-view__chevron{font-size:.75rem;color:#6b7280}.assignments-view__badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:.25rem .5rem;border-radius:12px;font-family:var(--font-primary);font-size:.75rem;font-weight:600;color:#fff}.assignments-view__badge--blue{background:#3b82f6;border:1px solid #2563eb}.assignments-view__badge--red{background:#dc2626;border:1px solid #B91C1C}.assignments-view__badge--orange{background:#f59e0b;border:1px solid #D97706}.assignments-view__badge--green{background:#10b981;border:1px solid #059669}.assignments-view__section-cards{display:flex;flex-direction:column;gap:.75rem;min-width:0}.assignments-view__card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000f;overflow:hidden;display:flex;flex-direction:column}.assignments-view__card-body{padding:1rem 1rem .5rem;flex:1}.assignments-view__card-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.assignments-view__card-tag{padding:.2rem .6rem;border-radius:999px;font-family:var(--font-primary);font-size:.7rem;font-weight:600}.assignments-view__card-tag--stage{text-transform:uppercase;letter-spacing:.04em}.assignments-view__card-tag--todo{background:#fca5a5;color:#7f1d1d}.assignments-view__card-tag--in_progress{background:#f59e0b;color:#78350f}.assignments-view__card-tag--completed{background:#10b981;color:#064e3b}.assignments-view__card-tag--kind{background:#f0f0f0;color:#555}.assignments-view__card-title{font-family:var(--font-primary);font-size:1rem;font-weight:700;color:#1a1a1a;margin:.25rem 0 .5rem;line-height:1.3;overflow-wrap:anywhere;min-width:0}.assignments-view__card-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-family:var(--font-primary);font-size:.8rem;color:#666}.assignments-view__card-meta-item{display:flex;align-items:center;gap:6px}.assignments-view__card-meta-item svg{flex-shrink:0;color:#6b7280}.assignment-detail__info-icon svg{color:#6b7280}.assignments-view__card-btn{display:block;margin:0 1rem 1rem;width:calc(100% - 2rem);box-sizing:border-box;border:none;border-radius:8px;background:#dc2626;color:#fff;font-family:var(--font-primary);font-weight:600;font-size:.9rem;padding:.55rem 1rem;cursor:pointer;text-align:center;text-decoration:none}.assignments-view__card-btn:hover,.assignments-view__card-btn:focus,.assignments-view__card-btn:focus-visible{background:#b91c1c;color:#fff;text-decoration:none}.assignments-view__card-link{display:block;margin:0 1rem 1rem;font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#3b82f6;text-decoration:none}.assignments-view__card-link:hover,.assignments-view__card-link:focus,.assignments-view__card-link:focus-visible{color:#1d4ed8;text-decoration:none}.calendar-page{position:relative;width:100%;min-height:calc(100vh - 110px);background:#fff;border-radius:16px;border:1px solid #eceff2;box-shadow:0 2px 12px #0000000f;padding:.75rem 1rem 1rem;box-sizing:border-box}.calendar-page__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem}.calendar-page__back{justify-self:start;border:none;background:transparent;color:#111827;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;padding:.25rem;border-radius:6px}.calendar-page__back:hover{background:#f5f5f5}.calendar-page__back-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#111827;line-height:1.1}.calendar-page__title{grid-column:2;margin:0;text-align:center;font-family:var(--font-primary);font-size:1.45rem;font-weight:700}.calendar-page__header-actions{grid-column:3;justify-self:end;display:flex;gap:.5rem;flex-shrink:0}.calendar-page__action-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border:none;border-radius:10px;background:#b60000!important;color:#fff!important;font-family:var(--font-primary);font-size:.8125rem;font-weight:700;cursor:pointer}button.calendar-page__action-btn:hover,button.calendar-page__action-btn:focus-visible{background:#9a0000!important;border-color:transparent!important;color:#fff!important}.calendar-team-sheet{position:fixed;inset:0;z-index:45;display:flex;align-items:flex-end;justify-content:center}.calendar-team-sheet__backdrop{position:absolute;inset:0;border:none;background:#00000073;cursor:pointer}.calendar-team-sheet__panel{position:relative;z-index:1;width:min(480px,100%);max-height:70vh;overflow-y:auto;background:#fff;border-radius:16px 16px 0 0;padding:1rem 1rem 1.5rem;box-shadow:0 -8px 32px #00000026}.calendar-team-sheet__title{margin:0 0 .75rem;font-family:var(--font-primary);font-size:1.1rem;font-weight:700}.calendar-team-sheet__option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.85rem 0;border:none;border-bottom:1px solid #eceff2;background:transparent;font-family:var(--font-primary);font-size:.95rem;color:#111827;cursor:pointer;text-align:left}.calendar-team-sheet__check{color:#2563eb;font-weight:700}.calendar-page__toolbar{margin-top:.6rem;margin-bottom:.6rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.calendar-page__toolbar-center{grid-column:2;display:flex;align-items:center;justify-content:center;gap:.6rem}.calendar-page__toolbar-right{grid-column:3;justify-self:end;display:flex;align-items:center;gap:.35rem}.calendar-page__today,.calendar-page__view-toggle{border:none;background:transparent;padding:.25rem;cursor:pointer;color:#374151;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.calendar-page__today:hover,.calendar-page__view-toggle:hover{background:#f3f4f6}.calendar-page__today{position:relative;width:36px;height:36px}.calendar-page__today-frame{display:flex;align-items:center;justify-content:center}.calendar-page__today-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-size:.72rem;font-weight:600;color:#111827;pointer-events:none}.calendar-page__view-toggle{width:36px;height:36px}.calendar-page__month{margin:0;font-family:var(--font-primary);font-size:1.1rem;font-weight:700;color:#1f2937}.calendar-page__month-nav{border:1px solid #e5e7eb;border-radius:8px;background:#fff;width:36px;height:36px;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.calendar-page__month-nav .back-arrow-icon{width:18px;height:18px}.calendar-page__month-nav--next .back-arrow-icon{transform:scaleX(-1)}button.calendar-page__month-nav:has(.back-arrow-icon){border:1px solid #e5e7eb!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important}button.calendar-page__month-nav:has(.back-arrow-icon):hover,button.calendar-page__month-nav:has(.back-arrow-icon):focus,button.calendar-page__month-nav:has(.back-arrow-icon):focus-visible,button.calendar-page__month-nav:has(.back-arrow-icon):active{border:1px solid #e5e7eb!important;border-color:#e5e7eb!important;background:#fff!important;box-shadow:none!important}.calendar-list{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;max-height:min(70vh,720px);overflow-y:auto;background:#fff}.calendar-list__empty{margin:0;padding:2.5rem 1rem;text-align:center;font-family:var(--font-primary);font-size:.9rem;color:#6b7280}.calendar-list__sections{display:flex;flex-direction:column}.calendar-list__day-header{padding:1.125rem 1rem .5rem;border-bottom:1px solid #e5e7eb}.calendar-list__day-title{margin:0;font-family:var(--font-primary);font-size:.875rem;font-weight:500;color:#6b7280}.calendar-list__events{margin:0;padding:0;list-style:none}.calendar-list__event{width:100%;display:flex;align-items:center;gap:0;padding:.875rem 1rem;border:none!important;border-bottom:1px solid #f3f4f6!important;border-radius:0;background:#fff;cursor:pointer;text-align:left;font-family:var(--font-primary);outline:none;box-shadow:none}button.calendar-list__event:hover,button.calendar-list__event:focus,button.calendar-list__event:focus-visible,button.calendar-list__event:active{background:#f9fafb!important;border:none!important;border-bottom:1px solid #f3f4f6!important;border-color:#f3f4f6!important;outline:none!important;box-shadow:none!important}.calendar-list__event-bar{flex-shrink:0;width:3px;align-self:stretch;min-height:2.5rem;border-radius:2px;margin-right:.75rem}.calendar-list__event-title{flex:1;min-width:0;font-size:1.0625rem;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-list__event-times{display:flex;flex-direction:column;align-items:flex-end;margin-left:.75rem;flex-shrink:0}.calendar-list__event-time-start{font-size:.875rem;font-weight:500;color:#111827;line-height:1.2}.calendar-list__event-time-end{margin-top:2px;font-size:.8125rem;font-weight:400;color:#6b7280;line-height:1.2}.calendar-grid{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.calendar-grid__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fafafa;border-bottom:1px solid #eceff2}.calendar-grid__weekday{padding:.55rem .35rem;text-align:center;font-family:var(--font-primary);font-size:.8rem;font-weight:700;color:#6b7280}.calendar-grid__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(120px,1fr)}.calendar-grid__day{border-right:1px solid #f0f2f5;border-bottom:1px solid #f0f2f5;padding:.35rem;display:flex;flex-direction:column;gap:.25rem;min-width:0}.calendar-grid__day:nth-child(7n){border-right:none}.calendar-grid__date{font-family:var(--font-primary);font-size:.84rem;font-weight:700;color:#374151;align-self:flex-start}.calendar-grid__date--today{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.65rem;padding:0 .25rem;box-sizing:border-box;border-radius:999px;background:var(--color-brand);color:#fff;font-size:.84rem;font-weight:700;line-height:1}.calendar-grid__day--outside .calendar-grid__date{color:#aeb4bd}.calendar-grid__day--outside .calendar-grid__date--today{color:#fff;background:var(--color-brand)}.calendar-grid__events{display:flex;flex-direction:column;gap:.28rem;min-width:0}.calendar-grid__event{border:none;border-left:4px solid #65c466;background:#ecf8ec;border-radius:8px;text-align:left;padding:.28rem .4rem;cursor:pointer;display:flex;flex-direction:column;gap:.1rem;-webkit-tap-highlight-color:transparent}.calendar-grid__event:hover,.calendar-grid__event:focus,.calendar-grid__event:focus-visible,.calendar-grid__event:active{outline:none;box-shadow:none;background:#ecf8ec;border:none;border-left:4px solid #65c466;border-left-color:#65c466}.calendar-grid__event-title{font-family:var(--font-primary);font-size:.78rem;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-grid__event-time{font-family:var(--font-primary);font-size:.72rem;color:#475569}.calendar-page__status{margin:.6rem 0 0;font-family:var(--font-primary);font-size:.9rem;color:#6b7280}.calendar-page__backdrop{position:fixed;inset:0 0 0 220px;border:none;background:#00000057;z-index:40;cursor:pointer}.calendar-drawer{position:fixed;top:0;right:0;width:min(420px,100%);height:100vh;background:#fff;box-shadow:-12px 0 32px #0000002e;transform:translate(100%);transition:transform .2s ease;z-index:41;display:flex;flex-direction:column}.calendar-drawer--open{transform:translate(0)}.calendar-drawer__content{flex:1;overflow-y:auto;padding:1rem 1rem 1.25rem}.calendar-drawer__integrations{margin-top:1.25rem;padding-top:.25rem}.calendar-drawer__integration-status{margin:0 0 .65rem;font-family:var(--font-primary);font-size:.8rem;color:#059669;line-height:1.35}.calendar-drawer__integration-actions{display:flex;flex-direction:column;gap:.5rem}.calendar-drawer__integration-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1rem;border-radius:12px;border:1.5px solid transparent;font-family:var(--font-primary);font-size:.9375rem;font-weight:700;cursor:pointer;background:#fff;transition:background .15s ease}button.calendar-drawer__integration-btn--add{border-color:#10b981!important;color:#10b981!important}button.calendar-drawer__integration-btn--add:hover,button.calendar-drawer__integration-btn--add:focus-visible{background:#ecfdf5!important;border-color:#10b981!important;color:#10b981!important}button.calendar-drawer__integration-btn--subscribe{border-color:#6366f1!important;color:#6366f1!important}button.calendar-drawer__integration-btn--subscribe:hover,button.calendar-drawer__integration-btn--subscribe:focus-visible{background:#eef2ff!important;border-color:#6366f1!important;color:#6366f1!important}.calendar-subscribe__backdrop{position:fixed;inset:0;z-index:50;border:none;background:#0006;cursor:pointer}.calendar-subscribe{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:51;width:min(400px,calc(100vw - 2rem));padding:1.25rem;border-radius:14px;background:#fff;box-shadow:0 20px 50px #0003}.calendar-subscribe__title{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1.125rem;font-weight:700;color:#111827}.calendar-subscribe__text{margin:0 0 1rem;font-family:var(--font-primary);font-size:.875rem;color:#6b7280;line-height:1.45}.calendar-subscribe__options{display:flex;flex-direction:column;gap:.4rem}.calendar-subscribe__option{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:#111827;text-align:left;cursor:pointer}.calendar-subscribe__option:hover{background:#f9fafb;border-color:#d1d5db}.calendar-subscribe__hint{margin:.85rem 0 0;font-family:var(--font-primary);font-size:.75rem;color:#9ca3af;line-height:1.4}.calendar-subscribe__cancel{margin-top:.85rem;width:100%;padding:.65rem;border:none;background:transparent;font-family:var(--font-primary);font-size:.9rem;font-weight:600;color:#6b7280;cursor:pointer}.calendar-subscribe__cancel:hover{color:#111827}.calendar-drawer__head{display:flex;align-items:center;justify-content:space-between}.calendar-drawer__pill{border-radius:999px;padding:.25rem .65rem;background:#fef6d7;color:#4f5f21;font-family:var(--font-primary);font-size:.78rem;font-weight:700;text-transform:capitalize}.calendar-drawer__close{border:none;background:transparent;font-size:1.9rem;line-height:1;color:#374151;cursor:pointer}.calendar-drawer__title{margin:.8rem 0 0;font-family:var(--font-primary);font-size:2rem;font-weight:700;color:#111827}.calendar-drawer__time{margin:.35rem 0 0;font-family:var(--font-primary);font-size:1.45rem;font-weight:500;color:#374151}.calendar-drawer__section{margin-top:1rem;padding-top:.85rem;border-top:1px solid #eceff2}.calendar-drawer__label{margin:0 0 .45rem;font-family:var(--font-primary);font-size:1.1rem;font-weight:700;color:#111827}.calendar-drawer__value{margin:0;font-family:var(--font-primary);font-size:1rem;color:#374151}.calendar-rsvp__block--spaced{margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #eceff2}.calendar-rsvp__heading{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.75rem}.calendar-rsvp__icon{flex-shrink:0;color:#6b7280;margin-top:.1rem}.calendar-rsvp__title{margin:0;font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#111827}.calendar-rsvp__buttons{display:flex;gap:.55rem;margin-left:1.75rem}.calendar-rsvp__btn{flex:1;min-width:0;padding:.55rem .35rem;border-radius:10px;border:1.5px solid #d1d5db;background:transparent;font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#374151;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.calendar-rsvp__btn:hover:not(:disabled){background:#f9fafb}.calendar-rsvp__btn:disabled{opacity:.6;cursor:not-allowed}.calendar-drawer__chips{display:flex;flex-wrap:wrap;gap:.5rem}.calendar-drawer__chip{border-radius:999px;padding:.3rem .7rem;border:1px solid #e5e7eb;font-family:var(--font-primary);font-size:.92rem;font-weight:600;color:#374151;background:#fff}.calendar-drawer__manage{display:flex;gap:.65rem;margin-top:1.25rem;padding-top:.25rem}.calendar-drawer__manage-btn{flex:1;padding:.875rem 1rem;border-radius:12px;border:1.5px solid transparent;background:#fff;font-family:var(--font-primary);font-size:.9375rem;font-weight:700;cursor:pointer}button.calendar-drawer__manage-btn--edit{border-color:#3b82f6!important;color:#3b82f6!important}button.calendar-drawer__manage-btn--edit:hover,button.calendar-drawer__manage-btn--edit:focus-visible{background:#eff6ff!important;border-color:#3b82f6!important;color:#3b82f6!important}button.calendar-drawer__manage-btn--delete{border-color:#ef4444!important;color:#ef4444!important}button.calendar-drawer__manage-btn--delete:hover,button.calendar-drawer__manage-btn--delete:focus-visible{background:#fef2f2!important;border-color:#ef4444!important;color:#ef4444!important}.calendar-modal{position:fixed;inset:0;z-index:55;display:flex;align-items:flex-end;justify-content:center}.calendar-modal.calendar-modal--centered{align-items:center;justify-content:center;padding:1.25rem;box-sizing:border-box}.calendar-modal__backdrop{position:absolute;inset:0;border:none;background:#00000080;cursor:pointer}.calendar-modal__sheet{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;display:flex;flex-direction:column;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -12px 40px #0003}.calendar-modal.calendar-modal--centered .calendar-modal__sheet--ai{width:min(480px,100%);height:min(640px,calc(100vh - 2.5rem));max-height:min(640px,calc(100vh - 2.5rem));border-radius:16px;box-shadow:0 20px 50px #00000038;overflow:hidden}.calendar-modal.calendar-modal--centered .calendar-modal__sheet--form{width:min(520px,100%);max-height:min(90vh,calc(100vh - 2.5rem));border-radius:16px;box-shadow:0 20px 50px #00000038;overflow:hidden;font-family:var(--font-primary)}.calendar-modal__sheet--form .calendar-modal__body{flex:1;min-height:0}.calendar-modal__sheet--ai{height:85vh;max-height:85vh}.calendar-modal__head--form{position:relative;padding:1rem 2.75rem 1rem 1.25rem}.calendar-modal__head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.25rem;border-bottom:1px solid #eceff2;flex-shrink:0}.calendar-modal__head--ai{position:relative;padding:1rem 2.75rem 1rem 1.25rem}.calendar-modal__ai-brand{display:flex;align-items:center;gap:.65rem}.calendar-modal__ai-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#b60000;color:#fff}.calendar-modal__title{margin:0;font-family:var(--font-primary);font-size:1.15rem;font-weight:700;color:#111827}.calendar-modal__subtitle{margin:.1rem 0 0;font-family:var(--font-primary);font-size:.75rem;color:#6b7280}.calendar-modal__close{border:none;background:transparent;font-size:1.75rem;line-height:1;color:#374151;cursor:pointer;padding:.15rem .35rem}.calendar-modal--centered .calendar-modal__close{position:absolute;top:.65rem;right:.65rem;margin:0;z-index:2}button.calendar-modal__close:hover,button.calendar-modal__close:focus-visible{background:transparent!important;border-color:transparent!important;color:#111827!important}.calendar-modal__body{overflow-y:auto;padding:1rem 1.25rem 1.5rem}.calendar-form__label{display:block;margin:0 0 .4rem;font-family:var(--font-primary);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b7280}.calendar-form__pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.calendar-form__pill{padding:.45rem .85rem;border-radius:20px;border:2px solid #e5e7eb;background:transparent;font-family:var(--font-primary);font-size:.8125rem;font-weight:600;color:#6b7280;cursor:pointer}button.calendar-form__pill:hover{border-color:#d1d5db!important}.calendar-form__field{display:block;margin-bottom:1rem}.calendar-form__input,.calendar-form__textarea{width:100%;box-sizing:border-box;border:1px solid #e5e7eb;border-radius:10px;padding:.65rem .75rem;font-family:var(--font-primary);font-size:.9375rem;color:#111827}.calendar-form__row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.calendar-form__row .calendar-form__field{margin-bottom:1rem}.calendar-form__input[type=time],.calendar-form__input[type=date]{font-family:var(--font-primary)}.calendar-form__select-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.65rem .75rem;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-family:var(--font-primary);font-size:.9375rem;color:#111827;cursor:pointer;text-align:left}.calendar-form__tz-list{margin-top:.35rem;max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.calendar-form__tz-group{margin:0;padding:.5rem .75rem .25rem;font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9ca3af}.calendar-form__tz-option{display:block;width:100%;padding:.6rem .75rem;border:none;border-bottom:1px solid #f3f4f6;background:transparent;font-family:var(--font-primary);font-size:.875rem;text-align:left;cursor:pointer;color:#111827}.calendar-form__tz-option--selected{color:#2563eb;font-weight:600}.calendar-form__toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0;border-top:1px solid #eceff2;margin-bottom:1rem;cursor:pointer;font-family:var(--font-primary)}.calendar-form__toggle-title{display:block;font-family:var(--font-primary);font-size:.9375rem;font-weight:600;color:#111827}.calendar-form__toggle-sub{display:block;margin-top:.15rem;font-family:var(--font-primary);font-size:.8125rem;font-weight:400;line-height:1.35;letter-spacing:normal;color:#6b7280}.calendar-form__toggle{width:50px;height:28px;border-radius:14px;border:none;background:#d1d5db;cursor:pointer;position:relative;flex-shrink:0}.calendar-form__toggle:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s ease}.calendar-form__toggle--on{background:#b60000}.calendar-form__toggle--on:after{transform:translate(22px)}.calendar-form__error{margin:0 0 .75rem;font-size:.875rem;color:#dc2626}.calendar-form__submit{width:100%;padding:.9rem 1rem;border:none;border-radius:12px;background:#b60000!important;color:#fff!important;font-family:var(--font-primary);font-size:1rem;font-weight:700;cursor:pointer}button.calendar-form__submit:hover:not(:disabled),button.calendar-form__submit:focus-visible:not(:disabled){background:#9a0000!important;border-color:transparent!important;color:#fff!important}.calendar-form__submit:disabled{background:#d1d5db!important;cursor:not-allowed}.calendar-ai__messages{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.calendar-ai__bubble{width:fit-content;max-width:85%;margin-bottom:0;padding:.75rem .9rem;border-radius:16px;font-family:var(--font-primary);font-size:.875rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.calendar-ai__bubble--assistant{align-self:flex-start;background:#f3f4f6;color:#111827}.calendar-ai__bubble--user{align-self:flex-end;background:#b60000;color:#fff}.calendar-ai__bubble--loading{min-width:3.5rem;display:flex;align-items:center}.calendar-ai__starters{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.calendar-ai__starter{display:inline-flex;align-items:center;gap:.5rem;width:fit-content;max-width:100%;padding:.65rem .85rem;border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;font-family:var(--font-primary);font-size:.8125rem;color:#111827;cursor:pointer;text-align:left}button.calendar-ai__starter:hover,button.calendar-ai__starter:focus-visible,button.calendar-ai__starter:active{border-color:#d1d5db!important;background:#f3f4f6!important;color:#111827!important}.calendar-ai__starter-icon{color:#b60000}.calendar-ai__starter-text{white-space:normal}.calendar-ai__suggested{align-self:stretch;width:100%;box-sizing:border-box;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:.85rem;font-family:var(--font-primary)}.calendar-ai__field-icon{flex-shrink:0;color:#9ca3af}.calendar-ai__suggested-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.65rem}.calendar-ai__suggested-label{font-size:.8125rem;font-weight:700;color:#3b82f6}.calendar-ai__suggested-hint{font-size:.6875rem;color:#6b7280}.calendar-ai__suggested-title{width:100%;box-sizing:border-box;border:none;border-bottom:1px solid #dbeafe;background:transparent;font-family:var(--font-primary);font-size:.9375rem;font-weight:700;padding:.25rem 0 .5rem;margin-bottom:.5rem;color:#111827}.calendar-ai__suggested-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.calendar-ai__suggested-date{flex:1;min-width:0;border:1px solid #bfdbfe;border-radius:8px;padding:.45rem .5rem;font-family:var(--font-primary);font-size:.875rem;color:#111827;background:#fff}.calendar-ai__suggested-times{display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}.calendar-ai__time-field{flex:1;min-width:0;display:flex;align-items:center;gap:.35rem;border:1px solid #bfdbfe;border-radius:8px;padding:.35rem .45rem;background:#fff}.calendar-ai__time-field input{flex:1;min-width:0;border:none;padding:.15rem 0;font-family:var(--font-primary);font-size:.875rem;color:#111827;background:transparent}.calendar-ai__time-sep{flex-shrink:0;color:#9ca3af;font-family:var(--font-primary)}.calendar-ai__tz-btn{display:flex;align-items:center;gap:.45rem;width:100%;box-sizing:border-box;margin-bottom:.5rem;padding:.45rem .55rem;border:1px solid #bfdbfe;border-radius:8px;background:#fff;font-family:var(--font-primary);font-size:.875rem;color:#111827;cursor:pointer;text-align:left}button.calendar-ai__tz-btn:hover,button.calendar-ai__tz-btn:focus-visible{border-color:#bfdbfe!important;background:#f9fafb!important;color:#111827!important}.calendar-ai__tz-btn-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-ai__tz-chevron{flex-shrink:0;color:#9ca3af;font-size:.75rem}.calendar-ai__tz-list{max-height:140px;margin-bottom:.5rem}.calendar-ai__type-pills{margin-bottom:.5rem}.calendar-ai__suggested-actions{display:flex;gap:.5rem;align-items:stretch;margin-top:.65rem}.calendar-ai__suggested-actions .calendar-form__submit{flex:1;width:auto;min-height:48px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.calendar-ai__dismiss{flex-shrink:0;min-height:48px;padding:0 1.1rem;border:1px solid #e5e7eb;border-radius:12px;background:#fff;font-family:var(--font-primary);font-size:.875rem;font-weight:600;color:#111827;cursor:pointer;display:flex;align-items:center;justify-content:center;box-sizing:border-box}button.calendar-ai__dismiss:hover,button.calendar-ai__dismiss:focus-visible{border-color:#d1d5db!important;background:#f9fafb!important;color:#111827!important}.calendar-ai__composer{display:flex;gap:.5rem;padding:.85rem 1rem;border-top:1px solid #eceff2;flex-shrink:0}.calendar-ai__input{flex:1;border:1px solid #e5e7eb;border-radius:12px;padding:.65rem .75rem;font-family:var(--font-primary);font-size:.875rem;resize:none;min-height:2.5rem}.calendar-ai__send{width:48px;height:48px;border:none;border-radius:12px;background:#b60000!important;color:#fff!important;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}.calendar-ai__send-icon{display:flex;align-items:center;justify-content:center;line-height:0}.calendar-ai__send:disabled{background:#d1d5db!important;cursor:not-allowed}button.calendar-ai__send:hover:not(:disabled){background:#9a0000!important;border-color:transparent!important}.calendar-drawer__notes{margin:.5rem 0 0;border:1px solid #eceff2;border-radius:10px;padding:.75rem;font-family:var(--font-primary);font-size:.96rem;color:#374151;background:#fafafa}.calendar-practice-plan__heading{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.calendar-practice-plan__title{margin:0!important}.calendar-practice-plan__icon{flex-shrink:0;color:#6b7280}.calendar-practice-plan__list{display:flex;flex-direction:column;gap:.5rem}.calendar-practice-plan__chip{display:flex;align-items:center;gap:.5rem;padding:.75rem .85rem;border-radius:10px;border:1px solid #bfdbfe;background:#eff6ff;text-decoration:none!important;color:#3b82f6!important;font-family:var(--font-primary);font-size:.9rem;font-weight:600}.calendar-practice-plan__chip:hover{background:#dbeafe!important;border-color:#93c5fd!important;color:#2563eb!important}.calendar-practice-plan__chip-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-practice-plan__chip-chevron{flex-shrink:0;font-size:1.1rem;line-height:1}.practice-plan-page{width:100%;max-width:100%;min-height:100%;box-sizing:border-box}.practice-plan-page__header{padding:1rem 1rem .75rem;width:100%;box-sizing:border-box}.practice-plan-page__back{border:none;background:transparent;padding:.35rem .45rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;border-radius:8px;color:#101010;font-family:inherit}.practice-plan-page__back .back-arrow-icon{flex-shrink:0}.practice-plan-page__back:hover{background:#f5f5f5}.practice-plan-page__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010;line-height:1.1}.practice-plan-page__body{width:100%;max-width:720px;margin:0 auto;padding:0 1rem 2rem;box-sizing:border-box;display:flex;flex-direction:column;gap:0}.practice-plan-page__title{margin:0;font-family:var(--font-primary);font-size:1.35rem;font-weight:700;line-height:1.3;color:#111827}.practice-plan-page__meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.75rem;padding-bottom:.85rem;border-bottom:1px solid #e5e7eb}.practice-plan-page__meta-left{display:flex;align-items:center;gap:.625rem;flex:1;min-width:0}.practice-plan-page__meta-icon{flex-shrink:0}.practice-plan-page__shared{margin:0;font-family:var(--font-primary);font-size:.8125rem;color:#6b7280;line-height:1.4}.practice-plan-page__duration{display:flex;align-items:center;gap:.25rem;flex-shrink:0;margin-left:.75rem;font-family:var(--font-primary);font-size:.8125rem;font-weight:600;color:#6b7280}.practice-plan-page__duration svg{flex-shrink:0;color:#6b7280}.practice-plan-page__sections{margin-top:.75rem}.practice-plan-page__status{margin:1.5rem 1rem;font-family:var(--font-primary);color:#6b7280}.practice-plan-page__footer{margin-top:2rem;text-align:center;font-family:var(--font-primary);font-size:.8rem;color:#9ca3af}.practice-plan-page__brand{color:#b60000;font-weight:700}.practice-plan-section{margin-top:.75rem;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 4px #0000000a}.practice-plan-section__header{width:100%;display:flex;align-items:center;gap:.65rem;padding:.875rem 1rem;border:none;cursor:pointer;text-align:left;font-family:inherit}button.practice-plan-section__header:hover{filter:brightness(.98)}.practice-plan-section__dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.practice-plan-section__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.practice-plan-section__name{font-family:var(--font-primary);font-size:.9375rem;font-weight:700;color:#111827}.practice-plan-section__meta{font-family:var(--font-primary);font-size:.75rem;font-weight:500;color:#6b7280}.practice-plan-section__chevron{flex-shrink:0;color:#6b7280}.practice-plan-section__chevron--up{transform:rotate(180deg)}.practice-plan-section__body{border-top:1px solid #f3f4f6}.practice-plan-section__notes{margin:0;padding:.65rem 1rem;font-family:var(--font-primary);font-size:.8125rem;color:#6b7280;border-bottom:1px solid #f3f4f6}.practice-plan-section__empty{margin:0;padding:1rem;font-family:var(--font-primary);font-size:.8125rem;font-style:italic;color:#9ca3af}.practice-plan-activity{margin:.5rem .75rem .75rem;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;background:#fff}.practice-plan-activity__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;padding:.75rem .875rem .35rem}.practice-plan-activity__name{margin:0;flex:1;font-family:var(--font-primary);font-size:.875rem;font-weight:700;color:#111827;line-height:1.35}.practice-plan-activity__duration{flex-shrink:0;font-family:var(--font-primary);font-size:.8125rem;font-weight:500;color:#6b7280}.practice-plan-activity__notes{margin:0;padding:0 .875rem .65rem;font-family:var(--font-primary);font-size:.8125rem;line-height:1.45;color:#6b7280}.practice-plan-activity__video{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.practice-plan-activity__video iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.practice-plan-activity__block{padding:.65rem .875rem;border-top:1px solid #f3f4f6;font-family:var(--font-primary);font-size:.8125rem;color:#374151;line-height:1.45}.practice-plan-activity__block-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.35rem}.practice-plan-activity__block-title{margin:0;font-size:.8125rem;font-weight:600}.practice-plan-activity__block-value{margin:0}.practice-plan-activity__block-title--steps{color:#111827;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.practice-plan-activity__list{margin:0;padding-left:1.1rem}.practice-plan-activity__steps{margin:0;padding:0;list-style:none}.practice-plan-activity__steps li{display:flex;gap:.35rem;margin-bottom:.35rem}.practice-plan-activity__step-num{font-weight:700;flex-shrink:0}@media(max-width:900px){.calendar-grid__days{grid-auto-rows:minmax(90px,1fr)}.calendar-page{padding:.6rem .6rem .8rem}}.assignment-detail{max-width:none;width:100%;margin:0 auto;padding:.75rem 1rem 1rem;min-height:0;box-sizing:border-box}.assignment-detail__top{margin-bottom:.5rem}.assignment-detail__back{display:inline-flex;align-items:center;gap:.45rem;font-size:1.25rem;color:#101010;text-decoration:none}.assignment-detail__back:hover,.assignment-detail__back:focus,.assignment-detail__back:focus-visible{color:#333;text-decoration:none}.assignment-detail__back-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#101010}.assignment-detail__loading,.assignment-detail__error{text-align:center;padding:2rem;font-family:var(--font-primary)}.assignment-detail__error .assignment-detail__back-link{display:inline-block;margin-top:1rem;color:var(--color-brand);text-decoration:underline}.assignment-detail__content{padding-bottom:.5rem;display:grid;grid-template-columns:1fr;gap:0}@media(min-width:768px){.assignment-detail__content{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;align-items:start}.assignment-detail__content .assignment-detail__header-block{grid-column:1 / -1}.assignment-detail__content .assignment-detail__main-block{grid-column:1}.assignment-detail__content .assignment-detail__side-block{grid-column:2}}.assignment-detail__title{font-family:var(--font-primary);font-size:1.35rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem;line-height:1.25}.assignment-detail__badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.65rem}.assignment-detail__badge{padding:.25rem .75rem;border-radius:999px;font-family:var(--font-primary);font-size:.75rem;font-weight:600}.assignment-detail__badge--status{color:#7f1d1d}.assignment-detail__badge--category{background:#fff;border:1px solid #E5E7EB;color:#1a1a1a}.assignment-detail__info-card{background:#f9fafb;border:1px solid #E5E7EB;border-radius:10px;padding:.65rem .85rem;margin-bottom:.75rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1rem}.assignment-detail__info-col{display:flex;align-items:center;gap:.5rem}.assignment-detail__info-avatar,.assignment-detail__info-icon{width:40px;height:40px;border-radius:50%;background:#e0e7ff;display:flex;align-items:center;justify-content:center;font-size:1.05rem}.assignment-detail__info-icon{background:#fff;border:1px solid #E5E7EB}.assignment-detail__info-label{font-family:var(--font-primary);font-size:.72rem;color:#6b7280;margin-bottom:.05rem}.assignment-detail__info-value{font-family:var(--font-primary);font-size:.9rem;font-weight:700;color:#1a1a1a}.assignment-detail__section{margin-bottom:.85rem}.assignment-detail__section-title{font-family:var(--font-primary);font-size:.95rem;font-weight:700;color:#1a1a1a;margin:0 0 .4rem}.assignment-detail__description-box{background:#f9fafb;border:1px solid #E5E7EB;border-radius:10px;padding:.65rem .75rem;font-family:var(--font-primary);font-size:.9rem;line-height:1.4;color:#4b5563;max-height:min(32vh,160px);overflow-y:auto;-webkit-overflow-scrolling:touch}.assignment-detail__timeline-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-primary);font-size:.82rem}.assignment-detail__timeline-label{color:#6b7280}.assignment-detail__timeline-value{color:#1a1a1a}.assignment-detail__activity-list{list-style:none;margin:0;padding:0;max-height:min(38vh,200px);overflow-y:auto;-webkit-overflow-scrolling:touch}.assignment-detail__activity-item{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;font-family:var(--font-primary);font-size:.82rem}.assignment-detail__activity-avatar{width:32px;height:32px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:600;color:#6b7280;flex-shrink:0}.assignment-detail__activity-name{font-weight:700;color:#1a1a1a}.assignment-detail__activity-desc{color:#6b7280}.assignment-detail__actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #E5E7EB;display:flex;flex-direction:column;gap:.5rem;max-width:100%;box-sizing:border-box;grid-column:1 / -1}.assignment-detail__actions .assignment-detail__btn{width:100%;max-width:100%}.assignment-detail__btn{width:100%;border:none;border-radius:10px;padding:.6rem .85rem;font-family:var(--font-primary);font-size:.9rem;font-weight:700;color:#fff;cursor:pointer;box-sizing:border-box}.assignment-detail__btn:disabled{opacity:.7;cursor:not-allowed}.assignment-detail__btn--primary{background:#dc2626}.assignment-detail__btn--primary:hover:not(:disabled){background:#b91c1c}.assignment-detail__btn--orange{background:#f59e0b}.assignment-detail__btn--orange:hover:not(:disabled){background:#d97706}.assignment-detail__btn--green{background:#10b981}.assignment-detail__btn--green:hover:not(:disabled){background:#059669}.assignment-detail__btn--red{background:#dc2626}.assignment-detail__btn--red:hover:not(:disabled){background:#b91c1c}.lobby-team{background:#fafafa;border-radius:16px;border:1px solid var(--color-progress-bg);padding:1.25rem}.lobby-team--empty{display:flex;align-items:center;gap:1rem;cursor:pointer;transition:background .15s}.lobby-team--empty:hover{background:#f0f0f0}.lobby-team__empty-icon{width:48px;height:48px;border-radius:50%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.lobby-team__empty-text{display:flex;flex-direction:column}.lobby-team__empty-title{font-family:var(--font-primary);font-weight:700;font-size:1rem;color:#1a1a1a}.lobby-team__empty-sub{font-family:var(--font-primary);font-size:.85rem;color:#888;margin-top:.1rem}.lobby-team__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.lobby-team__info{display:flex;align-items:center;gap:.75rem}.lobby-team__avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0}.lobby-team__avatar--fallback{background:#4a90d9;color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-weight:700;font-size:1.25rem}.lobby-team__names{display:flex;flex-direction:column}.lobby-team__label{font-family:var(--font-primary);font-size:.8rem;color:#888;font-weight:500}.lobby-team__name{font-family:var(--font-primary);font-weight:700;font-size:1.15rem;color:#1e60a8;line-height:1.2}.lobby-team__view-all{background:none;border:none;font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#888;cursor:pointer;text-decoration:underline;padding:0}.lobby-team__view-all:hover{color:#1a1a1a}.lobby-team__lessons{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:1rem}.lobby-team__lessons::-webkit-scrollbar{height:4px}.lobby-team__lessons::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.lobby-team__no-lessons{margin:0;font-family:var(--font-primary);font-size:.9rem;color:#888}a.lobby-team__view-all{text-decoration:underline;color:#888}a.lobby-team__view-all:hover{color:#1a1a1a}.lobby-popular{margin-top:1.5rem;padding:0 1rem}.lobby-popular__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;padding-right:.25rem}.lobby-popular__title{font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a;margin:0}.lobby-popular__view-all{font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#747474;text-decoration:underline}.lobby-popular__view-all:hover{color:#1a1a1a}.lobby-popular__row,.team-hub-calendar__row{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:1rem}.team-hub-calendar__row{flex-wrap:nowrap;gap:12px;overflow-y:hidden}.lobby-popular__row::-webkit-scrollbar,.team-hub-calendar__row::-webkit-scrollbar{height:4px}.lobby-popular__row::-webkit-scrollbar-thumb,.team-hub-calendar__row::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.lobby-popular-card{min-width:180px;max-width:200px;background:#fff;border-radius:14px;border:1px solid var(--color-progress-bg);padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;flex-shrink:0;box-shadow:0 2px 6px #0000000d;cursor:pointer;transition:box-shadow .15s}.lobby-popular-card:hover{border-color:var(--color-card-border-hover);box-shadow:0 4px 12px #0000001a}.lobby-popular-card:focus,.lobby-popular-card:focus-visible,.lobby-popular-card:active{outline:none;border-color:var(--color-card-border-hover)}.lobby-popular-card__icon{width:48px;height:48px;object-fit:contain;margin-bottom:.25rem}.custom-lesson-pack-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.custom-lesson-pack-icon__row{display:flex;align-items:flex-end;justify-content:center}.custom-lesson-pack-icon__ball{display:block;object-fit:contain;flex-shrink:0}.custom-lesson-pack-icon__ball--top{position:relative;z-index:1;align-self:center}.lobby-popular-card__name{font-family:var(--font-primary);font-weight:700;font-size:.95rem;color:#1a1a1a;line-height:1.3;text-align:center}.team-hub-available-lessons{margin-top:1.5rem}.lobby-popular-card__count{font-family:var(--font-primary);font-size:.85rem;color:var(--color-brand);font-weight:600}.lobby-popular-card__count--pending{display:block;min-height:1.25em}.lobby-popular-card__btn{width:100%;margin-top:auto;padding:.5rem .75rem;background:var(--color-brand);color:#fff;border:none;border-radius:10px;font-family:var(--font-primary);font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s}.lobby-popular-card__btn:hover{background:var(--color-brand-hover)}.lobby-popular-card__btn:focus,.lobby-popular-card__btn:focus-visible,.lobby-popular-card__btn:active{outline:none}.team-packs{width:100%;max-width:900px;margin:0 auto;padding:1rem}.team-packs__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e5e5}.team-packs__back{justify-self:start;display:inline-flex;align-items:center;gap:.45rem;font-size:1.25rem;color:#101010;text-decoration:none;padding:.2rem .35rem;border-radius:6px;transition:background .15s}.team-packs__back:hover,.team-packs__back:focus,.team-packs__back:focus-visible{background:#f0f0f0;text-decoration:none}.team-packs__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010}.team-packs__title{grid-column:2;font-family:var(--font-primary);font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center}.team-packs__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem}.team-packs__loading,.team-packs__empty{grid-column:1 / -1;text-align:center;padding:2rem;color:#888;font-size:1rem}.team-packs__card{background:#fff;border-radius:14px;border:1px solid var(--color-progress-bg);padding:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 2px 6px #0000000d}.team-packs__card-icon-wrap{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:.25rem}.team-packs__card-icon{width:48px;height:48px;object-fit:contain}.team-packs__card-title{font-family:var(--font-primary);font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.6em;width:100%}.team-packs__card-count{font-family:var(--font-primary);font-size:.85rem;color:var(--color-brand);margin:0;font-weight:600}.team-packs__card-btn{width:100%;margin-top:auto;padding:.65rem 1rem;background:var(--color-brand);color:#fff;border:none;border-radius:10px;font-family:var(--font-primary);font-size:.9rem;font-weight:700;cursor:pointer;transition:background .15s}.team-packs__card-btn:hover{background:var(--color-brand-hover)}.team-packs__card-btn:focus,.team-packs__card-btn:focus-visible,.team-packs__card-btn:active{outline:none}.popular-packs{width:100%;max-width:900px;margin:0 auto;padding:1rem}.popular-packs__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e5e5}.popular-packs__back{justify-self:start;display:inline-flex;align-items:center;gap:.45rem;font-size:1.25rem;color:#101010;text-decoration:none;padding:.2rem .35rem;border-radius:6px;transition:background .15s}.popular-packs__back:hover,.popular-packs__back:focus,.popular-packs__back:focus-visible{background:#f0f0f0;text-decoration:none}.popular-packs__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010}.popular-packs__title{grid-column:2;font-family:var(--font-primary);font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center}.popular-packs__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem}.popular-packs__loading{grid-column:1 / -1;text-align:center;padding:2rem;color:#888;font-size:1rem}.popular-packs__card{background:#fff;border-radius:14px;border:1px solid var(--color-progress-bg);padding:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 2px 6px #0000000d}.popular-packs__card-icon-wrap{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:.25rem}.popular-packs__card-icon{width:48px;height:48px;object-fit:contain}.popular-packs__card-title{font-family:var(--font-primary);font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center;line-height:1.3}.popular-packs__card-count{font-family:var(--font-primary);font-size:.85rem;color:var(--color-brand);margin:0;font-weight:600}.popular-packs__card-btn{width:100%;margin-top:auto;padding:.65rem 1rem;background:var(--color-brand);color:#fff;border:none;border-radius:10px;font-family:var(--font-primary);font-size:.9rem;font-weight:700;cursor:pointer;transition:background .15s}.popular-packs__card-btn:hover{background:var(--color-brand-hover)}.popular-packs__card-btn:focus,.popular-packs__card-btn:focus-visible,.popular-packs__card-btn:active{outline:none}a.ask-wingman{text-decoration:none;color:inherit}.ask-wingman{width:320px;border-radius:16px;background:linear-gradient(180deg,#c62828,#b71c1c);padding:1.25rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:0 4px 14px #0000002e}.ask-wingman__header{display:flex;align-items:center;gap:.75rem}.ask-wingman__mascot{width:64px;height:64px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.ask-wingman__titles{display:flex;flex-direction:column}.ask-wingman__title{font-family:var(--font-primary);font-weight:800;font-size:1.35rem;color:#fff;line-height:1.2}.ask-wingman__subtitle{font-family:var(--font-primary);font-weight:400;font-size:.85rem;color:#ffffffbf;margin-top:.15rem}.ask-wingman__input-row{display:flex;align-items:center;background:#fff;border-radius:28px;padding:.65rem .9rem;gap:.5rem;cursor:pointer;transition:box-shadow .15s}.ask-wingman__input-row:hover{box-shadow:0 2px 8px #0000001f}.ask-wingman__sparkle{font-size:1rem;color:#1a1a1a;flex-shrink:0}.ask-wingman__placeholder{flex:1;font-family:var(--font-primary);font-size:.95rem;color:#888}.wingman-page{display:flex;flex-direction:column;height:100%;width:100%;background:#fff}.wingman-page__content{flex:1 1 auto;min-height:0;display:flex;width:100%}.wingman-page__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.wingman-page--history-open .wingman-page__main{border-right:1px solid #f0f0f0}.wingman-page--empty{position:relative}.wingman-page--empty .wingman-page__messages{overflow:hidden;justify-content:center}.wingman-page--empty .wingman-page__input-bar{width:min(640px,calc(100% - 2rem));border:1px solid #e5e7eb;border-radius:24px;background:#fff;box-shadow:0 10px 30px #00000014;padding:.55rem .7rem;margin:.65rem auto .9rem;flex-direction:column;align-items:stretch;gap:.45rem}.wingman-page--empty .wingman-page__input{max-width:none;min-height:38px;max-height:200px;border:none;background:transparent;font-size:.9rem;padding:.45rem .75rem;resize:none;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}.wingman-page--empty .wingman-page__send{width:38px;height:38px}.wingman-page--empty .wingman-page__send-icon{font-size:1rem}.wingman-page__topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-progress-bg);flex-shrink:0}.wingman-page__back{justify-self:start;font-size:1.25rem;color:#1a1a1a;text-decoration:none;line-height:1;flex-shrink:0;padding:.25rem;display:inline-flex;align-items:center;gap:.5rem}.wingman-page__back:hover{color:var(--color-brand);text-decoration:none}.wingman-page__back-text{font-family:var(--font-primary);font-weight:700;font-size:.95rem;line-height:1;color:inherit;white-space:nowrap}.wingman-page__back:hover .wingman-page__back-text{color:#1a1a1a}.wingman-page__topbar-center{display:flex;align-items:center;gap:.6rem;justify-self:center;text-align:center}.wingman-page__topbar-icon{width:32px;height:32px;object-fit:contain}.wingman-page__topbar-titles{display:flex;flex-direction:column}.wingman-page__topbar-title{font-family:var(--font-primary);font-weight:700;font-size:.95rem;color:#1a1a1a;line-height:1.2}.wingman-page__topbar-subtitle{font-family:var(--font-primary);font-size:.75rem;color:#888;line-height:1.2}.wingman-page__menu{background:none;border:none;font-size:1.2rem;color:#1a1a1a;cursor:pointer;padding:.25rem;line-height:1;flex-shrink:0;text-decoration:none;-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none}.wingman-page__menu:hover{color:#1a1a1a;text-decoration:none;background:transparent;border:none;outline:none;box-shadow:none}.wingman-page__menu:active,.wingman-page__menu:focus,.wingman-page__menu:focus-visible{color:#1a1a1a;background:transparent;border:none;outline:none;box-shadow:none}.wingman-page__history-topbar{display:inline-flex;align-items:center;gap:.6rem;flex-shrink:0;justify-self:end}.wingman-page__history-title{font-family:var(--font-primary);font-weight:800;font-size:1rem;color:#1a1a1a;white-space:nowrap}.wingman-history-panel{flex:0 0 auto;height:100%;width:min(420px,36vw);background:#fff;border-left:1px solid var(--color-progress-bg);box-shadow:none;display:flex;flex-direction:column;min-width:320px}@media(max-width:1100px){.wingman-history-panel{width:min(360px,40vw);min-width:300px}}@media(max-width:860px){.wingman-history-panel{width:min(320px,44vw);min-width:280px}}.wingman-history-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--color-progress-bg)}.wingman-history-drawer__title{margin:0;font-family:var(--font-primary);font-weight:800;font-size:1.05rem;color:#1a1a1a}.wingman-history-drawer__close{border:none;background:transparent;color:#111827;font-size:1.25rem;line-height:1;cursor:pointer;padding:.35rem}.wingman-history-drawer__close:hover{color:var(--color-brand)}.wingman-page__messages{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.wingman-page__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.wingman-page__mascot{width:100px;height:100px;object-fit:contain;margin-bottom:.75rem}.wingman-page__heading{margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.35rem;color:#1a1a1a;text-align:center}.wingman-page__subtext{margin:0;font-family:var(--font-primary);font-size:.95rem;color:#888;text-align:center}.wingman-chat{display:flex;flex-direction:column;gap:.75rem}.wingman-chat__user-row{display:flex;align-items:flex-start;justify-content:flex-end;gap:.5rem}.wingman-chat__user-bubble{max-width:70%;padding:.7rem 1rem;background:var(--color-brand);color:#fff;font-family:var(--font-primary);font-size:.9rem;line-height:1.45;border-radius:18px 18px 4px;white-space:pre-wrap;overflow-wrap:anywhere}.wingman-chat__user-attach-img{display:block;max-width:min(240px,70vw);max-height:200px;object-fit:cover;border-radius:12px;margin-bottom:.45rem}.wingman-chat__user-text{white-space:pre-wrap;overflow-wrap:anywhere}.wingman-chat__user-avatar{width:32px;height:32px;border-radius:50%;background:#1e60a8;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.wingman-chat__user-avatar-img{width:20px;height:20px;object-fit:contain;filter:brightness(0) invert(1)}.wingman-chat__user-avatar.wingman-chat__user-avatar--custom{background:transparent!important;box-shadow:none;padding:0}.wingman-chat__user-avatar-img--custom{width:100%;height:100%;object-fit:cover;object-position:center;filter:none;display:block;border-radius:50%;vertical-align:middle;transform:scale(1.12);transform-origin:center center}.wingman-chat__ai-row{display:flex;align-items:flex-start;gap:.5rem}.wingman-chat__ai-avatar{width:32px;height:32px;object-fit:contain;flex-shrink:0}.wingman-chat__ai-bubble{max-width:70%;padding:.7rem 1rem;background:#f5f5f5;color:var(--color-text);font-family:var(--font-primary);font-size:.9rem;line-height:1.5;border-radius:18px 18px 18px 4px}.wingman-ai-audio{display:flex;flex-direction:row;align-items:flex-start;gap:8px;width:100%;max-width:100%;margin-bottom:.65rem;box-sizing:border-box;justify-content:flex-start}.wingman-ai-audio__play{flex-shrink:0;width:40px;height:40px;border:none;border-radius:50%;background:#b60000;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.wingman-ai-audio__play:disabled{cursor:not-allowed}.wingman-ai-audio__play-triangle{width:0;height:0;border-style:solid;border-width:7px 0 7px 12px;border-color:transparent transparent transparent #ffffff;margin-left:3px}.wingman-ai-audio__pause-icon{display:flex;gap:4px;align-items:center;justify-content:center}.wingman-ai-audio__pause-icon span{display:block;width:4px;height:14px;border-radius:1px;background:#fff}.wingman-ai-audio__right{flex:0 0 auto;width:198px;min-width:0;display:flex;flex-direction:column;gap:4px}.wingman-ai-audio__wave-wrap{position:relative;width:100%;min-height:28px}.wingman-ai-audio__wave-row{display:flex;flex-direction:row;align-items:flex-end;justify-content:flex-start;flex-wrap:nowrap;gap:2px;width:100%;min-height:28px;cursor:pointer;box-sizing:border-box}.wingman-ai-audio__bar{flex:0 0 3px;width:3px;min-width:3px;border-radius:1px;align-self:flex-end}.wingman-ai-audio__playhead{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#b60000;pointer-events:none;border-radius:1px}.wingman-ai-audio__times{display:flex;flex-direction:row;justify-content:space-between;width:100%}.wingman-ai-audio__time{font-size:11px;line-height:1.2;color:#888}.wingman-ai-audio__speed{flex-shrink:0;align-self:center;margin:0 0 0 -2px;padding:0;border:none;background:none;font-size:14px;font-weight:600;line-height:1;color:#b60000;cursor:pointer;font-family:var(--font-primary);min-width:3.25rem;text-align:center;box-sizing:border-box}.wingman-ai-audio__speed:disabled{opacity:.4;cursor:not-allowed}.wingman-ai-md{font-size:15px;line-height:22px;color:#000;overflow-wrap:anywhere;word-break:break-word}.wingman-ai-md :first-child{margin-top:0}.wingman-ai-md :last-child{margin-bottom:0}.wingman-ai-md p{margin:0 0 8px}.wingman-ai-md h1{font-size:17px;line-height:24px;font-weight:700;margin:12px 0 6px;color:#000}.wingman-ai-md h2{font-size:16px;line-height:23px;font-weight:700;margin:10px 0 5px;color:#000}.wingman-ai-md h3{font-size:16px;line-height:23px;font-weight:600;margin:10px 0 5px;color:#000}.wingman-ai-md h4,.wingman-ai-md h5{font-size:15px;line-height:22px;font-weight:600;margin:8px 0 4px;color:#000}.wingman-ai-md h6{font-size:15px;line-height:22px;font-weight:500;margin:6px 0 4px;color:#4a4a4a}.wingman-ai-md strong{font-weight:700;font-size:15px;line-height:22px;color:#000}.wingman-ai-md em{font-style:italic}.wingman-ai-md a{color:#1558b0;text-decoration:underline;font-size:15px;line-height:22px}.wingman-ai-md ul,.wingman-ai-md ol{margin:0 0 8px;padding-left:1.35rem}.wingman-ai-md li{margin-bottom:4px}.wingman-ai-md li>p{margin-bottom:4px}.wingman-ai-md blockquote{margin:0 0 8px 4px;padding:6px 10px;border-left:4px solid #ccc;background:#f5f5f5;color:var(--color-text)}.wingman-ai-md hr{border:none;border-top:1px solid #ccc;margin:10px 0}.wingman-ai-md code{background:#f0f0f0;padding:2px 5px;border-radius:4px;font-size:14px;line-height:20px;font-family:ui-monospace,Menlo,Consolas,monospace}.wingman-ai-md pre{margin:0 0 8px;padding:12px;background:#f0f0f0;border-radius:8px;overflow-x:auto;font-size:14px;line-height:20px}.wingman-ai-md pre code{padding:0;background:none;font-size:inherit}.wingman-ai-md table{border-collapse:collapse;width:100%;margin-bottom:8px;font-size:15px;border:1px solid #ccc;border-radius:6px;overflow:hidden}.wingman-ai-md th,.wingman-ai-md td{border:1px solid #e0e0e0;padding:8px;text-align:left}.wingman-ai-md th{font-weight:600;border-bottom-color:#ccc}.wingman-ai-md del{color:#4a4a4a}.wingman-typing{display:inline-flex;align-items:center;gap:4px;padding:.25rem 0}.wingman-typing__dot{width:7px;height:7px;border-radius:50%;background:#999;animation:wingmanBounce 1.2s infinite ease-in-out}.wingman-typing__dot:nth-child(2){animation-delay:.15s}.wingman-typing__dot:nth-child(3){animation-delay:.3s}@keyframes wingmanBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.wingman-page__input-bar{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;width:min(640px,calc(100% - 2rem));border:1px solid #e5e7eb;border-radius:24px;background:#fff;box-shadow:0 10px 30px #00000014;padding:.55rem .7rem;margin:.75rem auto 1rem;flex-shrink:0}.wingman-page__input-bar-row{display:flex;align-items:flex-end;justify-content:center;gap:.5rem;width:100%;min-width:0}.wingman-page__input-bar-preview{width:100%;padding-bottom:.35rem;border-bottom:1px solid #eee}.wingman-page__input{flex:1 1 auto;min-width:0;max-width:none;width:100%;min-height:38px;max-height:200px;padding:.45rem .75rem;font-family:var(--font-primary);font-size:.9rem;line-height:1.35;color:var(--color-text);background:transparent;border:none;outline:none;transition:border-color .2s;resize:none;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box}.wingman-page__input::placeholder{color:#999}.wingman-page__input:focus{border-color:#bbb}.wingman-page__send{width:38px;height:38px;border-radius:50%;background:#e0e0e0;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.wingman-page__send--active{background:var(--color-brand)}.wingman-page__send--active:hover{background:var(--color-brand-hover)}.wingman-page__send:hover:not(.wingman-page__send--active):not(.wingman-page__send--stop):not(:disabled){background:#ccc}.wingman-page__send--disabled,.wingman-page__send--disabled:disabled{background:#e0e0e0;color:inherit;cursor:not-allowed;opacity:1}.wingman-page__send--disabled:hover,.wingman-page__send--disabled:disabled:hover{background:#e0e0e0}.wingman-page__send-icon{font-size:1rem;color:#fff;line-height:1;font-weight:700}.wingman-page__file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wingman-page__input-preview-wrap{position:relative;display:inline-block}.wingman-page__input-preview-img{width:72px;height:72px;object-fit:cover;border-radius:10px;display:block}.wingman-page__input-preview-remove{position:absolute;top:-6px;right:-6px;width:24px;height:24px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.wingman-page__add-btn{width:34px;height:34px;flex-shrink:0;border:none;border-radius:50%;background:#e8e8e8;color:#444;font-size:1.35rem;font-weight:500;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:2px}.wingman-page__add-btn:hover:not(:disabled){background:#ddd}.wingman-page__add-btn:disabled{opacity:.5;cursor:not-allowed}.wingman-page__listening{flex:1;min-width:0;min-height:38px;padding:.45rem .75rem;font-family:var(--font-primary);font-size:.95rem;font-style:italic;color:#888;display:flex;align-items:center}.wingman-page__side-btn{width:38px;height:38px;flex-shrink:0;border:none;border-radius:50%;background:#e0e0e0;color:#555;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin-bottom:2px;transition:background .15s}.wingman-page__side-btn:hover:not(:disabled){background:#ccc}.wingman-page__side-btn:disabled{opacity:.45;cursor:not-allowed}.wingman-page__side-btn-svg{display:block}.wingman-page__side-btn-svg--stroke{margin-top:1px}.wingman-page__send--stop{background:var(--color-brand)}.wingman-page__send.wingman-page__send--stop:hover:not(:disabled){background:var(--color-brand)}.wingman-page__stop-icon{display:block;width:12px;height:12px;border-radius:1px;background:#fff;flex-shrink:0}.wingman-page__send--stop:hover:not(:disabled) .wingman-page__stop-icon{background:#fff}.wingman-page__send--spinner{background:transparent;cursor:default}.wingman-page__transcribe-spinner{width:22px;height:22px;border:2px solid #e0e0e0;border-top-color:var(--color-brand);border-radius:50%;animation:wingman-spin .8s linear infinite}@keyframes wingman-spin{to{transform:rotate(360deg)}}.chat-history{display:flex;flex-direction:column;height:100%;width:100%;background:#fff}.chat-history__topbar{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-progress-bg);gap:.75rem;flex-shrink:0}.chat-history__back{font-size:1.25rem;color:#1a1a1a;text-decoration:none;line-height:1;flex-shrink:0;padding:.25rem}.chat-history__back:hover{color:var(--color-brand);text-decoration:none}.chat-history__title{flex:1;margin:0;font-family:var(--font-primary);font-weight:700;font-size:1.1rem;color:#1a1a1a;text-align:center}.chat-history__search-wrap{display:flex;align-items:center;gap:.5rem;margin:1rem 1rem 0;padding:.6rem .9rem;background:#f5f5f5;border-radius:24px;border:1px solid var(--color-progress-bg)}.chat-history__search-icon{flex-shrink:0}span.chat-history__search-icon{font-size:.85rem;color:#999}img.chat-history__search-icon{width:20px;height:20px;object-fit:contain;display:block}.chat-history__search{flex:1;border:none;background:transparent;font-family:var(--font-primary);font-size:.9rem;color:var(--color-text);outline:none}.chat-history__search::placeholder{color:#999}.chat-history__new-chat{display:flex;align-items:center;gap:.75rem;margin:.75rem 1rem 0;padding:.75rem 1rem;background:#fff;border:1px solid var(--color-progress-bg);border-radius:12px;cursor:pointer;font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:var(--color-text);transition:background .15s;-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none}.chat-history__new-chat:hover{background:#f9f9f9;border-color:var(--color-progress-bg)}.chat-history__new-chat:active,.chat-history__new-chat:focus,.chat-history__new-chat:focus-visible{outline:none;box-shadow:none;border-color:var(--color-progress-bg)}.chat-history__new-chat-plus{width:32px;height:32px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#666;flex-shrink:0}.chat-history__section{flex:1;overflow-y:auto;padding:1rem}.chat-history__section-title{margin:0 0 .5rem;font-family:var(--font-primary);font-weight:700;font-size:1rem;color:#1a1a1a}.chat-history__empty{font-family:var(--font-primary);font-size:.9rem;color:#888}.chat-history__item{display:flex;align-items:center;gap:.5rem;border-bottom:1px solid #f0f0f0;padding:.15rem .5rem;border-radius:12px;transition:background .12s ease}.chat-history__item:hover{background:#f5f5f5}.chat-history__item--active{background:#f0f0f0}.chat-history__item-content{flex:1;display:flex;flex-direction:column;gap:.2rem;padding:.7rem .25rem;background:none;border:none;text-align:left;cursor:pointer;font-family:var(--font-primary);-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none}.chat-history__item-content:hover{background:none}.chat-history__item-content:active,.chat-history__item-content:focus,.chat-history__item-content:focus-visible{outline:none;box-shadow:none}.chat-history__item-message{font-size:.9rem;font-weight:500;color:var(--color-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.chat-history__item-meta{font-size:.78rem;color:#999}.chat-history__item-delete{background:none;border:none;font-size:1.35rem;color:#999;cursor:pointer;padding:.5rem;flex-shrink:0;transition:color .15s;-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none}.chat-history__item:hover .chat-history__item-delete,.chat-history__item--active .chat-history__item-delete{color:#6b7280}.chat-history__item-delete:hover,.chat-history__item:hover .chat-history__item-delete:hover,.chat-history__item--active .chat-history__item-delete:hover{color:var(--color-brand)}.chat-history__item-delete:active,.chat-history__item-delete:focus,.chat-history__item-delete:focus-visible{outline:none;box-shadow:none;border:none}.chat-history__modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.chat-history__modal{background:#fff;border-radius:16px;padding:1.5rem;max-width:340px;width:90%;box-shadow:0 8px 32px #0000002e}.chat-history__modal-text{margin:0 0 1.25rem;font-family:var(--font-primary);font-size:.95rem;color:var(--color-text);text-align:center;line-height:1.4}.chat-history__modal-actions{display:flex;gap:.75rem;justify-content:center}.chat-history__modal-cancel{flex:1;padding:.6rem 1rem;font-family:var(--font-primary);font-weight:600;font-size:.9rem;border-radius:10px;border:1px solid var(--color-progress-bg);background:#fff;color:var(--color-text);cursor:pointer;transition:background .15s}.chat-history__modal-cancel:hover{background:#f5f5f5;border-color:var(--color-progress-bg)}.chat-history__modal-cancel:active,.chat-history__modal-cancel:focus,.chat-history__modal-cancel:focus-visible{outline:none;box-shadow:none;border-color:var(--color-progress-bg)}.chat-history__modal-confirm{flex:1;padding:.6rem 1rem;font-family:var(--font-primary);font-weight:600;font-size:.9rem;border-radius:10px;border:none;background:var(--color-brand);color:#fff;cursor:pointer;transition:background .15s}.chat-history__modal-confirm:hover{background:var(--color-brand-hover)}.sign-in-required-page{text-align:center;padding:3rem 2rem;max-width:400px;margin:0 auto}.sign-in-required-page__message{margin:0 0 1.25rem;font-family:var(--font-primary);font-size:1.125rem;line-height:1.4;color:var(--color-text)}.sign-in-required-page__link{display:inline-block;font-family:var(--font-primary);font-size:1rem;font-weight:700;color:var(--color-brand);text-decoration:none}.sign-in-required-page__link:hover{text-decoration:underline;color:var(--color-brand-hover)}.page{text-align:center;max-width:420px}.page h1{margin-top:0}.page p{margin:1rem 0 1.5rem;opacity:.9}.sign-in-page__actions,.sign-up-page__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;align-items:center}.btn{display:inline-block;padding:.6rem 1.25rem;border-radius:8px;font-weight:500;text-decoration:none;transition:border-color .2s,background-color .2s}.btn--primary{background:var(--color-brand);color:#fff;border:1px solid var(--color-brand)}.btn--primary:hover{background:var(--color-brand-hover);border-color:var(--color-brand-hover);color:#fff;text-decoration:none}.btn--secondary{background:transparent;color:var(--color-text);border:1px solid currentColor}.btn--secondary:hover{border-color:var(--color-brand);color:var(--color-brand);text-decoration:none}.link{margin-right:auto}.lesson-roadmap{width:100%;max-width:960px;margin:0 auto;padding:1rem;font-family:var(--font-primary)}.lesson-roadmap.lesson-roadmap--popup-open{padding-bottom:max(22rem,48vh);box-sizing:border-box}.lesson-roadmap__topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.5rem 0 1rem;border-bottom:1px solid #e5e5e5;margin-bottom:1.5rem}.lesson-roadmap__back{justify-self:start;min-width:0;display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:1.25rem;text-decoration:none;color:#101010;padding:.2rem .35rem;border-radius:6px;transition:background .15s}.lesson-roadmap__back:hover,.lesson-roadmap__back:focus,.lesson-roadmap__back:focus-visible{background:#f0f0f0;text-decoration:none}.lesson-roadmap__back-text{font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#101010;line-height:1.25;text-align:left}.lesson-roadmap__info{grid-column:2;display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}.lesson-roadmap__team{font-size:1.1rem;font-weight:700;color:#222}.lesson-roadmap__pack{font-size:.85rem;color:#666}.lesson-roadmap__body{display:flex;flex-direction:column;align-items:center;width:100%}.lesson-roadmap__loading,.lesson-roadmap__empty{text-align:center;padding:3rem 1rem;color:#999;font-size:1rem}.lesson-roadmap__next-box{width:100%;max-width:560px;margin:0 auto 1.5rem;padding:1rem 1.25rem;background:#4caf50;border:none;border-radius:20px;box-shadow:0 5px #2e7d32;cursor:pointer;text-align:left;transition:opacity .15s,transform .1s;align-self:center;-webkit-tap-highlight-color:transparent}.lesson-roadmap__next-box:hover:not(:disabled){opacity:.95;transform:translateY(1px)}.lesson-roadmap__next-box:disabled{cursor:not-allowed;opacity:.8}button.lesson-roadmap__next-box:focus,button.lesson-roadmap__next-box:focus-visible,button.lesson-roadmap__next-box:active{outline:none}.lesson-roadmap__next-label{display:block;font-size:.85rem;color:#fffffff2;margin-bottom:.35rem;font-weight:400}.lesson-roadmap__next-title{display:block;font-size:1.35rem;font-weight:700;color:#fff;line-height:1.25}.lesson-roadmap__bubbles{display:flex;flex-direction:column;gap:1.25rem;padding-top:.5rem;width:100%;max-width:480px;margin:0 auto;overflow:visible}.lesson-roadmap__row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;min-height:92px;overflow:visible}.lesson-roadmap__side{width:130px;min-width:130px;display:flex;align-items:center;min-height:92px;overflow:visible}.lesson-roadmap__side--left{justify-content:flex-end}.lesson-roadmap__side--right{justify-content:flex-start}.lesson-roadmap__row-center{width:240px;flex-shrink:0;display:flex;justify-content:center;align-items:center}.lesson-roadmap__row:nth-child(6n+1) .lesson-roadmap__row-center{justify-content:center}.lesson-roadmap__row:nth-child(6n+2) .lesson-roadmap__row-center,.lesson-roadmap__row:nth-child(6n+3) .lesson-roadmap__row-center{justify-content:flex-end}.lesson-roadmap__row:nth-child(6n+4) .lesson-roadmap__row-center{justify-content:center}.lesson-roadmap__row:nth-child(6n+5) .lesson-roadmap__row-center,.lesson-roadmap__row:nth-child(6n+6) .lesson-roadmap__row-center{justify-content:flex-start}.lesson-roadmap__character{width:120px;height:auto;flex-shrink:0}.lesson-roadmap__side--left .lesson-roadmap__character{transform:scale(1.5);transform-origin:right center}.lesson-roadmap__side--right .lesson-roadmap__character{transform:scale(1.5);transform-origin:left center}.lesson-roadmap__character img{width:100%;height:auto;display:block}button.lesson-roadmap__bubble{padding:0;border:none;background:none;box-shadow:none;filter:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;cursor:pointer;transition:transform .15s;--lr-section: #4caf50;--lr-inner: #c4f49d}button.lesson-roadmap__bubble:hover:not(:disabled){transform:scale(1.03);border-color:transparent}button.lesson-roadmap__bubble:disabled{cursor:not-allowed;opacity:1}button.lesson-roadmap__bubble:focus,button.lesson-roadmap__bubble:focus-visible,button.lesson-roadmap__bubble:active{outline:none}.lesson-roadmap__bubble-outer{position:relative;display:flex;align-items:center;justify-content:center;width:92px;height:92px}.lesson-roadmap__bubble-disk{position:absolute;inset:0;border-radius:50%;box-sizing:border-box;pointer-events:none;z-index:1;box-shadow:none}.lesson-roadmap__bubble--completed .lesson-roadmap__bubble-disk{background:var(--lr-section, #4caf50);border:5px solid color-mix(in srgb,var(--lr-section, #4caf50) 70%,#000)}.lesson-roadmap__bubble--current .lesson-roadmap__bubble-disk{background:#fff;border:5px solid #e0e0e0;transition:border-color .18s ease}button.lesson-roadmap__bubble--current:hover:not(:disabled) .lesson-roadmap__bubble-disk{border-color:var(--lr-section, #4caf50)}.lesson-roadmap__bubble--current.lesson-roadmap__bubble--popup-active .lesson-roadmap__bubble-disk{border-color:var(--lr-section, #4caf50)}.lesson-roadmap__bubble--locked .lesson-roadmap__bubble-disk{background:#fff;border:5px solid #e0e0e0}.lesson-roadmap__bubble-icon{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;width:100%;height:100%;pointer-events:none}.lesson-roadmap__bubble-star-svg{display:block;flex-shrink:0}.lesson-roadmap__bubble--completed .lesson-roadmap__bubble-icon{color:#fff}.lesson-roadmap__bubble--current .lesson-roadmap__bubble-icon{color:var(--lr-section, #4caf50)}.lesson-roadmap__bubble--locked .lesson-roadmap__bubble-icon{color:#bdbdbd}button.lesson-roadmap__bubble--locked{cursor:pointer}.lesson-roadmap__next-box--locked{cursor:pointer;opacity:.88}.lesson-roadmap-popup__overlay{position:fixed;inset:0;z-index:1098;background:transparent}.lesson-roadmap-popup{--lr-popup-accent: #4caf50;--lr-popup-tint: #ddffbb;position:fixed;z-index:1100;width:min(320px,calc(100vw - 24px));padding:1rem 1rem 1.1rem;box-sizing:border-box;border-radius:18px;background:var(--lr-popup-tint);box-shadow:0 6px 24px #00000024;font-family:var(--font-primary)}.lesson-roadmap-popup--locked-upsell{background:#eceff2;box-shadow:0 8px 28px #0000001f}.lesson-roadmap-popup--locked-upsell .lesson-roadmap-popup__caret{border-bottom-color:#eceff2}.lesson-roadmap-popup__title--locked{color:#1f2937}.lesson-roadmap-popup__meta--locked{margin:0 0 .65rem;font-size:.88rem;font-weight:500;color:#6b7280}.lesson-roadmap-popup__upsell-body{margin:0 0 1rem;font-size:.9rem;font-style:italic;line-height:1.45;color:#4b5563}.lesson-roadmap-popup__allstar-btn{display:block;width:100%;margin:0;padding:.75rem 1rem;border:none;border-radius:999px;font-family:var(--font-primary);font-size:.98rem;font-weight:700;color:#fff;background:var(--color-brand);box-shadow:0 4px color-mix(in srgb,var(--color-brand) 52%,#000);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.lesson-roadmap-popup__allstar-btn:hover{transform:translateY(1px);box-shadow:0 3px color-mix(in srgb,var(--color-brand) 52%,#000)}.lesson-roadmap-popup__caret{position:absolute;top:-10px;left:50%;transform:translate(-50%);width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:11px solid var(--lr-popup-tint);filter:drop-shadow(0 -1px 0 rgba(0,0,0,.04))}.lesson-roadmap-popup__title{margin:.15rem 0 .4rem;font-size:1.2rem;font-weight:700;color:#111827;line-height:1.25}.lesson-roadmap-popup__meta{margin:0 0 .85rem;font-size:.92rem;font-weight:600;color:#3f4f42}.lesson-roadmap-popup__start{display:block;width:100%;margin:0;padding:.75rem 1rem;border:none;border-radius:999px;font-family:var(--font-primary);font-size:.95rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--lr-popup-accent);box-shadow:0 4px color-mix(in srgb,var(--lr-popup-accent) 55%,#000);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.lesson-roadmap-popup__start:hover:not(:disabled){transform:translateY(1px);box-shadow:0 3px color-mix(in srgb,var(--lr-popup-accent) 55%,#000)}.lesson-roadmap-popup__start:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:0 3px #0003}.lesson-video{width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;min-height:auto;padding:1rem;position:relative;font-family:var(--font-primary)}.lesson-video__skip{position:absolute;top:1rem;right:1rem;background:#d32f2f;color:#fff;font-weight:700;border:none;border-radius:8px;padding:.5rem 1.25rem;font-size:.9rem;cursor:pointer;z-index:5;transition:background .15s}.lesson-video__skip:hover{background:#b71c1c}.lesson-video__player{width:100%;max-width:min(680px,100%);flex:0 1 auto;display:flex;align-items:center;justify-content:center;margin:3.5rem auto 2rem}.lesson-video__iframe{width:100%;aspect-ratio:16 / 9;border:none;border-radius:12px}.lesson-video__native-wrap{width:100%;aspect-ratio:16 / 9;position:relative;background:#111;border-radius:12px;overflow:hidden}.lesson-video__native{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .2s ease}.lesson-video__native--ready{opacity:1}.lesson-video__continue{background:#4caf50;color:#fff;font-weight:700;font-size:1rem;border:none;border-radius:12px;padding:.9rem 2rem;cursor:pointer;transition:background .15s;margin-top:auto;margin-bottom:2rem}.lesson-video__continue:hover{background:#388e3c}.lesson-quiz{width:100%;max-width:960px;margin:0 auto;display:flex;flex-direction:column;min-height:0;padding:1rem 1rem 1.5rem;font-family:var(--font-primary)}.quiz-streak-overlay{position:fixed;inset:0;z-index:8000;display:flex;align-items:center;justify-content:center;pointer-events:none}.quiz-streak-overlay__lottie{width:min(100vw,900px);height:min(78vh,720px);max-height:80vh}.lesson-quiz__loading{text-align:center;padding:3rem;color:#999}.lesson-quiz__topbar{display:flex;align-items:center;gap:.75rem;padding:.5rem 0 1rem}.lesson-quiz__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.25rem}.lesson-quiz__progress-bar{flex:1;height:10px;background:#e0e0e0;border-radius:5px;overflow:hidden}.lesson-quiz__progress-fill{height:100%;background:#ffc107;border-radius:5px;transition:width .4s ease}.lesson-quiz__topbar-tools{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.lesson-quiz__hint-btn{font-size:1.5rem;cursor:pointer;padding:.25rem;border:none;background:none;line-height:1}.lesson-quiz__hint-btn:hover{opacity:.85}.lesson-quiz__mute-btn{font-size:1.35rem;cursor:pointer;padding:.25rem;border:none;background:none;line-height:1}.lesson-quiz__mute-btn:hover{opacity:.85}.lesson-quiz-hint-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.lesson-quiz-hint-modal__backdrop{position:absolute;inset:0;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lesson-quiz-hint-modal__card{position:relative;background:#fff;border-radius:20px;padding:1.5rem 2rem;max-width:340px;width:100%;text-align:center;box-shadow:0 8px 32px #00000026}.lesson-quiz-hint-modal__close{position:absolute;top:.6rem;left:.6rem;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;margin:0;border:none;border-radius:10px;background:transparent;color:#666;font-size:1.35rem;line-height:1;cursor:pointer;padding:0;transition:color .15s}.lesson-quiz-hint-modal__close:hover,.lesson-quiz-hint-modal__close:active{background:transparent;color:#1a1a1a;border-color:transparent}.lesson-quiz-hint-modal__close:focus,.lesson-quiz-hint-modal__close:focus-visible{outline:none}.lesson-quiz-hint-modal__title{font-family:var(--font-primary);font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 .75rem;letter-spacing:.02em}.lesson-quiz-hint-modal__text{font-family:var(--font-primary);font-size:1rem;color:#1a1a1a;margin:0;line-height:1.45}.lesson-quiz__body{flex:0 1 auto;display:flex;flex-direction:column;align-items:center;padding:.5rem 0 0;width:100%}.lesson-quiz__question{font-size:1.3rem;font-weight:700;color:#222;text-align:center;margin-bottom:1.5rem;line-height:1.35}.lesson-quiz__image{max-width:220px;max-height:180px;object-fit:contain;margin-bottom:1.5rem;border-radius:12px}.lesson-quiz__play-sound-row{margin-bottom:1rem}.lesson-quiz__play-sound-btn{padding:.5rem 1rem;background:#1e60a8;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer}.lesson-quiz__play-sound-btn:hover{background:#1557a0}.lesson-quiz__media-wrap{margin-bottom:1.5rem;max-width:100%}.lesson-quiz__video{max-width:280px;max-height:200px;border-radius:12px;background:#000}.lesson-quiz__answers{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.lesson-quiz__answers--grid{grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:560px){.lesson-quiz__answers{grid-template-columns:1fr}.lesson-quiz__answers--grid{grid-template-columns:1fr 1fr}.lesson-quiz__matching{gap:.75rem}.lesson-quiz__match-box{max-width:100%}}.lesson-quiz__answer{width:100%;min-width:0;padding:1rem 1.25rem;background:#fff;border:2px solid #e0e0e0;border-radius:12px;color:#101010;font-size:1rem;cursor:pointer;text-align:left;transition:border-color .15s,background .15s;display:flex;align-items:center;justify-content:center;min-height:3.5rem}.lesson-quiz__answer-img{max-width:100%;max-height:120px;object-fit:contain;display:block}.lesson-quiz__answer-text-fallback{display:none}.lesson-quiz__answer-text-fallback--show{display:inline;font-size:.85rem;word-break:break-all}.lesson-quiz__answer:hover:not(:disabled){border-color:#bbb}.lesson-quiz__answer:disabled{pointer-events:none;cursor:default}.lesson-quiz__answer:disabled:focus,.lesson-quiz__answer:disabled:focus-visible{outline:none;box-shadow:none}.lesson-quiz__answer:disabled:not(.lesson-quiz__answer--correct):not(.lesson-quiz__answer--wrong):hover{border-color:#e0e0e0}.lesson-quiz__answer--correct:disabled:hover{border-color:#4caf50}.lesson-quiz__answer--wrong:disabled:hover{border-color:#ef4444}.lesson-quiz__answer--selected{background:#dbeafe;border-color:#3b82f6}.lesson-quiz__answer--correct{background:#dcfce7;border-color:#4caf50}.lesson-quiz__answer--wrong{background:#fee2e2;border-color:#ef4444}.lesson-quiz__matching{width:100%;display:flex;gap:1rem;justify-content:center;align-items:flex-start;padding:.5rem 0}.lesson-quiz__matching-column{flex:1;display:flex;flex-direction:column;gap:.75rem;align-items:center}.lesson-quiz__match-box{width:100%;max-width:220px;min-height:3.5rem;padding:1rem 1.25rem;background:#fff;border:2px solid #e0e0e0;border-radius:12px;border-bottom-width:5px;border-bottom-color:#e0e0e0;cursor:pointer;transition:border-color .15s,background .15s;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:600;color:#222}.lesson-quiz__match-box:hover:not(:disabled){border-color:#bbb}.lesson-quiz__match-box--selected{background:#dbeafe;border-color:#3b82f6;border-bottom-color:#3b82f6}.lesson-quiz__match-box--correct{background:#dcfce7;border-color:#4caf50;border-bottom-color:#4caf50}.lesson-quiz__match-box--wrong{background:#fee2e2;border-color:#ef4444;border-bottom-color:#ef4444}.lesson-quiz__match-box:disabled{cursor:default;opacity:1;pointer-events:none}.lesson-quiz__match-box:disabled:focus,.lesson-quiz__match-box:disabled:focus-visible{outline:none;box-shadow:none}.lesson-quiz__match-box:disabled:not(.lesson-quiz__match-box--correct):not(.lesson-quiz__match-box--wrong):hover{border-color:#e0e0e0;border-bottom-color:#e0e0e0}.lesson-quiz__match-box--correct:disabled:hover,.lesson-quiz__match-box--correct:disabled:focus{border-color:#4caf50;border-bottom-color:#4caf50}.lesson-quiz__match-box--wrong:disabled:hover,.lesson-quiz__match-box--wrong:disabled:focus{border-color:#ef4444;border-bottom-color:#ef4444}.lesson-quiz__feedback{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;margin-top:1rem}.lesson-quiz__feedback--correct{background:#dcfce7;border:1px solid #bbf7d0}.lesson-quiz__feedback--wrong{background:#fee2e2;border:1px solid #fecaca}.lesson-quiz__feedback-icon{font-size:1.5rem;flex-shrink:0}.lesson-quiz__feedback-text{display:flex;flex-direction:column;gap:.25rem}.lesson-quiz__feedback-text strong{font-size:1.1rem}.lesson-quiz__feedback-explain{font-size:.9rem;color:#555;margin:0;line-height:1.4}.lesson-quiz__feedback-label{font-weight:600;color:#4caf50;display:block;margin-bottom:.15rem}.lesson-quiz__feedback--wrong .lesson-quiz__feedback-label{color:#ef4444}.lesson-quiz__bottom{padding:.75rem 0 0;margin-top:1rem;display:flex;flex-direction:column;align-items:stretch}.lesson-quiz__btn{width:100%;padding:1rem;font-size:1.1rem;font-weight:700;border:none;border-radius:14px;cursor:pointer;transition:background .15s,opacity .15s}.lesson-quiz__btn--check{width:auto;align-self:center;min-width:11rem;max-width:min(20rem,100%);padding-left:2.25rem;padding-right:2.25rem}.lesson-quiz__btn--disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.lesson-quiz__btn--active{background:#4caf50;color:#fff}.lesson-quiz__btn--active:hover{background:#388e3c}.lesson-quiz__btn--continue{color:#fff}.lesson-quiz__btn--green{background:#4caf50}.lesson-quiz__btn--green:hover{background:#388e3c}.lesson-quiz__btn--red{background:#ef4444}.lesson-quiz__btn--red:hover{background:#dc2626}.lesson-quiz-quit-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.lesson-quiz-quit-modal__backdrop{position:absolute;inset:0;background:#0006}.lesson-quiz-quit-modal__card{position:relative;background:#fff;border-radius:20px;padding:1.5rem 2rem 2rem;max-width:360px;width:100%;text-align:center;box-shadow:0 8px 32px #0003}.lesson-quiz-quit-modal__mascot{width:120px;height:auto;margin:0 auto 1rem;display:block}.lesson-quiz-quit-modal__title{font-family:var(--font-primary);font-size:1.25rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem;line-height:1.3}.lesson-quiz-quit-modal__warning{font-family:var(--font-primary);font-size:.95rem;color:#555;margin:0 0 1.5rem;line-height:1.4}.lesson-quiz-quit-modal__actions{display:flex;flex-direction:column;gap:.75rem}.lesson-quiz-quit-modal__btn{width:100%;padding:.9rem 1.25rem;font-family:var(--font-primary);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;border:none;border-radius:12px;cursor:pointer;color:#fff;transition:background .15s,opacity .15s}.lesson-quiz-quit-modal__btn--keep{background:#4caf50;box-shadow:0 2px 4px #4caf504d}.lesson-quiz-quit-modal__btn--keep:hover{background:#388e3c}.lesson-quiz-quit-modal__btn--quit{background:#b71c1c;box-shadow:0 2px 4px #b71c1c4d}.lesson-quiz-quit-modal__btn--quit:hover{background:#8b0000}.lesson-complete{width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem 1rem;text-align:center;font-family:var(--font-primary)}.lesson-complete__mascot{width:180px;margin-bottom:1rem}.lesson-complete__title{font-size:2rem;font-weight:800;color:#d32f2f;margin-bottom:2rem}.lesson-complete__stats{display:flex;gap:1rem;margin-bottom:2.5rem;flex-wrap:wrap;justify-content:center}.lesson-complete__stat{display:flex;flex-direction:column;align-items:center;border-radius:12px;padding:.75rem 1.25rem;min-width:100px}.lesson-complete__stat--xp{background:#fff8e1;border:2px solid #ffc107}.lesson-complete__stat--score{background:#e8f5e9;border:2px solid #4caf50}.lesson-complete__stat--time{background:#e3f2fd;border:2px solid #2196f3}.lesson-complete__stat-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem}.lesson-complete__stat--xp .lesson-complete__stat-label{color:#f57f17}.lesson-complete__stat--score .lesson-complete__stat-label{color:#2e7d32}.lesson-complete__stat--time .lesson-complete__stat-label{color:#1565c0}.lesson-complete__stat-value{font-size:1.2rem;font-weight:700;color:#333}.lesson-complete__claim{background:#4caf50;color:#fff;font-weight:700;font-size:1.1rem;border:none;border-radius:14px;padding:1rem 3rem;cursor:pointer;transition:background .15s;width:100%;max-width:320px}.lesson-complete__claim:hover:not(:disabled){background:#388e3c}.lesson-complete__claim:disabled{opacity:.6;cursor:not-allowed}.lesson-review{width:100%;max-width:640px;margin:0 auto;padding:1rem;font-family:var(--font-primary)}.lesson-review__mascot-area{display:flex;justify-content:center;padding:1rem 0;background:#0000000d;border-radius:16px 16px 0 0}.lesson-review__mascot{width:140px}.lesson-review__card{background:#fff;border-radius:0 0 16px 16px;padding:1.5rem;box-shadow:0 2px 12px #00000014}.lesson-review__heading{font-size:1.4rem;font-weight:700;color:#d32f2f;margin-bottom:1rem}.lesson-review__lesson-info{background:#fafafa;border-radius:10px;padding:.75rem 1rem;margin-bottom:1.25rem;border:1px solid #eee}.lesson-review__pack-name{font-weight:600;color:#d32f2f;font-size:.85rem}.lesson-review__separator{color:#999;font-size:.85rem}.lesson-review__lesson-name{font-weight:700;color:#222;font-size:1rem;margin:.25rem 0 0}.lesson-review__coach{font-size:.85rem;color:#666;margin:.15rem 0 0}.lesson-review__rating-section{margin-bottom:1.25rem}.lesson-review__rating-label{font-weight:700;font-size:1rem;color:#222;margin-bottom:.5rem}.lesson-review__stars{display:flex;gap:.5rem}.lesson-review__star{background:none;border:none;font-size:2rem;cursor:pointer;color:#ccc;transition:color .1s}.lesson-review__star--active{color:#ffc107}.lesson-review__comment-section{margin-bottom:1.25rem}.lesson-review__comment-label{font-weight:700;font-size:1rem;color:#222;margin-bottom:.5rem}.lesson-review__textarea{width:100%;min-height:80px;border:1px solid #ddd;border-radius:10px;padding:.75rem;font-size:.95rem;resize:vertical;font-family:inherit}.lesson-review__textarea:focus,.lesson-review__textarea:focus-visible{outline:none;border-color:#9e9e9e}.lesson-review__actions{display:flex;gap:1rem}.lesson-review__skip{flex:1;padding:.9rem;border:2px solid #d32f2f;background:#fff;color:#d32f2f;font-weight:700;font-size:1rem;border-radius:12px;cursor:pointer;transition:background .15s}.lesson-review__skip:hover{background:#fff0f0}.lesson-review__skip:hover,.lesson-review__skip:focus,.lesson-review__skip:focus-visible{border-color:#d32f2f;outline:none}.lesson-review__submit{flex:1;padding:.9rem;border:none;background:#d32f2f;color:#fff;font-weight:700;font-size:1rem;border-radius:12px;cursor:pointer;transition:background .15s}.lesson-review__submit:hover:not(:disabled){background:#b71c1c}.lesson-review__submit:disabled{opacity:.6;cursor:not-allowed}.leaderboard-page{width:100%;max-width:720px;margin:0 auto;padding:.5rem 0 2rem;min-height:50vh;background:#fff;font-family:var(--font-primary);color:var(--color-text);box-sizing:border-box}.leaderboard-page__segment{display:flex;flex-direction:row;gap:0;padding:3px;margin:0 auto 1rem;max-width:360px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box}.leaderboard-page__segment-btn{flex:1;border:none;border-radius:6px;padding:.65rem .75rem;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;background:transparent;color:#999}.leaderboard-page__segment-btn--active{background:var(--color-brand);color:#fff;font-weight:600}.leaderboard-page__filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.leaderboard-page__time-label{font-size:1rem;font-weight:600;color:#101010}.leaderboard-page__dropdown-wrap{position:relative;z-index:5}.leaderboard-page__dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:140px;padding:.45rem .65rem;border:1px solid #ccc;border-radius:10px;background:#fff;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;color:#101010}.leaderboard-page__chevron{font-size:.75rem;opacity:.8}.leaderboard-page__dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;margin:0;padding:0;list-style:none;background:#fff;border:1px solid #101010;border-radius:8px;box-shadow:0 4px 12px #0000001f;overflow:hidden}.leaderboard-page__dropdown-item{display:block;width:100%;padding:.65rem .75rem;border:none;background:transparent;text-align:center;font-size:.875rem;font-family:inherit;cursor:pointer;color:#101010}.leaderboard-page__dropdown-item:hover,.leaderboard-page__dropdown-item--selected{background:#f0f0f0}.leaderboard-page__list{list-style:none;margin:0;padding:0}.leaderboard-page__row{display:flex;flex-direction:row;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;margin-bottom:.35rem;border:none;border-radius:10px;background:transparent;font-family:inherit;cursor:pointer;text-align:left;box-sizing:border-box}.leaderboard-page__row:hover{background:#f5f5f5}.leaderboard-page__row--self{background:#e8e8e8}.leaderboard-page__row--self:hover{background:#e0e0e0}.leaderboard-page__rank{width:2rem;flex-shrink:0;font-weight:700;font-size:1rem;color:#101010}.leaderboard-page__name{flex:1;min-width:0;font-weight:700;font-size:.8125rem;color:#101010;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-page__xp{flex-shrink:0;font-weight:700;font-size:.8125rem;color:#101010}.leaderboard-page__loading,.leaderboard-page__empty{text-align:center;color:#555;margin-top:1rem}.leaderboard-user-page{width:100%;max-width:min(100%,56rem);margin:0 auto;padding:0 0 2.5rem;min-height:50vh;background:#fff;font-family:var(--font-primary);color:var(--color-text);box-sizing:border-box}.leaderboard-user-page__header{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;padding-bottom:.75rem;margin-bottom:1.25rem;border-bottom:1px solid #ddd}.leaderboard-user-page__back{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin:0;border:none;border-radius:8px;background:none;font-size:1.35rem;line-height:1;cursor:pointer;color:var(--color-brand);font-family:inherit;padding:0;justify-self:start}.leaderboard-user-page__back:hover{background:#b6000014}.leaderboard-user-page__header-title{text-align:left;font-size:1rem;font-weight:600;color:#101010;min-width:0;cursor:pointer}.leaderboard-user-page__header-spacer{display:none}.leaderboard-user-page__hero{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2.5rem}.leaderboard-user-page__username{font-size:1.75rem;font-weight:700;margin:1rem 0;color:#101010}.leaderboard-user-page__stats{display:flex;flex-direction:row;justify-content:center;gap:2.5rem}.leaderboard-user-page__stat{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:#101010}.leaderboard-user-page__achievements{width:100%}.leaderboard-user-page__section-title{font-size:1.25rem;font-weight:700;margin:0 0 1.25rem;color:#101010}.leaderboard-user-page__badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:1.25rem 1rem;width:100%}@media(min-width:700px){.leaderboard-user-page__badge-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem 1.25rem}}@media(min-width:1100px){.leaderboard-user-page__badge-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.leaderboard-user-page__badge-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.75rem .5rem;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000001a}.leaderboard-user-page__badge-img{width:60px;height:60px;object-fit:contain;margin-bottom:.5rem}.leaderboard-user-page__badge-title{font-size:.75rem;font-weight:600;line-height:1.2;color:#101010}.leaderboard-user-page__no-badges,.leaderboard-user-page__loading,.leaderboard-user-page__error{text-align:center;color:#666}.leaderboard-user-page__error{color:#c62828}.leaderboard-user-page__link{display:block;text-align:center;margin-top:1rem}.badges-page{width:100%;max-width:none;margin:0;padding:.5rem 0 2rem;min-height:60vh;background:#fff;box-sizing:border-box;font-family:var(--font-primary)}.badges-page__tabs{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.badges-page__tab{border:1px solid #d0d0d0;background:#eee;color:#111;font-weight:600;padding:.55rem 1.25rem;border-radius:999px;cursor:pointer;font-size:.95rem}.badges-page__tab--active{background:#1e60a8;color:#fff;border-color:#1e60a8}.badges-page__loading,.badges-page__empty,.badges-page__error{text-align:center;color:#444;margin-top:1rem}.badges-page__error{color:#c62828}.badges-page__grid{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem .75rem;justify-items:center}@media(min-width:480px){.badges-page__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:720px){.badges-page__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.35rem .85rem}}@media(min-width:960px){.badges-page__grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.badges-page__cell{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.25rem;text-align:center}.badges-page__icon-ring{width:88px;height:88px;border-radius:50%;background:#ececec;display:flex;align-items:center;justify-content:center}.badges-page__icon-ring--locked{background:#e4e4e4}.badges-page__icon{width:72px;height:72px;object-fit:contain}.badges-page__icon--muted{filter:grayscale(1);opacity:.55}.badges-page__label{font-size:.78rem;font-weight:700;color:#222;line-height:1.2;max-width:100%}.badges-page__label--muted{color:#666;font-weight:600}.badge-detail-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem;font-family:var(--font-primary)}.badge-detail-modal__backdrop{position:absolute;inset:0;background:#00000073;border:none;cursor:pointer}.badge-detail-modal__panel{position:relative;z-index:1;background:#fff;border-radius:16px;padding:1.25rem 1.5rem 1.5rem;max-width:360px;width:100%;box-shadow:0 8px 32px #0003}.badge-detail-modal__close{position:absolute;top:.75rem;left:.75rem;background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#444}.badge-detail-modal__title{margin:0 0 1rem;text-align:center;font-size:1.1rem;font-weight:800;color:#111;padding-top:.25rem}.badge-detail-modal__icon-wrap{display:flex;justify-content:center;margin-bottom:1rem}.badge-detail-modal__icon{width:120px;height:120px;object-fit:contain}.badge-detail-modal__icon--muted{filter:grayscale(1);opacity:.6}.badge-detail-modal__desc{text-align:center;color:#666;font-size:.95rem;margin:0 0 1rem;line-height:1.4}.badge-detail-modal__earned-pill{display:flex;align-items:center;justify-content:center;gap:.35rem;margin:0 auto;max-width:100%;padding:.5rem 1rem;border-radius:999px;background:#2e7d32;color:#fff;font-weight:700;font-size:.9rem}.badge-detail-modal__earned-check{font-weight:800}.badge-detail-modal__not-earned{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1rem;border-radius:999px;background:#ef6c00;color:#fff;font-weight:700;font-size:.95rem}.badge-detail-modal--earned-celebration{z-index:1300}.badge-earned-modal__badge-name{margin:0 0 .75rem;text-align:center;font-size:1.05rem;font-weight:800;color:#111;line-height:1.25}.badge-earned-modal__continue{width:100%;box-sizing:border-box;margin-top:.5rem;padding:.85rem 1rem;border:none;border-radius:12px;background:var(--color-brand);color:#fff;font-weight:700;font-size:1rem;letter-spacing:.04em;cursor:pointer;font-family:var(--font-primary)}.badge-earned-modal__continue:hover{background:var(--color-brand-hover)}.open-in-app-banner{display:none}@media(max-width:767px){.open-in-app-banner{position:fixed;top:0;left:0;right:0;z-index:1200;display:flex;align-items:center;gap:.5rem;padding:max(.55rem,env(safe-area-inset-top)) .75rem .55rem;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 10px #0000000f}.open-in-app-banner__text{margin:0;flex:1;min-width:0;font-family:var(--font-primary);font-size:.9rem;font-weight:600;line-height:1.2;color:#101010}.open-in-app-banner__open,.open-in-app-banner__close{min-height:44px;border:none;border-radius:10px;font-family:var(--font-primary);font-weight:700;cursor:pointer}.open-in-app-banner__open{padding:0 .9rem;background:var(--color-brand);color:#fff;font-size:.9rem;flex-shrink:0}.open-in-app-banner__open:hover{background:var(--color-brand-hover)}.open-in-app-banner__close{width:44px;padding:0;background:#f3f4f6;color:#333;font-size:1.2rem;line-height:1;flex-shrink:0}.open-in-app-banner__close:hover{background:#e5e7eb}body.open-in-app-banner-visible .app-shell__main{padding-top:58px}}@media(max-width:767px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}body{font-size:16px;line-height:1.4}.app-shell{min-height:100dvh;height:auto;overflow:visible}.app-shell__main{min-height:100dvh;height:auto;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.app-shell__content{justify-content:flex-start;align-items:stretch;padding:.5rem .75rem 1rem;overflow-x:hidden;scrollbar-gutter:auto}.app-shell__content>*{width:100%;max-width:100%;min-width:0}.app-shell__auth-narrow-inner{width:100%}.sidebar{position:fixed;left:0;right:0;bottom:0;z-index:50;width:100%;min-width:0;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));border-top:1px solid #e5e7eb;background:#fff;box-shadow:0 -4px 16px #00000014}.sidebar__logo{display:none}.sidebar__nav{flex-direction:row;align-items:stretch;justify-content:space-between;gap:.25rem}.sidebar__link{flex:1 1 0;min-width:0;min-height:44px;flex-direction:column;justify-content:center;gap:.2rem;padding:.4rem .2rem;border-radius:10px}.sidebar__link-icon{width:1.15rem;height:1.15rem}.sidebar__link-label{font-size:.7rem;line-height:1;white-space:nowrap;text-align:center}.app-header{padding:.75rem .75rem .2rem}.auth-flow-header .app-header{padding:.5rem .75rem .2rem}.app-header__profile-row{margin-left:0;margin-right:0;padding:0 0 .75rem;gap:.55rem}.app-header__name{font-size:.95rem}.app-header__stats{gap:.6rem}.app-header__stat-button{min-height:44px;padding:0 .12rem}.lobby__top-row,.lobby-assignments__header,.lobby-calendar__header,.assignments-view__header,.calendar-page__header,.settings-page__header,.profile-edit-screen__header,.team-code-screen__header,.all-star-review-lab__intro,.all-star-member__hero-content{flex-direction:column;align-items:stretch}.all-star-member__hero-text{max-width:100%}.all-star-member__hero-right{align-items:center;min-height:0;gap:.5rem}.all-star-member__chips{grid-template-columns:1fr}.team-code-card__input-row{flex-direction:row;align-items:center;gap:.5rem}.lobby-assignments__row{overflow-x:visible;flex-direction:column}.lobby-assignment-card,.lobby-assignments__empty{min-width:0;max-width:100%;width:100%}.assignments-view__header,.team-packs__header,.popular-packs__header{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;padding-left:.5rem;padding-right:.5rem}.assignments-view__back,.team-packs__back,.popular-packs__back{align-self:flex-start;font-size:1.05rem;padding:.15rem .1rem;gap:.35rem}.assignments-view__back-text,.team-packs__back-text,.popular-packs__back-text{font-size:.9rem;line-height:1.1;white-space:nowrap}.assignments-view__title,.team-packs__title,.popular-packs__title{grid-column:auto;width:100%;text-align:left;font-size:1.15rem;line-height:1.2}.lesson-roadmap__topbar{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;padding:.4rem .5rem .85rem;margin-bottom:1rem}.lesson-roadmap__back{justify-self:auto;align-self:flex-start;font-size:1.05rem;padding:.15rem .1rem;gap:.35rem}.lesson-roadmap__back-text{font-size:.9rem;line-height:1.1;white-space:nowrap}.lesson-roadmap__info{grid-column:auto;width:100%;align-items:flex-start;text-align:left}.lesson-roadmap__team{font-size:1.15rem;line-height:1.2}.lesson-roadmap__pack{font-size:.85rem;line-height:1.2}.lesson-roadmap{padding:.75rem .5rem}.lesson-roadmap__bubbles{max-width:100%;gap:.65rem}.lesson-roadmap__row{min-height:74px;gap:.25rem}.lesson-roadmap__side{width:clamp(56px,22vw,84px);min-width:clamp(56px,22vw,84px);min-height:74px}.lesson-roadmap__row-center{width:auto;flex:1;min-width:0}.lesson-roadmap__bubble-outer{width:72px;height:72px}.lesson-roadmap__bubble-disk{border-width:4px}.lesson-roadmap__character{width:clamp(62px,24vw,84px)}.lesson-roadmap__side--left .lesson-roadmap__character,.lesson-roadmap__side--right .lesson-roadmap__character{transform:scale(1.12)}.lesson-roadmap-popup{width:min(300px,calc(100vw - 16px));padding:.85rem .9rem 1rem}.lesson-roadmap-popup__title{font-size:1.05rem;line-height:1.2}.lesson-roadmap-popup__meta{font-size:.84rem;margin-bottom:.7rem}.lesson-review__stars{width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.2rem;align-items:center}.lesson-review__star{width:100%;min-width:0;min-height:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:1.9rem;line-height:1}.wingman-page__topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem .5rem;padding:.55rem .75rem}.wingman-page__back{font-size:1.05rem;padding:.15rem .05rem;gap:.35rem;min-height:44px;align-items:center}.wingman-page__back-text{font-size:.9rem;line-height:1.1;white-space:nowrap}.wingman-page__topbar-center{order:3;width:100%;justify-content:center;padding-top:.1rem}.wingman-page__topbar-title{font-size:.92rem}.wingman-page__topbar-subtitle{font-size:.72rem}.wingman-page__history-topbar{margin-left:auto;gap:.4rem}.wingman-page__history-title{font-size:.92rem}.wingman-page__menu{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.wingman-history-panel{width:100%;min-width:0;border-left:none;box-shadow:none}.wingman-page--history-open .wingman-page__main{display:none}.wingman-page--history-open .wingman-page__content{display:block}.work-on-screen{gap:1.1rem}.work-on-screen__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.work-on-screen__sport{min-height:120px;padding:.55rem .35rem .6rem;gap:.35rem;justify-content:flex-start}.work-on-screen__sport-img-wrap{width:52px;height:52px}.work-on-screen__sport-img{max-width:52px;max-height:52px}.work-on-screen__sport-label{width:100%;text-align:center;font-size:.8rem;line-height:1.15;white-space:normal;overflow-wrap:anywhere}button,[role=button],input,select,textarea{min-height:44px;font-size:16px}}.marketplace{width:100%;max-width:1200px;margin:0 auto;padding:1rem}.marketplace__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid #e5e5e5}.marketplace__back{justify-self:start;display:inline-flex;align-items:center;gap:.45rem;color:#101010;text-decoration:none;padding:.2rem .35rem;border-radius:6px;transition:background .15s}.marketplace__back:hover,.marketplace__back:focus,.marketplace__back:focus-visible{background:#f0f0f0;text-decoration:none}.marketplace__back-text{font-family:var(--font-primary);font-size:1rem;font-weight:600;color:#101010}.marketplace__title{grid-column:2;font-family:var(--font-primary);font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0;text-align:center}.marketplace__tabs{display:flex;gap:1.5rem;border-bottom:1px solid #e5e5e5;margin-bottom:1rem}.marketplace__tab{background:none;border:none;padding:.6rem .25rem;font-family:var(--font-primary);font-size:.95rem;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.marketplace__tab--active{color:#374151;border-bottom-color:#374151;font-weight:800}.marketplace__filters{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem}.marketplace__search{flex:1 1 240px;min-width:200px;padding:.55rem .85rem;border:1px solid #d1d5db;border-radius:8px;font-family:var(--font-primary);font-size:.95rem;background:#fff}.marketplace__select{padding:.55rem 1.9rem .55rem .85rem;border:1px solid #d1d5db;border-radius:8px;font-family:var(--font-primary);font-size:.9rem;background-color:#fff;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='4 6 8 10 12 6'/></svg>");background-repeat:no-repeat;background-position:right .55rem center;background-size:14px 14px;width:auto}.marketplace__clear{padding:.55rem .85rem;border:1px solid #374151;border-radius:999px;background:#fff;color:#374151;font-family:var(--font-primary);font-size:.85rem;font-weight:700;cursor:pointer}.marketplace__empty{text-align:center;padding:3rem 1rem;color:#6b7280;font-family:var(--font-primary)}.marketplace__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.marketplace-card{background:#fff;border-radius:14px;border:1px solid var(--color-progress-bg);padding:.75rem;display:flex;flex-direction:column;align-items:stretch;gap:.35rem;cursor:pointer;text-align:left;font-family:var(--font-primary);box-shadow:0 2px 6px #0000000d;transition:transform .12s,box-shadow .12s}.marketplace-card:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000014}.marketplace-card__thumb{position:relative;height:130px;background:#f3f4f6;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;overflow:hidden}.marketplace-card__thumb-icon{font-size:2.4rem}.marketplace-card__thumb-image{width:100%;height:100%;object-fit:cover;display:block}.marketplace-card__price-row{display:flex;margin-bottom:.4rem}.marketplace-card__price{display:inline-block;background:#374151;color:#fff;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:700}.marketplace-card__price--free{background:#16a34a}.marketplace-card__title{font-size:1rem;font-weight:700;margin:0;color:#1a1a1a;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marketplace-card__sub{font-size:.8rem;color:#6b7280;margin:0}.marketplace-card__meta{display:flex;justify-content:space-between;align-items:center;margin-top:.35rem}.marketplace-card__count{color:#374151;font-weight:600;font-size:.8rem}.marketplace-card__rating{background:#fef3c7;color:#92400e;font-weight:700;font-size:.72rem;padding:2px 7px;border-radius:999px}.marketplace-course{width:100%;max-width:960px;margin:0 auto;padding:1rem;font-family:var(--font-primary)}.marketplace-course__header{margin-bottom:1rem}.marketplace-course__back,.marketplace-course__back:link,.marketplace-course__back:visited,.marketplace-course__back:hover,.marketplace-course__back:focus,.marketplace-course__back:active{color:#101010;text-decoration:none}.marketplace-course__back{display:inline-flex;align-items:center;gap:.45rem;padding:.2rem .35rem;border-radius:6px;transition:background .15s}.marketplace-course__back:hover{background:#f0f0f0}.marketplace-course__back-text{font-size:1rem;font-weight:600}.marketplace-course__hero{display:grid;grid-template-columns:auto 1fr auto;gap:1.25rem;align-items:center;padding:1.25rem;background:#fff;border:1px solid var(--color-progress-bg);border-radius:14px;margin-bottom:1.5rem}.marketplace-course__hero-icon{width:80px;height:80px;background:#f3f4f6;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:2.6rem}.marketplace-course__hero-text{min-width:0}.marketplace-course__hero-meta{display:flex;flex-wrap:wrap;gap:.35rem;font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.marketplace-course__sport{font-weight:600;color:#374151;text-transform:capitalize}.marketplace-course__dot{color:#d1d5db}.marketplace-course__coach{font-weight:600;color:#374151}.marketplace-course__cert-pill{background:#1f293714;color:#374151;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:700}.marketplace-course__title{font-size:1.6rem;font-weight:800;margin:0 0 .5rem;color:#1a1a1a;line-height:1.2}.marketplace-course__stats{display:flex;flex-wrap:wrap;gap:1rem;font-size:.95rem;color:#374151;align-items:center}.marketplace-course__price{color:#374151;font-weight:700}.marketplace-course__price--free{color:#16a34a}.marketplace-course__rating{background:#fef3c7;color:#92400e;padding:2px 8px;border-radius:999px;font-size:.85rem;font-weight:700}.marketplace-course__enroll{padding:.75rem 1.5rem;background:#1f2937;color:#fff;border:none;border-radius:10px;font-family:var(--font-primary);font-size:1rem;font-weight:700;cursor:pointer;transition:background .15s;white-space:nowrap}.marketplace-course__enroll:hover{background:#111827}.marketplace-course__enroll:disabled{cursor:not-allowed;opacity:.7}.marketplace-course__enroll--done,.marketplace-course__enroll--done:hover{background:#16a34a}.marketplace-course__section{margin-bottom:1.75rem}.marketplace-course__section-title{font-size:1.15rem;font-weight:700;margin:0 0 .75rem;color:#1a1a1a}.marketplace-course__description{margin:0;font-size:.95rem;line-height:1.55;color:#374151;white-space:pre-wrap}.marketplace-course__empty{text-align:center;padding:3rem 1rem;color:#6b7280}.marketplace-course__modules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.marketplace-course__module{border:1px solid var(--color-progress-bg);border-radius:10px;overflow:hidden;background:#fff}.marketplace-course__module-head{width:100%;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:none;cursor:pointer;text-align:left;font-family:var(--font-primary)}.marketplace-course__module-title{font-weight:700;color:#1a1a1a}.marketplace-course__module-count{font-size:.85rem;color:#6b7280}.marketplace-course__module-chevron{color:#6b7280;font-size:.9rem}.marketplace-course__lessons{list-style:none;margin:0;padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.25rem}.marketplace-course__lesson{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:center;padding:.4rem .5rem;border-radius:6px;background:#f9fafb;font-size:.9rem}.marketplace-course__lesson-icon{font-size:.95rem}.marketplace-course__lesson-title{color:#1a1a1a}.marketplace-course__lesson-duration{color:#6b7280;font-size:.8rem}.marketplace-reviews__summary{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.marketplace-reviews__avg{font-size:1.1rem;font-weight:700;color:#92400e}.marketplace-reviews__count{color:#6b7280;font-size:.9rem}.marketplace-reviews__locked-hint{margin-left:auto;color:#6b7280;font-size:.85rem;font-style:italic}.marketplace-reviews__write{margin-left:auto;background:none;border:1px solid #374151;color:#374151;padding:.4rem .85rem;border-radius:8px;font-family:var(--font-primary);font-weight:700;font-size:.85rem;cursor:pointer}.marketplace-reviews__draft{background:#f9fafb;border:1px solid var(--color-progress-bg);border-radius:10px;padding:1rem;margin-bottom:1rem}.marketplace-reviews__stars{display:flex;gap:.25rem;margin-bottom:.5rem}.marketplace-reviews__star{background:none;border:none;font-size:1.5rem;color:#d1d5db;cursor:pointer;padding:0;line-height:1}.marketplace-reviews__star--on{color:#f59e0b}.marketplace-reviews__textarea{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:.6rem;font-family:var(--font-primary);font-size:.95rem;resize:vertical;box-sizing:border-box}.marketplace-reviews__draft-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.6rem}.marketplace-reviews__cancel,.marketplace-reviews__delete,.marketplace-reviews__save{padding:.5rem 1rem;border-radius:8px;font-family:var(--font-primary);font-weight:700;font-size:.85rem;cursor:pointer}.marketplace-reviews__cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.marketplace-reviews__delete{background:#fff;border:1px solid #dc2626;color:#dc2626}.marketplace-reviews__save{background:var(--color-brand);border:1px solid var(--color-brand);color:#fff}.marketplace-reviews__save:disabled,.marketplace-reviews__cancel:disabled,.marketplace-reviews__delete:disabled{opacity:.6;cursor:not-allowed}.marketplace-reviews__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.marketplace-reviews__item{background:#fff;border:1px solid var(--color-progress-bg);border-radius:10px;padding:.75rem 1rem}.marketplace-reviews__item-head{display:flex;justify-content:space-between;margin-bottom:.25rem}.marketplace-reviews__item-name{font-weight:700;color:#1a1a1a;font-size:.95rem}.marketplace-reviews__item-rating{color:#92400e;font-weight:700;font-size:.9rem}.marketplace-reviews__item-body{margin:0;color:#374151;font-size:.9rem;line-height:1.45}.marketplace-reviews__reply{margin-top:.5rem;padding:.5rem .75rem;background:#f3f4f6;border-left:3px solid #374151;border-radius:6px}.marketplace-reviews__reply-label{font-size:.75rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.04em}.marketplace-reviews__reply-body{margin:.15rem 0 0;font-size:.9rem;color:#374151}@media(max-width:720px){.marketplace-course__hero{grid-template-columns:auto 1fr;grid-template-rows:auto auto}.marketplace-course__enroll{grid-column:1 / -1;justify-self:stretch}}.marketplace-module{width:100%;max-width:760px;margin:0 auto;padding:1rem 1rem 4rem;font-family:var(--font-primary)}.marketplace-module__hero{padding:1rem 0 1.5rem;border-bottom:1px solid var(--color-progress-bg);margin-bottom:1.5rem}.marketplace-module__eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:#374151;margin-bottom:.4rem}.marketplace-module__title{font-size:1.7rem;font-weight:800;margin:0 0 .35rem;color:#111827}.marketplace-module__sub{font-size:.85rem;color:#6b7280}.marketplace-module__lessons{display:flex;flex-direction:column;gap:2rem}.marketplace-module__lesson{border-top:1px solid #e5e7eb;padding-top:1.25rem}.marketplace-module__lesson:first-child{border-top:0;padding-top:0}.marketplace-module__lesson-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.marketplace-module__lesson-icon{font-size:1.1rem;color:#6b7280}.marketplace-module__lesson-title{font-size:1.1rem;font-weight:700;color:#111827;margin:0;flex:1}.marketplace-module__lesson-duration{font-size:.78rem;color:#6b7280}.marketplace-module__video{width:100%;aspect-ratio:16 / 9;background:#000;border-radius:12px;display:block}.marketplace-module__image{width:100%;max-height:480px;object-fit:cover;border-radius:12px;display:block}.marketplace-module__caption{margin:.5rem 0 0;font-size:.85rem;color:#6b7280}.marketplace-module__text{font-size:1rem;line-height:1.55;color:#1f2937;margin:0;white-space:pre-wrap}.marketplace-module__empty{font-size:.9rem;color:#9ca3af;font-style:italic;margin:0}.marketplace-module__quiz{display:flex;flex-direction:column;gap:1rem}.marketplace-module__quiz-q{border:1px solid #e5e7eb;border-radius:10px;padding:.9rem 1rem;background:#fafafa}.marketplace-module__quiz-prompt{font-weight:700;font-size:.95rem;color:#111827;margin-bottom:.6rem}.marketplace-module__quiz-opts{display:flex;flex-direction:column;gap:.4rem}.marketplace-module__quiz-opt{display:flex;align-items:center;gap:.55rem;padding:.45rem .6rem;border-radius:8px;border:1px solid #e5e7eb;font-size:.92rem;cursor:pointer;background:#fff}.marketplace-module__quiz-opt.is-selected{border-color:#374151;background:#f3f4f6}.marketplace-module__quiz-opt.is-correct{border-color:#16a34a;background:#ecfdf5}.marketplace-module__quiz-submit,.marketplace-module__quiz-retake{align-self:flex-start;padding:.55rem 1.2rem;background:#1f2937;color:#fff;border:none;border-radius:999px;font-weight:700;font-size:.92rem;cursor:pointer}.marketplace-module__quiz-submit:disabled{opacity:.5;cursor:not-allowed}.marketplace-module__quiz-result{margin-top:.4rem;font-weight:700;font-size:.92rem}.marketplace-module__quiz-result.is-pass{color:#15803d}.marketplace-module__quiz-result.is-fail{color:#b91c1c;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.marketplace-module__continue{margin-top:2.5rem;padding-top:1.5rem;border-top:2px solid var(--color-progress-bg);display:flex;justify-content:center}.marketplace__cert-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .85rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;-webkit-user-select:none;user-select:none}.marketplace__cert-toggle input[type=checkbox]{accent-color:#374151;margin:0}.marketplace__go-to-marketplace{padding:.55rem 1.2rem;background:#1f2937;color:#fff;border:none;border-radius:999px;font-family:var(--font-primary);font-weight:700;cursor:pointer}.marketplace__go-to-marketplace:hover{background:#111827}.marketplace__cert-list{display:flex;flex-direction:column;gap:.75rem}.marketplace-cert-row{display:flex;align-items:center;gap:.9rem;width:100%;padding:.85rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:12px;cursor:pointer;font-family:var(--font-primary);text-align:left}.marketplace-cert-row:hover{background:#f9fafb}.marketplace-cert-row__icon{width:44px;height:44px;border-radius:999px;background:#fef3c7;display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.marketplace-cert-row__body{display:flex;flex-direction:column;flex:1;min-width:0}.marketplace-cert-row__title{font-size:.95rem;font-weight:700;color:#111827}.marketplace-cert-row__date{font-size:.8rem;color:#6b7280;margin-top:.15rem}.marketplace-cert-row__chevron{font-size:1.3rem;color:#6b7280;flex-shrink:0}
